Protokol Modbus RTU je kot "skupni jezik" med industrijskimi napravami, ki omogoča nemoteno "komunikacijo" med napravami, kot so električni števci in senzorji različnih znamk.
Predstavitev uporabe komunikacijskega protokola Modbus
Ta članek vas bo vodil skozi uporabo Modbus RTU v merilnikih energije na najpreprostejši in najbolj razumljiv način. Tudi če ste popolni novinec brez tehničnega znanja, lahko zlahka razumete bistvo tega pomembnega industrijskega komunikacijskega protokola.

Kaj je protokol Modbus RTU?
Modbus RTU je serijski komunikacijski protokol, ki ga je prvotno razvil Modicon (zdaj del Schneider Electric) leta 1979 za svoje PLC-je (Programmable Logic Controllers).
Danes je postal eden najbolj razširjenih protokolov v industrijski avtomatizaciji, ki ga podpira več kot 400 proizvajalcev po vsem svetu.
Zakaj se imenuje "RTU"? RTU je okrajšava za "oddaljeno terminalsko enoto", kar pomeni, da se ta protokol uporablja predvsem za komunikacijo med oddaljenimi napravami. Je kot "sistem za pošiljanje sporočil" med električno opremo, ki izmenjuje podatke prek preprostega mehanizma za zahtevo in odgovor.
Kako deluje Modbus RTU?
Modbus RTU uporablja nadrejeno-podrejeno komunikacijsko arhitekturo, kot učitelj in učenci v učilnici.
- Master: "Učitelj", običajno računalnik, PLC ali koncentrator, je odgovoren za sprožanje vprašanj in ukazov.
- Suženj: "Učenec", kot je električni števec ali senzor, lahko odgovarja le na učiteljeva vprašanja in ne more govoriti samostojno. (V aplikacijah števcev električne energije ...)

Format sporočila Modbus RTU
"SMS predloga" med napravami
Komunikacijska sporočila Modbus RTU so kot skrbno oblikovana besedilna sporočila z zahtevami fiksnega formata.
Celotno sporočilo Modbus RTU vsebuje naslednje dele:
| Koda naslova | Koda funkcije | Podatkovno polje | Preverite kodo |
|---|---|---|---|
| 8-bitni | 8-bitni | N × 8-bitov | 16-bitni |
- Koda naslova (1 bajt): Enakovredno "telefonski številki prejemnika", ki identificira naslov ciljnega števca energije (1-247), z 0 za oddajni naslov.
- Funkcijska koda (1 bajt): Enakovredno "vrsti besedilnega sporočila," ki daje navodilo števcu energije za operacijo, ki jo mora izvesti (npr. branje podatkov, pisanje podatkov itd.).
- Podatkovno polje (N bajtov): posebne informacije, ki jih je treba prenesti, kot so naslov registra, vrednost podatkov itd.
- Kontrolna vsota CRC (2 bajta): Enakovredno "pro-kodi proti ponarejanju," ki se uporablja za preverjanje napak med prenosom.
Tipično sporočilo za branje podatkov o skupni pozitivni aktivni energiji iz števca UBS energije je naslednje:
[Naslov 00][koda funkcije 03][začetni naslov 00 0C][dolžina branja 00 02][kontrolna vsota CRC 05 D9]
To je enakovredno besedi: "Vsi števci, prosimo, preberite podatke iz registra 000C, začenši z registrom 1."
Po prejemu sporočila bo merilnik št. 1 odgovoril z:
[Naslov 01][koda funkcije 03][dolžina podatkov 04][podatki 00 00 00 00][kontrolna vsota CRC FA 33]
To pomeni: "Števec št. 1 je odgovoril: Odčitana vrednost podatkov o skupni pozitivni aktivni energiji je 00 00 00 00 (šestnajstiško)" (Opomba: Ta merilnik št. 1 je nov, neuporabljen merilnik). Spodnja slika je testna predstavitev:

"Podatkovna knjiga" v števcu električne energije: razlaga registra
V protokolu Modbus RTU so vsi podatki iz števca električne energije shranjeni v "preglednici"-registra. Registri so v glavnem razdeljeni na štiri vrste:
| Vrsta registracije | Dovoljenje za branje/pisanje | Funkcijske kode | Tipična shranjena vsebina |
|---|---|---|---|
| Register tuljav | Branje/Pisanje | 01, 05 | Stanje releja, nadzor stikala |
| Diskretni vhodni register | Samo-za branje | 02 | Digitalni vhod (npr. alarmni signali) |
| Vhodni register | Samo-za branje | 04 | Merilni-podatki v realnem času (napetost, tok itd.) |
| register gospodarstev | Branje/Pisanje | 03, 06 | Parametri naprave, akumulirana energija itd. |
V aplikacijah števcev električne energije so najpogostejši registri:
Vhodni register
(Funkcijska koda 04H): Shranjuje podatke, izmerjene-v realnem času, kot so napetost, tok in moč.
register gospodarstev
(Funkcijska koda 03H): Shranjuje akumulirano porabo električne energije, parametre naprave itd.
UBS Energy Meter Modbus Register Address Information Tabela
Oddajni naslov protokola Modbus je 0x00. Za podrobne informacije o naslovu registra protokola Modbus za števce energije UBS glejte spodnjo tabelo:
| Register (Hex) | Ime spremenljivke | Atribut (enota / R/W) | Vrsta podatkov | štetje | Opombe |
|---|---|---|---|---|---|
| 0x0000 | enosmerna napetost | Enota: V, R/W: RO | S16 | 1 | Razpon: -9999~9999; Branje=efektivna vrednost × 10^(decimalna vejica) |
| 0x0001 | Decimalna vejica napetosti | Enota: Brez, R/W: RO | U16 | 1 | Fiksna vrednost: 0 |
| 0x0002 | DC trenutna vrednost | Enota: A, R/W: RO | S16 | 1 | Razpon: -9999~9999 |
| 0x0003 | Trenutna decimalna vejica | Enota: Brez, R/W: RO | U16 | 1 | Stalna vrednost: 1 |
| 0x0008 | Vrednost moči | Enota: kW, R/W: RO | S16 | 1 | Razpon: -9999~9999 |
| 0x0009 | Decimalna vejica stopnje | Enota: Brez, R/W: RO | U16 | 1 | Stalna vrednost: 1 |
| 0x000C | Skupna naprej aktivna energija | Enota: 0,001kWh, R/W: RO | U32 | 2 | Prvi bajt visoki, zadnji bajt nizki; Primer: Če podatki preberejo=5000, decimalna vejica=2 → Dejanska vrednost=5000 × 10^(2-3)=500.0 |
| 0x203C | Napetost kanala 1 | Enota: 0,0001 V, R/W: RO | I32 | 2 | Prvi bajt, zadnji bajt nizki |
| 0x203E | Napetost kanala 2 | Enota: 0,0001 V, R/W: RO | I32 | 2 | Vedno 0 |
| 0x2040 | Kanal 1 Trenutni | Enota: 0,0001 A, R/W: RO | I32 | 2 | Prvi bajt, zadnji bajt nizki |
| 0x2042 | Kanal 2 Trenutni | Enota: 0,0001 A, R/W: RO | I32 | 2 | Vedno 0 |
| 0x2044 | Moč kanala 1 | Enota: 0,0001kW, R/W: RO | I32 | 2 | Prvi bajt, zadnji bajt nizki |
| 0x2046 | Moč kanala 2 | Enota: 0,0001kW, R/W: RO | I32 | 2 | Vedno 0 |
| 0x9A00 | Naprej aktivna skupna energija | Enota: kWh, R/W: RO | plavati | 2 | |
| 0xA001/0x8900 | Naslov naprave | Enota: Brez, R/W: RW | U16 | 1 | Razpon: 0~247 |
Predstavitev branja sporočil UBS Energy Meter
S programsko opremo gostiteljskega računalnika UBS za števce energije odčitajte naslednje podatke iz pametnega števca energije DJZ1226 DC: skupno pozitivno delovno energijo, napetost, tok, moč in naslov števca.

