Sunteți pe pagina 1din 39

CURS 9 CANopen & DeviceNet

INFORMATICA INDUSTRIALA As. drd. ing. Valentin STEFANESCU

Introducere
2

In retelele de tip fieldbus sunt definite, conform modelului OSI, doar nivelurile 1 si 2 Nivelul de aplicatii (nivelul 7) poate fi definit sau nu in cadrul standardului, insa el este necesar pentru a asigura comunicatiile specifice diverselor aplicatii Standardul CAN defineste specificatii numai pentru nivelurile 1 si 2 (nivelul fizic si cel de date), reducand astfel costurile de implementare pentru producatori Pentru a asigura stabilitatea si interoperabilitatea unei retele CAN, este necesara definirea nivelului de aplicatii si a profilurilor corespunzatoare

Introducere
3

Nivelul de aplicatii specifica un set de servicii si de profiluri ce pot fi utilizate de toate dispozitivele din retea Profilurile de comunicatie specifica modul in care datele sunt transmise intre dispozitive si modul in care acestea trebuiesc configurate pentru a putea comunica intre ele Profilurile de dispozitive specifica comportarea diferitelor clase de dispozitive in retea Cateva standarde care definesc specificatii pentru nivelul superior pentru retele CAN sunt CAL (CAN Application Layer), CANopen si DeviceNet

CAL
4

CAL reprezinta un standard ce defineste specificatii pentru nivelul de aplicatii a unei retele CAN El a fost adoptat de catre grupul CiA (CAN in Automation) CAL ofera 4 servicii specifice:

CMS

(CAN-based Message Specification) ofera obiecte de tipul Variable, Event si Domain pentru a specifica cum poate fi accesata functionalitatea unui nod prin intermediul CAN (exemplu: cum se poate escarca un set de date, incluzand si posibilitatea de a anula transferul) NMT (Network ManagemenT) descrie servicii pentru diverse functii de management al retelei (pornirea sau oprirea unui nod, detectia nodurilor defecte, etc.)

CAL
5

DBT

(DistriBuTor) asigura o distributie dinamica a identificatorilor catre nodurile dintr-o retea CAN. Mai este cunoscut drept COB-ID Communication Object Identifier LMT (Layer ManagemenT) permite modificarea parametrilor legati de layer-e (exemplu: modificarea adresei NMT a unui nod sau modificarea ratei de transfer a retelei)

CMS defineste 8 niveluri de prioritate , fiecare din ele avand asociate 220 de identificatori In acest mod se genereaza 1760 de identificatori. Restul pana la 2031 sunt rezervati NMT, DBT si LMT Cu cat valoarea identificatorului e mai mica, cu atat prioritatea mesajului e mai mare

CAL
6

In acest mod se genereaza 1760 de identificatori. Restul pana la 2031 sunt rezervati NMT, DBT si LMT In cazul utilizarii CAN 2.0B nu apar noi prioritati, ci se modifica doar intervalele

CANopen
7

CAL defineste toate serviciile de retea si protocoalele de mesaje, insa nu specifica continutul obiectelor CMS sau tipurile de obiecte ce sunt comunicate Cu alte cuvinte, CAL defineste cum, nu ce CANopen este dezvoltat pe baza CAL, pornind de la un set de servicii CAL, si ofera un sistem de control folosind protocoale si servicii CAL Acest lucru e realizat in asa fel incat nodurile pot avea functionalitati simple pana la complexe fara a compromite interoperabilitatea Conceptul central in CANopen este Device Object Dictionary (OD)

CANopen OD
8

Object Dictionary (OD) este definit in cadrul CANopen, el nu face parte din CAL Acest concept a mai fost intalnit si in alte retele de tip Fieldbus (ProfiBUS) OD reprezinta o grupare ordonata de obiecte, fiecare obiect fiind adresat printr-un index de 16 biti Pentru a putea accesa elemente individuale din cadrul structurilor de date, este definit un subindex de 8 biti Pentru fiecare nod din retea este definit un OD. Acesta descrie parametrii nodului si comportarea acestuia in retea

CANopen OD
9

Dupa cum se vede, OD defineste tipurile de date folosite, insa partea importanta este in zona 1000-FFFF unde se defineste comportarea dispozitivului in retea

CANopen OD
10

Object Dictionary (OD) este definit in cadrul CANopen, el nu face parte din CAL Acest concept a mai fost intalnit si in alte retele de tip Fieldbus (ProfiBUS) OD reprezinta o grupare ordonata de obiecte, fiecare obiect fiind adresat printr-un index de 16 biti Pentru a putea accesa elemente individuale din cadrul structurilor de date, este definit un subindex de 8 biti Pentru fiecare nod din retea este definit un OD. Acesta descrie parametrii nodului si comportarea acestuia in retea

CANopen OD
11

