Главная       Продать работу       Заказать работу       Блог       Контакты       Оплата       О нас       Как мы работаем       Регистрация       Вход в кабинет
Тех. дипломные работы
   автомобили
   спец. техника
   станки
   тех. маш.
   строительство
   электроснабжение
   пищевая промышленность
   водоснабжение
   газоснабжение
   автоматизация
   теплоснабжение
   холодильники
   машиностроение
   др. тех. специальности

Тех. курсовые работы
   автомобили
   спец. техника
   станки
   тех. маш.
   строительство
   детали машин
   электроснабжение
   газоснабжение
   водоснабжение
   пищевая промышленность
   автоматизация
   теплоснабжение
   ТММ
   ВСТИ
   гидравлика и пневматика
   машиностроение
   др. тех. специальности

Тех. дополнения
   Отчеты
   Расчетно-графические работы
   Лекции
   Задачи
   Лабораторные работы
   Литература
   Контрольные работы
   Чертежи и 3D моделирование
   Тех. soft
   Рефераты
   Общий раздел
   Технологический раздел
   Конструкторский раздел
   Эксплуатационный раздел
   БЖД раздел
   Экономический раздел
   Экологический раздел
   Автоматизация раздел
   Расчетные работы

Гум. дипломные работы
   педагогика и психология
   астрономия и космонавтика
   банковское, биржевое дело
   БЖД и экология
   биология и естествознание
   бухгалтерский счет и аудит
   военное дело
   география
   геология
   государство и право
   журналистика и СМИ
   иностранные языки
   история
   коммуникации
   краеведение
   кулинария
   культура и искусство
   литература
   экономика и торговля
   математика
   медицина
   международное отношение
   менеджмент
   политология
   музыка
   религия
   социология
   спорт и туризм
   таможенная система
   физика
   химия
   философия
   финансы
   этика и эстетика
   правознавство

Гум. курсовые работы
   педагогика и психология
   астрономия и космонавтика
   банковское, биржевое дело
   БЖД и экология
   биология и естествознание
   бухгалтерский счет и аудит
   военное дело
   география
   геология
   государство и право
   журналистика и СМИ
   иностранные языки
   история
   коммуникации
   краеведение
   кулинария
   культура и искусство
   литература
   экономика и торговля
   математика
   медицина
   международное отношение
   менеджмент
   политология
   музыка
   религия
   социология
   спорт и туризм
   таможенная система
   физика
   химия
   философия
   финансы
   этика и эстетика
   правознавство

Гум. дополнения
   Отчеты
   Расчетные работы
   Лекции
   Задачи
   Лабораторные работы
   Литература
   Контрольные работы
   Сочинения
   Гум. soft
   Рефераты

Рефераты
   Авиация и космонавтика
   Административное право
   Арбитражный процесс
   Архитектура
   Астрология
   Астрономия
   Банковское дело
   Безопасность жизнедеятельнос
   Биографии
   Биология
   Биология и химия
   Биржевое дело
   Ботаника и сельское хоз-во
   Бухгалтерский учет и аудит
   Валютные отношения
   Ветеринария
   Военная кафедра
   ГДЗ
   География
   Геодезия
   Геология
   Геополитика
   Государство и право
   Гражданское право и процесс
   Делопроизводство
   Деньги и кредит
   ЕГЭ
   Естествознание
   Журналистика
   ЗНО
   Зоология
   Издательское дело и полиграф
   Инвестиции
   Иностранный язык
   Информатика
   Информатика, программировани
   Исторические личности
   История
   История техники
   Кибернетика
   Коммуникации и связь
   Компьютерные науки
   Косметология
   Краеведение и этнография
   Краткое содержание произведе
   Криминалистика
   Криминология
   Криптология
   Кулинария
   Культура и искусство
   Культурология
   Литература : зарубежная
   Литература и русский язык
   Логика
   Логистика
   Маркетинг
   Математика
   Медицина, здоровье
   Медицинские науки
   Международное публичное прав
   Международное частное право
   Международные отношения
   Менеджмент
   Металлургия
   Москвоведение
   Музыка
   Муниципальное право
   Налоги, налогообложение
   Наука и техника
   Начертательная геометрия
   Оккультизм и уфология
   Остальные рефераты
   Педагогика
   Политология
   Право
   Право, юриспруденция
   Предпринимательство
   Прикладные науки
   Промышленность, производство
   Психология
   психология, педагогика
   Радиоэлектроника
   Реклама
   Религия и мифология
   Риторика
   Сексология
   Социология
   Статистика
   Страхование
   Строительные науки
   Строительство
   Схемотехника
   Таможенная система
   Теория государства и права
   Теория организации
   Теплотехника
   Технология
   Товароведение
   Транспорт
   Трудовое право
   Туризм
   Уголовное право и процесс
   Управление
   Управленческие науки
   Физика
   Физкультура и спорт
   Философия
   Финансовые науки
   Финансы
   Фотография
   Химия
   Хозяйственное право
   Цифровые устройства
   Экологическое право
   Экология
   Экономика
   Экономико-математическое мод
   Экономическая география
   Экономическая теория
   Этика
   Юриспруденция
   Языковедение
   Языкознание, филология

