RS485 Interface Εισαγωγή
Το RS485 είναι ένα πρότυπο σειριακής διεπαφής επικοινωνίας γνωστό για τις δυνατότητες υψηλής ταχύτητας,-μετάδοσης σε μεγάλες αποστάσεις, αντίστασης παρεμβολών και πολλαπλών-κοινοποίησης συσκευών. Βρίσκει εκτεταμένη εφαρμογή σε βιομηχανικούς αυτοματισμούς, έξυπνα σπίτια, συστήματα ασφαλείας και άλλους τομείς. Αυτό το άρθρο παρέχει μια λεπτομερή επισκόπηση των αρχών της διεπαφής RS485, του σχεδιασμού κυκλώματος, των πρωτοκόλλων επικοινωνίας και των λύσεων σε κοινά ζητήματα.
Αρχή RS485
Η διεπαφή RS485 χρησιμοποιεί διαφορική μετάδοση, χρησιμοποιώντας δύο γραμμές σήματος (Α και Β) για τη μεταφορά σημάτων στάθμης τάσης. Το μέγεθος του σήματος εξαρτάται από τη διαφορά τάσης μεταξύ αυτών των δύο γραμμών. Στη διεπαφή RS485, και οι δύο γραμμές σήματος Α και Β μπορούν να λειτουργήσουν είτε ως πομποί είτε ως δέκτες. Αυτή η μέθοδος διαφορικής μετάδοσης επιτρέπει στη διεπαφή RS485 να αντιστέκεται αποτελεσματικά σε εξωτερικούς θορύβους και παρεμβολές, διασφαλίζοντας έτσι την ποιότητα μετάδοσης.
Πεδία εφαρμογής RS485
Η διεπαφή RS485 χρησιμοποιείται ευρέως σε σενάρια που απαιτούν μεγάλη-απόσταση, υψηλή-και σταθερή μετάδοση δεδομένων, όπως βιομηχανικός αυτοματισμός, έξυπνα σπίτια και συστήματα ασφαλείας. Όσον αφορά την απόσταση μετάδοσης, το RS485 υποστηρίζει έως και 1200 μέτρα και όσον αφορά την ταχύτητα μετάδοσης, υποστηρίζει έως και 10 Mbps. Αυτό καθιστά τη διεπαφή RS485 ευρέως εφαρμόσιμη σε σενάρια που περιλαμβάνουν απόκτηση δεδομένων, ρύθμιση, παρακολούθηση και έλεγχο.