Este necesar ca un nod sa poata fi interogat despre parametrii sai de functionare prin intermediul CAN-bus Daca acestia corespund cu cei definiti in OD, nodul functioneaza corect Campurile obligatorii din OD (specificate in standardul CANopen) sunt foarte putine, insa orice informatie aditionala duce la o performanta mai buna OD este definit sub forma EDS (Electronic DataSheet), un fisier ASCII cu o sintaxa specifica definita de standardul CANopen

CANopen OD
12

Profilul selectat defineste care obiecte OD sunt obligatoriisi care nu Definitii suplimentare se pot adauga atat in zona de comunicatie cat si in zona specifica dispozitivului pentru o functionalitate sporita Zona de comunicatie este comuna tuturor dispozitivelor, pe cand zona specifica dispozitivelor difera de la o clasa la alta In plus, producatorii pot adauga informatii specifice fiecarui dispozitiv in oricare din aceste zone pentru o functionare corecta

Comunicatia CANopen
13

CANopen defineste 4 tipuri de mesaje (obiecte de comunicatie)


Mesaje

administrative layer management, network management, atribuirea identificatorilor, bazate pe descrierea LMT, NMT, DBT din CAL SDO (Service Data Objects) ofera unui client acces la intrarile OD ale unui dispozitiv (server) folosind index-ul si subindex-ul corespunzator transmisi in primii biti ai mesajului CAN SDO este implemntat ca un obiect CMS de tip Multiplexed Domain, permitand tranferul de date de orice lungime (impartite in mai multe frame-uri daca e nevoie)

Comunicatia CANopen
14

Protocolul de comunicatie este de tip confirmed service, ceea ce inseamna ca un raspuns este generat de fiecare data Comunicatia folosind SDO introduce un overhead semnificativ SDO este folosit in comunicatia non real time si este disponibil doar pentru comunicatia peer-to-peer PDO (Process Data Objects) este folosit pentru transferul de date real time de la un nod (si numai unul) catre unul sau mai multi destinatari Transferul de date e limitat la maxim 8 bytes si continutul mesajului este identificat doar de identificatorul CAN Mesajul se presupune cunoscut atat la sursa cat si la destinatie Acest tip de comunicatie nu introduce overhead

Comunicatia CANopen
15

Exista doua tipuri de mesaje PDO: Transmit PDO (TPDO) si Receive PDO (RPDO) Primul e folosit pentru a citi date de la dispozitiv si cel deal doilea pentru a transmite date catre dispozitiv In setul predefinit de conexiuni sunt disponibili 4 identificatori pentru TPDO si 4 pentru RPDO Acest numar poate fi marit prin adaugarea de configuratii suplimentare in OD Mesajele PDO pot fi transmise sincron sau asincron Mesajele sincrone sunt transmise in urma unui mesaj SYNC, iar cele asincrone in urma unui trigger intern sau extern

Comunicatia CANopen
16

Mesajele PDO sincrone pot fi aciclice (sincronizate printrun mesaj SYNC, dar neperiodice) sau ciclice (sincronizate la fiecare 1, 2 240 mesaje SYNC) Mesajele asincrone sunt generate de un Remote Transmission Request (RTR) CAN Remote Frame sau de un eveniment intern al dispozitivului definit in OD (timer, schimbarea valorii de intrare, etc.)

*SYNC receptionat obiectul SYNC, *RTR receptionat RTR, *Event eveniment intern

Comunicatia CANopen
17

Comunicatia CANopen
18

Comunicatia CANopen
19

Mesaje

predefinite cu functii speciale Mesajul SYNC este un mesaj de sincronizare pentru nodurile din retea Un nod master trimite mesaje SYNC periodic cu prioritate mare De asemenea, pentru eficienta, acestea nu contin biti de date Mesajul Time Stamp (TIME) asigura aceeasi referinta de timp pentru dispozitivele din retea Emergency (EMCY) Este generat de o eroare interna a dispozitivului

Comunicatia CANopen
20

In figura avem reprezentata relatia dintre comunicatia CAN, OD si aplicatie intr-un dispozitiv CANopen In tabelul urmator este reprezentata o cerere a unui master catre doi senzori de a citi datele acestora prin mesaj SYNC

Comunicatia CANopen
21

Pentru a facilita implementarea unor retele simple, CANopen defineste un set implicit de conexiuni Acesta poate fi extins prin configurari suplimentare Setul implicit include 4 mesaje TPDO si 4 mesaje RPDO, 1 mesaj SDO (care ocupa 2 identificatori datorita raspunsului), 1 mesaj Emergency si 1 mesaj Node Error Control Identifier Alocarea identificatorilor se face dupa urmatoarea schema: cei 11 biti ai identificatorului sunt inpartiti in 4 biti care definesc functia si 7 biti care reprezinta ID-ul nodului

Comunicatia CANopen
22

