Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
НОВІТНІ ЕЛЕКТРОННІ СИСТЕМИ(СУПЕР).doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
14.03 Mб
Скачать

Глава 7. Протокол can для автомобільних мультиплексних систем

7.1. Попередні зауваження

Протокол CAN розробили інженерами фірми R.Bosch Gmb до застосування автомобілями. Протокол відповідає міжнародних стандартів ISO 11898 і 1SOH519, практично використовується кількома виробниками електронних приладів. Протокол CAN визнаний автомобільними виробниками навіть Європи, використовується на сучасних легкових автомобілях, вантажівках, автобусах, сільськогосподарському транспорті, в морському обладнанні, для автоматизації виробництва |14J. Протокол CAN підтримує метод доступу CSMA/CD-A до неї із однаково ранговими вузлами. Пакет даних має розмір трохи більше 8 байт і передається по послідовної шині. 15-битовый циклічний контроль надмірності забезпечує високий рівень цілісності даних. Використовуваний нині протокол CAN версії v2.0 і двох частин: версія v2.0A зі стандартним форматом кадру і v2.0B з розширеним форматом кадру. Версія v2.0A ідентична попередньої версії vl.2 і вдається до 11-битовое полі ідентифікатора. У версії v2.0B нулі ідентифікатора — 29 біт. Розширений формат кадру необхідний сумісності до існуючого комунікаційним протоколом J1850. Функції протоколу CAN реалізуються в мікропроцесорі з умонтованим контролером САК. Першими па ринку з'явилися контролери CAN з зовнішніми драйверами для шини. Нині виробляються кілька типів CAN-контроллерів, які можна розділити втричі групи залежно для підтримки ними розширеного формату кадру:

• контролери v2.0A. Підтримують лише стандартний формат, що неспроможні працювати у мережі, де передаються і висококваліфіковані кадри розширеного формату;

• контролери v2.0B, пасивні. Підтримують лише стандартний формат, але можуть працювати у мережі, де передаються і ростити кадри розширеного формату;

• контролери v2.0B, активні. Підтримують операції з кадрами стандартного і розширеного форматів. Контролери CAN класифікуються як і повні чи базові залежно від організації буферизациї даних. Повний CAN-контролер має певна кількість (зазвичай 14) спеціалізованих буферів для тимчасового зберігання повідомлень. При ініціалізації CAN-контролера можна сконфігурувати його, вказавши, який кадр буде надходити до який буфер. 7.2. Архітектура протоколу CAN У стандартах Міжнародної організації стандартизації для протоколів CAN ISO 11898 (висока швидкість обміну) і ISO 11519 (низька швидкість обміну) регламентується рівнева структура відповідно до стандартами LAN (локальні мережі) ISO8802-2 і 8802-3. Протокол CAN належить до двох нижнім рівням моделі ВОС, як показано на рис. 7.1.

Глава 7. Протокол can для автомобільних мультиплексних систем

РИС. 7.1. Рівнева архітектура CAN

На фізичному рівні визначаються електричні характеристики з'єднувачів, шинних адаптерів, двійкове кодування, синхронізація. Фізичний рівень розділений втричі підрівні:

• MDI (medium dependent interface) — підрівень інтерфейсу, що залежить від фізичного носія (передає середовище);

• РМА (physical medium attachment) — підрівня під'єднання до фізичного середовищі;

• PLS (physical signaling) — сигнали на фізичному рівні. На канальному рівні визначається формат кадру, виявлення і передачі помилок під час трансляції, автоматична ретрансляція даних, фільтрація. Канатний рівень розділений на два підрівня:

• MAC (medium access control) — управління доступом до середовища;

• LLC (logic link control) — управління логічним каналом. Фізичний рівень контролюється функцією супервізора «контроль шини», наприклад, виявляються короткі замикання чи обриви на лінії. Канальний рівень контролюється функцією супервізора «обмеження поширення наслідків несправності», наприклад, різняться короткочасні збої і довгострокові несправності. 7.3. Передає середовище й нижні підрівні протоколу CAN Протокол CAN переважно призначений для мереж з шинної топологією і електричними проводами як каналу зв'язку (передавальної середовища). Можуть застосовуватися та інші передають середовища, здатні підтримувати стану високого/низького рівнів, що необхідне здійснення побітового арбітражу.

7.3. Передає середовище й нижні підрівні протоколу CAN