Главная > Блог


CAN протокол

CAN протокол був розроблений фірмою Robert Bosch GmbH для використання в автомобільній електроніці, відрізняється підвищеною завадостійкістю, надійністю і володіє наступними можливостями:

- конфігураційна гнучкість,

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

- режим Мультімастер,

- виявлення помилок і передача сигналів про помилки,

- автоматична передача збійних повідомлень при отриманні можливості повторного доступу до шини,

- відмінність між випадковими помилками і постійними відмовами вузлів з можливістю виключення дефектних вузлів,

- працює по кручений парі на відстані до 1 км.

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

- об'єктний рівень забезпечує фільтрацію повідомлень і обробку повідомлень і станів;

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

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

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

Фізичний рівень визначається стандартом ISO 11898 і характеризується наступними можливостями. Диференціальне включення приемопередатчиков забезпечує придушення синфазної перешкоди, при цьому рівень сигналів становить 1/3 від значення напруги живлення, причому саме напруга живлення не визначається жорстко. Наприклад, типові значення при напрузі живлення +5 В наведені на малюнку 1, причому домінуючим рівнем є нижній рівень, а рецесивним, відповідно, верхній.

Малюнок 1 - Сигнальні рівні на CAN - шині

Характеристики мережі:

- максимальна відстань між вузлами - до 1 км;

- швидкість обміну до 1 Мбіт / с при довжині лінії 60 м;

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

Рисунок 2 - Два типи гальванічної розв'язки

У CAN протоколі визначені наступні типи фреймів:

- фрейм даних переміщує дані з передавача на приймач (приймачі);

- віддалений фрейм запрошувати передачу фрейму даних, пов'язаного з певним ідентифікатором;

- фрейм помилки висловлює, який вузол виявив помилку шини / мережі;

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

Розглянемо докладніше фрейм даних (малюнок 3). Він складається з стартового поля SOF, поля арбітражу Arbitration Field, керуючого поля Control Field, поля даних Data Field, поля контрольної суми СRC, поля підтвердження ACKField, поля кінця фрейму EOF. Поле SOF (Start of Frame) знаходиться на початку фрейму даних і віддаленого фрейма і містить один домінуючий біт. Поле арбітражу Arbitration Field містить 11 бітовий ідентифікатор і RTR біт, що показує, є даний фрейм фреймом даних або віддаленим фреймом. Ідентифікатор призначений для адресації повідомлень і використовується механізмом арбітражу.

Малюнок 3 - Фрейм даних Управляє полі Control Field (малюнок 4) містить 6 бітів, з яких 4 біта (DLC0 DLC4) складають поле Data Length Code, що показує кількість байтів даних, яке передаватиметься в поле даних; два інших біта зарезервовані для наступних редакцій протоколу.

Малюнок 3.4 - Управляє полі фрейма даних

Поле даних Data Field містить передані дані, причому кількість переданих байтів вказується в полі Control Field і не може перевищувати 8. Поле CRC забезпечує механізм надлишкового контролю по парності переданих даних. Поле підтвердження ACK Field (малюнок 5) містить ділянки ACK Slot і ACK Delimiter і виконує наступну функцію: передавальний вузол посилає по одному рецесивним біту на кожній з ділянок, а приймач, якщо він прийняв повідомлення без збоїв, встановлює на лінії домінуючий біт в полі ACK Slot. При накладенні рецесивного і домінуючого рівнів на лінії встановлюється домінуючий, і ця подія сигналізує передавальному вузлу про те, що передача пройшла нормально і повтор не потрібно.

Малюнок 5 - Поле підтвердження фрейма даних.

Поле кінця фрейму EOF міститься в фреймі даних і віддаленому фреймі і складається з семи рецесивних бітів.

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

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

- 11-бітового поля ідентифікатора;

- RTR-біту.

RTR-біт вказує, чи є фрейм фреймом даних або віддаленим фреймом.

11-бітове поле ідентифікатора передається від старшого до молодшого значущому биту. Домінуючий рівень - логічний 0. Одночасна передача біта з домінуючим рівнем (логічний 0) і біта з рецесивним рівнем (логічна 1) дає в результаті рівень логічного 0.

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

Якщо значення рівні, вузол здатний позику продовжити передачу. Якщо біт з пасивним рівнем (логічна 1) був переданий, а активний біт (логічний 0) виявлений на шині, то даний вузол втрачає право передачі і повинен припинити передачу наступних даних (малюнок 6). Вузол, який втратив шину, може зробити спробу передачі знову, коли поточна передача завершена.

Малюнок 3.6 - Приклад поразрядного арбітражу.

Важливо наступне: ідентифікатор з найнижчим значенням виграє арбітраж. Зі сказаного можна зробити наступні висновки. Пріоритетним є не передавальний або прийомний вузол, а повідомлення, що має менше значення ідентифікатора. Якщо в мережі один з вузлів (сервер) буде відповідальним за прийняття рішень, то він повинен мати найменший адреса із задіяних. Друга можливість, яку дає механізм арбітражу, використана в мережі верхнього рівня DeviceNet. У цій мережі кількість вузлів обмежена 64 і для адресації відведені молодші розряди ідентифікатора, а старші розряди призначені для кодування видів повідомлень. Природно, що повідомлення, що має 0 в старшому біті, захопить шину першим, незалежно від адреси вузла приймача. Це, у свою чергу, забезпечує передачу повідомлень першого виду, наприклад про аварію, по мережі першими, незалежно від адрес прийомних і передавальних вузлів.

CAN - це протокол, орієнтований на використання в умовах перешкод.

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

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

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

Існують наступні два типи вхідних фільтрів:

- фіксовані - фільтри, які вимагають, щоб біти відповідали точно одне одного (one for one);

- Mask and Match (маскіруемие) - фільтри, які застосовують маску до поля ідентифікатора, перш ніж він порівнюється з прийомним регістром коду.

Наприклад, на малюнок 7 регістр маски зконфігурований так, що отримані біти 10-6 ідентифікатора повинні відповідати бітам 10-6 в приймальному регістрі коду.

Малюнок 7 - Приклад поразрядного маскування.

У цьому прикладі біти 10-6 ідентифікатора повинні бути встановлені в 11 110, а решта не мають значення. Якщо біти 10-6 встановлені в 11110, то ці повідомлення приймаються незалежно від значень бітів 5-0.

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

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

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

Помилка заповнення з'являється, коли вузол виявляє шести (6) послідовних бітів одного і того ж значення. У процесі нормальної роботи, коли передавач виявляє, що він послав п`ять (5) послідовних бітів одного і того ж значення, він заповнює наступний біт протилежним значенням (це називається заповненням біта). Всі приймачі видаляють заповнені біти до обчислення CRC (контрольного коду). Таким чином, коли вузол виявляє шести (6) послідовних бітів того ж значення, виникає помилка заповнення.

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

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

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

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

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

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

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

Вузол починає передачу в стані активної помилки з лічильниками помилок, рівними нулю (0) .Узел в цьому стані «розуміє», що будь виявлена ​​помилка - не вважається несправністю.

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

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

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

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

CAN мікросхеми підтримують стандартний або розширений фрейм.

Стандартний фрейм означає, що CAN мікросхема підтримує 11 бітове поле ідентифікатора. Розширений фрейм означає, що мікросхема підтримує 29 бітове поле ідентифікатора. Нові САN мікросхеми можуть підтримувати формати як стандартного фрейма, так і формати розширеного фрейма.

Периферійна

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

У зв'язку з цим слід розглядати CAN як високошвидкісну мережу.

Малюнок 8 демонструє дві переданих поспіль CAN фрейма даних з мінімальним інтервалом між фреймами, званим інтервалом межфрейма.

Малюнок 8 - Мінімальний інтервал межфрейма

На малюнку 9 наведена таблиця, яка показує найжорсткіший режим переривання для випадку, якщо CAN приймач отримує всі фрейми під час поточної зв'язку (безперервні фрейми в режимі back to back).

Малюнок 3.9 - Трафік переривань

Рядок «Число бітів в CAN протоколі» в таблиці приймається з умовою, що заповнення додатковими бітами відсутній (природно, що таке заповнення збільшило б час між перериваннями).

З таблиці на малюнку 9 видно, що трафік переривань досить інтенсивний. На швидкості 500 кбіт / с переривання можуть відбуватися кожні 94 мкc за відсутності інформації в фреймах даних.

Більшість мікроконтролерів нижнього рівня не може підтримувати таку високу швидкість обробки переривань. Отже, потрібно знаходити компроміс між можливостями CAN контролера та його вартістю.

Слід вибирати CAN контролер, який забезпечує відповідний рівень попередньої фільтрації.

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

Також слід пам'ятати, що деякі CAN мікросхеми маскують тільки восьма найбільш значущих бітів поля ідентифікатора (не всі 11 бітів) і мають один фільтр МАСКИ / ВІДПОВІДНОСТІ.

Мікросхеми, які підтримують CAN протокол, випус каються різними постачальниками, такими як Philips, Motorola, Siemens, National Instruments і Intel.

Існують наступні два типи мікросхем. Вбудовані - мікросхеми, які включають в себе CAN контролер і один з видів інтегрованого мікроконтролера. Це Intel 80196СА, що містить в одному кристалі стандартний контролер 80196 і CAN контролер 82527; Philips 82С592 і 82С598, що мають контролер 80С51 і CAN контролер 82С200; Motorola 68HC05X4,68HC705X4, 68HC705X32 на основі М6805.

Периферійні - мікросхеми, що містять тільки CAN контролер. Це Intel 82527 з 14 фіксованими вхідними фільтрами, одним типу Mask-and-Match і підтримкою стандартного і розширеного фреймів; Philips 82С200 з одним вхідним фільтром типу Mask-and-Match і підтримкою стандартного фрейму; Siemens SAB 81C90,81C91 c 16 фіксованими вхідними фільтрами. Крім того, фірмами Philips і Texas Instruments випускається ряд буферних мікросхем, що формують сигнали CAN магістралі.

В даний час сan протокол активно використовується в індустріальних мережах. Такі відомі фірми, як Hoheywell і Allan Bradley, розробили і підтримують мережеві протоколи верхнього рівня SDS і DeviceNet, причому останній є відкритим і на даний момент більше 200 фірм випускають і розробляють свої вироби в цьому стандарті. Крім того, досить відомими в Європі є стандарти мережі верхнього рівня CanOpen, CAL (Німеччина) і CanKingdom (Швеція). Всі ці мережі використовують CAN протокол на фізичному і транспортному рівнях. Фірма Advantech випустила плату PCL 841, що має 2 гальванічно розв'язаних CAN порту на Philips 82C200 і розробляє модулі віддаленого збору інформації з виходом на CAN; фірми Grayhill і Opto22 випустили недорогі периферійні контролери, що підтримують мережу DeviceNet, в комплекті WAGO I / O System також є контролер з виходом на CanOpen, DeviceNet і CAL. Фірма Hilscher випускає багатий набір плат з CAN протоколами (CanOpen, Device Net, SDS) для поширених системних шин типу ISA і PCI, для мезоніном шини PC / 104, а також у вигляді OЕМ модулів для виготовлювачів контролерів, які хочуть вмонтувати в свої вироби сумісність з CAN протоколами, не витрачаючи час і кошти на власні розробки. Ряд вітчизняних фірм також випускає вироби з CAN протоколом, у тому числі в популярному форматі MicroPC.

Використання CAN протоколу і мереж верхнього рівня на його основі при модернізації вітчизняних промислових підприємств дозволить розробникам засобів АСУ ТП вирішити ряд гостро стоять проблем:

- виконати вимоги завадостійкості;

- забезпечити сумісність з діючими в розвинених країнах стандартами;

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

- забезпечити підвищення живучості системи при застосуванні режиму «Мультімастер»;

- знизити вартість комунікацій (потрібно кручена пари).




Комментарии