Synchronizace zpráv (rámců) z MEMs systémů na CAN sběrnici
Obsah Zadání ...................................................................................................................................................... 3 Úvod ........................................................................................................................................................ 3 MEMs....................................................................................................................................................... 3 Popis software pro USB2CAN .................................................................................................................. 3 Popis měřicích modulů (MEMs akcelerometrů) ...................................................................................... 5 Popis MEMs systému (akcelerometru) MMA7456 ................................................................................. 7 Popis SPI komunikace .............................................................................................................................. 8 Popis komunikačních rámců pro MEMs moduly ..................................................................................... 9 Kontrolní otázky .................................................................................................................................... 11
Zadání 1. Seznamte se s prvky laboratorní úlohy demonstrující možnosti synchronizace měřicích modulů na CAN sběrnici. 2. Seznamte se s převodníkem USB2CAN a s možnosti softwarové podpory pro tento převodník, sestavte konfigurační rámce pro jednotlivé měřicí moduly. 3. Připojte minimálně 2 měřicí moduly na CAN sběrnici a proveďte základní měření (ověření) funkčnosti snímačů. 4. Proveďte současné měření na dvou snímačích. Vytvořte sled příkazových CAN rámců umožňující automatické čtení aktuálních zrychlení v jednotlivých MEMs modulech. Zohledněte vzorkovací periodu. 5. Vytvořte sled příkazových CAN rámců umožňující automatické čtení aktuálního zrychlení z vybraného MEMs systému pro různé vzorkovací frekvence. 6. Vyjádřete se k výsledkům měření.
Úvod CAN je dvouvodičová sériová datová sběrnice vyvinutá firmou Bosch. Použitá přenosová cesta může být tvořena kroucenou dvojlinkou. Elektrické parametry fyzického přenosu jsou specifikované normou ISO 11898. CAN protokol odpovídá datovému přenosu vrstvy v ISO/OSI referenčním modelu. Síťový protokol detekuje a opravuje přenosové chyby vzniklé od okolních elektromagnetických polí. Dovoluje snadné nastavení (konfiguraci) systému a umožňuje centrální diagnostiku. Obsah zprávy je dán identifikátorem (ID), který je v celé síti jedinečný. Tento identifikátor definuje obsah přenášené zprávy a zároveň i prioritu zprávy při pokusu o její odeslání na sběrnici. Vyšší prioritu mají zprávy s nižší hodnotou identifikátoru. Příjem zpráv může být mnohonásobný (jedna zpráva může být přijata několika zařízeními). Maximální rychlost přenosu je na sběrnici 1Mbit/sec. Bližší informace viz specifikace CAN.
MEMs Produkty MEMs vychází z možností MEMs technologie a jedná se především o pohybové senzory (akcelerometry, gyroskopy…), ale i mikročerpadla, mikropohony, mikrocívky aj. V souvislosti s těmito produkty se hovoří o systému na čipu nebo také o inteligentním snímači, jelikož je zde přítomen jak mechanický subsystém (nutný pro transformaci fyzikální podstaty na elektrickou veličinu), tak elektronický subsystém zajišťující následné zpracování, neboli postprocessing (zesílení, saturace, filtrace aj.).
Popis software pro USB2CAN USB2CAN je adaptér pro připojení sběrnice CAN k PC prostřednictvím USB. Toto zařízení je inovovanou variantou CAN bus převodníku PP2CAN. Zařízení využívá pro komunikaci po USB obvodu firmy FTDI. Jako CAN bus controller je použit obvod SJA1000, který je dnes standardem pro CAN - PC interface. Mezi tyto dva obvody je vložen mikroprocesor PIC řady 18, který zajišťuje obsluhu obou obvodů, provádí transformaci dat a slouží jako další vrstva vyrovnávací paměti. Tento mikroprocesor obsahuje bootloader a dovoluje provádět update originálního firmware, případně zavádět specializovaný uživatelský firmware [ http://www.usb2can.wz.cz/].
Obr. 1 Modul USB2CAN
Obr. 2 Hlavní okno aplikace Okno aplikace USBCAN je rozděleno do několika částí. Nejdůležitější částí jsou v následujícím seznamu:
Menu programu, kde jsou k dispozici jednotlivé nástroje pro analýzu komunikace, nástroje pro generování dat apod. Okno logu přijatých zpráv Okno logu manuálně odeslaných zpráv Okno pro zobrazení hlášení programů Okno databáze předdefinovaných zpráv Pomocná lišta (ResetCAN, Reset Logu …) Okno pro nastavení a manuální odeslání zprávy na CAN Okno pro práci s databází předdefinovaných zpráv Okno pro práci s výběrem více předdefinovaných zpráv.
Obr. 3 Okno cyklického zasílání rámců na CAN sběrnici
Obr. 4 Okno grafického zobrazení dílčích Bytů CAN rámce Bližší popis naleznete v manuálu pro jednotku nebo na adrese http://pp2can.wz.cz/pages/download/pp2can/Diagnosticky%20SW%20PP2CAN%20CZ.pdf. Pro nás důležitými záložkami jsou záložky „Senders“ a „Receivers“. Pomocí těchto záložek lze cyklicky posílat např. zprávy, které obsahují 8 bytů datového rámce.
Popis měřicích modulů (MEMs akcelerometrů) Celý měřicí systém je sestaven s MEMs akcelerometru firmy freescale. Blokové schéma celého systému je na obr. 5. Celý systém je složeny z několika měřicích modulů umístěných na specifických místech např. káry. Jednočipový procesor realizuje komunikační most mezi MEMs systémem a CAN sběrnici. Tento jednočipový procesor obsahuje, jak SPI komunikaci (komunikace ze strany MEMs systému), tak i modul pro CAN komunikaci (strana komunikace s nadřazeným systémem). Pro vyhodnocení naměřených dat je možno využít např. software USB2CAN. Základem komunikační jednotky je jednočipový procesor řady PIC (PIC16F258), jehož součástí je i modul určený pro CAN komunikaci. Pro unifikaci signálů pro fyzickou vrstvu je použit převodník MCP2551. Součástí tohoto jednočipového počítače je i modul podporující SPI a I2C komunikaci. S ohledem na požadovanou rychlost SPI komunikace je vytvořen softwarový komunikační modul, pracující na maximální rychlosti procesoru. Ta je dána 16 MHz krystalem. Schéma zapojení je na obr. 6.
Obr. 5 Schéma zapojení desky senzoru
Obr. 6 Schéma zapojení komunikační desky na basi PIC
Vývody desky tištěného spoje jsou vyvedeny na vnější okraje. Desky s MEMs systémy mají vývody umístěny také na okraj podle významu signálu. To umožňuje připojení různých typů těchto senzorů. Podle typu senzoru je třeba vložit patřičný firmware do jednočipového počítače, který umožňuje komunikaci s vybranými MEMs systémy.
SPI bus
……..
DSP
DSP
s MMA7456L
s MMA7456L
Modul 1
CompactRIO
SPI bus
USB2CAN
DSP s PIC18F258
NI 9853
DSP s PIC18F258
USB
Modul 2
TCP/IP
Obr. 7 Blokové schéma úlohy
Popis MEMs systému (akcelerometru) MMA7456 Použité MEMs systémy jsou tříosé akcelerometry firmy freescale komunikující meziobvodovou komunikaci SPI. Na následujícím obrázku je mapa registrů těchto akcelerometrů. Bližší popis lze najít v pdf souboru pro daný akcelerometr [http://www.freescale.com/files/sensors/doc/data_sheet/ MMA7456L.pdf].
Obr. 8 Mapa registrů MEMs senzoru
Obr. 9 Hodnoty registrů (měřicích) pro různé rozsahy
Popis SPI komunikace SPI je meziobvodová komunikace využívána v tomto případě na přenos dat z MEMs systému do komunikačního modulu. Základem komunikace jsou signály CS\, SDI, SDO, SPC. Signál CS\ slouží k výběru obvodu, se kterým bude obvod komunikovat. Signál SPC jsou hodinové pulsy synchronizující sériový přenos jednotlivých bitů z MEMs systému do komunikačního modulu na basi PIC. Signály SDI a SDO jsou určeny pro přenos obsahu jednotlivých bitů (dat). Při třívodičovém spojení je SDI a SDO spojen do jednoho vodiče. V této konfiguraci je třeba zajistit přepínání směru toku dat na straně jednočipu (komunikačního modulu). Na následujícím obrázku je grafické znázornění přenosu dat po SPI.
Obr. 10 Příklad SPI komunikace s reálnými průběhy
Obr. 11 Čtení 8-mi bitových registrů ve 4 vodičovém zapojení (MMA7456)
Obr. 12 Čtení 8-mi bitových registrů v 3 vodičovém zapojení
Popis komunikačních rámců pro MEMs moduly Všechny senzory s komunikačním modulem jsou připojeny na CAN sběrnici. Pomocí software USB2CAN můžeme konfigurovat a číst data z jednotlivých modulů. Lze přistupovat až k registrům jednotlivých MEMs systémů. Pokud chceme přečíst jen aktuální zrychlení všech senzorů připojených na sběrnici, musíme poslat rámec s ID 1, který obsahuje jako 1. Byte 255. Pokud chceme komunikovat jen s vybraným senzorem na sběrnici CAN, musíme nastavit v 1. Byte rámce s ID 1 hodnotu ID_modulu. Pak následuje selekce čtení/zápis apod. Následují hodnoty podle funkce. Všechny dotazy a odpovědi jsou popsáno v následujících tabulkách. Senzor odpoví jen jedním rámcem ze snímače. ID od modulu mastr (nadřazená úroveň) je vždy 1. Tab. 1 Popis rámců vysílaných z modulu mastr (dotaz) Byte
B0
B1
B2
B3
B4
B5
B6
B7
C1 C2 C3 C4 C5
255 ID_m ID_m ID_m ID_m
x 128 1 15 240
x x ms Adr Adr
x x us Hod x
x x x x x
x x x x x
x x x x x
x x x x x
čtení ze všech připojených čtení jen z jedné desky nastaveni časových int. zápis do registrů senzorů čtení z registrů senzorů
Tab. 2 Popis rámců vysílaných z modulu slave (odpověď)
Byte
B0
B1
B2
B3
B4
B5
B6
B7
hod
x
x
x
x
x
x
YL
YH
ZL
ZH
POC
DRDY vrací tento rámec při čtení
Po příkazu C5 adr
čtení z registrů senzorů
Po příkazu C1 a C2 XL
XH
Obr. 13 Umístění senzoru na vozidle
Obr. 14 Řídicí (koordinační) jednotka C Rio
Obr. 14 Aplikace pro konfiguraci řídicího systému a záznam dat v prostředí LabView
Kontrolní otázky 1. Z čeho je složený komunikační rámec na CANu? 2. Co je to SPI komunikace? Vysvětlete princip komunikace. 3. Jakým způsobem jsou prezentované záporná čísla v PC?
Literatura ANALOG DEVICES 2007. MEMS and Sensors - iMEMS Gyroscopes, [online] available from web: http://www.analog.com. KIONIX 2007. Mems inertial sensors, product specification, [online] available from web: http://www.kionix.com. ŠKUTA, J., BABIUCH, M. 2007. Usage of serial interface for communication with MEMS components. In Proceedings of 8th International Carpathian Control Conference ICCC’2007. Štrbské Pleso: TU Košice, May 24-27, 2007, pp. 705-708. ISBN 978-80-8073-805-1. CONTROL WEB 5. 2007. CW 5 Development system specification - Moravské přístroje, a.s., Available from www:
. VACEK, V. 2007. Praktické použití procesoru PIC. Praha, BEN-technická literatura, ISBN 80-86056-56-7.