Πίνακας περιεχομένων:

Σεμινάριο Sparkfun CAN Bus Shield: 6 βήματα
Σεμινάριο Sparkfun CAN Bus Shield: 6 βήματα

Βίντεο: Σεμινάριο Sparkfun CAN Bus Shield: 6 βήματα

Βίντεο: Σεμινάριο Sparkfun CAN Bus Shield: 6 βήματα
Βίντεο: Arduino Head Up Display with Sparkfun Can Bus Shield 2024, Ιούλιος
Anonim
Σεμινάριο Sparkfun CAN Bus Shield Tutorial
Σεμινάριο Sparkfun CAN Bus Shield Tutorial

Λάβετε και μεταδίδετε μηνύματα χρησιμοποιώντας το Sparkfun CAN Bus Shield

Τι είναι CAN;

Ο δίαυλος CAN αναπτύχθηκε από την BOSCH ως σύστημα μετάδοσης μηνυμάτων πολλαπλών βασικών, το οποίο καθορίζει το μέγιστο ρυθμό σηματοδότησης 1 megabit ανά δευτερόλεπτο (bps). Σε αντίθεση με ένα παραδοσιακό δίκτυο όπως USB ή Ethernet, το CAN δεν στέλνει μεγάλα μπλοκ δεδομένων από σημείο σε σημείο από τον κόμβο Α στον κόμβο Β υπό την επίβλεψη κεντρικού κεντρικού διαύλου. Σε ένα δίκτυο CAN, πολλά σύντομα μηνύματα όπως θερμοκρασία ή RPM μεταδίδονται σε ολόκληρο το δίκτυο, το οποίο παρέχει συνέπεια δεδομένων σε κάθε κόμβο του συστήματος.

Βήμα 1: Απαιτούνται υλικά

2 - Sparkfun CAN Bus Shield

2 - Arduino UNO

2 - αντιστάσεις 120 ohm

1 - Breadboard

Jumper Wires

Λήψη της βιβλιοθήκης CAN Bus Shield:

drive.google.com/open?id=1Mnf2PN_fAQFpo1ID…

Advanced (CAN Bus):

DB9 (Γυναίκα)

RJ45

Καλώδιο UTP

RJ45 2-Way Splitter

RJ45 Straight Connector

Εργαλεία:

Κατσαβίδι

RJ45 Crimper

Συγκολλητικό σίδερο

Βήμα 2: Δημιουργία CAN Bus σε Breadboard

Κτίριο CAN Bus στο Breadboard
Κτίριο CAN Bus στο Breadboard

1. Τοποθετήστε το CAN Bus Shield σε ένα Arduino το καθένα

2. Συνδέστε τις καρφίτσες CAN_H και CAN_L της ασπίδας στο ψωμί

3. Συνδέστε τις αντιστάσεις τερματισμού 120 ohm σε κάθε άκρο των γραμμών CAN_H και CAN_L

Βήμα 3: Προγραμματισμός Arduino

Προγραμματισμός Arduino
Προγραμματισμός Arduino

1. Κατεβάστε και εγκαταστήστε τη βιβλιοθήκη CAN Bus Shield από τον παραπάνω σύνδεσμο

Διαμορφώστε το 1ο Arduino για ανάγνωση μηνυμάτων CAN

2. Ανοίξτε το Arduino IDE

3. Μεταβείτε στα Παραδείγματα αρχείων SparkFun CAN-Bus CAN_Read_Demo

4. Επιλέξτε την κατάλληλη θύρα του πρώτου Arduino και μεταφόρτωση

Διαμορφώστε το 2ο Arduino για αποστολή μηνυμάτων CAN

5. Ανοίξτε ένα νέο Arduino IDE

6. Μεταβείτε στα Παραδείγματα αρχείων SparkFun CAN-Bus CAN_Write_Demo

7. Επιλέξτε την κατάλληλη θύρα του δεύτερου Arduino και μεταφόρτωση

Βήμα 4: Δοκιμή

/*Προσθήκη εικόνων του παραδείγματος εργασίας*/

Μετά τη μεταφόρτωση του προγράμματος στους δύο Arduinos…

1. Ανοίξτε τις σειριακές οθόνες του πρώτου και του δεύτερου Arduino

2. Ορίστε το ποσοστό Baud στο 9600

3. Ελέγξτε εάν τα δεδομένα λαμβάνονται από το πρώτο Arduino