. Підключення до шині CAN Домінуючий рівень Не домінуючий рівень V-CANJ. V-CAN H Vdif Міжнародна організація стандартизації визначила стандарт ISO 11519-2 для шин CAN зі швидкістю обміну до 125 Кбіт/сек і ISO 11898 для швидкості обміну вище 125 Кбит/сек. Ці стандарти різняться лише специфікаціями нижніх підрівнів MD1 і РМА фізичного рівня протоколу САК у питаннях підключення до передавальної середовищі (шині). Підрівня MD1 і РМА іноді називають блоком MAU — medium access unit (блоком доступу до середовища передачі). На рис. 7.2 показано підключення до шині CAN відповідно до цими стандартами. Швидкісний канал зв'язку освічений двох провідною лінією (рис. 7.2, я), до обох кінців якої підключені характеристичні опору подолання відображень. Це диференційна лінія з придушенням синфазних перешкод. за рахунок низького характеристичного опору лінія має хорошу стійкість перед перешкодами, якщо використана вита пара. Повільний канал зв'язку також виконано двох провідним(рис. 7.2,

Рис. 7.2.

б). Кінці лінії через опір R = 2,2 кОм під’єднанні до джерела напруги різного розміру. Перевага такий лінії залежить від деякою інформаційної надмірності, т. до. дані, власне, дублюються і передаються незалежно з двох дротах. У разі пошкодження одного дроти

Рис. 7.3.

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

► Підрівня РМА (підключення до фізичного середовищі) визначає характеристики шинних драйверів і приймачів.

У цьому лінії шини CAN можуть міститися у одному з цих двох станів: домінуючого рівня (dominant) і домінуючого рівня (recessive). Якщо хтось із вузлів встановлює шину до стану домінуючого рівня, він буде встановлено, незалежно від станів інших вузлів. Ці стану

Глава 7. Протокол CAN для автомобільних мультиплексних систем визначаються диференційним напругою між провідниками шини, званими CAN_H і CAN_L (рис. 7.3). Величина диференціального напруги для стану домінуючого рівня становить 1,5...3 У, для стану не домінуючого рівня 0,5...+0,05 У. Характеристики тінних драйверів задаються стандартом ISO 11898, де всі електричні специфікації. Наприклад, максимальну кількість підключаючих до шині вузлів на повинен перевищувати 30. На рис. 7.4 схематично показано підключення лінійного драйвера до швидкісної шині.

РИС. 7.4. Підключення драйвера до шині

Коли логічний рівень сигналу на вході Тх дорівнює «1», обидва транзистора в вихідному каскаді заплющені і вихід драйвера перебуває у високодисперсному стані. Шина перебуває у стані не домінуючого рівня, диференціальний напруга приблизно дорівнює нулю, напруга усунення близько 2,5 У. При подачі сигналу «0» на вхід Тх обидва транзистора відмикаються, диференціальний напруга стає рівним близько 2,5 У, шина перетворюється на стан домінуючого рівня. Наявність ланцюга зміщуючого напруги гарантує зміну полярності сигналів на входах компаратора «До» під час переходу шини від однієї стану до іншого. 7.4. Підрівень PLS На підрівні PLS реалізуються двійкове кодування і синхронізація, виясняється час передачі біта.

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

7.4. Підрівень PLS Доводиться вводити розділювальні сигнали в послідовності однойменних бітів для полегшення синхронізації.

► Час передачі одного біта схематично представлено па рис. 7.5. Протягом цієї часу виконуються функції управлінню шиною, такі як синхронізація ЭБУ, компенсація запізнювання в лінії, позиціонування моменту опитування (стробирование). Тривалість окремих сегментів і кванти програмується часозадавальною логікою адаптерів CAN. Тривалість кванта пов'язані з роздільну здатність підрівня PLS. Сегмент SYNC_SEG використовується для синхронізації різних ЭБУ, підключених до шині. Зміна рівня сигналу (наприклад, з «Про» на «1») передбачається цьому сегменті. Його тривалість завжди дорівнює одному кванту. Сегмент PROP_SEG служить як компенсація тимчасових затримок для розповсюдження сигналу в лінії проходженні його через адаптери. Сегменти PHASE_SEG1 і PHASE_SEG2 компенсують помилки фази, є підстави подовжили чи вкорочені при ресинхронізації. Момент опитування — точка часу, коли стан шини інтерпретується як значення відповідного біта.

► Синхронізація виробляється у момент переходу шини зі стану недомінуючого рівня стан домінуючого рівня.

Рис. 7.6. Синхронізація передачі біта

