Cuprins:
- Pasul 1: Materiale necesare
- Pasul 2: Construirea autobuzului CAN pe Breadboard
- Pasul 3: Programare Arduino
- Pasul 4: Testarea
- Pasul 5: Explorați
- Pasul 6: (suplimentar) Creați magistrala CAN utilizând UTP
Video: Tutorial Sparkfun CAN Bus Shield: 6 pași
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:45
Primiți și transmiteți mesaje utilizând Sparkfun CAN Bus Shield
Ce este CAN?
Autobuzul CAN a fost dezvoltat de BOSCH ca un sistem de difuzare a mesajelor multi-master, care specifică o rată de semnalizare maximă de 1 megabit pe secundă (bps). Spre deosebire de o rețea tradițională, cum ar fi USB sau Ethernet, CAN nu trimite blocuri mari de date punct-la-punct de la nodul A la nodul B sub supravegherea unui master central de autobuz. Într-o rețea CAN, multe mesaje scurte precum temperatura sau RPM sunt transmise către întreaga rețea, ceea ce asigură consistența datelor în fiecare nod al sistemului.
Pasul 1: Materiale necesare
2 - Sparkfun CAN Bus Shield
2 - Arduino UNO
Rezistențe de 2 - 120 ohmi
1 - Pană de pâine
Sârme jumper
Biblioteca CAN Shield Library Descărcare:
drive.google.com/open?id=1Mnf2PN_fAQFpo1ID…
Avansat (CAN Bus):
DB9 (feminin)
RJ45
Cablu UTP
Separator bidirecțional RJ45
Conector drept RJ45
Instrumente:
Şurubelniţă
RJ45 Crimper
Ciocan de lipit
Pasul 2: Construirea autobuzului CAN pe Breadboard
1. Montați CAN Bus Shield la fiecare Arduino fiecare
2. Sârmă pinii CAN_H și CAN_L ai scutului pe panoul de control
3. Conectați rezistențele terminale de 120 ohmi de la fiecare capăt al liniilor CAN_H și CAN_L
Pasul 3: Programare Arduino
1. Descărcați și instalați CAN Bus Shield Library de pe linkul de mai sus
Configurați primul Arduino pentru a citi mesajele CAN
2. Deschideți Arduino IDE
3. Accesați Exemple de fișiere SparkFun CAN-Bus CAN_Read_Demo
4. Selectați portul corespunzător pentru primul Arduino și încărcați
Configurați al doilea Arduino pentru a trimite mesaje CAN
5. Deschideți un nou IDE Arduino
6. Accesați Exemple de fișiere SparkFun CAN-Bus CAN_Write_Demo
7. Selectați portul corespunzător celui de-al doilea Arduino și încărcați
Pasul 4: Testarea
/ * Adăugați imagini cu exemplul de lucru * /
După încărcarea programului pe cele două Arduino …
1. Deschideți monitoarele seriale ale primului și celui de-al doilea Arduino
2. Setați Baud Rate la 9600
3. Verificați dacă datele sunt primite de First Arduino
Dacă nu se primesc date:
1. Verificați dacă este selectat portul și rata de transmisie corespunzătoare pentru fiecare Arduino
2. Verificați conexiunile liniilor CAN_H și CAN_L
3. Verificați conexiunile rezistențelor terminale
Pasul 5: Explorați
Creați mesaje CAN personalizate
Editați programul CAN_Write_Demo la …
- modificați ID-ul mesajului (message.id)
- modificați bitul RTR (message.header.rtr)
- setați lungimea datelor (message.header.length)
- introduceți propriile date (message.data [x])
Editați CAN_Read_Demo pentru a personaliza modul în care tipăriți datele
- Imprimați ID-ul mesajului (message.id)
- Imprimați lungimea mesajului (message.header.length)
- Imprimați mesajul Date (message.data [x])
Pasul 6: (suplimentar) Creați magistrala CAN utilizând UTP
Busul CAN utilizat în această diagramă este un cablu UTP cu 8 pini.
Există două tipuri de conectori în această diagramă și anume (DB9 - la - RJ45) și (RJ45 - la - RJ45)
DB9 - la - RJ45
DB9 (pinii 1-8) = wO, O, wG, Bl, wBl, G, wBr, Br
RJ45 (pinii 1-8) = wO, O, wG, Bl, wBl, G, wBr, Br
RJ45 - la - RJ45 (direct)
RJ45 (pinii 1-8) = wO, O, wG, Bl, wBl, G, wBr, Br
RJ45 (pinii 1-8) = wO, O, wG, Bl, wBl, G, wBr, Br
RJ45 - la - Terminator
RJ45 (pinii 1-8) = wO, O, wG, Bl, wBl, G, wBr, Br
Rezistor terminator (wG, wBl)
Nodurile pot fi conectate la CAN Bus în funcție de preferințele dvs. și de numărul de noduri utilizate
Pentru o conexiune cu două noduri, între cablurile (DB9 - la - RJ45) se folosește un conector drept RJ45.
Pentru o conexiune cu 3 noduri, un splitter cu 2 căi este cuplat cu un conector drept pentru a face o conexiune "T" între toate cablurile (DB9 - la - RJ45)
Pentru conexiunea de 2+ noduri (2 sau mai multe noduri), un splitter bidirecțional este cuplat cu un conector drept pentru a realiza o conexiune „T”. Un cablu (RJ45 - la - RJ45) este utilizat pentru a conecta două noduri "T" și un cablu (DB9 - la - RJ45) este utilizat pentru a conecta nodul "T" la ecranul CAN Bus. Un RJ45 - la - Terminator a fost utilizat la fiecare capăt "T" al CAN Bus
Recomandat:
Tahometru / Manometru de scanare folosind Arduino, OBD2 și CAN Bus: 8 pași
Tahometru / Manometru de scanare folosind Arduino, OBD2 și CAN Bus: Orice posesor de Toyota Prius (sau alt vehicul hibrid / special) va ști că panourile lor de bord pot lipsi câteva cadrane! Prius-ul meu nu are RPM-ul motorului și nici un indicator de temperatură. Dacă sunteți un tip de performanță, poate doriți să știți lucruri precum avansul de sincronizare și
Cheile volanului la adaptorul stereo auto (CAN Bus -> Key1): 6 pași
Tastele volanului la adaptorul stereo auto (CAN Bus -> Key1): La câteva zile după ce am cumpărat o mașină uzată, am descoperit că nu pot reda muzică de pe telefon prin intermediul stereo-ului auto. Și mai frustrant a fost că mașina avea bluetooth, dar permitea doar apelurile vocale, nu muzica. Avea și un port USB Windows Phone, dar eu
Led Reactie Spel Met Shield Keypad Shield: 4 pași
Led Reactie Spel Met Lcd Keypad Shield: Vrei să spui cum să faci școala cu arduino? Klinkt leuk! Dan moet je eerst een idee hebben voor een spel. Ik dacht meteen aan spellen waar je snel op een knop moet drukken als hij licht geeft. Dus ik keek op het internet in vond een project
Actobitty 2 Cu driverul de motor TB6612FNG SparkFun, Ghid pentru începători: 3 pași
Actobitty 2 cu driverul de motor SparkFun TB6612FNG, ghid pentru începători: Acest instructable este pentru robotul Actobitty 2 cu SparkFun ® Driver motor TB6612FNG
Seeed Studio CAN-BUS V2.0 Hacking - Noțiuni introductive: 5 pași
Seeed Studio CAN-BUS V2.0 Hacking - Noțiuni introductive: Acest instructiv este destinat începătorilor care își cunosc deja drumul în jurul Arduino. Știința inițială pentru a începe este întotdeauna durere și consum de timp în orice proiect. Dar până când nu-ți vei da seama, aproape întotdeauna ți-ai dori să ai pe cineva de care să