www.elektronik.si Seznam forumov www.elektronik.si
Forum o elektrotehniki in računalništvu
 
 PomočPomoč  IščiIšči  Seznam članovSeznam članov  SkupineSkupine  StatisticsStatistika  AlbumAlbum  DatotekeFilemanager DokumentacijaDocDB LinksPovezave   Registriraj seRegistriraj se 
  PravilaPravila  LinksBolha  PriponkePriponke  KoledarKoledar  ZapiskiZapiski Tvoj profilTvoj profil Prijava za pregled zasebnih sporočilPrijava za pregled zasebnih sporočil PrijavaPrijava 

Master/Slave komunikacija na 100m v industrijskem okolju.

 
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> Periferija
Poglej prejšnjo temo :: Poglej naslednjo temo  
Avtor Sporočilo
gusti
Član
Član



Pridružen-a: Pet 15 Feb 2008 17:34
Prispevkov: 112
Aktiv.: 0.57
Kraj: Kotlje - Koroška

PrispevekObjavljeno: Sre Maj 18, 2011 12:31 pm    Naslov sporočila:  Master/Slave komunikacija na 100m v industrijskem okolju. Odgovori s citatom

Lp.
Z PC-jem bi rad komuniciral z 16imi slave enotami (half ali full duplex) v katerih bo LPC2138 ali kaj podobnega. Komunikacija je lahko počasna kot polž, se nikamor ne mudi, ker bom prenašal malo podatkov in še to komaj vsake par minut. Mora pa bit zadeva robustna kolikor je le mogoče, da v prenosu ne bo prihajalo do napak. Dolžina kabla bi bila tam nekje do 50m ampak dejmo zaokrožit na 100m za ziher.

Zej če bi se to dalo nekak komunicirat v RS232 protokolu, bi mi močno olajšalo zadeve, ker ne bi rabil izumljat tople vode kar se komunikacije tiče.
Ampak RS232 je kolikor je meni poznano nekak preveč občutljiv na motje sploh v industrijskem okolju in tudi mislim, da sta lahko na rs232 priključeni samo 2 napravi.

Nekaj sem gledal RS485, pa mi par stvari ni čist jasnih glede tega, kako to deluje. A ima kdo kakšno pametno idejo kako to izvest in mogoče kakšen link? Po moje mora bit tega opisanega veliko ampak jaz nisem našel še nič pametnega.

Hvala za odg.
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
lojzek
Član
Član



Pridružen-a: Pet 25 Jan 2008 8:00
Prispevkov: 3352
Aktiv.: 17.02

PrispevekObjavljeno: Sre Maj 18, 2011 1:03 pm    Naslov sporočila:   Odgovori s citatom

Za industrijo se velikokrat uporablja 485. Za oba so bolj kot ne začrtane samo grobe smernice o napetostnih nivojih, sam protokol pa je povsem odvisen od proizvajalca naprave- v nasprotju z 232, kjer je tudi protokol definiran. Razdalje pri 485 so lahko tudi okoli kilometra ali več, odvisno od hitrosti. Pri tako veliki razdalji je namreč že kar pomemben faktor kapacitivnost kabla.

V glavnem, pred računalnikom boš potreboval 485/232 konverter.
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
BojanR
Član
Član



Pridružen-a: Tor 08 Apr 2008 9:52
Prispevkov: 683
Aktiv.: 3.51
Kraj: Vnanje Gorice

PrispevekObjavljeno: Sre Maj 18, 2011 1:18 pm    Naslov sporočila:   Odgovori s citatom

Gotovo je treba uporabiti kaj drugega kot RS232, RS485 je za industrijsko okolje kar prava alternativa.
Ne drži pa, da je RS232 bolj definiran od RS485. Že predpona teh oznak pomeni RS=Recommended Standard, torej samo priporočilo.
Nazaj na vrh
Skrit Poglej uporabnikov profil Pošlji zasebno sporočilo
rudiP
Član
Član



Pridružen-a: Tor 07 Avg 2007 15:30
Prispevkov: 1234
Aktiv.: 6.09
Kraj: KOPER

PrispevekObjavljeno: Sre Maj 18, 2011 1:32 pm    Naslov sporočila:   Odgovori s citatom

Razlika med SW za rs232 ali rs485 je minimalna, odvisno ali bo promet half ali full duplex. Različna sta le vmesnika (IC). Ni potrebno da preveč skrbiš ali bo šlo ali ne.
_________________
Lep pozdrav iz Kopra Rudi
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
žrepko
Član
Član



Pridružen-a: Tor 23 Mar 2010 20:12
Prispevkov: 700
Aktiv.: 4.10
Kraj: Ptuj-Maribor

PrispevekObjavljeno: Sre Maj 18, 2011 1:34 pm    Naslov sporočila:   Odgovori s citatom

Mi imamo rešeno na drugačen način. In sicer preko 2 žilnega prenosa imamo GND in podatke.
Pravzaprav RS232, ampak na 24V napetostnem nivoju.
Na drugi strani je pa isto vezje napajano s strani komunikacije in sprejemni del je enak temu.
Deluje 100% na 100m po veliki hitrosti.



untitled.JPG
 Opis:
 Velikost datoteke:  21.75 KB
 Pogledana:  45 krat

untitled.JPG


Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
aly
Član
Član



Pridružen-a: Tor 28 Sep 2004 14:51
Prispevkov: 9406
Aktiv.: 42.36
Kraj: Kranj - struževo

PrispevekObjavljeno: Sre Maj 18, 2011 7:18 pm    Naslov sporočila:   Odgovori s citatom

Motjnam se lahko izogneš s parico (RS422, RS485) ali z visokimi napetostmi in robustnimi nivoji ("navit" RS232). S tem da RS232 je bolj namenjen komunikaciji 1 na 1...
Glede na to, da rabiš več slave-ov, ti priporočam half-duplex RS485. Rabiš 2 žici (parica) in maso (oklop).

Komunikacijo narediš po svoje. Jaz imam tako, da je na mreži en sam master, ki sprašuje ostale (tako je najlažje). Imam standardno hitrost in standarden paketek. Oboje sem si seveda sam izmislil.
Paketek je sestavljen iz 10 bytov: Header, naslov, ukaz, vrednost (5 bytov), CRC, Footer. Master ima naslov 1, ostali pa 2, 3, 4, ... Naslov FF je "broadcast", torej se nanj odzovejo vsi (uporabno za Stop ali Off ukaze). Vsak slave odgovori samo takrat, ko je direktno vprašan. Vrne paketek z naslovom 1, kar pomeni, da ga pošlje Masterju nazaj. Če se CRC ne ujema, ne odgovori nič.
Toliko glede visokonivojskega protokola.
Glede hardvera, vsi so ves čas v načinu poslušanja in terminacijsku upori držijo linijo na Idle nivoju. Master nato najprej vklopi oddajnik, pošlje sporočilo, in gre nazaj v poslušanje in čaka na odgovor. Če ga ni, pošlje še enkrat.
Na mikrokontrolerju je vse skupaj zvezano na USART in še en pin, s katerim se preklaplja med oddajo in sprejemom.

RS485 gre brez težav do dolžine 1 km, ob ustrezno nižji hitrosti in ustrezni terminaciji na obeh koncih linije.

Dobijo se tudi USB-RS485 vmesniki. Ebay ipd. Za to mojo opcijo je pomembno, da iščeš varianto z 2 žicama (half duplex). Notri je ponavadi en FTDI in RS485 transceiver.

Druga opcija pa je CAN bus, če imaš ustrezen mikrokontroler, ki podpira hardverski CAN vmesnik.

_________________
I'm going to stand outside, so if anyone asks, I'm outstanding Smile
Nazaj na vrh
Skrit Poglej uporabnikov profil Pošlji zasebno sporočilo Obišči avtorjevo spletno stran MSN Messenger - naslov
matjazkariz
Član
Član



Pridružen-a: Sre 03 Nov 2004 18:09
Prispevkov: 1026
Aktiv.: 4.62

PrispevekObjavljeno: Sre Maj 18, 2011 8:27 pm    Naslov sporočila:   Odgovori s citatom

485 (half duplex) ali 422 (full duplex) je v tem primeru cenovno ugodna rešitev. Na DX dobiš 232 na 485 za nekaj dolarjev. Kot alternativo predlagam CAN, ki je mnogo bolj zanesljiv že v osnovi(uC v tem primeru LPC2129 ali LPC 2378). Na 485 boš moral pravilno dostavo paketov handlat softversko, pri CAN pa tega ni treba, ker je rešeno hardversko. Za povezavo z PC pa tole: http://www.can232.com/ Glede CAN si poglej članke v reviji Elektronik.si št. 8 in 9.
_________________
LP, Matjaž
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
siljo
Član
Član



Pridružen-a: Tor 28 Okt 2003 8:08
Prispevkov: 1035
Aktiv.: 4.66
Kraj: Ribn'ca

PrispevekObjavljeno: Sre Maj 18, 2011 9:51 pm    Naslov sporočila:  Re: Master/Slave komunikacija na 100m v industrijskem okolju Odgovori s citatom

gusti je napisal/a:
Lp.
Z PC-jem bi rad komuniciral z 16imi slave enotami (half ali full duplex) v katerih bo LPC2138 ali kaj podobnega. Komunikacija je lahko počasna kot polž, se nikamor ne mudi, ker bom prenašal malo podatkov in še to komaj vsake par minut. Mora pa bit zadeva robustna kolikor je le mogoče, da v prenosu ne bo prihajalo do napak. Dolžina kabla bi bila tam nekje do 50m ampak dejmo zaokrožit na 100m za ziher.

Zej če bi se to dalo nekak komunicirat v RS232 protokolu, bi mi močno olajšalo zadeve, ker ne bi rabil izumljat tople vode kar se komunikacije tiče.
Ampak RS232 je kolikor je meni poznano nekak preveč občutljiv na motje sploh v industrijskem okolju in tudi mislim, da sta lahko na rs232 priključeni samo 2 napravi.

Nekaj sem gledal RS485, pa mi par stvari ni čist jasnih glede tega, kako to deluje. A ima kdo kakšno pametno idejo kako to izvest in mogoče kakšen link? Po moje mora bit tega opisanega veliko ampak jaz nisem našel še nič pametnega.

Hvala za odg.


Če imaš majhno hitrost 100m ni noben problem...
http://www.lammertbies.nl/comm/info/RS-232_specs.html

_________________
Lep pozdrav!
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo
aly
Član
Član



Pridružen-a: Tor 28 Sep 2004 14:51
Prispevkov: 9406
Aktiv.: 42.36
Kraj: Kranj - struževo

PrispevekObjavljeno: Sre Maj 18, 2011 9:59 pm    Naslov sporočila:  Re: Master/Slave komunikacija na 100m v industrijskem okolju Odgovori s citatom

siljo je napisal/a:
Če imaš majhno hitrost 100m ni noben problem...
http://www.lammertbies.nl/comm/info/RS-232_specs.html

Če uporabljaš pravilne napetostne nivoje (+/- 15V), kar je že velika redkost. Današnji vmesniki so večinoma +/- 5V ali 0/5V Rolling Eyes
In v tem primeru te čaka še kar precej mečkanja, da narediš "multidrop" mrežo, ker RS232 je namenjen za komunikacijo 1-na-1. Če bi kaj prebral kaj zgoraj piše...

_________________
I'm going to stand outside, so if anyone asks, I'm outstanding Smile
Nazaj na vrh
Skrit Poglej uporabnikov profil Pošlji zasebno sporočilo Obišči avtorjevo spletno stran MSN Messenger - naslov
siljo
Član
Član



Pridružen-a: Tor 28 Okt 2003 8:08
Prispevkov: 1035
Aktiv.: 4.66
Kraj: Ribn'ca

PrispevekObjavljeno: Sre Maj 18, 2011 10:37 pm    Naslov sporočila:   Odgovori s citatom

imaš prav....no 16 sužnjev sem pozabil! Smile
_________________
Lep pozdrav!
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo
bumbar
Član
Član



Pridružen-a: Sre 28 Okt 2009 20:25
Prispevkov: 62
Aktiv.: 0.35
Kraj: Cerkno

PrispevekObjavljeno: Čet Maj 19, 2011 9:52 am    Naslov sporočila:   Odgovori s citatom

485 in ModBus.
Napišeš ModBus driver (enostavno, dobro dokumentirano-flowcharti, varno-CRC...), ga obesiš na SCI modul mikrokontrolerja, zunaj dodaš 485 konverter in si zmagal.
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
gusti
Član
Član



Pridružen-a: Pet 15 Feb 2008 17:34
Prispevkov: 112
Aktiv.: 0.57
Kraj: Kotlje - Koroška

PrispevekObjavljeno: Čet Maj 19, 2011 11:01 am    Naslov sporočila:   Odgovori s citatom

Hvala vam vsem za odgovore.
Malo sem zadeve pregledal še na netu in vas prosim, da preberete spodnje trditve in me popravite če si kaj narobe razlagam.

1.) Na master in vseh 16 sužnjev zvežem RS485 transciver (naprimer LTC1485).

2.) Transciverje lahko povežem tudi na uart in uporabim RTS za drive in recive enable. Tako lahko uporabim tudi RS232 protokol za komunikacijo ampak samo v half-duplex načinu. V bistvu moram software-sko rešit zadeve, da se bo vedno oglašal samo eden naenkrat in da bodo vedeli komu so podatki namenjeni.

3.) Tako sedaj uporabniki komunicirajo po pravilih protokola RS232 (start, stop, biti, pariteta ...) ampak samo fizično prenašanje podatkov je pa po RS485 standardu, zaradi zmanjševanja vpliva okolice na zanesljivost prenosa podatkov.

Primer:
Vseh 16 sužnjev je v recive enable stanju. MASTER se postavi na drive enable in pošlje naslov SLAVE1 in gre nazaj v recive enable. Vseh 16 sužnjev ta naslov sprejme. SLAVE1 se pripravi za pošiljanje N byte-ov. SLAVE2 do SLAVE16 se postavijo v stanje, da bodo preslišali N byte-ov, ki jih pošilja SLAVE1. Ko SLAVE1 pošlje tistih N byte-ov se vsi sužnji postavijo nazaj v recive enable in čakajo na nov ukaz od masterja.