Kot je prikazano v zgornjem diagramu, je podrobna vsebina sporočila, ki ga pošlje in prejme gostiteljski računalnik, naslednja:
13:25:30.229 Skupna pozitivna aktivna energija(000C0002) ...
13:25:30.256 ▼Pošlji:00 03 00 0C 00 02 05 D9
13:25:30.344 ▲Prejmi:01 03 04 00 00 00 00 FA 33
13:25:30.359 Enosmerna napetost (00000002) ...
13:25:30.424 ▼Pošlji:00 03 00 00 00 02 C5 DA
13:25:30.428 ▲Prejem:01 03 04 00 17 00 03 0A 36
13:25:30.494 Enosmerni tok (00020002) ...
13:25:30.522 ▼Pošlji:00 03 00 02 00 02 64 1A
13:25:30.610 ▲Prejmi:01 03 04 00 30 00 02 7B FD
13:25:30.621 Power(00080002) ...
13:25:30.682 ▼Pošlji:00 03 00 08 00 02 44 18
13:25:30.690 ▲Prejem:01 03 04 00 01 00 02 2A 32
13:25:30.702 Komunikacijski naslov 2(A0010001) ...
13:25:30.779 ▼Pošlji:00 03 A0 01 00 01 F6 1B
13:25:30.783 ▲Prejmi:01 03 02 00 01 79 84
13:25:30.795 Konec branja podatkov.
Pogoste težave in tehnike za odpravljanje težav
Čeprav je protokol Modbus RTU razmeroma preprost, se lahko v praktičnih aplikacijah vseeno pojavijo različne težave. Sledijo pogoste napake in rešitve pri komunikaciji števcev električne energije:
Ni komunikacijskega odziva
● Preverite fizične povezave:
▪ Ali je ožičenje RS-485 pravilno (linije A/B obrnjene)?
▪ Ali so zaključni upori usklajeni (na splošno priključite 120Ω upore na vsakem koncu vodila)?
▪ Ali je komunikacijska razdalja presežena omejitev (RS-485 teoretično lahko doseže 1200 metrov, vendar na dejanske razdalje vplivajo okoljski dejavniki).
● Preverite nastavitve parametrov:
▪ Ali so hitrost prenosa podatkov, podatkovni biti, stop bitovi in nastavitve paritete skladni z električnim števcem?
▪ Ali je naslov naprave pravilno nastavljen (ni podvojenih naslovov)?
Prekinjena komunikacija
● Preverite motnje v liniji:
▪ Uporabite oklopljen kabel s prepleteno{0}}parico in zagotovite, da je oklop na enem koncu ozemljen.
▪ Izogibajte se napeljavi kabla vzporedno z visoko{0}}napetostnimi kabli.
● Testiranje posameznih naprav:
▪ Priključite vsak števec električne energije posebej za odpravljanje težav z okvarjenimi napravami.
▪ Uporabite namensko programsko opremo gostiteljskega računalnika UBS Electronics (kot je AMS) za neposredno komunikacijo z električnim števcem in natančno določite težavo.
Podatkovne napake
● Preverjanje preverjanja CRC:
▪ Preverite, ali sta poslani in prejeti kodi CRC skladni.
▪ Potrdite vrstni red podatkovnih bajtov (Modbus RTU je običajno little-endian).
● Preverjanje preslikave registra:
▪ Potrdite, da so uporabljeni naslovi registra skladni s priročnikom števca električne energije.
▪ Upoštevajte odmik naslova registra.
Če morate uporabiti programsko opremo gostiteljskega računalnika UBS (protokol Modbus RTU), omenjeno v tem članku, se obrnite na osebo, odgovorno za naročilo vašega števca električne energije UBS, in pridobite dodatno po-tehnično podporo.




