Το "Serial port" είναι συντομογραφία για τη σειριακή διεπαφή επικοινωνίας. Η "σειριακή επικοινωνία" αναφέρεται σε μια μέθοδο επικοινωνίας κατά την οποία τα δεδομένα μεταδίδονται κομμάτι προς bit με τη σειρά. Οι κοινές σειριακές θύρες περιλαμβάνουν τις RS-232 και RS-485. Αν και η σειριακή επικοινωνία αναπτύχθηκε πριν από αρκετό καιρό, εξακολουθεί να χρησιμοποιείται ευρέως στους σημερινούς τομείς βιομηχανικού αυτοματισμού και ελέγχου. Σε αυτό το άρθρο, θα ρίξουμε μια εις βάθος ματιά στη σειριακή θύρα RS-232. Αυτό το άρθρο καλύπτει τα ακόλουθα θέματα:
1. Η ιστορία του RS232
2. Η διεπαφή RS232
3. Ηλεκτρικά σήματα σε RS232
4. Επίπεδο-Μετατόπιση IC για RS232
5. Μετάδοση δεδομένων σε RS232

1. Η ιστορία του RS232
Το RS232 είναι ένα πρότυπο επικοινωνίας που δημοσιεύτηκε από την Electronic Industries Association (EIA) το 1962. Το πλήρες όνομά του είναι: "Standard for Electrical and Mechanical Interfaces Between DTE and DCE". Το "DTE" σημαίνει "Τερματικός εξοπλισμός δεδομένων", όπως ένας υπολογιστής. Το "DCE" σημαίνει "Εξοπλισμός τερματισμού κυκλώματος δεδομένων-." Μερικές φορές γράφεται επίσης ως "Εξοπλισμός επικοινωνίας δεδομένων", όπως ένα μόντεμ. Το "RS" στο "RS232" σημαίνει "Συνιστώμενο πρότυπο". Το "232" είναι το αναγνωριστικό. Το πρώιμο πρότυπο RS{11}}232 αναπτύχθηκε για να επιτρέπει την επικοινωνία μεταξύ υπολογιστών, προγραμματιζόμενων τηλεφώνων και μόντεμ. Μετά από πολλές αναθεωρήσεις, έγινε πρότυπο σειριακής επικοινωνίας γενικής χρήσης. Οι αναθεωρήσεις στο RS-232 είναι οι εξής:
1969 Έκδοση C (RS-232-C);
1986 Έκδοση D (RS-232-D);
Έκδοση Ε (RS232-E) το 1991.
Έκδοση F (RS232-F) το 1997.
Επί του παρόντος, στον τομέα του βιομηχανικού αυτοματισμού, το RS232 χρησιμοποιείται κυρίως για επικοινωνία μεταξύ συσκευών όπως οθόνες αφής, συσκευές ανάγνωσης καρτών, σαρωτές γραμμωτού κώδικα και εκτυπωτές και PLC.

2. Διεπαφή RS-232
Πριν από την έκδοση F, το RS-232 χρησιμοποιούσε μια σειριακή διεπαφή 25 ακίδων, η οποία ήταν σε δύο τύπους: αρσενικό και θηλυκό. Ο αρσενικός σύνδεσμος χρησιμοποιείται για συσκευές DTE και ο θηλυκός για συσκευές DCE, όπως φαίνεται στην παρακάτω εικόνα
Η φυσική μονάδα φαίνεται στο παρακάτω σχήμα:
Δείτε τον παρακάτω πίνακα για τους ορισμούς των pin:
:
| Αριθμός | Ονομα | Συντομογραφία |
|---|---|---|
| 1 | Ασπίδα | |
| 2 | Μεταδιδόμενα Δεδομένα | TxD |
| 3 | Δεδομένα που ελήφθησαν | RxD |
| 4 | Αίτημα για αποστολή | RTS |
| 5 | Εκκαθάριση για αποστολή | CTS |
| 6 | DCE Reδιαφήμισηy/Έτοιμο σύνολο δεδομένων | DSR |
| 7 | Σήμα γείωσης/κοινή επιστροφή | SG |
| 8 | Ανιχνευτής σήματος γραμμής λήψης | |
| 9 | Προορίζεται για δοκιμή συνόλου δεδομένων | |
| 10 | Προορίζεται για δοκιμή συνόλου δεδομένων | |
| 11 | Uναςυπογεγραμμένος | |
| 12 | Δευτερεύων ανιχνευτής σήματος γραμμής λήψης | |
| 13 | Δευτερεύουσα Διαγραφή προς αποστολή | (S)CTS |
| 14 | Δευτερεύοντα Μεταδιδόμενα Δεδομένα | (S)TxD |
| 15 | Στοιχείο σήματος μετάδοσηςτιming | |
| 16 | Δευτερεύοντα ληφθέντα δεδομένα | (S)RxD |
| 17 | Χρονισμός στοιχείου σήματος δέκτη (DCE) | |
| 18 | Τοπικό Loopback | |
| 19 | Δευτερεύον Αίτημα Αποστολής | (S)RTS |
| 20 | DTE Ready/Data Terminal Ready | DTR |
| 21 | Remote Loopback/ Ανιχνευτής ποιότητας σήματος |
|
| 22 | Ένδειξη δακτυλίου | RI |
| 23 | Επιλογέας ταχύτητας σήματος δεδομένων | |
| 24 | Χρονισμός στοιχείου σήματος μετάδοσης (DTE) | |
| 25 | Λειτουργία δοκιμής |
Η σειριακή θύρα 25 ακίδων έχει πάρα πολλές ακίδες, γεγονός που την καθιστά δυσκίνητη στη χρήση. Για να απλοποιήσει τη σειριακή θύρα RS232, η έκδοση F ορίζει μια σειριακή θύρα 9 ακίδων, η οποία περιλαμβάνει επίσης έναν αρσενικό σύνδεσμο (για DTE) και έναν θηλυκό σύνδεσμο (για DCE), όπως φαίνεται στην παρακάτω εικόνα:

