EMP-234-ala-asemat ja EMP-231-vaa'at on tarkoitettu RS485-standardia käyttävään Empway-väyläliikenteeseen. Usein kuitenkin on käytetävissä tavallinen PC, jossa olevat Com-portit käyttävät RS232-standardia. Tarvitaan muunnin RS232/RS485. |
Saatavilla on Com-porttiin liitettäviä adaptereita. Esim. DealeXtreme myy edullista mallia tuotekoodilla SKU 6040 |
|
Muunnos voidaan lyhyellä etäisyydellä (muutama metri) toteuttaa myös parilla vastuksella. Tässä helppo ja luotettavaksi todettu ratkaisu RS232/RS485-muunnokseen. | Klikkaa kuva suuremmaksi |
RS232 / RS485-muunnos kahdella vastuksella, hieman teoriaa ja käytäntöä
Vasemmalla RS232 lähetin/vastaanotin, esim. MAX232.
Oikealla half-duplex RS485 lähetin/vastaanotin, esim. MAX485, MAX3085, LTC485
Linja toteutetaan kierretyllä parilla: parin toinen johto on nolla, toinen signaali.
On huomattava, että toteutus ei toki täytä RS-standardeja, mutta täyttää linjaohjaimien spesifikaatiot.
4,7 kohmin vastus Tx:ssä antaa väylän tarvitseman negatiivisen jännitteen, kun Tx-nasta on alhaalla. Samalla se suojaa RS485-piiriä ettei sen maksimijännitteet ja -virrat A- ja B-pinneihin ylity.
Käytännössä olen toteuttanut tällä periaatteella kymmeniä kohteita Suomessa vuosien ajan eikä ongelmia ole ollut. Päinvastoin, ongelmia oli, kun käytin "virallisia" RS232/RS485-muuntimia. Ne toimivat vielä hyvin Dos-ympäristössä, mutta Windowsien sarjaliikenteen puskuroinnit ja epäsäännölliset viiveet tekivät sovellusohjelmalle mahdottomaksi määritellä hetki, jolloin sanoman viimeinen merkki on todellisuudessa lähtenyt linjalle. Ja half-duplex-tyyppisessä tiedosiirrossa pitää vaihtaa sanoman suuntaa millisekunnin marginaalilla oikeaan aikaan, jotta ehditään ottamaan vastaan ala-aseman lähettämä vastaussanoma ilman että yksikään merkki lähetettävästä sanomasta menee hukkaan.
Liikenne on half-duplex eli sanoma kulkee kerraallaan vain yhteen suuntaan. Jos törmäyksiä kuitenkin tapahtuu, mitään ei ylikuormitu. Half duplex-toiminnan vaatima suunnanvaihto tarvitaan vain RS485-päässä DE-nastan avulla.
RS232:n päässä Rx kaiuttaa myös lähetetyt merkit, joten se pitää huomioida sovellusohjelmassa. Se, kaiuttuuko myös RS485:n päässä omat merkit, riippuu /RE-nastan ohjauksesta: jos se on koko ajan nollassa, merkit kaiuttuvat, jos taas sitä ohjataan DE-nastan kanssa yhtä aikaa, ei merkit kaiutu.
Käytännössä linjan pituus on yleensä ollut kymmeniä metrejä, yksi kohde on totetutettu jopa 300 m NOMAK-johdolla, enkä ainakaan vielä ole kuullut sieltäkään ongelmista. Linjanopeutena on käytössä 9600 Baud.
EmpWay-protokolla virheentarkistuksineen sietää hyvin satunnaisia häiriöitä, virheelliseksi havaitut sanomat poistetaan eikä kuitata, jolloin lähettävä asema lähettää sen uudelleen.
Jännitetasot lähetyssuunnassa RS232 -> RS485
Jännitteet mitattu käyttäen RS232-lähetykseen PC:n Com-porttia ja vastaanottoon ala-aseman MAX485-piiriä.
MAX485:n DE-nasta on looginen nolla (= vastanotto).
Marginaalivaraa on runsaasti: RS485 differentiaalitulo on määritelty +-0,2 voltin sisälle, kun se tuossa kaaviossa näkyy saavan yli +- 4V.
RS485 maksimi linjatulon jännite saa olla -7..+12V välillä, jolla se vielä spesifikaatioiden mukaan toimii normaalisti. Ehdottomat linjatulojen maksimirajat ovat MAX485-piirillä -8..+12,5V, paremmalla MAX3085-sarjan piireillä +-13V.
On huomioitava näissä jännitteissä, että ne saattavat vaihdella riippuen siitä, onko RS232 (Com-portti) standardijännitteinen (+-12V) vai ei. Jossain läppäreissä voi olla käytössä esim. -5V ja +12V. Toistaiseksi ei ole eteeni tullut yhtäkään PC:n Com-porttia, jossa kytkentä ei olisi toiminut.
Jännitetasot lähetyssuunnassa RS485 -> RS232
Jännitteet mitattu käyttäen RS232-lähetykseen PC:n Com-porttia ja vastaanottoon ala-aseman MAX485-piiriä.
MAX485:n DE-nasta on looginen ykkönen (= lähetys).
RS232-vastaanotossa marginaalit eivät ole normaalin RS232 liikenteen tasoa, mutta kuitenkin riittävät. Alempi kytkentätaso on spesifikoitu minimissään +0,8V:iin, joten mitattu -4,2V on turvallisen kaukana. Ylempi kytkentätaso on maksimissaan 2,4V, jolloin ero mitattuun 4,3V:iin ei ole niin paljoa, vaikka onhan marginaalia siinäkin lähes 2V.
Ilmeisesti pitkillä etäisyyksillä juuri nämä marginaalit kutistuvat ja muodostavat toiminnallisen rajan pituuden ja/tai baudinopeuden kasvaessa.
Kytkentää tarkastelevalle saattaa herätä kysymys, miten RS485-piiri pystyy antamaan negatiivisen jännitteen väylälle.
Se saa negatiivisen jännitteen RS232 Tx-nastasta 4,7 kohmin vastuksen kautta. Half duplex-liikenteessähän lähetys ja vastaanotto eivät ole yhtä aikaa aktiivisia ja RS232:n Tx-nasta antaa n.-10V jännitteen, silloin kun se ei lähetä. Ollessaan alhaalla RS485-lähtö sallii lähtöjännitteen menevän myös negatiiviseksi, jos se saa negatiivista "vetoapua" ulkopuolelta.
|