Цей перехід завжди повинен відбуватися протягом сегмента SYNC_SEG. Для компенсації різних збоїв або затримку в лінії використовується скорочення тривалості сегмента PHASESEG2 стосовно номінальному значенням чи збільшення тривалості сегмента PHASESEG1. Зміна тривалості сегментів програмується не більше 1...4 квантів, але з більш значення PHASE_SEG1. На рис. 7.6 поминальні значення тривалостей сегментів становлять: PROP_SEG — 6 квантів, PHASE_SEG1 і PHASESEG2 по 7 квантів. При нульовий фазової помилці (е = 0) фронт сигналу чинить упродовж сегмента SYNCSEG зволікається без жодної компенсації тривалості. При негативною фазової помилці (е < 0), у її накопиченні, фронт сигналу може з'явитися після стробіювання. Щоб запобігти цього скорочено тривалість сегмента PHASE_SEG2 попереднього біта із сьомої до 6 квантів. При позитивної фазової помилці (е > 0) фронт сигналу може пройти досі стробіювання у її накопиченні. Щоб запобігти цього збільшена тривалість сегмента PHASE_SEG1 із сьомої до 8 квантів. 7.5. Підрівень MAC (Управління доступом до середовища в CAN) На підрівні MAC здійснюється упаковка даних в кадри формату CAN з різними управляючими бітами, серіалізація, додавання розділювальних бітів, арбітраж, виявлення помилок, і перевантаження, перевірка підтверджень. Передача інформацією мережі CAN здійснюється кадрами чотирьох форматів:

• кадри даних, служать передачі інформації від вузла до вузлу;

• кадри запиту, для запиту даних одним вузлом в іншого;

• кадри помилки, передаються вузлом, які виявили якусь помилку;

• кадри перевантаження (переповнення), використовуються передавачем для припинення видачі кадрів до мережі. Між кадрами вводиться між кадрове простір і за передачі кадрів використовуються п'ять процедур управління:

• вставка додаткових бітів для синхронізації;

• побітовий арбітраж;

• виявлення помилок;

• контроль циклічності надлишковим кодом;

• сигналізація помилок.

► Кадр даних служить передачі повідомлень по мережі і складається з семи основних полів (рис. 7.7). Стандартний формат починається з стартового біта SOF (start of frame — початок кадру). Далі йде арбітражне полі з 11-битовым ідентифікатором, потім індикатор запиту. Індикатор показує, що це кадр — інформаційний чи кадр запиту. У разі у кадрі відсутня полі даних. Котра Управляє полі містить один біт ідентифікатора розширення, який би, розширений це формат чи стандартний; один біт зарезервований за майбутніми можливими розширеннями, решта чотири біта несуть інформацію про кількість байтів даних у кадрі на полі даних. У центрі даних то, можливо від 0 до 8 байтів (64 біт).

7.5. Підрівень MAC (Управління доступом до середовища в CAN)

Рис. 7.7.

Рис. 7.8.

За роздільником CRC слід полі підтвердження АСК і роздільник АСК. Передатчик встановлює біт АСК до стану не домінуючого рівня («1»). Цей біт листується до стану домінуючого рівня («Про») тим приймачем, який взяв повідомлення правильно. Передавальний вузол цим сповіщають, що тільки одним вузлом його дані прийнято. Повідомлення підтверджується приймачем незалежно від цього, йому воно адресовано чи ні. Поле кінця кадру є кінцем повідомлення. Між двома сусідніми кадрами обов'язково вставляється полі роздільника. Якщо це останній кадр у міжнародному сполученні, шина перетворюється на режим очікування розширеного формату На рис. 7.8 показано початкова частина кадру даних розширеного формату з 29-битовым ідентифікатором. Біти індикатора запиту і індикатора розширеного формату нині напівживі не домінуючого рівня. Це означає, що кадр стандартного формату має як високий пріоритет стосовно кадру розширеного формату за однакової змісті перших 11-битов поля ідентифікатора

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

► Кадр помилки передається вузлом, які виявили якусь несправність. Кадр помилки надходить попри всі вузли і двох полів — поля прапора помилки і ниви роздільника. Прапор помилки то, можливо активним чи пасивним. Активний прапор складається з шести послідовних бітів може домінуючого рівня (рис. 7.10), пасивний — з 6 бітів недомінуючого рівня. Роздільник помилок складається з восьми бітів може недоминирующего рівня. Після виявлення прапора помилки вузли починають видавати на шину біти недомінуючого рівня, формуючи роздільник. При виявленні помилки кадр помилки то, можливо посланий поверх інших даних. Рис. 7.9. Кадр запиту