Florin Virdau – descrierea magistralei CAN la locul de munca
Principala mea sarcina la locul de munca este caracterizarea hardware.
Caracterizarea hardware este definita ca identificarea principalelor caracteristici ale unui dispozitiv. Sa presupunem, spre exemplu, cazul unui ECU (Electronic control unit) din interiorul unui autovehicul. Astfel, caracterizarea hardware pentru acest dispozitiv ar presupune sa vedem cum se comporta dispozitivul in anumite conditii pentru a-l putea modela. Pentru a-l putea modela, o serie de parametri ar fi necesar sa fie masurati, spre exemplu: curenti de scurgere, capacitante, timpi de activare/dezactivare/stabilizare a anumitor functionalitati, curenti maximi/minimi de intrare/iesire, tensiuni minime/maxime de intrare/iesire.
Eu folosesc magistrala CAN la locul de munca pentru a interconecta ECU-ul
(Electronic Control Unit) testat cu PC-ul prin intermediul unui CANcase/Vector Analyser (este un dispozitiv care contine in interiorul sau unul sau mai multe circuite de tipul transmisie-receptie, numite si transceivere de tipul LIN/CAN si actioneaza si ca o punte CAN/LIN-to-USB pentru a putea transmite mesaje pe PC ce pot fi interpretate intr-o interfata grafica). Interfata grafica folosita sau tool-ul unde mesajele trimise de catre ECU privind statusul unei functionalitati sau spre ECU pentru activarea/dezactivarea unei functionalitati pot fi vizualizate poarta numele de CANoe. CANoe este un tool software folosit de producatorii de automobile si de furnizorii de ECU-uri pentru dezvoltarea, testarea, simularea, analiza si pornirea multiplelor retele de ECU-uri sau ECU-ul individual. In spatele fiecarei simulari de CANoe stau la baza doua arhitecturi: arhitectura hardware (care permite activarea/dezactivarea anumit noduri din interiorul retelei CAN/LIN) si arhitectura software (cea care defineste legatura dintre aceste noduri de retea). Nivelul fizic al protocolului CAN consta din doua fire torsadate pentru a elimina preturbatiile electromagnetice. Cum am precizat mai sus conexiune dintre PC si ECU se face prin intermediul unei punti CAN-to-USB. ECU-ul se conecteaza la transceiverul de CAN/LIN din interiorul CANcase/Vector Analyser-ului prin intermediul unui conector de tipul DB9 in care repartitia pinilor este urmatoarea: pinul 2 este nivelul de tensiune joasa al protocolului CAN, pinul 7 este nivelul de tensiune inalta al protocolului CAN si pinul 3 este pinul de masa. Totodata pentru a elimina reflexiile ce ar putea induce efecte nedorite pe liniile de CAN H/L se adauga o impedanta de 120 de ohmi intre cele 2 fire pentru a creste impedanta. Conform teoremei transferului maxim de putere impedanta dintre transmitator si recepetor trebuie sa fie aceeasi pentru a nu exista reflexii. Cea de-a doua impedanta de 120 de ohmi se regaseste pe ECU la transceiverul de CAN aflat pe PCB. Mai departe pentru a realiza conexiunea cu PC-ul, Vector Analyser-ul/CANcase-ul vine conectat la acesta prin intermediul unui conector USB. Pentru a putea transmite/receptiona mesaje in/din CANoe spre/dinspre ECU este necesara o asignare a transceiverelor din interiorul Vector Analyser-ului/CANcase-ului. In functie de aplicatia dispozitivului acesta poate dispune de unul sau mai multe retele de CAN/LIN. Astfel este nevoie de o asignare in CANoe a numarului de transceivere folosite. Sa presupunem, spre exemplu, cazul unui ECU care contine 2 retele de CAN. Astfel, la nivel fizic vom avea nevoie de 2 perechi de fire torsadate si totodata 2 conectori de tipul DB9 care vor fi conectati la intrari diferite ale CANcase/Vector Analyser-ului. Diferenta dintre CANcase si Vector Analyser o reprezinta numarul de tranceivere din interiorul lor. Astfel, CANcase-ul contine de obicei un transceiver de CAN si unul de LIN, iar Vector Analyser-ul contine de obicei doua transceivere de CAN si doua de LIN. Astfel, pentru cazul de mai sus in care ECU-ul prezinta doua retele de CAN vor trebui ca in CANoe sa fie definite doua arhitecturi Hardware si doua arhitecturi Software pentru fiecare retea de CAN si va trebui sa atribuim pentru fiecare canal hardware (transceiver fizic) de pe placa cate un canal logic pentru aplicatia din CANoe. In CANoe pot fi citite mesaje despre activarea/dezactivarea semnalelor de intrare/iesire, statusuri ale acestora, parametri ale retelei respective de CAN (timpi de transmisie/receptie, numar de frame-uri transmise, totale sau intr-un interval de timp, etc.).