3.4. Канальний рівень Саn.
Канальний рівень CAN складається з двох підрівнів: LLC і MAC (див. табл. 3.1). Нижче описані тільки головні ідеї, покладені в основу їх функціонування.
У CAN-мережі жоден з вузлів не має адреси. Замість цього повідомлення посилаються «всім», але містять ідентифікатор, який описує сенс посиланих даних. Відповідно до цього ідентифікатора будь-який вузол мережі може прийняти це повідомлення, якщо воно необхідне пристрою для функціонування. Повідомлення приймається вузлом, якщо його ідентифікатор проходить через фільтр повідомлень, наявний в кожному вузлі.
У CAN-мережі гарантується, що повідомлення буде прийнято будь-яким з вузлів в один і той же час або не буде прийнято жодним з них. Це досягається завдяки широкомовній передачі і використаним методом підтвердження прийому повідомлень.
Коли мережа вільна, будь-який вузол може почати передачу повідомлення. Але кожне повідомлення має свій пріоритет при отриманні доступу до шини. Тому передачу може здійснити тільки один пристрій — той, яке містить повідомлення з найвищим пріоритетом.
Боротьба за доступ до шини відбувається таким чином. Якщо два або більше пристрої виявили, що лінія вільна і почали передачу повідомлень одночасно, то конфлікт вирішується шляхом побітового порівняння ідентифікатора передаваного повідомлення із станом лінії. В процесі арбітражу (врегулювання конфлікту) кожен пристрій порівнює логічний рівень передаваного біта з логічним рівнем на шині. Якщо ці рівні однакові, пристрої продовжують передавати наступний біт ідентифікатора. Якщо приймач пристрою показує, що на шині домінантний рівень, а передавач в цей же час передає рецесивний рівень, то пристрій відразу припиняє передачу даного повідомлення. Такий механізм арбітражу гарантує, що ні інформація, ні час не будуть втрачені.
Повідомлення в CAN передаються за допомогою фреймів (блоків даних). Використовується два різних формати фреймів, які розрізняються довжиною поля ідентифікатора: стандартний фрейм з ідентифікатором завдовжки 11 біт і розширений фрейм з довжиною ідентифікатора 29 біт.
Існує чотири різні типи фреймів:
•DATA FRAME (фрейм даних) переносить дані від передавача до приймача;
•REMOTE FRAME (дистанційний фрейм, фрейм виклику) передається одним з пристроїв для того, щоб отримати від іншого пристрою дані у форматі DATE FRAME з тим же ідентифікатором, що і в REMOTE FRAME;
ERROR FRAME (фрейм помилок) передається будь-яким пристроєм, що виявив помилку на шині;
OVERLOAD FRAME (фрейм перевантаження) використовується для запиту додаткової затримки між попередніми і подальшими даними.
Фрейм даних складається з наступних полів (рис.3.3): початок фрейма, поле арбітражу, поле контролю, поле даних, поле контрольної суми CRC, поле повідомлення про прийом і поле кінця фрейма. Поле даних може мати нульову довжину.
Рис. 3.3. Структура фрейму даних
Простір між фреймами представлений рецесивним станом шини (яке відповідає високому рівню на рис. 3.3, оскільки CAN-передавачі інвертують логічні рівні). Тільки при рецесивному стані шини пристрій може почати передачу фрейма.
- 1.1. Багаторівнева архітектура
- 1.2. Відмінність промислових мереж від офісних.
- 1.3. Основні поняття промислових мереж.
- 1.4. Модель osi
- Контрольні питання
- 2.1. Принципи побудови
- 2.2. Узгодження лінії з передавачем і приймачем
- 2.3. Топологія мережі на основі інтерфейсу rs-485
- 2.4. Усунення стану невизначеності лінії
- 2.5. Крізні струми.
- 2.6. Інтерфейси rs-232 і rs-422
- Контрольні питання
- 3.1. Основні властивості can.
- 3.2. Фізичний рівень Саn.
- 3.3. Типова структура трансіверу Саn.
- 3.4. Канальний рівень Саn.
- Контрольні питання
- 4.1. Загальні відомості про Profibus.
- 4.2. Фізичний рівень
- 4.3. Канальний рівень Profibus dp
- 4.4. Резервування
- 4.5. Опис пристроїв
- Контрольні питання
- 5.1. Загальні відомості про протокол Modbus.
- 5.2. Фізичний рівень
- 5.3. Канальний рівень
- 5.4. Прикладний рівень.
- Контрольні питання
- 6.1. Особливості Ethernet.
- 6.2. Фізичний рівень
- 6.3. Канальний рівень
- Контрольні питання
- Література