Съдържание: Основна информация ↡ Предимства ↡ Формат на пакета данни ↡ Приоритети ↡ Пример ↡ Разпознаване на грешки ↡ Механизми на ниво Data Frame ↡ Механизми на битово ниво ↡ Отстраняване на неизправности ↡ Видове CAN шини ↡ CAN C - автобус "Двигател и шаси" ↡ CAN B - автобус "Салон" ↡
Обмен на данни чрез CAN шина
B - Сензор 1; CAN - Шина за данни; M - Актуатори I - III (сервомеханизми); N - Блокове за управление (контролери) I-V
Основна информация
Превозното средство използва няколко CAN мрежови шини за обмен на данни (Controller Area Network) между управляващи блокове (модули) на различни системи и контролери на изпълнителни механизми на превозни средства.
Отделните контролни блокове са свързани помежду си в обща мрежа и могат да обменят данни.
(Материал, заимстван от онлайн ресурс: MercedesMAN.ru)
Автобусът е двупосочен, т.е. всяко свързано към него устройство може да получава и предава съобщения.
Сигналът от чувствителния елемент (сензор) постъпва в най-близкия контролен блок, който го обработва и предава на CAN шината за данни.
Всеки управляващ блок, свързан към CAN шината за данни, може да прочете този сигнал, да изчисли стойността на управляващото действие въз основа на него и да управлява сервомеханизма на задвижването.
Предимства
С конвенционалното окабеляване на електрически и електронни устройства, всеки контролен блок е директно свързан към всички сензори и изпълнителни механизми, от които получава измервания или ги управлява.
Нарастващата сложност на системата за управление води до прекомерна дължина или множество кабелни линии.
В сравнение със стандартното окабеляване, шината за данни осигурява:
- Намаляване на броя на кабелите. Проводниците от сензорите се простират само до най-близкия контролен блок, който преобразува измерените стойности в пакет от данни и ги предава към CAN шината.
- Актуаторът може да се управлява от всеки управляващ блок, който получава съответния пакет данни по CAN шината и на негова база изчислява стойността на управляващото въздействие върху сервомеханизма.
- Подобрена електромагнитна съвместимост.
- Намаляване на броя на щепселните връзки и намаляване на броя на контактните щифтове на контролните блокове.
- Загуба на тегло.
- Намаляване на броя на сензорите, т.к сигнали от един сензор (например от сензора за температура на охлаждащата течност) може да се използва от различни системи.
- Подобрени диагностични възможности. защото сигнали от един сензор (например сигнал за скорост) се използват от различни системи, тогава ако съобщение за грешка се издаде от всички системи, използващи даден сигнал, обикновено сензорът или управляващият блок, който обработва сигналите, е повреден. Ако съобщение за неизправност идва само от една система, въпреки че този сигнал се използва и от други системи, тогава причината за неизправността най-често се крие в блока за управление на обработката или сервомеханизма.
- Висока скорост на трансфер на данни - до 1 Mbit/s е възможна с максимална дължина на линията от 40 m. В момента скоростта на трансфер на данни варира от 83 Kbit/s до 500 Kbit/s.
- Няколко съобщения могат да се предават последователно по една и съща линия.
Шината за данни CAN се състои от двужилен проводник, направен под формата на усукана двойка. Всички устройства са свързани към тази линия (блокове за управление на устройството).
Предаването на данни се извършва с дублиране на двата проводника, а логическите нива на шината за данни имат огледален образ (тоест, ако по един проводник се предава ниво на логическа нула (0), тогава ниво на логическа единица (1) е предавани по другия проводник и обратно).
Двупроводната верига за предаване се използва по две причини: за откриване на грешки и като основа за надеждност.
Ако възникне скок на напрежението само на един проводник (например поради проблеми с EMC (електромагнитна съвместимост)), тогава приемните устройства могат да идентифицират това като грешка и да игнорират този скок на напрежението.
Ако има късо съединение или прекъсване на един от двата проводника на CAN шината за данни, тогава благодарение на интегрираната софтуерна и хардуерна система за надеждност, системата ще премине в еднопроводен режим на работа. Повреден електропровод няма да се използва.
Редът и форматът на това, което се предава и получава от потребителите (абонати) съобщения е дефинирано в комуникационния протокол.
Съществена отличителна черта на CAN шината за данни в сравнение с други шинни системи, базирани на принципа на адресиране на абонати, е адресирането, свързано със съобщенията.
Това означава, че на всяко съобщение по CAN шината за данни се присвоява постоянен адрес (идентификатор), маркирайки съдържанието на това съобщение (например: температура на охлаждащата течност). Протоколът на CAN шина за данни позволява предаване на до 2048 различни съобщения, като адресите от 2033 до 2048 са постоянно присвоени.
Обемът на данните в едно съобщение през CAN шината за данни е 8 байта.
Блокът на приемника обработва само тези съобщения (пакети данни), които се съхраняват в неговия списък със съобщения, получени през CAN шината за данни (приемен контрол).
Пакетите данни могат да се предават само ако CAN шината за данни е свободна (т.е. ако последният пакет данни е бил последван от интервал от 3 бита и нито едно управляващо устройство не започне да предава съобщение).
В този случай логическото ниво на шината за данни трябва да е рецесивно (логическа "1").
Ако няколко управляващи блока започнат да предават съобщения едновременно, влиза в сила принципът на приоритета, според който съобщението по CAN шината за данни с най-висок приоритет ще бъде предадено първо без загуба на време или битове (арбитраж на заявки за достъп до общата шина за данни).
Всяко управляващо устройство, което губи арбитражни права, автоматично превключва на получаване и се опитва отново да изпрати своето съобщение веднага щом CAN шината за данни отново се освободи.
В допълнение към пакетите данни има и пакет заявка за конкретно съобщение по CAN шината за данни.
В този случай контролният блок, който може да предостави заявения пакет данни, отговаря на това искане.
Формат на пакета данни
В нормален режим на предаване пакетите данни имат следните блокови конфигурации (рамки):
- Data Frame (рамка на съобщение) за предаване на съобщения през CAN шината за данни (например: температура на охлаждащата течност).
- Remote Frame (рамка за заявка) за да поискате съобщения през CAN шината за данни от друго управляващо устройство.
- Error Frame (рамка за грешка) всички свързани контролни модули се уведомяват, че е възникнала грешка и последното съобщение по CAN шината за данни е невалидно.
Протоколът на CAN шина за данни поддържа два различни формати на съобщения на CAN шина за данни, които се различават само по дължината на идентификатора:
- стандартен формат;
- разширен формат.
В момента DaimlerChrysler използва само стандартния формат.

