CAN
CAN (Controller Area Network) je sběrnice, využívaná nejčastěji pro vnitřní komunikační síť senzorů a funkčních jednotek v automobilu. Z této aplikační oblasti se CAN rychle rozšířil také do sféry průmyslové automatizace. Jedná se o sériovou datovou sběrnici, vyvinutou firmou Robert Bosch GmbH. Elektrické parametry fyzického přenosu jsou specifikované normou ISO 11898. Maximální teoretická rychlost přenosu na sběrnici je 1 Mb/s.
Protokol: Síťový protokol detekuje a opravuje přenosové chyby vzniklé od okolních elektromagnetických polí. Data se odesílají v rámcích, každý rámec může obsahovat až 8 datových bajtů. Každý rámec obsahuje identifikátor, u sběrnice CAN neexistuje žádná adresa. Obsah zprávy je dán pouze identifikátorem. 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. Jedna zpráva může být přijata několika zařízeními.
Přenos dat: Specifikace sběrnice CAN užívají termíny jako dominantní a ustupující bity, ve kterém dominantní bit je logická 0 (aktivně řízen napětím vysílače) a ustupující je logická 1 (pasivně vybitá do zdroje přes rezistor). Stav nečinnosti je reprezentován ústupovou úrovní, tím pádem logickou 1. Pokud jeden uzel vysílá dominantní bit a další uzel vysílá ustupující bit, naskytla se zde kolize a větší prioritu má dominantní bit. To ve výsledku znamená, že zde není žádné zpoždění pro zprávy vysoké priority a uzel, který vysílal ustupující bit, se automaticky pokusí o opětovné přeposlání po šesti bitech hodinového signálu, po ukončení přenosu dominantní zprávy. Tímto se CAN stává velmi vhodným komunikačním systémem pro komunikaci v reálném čase. Přesná napěťová úroveň pro logickou 1 a logickou 0 závisí na použité fyzické vrstvě, ale základní principy CAN požadují, aby každý uzel naslouchal data v CAN síti, včetně dat, která jsou vysílána vysílacím uzlem.
ID zpráv musí být na každé sběrnici CAN unikátní, jinak by 2 uzly mohly pokračovat v odesílání až za konec arbitračního pole (ID) a způsobit chybu.