Εάν δεν ληφθούν δεδομένα:

1. Ελέγξτε εάν έχει επιλεγεί το κατάλληλο λιμάνι και ρυθμός Baud για κάθε Arduino

2. Ελέγξτε τις συνδέσεις των γραμμών CAN_H και CAN_L

3. Ελέγξτε τις συνδέσεις των αντιστάσεων τερματισμού

Βήμα 5: Εξερεύνηση

Δημιουργήστε προσαρμοσμένα μηνύματα CAN

Επεξεργασία του προγράμματος CAN_Write_Demo σε…

  • αλλάξτε το αναγνωριστικό μηνύματος (message.id)
  • αλλαγή bit RTR (message.header.rtr)
  • ορίστε το μήκος δεδομένων (message.header.length)
  • εισαγωγή των δικών σας δεδομένων (message.data [x])

Επεξεργαστείτε το CAN_Read_Demo για να προσαρμόσετε τον τρόπο εκτύπωσης των δεδομένων σας

  • Εκτυπώστε το αναγνωριστικό μηνύματος (message.id)
  • Εκτύπωση μήκους μηνύματος (message.header.length)
  • Εκτυπώστε το μήνυμα Δεδομένα (message.data [x])

Βήμα 6: (Πρόσθετο) Δημιουργήστε CAN Bus χρησιμοποιώντας UTP

(Πρόσθετα) Δημιουργήστε CAN Bus χρησιμοποιώντας UTP
(Πρόσθετα) Δημιουργήστε CAN Bus χρησιμοποιώντας UTP
(Πρόσθετα) Δημιουργήστε CAN Bus χρησιμοποιώντας UTP
(Πρόσθετα) Δημιουργήστε CAN Bus χρησιμοποιώντας UTP
(Πρόσθετα) Δημιουργήστε CAN Bus χρησιμοποιώντας UTP
(Πρόσθετα) Δημιουργήστε CAN Bus χρησιμοποιώντας UTP

Ο δίαυλος CAN που χρησιμοποιείται σε αυτό το διάγραμμα είναι ένα καλώδιο UTP 8 ακίδων.

Υπάρχουν δύο τύποι συνδετήρων σε αυτό το διάγραμμα: οι (DB9 - to - RJ45) και (RJ45 - to - RJ45)

DB9 - έως - RJ45

DB9 (ακίδες 1-8) = wO, O, wG, Bl, wBl, G, wBr, Br

RJ45 (ακίδες 1-8) = wO, O, wG, Bl, wBl, G, wBr, Br

RJ45 - προς - RJ45 (Ευθεία)

RJ45 (ακίδες 1-8) = wO, O, wG, Bl, wBl, G, wBr, Br

RJ45 (ακίδες 1-8) = wO, O, wG, Bl, wBl, G, wBr, Br

RJ45 - to - Terminator

RJ45 (ακίδες 1-8) = wO, O, wG, Bl, wBl, G, wBr, Br

Αντίσταση Terminator (wG, wBl)

Οι κόμβοι μπορούν να συνδεθούν με το δίαυλο CAN σύμφωνα με τις προτιμήσεις σας και τον αριθμό των κόμβων που χρησιμοποιούνται

Για σύνδεση δύο κόμβων, χρησιμοποιείται σύνδεσμος RJ45 Straight μεταξύ των καλωδίων (DB9 - to - RJ45)

Για σύνδεση 3 κόμβων, ένας διαχωριστής διπλής κατεύθυνσης συνδέεται με έναν ευθύ σύνδεσμο για να γίνει μια σύνδεση "T" μεταξύ όλων των καλωδίων (DB9 - to - RJ45)

Για τη σύνδεση κόμβου 2+ (2 ή περισσότεροι κόμβοι), ένας διαχωριστής 2 δρόμων συνδέεται με έναν ευθύ σύνδεσμο για να πραγματοποιήσει μια σύνδεση "Τ". Ένα καλώδιο (RJ45 - to - RJ45) χρησιμοποιείται για τη σύνδεση δύο κόμβων "T" και ένα καλώδιο (DB9 - to - RJ45) χρησιμοποιείται για τη σύνδεση του κόμβου "T" με την ασπίδα CAN Bus. Ένα RJ45 - to - Terminator χρησιμοποιήθηκε σε κάθε άκρο "T" του διαύλου CAN

Συνιστάται: