Cuprins:

Tutorial Sparkfun CAN Bus Shield: 6 pași
Tutorial Sparkfun CAN Bus Shield: 6 pași

Video: Tutorial Sparkfun CAN Bus Shield: 6 pași

Video: Tutorial Sparkfun CAN Bus Shield: 6 pași
Video: CAN BUS Communication Using Arduino And MCP2515 Module 2024, Iulie
Anonim
Tutorial Sparkfun CAN Bus Shield
Tutorial Sparkfun CAN Bus Shield

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

Construirea CAN Bus pe Breadboard
Construirea CAN Bus 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

Programare Arduino
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

(Adițional) Creați CAN Bus folosind UTP
(Adițional) Creați CAN Bus folosind UTP
(Adițional) Creați CAN Bus folosind UTP
(Adițional) Creați CAN Bus folosind UTP
(Adițional) Creați CAN Bus folosind UTP
(Adițional) Creați CAN Bus folosind 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: