CAN (ControllerAreAnetwork) шина, т.е. мрежова шина на контролера, е широко използвана при индустриален контрол, медицинска електроника, домакински уреди и сензорни полета. Понастоящем вътрешната и чуждестранната литература за анализа на протоколите на CAN PROTOCOL на статията е главно за структурата на рамката на CAN до или битови характеристики на времето на анализа, като литературата рядко е от гледна точка на комуникацията на анализа на протокола CAN Bus Protocol , рядко от гледна точка на инженерните приложения, механизмът за комуникация на автобусите за задълбочен анализ на статията.
1. Може ли характеристики на приложението и структурен състав
Протоколът на автобусната шина има два международни стандарта, ISO11898 и ISO11519, от които IS011898 е високоскоростен стандарт за комуникация със скорост на комуникация от 125kbps до 1Mbps, което е шина със затворен контур с максимална дължина от 40 m/1Mbps. ISO11519 определя стандарт за комуникация с ниска скорост на комуникация със скорост на комуникация от 10 до 125kbps, което е стандарт за комуникация с ниска скорост с максимална дължина от 40 m/1Mbps. ISO11519 определя скоростта на комуникация от 10 до 125kbps нискоскоростен стандарт за комуникация, принадлежи към шината с отворен контур, максималната дължина от 1 км / 40kbps. Поради електрическите характеристики на ограниченията, тоест разпределението на шината на капацитета и разпределението на съпротивлението върху формата на вълната на шината, максималният брой възли в шината CAN е 110. За инженера на приложения само скоростта на предаване и битовите параметри От страна на приемо -предавателя трябва да бъде правилно конфигурирана за постигане на синхронизация на данни на приемо -възлите. Чрез хардуера на CAN Controller на маркера за съобщения филтрирането на маркера може да бъде реализирано от точка до точка, точка до-мултипойт и глобално излъчване и други начини за предаване и получаване на данни. В същото време, поради структурата на късата рамка на CAN Telegrams и всеки кадър съдържа CRC Check Part, която гарантира много ниска степен на грешка в данните.
Слоят на CAN Application, операционната система (реализирана като основна програма в приложения без операционна система) и драйверът в внедряването на системата заедно осъзнават функциите на слоя на приложения в ISO референтния модел. Сред тях слойът за приложения на CAN определя групирането на идентификационни лица, изпращане на зареждане на данни, получаване на обработка на данни и мониторинг на сигурността на шината на слоя; Операционната система/фоновата програма се използва за планиране на драйвера на CAN за обработка на данните след пристигането на прекъсването на CAN; Драйверът включва инициализация (настройване на работно състояние на контролера, настройка на скоростта на предаване, конфигурация на филтър за приемане), предател драйвер и програма за обработка на аномалия.
За преносния среден слой той трябва да бъде определен според шума от екологичните смущения, дължината на шината и т.н. В случай на силен смутен шум трябва да се използва екраниран проводник; Поради разпределението на капацитета, причинено от изкривяването на формата на вълната на шината и разпределението на съпротивлението, причинено от затихването на нивото на шината, дължината на шината трябва да вземе предвид разпределението на съпротивлението и характеристиките на капацитета на използваната предавателна среда; В същото време, ако използването на високоскоростна шина също трябва да експериментира, за да определи стойността на съпротивлението на съвпадение на шината.
За реализирането на CAN Controller можете да изберете CAN контролера, интегриран в системния основен чип, като например серията на микроконтролери на NXP, или можете също да използвате дискретни компоненти на контролера на CAN, като SJA1000 за реализация на CAN Transceivers , можете да изберете CTM1050, TJA1050 и т.н. Ако шумът от атмосферните смущения е голям, трябва да вземете предвид разпределението на средата на предаване Характеристики на устойчивост и разпределение на капацитета; В същото време, ако използвате високоскоростна шина, също трябва да определите съвпадащата устойчивост на шината чрез експерименти. Ако шумът от екологичните смущения е голям, е необходимо да се добави изолационен чип между контролера и приемо -предавателя или използването на интегрирана функция на изолация на приемо -предавателя. Струва си да се спомене, че новият чип на NXP LPC11C24 Microcontroller не само интегрира CAN контролер, но и интегрира функция CAN -предавател, която осигурява добра поддръжка за бързото развитие на автобусните системи CAN. В допълнение, според действителното прилагане на дължината на шината и броя на възлите в шината, също е необходимо да се разгледа времето за забавяне на предаването и приемането на чипа на приемо -преходния чип.
За слоя на драйвера на CAN и слоя на приложението, драйверът включва инициализация на CAN (включително хардуерно активиране, настройка на скоростта на предаване, конфигурация на таблицата за идентификация на филтъра на контролера), да се предава/предава драйвер и предоставя функции на интерфейса на горния слой, от който Необходимо е да се обясни, че конфигурацията на таблицата за идентификация на филтъра за приемане трябва да се основава на групирането на идентификатора на системата от слоя на приложението; Слоят на приложението CAN извършва пакет от данни въз основа на връзката за изпращане/получаване на данни между възлите в шината. Може ли слой на приложението според връзката за изпращане и получаване на данни между възлите в шината за групиране на идентификационния номер на пакета, изпращане на пакети с данни, получаване на обработка на данни и мониторинг на сигурността на шината на слоя. В допълнение, често използваните протоколи на горния слой на шината включват Canopen, Devicenet и ICAN.
2. Анализ на механизма за синхронизация на шината
В процеса на комуникация един от най -важните проблеми, които трябва да бъдат решени, е как да се постигне синхронизирането на данните в краищата на подателя и получателя, т.е., крайният край на приемника може правилно да получи и анализира данните, изпращани от края на подателя. е вид асинхронен протокол за серийна комуникация, който принадлежи към комуникацията на базовата лента и неговата синхронизация се реализира от протокола за контрол на връзките на високо ниво на данни (HDLC). По -конкретно, синхронизирането на протокола на автобусната шина се постига чрез 3 аспекта, както е описано по -долу.
2.1 Настройка на параметъра
И двете страни на комуникацията чрез софтуера задават една и съща скорост на предаване, една и съща дължина на сегмента за регулиране на фазата, същата ширина на скока на синхронизация, през горните три елемента, определени, определя дължината на битовото време в процеса на предаване на автобуса CAN като както и местоположението на точката на вземане на проби, структурата на бита, както е показано на фиг. 2, консервата на часовника на фигурата, която е дефинирана в протокола на времето на TQ, която се получава чрез честотното разделение на външен часовник или периферен часовник на процесора. Основният часовник на контролера на CAN се получава чрез разделяне на честотата на външния часовник или периферния часовник на процесора. SS сегментът съответства на стартовия сегмент, а ръбът на скачането в шината трябва да се появи през този период, TESG1 съответства на сегмента на предаването и сегмента на регулиране на фазата 1, а TESG2 съответства на сегмента на регулиране на фазата 2, и за високия- Скорочна шина, контролерът проби и дискриминира шината между TESG1 и TESG2.

2.2 Фиксирана структура на рамката
Може ли протоколът ясно да определи фиксирана структура на рамката, за да улесни контролера на CAN и приемо -предавател за наблюдение на състоянието на шината, в CAN2. 0 Спецификация Арбитражен домейн, стандартният кадър, използващ 11- битов идентификатор, докато разширеният кадър има битов идентификатор 29-, специфичният стандарт Рамка, разширена структура на рамката на рамката.
2.3.3 Твърда синхронизация и ресинхронизация
2.3.1 Твърда синхронизация
Така наречената твърда синхронизация означава, че през периода на празен ход (т.е. нивото на шината се изразява като непрекъснат рецесивен бит), след като контролерът открие скока от рецесивното ниво до доминиращо ниво, това означава, че в този момент там там там там е станция в шината, за да започне да изпраща данни, след което принуждавайте брояча на състоянието на бита на контролера на CAN да се синхронизира с SS сегмента, показан на фиг. 2, и в същото време битният часовник започва да преразказва От този момент нататък (Can Bit Time се определя от горния софтуерен слой). Твърда синхронизация се използва за началото на определянето на рамката.
2.3.2 Ресинхронизация
В протокола CAN шината ресинхронизацията се реализира въз основа на механизма за пълнене на бит. Подобно на HDLC протокола, в структурата на рамката на CAN, след като се открият пет последователни бита със същата полярност от началото на рамката до бита на последователността на CRC, CAN контролерът автоматично вмъква малко от противоположната полярност. Повторното синхронизация е, че по време на предаването на данни контролерът на CAN регулира сегмента на регулиране на фазата 1 и сегмент за регулиране на фазата 2, като открива разликата между скачащия ръб на шината и вътрешното време на възела, а размерът на регулиране е програмиран от синхронизацията Школата на скачане и размерът на корекцията е зададен в TQ. Специфичното правило за корекция е, че в процеса на предаване прескачащият ръб на шината, открит от контролера на CAN, се регулира от контролера на CAN, ако се намира във вътрешния SS битов период на възела, тогава не се изисква корекция; Ако ръбът на пропускането е разположен в сегмента TESG1, това означава, че има забавяне в малкото време на шината спрямо битовото време на възела, тогава контролерът CAN удължава периода на битовия период на TESG1 и ако контролерът на TESG1 на възела и ако и ако е Стойността на времето за забавяне (стойността на t 0) е по -голяма от ширината на пропускане на синхронизация, времето за удължаване е стойността на ширината на Synchronization Skip, в противен случай CAN контролера на възела разширява разликата между него и битовото време на шината; Ако ръбът на скока е разположен в сегмента TESG2, което показва, че малкото време на шината е преодоляно спрямо битовото време на възела, тогава контролерът на CAN намалява периода на TESG2 на възела, специфичните правила за корекция са подобни на това тези на сегмента TESG1.
3. Анализ на механизма на шината на шината
За разлика от индустриалния Ethernet, Rs485 и други автобуси, CAN шината изпраща и получава данни през идентификационния номер Софтуер с таблица за идентификация (в устройството за филтър за приемане на възела) и ако идентификационният номер на пакета с данни в шината съществува в таблицата на идентификатора на възела, тогава пакетът успешно Преминава приемането на филтърния блок за приемане на този възел и ще бъде изпратен до горния блок за обработка на софтуера и съответно обработен, в противен случай пакетът се изхвърля. Например, ако възел А в шината иска да изпрати пакет до възел B, идентификационният номер на пакета трябва Идентификационният номер на пакета трябва да бъде разположен в таблиците за идентификация на всички останали възли в шината. Както бе споменато по -рано, таблицата за идентификация е конфигурирана чрез софтуер, но функцията за филтриране на приемане се изпълнява чрез филтъра за приемане, хардуерна единица в контролера на CAN, така че забавянето, причинено от приемането, е малко по отношение на скоростта. В допълнение, предимството на използването на този адресен механизъм е, че системата, използваща тази шина, е много гъвкава, т.е. добавени или изтрити нови възли, не влияят на комуникацията между оригиналните възли на системата.
Следното ще вземе CAN контролера, интегриран с чипа LPC2478 на NXP като пример за определяне на метода за конфигуриране на адреса на автобусната система CAN. Както е показано на фигура 3, първо класифицирано според пакетите с данни, които ще бъдат предадени в шината, тоест идентификационният номер на пакета и съответното планиране на възлите, например, в нашата система има главно следните видове пакети: пакети за заявки, Контролни командни пакети (включително пакети за действие и параметри), пакети с алармени пакети и пакети за параметри на обратна връзка, съответстващи на характеристиките на възела на пакетите за заявки и командните пакети за контрол са главно главната станция, изпратена до всяко подчинено устройство, докато, докато докато Пакетите с данни за алармата и пакетите за данни за параметри за обратна връзка се изпращат главно от всяка единица на възлите на подчинения до възела на главния блок. След това, филтърната единица за приемане на всеки възел е конфигурирана според класификацията на ID, а специфичният метод за конфигуриране е следният: Първо, конфигурирайте съответните режими на работа на филтъра за приемане според характеристиките на възела: изключен режим (без получаване на съобщения на шината)) , режимът на байпас (получаване на всички съобщения в шината) и нормалния работен режим (хардуерно филтриране). Ако конфигурацията за нормалния режим на работа, тогава трябва да конфигурирате съответната таблица за филтър за приемане (таблица с идентификация), тоест възелът трябва да получи идентификационния номер на пакета на контролера на възлите, за да попълни съответната таблица на идентификатора, И това завършва работата с разпределение на адреса на автобусния възел. Най -общо казано, таблицата на идентификатора е разделена на следните четири области: ясна стандартна зона на идентификатор на рамката, стандартен формат на формат на формата на групата, ясна област на идентификатор на удължен формат на рамката и идентификатор на формат на формат на разширена рамка. Сред тях изричният формат е единен независим идентификатор на идентификатор, докато зоната на формата на групата последователно номерира идентификаторите на идентификационни номера.
4. Анализ на механизма на арбитраж на автобус
Арбитраж на автобус, се отнася, когато шината има повече от един възел едновременно, за да изпраща методи за обработка на протокол на шината за данни. Can Bus използва неразрушителен арбитражен механизъм, тоест, ако повече от един възел в автобуса едновременно за изпращане на данни, с арбитраж на пакет с висок приоритет, можете да продължите да изпращате данни и други арбитражни неуспехи възел ще излезе от състоянието на изпращане и ще се превърне в приемащ възел, с други механизми за арбитраж на шината (като CSMA на LAN). (В сравнение с други механизми за арбитражни автобуси (напр. CSMA/CD на LAN), той не само няма да унищожи изпратените данни, но и няма да причини забавяне на изпращането на данни, което е едно от предимствата на автобусната автобус в сравнение с други автобуси и се реализира главно от следните две характеристики на CAN BUS: 1) Линията и характеристиките на CAN BUS, т.е. когато повече от един възел в шината изпраща доминиращи и невидими нива едновременно, Нивото на автобуса е доминиращо ниво. 2) Линията и характеристиката на автобуса, т.е. когато повече от един възел в шината изпраща доминиращи и невидими нива едновременно, нивото на шината показва доминиращо ниво. 2) може ли контролерът да наблюдава състоянието на нивото на шината, дори докато изпраща данни, т.е., когато е в арбитраж, когато контролерът изпраща невидимо ниво, но открива шината като видимо ниво, арбитражът на възела се проваля и се обръща към приемащия възел.
5. Анализ на устойчивостта на автобусите
Устойчивостта на CAN BUS се реализира чрез своето откриване в реално време и мониторинг на сигурността на пакетите с възел и шина, в допълнение, Can Bus има силно инхибиране на сигнали за външни смущения чрез използване на диференциални сигнали. Специално обсъдено по -долу.
5.1 Мониторинг в реално време на формата на вълната на шината
Може ли контролерът не само да следи пакетите с данни, изпратени от други възли в шината през цялото време след захранване, но и да наблюдава данните, изпратени сами в процеса на изпращане на пакети с данни в реално време, след като откриването на грешки на място, Грешки в подплънките, CRC грешки, грешки при форматиране или грешки в отговора, възелът ще се основава на състоянието на грешката, в която е (активирана грешка или разпознавано състояние на грешка), за да изпратите съответния флаг за грешка. In fact, I believe that only the error activation site sends the activation error logo (ie, 6 consecutive dominant bits followed by 8 recessive bits of the error logo defining character) will have an impact on the bus and the nodes on the bus, while Състоянието на разпознаване на грешки изпраща логото за разпознаване на грешки всъщност не оказва ефект върху шината (6 рецесивни нива, изпратени със състоянието на празен ход на шината, са същите).
5.2 Мониторинг в реално време на състоянието на възела за определяне на привилегиите на възлите
Възлите променят състоянието си (активирано с грешки, призната за грешки или състояние на автобус) в реално време според пакетите, изпратени в автобуса. Възлите в състоянието, активирано от грешки, участват в комуникацията на шината нормално и разпознатите от грешки единици участват в комуникацията на шината, но трябва да изпратят 8 допълнителни имплицитни бита, преди да инициират следващото изпращане. За пакети, изпратени в шината, както е показано в таблица 1, 15- битовата CRC последователност реализира мониторинга на стартовия бит, арбитражното поле, контролното поле и полето за данни (ако има такова), сайта за получаване генерира CRC последователността на пакета според същия алгоритъм като този на изпращащия възел, когато получава данните и ги сравнява с получената CRC последователност, ако е различно, това означава, че там там е грешка и приемащият възел няма да отговори на приемащия възел няма да отговори на пакета, а изпращащият възел ще открие грешката на отговора и ще предава пакета. В заключение, Can Bus е постигнал висока сигурност на данните и стабилност на шината през слоя Link Link и физическия слой.
6. Заключение
Въз основа на спецификацията на протокола ISO11898, хартията анализира подробно принципа на реализиране и основата на механизма за синхронизация на шината на шината, механизмът на възела, механизмът на арбитража на шината (т.е. механизъм за разрешаване на конфликти на шината) и устойчивост на шината от гледна точка на комуникацията и в същия Времето накратко въвежда характеристиките на приложението на CAN шината и слоестата структура на системата на шината, когато се прилага към действителната система, което е много важно за Задълбочено разбиране на протокола на автобусната шина и прилагането на автобус на CAN към действителната система. Това е ръководство за разбиране на протокола за автобус на CAN и прилагане на автобуса CAN към специфични инженерни проекти, както и за изследване или разработване на автобусни системи за специфични изисквания.




