Інші системи автомобіля

Can bus decoder розпинування роз'єму. Системи розподіленого керування. Протоколи вищих рівнів

Can bus decoder розпинування роз'єму.  Системи розподіленого керування.  Протоколи вищих рівнів
Шина CAN – Вступ

Протокол CAN є стандартом ISO (ISO 11898) у сфері послідовної передачі. Протокол було розроблено з прицілом використання у транспортних додатках. Сьогодні CAN набув широкого поширення та використовується в системах автоматизації промислового виробництва, а також на транспорті.

Стандарт CAN складається з фізичного рівня та рівня передачі даних, що визначає кілька різних типів повідомлень, правила вирішення конфліктів при доступі до шини та захист від збоїв.

Протокол CAN

Протокол CAN описаний у стандарті ISO 11898-1 і може бути коротко охарактеризований таким чином:

Фізичний рівень використовує диференціальну передачу даних по кручений парі;

Для керування доступом до шини використовується неруйнівний bit-wise дозвіл конфліктів;

Повідомлення мають малі розміри (здебільшого 8 байт даних) та захищені контрольною сумою;

У повідомленнях відсутні явні адреси, натомість кожне повідомлення містить числове значення, яке керує його черговістю на шині, а також може бути ідентифікатором вмісту повідомлення;

Продумана схема обробки помилок, що забезпечує повторну передачу повідомлень, якщо вони були отримані належним чином;
є ефективні засоби для ізоляції збоїв та видалення збійних вузлів із шини.

Протоколи вищих рівнів

Сам по собі протокол CAN визначає лише, як малі пакети даних можна безпечно перемістити з точки A до точки B за допомогою комунікаційного середовища. Він, як і слід очікувати, нічого не говорить про те, як керувати потоком; передавати велику кількість даних, ніж міститься в 8-байтне повідомлення; ні про адреси вузлів; встановлення з'єднання тощо. Ці пункти визначаються протоколом вищого рівня (Higher Layer Protocol, HLP). Термін HLP походить з моделі OSI та її семи рівнів.

Протоколи вищого рівня використовуються для:

Стандартизація процедури запуску, включаючи вибір швидкості передачі даних;

Розподіл адрес серед взаємодіючих вузлів або типів повідомлень;

Визначення розмітки повідомлень;
забезпечення порядку обробки помилок лише на рівні системи.

Користувальницькі групи тощо.

Одним з найбільш ефективних способів підвищення вашої компетентності в області CAN є участь у роботі, що здійснюється в рамках існуючих груп користувачів. Навіть якщо ви не плануєте брати активну участь у роботі, користувацькі групи можуть бути хорошим джерелом інформації. Відвідування конференцій є ще одним добрим способом отримання вичерпної та точної інформації.

Продукти CAN

На низькому рівні принципово розрізняють два типи продуктів CAN, доступних на ринку – мікросхеми CAN і інструменти розробки CAN. На вищому рівні – два інші продукти: модулі CAN та інструменти проектування CAN. Широкий спектр даних продуктів доступний на ринку в даний час.

Патенти в галузі CAN

Патенти, що належать до додатків CAN, можуть бути різних типів: реалізація синхронізації та частот, передача великих наборів даних (у протоколі CAN використовуються кадри даних довжиною лише 8 байт) і т.п.

Системи розподіленого керування

Протокол CAN є гарною основою розробки систем розподіленого управління. Метод розв'язання конфліктів, що використовується CAN, забезпечує те, що кожен вузол CAN буде взаємодіяти з повідомленнями, що відносяться до даного вузла.

Систему розподіленого управління можна описати як систему, обчислювальна потужність якої розподілена між усіма вузлами системи. Протилежний варіант - система з центральним процесором та локальними точками введення-виведення.

Повідомлення CAN

Шина CAN відноситься до широкомовних шин. Це означає, що всі вузли можуть слухати всі передачі. Немає можливості надіслати повідомлення конкретному вузлу, всі без винятку вузли прийматимуть всі повідомлення. Обладнання CAN, однак, забезпечує можливість локальної фільтрації, так що кожен модуль може реагувати тільки на повідомлення, що його цікавить.

Адресація повідомлень CAN

CAN використовує відносно короткі повідомлення – максимальна довжина інформаційного поля становить 94 біти. У повідомленнях відсутня явна адреса, їх можна назвати контентно-адресованими: вміст повідомлення імпліцитно (неявно) визначає адресата.

Типи повідомлень

Існує 4 типи повідомлень (або кадрів), що передаються по шині CAN:

кадр даних (Data Frame);

Віддалений кадр (Remote Frame);

кадр помилки (Error Frame);

Кадр навантаження (Overload Frame).

Кадр даних

Коротко: "Усім привіт, є дані з маркуванням X, сподіваюся вам сподобаються!"
Кадр даних – найпоширеніший тип повідомлення. Він містить у собі такі основні частини (деякі деталі не розглядаються для стислості):

Поле арбітражу (Arbitration Field), яке визначає черговість повідомлення в тому випадку, коли за шину борються два або більше вузлів. Поле арбітражу містить:

У випадку CAN 2.0A, 11-бітний ідентифікатор і один біт, біт RTR який є визначальним для кадрів даних.

У випадку CAN 2.0B, 29-бітний ідентифікатор (який також містить два рецесивні біти: SRR та IDE) та біт RTR.

Поле даних (Data Field), що містить від 0 до 8 байт даних.

Поле CRC (CRC Field), що містить 15-бітну контрольну суму, пораховану більшості частин повідомлення. Ця контрольна сума використовується виявлення помилок.

Слот розпізнавання (Acknowledgement Slot). Кожен контролер CAN, здатний коректно отримати повідомлення, посилає біт розпізнавання (Acknowledgement bit) наприкінці кожного повідомлення. Приймач перевіряє наявність біта розпізнавання і, якщо такої не виявляється, надсилає повідомлення повторно.

Примітка 1: Присутність на шині розпізнавання біта не означає нічого, крім того, що кожен запланований адресат отримав повідомлення. Єдине, що стає відомо, це факт коректного отримання повідомлення одним або декількома вузлами шини.

Примітка 2: Ідентифікатор у полі арбітражу, незважаючи на назву, необов'язково ідентифікує вміст повідомлення.

Кадр даних CAN 2.0B (стандартний CAN).


Кадр даних CAN 2.0B ("розширений CAN").

Віддалений кадр

Коротко: «Усім привіт, хтось може зробити дані з маркуванням X?»
Віддалений кадр дуже схожий на кадр даних, але з двома важливими відмінностями:

Він явно позначений як віддалений кадр (біт RTR у полі арбітражу є рецесивним), і

Відсутнє поле даних.

Основним завданням віддаленого кадру є запит на надсилання належного кадру даних. Якщо, скажімо, вузол A пересилає віддалений кадр з параметром поля арбітражу рівним 234, то вузол B, якщо він належним чином ініціалізований, повинен надіслати у відповідь кадр даних з параметром поля арбітражу також рівним 234.

Віддалені кадри можна використовувати для реалізації керування трафіком шини типу «запит-відповідь». Насправді, проте, віддалений кадр використовується мало. Це не так важливо, оскільки стандарт CAN не наказує діяти саме так, як тут зазначено. Більшість контролерів CAN можна запрограмувати так, що вони будуть автоматично відповідати на віддалений кадр, або замість цього сповіщати локальний процесор.

Є один прийом, пов'язаний з віддаленим кадром: код довжини даних (Data Length Code) повинен бути встановлений довжині очікуваного повідомлення у відповідь. Інакше вирішення конфліктів не працюватиме.

Іноді потрібно щоб вузол, що відповідає на віддалений кадр, починав свою передачу як тільки розпізнавав ідентифікатор, таким чином заповнюючи порожній віддалений кадр. Це інший випадок.

Кадр помилки (Error Frame)

Коротко (всі разом, голосно): «О, ДОРОГОЇ, ДАВАЙ СПРОБУЄМО ЩЕ РОЗОК»
Кадр помилки (Error Frame) – це спеціальне повідомлення, яке порушує правила формування кадрів повідомлення CAN. Він посилається, коли вузол виявляє збій і допомагає іншим вузлам виявити збій – і вони теж надсилатимуть кадри помилок. Передавач автоматично спробує надіслати повідомлення повторно. Існує продумана схема лічильників помилок, що гарантує, що вузол не зможе порушити передачу даних по шині шляхом відсилання кадрів помилки, що повторюється.

Кадр помилки містить прапор помилки (Error Flag), що складається з 6 біт однакового значення (в такий спосіб порушуючи правило вставки бітів) і розмежувача помилки (Error Delimiter), що з 8 рецесивних біт. Розпушувач помилки надає деякий простір, в якому інші вузли шини можуть відправляти свої прапори помилки після того, як самі виявлять перший прапор помилки.

Кадр навантаження (Overload Frame)

Коротко: Я дуже зайнятий 82526 маленький, не могли б ви почекати хвилиночку?
Кадр навантаження згадується тут лише повноти картини. За форматом він дуже схожий на кадр помилки та передається зайнятим вузлом. Кадр навантаження використовується нечасто, т.к. сучасні контролери CAN досить продуктивні, щоб не використовувати. Фактично, єдиний контролер, який генеруватиме кадри навантаження – це застарілий 82526.

Стандартний та розширений CAN

Спочатку стандарт CAN встановив довжину ідентифікатора в полі арбітражу, що дорівнює 11 бітам. Пізніше, на вимогу покупців, стандарт було розширено. Новий формат часто називають розширеним CAN (Extended CAN), він дозволяє використовувати щонайменше 29 біт в ідентифікаторі. Для розрізнення двох типів кадрів використовується зарезервований біт полі управління Control Field.

Формально стандарти називаються так –

2.0A – лише з 11-бітними ідентифікаторами;
2.0B – розширена версія з 29-бітними або 11-бітовими ідентифікаторами (їх можна змішувати). Вузол 2.0B може бути

2.0B active (активним), тобто. здатним передавати та отримувати розширені кадри, або

2.0B passive (пасивним), тобто. він мовчки скидатиме отримані розширені кадри (але, дивіться нижче).

1.x - відноситься до оргінальної специфікації та її ревізій.

В даний час нові контролери CAN зазвичай належать до типу 2.0B. Контролер типу 1.x або 2.0A збентежиться, отримавши повідомлення з 29 бітами арбітражу. Контролер 2.0B пасивного типу прийме їх, упізнає, якщо вони вірні і потім скине; a контролер 2.0B активного типу зможе і передавати, і отримувати повідомлення.

Контролери 2.0B і 2.0A (як і 1.x) сумісні. Можна використовувати їх усі на одній шині доти, доки контролери 2.0B утримуватимуться від розсилки розширених кадрів.

Іноді люди заявляють, що стандартний CAN "краще" розширеного CAN, тому що в повідомленнях розширеного CAN більше службових даних. Це необов'язково так. Якщо ви використовуєте поле арбітражу передачі даних, то кадр розширеного CAN може містити менше службових даних, ніж кадр стандартного CAN.

Основний CAN (Basic CAN) та повний CAN (Full CAN)

Терміни Basic CAN і Full CAN беруть початок у дитинстві CAN. Колись існував CAN-контролер Intel 82526, що надавав програмісту інтерфейс у стилі DPRAM. Потім з'явився Philips з моделлю 82C200, в якому застосовувалася FIFO-орієнтована модель програмування та обмежені можливості фільтрації. Для позначення різницю між двома моделями програмування, люди почали називати спосіб Intel – Full CAN, а спосіб Philips – Basic CAN. Сьогодні більшість контролерів CAN підтримують обидві моделі програмування, тому немає сенсу у використанні термінів Full CAN і Basic CAN – фактично, ці терміни можуть викликати плутанину і варто утриматися від їх вживання.

Насправді контролер Full CAN може взаємодіяти з контролером Basic CAN і навпаки. Проблеми із сумісністю відсутні.

Вирішення конфліктів на шині та пріоритет повідомлення

Вирішення конфліктів повідомлень (процес, внаслідок якого два або більше контролера CAN вирішують, хто буде користуватися шиною) дуже важливий для визначення реальної доступності смуги пропускання для передачі даних.

Будь-який контролер CAN може розпочати передачу, коли виявить, що шина простоює. Це може призвести до того, що два або більше контролерів почнуть передачу повідомлення (майже) одночасно. Конфлікт вирішується в такий спосіб. Передавальні вузли здійснюють моніторинг шини в процесі надсилання повідомлення. Якщо вузол виявляє домінантний рівень у той час, як він відправляє рецесивний рівень, він негайно усунеться від процесу вирішення конфлікту і стане приймачем. Вирішення конфліктів здійснюється по всьому полю арбітражу, і після того, як це поле відсилається, на шині залишається лише один передавач. Цей вузол продовжить передачу, якщо нічого не станеться. Інші потенційні передавачі спробують передати свої повідомлення пізніше, коли шина звільниться. У процесі вирішення конфлікту час не втрачається.

Важливою умовою для благополучного вирішення конфлікту є неможливість ситуації, коли два вузла можуть передати однакове поле арбітражу. З цього правила є один виняток: якщо повідомлення не містить даних, будь-який вузол може передавати це повідомлення.

Оскільки CAN-шина є шиною з приєднанням пристроїв на кшталт «монтажне І» (wired-AND) і домінантний біт (Dominant bit) є логічним 0, отже повідомлення з найнижчим у чисельному вираженні полем арбітражу виграє у вирішенні конфлікту.

Питання: Що станеться у випадку, якщо єдиний вузол шини спробує надіслати повідомлення?

Відповідь: Вузол, зрозуміло, виграє у вирішенні конфлікту та успішно проведе передачу повідомлення. Але коли настане час розпізнавання ... жоден вузол не відправить домінантний біт області розпізнавання, тому передавач визначить помилку розпізнавання, надішле прапор помилки, підвищить значення свого лічильника помилок передачі на 8 і почне повторну передачу. Цей цикл повториться 16 разів, потім передавач перейде у статус пасивної помилки. Відповідно до спеціального правила в алгоритмі обмеження помилок, значення лічильника помилок передачі більше не підвищуватиметься, якщо вузол має статус пасивної помилки і помилка є помилкою розпізнавання. Тому вузол здійснюватиме передачу вічно, до тих пір, поки хтось не розпізнає повідомлення.

Адресація та ідентифікація повідомлення

Повторимося, немає нічого страшного в тому, що в CAN повідомленнях немає точних адрес. Кожен контролер CAN отримуватиме весь трафік шини, і за допомогою комбінації апаратних фільтрів та ПЗ, визначатиме – «цікавить» його це повідомлення, чи ні.

Фактично, у протоколі CAN немає поняття адреси повідомлення. Натомість вміст повідомлення визначається ідентифікатором, який знаходиться десь у повідомленні. Повідомлення CAN можна назвати «контентно-адресованими».

Певна адреса працює так: Це повідомлення для вузла X. Контентно-адресоване повідомлення можна описати так: "Це повідомлення містить дані з маркуванням X". Різниця між цими двома концепціями мала, але суттєва.

Вміст арбітражного поля використовується, відповідно до стандарту, для визначення черговості повідомлення на шині. Всі контролери CAN будуть також використовувати все (деякі – тільки частина) поле арбітражу як ключ у процесі апаратної фільтрації.

Стандарт не каже, що поле арбітражу неодмінно має використовуватися як ідентифікатор повідомлення. Проте це дуже поширений варіант використання.

Примітка про значення ідентифікатора

Ми говорили, що ідентифікатор доступні 11 (CAN 2.0A) або 29 (CAN 2.0B) біт. Це не зовсім правильно. Для сумісності з певним старим контролером CAN (вгадайте яким?), ідентифікатори не повинні мати 7 старших біт встановлених в логічну одиницю, тому 11-бітним ідентифікаторам доступні значення 0..2031, а користувачі 29-бітних ідентифікаторів можуть використовувати 632.

Зауважте, що решта контролерів CAN приймають «неправильні» ідентифікатори, тому в сучасних системах CAN ідентифікатори 2032..2047 можуть використовуватися без обмежень.

Фізичні рівні CAN

Шина CAN

Шина CAN використовує код без повернення до нуля (NRZ) із вставкою бітів. Існують два різні стани сигналу: домінантний (логічний 0) і рецесивний (логічний 1). Вони відповідають певним електричним рівням, що залежать від фізичного рівня (їх кілька). Модулі підключені до шини за схемою «монтажне І» (wired-AND): якщо хоча б один вузол переводить шину в домінантний стан, то вся шина знаходиться в цьому стані, незалежно від того, скільки вузлів передають рецесивний стан.

Різні фізичні рівні

Фізичний рівеньвизначає електричні рівні та схему передачі сигналів по шині, повний опір кабелю тощо.

Існує кілька різних версій фізичних рівнів: Найбільш поширеним є варіант, визначений стандартом CAN, частина ISO 11898-2, і є двопровідною збалансованою сигнальною схемою. Він також іноді називається high-speed CAN.

Інша частина того ж стандарту ISO 11898-3 описує іншу двопровідну збалансовану сигнальну схему для менш швидкісної шини. Вона стійка до збоїв, тому передача сигналів може продовжуватись навіть у тому випадку, коли один із проводів буде перерізаний, замкнутий на «землю» або в стані Vbat. Іноді така схема називається low-speed CAN.

SAE J2411 визначає однопровідний (плюс «земля», очевидно) фізичний рівень. Він використовується в основному в автомобілях, наприклад GM-LAN.

Існує кілька пропрієтарних фізичних рівнів.

У минулі часи, коли драйверів CAN не існувало, використовувалися модифікації RS485.

Різні фізичні рівні зазвичай не можуть взаємодіяти між собою. Деякі комбінації можуть працювати (або здаватиметься, що вони працюють) хороших умовах. Наприклад, приймачі high-speed і low-speed можуть працювати на одній шині лише іноді.

Абсолютна більшість мікросхем приймачів CAN вироблено компанією Philips; до інших виробників входять Bosch, Infineon, Siliconix і Unitrode.

Найбільш поширений приймач 82C250, в якому реалізований фізичний рівень, що описується стандартом ISO 11898. Удосконалена версія - 82C251.

Поширений приймач для «low-speed CAN» - Philips TJA1054.

максимальна швидкістьпередачі даних по шині

Максимальна швидкість передачі даних по шині CAN, відповідно до стандарту, дорівнює 1 Мбіт/с. Однак, деякі контролери CAN підтримують швидкості вище 1 Мбіт/с і можуть бути використані в спеціалізованих додатках.

Low-speed CAN (ISO 11898-3, див. вище) працює на швидкостях до 125 кбіт/с.

Однопровідна шина CAN у стандартному режимі може передавати дані зі швидкістю близько 50 кбіт/с, а у спеціальному високошвидкісному режимі, наприклад для програмування ЕБУ (ECU), близько 100 кбіт/с.

Мінімальна швидкість передачі даних по шині

Майте на увазі, що деякі приймачі не дозволять вам вибрати швидкість нижче певного значення. Наприклад, при використанні 82C250 або 82C251 ви можете без проблем встановити швидкість 10 кбіт/с, але якщо ви використовуєте TJA1050, то не зможете встановити швидкість нижче 50 кбіт/с. Звіряйтесь зі специфікацією.

Максимальна довжина кабелю

При швидкості передачі даних 1 Мбіт/с, максимальна довжина кабелю, що використовується, може становити близько 40 метрів. Це пов'язано з вимогою схеми вирішення конфліктів, згідно з яким фронт хвилі сигналу повинен мати можливість дійти до найдальшого вузла і повернутися назад перш ніж біт буде рахований. Іншими словами, довжина кабелю обмежена швидкістю світла. Пропозиції щодо збільшення швидкості світла розглядалися, але були відкинуті через міжгалактичні проблеми.

Інші максимальні довжини кабелю (приблизні значення):

100 метрів за 500 кбіт/с;

200 метрів за 250 кбіт/с;

500 метрів за 125 кбіт/с;
6 кілометрів за 10 кбіт/с.

Якщо для забезпечення гальванічної ізоляції використовуються оптопари, то максимальна довжина шини відповідно скорочується. Порада: використовуйте швидкі оптопари та дивіться на затримку сигналу у пристрої, а не на максимальну швидкість передачі даних у специфікації.

Кінцеве переривання шини

Шина CAN стандарту ISO 11898 має закінчуватися термінатором. Це досягається шляхом встановлення резистора опором 120 Ом кожному кінці шини. Термінування служить двом цілям:

1. Забрати відображення сигналу на кінці шини.

2. Переконайтеся, що ви отримуєте коректні рівні постійного струму (DC).

Шина CAN стандарту ISO 11898 обов'язково має термінуватися незалежно від її швидкості. Я повторю: шина CAN стандарту ISO 11898 обов'язково має термінуватись незалежно від її швидкості. Для лабораторної роботиможе вистачити одного термінатора. Якщо ваша шина CAN працює навіть за відсутності термінаторів – ви просто щасливчик.

Зауважте, що інші фізичні рівні, такі як low-speed CAN, однопровідна шина CAN та інші можуть вимагати, а можуть і не вимагати наявності кінцевого термінатора шини. Але ваша високошвидкісна шина CAN стандарту ISO 11898 завжди вимагатиме наявності хоча б одного термінатора.

Кабель

Стандарт ISO 11898 наказує, що хвильовий опір кабелю номінально повинен дорівнювати 120 Ом, проте допускається інтервал значень опору Ом.

Мало хто з присутніх сьогодні на ринку, кабелі задовольняють цим вимогам. Існує велика ймовірність, що інтервал значень опору буде розширено в майбутньому.

ISO 11898 описує кручену пару, екрановану або неекрановану. Триває робота над стандартом однопровідного кабелю SAE J2411.

Шина CAN-busбула створена наприкінці 80-х років фірмою Robert Bosch GmbH (Німеччина) як рішення для розподілених систем, що працюють у режимі реального часу. Відмінною особливістю шини є її висока схибленість. Додатковою перевагою шини CAN є її стійкість до механічних пошкоджень - замикання провідників шини на загальний провід, живлення або між собою не призводить до виходу з ладу пристроїв. Більше того, деякі модифікації шини здатні функціонувати під час обриву одного з провідників.

CAN-шина в промислових мережах

Польова шина CAN (Controller Area Network) характеризується високими швидкістю передачі даних і завадостійкістю, а також здатністю виявляти будь-які помилки, що виникають. Завдяки цьому CAN сьогодні широко використовується в таких областях, як автомобільний та залізничний транспорт, промислова автоматика, авіація, системи доступу та контролю. За даними асоціації CiA (CAN in Automation, www.can-cia.de), в даний час в експлуатації знаходиться близько 300 млн. CAN-вузлів по всьому світу. У Німеччині CAN-шина займає перше місце за популярністю серед решти польових шин.

Характеристики протоколу CAN Переваги CAN

Загальна тенденція у сфері автоматизації полягає у заміні традиційної централізованої системи управління розподілене управління шляхом розміщення інтелектуальних датчиків і виконавчих механізмів поруч із керованим процесом. Це викликано зростанням кількості проводів зв'язку, збільшенням кількості з'єднань, складністю діагностики помилок та проблемами з надійністю. Зв'язок між вузлами такої системи здійснюється за допомогою польової шини. CAN – це система зв'язку для багатоконтролерних систем. Розглянемо докладніше переваги CAN і причини, з яких CAN набуває все більшого поширення.

