Πρωτόκολλο επικοινωνίας Modbus RTU

Apr 27, 2026 Αφήστε ένα μήνυμα

Το πρωτόκολλο Modbus RTU είναι σαν μια «κοινή γλώσσα» μεταξύ βιομηχανικών συσκευών, επιτρέποντας την ομαλή «επικοινωνία» μεταξύ συσκευών όπως μετρητές ηλεκτρικής ενέργειας και αισθητήρες από διαφορετικές μάρκες.

Επίδειξη εφαρμογής πρωτοκόλλου επικοινωνίας Modbus

Αυτό το άρθρο θα σας καθοδηγήσει στην εφαρμογή του Modbus RTU σε μετρητές ενέργειας με τον πιο απλό και κατανοητό τρόπο. Ακόμα κι αν είστε εντελώς αρχάριος χωρίς τεχνικό υπόβαθρο, μπορείτε εύκολα να κατανοήσετε τα βασικά σημεία αυτού του σημαντικού βιομηχανικού πρωτοκόλλου επικοινωνίας.

The Modbus RTU protocol

Τι είναι το πρωτόκολλο Modbus RTU;

Το Modbus RTU είναι ένα πρωτόκολλο σειριακής επικοινωνίας που αναπτύχθηκε αρχικά από τη Modicon (τώρα μέρος της Schneider Electric) το 1979 για τα PLC της (Programmable Logic Controllers).

Σήμερα, έχει γίνει ένα από τα πιο ευρέως χρησιμοποιούμενα πρωτόκολλα στον βιομηχανικό αυτοματισμό, που υποστηρίζεται από περισσότερους από 400 κατασκευαστές παγκοσμίως.

Γιατί ονομάζεται "RTU"; Το RTU είναι μια συντομογραφία του "Remote Terminal Unit", υποδεικνύοντας ότι αυτό το πρωτόκολλο χρησιμοποιείται κυρίως για επικοινωνία μεταξύ απομακρυσμένων συσκευών. Είναι σαν ένα «σύστημα γραπτών μηνυμάτων» μεταξύ ηλεκτρικού εξοπλισμού, που ανταλλάσσει δεδομένα μέσω ενός απλού μηχανισμού αιτήματος και απόκρισης.

Πώς λειτουργεί το Modbus RTU;

Το Modbus RTU χρησιμοποιεί μια κύρια-αρχιτεκτονική επικοινωνίας σκλάβων, όπως ένας δάσκαλος και οι μαθητές σε μια τάξη.

  • Δάσκαλος: Ο «δάσκαλος», συνήθως ένας υπολογιστής, PLC ή συγκεντρωτής, είναι υπεύθυνος για την έναρξη ερωτήσεων και εντολών.
  • Σκλάβος: Ο «μαθητής», όπως ένας μετρητής ρεύματος ή ένας αισθητήρας, μπορεί να απαντήσει μόνο στις ερωτήσεις του δασκάλου και δεν μπορεί να μιλήσει ανεξάρτητα. (Σε εφαρμογές μετρητών ηλεκτρικής ενέργειας...)

Modbus RTU

Μορφή μηνύματος Modbus RTU

"Πρότυπο SMS" μεταξύ συσκευών

Τα μηνύματα επικοινωνίας Modbus RTU είναι σαν προσεκτικά δημιουργημένα μηνύματα κειμένου, με απαιτήσεις σταθερής μορφής.

Ένα πλήρες μήνυμα Modbus RTU περιέχει τα ακόλουθα μέρη:

Κωδικός Διεύθυνσης Κωδικός Λειτουργίας Πεδίο δεδομένων Ελέγξτε τον κωδικό
8-bit 8-bit N × 8-bit 16-bit
  • Κωδικός διεύθυνσης (1 byte): Ισοδυναμεί με "αριθμό τηλεφώνου παραλήπτη", που προσδιορίζει τη διεύθυνση του μετρητή ενέργειας στόχου (1-247), με 0 για μια διεύθυνση εκπομπής.
  • Κωδικός λειτουργίας (1 byte): Ισοδυναμεί με έναν "τύπο μηνύματος κειμένου", που δίνει οδηγίες στον μετρητή ενέργειας για τη λειτουργία που πρέπει να εκτελέσει (π.χ. ανάγνωση δεδομένων, εγγραφή δεδομένων κ.λπ.).
  • Πεδίο δεδομένων (N bytes): Οι συγκεκριμένες πληροφορίες που πρέπει να μεταδοθούν, όπως διεύθυνση μητρώου, τιμή δεδομένων κ.λπ.
  • Άθροισμα ελέγχου CRC (2 byte): Ισοδυναμεί με έναν "κωδικό κατά της-παραχάραξης", που χρησιμοποιείται για τον έλεγχο σφαλμάτων κατά τη μετάδοση.

Ένα τυπικό μήνυμα για την ανάγνωση δεδομένων συνολικής θετικής ενεργής ενέργειας από έναν μετρητή ενέργειας UBS είναι το ακόλουθο:

[Διεύθυνση 00][Κωδικός συνάρτησης 03][Διεύθυνση έναρξης 00 0C][Μήκος ανάγνωσης 00 02][Άθροισμα ελέγχου CRC 05 D9]

Αυτό ισοδυναμεί με το να πούμε: "Όλοι οι μετρητές, διαβάστε δεδομένα από τον καταχωρητή 000C, ξεκινώντας από τον καταχωρητή 1."

Μετά τη λήψη του μηνύματος, ο μετρητής #1 θα απαντήσει με:

[Διεύθυνση 01][Κωδικός συνάρτησης 03][Μήκος δεδομένων 04][Δεδομένα 00 00 00 00][CRC Checksum FA 33]
Αυτό σημαίνει: "Ο μετρητής #1 απάντησε: Η συνολική τιμή δεδομένων θετικής ενεργής ενέργειας που διαβάστηκε είναι 00 00 00 00 (δεκαεξαδική)" (Σημείωση: Αυτός ο μετρητής #1 είναι ένας νέος, αχρησιμοποίητος μετρητής). Η παρακάτω εικόνα είναι μια δοκιμαστική επίδειξη:

Modbus RTU Message Format

Το "Βιβλίο Δεδομένων" σε έναν μετρητή ηλεκτρικής ενέργειας: Επεξήγηση μητρώου

Στο πρωτόκολλο Modbus RTU, όλα τα δεδομένα από έναν μετρητή ηλεκτρικής ενέργειας αποθηκεύονται σε ένα "υπολογιστικό φύλλο"-το μητρώο. Τα μητρώα χωρίζονται κυρίως σε τέσσερις τύπους:

Τύπος μητρώου Άδεια ανάγνωσης/εγγραφής Κωδικοί Λειτουργίας Τυπικό αποθηκευμένο περιεχόμενο
Μητρώο πηνίου Διαβάστε/Γράψτε 01, 05 Κατάσταση ρελέ, έλεγχος διακόπτη
Μητρώο διακριτών εισροών Μόνο για ανάγνωση- 02 Ψηφιακή είσοδος (π.χ. σήματα συναγερμού)
Εγγραφή εισόδου Μόνο για ανάγνωση- 04 Δεδομένα μέτρησης{0}}σε πραγματικό χρόνο (τάση, ρεύμα, κ.λπ.)
Τήρηση Μητρώου Διαβάστε/Γράψτε 03, 06 Παράμετροι συσκευής, συσσωρευμένη ενέργεια κ.λπ.

Στις εφαρμογές μετρητών ηλεκτρικής ενέργειας, οι πιο συνηθισμένοι καταχωρητές είναι:

Εγγραφή εισόδου

(Κωδικός συνάρτησης 04H): Αποθηκεύει δεδομένα μετρούμενα σε πραγματικό-χρόνο, όπως τάση, ρεύμα και ισχύ.

Τήρηση Μητρώου

(Κωδικός Λειτουργίας 03H): Αποθηκεύει τη συσσωρευμένη κατανάλωση ηλεκτρικής ενέργειας, τις παραμέτρους της συσκευής κ.λπ.

Πίνακας πληροφοριών διεύθυνσης μητρώου UBS Energy Meter Modbus

Η διεύθυνση εκπομπής του πρωτοκόλλου Modbus είναι 0x00. Για λεπτομερείς πληροφορίες διεύθυνσης μητρώου πρωτοκόλλου Modbus για μετρητές ενέργειας UBS, δείτε τον παρακάτω πίνακα:

Εγγραφή (Hex) Όνομα μεταβλητής Χαρακτηριστικό (Μονάδα / R/W) Τύπος δεδομένων Κόμης Παρατηρήσεις
0x0000 Τάση DC Μονάδα: V, R/W: RO S16 1 Εύρος: -9999~9999; Ανάγνωση=Πραγματικής τιμής × 10^(Δεκαδικό σημείο)
0x0001 Δεκαδικό σημείο τάσης Μονάδα: Καμία, R/W: RO U16 1 Σταθερή τιμή: 0
0x0002 Τρέχουσα τιμή DC Μονάδα: A, R/W: RO S16 1 Εύρος: -9999~9999
0x0003 Τρέχον δεκαδικό σημείο Μονάδα: Καμία, R/W: RO U16 1 Σταθερή τιμή: 1
0x0008 Τιμή ισχύος Μονάδα: kW, R/W: RO S16 1 Εύρος: -9999~9999
0x0009 Δεκαδικό σημείο ισχύος Μονάδα: Καμία, R/W: RO U16 1 Σταθερή τιμή: 1
0x000C Ολική Προώθηση Ενεργή Ενέργεια Μονάδα: 0,001 kWh, R/W: RO U32 2 Το υψηλό byte πρώτο, το χαμηλό byte τελευταίο. Παράδειγμα: Εάν τα δεδομένα διαβάζονται=5000, υποδιαστολή=2 → Πραγματική τιμή=5000 × 10^(2-3)=500.0
0x203C Κανάλι 1 Τάση Μονάδα: 0,0001V, R/W: RO I32 2 Το υψηλό byte πρώτα, το χαμηλό byte τελευταίο
0x203E Τάση καναλιού 2 Μονάδα: 0,0001V, R/W: RO I32 2 Πάντα 0
0x2040 Κανάλι 1 Τρέχον Μονάδα: 0,0001A, R/W: RO I32 2 Το υψηλό byte πρώτα, το χαμηλό byte τελευταίο
0x2042 Κανάλι 2 Τρέχον Μονάδα: 0,0001A, R/W: RO I32 2 Πάντα 0
0x2044 Κανάλι 1 Ισχύς Μονάδα: 0,0001kW, R/W: RO I32 2 Το υψηλό byte πρώτα, το χαμηλό byte τελευταίο
0x2046 Κανάλι 2 Ισχύς Μονάδα: 0,0001kW, R/W: RO I32 2 Πάντα 0
0x9A00 Προώθηση Ενεργής Ολικής Ενέργειας Μονάδα: kWh, R/W: RO φλοτέρ 2
0xA001/0x8900 Διεύθυνση συσκευής Μονάδα: Καμία, Σ/Π: ΣΤ U16 1 Εύρος: 0~247

Επίδειξη ανάγνωσης μηνυμάτων μετρητή ενέργειας UBS

Χρησιμοποιώντας το λογισμικό υπολογιστή κεντρικού μετρητή ενέργειας UBS, διαβάστε τα ακόλουθα δεδομένα από τον έξυπνο μετρητή ενέργειας DJZ1226 DC: συνολική θετική ενεργή ενέργεια, τάση, ρεύμα, ισχύς και διεύθυνση μετρητή.

Demonstration Of Reading UBS Energy Meter Messages

Όπως φαίνεται στο παραπάνω διάγραμμα, το λεπτομερές περιεχόμενο του μηνύματος που αποστέλλεται και λαμβάνεται από τον κεντρικό υπολογιστή έχει ως εξής:

13:25:30.229 Συνολική θετική ενεργή ενέργεια(000C0002) ...

13:25:30.256 ▼Αποστολή:00 03 00 0C 00 02 05 D9

13:25:30.344 ▲Λήψη:01 03 04 00 00 00 00 FA 33

13:25:30.359 DC τάση (00000002) ...

13:25:30.424 ▼Αποστολή:00 03 00 00 00 02 C5 DA

13:25:30.428 ▲Λήψη:01 03 04 00 17 00 03 0Α 36

13:25:30.494 Ρεύμα συνεχούς ρεύματος (00020002) ...

13:25:30.522 ▼ Αποστολή:00 03 00 02 00 02 64 1Α

13:25:30.610 ▲Λήψη:01 03 04 00 30 00 02 7B FD

13:25:30.621 Ισχύς(00080002) ...

13:25:30.682 ▼ Αποστολή:00 03 00 08 00 02 44 18

13:25:30.690 ▲Λήψη:01 03 04 00 01 00 02 2Α 32

13:25:30.702 Διεύθυνση Επικοινωνίας 2(A0010001) ...

13:25:30.779 ▼Αποστολή:00 03 A0 01 00 01 F6 1B

13:25:30.783 ▲Λήψη:01 03 02 00 01 79 84

13:25:30.795 Τέλος ανάγνωσης δεδομένων.

Κοινά προβλήματα και τεχνικές αντιμετώπισης προβλημάτων

Παρόλο που το πρωτόκολλο Modbus RTU είναι σχετικά απλό, μπορεί να προκύψουν διάφορα προβλήματα σε πρακτικές εφαρμογές. Τα ακόλουθα είναι κοινά σφάλματα και λύσεις στην επικοινωνία μετρητών ηλεκτρικής ενέργειας:

Καμία απάντηση επικοινωνίας

● Ελέγξτε τις φυσικές συνδέσεις:

▪ Είναι σωστή η καλωδίωση RS-485 (οι γραμμές A/B έχουν αντιστραφεί);

▪ Οι αντιστάσεις τερματισμού ταιριάζουν (γενικά, συνδέετε αντιστάσεις 120Ω σε κάθε άκρο του διαύλου);

▪ Η απόσταση επικοινωνίας υπερβαίνει το όριο (το RS-485 θεωρητικά μπορεί να φτάσει τα 1200 μέτρα, αλλά οι πραγματικές αποστάσεις επηρεάζονται από περιβαλλοντικούς παράγοντες).

● Επαλήθευση ρυθμίσεων παραμέτρων:

▪ Ο ρυθμός baud, τα bit δεδομένων, τα bit διακοπής και οι ρυθμίσεις ισοτιμίας συνάδουν με τον μετρητή ηλεκτρικής ενέργειας;

▪ Έχει ρυθμιστεί σωστά η διεύθυνση της συσκευής (χωρίς διπλότυπες διευθύνσεις);

Διακοπτόμενη Επικοινωνία

● Ελέγξτε για παρεμβολές γραμμής:

▪ Χρησιμοποιήστε συνεστραμμένο-ζεύγο θωρακισμένο καλώδιο και βεβαιωθείτε ότι η θωράκιση είναι γειωμένη στο ένα άκρο.

▪ Αποφύγετε τη λειτουργία του καλωδίου παράλληλα με καλώδια υψηλής-τάσης.

● Δοκιμή μεμονωμένων συσκευών:

▪ Συνδέστε κάθε μετρητή ηλεκτρικού ρεύματος ξεχωριστά για να αντιμετωπίσετε τις ελαττωματικές συσκευές.

▪ Χρησιμοποιήστε το αποκλειστικό λογισμικό κεντρικού υπολογιστή της UBS Electronics (όπως AMS) για να επικοινωνήσετε απευθείας με τον μετρητή ηλεκτρικής ενέργειας και να εντοπίσετε το πρόβλημα.

Σφάλματα δεδομένων

● Επαλήθευση ελέγχου CRC:

▪ Ελέγξτε εάν οι αποσταλμένοι και ληφθέντες κωδικοί CRC είναι συνεπείς.

▪ Επιβεβαιώστε τη σειρά των byte δεδομένων (το Modbus RTU είναι συνήθως μικρό-endian).

● Έλεγχος χαρτογράφησης μητρώου:

▪ Επιβεβαιώστε ότι οι διευθύνσεις μητρώου που χρησιμοποιούνται είναι σύμφωνες με το εγχειρίδιο του μετρητή ηλεκτρικής ενέργειας.

▪ Σημειώστε τη μετατόπιση διεύθυνσης μητρώου.

Εάν πρέπει να χρησιμοποιήσετε το λογισμικό κεντρικού υπολογιστή UBS (πρωτόκολλο Modbus RTU) που αναφέρεται σε αυτό το άρθρο, επικοινωνήστε με τον υπεύθυνο της παραγγελίας μετρητή ηλεκτρικής ενέργειας UBS και λάβετε περισσότερη-τεχνική υποστήριξη μετά την πώληση.

Αποστολή ερώτησής