Prosim, če mi lahko kdo pove, če sem naredil kje kakšno usodno napako?

Sej vem, da mogoče trmarim z tem uartom in rs232 protokolom, ampak tako lahko uporabim LabView aplikacijo za PC že od enega drugega projekta, ki ga pravkar zaključujem (DAQ kartica). Niti sanja se mi ne kako bi iz LabView-a pošiljal in prejemal podatke po nekem protokolu, ki bi si ga sam izmislil. Mogoče bi šlo, če bi lahko definiral pine v COM portu kot neke splošne I/O pine in potem gradil naprej ampak to bi izumljal toplo vodo. Po mojem mnenju so standardi ravno zato, da olajšajo zadeve kot je ta. Čeprav mogoče na račun hitrosti prenosa ampak ta v mojem primeru tako ali tako ne igra nobene vloge.
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
aly
Član
Član



Pridružen-a: Tor 28 Sep 2004 14:51
Prispevkov: 9406
Aktiv.: 42.36
Kraj: Kranj - struževo

PrispevekObjavljeno: Čet Maj 19, 2011 11:22 am    Naslov sporočila:   Odgovori s citatom

1. pravilno
2. pravilno **
3. pravilno

** - RTS (Request To Send) je v osnovi namenjen za handshaking, kar pomeni, da ga sprejemnik deaktivira, ko ima poln buffer in ne more več pošiljat podatkov.
Če lahko ta signal v LV softversko krmiliš, je ok. Da pred oddajo aktiviraš in takoj zatem deaktiviraš oddajnik.

Druga opcija je USB-RS485 vmesnik (zvo-žični), s FTDI čipom, ki ima to že hardversko rešeno.

_________________
I'm going to stand outside, so if anyone asks, I'm outstanding Smile
Nazaj na vrh
Skrit Poglej uporabnikov profil Pošlji zasebno sporočilo Obišči avtorjevo spletno stran MSN Messenger - naslov
gusti
Član
Član



Pridružen-a: Pet 15 Feb 2008 17:34
Prispevkov: 112
Aktiv.: 0.57
Kraj: Kotlje - Koroška

PrispevekObjavljeno: Čet Maj 19, 2011 12:23 pm    Naslov sporočila:   Odgovori s citatom

Na slave-ih bom kar splošne I/O pine iz procesorja dal za krmilit enable.
Bom preštudiral še ta RTS in DTR, če se da to kaj ročno krmilit iz LV ... zaenkrat nič ne izgleda imam samo možnost nastavitve flow controla.
Če ne bo šlo, bom pa vzel usb-rs485, ali pa dal med com port in transciver še en procesor z dvema uartoma, ki bo samo forwardiral podatke naprej in krmilil enable.

To se bo že dalo nekak rešit, glavno da je princip že od začetka pravilno nastavljen.

Hvala vsem za pomoč.
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
rbogomir
Član
Član



Pridružen-a: Tor 13 Apr 2004 13:58
Prispevkov: 40
Aktiv.: 0.18
Kraj: Cerkno

PrispevekObjavljeno: Pet Maj 20, 2011 7:42 am    Naslov sporočila:   Odgovori s citatom

gusti je napisal/a:

Bom preštudiral še ta RTS in DTR, če se da to kaj ročno krmilit iz LV ... zaenkrat nič ne izgleda imam samo možnost nastavitve flow controla.


RTS in DTR lahko krmiliš tudi iz LV. VISA reference priključi na Property Node, izberi Serial Settings -> Modem Line Settings --> Line RTS State. Spodaj je primer. Mislim, da Asserted pomeni aktivno stanje. Na RS232 je to negativna napetost.

LP, Mikro



VISA RTS.png
 Opis:
 Velikost datoteke:  2.67 KB
 Pogledana:  19185 krat

VISA RTS.png


Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
Pokaži sporočila:   
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> Periferija Časovni pas GMT + 2 uri, srednjeevropski - poletni čas
Stran 1 od 1

 
Pojdi na:  
Ne, ne moreš dodajati novih tem v tem forumu
Ne, ne moreš odgovarjati na teme v tem forumu
Ne, ne moreš urejati svojih prispevkov v tem forumu
Ne, ne moreš brisati svojih prispevkov v tem forumu
Ne ne moreš glasovati v anketi v tem forumu
Ne, ne moreš pripeti datotek v tem forumu
Ne, ne moreš povleči datotek v tem forumu

Uptime: 48 dni


Powered by phpBB © 2001, 2005 phpBB Group