Scema de alocare rezultata este prezentata in tabelul urmator:

Comunicatia CANopen
23

Distribuirea identificatorilor se poate face in 3 moduri:


Folosind

configuratia predefinita Modificand identificatorii PDO folosind mesajul SDO predefinit pentru a scrie noi valori in OD Folosind DBT definit in CAL

Particularitati CANopen:
Descriere

standardizata a comportarii dispozitivelor Schimbul de date si administrarea bazat pe CAL CMS Definirea operatiilor sincrone Definirea mesajelor de urgenta specifice fiecarui nod

DeviceNet
24

DeviceNet este un protocol de comunicatie folosit in retelele industriale, avand ca baza reteaua CAN DeviceNet a fost dezvoltat de compania Allen-Bradley prin adaptarea tehnologiei ControlNet pentru a beneficia de avantajele CAN DeviceNet este folosit pentru a transporta doua tipuri de informatii:

Date

ciclice de la instrumente, senzori, etc., direct legate de control Date non-ciclice cum ar fi diagnoza si configurare

DeviceNet
25

DeviceNet este un protocol de comunicatie folosit in retelele industriale, avand ca baza reteaua CAN DeviceNet a fost dezvoltat de compania Allen-Bradley prin adaptarea tehnologiei ControlNet pentru a beneficia de avantajele CAN DeviceNet este un standard deschis, spijinit de ODVA (Open DeviceNet Vendors Association) DeviceNet este folosit pentru a transporta doua tipuri de informatii:

Date

ciclice de la instrumente, senzori, etc., direct legate de control Date non-ciclice cum ar fi diagnoza si configurare

DeviceNet
26

DeviceNet
27

DeviceNet utilizeaza pentru nivelurile superioare protocoalele CIP (Common Industrial Protocols) In acest mod se asigura compatibilitatea cu mai multe standarde industriale (Ethernet, ControlNet) care difera doar la nivelurile inferioare ale modelului OSI CIP sunt astfel independente de nivelurile fizic si de date Aceste tipuri de retele folosesc un model comun de obiecte Rolurile CIP sunt de a transporta date de control dispozitivelor si de a transmite date de configurare si diagnoza sistemului

DeviceNet
28

Modelul obiect in DeviceNet


29

Un nod este modelat ca o colectie de obiecte Un obiect reprezinta o abstractizare a unei anumite componente Exista obiecte obligatorii, prezente in fecare dispozitiv si obiecte optionale care diferentiaza dispozitivele in functie de clasa lor Pentru a fi diferite, fiecare dispozitiv va avea propriul sau set de obiecte Aceste obiecte sunt definite in CIP

Modelul obiect in DeviceNet


30

Un nod este modelat ca o colectie de obiecte Un obiect reprezinta o abstractizare a unei anumite componente Exista obiecte obligatorii, prezente in fecare dispozitiv si obiecte optionale care diferentiaza dispozitivele in functie de clasa lor Pentru a fi diferite, fiecare dispozitiv va avea propriul sau set de obiecte Aceste obiecte sunt definite in CIP

Nivelul de date
31

Nivelul de date intr-o retea DeviceNet este bazat pe CAN Astfel beneficiaza de avantajele acestuia, cum ar fi costul redus, overhead mic, comunicatie real-time Structura unui frame este aceeasi cu cea de la CAN

Topologia de retea
32

Reteaua prezinta o magistrala principala la care sunt conectate dispozitivele, fie direct, fie in grup Lungimea maxima a magistralei si a conexiunilor difera in functie de viteza de transfer necesara

Topologia de retea
33

Dupa cum se vede, lungimea maxima scade pe masura ce rata de transfer creste De asemenea, aceasta lungime depinde si de tipul cablului folosit

Cabluri si conectori
34

DeviceNet foloseste ca mediu de transmisie CAN, insa standardul CAN nu defineste tipurile de cablu sau conectori folositi De acees, DeviceNet defineste aceste medii de transmisie Exista patru tipuri de cabluri folosite in DeviceNet, clasificate in functie de grosime: gros, mediu subtire si plat Dintre acestea, cele mai folosite sunt cel gros pentru magistrala si cel subtire pentru conexiuni

Cabluri si conectori
35

Cabluri si conectori
36

Cabluri si conectori
37

Cablurile cele mai folosite contin 5 conductori

Cabluri si conectori
38

Exista 3 tipuri principale de conectori: open, mini si micro

Conector open

Conector mini

Conector micro

Cabluri si conectori
39

Un element foarte important in aceste retele il reprezinta terminatorii de retea Acestia su rolul de a minimiza reflexiile de transmisie Fizic se folosesc rezistente cu specificatiile definite in standardul CAN Acestia nu trebuiesc plasati in interiorul unui dispozitiv aflat la capatul retelei Daca acest dispozitive cedeaza sau este inlocuit, reteaua nu mai functioneaza