Modbus RTU kommunikasjonsprotokoll

Apr 27, 2026 Legg igjen en beskjed

Modbus RTU-protokollen er som et "vanlig språk" mellom industrielle enheter, og muliggjør jevn "kommunikasjon" mellom enheter som strømmålere og sensorer fra forskjellige merker.

Modbus Communication Protocol Application demonstrasjon

Denne artikkelen vil guide deg gjennom bruken av Modbus RTU i energimålere på den enkleste og mest forståelige måten. Selv om du er en nybegynner uten teknisk bakgrunn, kan du enkelt forstå kjernepunktene i denne viktige industrielle kommunikasjonsprotokollen.

The Modbus RTU protocol

Hva er Modbus RTU-protokollen?

Modbus RTU er en seriell kommunikasjonsprotokoll opprinnelig utviklet av Modicon (nå en del av Schneider Electric) i 1979 for sine PLS-er (Programmable Logic Controllers).

I dag har det blitt en av de mest brukte protokollene innen industriell automatisering, støttet av over 400 produsenter over hele verden.

Hvorfor heter det "RTU"? RTU er en forkortelse for "Remote Terminal Unit", som indikerer at denne protokollen primært brukes til kommunikasjon mellom eksterne enheter. Det er som et "tekstsystem" mellom elektrisk utstyr, utveksling av data gjennom en enkel forespørsel og svarmekanisme.

Hvordan fungerer Modbus RTU?

Modbus RTU bruker en master-slavekommunikasjonsarkitektur, som en lærer og elever i et klasserom.

  • Mester: «Læreren», vanligvis en datamaskin, PLS eller konsentrator, er ansvarlig for å sette i gang spørsmål og kommandoer.
  • Slave: «eleven», for eksempel en strømmåler eller sensor, kan bare svare på lærerens spørsmål og kan ikke snakke selvstendig. (I applikasjoner for strømmålere...)

Modbus RTU

Modbus RTU meldingsformat

"SMS-mal" mellom enheter

Modbus RTU-kommunikasjonsmeldinger er som nøye utformede tekstmeldinger, med faste formatkrav.

En fullstendig Modbus RTU-melding inneholder følgende deler:

Adressekode Funksjonskode Datafelt Sjekk kode
8-biter 8-biter N × 8-biter 16-biter
  • Adressekode (1 byte): Tilsvarer en "mottakers telefonnummer", som identifiserer adressen til målenergimåleren (1-247), med 0 for en kringkastingsadresse.
  • Funksjonskode (1 byte): Tilsvarer en "tekstmeldingstype", som instruerer energimåleren om operasjonen som skal utføres (f.eks. lese data, skrive data osv.).
  • Datafelt (N byte): Den spesifikke informasjonen som skal overføres, for eksempel registeradresse, dataverdi, etc.
  • CRC-sjekksum (2 byte): Tilsvarer en "anti-forfalskningskode", som brukes til å se etter feil under overføring.

En typisk melding for lesing av total positiv aktiv energidata fra en UBS-energimåler er som følger:

[Adresse 00][Funksjonskode 03][Startadresse 00 0C][Leselengde 00 02][CRC Checksum 05 D9]

Dette tilsvarer å si: "Alle målere, les data fra register 000C, start med register 1."

Etter å ha mottatt meldingen vil måler #1 svare med:

[Adresse 01][Funksjonskode 03][Data Lengde 04][Data 00 00 00 00][CRC Checksum FA 33]
Dette betyr: "Måler #1 svarte: Den totale positive aktive energidataverdien som er lest er 00 00 00 00 (heksadesimal)" (Merk: Denne måleren #1 er en ny, ubrukt måler). Bildet nedenfor er en testdemonstrasjon:

Modbus RTU Message Format

"Databoken" i en strømmåler: Register forklart

I Modbus RTU-protokollen lagres alle data fra en strømmåler i et "regneark"-registeret. Registrene er hovedsakelig delt inn i fire typer:

Registreringstype Lese-/skrivetillatelse Funksjonskoder Typisk lagret innhold
Spoleregister Les/skriv 01, 05 Reléstatus, bryterstyring
Diskret inngangsregister Lese-bare 02 Digital inngang (f.eks. alarmsignaler)
Inndataregister Lese-bare 04 Sanntidsmålingsdata (spenning, strøm osv.)
Holdingregister Les/skriv 03, 06 Enhetsparametere, akkumulert energi, etc.

I strømmålerapplikasjoner er de vanligste registrene:

Inndataregister

(Funksjonskode 04H): Lagrer målte-sanntidsdata som spenning, strøm og effekt.

Holdingregister

(Funksjonskode 03H): Lagrer akkumulert strømforbruk, enhetsparametere osv.

UBS Energimåler Modbus Register Adresseinformasjonstabell

Modbus-protokollens kringkastingsadresse er 0x00. For detaljert Modbus-protokollregisteradresseinformasjon for UBS-energimålere, se tabellen nedenfor:

Registrer (Hex) Variabelnavn Attributt (Enhet / R/W) Datatype Telle Merknader
0x0000 DC spenning Enhet: V, R/W: RO S16 1 Område: -9999~9999; Leser=effektiv verdi × 10^(desimaltegnet)
0x0001 Spenning desimalpunkt Enhet: Ingen, R/W: RO U16 1 Fast verdi: 0
0x0002 DC gjeldende verdi Enhet: A, R/W: RO S16 1 Rekkevidde: -9999~9999
0x0003 Gjeldende desimalpunkt Enhet: Ingen, R/W: RO U16 1 Fast verdi: 1
0x0008 Strømverdi Enhet: kW, R/W: RO S16 1 Rekkevidde: -9999~9999
0x0009 Power desimalpunkt Enhet: Ingen, R/W: RO U16 1 Fast verdi: 1
0x000C Total Forward Active Energy Enhet: 0,001kWh, R/W: RO U32 2 Høy byte først, lav byte sist; Eksempel: Hvis data leser=5000, desimaltegn=2 → Faktisk verdi=5000 × 10^(2-3)=500.0
0x203C Spenning for kanal 1 Enhet: 0,0001V, R/W: RO I32 2 Høy byte først, lav byte sist
0x203E Spenning for kanal 2 Enhet: 0,0001V, R/W: RO I32 2 Alltid 0
0x2040 Kanal 1 Aktuell Enhet: 0,0001A, R/W: RO I32 2 Høy byte først, lav byte sist
0x2042 Kanal 2 Aktuell Enhet: 0,0001A, R/W: RO I32 2 Alltid 0
0x2044 Kanal 1 Strøm Enhet: 0,0001kW, R/W: RO I32 2 Høy byte først, lav byte sist
0x2046 Kanal 2 Strøm Enhet: 0,0001kW, R/W: RO I32 2 Alltid 0
0x9A00 Forover Aktiv Total Energi Enhet: kWh, R/W: RO flyte 2
0xA001/0x8900 Enhetsadresse Enhet: Ingen, R/W: RW U16 1 Område: 0~247

Demonstrasjon av lesing av UBS energimålermeldinger

Bruk UBS-energimålerens vertsdatamaskinprogramvare, les følgende data fra DJZ1226 DC smart energimåler: total positiv aktiv energi, spenning, strøm, effekt og måleradresse.

Demonstration Of Reading UBS Energy Meter Messages

Som vist i diagrammet ovenfor, er det detaljerte meldingsinnholdet sendt og mottatt av vertsdatamaskinen som følger:

13:25:30.229 Total positiv aktiv energi(000C0002) ...

13:25:30.256 ▼Send:00 03 00 0C 00 02 05 D9

13:25:30.344 ▲Motta:01 03 04 00 00 00 00 FA 33

13:25:30.359 DC spenning(00000002) ...

13:25:30.424 ▼Send:00 03 00 00 00 02 C5 DA

13:25:30.428 ▲Motta:01 03 04 00 17 00 03 0A 36

13:25:30.494 DC strøm(00020002) ...

13:25:30.522 ▼Send:00 03 00 02 00 02 64 1A

13:25:30.610 ▲Motta:01 03 04 00 30 00 02 7B FD

13:25:30.621 Strøm(00080002) ...

13:25:30.682 ▼Send:00 03 00 08 00 02 44 18

13:25:30.690 ▲Motta:01 03 04 00 01 00 02 2A 32

13:25:30.702 Kommunikasjonsadresse 2(A0010001) ...

13:25:30.779 ▼Send:00 03 A0 01 00 01 F6 1B

13:25:30.783 ▲Motta:01 03 02 00 01 79 84

13:25:30.795 Slutt på lesing av data.

Vanlige problemer og feilsøkingsteknikker

Selv om Modbus RTU-protokollen er relativt enkel, kan det likevel oppstå ulike problemer i praktiske applikasjoner. Følgende er vanlige feil og løsninger i strømmålerkommunikasjon:

Ingen kommunikasjonsrespons

● Sjekk fysiske tilkoblinger:

▪ Er RS-485-kablingen riktig (A/B-linjer omvendt)?

▪ Er termineringsmotstandene samsvarende (vanligvis kobler du 120Ω motstander i hver ende av bussen)?

▪ Er kommunikasjonsavstanden overskredet grensen (RS-485 kan teoretisk nå 1200 meter, men faktiske avstander påvirkes av miljøfaktorer).

● Bekreft parameterinnstillinger:

▪ Er overføringshastigheten, databitene, stoppbitene og paritetsinnstillingene i samsvar med strømmåleren?

▪ Er enhetens adresse satt riktig (ingen dupliserte adresser)?

Intermitterende kommunikasjon

● Se etter linjeinterferens:

▪ Bruk tvunnet- skjermet kabel og sørg for at skjermen er jordet i den ene enden.

▪ Unngå å føre kabelen parallelt med-høyspentkabler.

● Testing av individuelle enheter:

▪ Koble hver strømmåler individuelt for å feilsøke defekte enheter.

▪ Bruk UBS Electronics sin dedikerte vertsdatamaskinprogramvare (som AMS) for å kommunisere direkte med strømmåleren og finne problemet.

Datafeil

● Bekrefter CRC-sjekk:

▪ Sjekk om de sendte og mottatte CRC-kodene stemmer overens.

▪ Bekreft databyte-rekkefølgen (Modbus RTU er vanligvis liten-endian).

● Kontrollere registerkartlegging:

▪ Bekreft at registeradressene som brukes stemmer overens med håndboken til strømmåleren.

▪ Merk registeradresseforskyvningen.

Hvis du trenger å bruke UBS-vertsdatamaskinprogramvaren (Modbus RTU-protokollen) som er nevnt i denne artikkelen, kan du kontakte personen som er ansvarlig for bestillingen av UBS-elektrisitetsmåler og få mer teknisk støtte etter-salg.

Sende bookingforespørsel