Випробуваний стандарт. Протокол CAN активно використовується вже понад 20 років, що є дуже важливим для таких консервативних областей як залізничний транспорт або суднобудування. CAN був розроблений 1980 р. фірмою Robert Bosch для автомобільної промисловості. CAN-інтерфейс регламентований міжнародними стандартами ISO 11898 для високошвидкісних та ISO 11519-1 для низькошвидкісних додатків. Низька вартість визначається хорошим співвідношенням ціна/продуктивність, а також широкою доступністю CAN-контролерів на ринку. Надійність визначається лінійною структурою шини та рівноправністю її вузлів, так званою мультимастерністю (Multi Master Bus), при якій кожен вузол CAN може отримати доступ до шини. Будь-яке повідомлення може бути надіслано одному або декільком вузлам. Всі вузли одночасно зчитують з шини одну й ту саму інформацію, і кожен з них вирішує прийняти це повідомлення або ігнорувати його. Одночасний прийом дуже важливий для синхронізації у системах управління. Вузли, що відмовили, відключаються від обміну по шині.



Висока перешкодостійкість досягається завдяки придушенню синфазних перешкод диференціальним приймачем, роботі вбудованих механізмів виявлення помилок (одна невиявлена ​​помилка за 1000 років при щоденній 8-годинній роботі мережі на швидкості 500 Кбіт/с), повтору помилкових повідомлень до електромагнітних перешкод.

Гнучкість досягається за рахунок простого підключення до шини та відключення від шини CAN-вузлів, причому загальна кількість вузлів не лімітована протоколом нижнього рівня. Адресна інформація міститься у повідомленні та поєднана з його пріоритетом, за яким здійснюється арбітраж. У процесі роботи можлива зміна пріоритету повідомлення. Слід також відзначити можливість програмування частоти і фази сигналу, що передається, і арбітраж, що не руйнує структуру повідомлень при конфліктах. Фізично є можливість вибору різнотипних ліній передачі даних: від дешевої кручений пари до оптоволоконної лінії зв'язку.

Робота в реальному часі стає можливою завдяки механізмам мережевої взаємодії (мультимастерність, широкомовлення, побітовий арбітраж) у поєднанні з високою швидкістю передачі даних (до 1 Мбіт/с), швидкою реакцією на запит передачі і довжиною повідомлення від 0 до 8 байт.

CAN

CAN є ідеальним рішенням для будь-якої програми, де мікроконтролери обмінюються повідомленнями один з одним та з віддаленими периферійними пристроями. Спочатку CAN використовувався в автомобілях для забезпечення критичного за часом керування та обміну інформацією між двигуном та коробкою передач при гарантованому часі очікування повідомлення та допуск кожного з учасників мережі до роботи з поточними даними. Поряд із досить дорогими високошвидкісними рішеннями існують і економічні рішення для підключення до мережі інерційних пристроїв, які працюють у шкалі часу сотень мікросекунд (система керування дверима, підйомник вікна, керування дзеркалом). При цьому потужні джгути електричних проводів замінюються двопровідною мережею CAN, вузлами якої є, в тому числі, гальмівні вогні та покажчики повороту.

Широке застосування CAN знайшов у промисловій автоматиці, де є велика кількість пристроїв керування, датчиків, механізмів, електроприводів та інших об'єктів, які пов'язані єдиним технологічним циклом (системи опалення та кондиціювання, насоси, конвеєри, ліфти, ескалатори, транспортери і т.д.) . Важливою особливістю таких систем є можливість діагностики та управління об'єктами, розташованими на великій території, за адаптивними алгоритмами. В результаті досягається суттєве зменшення споживаної потужності, шуму, зношування обладнання. Подібна картина спостерігається і в залізничних бортових системах, де вирішальну роль відіграє обмін даними між підсистемами при наборі швидкості, гальмуванні, керуванні дверима та діагностиці.

Фізичний рівень

Фізичний рівень CAN-шини є з'єднання «монтажне І» між усіма пристроями, підключеними до неї. Диференціальні сигнальні лінії називаються CAN_H та CAN_L і в статичному стані знаходяться під потенціалом 2,5 В. Лог. 1 (рецесивний біт) позначає стан шини, при якому рівень лінії CAN_H вище, ніж рівень CAN_L. За лог. 0 (домінантний біт) рівень лінії CAN_H нижче, ніж рівень CAN_L. Ухвалено таку угоду про стан шини: пасивний стан шини відповідає рівню балка. 1, а активне - рівнем балка. 0. Коли повідомлення не передаються по шині, вона перебуває у пасивному стані. Надсилання повідомлення завжди починається з домінантного біта. Логіка роботи шини відповідає "провідному І": домінантний біт "0" пригнічує рецесивний біт "1" (рис. 12.1).

Мал. 12.1. Логіка роботи CAN шини

При фізичній реалізації конкретного проекту з CAN необхідно визначити властивості шини та її вузлів: де розташовуються обробні пристрої, які властивості вони мають, які датчики і виконавчі механізми присутні в системі, є вони інтелектуальними чи ні, що можна сказати про їхнє фізичне розташування. Залежно від умов експлуатації можуть використовуватися однопровідна лінія (у межах друкованої плати), двопровідна лінія, кручена пара або волоконно-оптична лінія. При диференціальному методі формування сигналів двопровідна лінія дозволяє значно підвищити стійкість до перешкод. При використанні диференціальних напруг CAN-мережа продовжує функціонувати в надзвичайно галасливому середовищі або при обриві однієї із сигнальних ліній. Навіть при простій кручений парі диференціальні входи CAN ефективно нейтралізують шум.

Максимальна швидкість передачі становить 1 Мбіт/с при довжині шини 40 м і близько 40 Кбіт/с при довжині шини 1000 м.

Різновиди CAN

В даний час доступні різні пристрої з CAN-інтерфейсом, які, крім передачі даних з однієї точки в іншу, дозволяють реалізувати синхронізацію процесів і обслуговування за пріоритетами. Більш ранні реалізації CAN-контролерів використовують кадри з 11-розрядним ідентифікатором та можливістю адресації до 2048 повідомлень та відповідають специфікації CAN V. 2.0A. Такі контролери звуться Basic CAN і характеризуються сильною завантаженістю центрального процесора (ЦПУ), оскільки кожне вхідне повідомлення запам'ятовується у пам'яті і ЦПУ вирішує, потрібні йому дані повідомлення чи ні (рис. 12.2). Контролери Basic CAN містять один передавальний буфер і один або два приймальні буфери повідомлень. Щоб надіслати або отримати повідомлення, потрібно задіяти ЦПУ через переривання «повідомлення_послано» та «повідомлення_отримано». В результаті перевірки кожного повідомлення завантаження ЦПУ дуже велика, що обмежує реальну швидкість обміну по мережі. З цієї причини такі контролери використовуються в мережах CAN з низькою швидкістю обміну та/або малою кількістю повідомлень.


Мал. 12.2. Структура контролера Basic CAN

Більшість CAN-контролерів, що випускаються сьогодні, використовують розширені кадри повідомлень з ідентифікатором довжиною 29 розрядів, що дозволяє адресувати до 536 млн повідомлень. Такі контролери відповідають специфікації CAN V. 2.0B (active) та називаються контролери Full-CAN. Вони передбачено буфер для кількох повідомлень, причому кожне повідомлення має свою маску, і фільтрація здійснюється за відповідністю ідентифікатора масці.

У разі Full-CAN ЦПУ максимально розвантажено, оскільки не обробляє непотрібні повідомлення (рис. 12.3). При прийомі повідомлення з ідентифікатором, який відповідає масці, воно запам'ятовується у спеціальній зоні двопортової ОЗП, і робота ЦПУ переривається. Full-CAN має також спеціальний тип повідомлення, яке означає: "у кого б не знаходилася ця інформація, будь ласка, надішліть її зараз же". Контролер Full-CAN автоматично прослуховує всі повідомлення та надсилає запитану інформацію.


Мал. 12.3. Структура контролера Full-CAN

Донедавна в промисловості був поширений Basic CAN з 11-разрядным ідентифікатором. Цей протокол допускає простий зв'язок між мікроконтролерами та периферійними пристроями при швидкості обміну до 250 Кбіт/с. Однак при стрімкому здешевленні CAN-контролерів використання Full-CAN стало виправданим і для зв'язку з повільними пристроями. Якщо промислових додатках потрібно високошвидкісний (до 1 Мбіт/с) обмін даними, то неодмінно слід використовувати Full-CAN.