Пакетът данни за предаване на съобщения през CAN шината за данни се състои от седем последователни полета:
- Start of Frame (начален бит): Маркира началото на съобщение и синхронизира всички модули.
- Arbitration Field (лична карта и заявка): Това поле се състои от идентификатор (адрес) от 11 бита и 1 бит за проверка (Remote Transmission Request-Bit). Този контролен бит маркира пакета като рамка с данни (рамка на съобщение) или като отдалечена рамка (рамка за заявка) няма байтове данни.
- Control Field (контролни битове): Контролното поле (6 бита) съдържа IDE бит (Identifier Extension Bit) за разпознаване на стандартния и разширения формат, резервен бит за последващи разширения и - в последните 4 бита - броя на байтовете данни, съхранени в полето за данни (поле за данни).
- Поле с данни: Полето с данни може да съдържа от 0 до 8 байта данни. Съобщение на CAN шината за данни с дължина 0 байта се използва за синхронизиране на разпределени процеси.
- CRC Field (контролно поле): CRC поле (Cyclic-Redundancy-Check Field) съдържа 16 бита и се използва за разпознаване на контролни грешки по време на предаване.
- ACK Field (потвърждение за приемане): ACK поле (Acknowledgement Field) съдържа сигнал за потвърждение за всички приемници, които са получили съобщение през CAN шината без грешки.
- End of Frame (край на рамката): Маркира края на пакет с данни.
- Прекъсване: Интервал между два пакета данни. Интервалът трябва да бъде поне 3 бита. След това всяко управляващо устройство може да предаде следващия пакет данни.
- IDLE (режим на почивка): Ако нито едно управляващо устройство не предава съобщения, CAN шината остава в неактивен режим до предаването на следващия пакет данни.
Приоритети
За да се обработват данни в реално време, трябва да е възможно бързото им предаване.
Това изисква не само наличието на линия с висока физическа скорост на трансфер на данни, но също така изисква бърз достъп до обща CAN шина, ако няколко контролни блока трябва да предават съобщения едновременно.
За да се разграничат съобщенията, предавани по CAN шината за данни според степента на спешност, са предвидени различни приоритети за отделните съобщения.
Моментът на запалване, например, има най-висок приоритет, стойностите на приплъзване имат среден приоритет, а температурата на външния въздух е с най-нисък приоритет.
Приоритетът, с който едно съобщение се предава по CAN шината, се определя от идентификатора (адреса) на съответното съобщение.
Идентификаторът, съответстващ на по-малко двоично число, има по-висок приоритет и обратно.
Протоколът на CAN шината за данни се основава на две логически състояния: битовете са или "рецесивни" (логически "1") или "доминиращи" (логически "0"). Ако доминиращ бит се предава от поне един модул, тогава рецесивните битове, предавани от други модули, се презаписват.
Пример
Ако няколко контролни блока едновременно започнат да предават данни, конфликтът за достъп до общата шина за данни се разрешава чрез "битово базиран арбитраж на заявки за споделен ресурс", като се използват съответните идентификатори.
При предаване на поле за идентификатор предавателното устройство след всеки бит проверява дали все още има право да предава или друго управляващо устройство вече предава съобщение с по-висок приоритет по CAN шината за данни.
Ако рецесивният бит, предаден от първия предавателен блок, се презапише от доминиращия бит на друг предавателен блок, тогава първият предавателен блок губи правото си на предаване (арбитраж) и се превръща в приемен блок.