Δείτε τον παρακάτω πίνακα για ορισμούς καρφιτσών:
| Αριθμός | Ονομα | Συντομογραφία |
|---|---|---|
| 1 | Ανίχνευση φορέα δεδομένων | DCD |
| 2 | Δεδομένα που ελήφθησαν | RxD |
| 3 | Μεταδιδόμενα Δεδομένα | TxD |
| 4 | Έτοιμο το τερματικό δεδομένων | DTR |
| 5 | Εδαφος | GND |
| 6 | Έτοιμο σύνολο δεδομένων | DSR |
| 7 | Αίτημα για αποστολή | RTS |
| 8 | Εκκαθάριση για αποστολή | CTS |
| 9 | Ένδειξη δακτυλίου | RI |

Ένα PLC θεωρείται συσκευή DTE και η σειριακή του θύρα RS-232 είναι αρσενική υποδοχή. Για παράδειγμα, η σειριακή μονάδα CM1241 RS-232 για το S7-1200 έχει μια αρσενική σειριακή θύρα, όπως φαίνεται στην παρακάτω εικόνα:
Για επικοινωνία μεταξύ DTE και DTC, μπορεί να χρησιμοποιηθεί απευθείας σύνδεση, όπως φαίνεται στην παρακάτω εικόνα:
Για επικοινωνία μεταξύ δύο DTE (όπως ένα PLC και ένας σαρωτής γραμμωτού κώδικα), θα πρέπει να χρησιμοποιείται διασταυρούμενη-σύνδεση. Όλες οι ακίδες μπορούν να συνδεθούν μεταξύ τους, όπως φαίνεται στην παρακάτω εικόνα:

Μπορείτε να χρησιμοποιήσετε μια ελάχιστη μέθοδο σύνδεσης, χρησιμοποιώντας μόνο τρία καλώδια για να συνδέσετε τις ακίδες TxD και RxD και των δύο συσκευών και να τις γειώσετε μεταξύ τους, όπως φαίνεται στην παρακάτω εικόνα:
Αυτός ο τύπος σύνδεσης, στον οποίο το DTE συνδέεται απευθείας με το DCE χωρίς να περάσει από το DCE, είναι επίσης γνωστό ως σύνδεση "null modem" και το καλώδιο που χρησιμοποιείται για αυτόν τον τύπο σύνδεσης ονομάζεται καλώδιο "null modem" ή καλώδιο crossover.

3. Ηλεκτρικά Σήματα RS-232
Τα ηλεκτρικά σήματα στους ακροδέκτες εκπομπής και λήψης RS-232 είναι σήματα τάσης σε σχέση με την κοινή γείωση (GND). Μια διαφορά τάσης μεταξύ +3V και +15V αντιπροσωπεύει ένα λογικό "0". μια διαφορά τάσης μεταξύ -3V και -15V αντιπροσωπεύει ένα λογικό "1". και μια διαφορά τάσης μεταξύ -3V και +3V is undefined. 3 Το V είναι το ελάχιστο ανιχνεύσιμο σήμα τάσης. Σε πρακτικές εφαρμογές, η απόλυτη τιμή της διαφοράς τάσης αναμένεται να κυμαίνεται από 5 V έως 15 V. Δηλαδή, κατά τη μετάδοση δεδομένων, ο οδηγός πομπού εξάγει ένα σήμα θετικής τάσης από +5 V έως +15 V για να αντιπροσωπεύει ένα λογικό "0", ενώ ένα αρνητικό σήμα τάσης από -5 V αντιπροσωπεύει ένα λογικό V έως "15." Κατά τη λήψη δεδομένων, οποιοδήποτε ηλεκτρικό σήμα μεγαλύτερο από 3 V θεωρείται έγκυρο σήμα.
4. RS-232 Level Conversion IC
Εφόσον οι ακροδέκτες μικροελεγκτή εξάγουν επίπεδα TTL, απαιτείται ένα αποκλειστικό IC μετατροπής (όπως το MAX3232 του TI ή το ST3232 του ST) για τη μετατροπή τους σε επίπεδα RS-232. Για περισσότερες λεπτομέρειες, ανατρέξτε στο προηγούμενο άρθρο μου: Ποια είναι η διαφορά μεταξύ των επιπέδων RS-232 και TTL; Πώς μετατρέπονται;

5. Μετάδοση δεδομένων RS-232
Η πρώτη ιδέα που εμπλέκεται στη μετάδοση δεδομένων είναι ο ρυθμός baud. Όπως γνωρίζουμε, η σειριακή επικοινωνία μεταδίδει δεδομένα ένα bit τη φορά, με μονάδα μετάδοσης το bit. Επομένως, ο ρυθμός baud ορίζεται ως ο αριθμός των bit που μεταδίδονται ανά μονάδα χρόνου. Η διεθνώς αποδεκτή μονάδα χρόνου είναι το δευτερόλεπτο (s), επομένως η μονάδα του ρυθμού baud είναι bit/s (b/s), γραμμένη επίσης ως bps (bits per second).
Υπάρχει ένα συγκεκριμένο εύρος ρυθμών baud (όχι αυθαίρετες τιμές). Τα κοινά ποσοστά baud περιλαμβάνουν 9.600, 38.400, 56.000 και 115.200. Υπάρχουν πολλές άλλες αξίες επίσης? Τα μέρη που επικοινωνούν πρέπει απλώς να συμφωνήσουν για τον ίδιο ρυθμό baud.
Το RS-232 είναι ένα-πρωτόκολλο επικοινωνίας από σημείο σε σημείο. Το πλαίσιο δεδομένων του αποτελείται από τέσσερα μέρη: το bit έναρξης, τα bit δεδομένων, το bit ισοτιμίας και το bit διακοπής.
Bit έναρξης: Μήκος 1, η τιμή δεδομένων ισούται με λογικό 0, υποδεικνύοντας την έναρξη της μετάδοσης δεδομένων.
Bit δεδομένων: Μήκος 8 ή 7, που αντιπροσωπεύει τα πραγματικά δεδομένα που μεταδίδονται.
Bit ισοτιμίας: Μήκος 0 (χωρίς ισοτιμία) ή 1 (μονό ή ζυγό ισοτιμία).
Stop bit: Μήκος 1, 1,5 ή 2. η τιμή δεδομένων είναι ένα λογικό 1, που υποδεικνύει το τέλος του πλαισίου δεδομένων.
Υποθέτοντας ότι μια επικοινωνία RS232 έχει διαμορφωθεί με 7 bit δεδομένων, περιττή ισοτιμία και 2 bit τερματισμού, το πλαίσιο και οι λογικές τιμές φαίνονται στο παρακάτω σχήμα
Στη συνέχεια, ας κάνουμε έναν υπολογισμό.
Ας υποθέσουμε ότι μια εγκατάσταση επικοινωνίας RS-232 έχει ρυθμό baud 9.600, 8 bit δεδομένων, χωρίς ισοτιμία (0) και 1 bit διακοπής. Πόσα byte δεδομένων μπορούν να μεταδοθούν ανά δευτερόλεπτο κάτω από αυτές τις παραμέτρους επικοινωνίας;
Απάντηση: Με βάση τις παραμέτρους, το μήκος του πλαισίου για αυτήν την επικοινωνία είναι 1 + 8 + 1=10 bit. Ένα byte (8 bit) μεταδίδεται σε αυτό το πλαίσιο. Επομένως, με ρυθμό baud 9600, η μέγιστη ποσότητα πραγματικών δεδομένων που μπορεί να μεταδοθεί ανά δευτερόλεπτο είναι 9600 / 10=960 byte.




