CANBus – Τι είναι; Που χρησιμοποιείται;
Ένα σύστημα το οποίο χρησιμοποιείται από την αυτοκινητοβιομηχανία εδώ και κάμποσα
χρόνια, στη χώρα μας άρχισε να ακούγεται δειλά δειλά μόλις τον τελευταίο καιρό. Θα μπορούσαμε να πούμε ότι είναι το τοπικό δίκτυο ενός οχήματος! Μην παραλείψετε να δείτε και ένα σχετικό βίντεο στο τέλος του άρθρου…
Γράφει ο Παναγιώτης Γεωργούλας / Απόφοιτος Εκπαιδευτικός Ηλεκτρολόγος Μηχανικός / ΑΣΠΑΙΤΕ …
Τι είναι το CANBus που έχει ακουστεί τα τελευταία χρόνια στην Ελλάδα ;
Το CAN είναι ένα σειριακό πρωτόκολλο επικοινωνίας το οποίο υποστηρίζει πολύ αποτελεσματικά τον έλεγχο πολλών συσκευών σε πραγματικό χρόνο.
Τον τελευταίο καιρό έχει ακουστεί και στη χώρα μας, λίγο καθυστερημένα ίσως, η λέξη CANBus. Θα μου πείτε γιατί καθυστερημένα, τι είναι αυτό και γιατί θα πρέπει να ξέρουμε εμείς τι είναι αυτή η λέξη. Το CAN εμφανίστηκε σαν ιδέα το 1983 και παρουσιάστηκε το 1986 στο συνέδριο της Society of Automotive Engineer (SAE) στο Detroit του Michigan, από την εταιρεία Robert Bosch GmbH. Το CAN λοιπόν είναι τα αρχικά της αγγλικής έκφρασης Controller Area Network και είναι ένα σειριακό πρωτόκολλο επικοινωνίας το οποίο υποστηρίζει πολύ αποτελεσματικά τον έλεγχο πολλών συσκευών (π.χ. αισθητήρες) σε πραγματικό χρόνο. Φτάνοντας στο σήμερα λοιπόν όλα τα καινούρια επιβατικά αυτοκίνητα διαθέτουν δίκτυα τύπου CAN. Ακόμα λόγο της επιτυχίας του CAN στην αυτοκινητοβιομηχανία σήμερα χρησιμοποιείται και από άλλους τύπους μεταφορικών μέσων όπως αεροπλάνα, πλοία, τρένα, διαστημόπλοια, καθώς επίσης στην βιομηχανία και στα ιατρικά μηχανήματα.
Γενικά
Το πρωτόκολλο CAN bus αναπτύχτηκε από την Bosch σαν ένα σύστημα αναμετάδοσης μηνυμάτων που καθορίζετε από το πολύ 1 megabit το δευτερόλεπτο (bps). Δυστυχώς το CAN δεν μπορεί στείλει μεγάλα πακέτα δεδομένων από κόμβο σε κόμβο (από Α σε Β) μέσα από ένα δίκτυο bus όπως τα παραδοσιακά πρωτόκολλα USB ή Ethernet. Στο δίκτυο CAN πολλά μικρά μηνύματα από αισθητήρες όπως η θερμοκρασία ή οι στροφές (RPM) μεταδίδονται σε ολόκληρο το δίκτυο, που παρέχει με συνέπεια δεδομένα σε κάθε κόμβο του συστήματος.
Ένα από τα βασικά κομμάτια του CAN όπως η μορφή των μηνυμάτων, η ανάγνωση τους, η διαιτησία τους, δηλαδή η αποστολή τους στο κατάλληλο προορισμό, είναι λίγα από τα μεγάλα ωφέλει της σηματοδότησης του πρωτοκόλλου.
Το Πρότυπο CAN
CAN ορίζεται από τον Διεθνή Οργανισμό Τυποποίησης (International Standardization Organization ISO) ένας συριακός δίαυλος επικοινωνίας όπου αναπτύχθηκε για την αυτοκινητοβιομηχανία προκειμένου να αντικαταστήσει την σύνθετη πλεξούδα καλωδίωσης του αυτοκινήτου με ένα διπλό καλώδιο διαύλου «bus». Το πρωτόκολλο αυτό κατασκευάστηκε με προδιαγραφές υψηλής ανοσίας σε ηλεκτρικές παρεμβολές, την δυνατότητα της αυτοδιάγνωσης και της επισκευής των σφαλμάτων δεδομένων. Αυτά τα χαρακτηριστικά οδήγησαν το πρωτόκολλο CAN στην δημοτικότητα σε μια ποικιλία βιομηχανικών εφαρμογών συμπεριλαμβανομένων των κτιριακών αυτοματισμών της ιατρικής και γενικά της βιομηχανοποίησης.
Χωρίς το CAN
Το πρωτόκολλο επικοινωνίας CAN (ISO – 11898: 2013) περιγράφει πως οι πληροφορίες διέρχονται μεταξύ των συσκευών ενός δικτύου και συμμορφώνονται σε ένα μοντέλο Ανοικτού Συστήματος Διασύνδεσης (Open System Interconnectio OSI) όπου ορίζεται από πολλές στρώσεις. Πραγματικές επικοινωνίες μεταξύ συνδεδεμένων συσκευών από φυσικό μέσο ορίζεται από την φυσική στρώση του μοντέλου.
Με το CAN
Τα Βασικά και τα Επεκταμένα CAN
Το πρωτόκολλο επικοινωνίας CAN είναι ένα πρωτόκολλο με νοητικές αισθήσεις, με πολλαπλή πρόσβαση, με ανίχνευση σύγκρουσης και διαιτησία σχετικά με την προτεραιότητα των μηνυμάτων (CSMA / CD + AMP). Το CSMA σημαίνει ότι κάθε κόμβος σε ένα δίαυλο πρέπει να περιμένει για μια προκαθορισμένη περίοδο αδράνειας πριν επιχειρήσει να στείλει ένα μήνυμα. Το CD + AMP σημαίνει ότι οι συγκρούσεις επιλύθηκαν με μια λογική διαιτησία, βασισμένη σε μια προκαθορισμένη προτεραιότητα κάθε μηνύματος, στο πεδίο που έχει οριστεί για την αναγνώριση ενός μηνύματος. Το αναγνωριστικό υψηλότερης προτεραιότητας κερδίζει πάντοτε πρόσβαση στο δίαυλο. Μέχρι και το τελευταίο bit υψηλής λογικής το αναγνωριστικό συνεχίζει να εκπέμπει επειδή είναι η υψηλότερης προτεραιότητας. Σε κάθε κόμβο του διαύλου παίρνει μέρος στο γράψιμο κάθε bit και ένας διαιτητικός κόμβος ξέρει εάν θα τοποθετήσει το υψηλής λογικής bit στο δίαυλο.
Το πρότυπο ISO-11898: 2003, με το τυπικό αναγνωριστικό 11-bit, προβλέπει ρυθμούς μετάδοσης από 125 Kbps έως 1 Mbps. Το πρότυπο τροποποιήθηκε αργότερα με το “εκτεταμένο” αναγνωριστικό 29-bit. Το πρότυπο 11-bit αναγνωριστικό πεδίο παρέχει για 211, ή 2048 διαφορετικά αναγνωριστικά μηνύματος, ενώ το διευρυμένο αναγνωριστικό 29-bit παρέχει για 229, ή 537 εκατομμύρια αναγνωριστικά.
Τα Μηνύματα Διαιτησίας του CAN
Η πρόσβαση στο δίαυλο bus γίνεται όταν υπάρξει κάποιο συμβάν δηλαδή ένα σήμα από κάποιον αισθητήρα και πραγματοποιείτε τυχαία. Εάν δυο κόμβοι προσπαθήσουν να καταλάβουν ταυτόχρονα το δίαυλο η πρόσβαση υλοποιείτε με μία μη καταστρεπτική διαδικασία για το σήμα μέσο μιας διαιτητικής διαδικασίας. Μη καταστροφική σημαίνει ότι στον κόμβο μετά από μια επιτυχημένη διαιτησία την συνεχίζει σε όλους τους κόμβους με το μήνυμα να συνεχίζεται χωρίς να καταστρέφεται από έναν άλλο κόμβο. Εδώ είναι πολύ σημαντικό να αναφέρουμε ότι στα μηνύματα του διαδίκου συστήματος το υψηλής λογικής ψηφίο πάει με το λογικό ΄΄1΄΄ και το χαμηλής λογικής ψηφίο πάει με το λογικό ΄΄0΄΄ αλλά στο πρωτόκολλο CAN δεν είναι έτσι. Στο πρωτόκολλο CAN το ψηφίο ΄΄0΄΄ θεωρείτε το ψηφίο προτεραιότητας άρα και ψηφίο υψηλής λογικής.
Η κατανομή της προτεραιότητας των μηνυμάτων είναι ένα από τα χαρακτηριστικά που κάνει το CAN ιδιαίτερα ελκυστικό για χρήση μέσα σε περιβάλλον ελέγχου σε πραγματικό χρόνο. Όσο χαμηλότερος είναι λοιπόν ο αριθμός αναγνωριστικού του δυαδικού μηνύματος τόσο μεγαλύτερη είναι η προτεραιότητα του. Ένα αναγνωριστικό που αποτελείται εξ ολοκλήρου από μηδενικά…
είναι μήνυμα υψηλότερης προτεραιότητας σε ένα δίκτυο διότι κρατάει κατειλημμένο τον κυρίαρχο δίαυλο για περισσότερο χρόνο. Επομένως εάν δυο κόμβοι αρχίσουν να μεταδίδουν ταυτόχρονα ο κόμβος που στέλνει ένα τελευταίο bit αναγνώρισης ως ‘’0’’ (κυρίαρχο bit) ενώ οι άλλοι κόμβοι στέλνουν ‘’1’’ (υπολειπόμενο bit) ο πρώτος κυριαρχεί και κρατά των έλεγχο του διαύλου και συνεχίζει μέχρι να ολοκληρώσει το μήνυμα του. Στο δίκτυο του CAN bus πάντα ένα κυρίαρχο κομμάτι ‘’0’’ αντικαθιστά ένα υπολειπόμενο κομμάτι ‘’1’’ στο δίαυλο.
Σημαντικό είναι ότι ένας κόμβος μετάδοσης παρακολουθεί συνεχώς κάθε κομμάτι της δικής του μετάδοσης. Έτσι το παρακάτω σχήμα δείχνει την διαδικασία διαιτησίας CAN που χειρίζεται ένας ελεγκτής CAN. Επειδή κάθε κόμβος παρακολουθεί συνεχώς τις δικές του μεταδόσεις, καθώς το υπολειπόμενο bit του κόμβου Β αντικαθίσταται από το κυρίαρχο bit υψηλής λογικής του κόμβο C, το Β ανιχνεύει ότι η κατάσταση του διαύλου δεν ταιριάζει με το bit που μεταδίδει. Επομένως, ο κόμβος Β σταματά τη μετάδοση ενώ ο κόμβος C συνεχίζει με το μήνυμά του. Μια άλλη προσπάθεια μετάδοσης του μηνύματος γίνεται από τον κόμβο Β μόλις απελευθερωθεί ο δίαυλος από τον κόμβο C. Αυτή η λειτουργία είναι μέρος της φυσικής σηματοδότησης του ISO 11898, το οποίο σημαίνει ότι περιέχεται εξ ολοκλήρου στον ελεγκτή CAN και είναι απολύτως διαφανής στον χρήστη του CAN.
Η Διαιτησία του CAN Bus
Η κατανομή της προτεραιότητας των μηνυμάτων εξαρτάται από τον σχεδιαστή του σήματος, αλλά οι βιομηχανικές ομάδες συμφωνούν αμοιβαία σχετικά με την σημασία ορισμένων μηνυμάτων, δηλαδή το πόσο σημαντικό είναι ένα μήνυμα. Για παράδειγμα ένας κατασκευαστής κινητήρων μπορεί να καθορίσει αυτό το μήνυμα 0010 είναι ένα σήμα αναμετάδοσης ρεύματος περιέλιξης από κινητήρα σε δίκτυο CAN ενώ το 0011 είναι το ταχύμετρο. Επειδή το 0010 έχει το χαμηλότερο δυαδικό αναγνωριστικό, μηνύματα όπως αυτό, έχουν πάντα υψηλότερη προτεραιότητα στον δίαυλο από εκείνα που σχετίζονται με τις μετρήσεις του ταχόμετρου (0011).
Το CAN Bus
Το ISO 11898 ορίζει κάποιες προδιαγραφές όπως για υψηλές ταχύτητες δίνονται για μέγιστη ταχύτητα σηματοδότησης το 1 Mbps με μήκος διαύλου 40 m και μέγιστο αριθμό κόμβων τους 30. Συνιστάτε επίσης, χωρίς να προσδιορίζεται επακριβώς το μήκος στελέχους στα 0,3 m. Το καλώδιο έχει καθοριστεί να είναι θωρακισμένο ή αθωράκιστο με συνεστραμμένη σύζευξη με χαρακτηριστική αντίσταση (Zo) τα 120 Ω. Το πρότυπο ISO 11898 ορίζει μια ενιαία γραμμή καλωδίωσης συνεστραμμένου ζεύγους ως τοπολογία δικτύου, όπου φαίνεται και στο παρακάτω σχήμα όπου τερματίζονται τα δυο άκρα σε μια αντίσταση 120 Ω, οι οποίες ταιριάζουν με την χαρακτηριστική σύνθετη αντίσταση της γραμμής για την αποφυγή ανακλάσεων του σήματος. Σύμφωνα με το πρότυπο ISO 11898, πρέπει να αποφευχθεί η τοποθέτηση της RL σε ένα κόμβο διότι οι γραμμές των διαύλων χάνουν το τερματικό τους εάν ο κόμβος αποσυνδεθεί από το δίαυλο.
Ο Δίαυλος CANBus
Το πρότυπο CAN ορίζει ένα δίκτυο επικοινωνίας που συνδέει όλους τους κόμβους επάνω στο δίαυλο και τους επιτρέπει να μιλάνε μεταξύ τους. Μπορεί να είναι κάποιος κεντρικός κόμβος ελέγχου ή και μη, όπου μπορεί να προστεθεί ανά πάσα στιγμή στο δίαυλο ακόμα και αν το δίκτυο είναι απασχολημένο (hot – plugging).
Οι κόμβοι του, θεωρητικά θα μπορούσαν να στείλουν μηνύματα από την τεχνολογία της έξυπνης αποστολής του ελεγκτή του κινητήρα. Μια πραγματική εφαρμογή μπορεί να περιλαμβάνει έναν αισθητήρα θερμοκρασίας που στέλνει μηνύματα ενημέρωσης της θερμοκρασίας έτσι ώστε αυτό να χρησιμοποιηθεί για την ρύθμιση της ταχύτητας του κινητήρα ενός ανεμιστήρα. Εάν ένας κόμβος με αισθητήρα πίεσης θέλει να στείλει ένα μήνυμα ταυτόχρονα, η διαιτησία διασφαλίζει ότι το μήνυμα αποστέλλεται.
Εφαρμογές του CANBus
Τα συστήματα διαύλου CAN χρησιμοποιούνται επίσης ως συστήματα επικοινωνίας πολλαπλών μικροελεγκτών ως ανοικτά συστήματα επικοινωνιών για ευφυείς συσκευές. Για παράδειγμα, το σειριακό σύστημα διαύλου CAN, που αναπτύχθηκε αρχικά για χρήση σε αυτοκίνητα, χρησιμοποιείται ολοένα και περισσότερο στη βιομηχανία και σε άλλα συστήματα αυτοματισμού. Αυτό οφείλεται στο γεγονός ότι οι απαιτήσεις για τα βιομηχανικά συστήματα είναι παρόμοια με εκείνα για τα δίκτυα επιβατικών αυτοκινήτων, κυρίως όσον αφορά το κόστος εγκατάστασης και συντήρησης, την αξιοπιστία, τη διαθεσιμότητα, την ευρωστία και την ικανότητα να λειτουργούν σε ένα δύσκολο ηλεκτρικό περιβάλλον, υψηλά επίπεδα απόδοσης σε πραγματικό χρόνο και ευκολία χρήσης. Για παράδειγμα, στον τομέα της ιατρικής μηχανικής ορισμένοι χρήστες επέλεξαν το CAN επειδή πρέπει να πληρούν ιδιαίτερα αυστηρές απαιτήσεις ασφαλείας. Παρόμοιος αντιμετωπίζουν προβλήματα κατασκευαστές μηχανημάτων, ρομπότ και συστημάτων μεταφοράς, που πρέπει να πληρούν πολύ υψηλές επιχειρησιακές απαιτήσεις.
Με το πέρασμα των χρόνων λοιπόν το CAN έχει γίνει ένα από τα ισχυρότερα πρωτόκολλα στη αυτοκινητοβιομηχανία αν όχι το ισχυρότερο. Έτσι σήμερα έχει αναπτυχθεί αρκετά και περιλαμβάνει πρωτόκολλα υψηλότερου επιπέδου (CANOpen) καθώς επίσης μπορεί να συνδυαστεί με άλλα πρωτόκολλα όπως το LINBus. Το μέλλον λοιπόν του CANBus φαίνεται να είναι λαμπρό καθώς η τεχνολογία αναπτύσσεται συνεχώς με αποτέλεσμα το κόστος να μικραίνει και τα συστήματα αυτά να μπορούν να μπαίνουν ολοένα και σε πιο πολλές εφαρμογές με την αξιοπιστία να φτάνει ολοένα σε μεγαλύτερα επίπεδα.
Γεωργούλας Παναγιώτης
Απόφοιτος Εκπαιδευτικός
Ηλεκτρολόγος Μηχανικός (ΑΣΠΑΙΤΕ)
Για την ιστοσελίδα ‘’ electricalnews.gr’’