Арбітраж вузлів CAN-шини

CAN має багато унікальних властивостей, що відрізняють його від інших шин. У протоколі CAN здійснюється надсилання повідомлень за загальною CAN-шиною, при цьому відсутні адреси відправника та одержувача повідомлення. Кожен вузол постійно «переглядає» шину і здійснює локальну фільтрацію прийому, використовуючи бітові маски, і вирішує, які повідомлення витягувати з шини.

В результаті, вузол приймає та обробляє тільки ті повідомлення, які призначені саме для нього.

Кожне повідомлення має свій пріоритет, значення якого міститься в ідентифікаторі повідомлення. Крім того, ідентифікатори використовуються для позначення типу повідомлення. Повідомленню з молодшим номером ідентифікатора відповідає найвищий пріоритет; найвищий пріоритет має повідомлення з ідентифікатором, що складається повністю з нулів. Надсилання повідомлення починається з відправки на шину ідентифікатора. Якщо доступ до шини вимагають кілька повідомлень, спочатку буде передано повідомлення з найвищим пріоритетом, тобто з меншим значенням ідентифікатора, незалежно від інших повідомлень і поточного стану шини. Кожен вузол перед передачею повідомлення перевіряє, чи вузол працює з вищим пріоритетом. Якщо так, він повертається у стан приймача і намагається передати повідомлення в інший час. Ця властивість має особливе значення під час використання у системах управління реального часу, оскільки значення пріоритету жорстко визначає час очікування.

Якщо передача вузла А зупиняється вузлом B, який надсилає повідомлення з більш високим пріоритетом, то, як тільки шина звільниться, буде зроблено іншу спробу передачі повідомлення від вузла A. Цей принцип отримав назву CSMA/CA: Carrier Sense Multiple Access/Collision Avoidance (загальний доступ з опитуванням/запобігання конфліктам). Такий режим на відміну від Ethernet не дозволяє конфліктуючим вузлам у шині з'ясовувати стосунки, а одразу виявляє переможця та скорочує час обміну.

Отже, завдяки арбітражу шини повідомлення з найвищим пріоритетом передається першим, забезпечуючи функціонування системи в реальному масштабі часу та швидку передачу інформації. Розподіл пріоритетів між різними типами повідомлень задається розробником під час проектування мережі.

Формат повідомлень

Якщо не враховувати процедуру повтору повідомлення, прийнятого з помилкою, існує два види зв'язку між вузлами: один вузол передає інформацію, а інший отримує, або вузол A запитує вузол B даних і отримує відповідь.

Мал. 12.4. Кадр даних (Data Frame)

Для передачі даних служить кадр даних Data Frame(рис. 12.4), який містить:

  • ідентифікатор, що вказує на тип повідомлення («швидкість_двигуна», «температура_олії») та на пріоритет доступу до шини. Поле ідентифікатора містить різну кількість біт залежно від різновиду протоколу: у стандартному форматі CAN V2.0A передбачено 11-розрядний ідентифікатор, а розширеному CAN V2.0B - 29-розрядний;
  • поле даних, що містить відповідне повідомлення (швидкість двигуна = 6000 об/хв, температура масла = 110 ° C) довжиною до восьми байт;
  • два байти контрольної суми - Cyclic Redundancy Check (CRC)для виявлення та корекції помилок передачі.

Для запиту інформації вузол CAN використовує кадр запиту даних Remote Frame (рис. 12.5), який містить:

  • ідентифікатор, що визначає тип інформації, що запитується («швидкість_ двигуна», «температура_олії») і пріоритет повідомлення;
  • два байти контрольної суми CRC.

Мал. 12.5. Кадр запиту на дані Remote Frame

У цьому випадку за ідентифікатором не йдуть дані і код довжини даних не має прямого відношення до кількості байт даних. Вузол, якому запропоновано передати інформацію (датчик температури олії), передає кадр даних, що містить необхідну інформацію. Таким чином, якщо вузол А направляє вузлу кадр запиту з ідентифікатором «температура_масла», то вузол В запитує датчик температури і направляє вузлу А кадр даних, що містить ідентифікатор «температура_масла» і необхідну інформацію.

Додаткова інформація, що міститься в кадрі, дозволяє визначити формат та синхронізацію протоколу передачі повідомлення та тип посилки:

  • яке повідомлення надіслано - запит даних або власне дані визначають біт віддаленого запиту передачі (RTR для 11-розрядного ідентифікатора і SRR для 29-розрядного);
  • код довжини даних, що повідомляє, скільки байтів даних містить повідомлення; всі вузли приймають кадр даних, але ті з них, яким ця інформація не потрібна, її не зберігають;
  • для забезпечення синхронізації та контролю кадр містить поля початку кадру Start of Frame, кінця кадру End of Frame та підтвердження Acknowledgement Field;
  • вхід у режим синхронізації на шині здійснюється першим бітом поля Start of Frame, далі синхронізація підтримується фронтом при зміні рівня бітів, що посилаються;
  • використовується механізм бітстафінгу - вставка додаткового біта при наступних п'яти нулі або одиницях.

Виявлення помилок

Сигналізація про помилки відбувається шляхом передачі кадру помилки Error Frame. Він ініціюється будь-яким вузлом, який виявив помилку. CAN-контролери використовують метод статистичної обробки помилок. Кожен вузол містить лічильники помилок при передачі та прийомі Transmit Error Counter та Receive Error Counter. Якщо передавач або приймач виявляють помилку, значення відповідного лічильника збільшується. Коли значення лічильника перевищує певну межу, поточна передача переривається. Вузол видає сигнал про помилку як Error Frame, де виставляє активний домінантний прапор помилки довжиною 6 біт. Після цього вузол, передача якого було перервано, повторює повідомлення. Ненадійним або частково пошкодженим вузлам можна посилати лише пасивний рецесивний прапор помилки.

У CAN існує кілька різновидів помилок. З них три типи на рівні повідомлень:

  • CRC Error - помилка контрольної суми (при розбіжності прийнятої полі CRC і обчисленої контрольних сум).
  • Form Error - помилка формату кадру у разі невідповідності прийнятого повідомлення формату CAN.
  • Acknowledgement Error – помилка підтвердження прийому повідомлення, якщо жоден із вузлів не підтвердив правильного отримання повідомлення.

Крім того, існує два типи помилок на бітовому рівні:

  • Bit Error – виявлення активним вузлом розбіжності між посланим у шину рівнем та фактичним значенням за рахунок реалізації вузлом механізму самоконтролю.
  • Stuff Error - наявність у полі повідомлення шести наступних біт поспіль 0 або 1 (помилка бітстаффінга).

Завдяки цим механізмам виявлення та корекції помилок ймовірність пропуску помилки вкрай мала. Наприклад, при швидкості 500 Кбіт/с, завантаженості шини 25% та використанні протягом 2000 годин на рік виникає лише одна невиявлена ​​помилка за 1000 років. Крім того, у шині неможлива ситуація блокування несправним вузлом роботи усієї мережі. Такі вузли виявляються та відключаються від обміну по шині.

Для підключення сторонніх пристроїв необхідні спеціальні перехідники ( can-bus адаптери), які дозволяють задіяти всі функції та реалізувати вимоги бортової системиавтомобіля.

Can-bus адаптеркерує запуском цифрового підсилювача (Pioneer, Rockford, BOSE, KIA, JBL), відправляє сигнал для активації камери заднього виду, з інформацією від паркувальної системи, керує тріп комп'ютером та дозволяє відображати всю цю інформацію екрані мультимедіа (інформація про режим, радіо частоту, відтворених) треках).

Залежно від автомобіля can-bus адаптеривиконують різні функції.

У автомобілях Toyota, в яких є підсилювач, використовується адаптер для його повноцінної роботи з магнітолою. Адаптер дозволяє керувати «звуковою схемою» автомобіля – регулювати гучність звуку між передніми та задніми колонками, лівою та правою стороною автомобіля, а також гучністю самого підсилювача. У більшості вироблених і головних пристроїв, що продаються, дана функція не передбачена.