Σχεδιασμός κυκλώματος RS485
Ο σχεδιασμός του κυκλώματος για μια διεπαφή RS485 απαιτεί την εξέταση πολλών παραγόντων, όπως η απόσταση μετάδοσης, η ταχύτητα επικοινωνίας, η αντικεραυνική προστασία και η απομόνωση. Παρακάτω, θα παρουσιάσουμε τη σχεδίαση κυκλώματος για μια διεπαφή RS485 από καθεμία από αυτές τις πτυχές.
Απόσταση μετάδοσης
Λόγω της διαφορικής μετάδοσης, η διεπαφή RS485 υποστηρίζει μεγαλύτερες αποστάσεις μετάδοσης. Ωστόσο, σε πρακτικές εφαρμογές, παράγοντες όπως η σύνθετη αντίσταση γραμμής μετάδοσης, η αλληλεπίδραση και η ποιότητα του σήματος επιβάλλουν περιορισμούς στην εμβέλεια μετάδοσης. Για την ελαχιστοποίηση της απώλειας και της παραμόρφωσης σήματος, γενικά συνιστούμε να περιορίσετε την απόσταση μετάδοσης εντός 1,2 km κατά το σχεδιασμό κυκλωμάτων διασύνδεσης RS485.
Ταχύτητα Επικοινωνίας
Η διεπαφή RS485 μπορεί να επιτύχει ταχύτητες επικοινωνίας έως και 10 Mbps. Σε πρακτικές εφαρμογές, επιλέγουμε γενικά έναν κατάλληλο ρυθμό επικοινωνίας με βάση συγκεκριμένες συνθήκες. Οι υψηλότερες ταχύτητες επικοινωνίας αυξάνουν την απόδοση μετάδοσης, αλλά ενισχύουν επίσης την πολυπλοκότητα και τις τεχνικές απαιτήσεις του κυκλώματος διασύνδεσης.
Αντικεραυνική προστασία
Δεδομένου του πολύπλοκου βιομηχανικού περιβάλλοντος, οι διεπαφές RS485 αντιμετωπίζουν συχνά διάφορες διαταραχές, όπως κεραυνούς, στατικό ηλεκτρισμό και υπερτάσεις. Για την προστασία των κυκλωμάτων διασύνδεσης RS485, είναι απαραίτητα μέτρα αντικεραυνικής προστασίας. Μπορούν να χρησιμοποιηθούν εξαρτήματα όπως ρυθμιζόμενα προστατευτικά υπέρτασης και βαρίστορ μεταλλικού οξειδίου (MOV) για την επίτευξη προστασίας από κεραυνό.
Απομόνωση
Σε ορισμένα σενάρια, απαιτείται απομόνωση μεταξύ της διεπαφής RS485 και άλλων κυκλωμάτων. Αυτό μπορεί να επιτευχθεί χρησιμοποιώντας εξαρτήματα όπως οπτικούς συζεύκτες ή μαγνητικούς συζεύκτες για την απομόνωση σημάτων. Αυτό αποτρέπει αποτελεσματικά πιθανούς βρόχους γείωσης και παρεμβολές θορύβου, ενισχύοντας την αξιοπιστία και τη σταθερότητα του κυκλώματος διασύνδεσης.
Πρωτόκολλα επικοινωνίας RS485
Σε πρακτικές εφαρμογές, οι διεπαφές RS485 απαιτούν επίσης προδιαγραφές πρωτοκόλλου και μορφοποίηση δεδομένων. Τα κοινά πρωτόκολλα επικοινωνίας RS485 περιλαμβάνουν τα Modbus, Profibus και CANopen. Κάθε πρωτόκολλο διαθέτει ξεχωριστά χαρακτηριστικά και εφαρμόσιμα σενάρια, επιτρέποντας την επιλογή με βάση συγκεκριμένες απαιτήσεις. Παρακάτω, παρουσιάζουμε κυρίως το πρωτόκολλο Modbus RTU, το οποίο είναι το πιο ευρέως χρησιμοποιούμενο πρωτόκολλο μετάδοσης στα έργα μας που βασίζεται σε διεπαφές RS485.
Εισαγωγή στο Modbus RTU
Το Modbus RTU είναι ένα ευρέως διαδεδομένο βιομηχανικό πρωτόκολλο επικοινωνίας, ένα από τα σειριακά πρωτόκολλα επικοινωνίας που βασίζεται στο πλαίσιο Modbus. Χρησιμοποιείται κυρίως για σειριακή επικοινωνία μεταξύ συσκευών όπως ελεγκτές PLC, αισθητήρες και ενεργοποιητές, αυτό το πρωτόκολλο διευκολύνει την ανταλλαγή δεδομένων. Αυτό το άρθρο περιγράφει λεπτομερώς τις συγκεκριμένες έννοιες κάθε καταχωρητή στο πρωτόκολλο Modbus RTU, παρέχει παραδείγματα μετάδοσης και λήψης δεδομένων για κάθε κωδικό λειτουργίας και επισημαίνει το κρίσιμο άθροισμα ελέγχου CRC.
Μορφή δεδομένων πρωτοκόλλου Modbus RTU
Το πρωτόκολλο Modbus RTU χρησιμοποιεί σειριακή επικοινωνία για μετάδοση δεδομένων.
Ειδικά:
Το πεδίο Διεύθυνση προσδιορίζει τη διεύθυνση της εξαρτημένης συσκευής στην επικοινωνία, η οποία μπορεί να είναι οποιαδήποτε τιμή μεταξύ 0 και 247.
Ο Κωδικός Συνάρτησης καθορίζει τον τύπο δεδομένων και την κατεύθυνση ανάγνωσης/εγγραφής, συνήθως έναν ακέραιο αριθμό μεταξύ 1 και 127.
Το πεδίο δεδομένων περιέχει το πραγματικό περιεχόμενο δεδομένων.
Το Checksum (CRC) επαληθεύει την ακεραιότητα του πακέτου δεδομένων.
Κωδικοί συνάρτησης πρωτοκόλλου Modbus RTU
Στο πρωτόκολλο Modbus RTU, διαφορετικοί κωδικοί λειτουργίας αντιπροσωπεύουν διαφορετικούς τύπους δεδομένων και οδηγίες ανάγνωσης/εγγραφής. Παρακάτω αναφέρονται οι συνήθως χρησιμοποιούμενοι κώδικες συναρτήσεων και οι έννοιές τους:
01: Διαβάστε τον καταχωρητή πηνίου
02: Ανάγνωση διακριτού καταχωρητή εισόδου
03: Διαβάστε το μητρώο αναμονής
04: Ανάγνωση καταχωρητή εισόδου
05: Γράψτε έναν καταχωρητή μονού πηνίου
06: Γράψτε έναν καταχωρητή μονής αναμονής
15: Γράψτε πολλαπλούς καταχωρητές πηνίου
16: Γράψτε πολλαπλούς καταχωρητές αναμονής
Μητρώοι διευθύνσεων πρωτοκόλλου Modbus RTU
Οι διευθύνσεις συσκευών και οι διευθύνσεις μητρώου είναι κρίσιμες παράμετροι για την επικοινωνία στο πρωτόκολλο Modbus RTU. Οι καταχωρητές διευθύνσεων μπορούν να κατηγοριοποιηθούν στους ακόλουθους τέσσερις τύπους:
Μητρώο πηνίου (Μητρώο πηνίου)
Οι καταχωρητές πηνίου αποθηκεύουν τιμές Boolean (0 ή 1). Οι κωδικοί λειτουργίας 01, 05 και 15 επιτρέπονται για λειτουργία σε καταχωρητές πηνίων. Η κατάσταση κάθε πηνίου μπορεί να αναπαρασταθεί από ένα δυαδικό bit.
Για παράδειγμα, εάν το πηνίο στο bit 0x0001 έχει οριστεί σε 0, η δυαδική του τιμή είναι 00000000 00000001. Εάν το πηνίο έχει οριστεί σε 1, η δυαδική του τιμή αλλάζει σε 00000000 00000010.
Μητρώο διακριτών εισροών
Ο καταχωρητής διακριτής εισόδου αποθηκεύει τις τιμές των διακοπτών δυαδικής εισόδου και διαβάζεται{{0} μόνο, με τον αντίστοιχο κωδικό λειτουργίας να είναι 02. Η διαφορά μεταξύ του καταχωρητή διακριτής εισόδου και του καταχωρητή πηνίου είναι ότι υποδεικνύει εάν ένας διακόπτης βρίσκεται στην κατάσταση ON, αντί στην τρέχουσα κατάστασή του.
Τήρηση Μητρώου
Το Holding Register αποθηκεύει ακέραιες μεταβλητές 32-bit. Οι κωδικοί συνάρτησης 03, 04, 06 και 16 επιτρέπουν λειτουργίες ανάγνωσης/εγγραφής στο Μητρώο Διακράτησης. Οι τιμές εντός του Μητρώου Διακράτησης μπορούν να διευκολύνουν τη μεταφορά δεδομένων μεταξύ συσκευών ή να προσαρμοστούν από τους χρήστες ως σχετικές παράμετροι ελέγχου.
Εγγραφή εισόδου
Οι καταχωρητές εισόδου αποθηκεύουν ακέραιες μεταβλητές 32-bit και υποστηρίζουν λειτουργίες μόνο για ανάγνωση με κωδικό συνάρτησης 04. Παρόμοια με τη διατήρηση καταχωρητών, οι τιμές στους καταχωρητές εισόδου μπορούν να μεταφερθούν μεταξύ συσκευών, αλλά δεν μπορούν να τροποποιηθούν από τους χρήστες.
Έλεγχος CRC πρωτοκόλλου Modbus RTU
Για να διασφαλιστεί η αξιοπιστία της επικοινωνίας του πρωτοκόλλου Modbus RTU, αυτό το πρωτόκολλο χρησιμοποιεί μια μέθοδο Cyclic Redundancy Check (CRC) για την επαλήθευση της ακεραιότητας των πακέτων δεδομένων. Ο κωδικός ελέγχου CRC υπολογίζεται με βάση τα μεταδιδόμενα και ληφθέντα πακέτα δεδομένων και επαληθεύεται ταυτόχρονα και στο άκρο αποστολής και λήψης.
Λαμβάνοντας ως παράδειγμα τον καταχωρητή αναμονής ανάγνωσης (Κωδικός συνάρτησης: 03), οι δεκαεξαδικές τιμές του αθροίσματος ελέγχου CRC για τα μεταδιδόμενα και ληφθέντα πακέτα δεδομένων είναι 0x39 και 0x3E, αντίστοιχα. Τα συγκεκριμένα πακέτα δεδομένων που μεταδίδονται και λαμβάνονται είναι τα εξής:
Αποστολέας-πακέτο δεδομένων: 01 03 00 00 00 01 C4 0Β
Σε αυτό το πακέτο, τα πρώτα 6 bit (01 03 00 00 00 01) αντιπροσωπεύουν τη μορφή πρωτοκόλλου Modbus RTU, ενώ τα δύο τελευταία bit (C4 και 0B) αποτελούν το άθροισμα ελέγχου CRC.
Λήψη πακέτου στον παραλήπτη: 01 03 02 00 01 39 3Ε
Σε αυτό το πακέτο δεδομένων, τα πρώτα 6 bit 01 03 02 00 01 39 αντιπροσωπεύουν τη ληφθείσα τιμή του καταχωρητή συγκράτησης (δύο byte), ενώ τα δύο τελευταία bit 3E και 39 είναι το υπολογισμένο άθροισμα ελέγχου CRC.
Παράδειγμα μετάδοσης πρωτοκόλλου Modbus RTU
Ακολουθεί ένα απλό παράδειγμα μετάδοσης πρωτοκόλλου Modbus RTU για την ανάγνωση δεδομένων από το μητρώο κράτησης μιας συσκευής:
Ο πομπός στέλνει: 01 03 00 00 00 02 C5 9A
Ο παραλήπτης λαμβάνει: 01 03 04 00 00 00 66 CB
Αυτό το παράδειγμα διαβάζει τον καταχωρητή αναμονής της συσκευής 01 χρησιμοποιώντας τον κωδικό συνάρτησης 03, με πρόσβαση στα δύο byte στη διεύθυνση μητρώου 0x0000. Έτσι, το ληφθέν πακέτο δεδομένων περιέχει τις τιμές 0x0000 και 0x0000, δηλαδή 0x0000 0000, που αντιπροσωπεύονται σε δεκαεξαδικό ως 0x66CB.
Σύναψη
Αυτό το άρθρο καλύπτει κυρίως τις αρχές, τις εφαρμογές, τη σχεδίαση κυκλωμάτων, τα πρωτόκολλα επικοινωνίας και τις λύσεις αντιμετώπισης προβλημάτων για τις διασυνδέσεις RS485. Οι διεπαφές RS485 βρίσκουν εκτεταμένη χρήση σε βιομηχανικούς αυτοματισμούς, έξυπνα σπίτια, συστήματα ασφαλείας και άλλους τομείς. Ωστόσο, παράγοντες όπως η απόσταση μετάδοσης, η ταχύτητα επικοινωνίας, η αντικεραυνική προστασία και η απομόνωση πρέπει να ληφθούν υπόψη για να διασφαλιστεί η αξιοπιστία και η σταθερότητα του κυκλώματος διασύνδεσης. Εισάγεται η βασική γνώση του πρωτοκόλλου Modbus RTU, συμπεριλαμβανομένης της μορφής δεδομένων, των κωδικών λειτουργίας, των καταχωρητών διευθύνσεων και του αθροίσματος ελέγχου CRC. Σε πρακτικές εφαρμογές, το πρωτόκολλο Modbus RTU χρησιμοποιείται εκτενώς για επικοινωνία μεταξύ συσκευών εντός συστημάτων ελέγχου βιομηχανικού αυτοματισμού. Κατά την ανάγνωση δεδομένων, πρέπει να δίνεται ιδιαίτερη προσοχή στην επιλογή της διεύθυνσης της συσκευής, της διεύθυνσης μητρώου και του κωδικού λειτουργίας.




