Mikä on RS485?
RS485 on sähköisen siirron standardi, ei protokolla. Data kulkee jännite-erona kahden johtimen välillä, joita kutsutaan yleensä A:ksi ja B:ksi, joskus D+:ksi ja D−:ksi. Koska vastaanotin arvioi vain eroa, molempiin johtimiin samalla tavalla vaikuttavat häiriöt kumoutuvat suurelta osin. Siksi RS485 toimii myös keskuksissa, joissa on taajuusmuuttajia, ja pitkillä matkoilla.
Perinteisesti yksi segmentti kestää 32 osallistujaa (unit loads); nykyaikaiset ajurit kuormittavat väylää vain murto-osalla siitä. Johto voi olla noin 1200 m pitkä, suurilla nopeuksilla lyhyempi.
RS485:n kautta kulkee eri protokollia, Modbus RTU:n lisäksi esimerkiksi BACnet MS/TP. RS485-sähkömittarin lukutapa selviää siksi vasta protokollan myötä.
Miten RS485-väylä kaapeloidaan oikein?
- Vedä linjana: laitteelta laitteelle, ilman tähteä ja ilman pitkiä haaroja.
- Asenna yksi 120 Ω:n päätevastus johdon kumpaankin päähän, ei jokaiseen laitteeseen.
- Käytä kierrettyä, suojattua datakaapelia, mieluiten aaltoimpedanssiltaan noin 120 Ω.
- Vie vertailumaa (GND) mukana, jos laitteet ovat kaukana toisistaan tai niillä on eri syöttö.
- Aseta kaikkiin laitteisiin sama siirtonopeus, pariteetti ja stop-bitit.
Yleisimmät sudenkuopat väylän rakentamisessa kuvataan artikkelissa Modbus RTU RS-485:n kautta: viisi yleisintä sudenkuoppaa.
Mikä on Modbus RTU?
Modbus on avoin protokolla, jonka Modicon kehitti ohjausjärjestelmiä varten vuonna 1979. RTU tarkoittaa Remote Terminal Unitia ja viittaa sarjajohtojen binääriversioon. Master, esimerkiksi logiikka, dataloggeri tai energianhallintajärjestelmä, lähettää kyselyn orjan osoitteeseen, ja vain se laite vastaa. Orja ei koskaan lähetä oma-aloitteisesti.
Sähke koostuu osoitteesta, funktiokoodista, datasta ja CRC16-tarkistussummasta. Kahden sähkeen välillä on vähintään 3,5 merkin pituinen tauko, josta laitteet tunnistavat alun ja lopun.
| Funktiokoodi | Merkitys | Tyypillinen käyttö |
|---|---|---|
| 03 | Holding-rekisterien luku | Mittausarvot ja asetukset |
| 04 | Input-rekisterien luku | Mittausarvot |
| 06 | Yhden rekisterin kirjoitus | Asetuksen muuttaminen |
| 16 | Useamman rekisterin kirjoitus | Useamman arvon kirjoitus yhtenä lohkona |
Miten Modbus-rekisterit luetaan oikein?
Modbus tuntee vain 16-bittiset rekisterit. 32- tai 64-bittinen lukema jakautuu kahteen tai neljään peräkkäiseen rekisteriin. Kukin valmistaja päättää itse, tuleeko merkitsevin sana ensin. Jos järjestelmä antaa mielettömiä arvoja, tavu- tai sanajärjestys on yleensä väärinpäin.
Myös osoitteiden numerointi vaihtelee: osa käsikirjoista laskee nollasta, osa ykkösestä. Jos arvo on siirtynyt täsmälleen yhden rekisterin, syy on lähes aina tämä.
Milloin Modbus RTU RS485:n kautta sopii?
Modbus RTU sopii, kun ohjaus tai dataloggeri lukee mittareita suoraan samasta keskuksesta tai rakennuksesta eikä mittareille ole verkkoa. Kun mittareita on paljon useassa rakennuksessa tai kohdejärjestelmiä on useita, yhdyskäytävä kannattaa. Vertailun verkkoversioon löydät artikkelista Modbus TCP vai Modbus RTU? ja sivulta Mikä on Modbus TCP?.
RS485 ja Modbus RTU EMUn laitteilla
RS485-sähkömittari EMU Professional II puhuu Modbus RTU:ta, mallina EMU Professional II 3/100 suoraan kytkentään enintään 100 A tai mallina 3/5 virtamuuntajakytkentään.
EMU M-Centerissä on kaksi RS485-liitäntää; se lukee enintään 64 Modbus RTU -laitetta ja välittää arvot BACnet IP:n tai MQTT:n kautta.