Особливо варто відзначити can-bus адаптердля KIA Sorento та KIA Sportage, у яких встановлено цифровий підсилювач. У цьому випадку передача звуку у цифровому вигляді виключає будь-які наведення, шуми та перешкоди.

Потрібно бути готовим до того, що магнітоли, які не мають адаптерів для роботи з цифровим підсилювачем, підключатимуться безпосередньо до колонок. За такої схеми підключення ви втрачаєте підсилювач, а разом з ним і надії на якісний звук. Єдиною гарантією правильної установки може бути can-bus адаптер, який буде встановлений в автомобілі для поєднання цифрового підсилювача.

У автомобілях Volkswagen/Skodaсигнал дозволу включення аксесуарів (ACC), кнопки кермового управління, підсвічування та інші сигнали передаються через can шинуавтомобіля. Без використання правильного can-bus адаптеранеобхідно серйозне втручання у внутрішнє проведення авто, враховуючи всі наслідки такого втручання. Також на екрані максидот в авто мають відображатися номер радіостанції та інша інформація про стан магнітоли.

У автомобілях Mazda can-bus адаптернеобхідний роботи трип комп'ютера, і навіть для підключення і правильного функціонування підсилювача. При заміні головного пристрою та установки адаптера кнопка INFO переноситься на кермо, що робить керування магнітолою комфортнішим. Більш того, в деяких версіях Mazda 3 (арабська, китайська, бразильська збірка), де функція виведення даних від тріп комп'ютера не передбачена, встановлюючи магнітолу та can-bus адаптерви отримуєте нові функції у вашому автомобілі - тріп комп'ютер (середня та миттєва витрата палива, запас ходу, середню швидкість тощо). Таким чином, ви отримуєте не лише якісний звук, навігацію, але й розширюєте функціональність свого автомобіля.

Can-bus адаптер для автомобілів Mitsubishi (Pajero, Outlander XL, ASX, LancerX)виконує функцію підключення магнітоли до цифрового підсилювача Rockford.

У цифрових підсилювачах Rockford Fosgate, якими комплектуються автомобілі Mitsubishi, має бути реалізований наступний функціонал:

П'ятиступінчасте регулювання сабвуфером

Регулювання балансу звуку: фронт-тил, ліво-право

Постановка підсилювача в режим MUTE

Вимкнення підсилювача, коли він не використовується.

Купуючи штатну магнітолу, переконайтеся, що після її встановлення ви не втратите вихідний функціонал. Будь-яке вдосконалення в автомобілі має покращувати його, а не навпаки. Використання якісних can-bus адаптерів дозволить не тільки грамотно встановити магнітолу, а й розширити функціональність авто.

До сучасних автомобілів пред'являються все більш високі вимоги. Вимоги до безпеки їзди, комфорту під час їзди, екологічної безпеки та економічності постійно зростають.

Нові технічні розробки з'являються все швидше, цілі розробників стають дедалі амбітнішими. Це і є прогрес і це добре. Прогресу ми вдячні за такі винаходи як, наприклад, ABS, подушка безпеки, повністю автоматичне встановленняштучного клімату; це лише мала частка прикладів із величезної кількості технічних новинок, які за останнє десятиліття було впроваджено у конструкцію автомобіля.

Завдяки цьому розвитку зростає частка електронних систем. У сучасних автомобілях, залежно від класу та оснащення автомобіля, застосовується від 25 до 60 електронних систем, які мають бути пов'язані між собою провідним зв'язком.

У типових провідних з'єднань провідники, кабелі роз'єми і запобіжні колодки мали великі розміри, наслідком чого були дуже затратні виробничі процеси. Не кажучи вже про проблеми, які могли виникнути під час проведення діагностики для пошуку несправностей у таких автомобілях. Для механіків починався стомлюючий та довгий пошук несправності, за який платив клієнт та платив дорого. Обмін даними між різними керуючими пристроями за такої технології також стикався з межами можливого.

Історія шини CAN

Тому в 1983 році автомобільна промисловість заявила про свою потребу мати таку комунікаційну систему, яка могла зв'язати керуючі пристрої між собою в єдину мережу, та забезпечити необхідний обмін даними. Система повинна була задовольняти такі вимоги:

  • невисока вартість у серійному виробництві
  • здатність працювати в режимі реального часу для швидкодії
  • висока надійність
  • високий рівень захищеності від електромагнітних перешкод

Найпоширеніша система обміну даними - CAN-bus

  • 1983 Початок розробки CAN (Бош)
  • 1985 Початок кооперації з Інтел з розробки чіпа
  • 1988 Перший серійний тип CAN від компанії Intel розпочинає впровадження CAN для вантажних автомобілів
  • 1991 Перше застосування CAN в серійному автомобілі(S-клас)
  • 1994 Запроваджується міжнародний стандарт для CAN (ISO 11898)
  • 1997 Перше використання CAN у салоні (С-клас)
  • 2001 Використання CAN у малолітражних автомобілях (Опель Корса) у приводі та кузові

Що означає CAN?

CAN означає Controller Area Network

Переваги передачі даних CAN-BUS

  • обмін даними відбувається у всіх напрямках між кількома керуючими пристроями
  • можливість багаторазового використання сигналів сенсорних датчиків
  • дуже висока швидкість передачі даних
  • низький відсоток різним видамконтролю при передачі даних
  • для розширення можливостей зазвичай достатньо лише внести зміни до програмного забезпечення
  • система CAN стандартизована у всьому світі, це означає, що можливий обмін даними між керуючими пристроями різних виробників

Що таке CAN-BUS?

Систему передачі даних CAN-бус можна подати у вигляді автобуса. Так само, як і автобус призначений для перевезення багатьох пасажирів, так і
система CAN-бус передає багато інформації. Без системи CAN-бус всю інформацію треба було б передавати до приладів, що управляють, за величезною кількістю провідних з'єднань. Це означає, що для кожної інформації має бути один провідний канал.

За допомогою передачі даних CAN-бус кількість управляючих пристроями помітно зменшується. Весь обмін інформацією між пристроями, що управляють, відбувається максимум через два провідники. В галузі автомобілебудування існують різні технології з'єднань (мереж). Коротко розглянемо особливості деяких із них.

Схема «зірка»


  • за схемою «зірка» всі елементи обміну даними замикаються однією центр (блок управління)
  • якщо блок керування виходить з ладу, то з'єднання порушується

Схема «кільце»


  • за схемою «кільце» всі елементи обміну даними самостійні.
  • щоб надходити з пристрою А на пристрій, інформація повинна пройти щонайменше ще через один пристрій.
  • якщо один пристрій виходить з ладу, то виходить з ладу система загалом.
  • оновлення даних здійснюється дуже легко, але для цього треба тимчасово припинити експлуатацію.

Лінійна схема


  • сигнал передавача поширюється по лінії обох напрямках.
  • якщо один пристрій виходить із ладу, інші продовжують обмін даними між собою.

Пристрій системи обміну даними

Лінійна схема застосовується в автомобілях найчастіше, у цій статті розглядається здебільшого ця схема системи CAN-бус.

  • Мережевий вузол: До нього входять мікроконтролер, CAN-контролер та бусдрайвер.
  • Мікроконтролер: Призначений для безперервного керування CAN-контролером і обробки даних, що передаються та приймаються.
  • CAN-контролер: Призначений для забезпечення режимів передачі та прийому.
  • Бусдрайвер: Забезпечує рівень передачі, а також прийому.
  • Канал зв'язку: Є двожильний провідник (для обох видів сигналів: CAN-High і CAN-Low). Для зменшення електромагнітних перешкод провідники екрановані.
  • Перемичка намиста: Навантажувальний резистор 120 В запобігає появі ехо-сигналу на кінцях провідника і усувають спотворення сигналу.

Як працює намиста?