Първият контролен блок (NI) губи арбитраж от 3-тия бит.
Третият контролен блок (N III) губи арбитраж от 7-ия бит.
Второто управляващо устройство (N II) запазва правото на достъп до CAN шината за данни и може да предава своето съобщение.
Други управляващи блокове ще се опитат да предадат своите съобщения през CAN шината за данни само след като тя отново е свободна. В този случай правото на предаване отново ще бъде дадено в съответствие с приоритета на съобщението по CAN шината за данни.
Разпознаване на грешки
Смущенията могат да доведат до грешки при предаването на данни. Такива грешки при предаване трябва да се разпознават и коригират.
Протоколът на CAN шина за данни разграничава две нива на откриване на грешки:
- механизми на ниво Data Frame (рамка на съобщение);
- механизми на битово ниво.
Механизми на ниво Data Frame
Cyclic-Redundancy-Check
Въз основа на съобщението, предадено през CAN шината за данни, предавателят изчислява контролни битове, които се предават заедно с пакета данни в полето "CRC поле" (контролни суми). Приемникът преизчислява тези контролни битове въз основа на съобщението, получено по CAN шината за данни, и ги сравнява с контролните битове, получени заедно с това съобщение.
Frame Check
Този механизъм проверява структурата на предавания блок (кадър), т.е. битовите полета с даден фиксиран формат и дължината на кадъра се проверяват отново.
Грешките, открити от Frame Check, се маркират като грешки във форматирането.
Механизми на битово ниво
Мониторинг
Всеки модул при предаване на съобщение следи логическото ниво на CAN шината за данни и определя разликите между предадените и получените битове. Това гарантира надеждна идентификация на глобални и локални битови грешки, възникващи в предавателното устройство.
Bit Stuffing
Във всеки пакет данни между полето "Start of Frame" и краят на "CRC полето" трябва да бъде не повече от 5 последователни бита с еднаква полярност.
След всяка последователност от 5 идентични бита предавателният блок добавя един бит с противоположна полярност към битовия поток.
Приемниците изчистват тези битове след получаване на съобщение по CAN шината за данни.
Отстраняване на неизправности
Ако някой модул на CAN шина за данни открие грешка, той прекъсва текущия процес на пренос на данни, като изпраща съобщение за грешка. Съобщението за грешка се състои от 6 доминиращи бита.
Благодарение на съобщението за грешка, всички управляващи устройства, свързани към CAN шината за данни, се уведомяват за локална грешка и съответно игнорират предварително предаденото съобщение.
След кратка пауза всички управляващи блокове отново ще могат да изпращат съобщения през CAN шината за данни, като първо се изпраща отново съобщението с най-висок приоритет.
Блокът за управление, чието съобщение по CAN шината за данни е причинило грешката, също започва да препредава своето съобщение (функция за автоматично повторение).
Видове CAN шини
За различни зони на управление се използват различни CAN шини. Те се различават един от друг по скоростта на пренос на данни.
Скоростта на предаване на CAN шината за данни на двигателя и шасито (CAN-C) е 125 kbit/s, докато вътрешната CAN шина за данни (CAN-B) е проектирана за скорост на предаване от само 83 kbit/s поради по-малкия брой на особено спешни съобщения /С.
Обменът на данни между две шинни системи се осъществява чрез така наречените "шлюзове", т.е. контролни блокове, свързани към двете шини за данни.
D2B оптична шина (Digital Daten-Bus) данни, приложени към областта "Аудио/Комуникации/Навигация". Оптичният кабел може да предаде значително по-голямо количество информация от шина с меден кабел.
CAN C - автобус "Двигател и шаси"
В блока за управление на терминала, от всяка страна има така наречения терминиращ резистор на шината за данни със съпротивление 120 ома, свързан между двата проводника на шината за данни.
CAN шината за данни на двигателното отделение се активира само при включено запалване.
Към CAN-C шината са свързани 7 блока за управление.
CAN B - автобус "Салон"
Някои контролни блокове, свързани към вътрешната CAN шина за данни, се активират независимо от включеното запалване (например: система с едно заключване).
Следователно вътрешната CAN шина за данни трябва да бъде в режим на функционална готовност дори когато запалването е изключено, което означава, че трябва да се осигури възможност за предаване на пакети данни дори когато запалването е изключено.
За да се намали максимално потреблението на ток на покой, CAN шината за данни, при липса на пакети данни, необходими за предаване, преминава в пасивен режим на готовност и се активира отново само при следващия достъп до нея.
Ако в пасивен режим на готовност на вътрешната CAN шина за данни всеки контролен блок (напр. блок за управление на едно заключване) предава съобщение по CAN шината за данни, то се получава само от основния системен модул (електронен ключ за запалване, EZS). Устройството EZS съхранява това съобщение в паметта и изпраща сигнал за събуждане до всички управляващи блокове, свързани към вътрешната CAN шина за данни.
Когато е активиран, EZS проверява присъствието на всички потребители на CAN шина за данни и след това предава съобщението, което преди това е съхранено в паметта.
Към CAN-B шината са свързани 20 контролни блока.
Елементи на комуникационна мрежа (CAN)

