De verschillen tussen Modbus RTU- en Modbus TCP-protocollen onderzoeken

In de jaren 1970 maakte de industriële automatisering een snelle ontwikkeling door. De snelle ontwikkeling van de industrie bracht ook enkele problemen met zich mee. In die tijd gebruikten verschillende fabrikanten van apparatuur verschillende protocollen, waardoor hun apparatuur niet met elkaar kon communiceren.

Om dit probleem op te lossen werd het Modbus protocol gecreëerd. Het is een open, gestandaardiseerd protocol dat verschillende datatypes en functiecodes kan ondersteunen om te voldoen aan verschillende communicatiebehoeften. Modbus-protocol heeft 3 typen, waaronder ASCII, RTU en TCP. Als het Modbus-protocol gebruikmaakt van seriële poortoverdracht, kunnen de eerste twee typen worden geselecteerd, maar moeten de gegevens worden gecontroleerd. Bij Ethernet transmissie wordt het TCP type gebruikt, waarbij geen checksums nodig zijn. Modbus ASCII wordt minder vaak gebruikt vanwege de inefficiëntie van het verzenden van gegevens met voornamelijk ASCII-codes. Modbus RTU en Modbus TCP zijn daarentegen meer geschikt voor gebruik in moderne industriële omgevingen die een hogere overdrachtsefficiëntie vereisen. In dit artikel analyseren we deze twee protocollen, introduceren we hun werkingsprincipes en toepassingsscenario's en hopen we je van dienst te zijn.

modBus1

Modbus communicatieprincipe

Het principe van Modbus-communicatie is als volgt: er wordt gebruikgemaakt van de master-slavecommunicatiemodus. Dit betekent dat er master- en slave-apparaten zijn en dat het master-apparaat de transmissie kan initialiseren en vervolgens een verzoek naar het slave-apparaat kan sturen. Het slave-apparaat kan het verzoek niet actief beantwoorden, maar kan alleen antwoorden volgens het verzoek van het master-apparaat. Het slaveapparaat voert dan de gevraagde bewerking uit en stuurt dan een antwoord naar het masterapparaat. Het masterapparaat ontvangt het antwoord en verwerkt het, waardoor het communicatieproces voltooid is. Een masterapparaat kan tegelijkertijd verbonden zijn met een of meer slaveapparaten, maar er kan slechts één masterapparaat en één slaveapparaat zijn in één communicatie. Als een masterapparaat verbinding maakt met één slaveapparaat, communiceren ze met elkaar in unicastmodus. Als het masterapparaat echter verbonden is met meer dan één slaafapparaat, is het nodig om de broadcastmodus voor communicatie te selecteren.

Hoe Modbus RTU werkt

modbusRTU

Modbus RTU ondersteunt verschillende elektrische interfaces, zoals RS 232, RS 485 en RS 422. Het verzendt gegevens in binaire vorm en elke byte bevat twee 4-bits hexadecimale getallen. RTU-protocolopdrachten bestaan uit 5 delen: adrescode, functiecode, startadres, gegevens en controlecode. Bijvoorbeeld, verzendinstructie: 01 03 76 83 00 0C AE 6F, waarbij 01 de adrescode is, namens het slave-adres; 03 de functiecode is, die "lezen" betekent; 76 83 het adres van het register is; 00 0C het aantal gelezen registers is; AE 6F de CRC-controlesom vertegenwoordigt.

Modbus RTU Toepassingsscenario's

Omdat Modbus RTU eenvoudig en stabiel is in binaire vorm voor gegevensoverdracht. Het is dus zeer geschikt voor communicatie over lange afstanden, moeilijke bedradingsscenario's of scenario's met een brede verspreiding van apparaten. Bijvoorbeeld industriële automatiseringsscenario's, kleine besturingssystemen, enz.

Modbus TCP werkingsprincipe

modbusTCP

Modbus TCP is gemaakt om Modbus-gegevens te kunnen verzenden via Ethernet, met behulp van de TCP502-poort. Modbus TCP is gebaseerd op Modbus RTU, plus de MBAP-header. Aangezien TCP gebaseerd is op een betrouwbare verbindingsdienst, worden er geen CRC-controlesommen meer gebruikt, maar wordt er vertrouwd op TCP's eigen foutdetectie- en correctiemechanismen. Stuur bijvoorbeeld het commando 68 68 00 00 00 06 01 03 33 65 00 04. Daaronder is 68 68 het sequentienummer van het bericht; 00 00 geeft aan dat het Modbus TCP-protocol wordt gebruikt; 00 06 geeft het aantal volgende bytes aan; 01 is het slave-adres; 03 is de functiecode; 33 65 geeft het registeradres aan; 00 04 is het aantal registers.

Modbus TCP Toepassingsscenario's

Modbus TCP wordt vaak gebruikt in complexere scenario's vanwege de hoge overdrachtssnelheid en betrouwbaarheid. Bijvoorbeeld grote besturingssystemen, gebouwenbeheersystemen, enz.

In de praktijk moeten we overwegen of we het Modbus RTU of Modbus TCP protocol gebruiken. Als je een bestaande netwerkinfrastructuur hebt, grote hoeveelheden gegevens moet uitwisselen en snel moet reageren, dan is TCP een goede keuze. Als je eenvoudige, goedkope communicatie over lange afstanden nodig hebt, dan is RTU een verstandige keuze.

Modbus RTU en Modbus TCP zijn als een paar goede vrienden, ze hebben elk hun voordelen en samen helpen ze bij de effectieve gegevensuitwisseling tussen apparaten. Met de ontwikkeling van Industrie 4.0 zullen ze in meer nieuwe technologieën worden geïntegreerd. Laten we naar de toekomst kijken, ze zullen meer waarde creëren voor de ontwikkeling van industriële automatisering!

 

X

Schakel JavaScript in je browser in om dit formulier in te vullen.
Voer productgegevens in zoals interfaceconfiguratie, omgeving enz. en andere specifieke vereisten om een nauwkeurige offerte te ontvangen.

nl_NLDutch
Schakel JavaScript in je browser in om dit formulier in te vullen.
Voer productgegevens in zoals interfaceconfiguratie, omgeving enz. en andere specifieke vereisten om een nauwkeurige offerte te ontvangen.