Передача даних за допомогою CAN-бусів відбувається за принципом телефонної конференції. Учасник (блок управління) «висловлює» свою інформацію (дані) до лінії передачі, тоді як інші учасники «слухають» цю інформацію. Деякі учасники знаходять цю інформацію цікавою та використовують її. Інші просто ігнорують її.

Автомобіль починає рух, але двері з боку водія зачинені нещільно. Щоб попередити водія про це, модулю чек-контролю необхідні дві інформації:

  • автомобіль рухається.
  • двері з боку водія відчинені.

Інформацію сприймають сенсорний датчик дверного контакту / , і вона перетворюється на електричні сигнали. Ці електричні сигнали знову перетворюються, тепер у цифрову інформацію, і у вигляді двійкового коду пересилаються каналом передачі даних, поки не надійдуть на приймальний пристрій. Що ж до сигналу про обертання коліс, цей сигнал необхідний також і іншим керуючим пристроям, наприклад, керуючого пристрою . Належить це також і до деяких інших автомобілів, які оснащені системою активного керування ходовою частиною. Залежно від швидкості руху у разі змінюється кліренс у тому, щоб оптимізувати становище автомобіля на дорозі. Вся інформація проходить через бус даних і може бути проаналізована кожним учасником.

Система передачі даних CAN-бус є системою мультимайстер – систему множинного доступу, що означає наступне:

  • усі мережеві вузли (керуючі пристрої) рівнозначні.
  • всі вони однаково мають доступ до системи намиста, обробки несправностей і контролю відмов.
  • кожен мережевий вузол має можливість самостійно і самостійно без допомоги іншого мережного вузла отримати доступом до каналу передачі.
  • якщо відмовляє один мережевий вузол, це викликає виходу з ладу всієї системи загалом.

У системі множинного доступу доступ до передачі є неконтрольованим, тобто поки канал передачі даних відкритий, доступ до нього отримують
багато мережних вузлів. Якби сталося так, що одночасно була надіслана вся інформація від усіх джерел, то настав би повний хаос

Це могло б призвести до «зіткнення» даних. Отже, слід стежити за порядком. Тому в системі CAN-бус існує чітка ієрархія — хто має надіслати свою інформацію найпершим, а хто має зачекати. При програмуванні мережних вузлів було визначено черговість, залежно від важливості тих чи інших даних. Згідно з чергою, дані з більш високим пріоритетним правом є першими по відношенню до даних з нижчим пріоритетним правом. Якщо надсилання даних із мережного вузла з високим пріоритетом, то інші мережні вузли автоматично.

Як діє ієрархія (логіка передачі) у системі CAN-бус?

Приклад:
Повідомлення, яке надходить з керуючого пристрою, що відповідає за технічну безпеку, як, наприклад, з блоку управління ABS, завжди
буде мати більш високий пріоритет у порівнянні з повідомленням блоку управління приводом.

У системі CAN визначається різниця між домінантними та рецесивними рівнями передачі. Рецесивний рівень має значення 1, а домінантний
рівень має значення 0. Тепер, якщо багато блоків управління одночасно посилають передачі домінантного та рецесивного рівня, то керуюче
пристрій з домінантним рівнем має право надіслати своє повідомлення насамперед.


На цьому прикладі можна ще раз пояснити доступ до передачі даних. У цьому випадку три мережні вузли хочуть передати по системі свої дані. Під час процесу арбітражної оцінки - вибору черговості - блок управління S1 перерве свою спробу передачі в пункті А, тож його рецесивний рівень долається домінантними рівнями інших керуючих пристроїв S2 і S3.

Керуючий пристрій S2 перерве свою спробу передачі в пункті з тієї ж причини, що була вказана раніше. Таким чином верх отримує керуючий пристрій S3, він може тепер передати своє повідомлення.

Що таке протокол даних?

Передача даних відбувається за протоколом даних дуже короткі проміжки часу. Протокол складається з величезної кількості біт інформації, розміщених у певному порядку. Число біт залежить від величини поля даних. Біт є найменшою одиницею інформації, вісім біт утворюють байт = послання. Це послання має цифрову форму і може виражатися значеннями 0 або 1.

Передача даних CAN-бус у легковому Автомобілі

У наші дні в сучасних автомобілях знаходять застосування 2 системи CAN-бус:
Швидкісна передача даних – High=Speed-Bus (ISO 11898)

  • SAE CAN Class C.
  • передача даних 125 Кбіт/сек – 1Мбіт/сек.
  • довжина передачі до 40 метрів при 1 Мбіт/сек.
  • вихідний струм передачі > 25 мА.
  • низьке споживання струму.
  • до 30 мережних вузлів.

Завдяки своїй високій швидкості передачі даних (передача критичної інформації в режимі реального часу за мілісекунди), ця бус-система
знайшла застосування в агрегатах приводу, де пов'язані між собою в єдину мережу блоки керування двигуном, трансмісією, ходовою частиною та гальмами.

Низькошвидкісна передача даних Low-Speed-Bus (ISO 11519-2)

  • SAE CAN Class Ст.
  • передача даних 10 Кбіт/сек – 125 Кбіт/сек.
  • максимальна довжина передачі залежить від обсягу передачі.
  • вихідний струм передачі< 1 мА.
  • система стійка до короткого замикання.
  • низьке споживання струму.
  • до 32 мережних вузлів.

Ця система знаходить своє застосування в салоні, де пов'язані між собою в єдину мережу компоненти електронних вузлів кузова бортової електроніки,
що відповідає за комфорт.

Діагностика системи CAN-BUS

Можливі несправності системи CAN-бус:

  • обрив провідників.
  • замикання на масу.
  • замикання на батарею
  • замикання CAN-High / CAN-Low.
  • надто низька напруга живлення / розряджений акумулятор.
  • відсутність резисторних перемичок.
  • напруги перешкод, наприклад, несправна котушка запалювання, що викликає спотворення сигналу.

Пошук несправності:

  • перевірити роботу системи.
  • запит банк несправностей.
  • ознайомитись із переліком виміряних характеристик.
  • вивести сигнал на екран осцилоскопа.
  • перевірити граничну напругу.
  • виміряти опір провідників.
  • виміряти опір резисторних перемичок.

Пошук причин несправностей

Перед початком пошуку причини несправності необхідно чи немає у цьому автомобілі додаткових пристроїв, які мають

у системі передачі доступу до інформації системи передачі. Може статися, що внаслідок проникнення в систему її було порушено. Можливості пошуку несправностей у системі передачі залежать від багатьох чинників. Вирішальним є те, які можливості надав виробник. Це може бути пошук несправності за допомогою приладу для діагностики, якщо у Вашому розпорядженні знаходиться відповідний прилад, або Ви маєте в своєму розпорядженні «тільки» тестер і осцилоскоп. Також дуже важливо мати у своєму розпорядженні спеціальні дані щодо автомобіля (електричні схеми, докладний описсистеми передачі даних і т.д.), щоб уникнути розриву мережевої єдності автомобіля.

Під час пошуку несправності, все одно за допомогою тестера або осцилоскопа, необхідно діяти за операціями, використовувати структурний підхід. Це означає, що несправність можна локалізувати простим «промацуванням», тобто випробувати в роботі, щоб обмежитися надалі лише необхідними вимірами. Для того, що Ви могли собі це уявити наочніше, візьмемо як приклад пошуку несправності конкретний автомобіль. У нашому випадку це буде (кузов W210).

Було заявлено про таку несправність:

Склопідйомник з боку пасажира не працює.

Перевірка працездатності:

1. Чи можна вплинути на склопідйомник з місця водія?

У цьому випадку обидва пристрої керування дверима, провідники системи CAN-бус та електродвигун склопідйомника знаходяться у робочому стані. Несправність полягає, ймовірно, у поломці вимикача склопідйомника з боку пасажира.

Чи можна скористатися іншими функціями (наприклад, змінити положення дзеркала)?

Якщо можна скористатися іншими функціями, потрібно виходити з того, що пристрій керування дверима і система CAN-бус знаходяться в робочому стані. Можливою причиноюнесправності є поломка вимикача склопідйомника з боку водія або електродвигуна склопідйомника з боку пасажира. Це можна дізнатися, якщо перевірити цю функцію з місця пасажира. Якщо склопідйомник працює, то електродвигун можна виключити. Для пошуку несправності потрібно зосередитись на вимикачі з боку водія.

Якщо з місця водія не можна привести в дію жодну з функцій обладнання, що знаходиться на стороні пасажира, цілком можливо, що причиною несправності є несправність системи CAN-бус або несправність керуючого пристрою.

Порівняння правильного та неправильного зображень осцилоскопа



Для підключення осцилоскопа до системи CAN-бус потрібно знайти потрібне місце для підключення. Як правило, воно знаходиться на роз'ємному з'єднанні між пристроєм, що управляє, і провідником даних CAN-бус. У нашому прикладі з боку пасажира, у кабельному каналі під швелерною планкою (дивися малюнок), є розподільник потенціалів.


Тут окремі провідники CAN-буса від керуючих пристроїв сходяться разом. До розподільника потенціалів можна підключити осцилоскоп безвсіх труднощів.


Якщо на підключеному осцилоскопі не спостерігається жодного сигналу, то є порушення передачі даних CAN-бус. Для того, щоб визначити, в якому місці знаходиться несправність, тепер потрібно від'єднати окремі роз'єми. При цьому спостерігати показання осцилоскопа. Якщо після вимкнення роз'єму на екрані осцилоскопа з'являється сигнал, система CAN-бус знову працює. Несправність перебуває у системі, що з штепсельним роз'ємом. Усі вимкнені раніше роз'єми потрібно поставити на місце. Наступне завдання полягає в тому, щоб визначити, якому саме керуючого пристрою належить роз'єм, що відноситься до несправної системи. Тут виробник жодних даних не наводить.

Для того, щоб спростити пошук і зробити його більш ефективним, потрібно знову методом спроб з'ясувати, які саме системи не працюють. За наявності характеристик та інших даних автомобіля, про електричне з'єднання та розміщення окремих блоків управління, несправну систему можна визначити без жодних труднощів. Відключаючи роз'єм CAN-бус на керуючому пристрої, і підключаючи роз'єм на розподільнику потенціалів, можна визначити, чи є причина несправності в кабельному з'єднанні або керувальному пристрої. Якщо на осцилоскопі можна розпізнати сигнали, система CAN-бус знаходиться в робочому стані і кабельне з'єднання також знаходиться в робочому стані. Якщо після підключення керуючого пристрою сигнали на осцилоскопі розпізнати неможливо, причина несправності полягає в несправності самого керуючого пристрою. Якщо встановлено факт несправності кабельного з'єднання, то, вимірюючи опір і напругу, можна визначити замикання на масу або плюс, або замикання між проводами.


У автомобілях, які не мають розподільника потенціалів, пошук несправності вимагатиме значно більших зусиль. Осцилоскоп доведеться підключати до проводів CAN-бус у відповідному для цього місці (наприклад, на роз'ємному з'єднанні блоку управління). Потім потрібно по черзі знімати всі пристрої, що управляють, і роз'ємні з'єднання CAN-бус від'єднувати безпосередньо від блоків управління. У цьому випадку необхідно мати технічну документацію з даними про автомобіль, щоб визначити, які керуючі пристрої і де розташовані. Перед вимкненням роз'ємів та після вимкнення роз'ємів необхідно спостерігати за зображенням на екрані осцилоскопа. Наступні дії нічим не відрізняються від тих, що ми здійснювали на прикладі нашого автомобіля.

Для перевірки резисторних перемичок потрібно, щоб CAN-бус перебував у стані спокою (Sleepmode). Керуючі пристрої під час проведення вимірювань мають бути підключені. Загальний опір, що складається паралельно включених однакових резисторів по 120 Ом, становить 60 Ом. Цей опір вимірюється між провідниками CAN-High і CAN-Low.

Встановлення додаткових пристроїв

Встановлення додаткових пристроїв, наприклад, систем навігації, для роботи яких необхідне отримання сигналів із системи CAN-бус, є складною проблемою. Вона полягає в першу чергу в тому, щоб знайти зручне місце для доступу, наприклад, до отримання сигналу швидкості автомобіля, а зробити це, не маючи під рукою технічної документації автомобіля, дуже складно.

У всесвітній мережі існують сайти, де можна знайти інформацію про способи та місця підключення та встановлення різних пристроїв. Ці відомості, зрозуміло, не дають жодних гарантій, тому в будь-якому випадку весь ризик на себе бере авторемонтна майстерня, якщо наважиться використати такі дані. Однак у будь-якому випадку найнадійніший спосіб - це ознайомитися з технічною документацією виробника автомобіля. Для того, щоб познайомитись з усіма можливими системами CAN-бус, вивчити передачу даних, пристрій, роботу та пошук несправностей, далі – як можна встановлювати додаткові пристрої – ми у будь-якому випадку радимо пройти спеціальне навчання.

Часто при покупці або встановленні фаркопу Вам пропонують придбати блок погодження. Розбираємось - для чого він потрібен і чому не можна обмежиться звичайним універсальним комплектом електрики для під'єднання фаркопа на те чи інше авто.

Smart Connec t - з англійської можна перекласти, як "розумне підключення". Саме так і відбувається підключення електрики у сучасних автомобілів, оснащених складними електронними схемами та бортовими комп'ютерами.

У сучасних автомобілях застосовується так звана can-bus (кан-шина) або інші різновиди аналогових та цифрових шин. Шина can-bus необхідна для керування складними системами безпеки та системами покращення комфорту водія (ABS, ESP, TSP та ін). Ці системи у свою чергу використовують безліч датчиків, від кожного датчика проходить як мінімум один провід, тому каншина передбачає підключення величезної кількості всіляких проводів.

Кан-шиною управляє бортовий комп'ютер, коли всі сигнали йдуть лише двома проводами. Коли необхідно прийняти певний сигнал у потрібному місці, там же встановлюється приймальний блок дешифрування, який з'єднується зі споживачем сигналу (датчиком, двигуном та ін. механізмом).

У разі використання фаркопа в легковий автомобільситуація виглядає так. До дешифратора блоків задніх світлових ліхтарів автомобіля (стопи, габарити, протитуманки, поворотники, задній хід та ін.) приходять два дроти, а виходять вісім або десять. Теоретично можна спробувати підключитися до проводів після дешифратора і не ставити блок погодження Smart Connect. Але не все так просто на жаль, за такої спроби підключення автомобіль відреагує спрацюванням системи Check Control (CC). Подвійне збільшення навантаження через світлотехніку причепа призводить до зміни опору ланцюга. У свою чергу, бортовий комп'ютер автомобіля відреагує на незрозумілу зміну сили струму. Реакція може бути різною, від спроби відключення ланцюга, визначення задніх ліхтарів як несправних до різних "глюків" світлотехніки та виходу з ладу окремих вузлів автомобіля. Ось від таких проблем і рятує блок погодження Smart connect.

Як відбувається підключення через Smart Connect?

Електрика з блоком can-bus підключається, як і звичайна універсальна енергія - обтискними кліпсами паралельним підключенням. Але підключення здійснюється до блоку узгодження, а не до розетки фаркопа. Сам блок погодження підключається додатково до акумулятора або дроту живлення. У такому випадку з підключеним причепом ви отримуєте тільки керуючий сигнал на включення того чи іншого електроприладу, а живлення на розетку фаркопа йде вже через виходи блоку смарт-коннект, які запитані від бортового акумуляторабезпосередньо. Тому виключені втрати енергії в електросистемі машини, яку контролює бортовий комп'ютер, він просто не реєструє невідомих зовнішніх підключень. Універсальний блок погодження встановлюється більшість сучасних авто.

можна у магазині причепів.

Важливо!

Якщо Ваш авто оснащено режимом буксирування причепа, під час використання smart connect режим працювати не буде. Для активації таких та деяких інших режимів необхідно використовувати оригінальні блоки погодження для конкретного авто.