| CAN B (салон) | |
| К1 | Преден блок за регистрация и управление с кутия за предпазители и релета (SAM/SRB-V) |
| К2 | Заден регистрационен и контролен блок с кутия за предпазители и релета (SAM/SRB-H) |
| К3 | Блок за управление на лявата седалка (SSG) |
| К4 | Блок за управление на дясна седалка (SSG) |
| К5 | Блок за управление на предна лява врата (TSG) |
| К6 | Блок за управление на предна дясна врата (TSG) |
| К7 | Блок за управление на задната лява врата (TSG) |
| К8 | Блок за управление на задната дясна врата (TSG) |
| К9 | Блок за управление на покрива (DBE) |
| К10 | Горно контролно поле (OBF) |
| К11 | Долно контролно поле (UBF) |
| К12 | Електронен ключ за стартиране на запалването (EZS) |
| К13 | Арматурно табло (KI) |
| К14 | Система COMMAND/аудио 10/аудио 30/аудио 30 APS |
| К15 | Парктроник система (PTS) |
| К16 | Устройство за теглич на ремарке (AAG) |
| К17 | Мултифункционален контролен блок за специални модели (MSS) |
| К18 | Паркинг отопление |
| К19 | Нагревател (KKLA/BKLA – SA) |
| К20 | Разпределител CAN-B RBA десен |
| К21 | Разпределител CAN-B RBA вляво |
| К22 | Дистрибутор CAN-B Cockpit |
| К23 | Въздушни възглавници с интегрирана система за обаждане ARMINCA |
| МОЖЕ ли C (Задвижване и шаси) | |
| К12 | Ключ за запалване (EZS) |
| К13 | Арматурно табло (KI) |
| К24 | Електронно управление на трансмисията (EGS или KGS) |
| К25 | Блок за управление на двигателя (MSG) |
| К26 | Електронен предавателен блок (EMW) |
| К27 | CAN дистрибутор Class-C RBA вляво |
| К28 | Електронна противоплъзгаща система (ESP) |
| Не е включен в мрежата на SG | |
| К29 | Автоматичен контрол на обхвата (ALWR) |
| К30 | ТВ тунер |
Елементи, свързани към D2B оптична шина

| D2B (Аудио/Комуникация/Навигация) | |
| Оптичен кабел | |
| К14 | КОМАНДА/аудио 10/аудио 30/аудио 30 APS |
| K31 | Телефонна система (MINNA, спешно повикване) |
| K32 | Лингватронно гласово управление (SBS) |
| K33 | Контролер за мобилен телефон (интерфейс) |
| K34 | Усилвател на звука |
| K35 | CD чейнджър |
| Не всички са показани | |
| A2 | Радио или касетофон |
| A2/6 | CD чейнджър |
| A40/3 | Дисплей и контролен блок за работа на системата COMAND |
| A2/13 | Усилвател на звука |
| A35/11 | Блок за управление на системата за гласово управление |
| A59/1 | D2B интерфейс за мобилен/вграден телефон |
| A35 | Клетъчен телефонен приемо-предавател (CTEL)/TELE AID Система за спешни повиквания |
| A35/8 | Блок за управление TELE AID |
| A, B, C | Връзки |
| M1 | Оптичен кабел 1 |
| M2 | Оптичен кабел 2 |
| M3 | Оптичен кабел 3 |
| M4 | Оптичен кабел 4 |
| M5 | Оптичен кабел 5 |
| M6 | Оптичен кабел 6 |
| M7 | Оптичен кабел 7 |
| ws | Бяла вложка |
| rt | Червена вложка |
