Анализ механизма синхронизации шины CAN/механизм адресации/арбитражный механизм

Jan 17, 2025 Оставить сообщение

Автобус Can (ControllereanetWork), сетевая шина с зоной контроллера, широко используется в промышленном контроле, медицинской электронике, бытовой технике и областях датчиков. В настоящее время внутренняя и иностранная литература для анализа протокола протокола CAN Bus статьи в основном предназначена для структуры кадры CAN или чередования времени анализа, таких как литература, редко с точки зрения общения на анализ протокола CAN Bus Bus Редко с точки зрения инженерных приложений, механизм коммуникации автобусов CAN для углубленного анализа статьи.


1. Могут ли характеристики применения и структурный состав


Протокол автобуса CAN имеет два международных стандарта, ISO11898 и ISO11519, из которых IS011898 является высокоскоростным стандартом связи с скоростью связи от 125 кбит/с до 1 Мбит/с, который представляет собой автобус с закрытой контуром с максимальной длиной 40 млн. Мбит/с. ISO11519 определяет стандарт связи с низкоскоростной банкой с скоростью связи от 10 до 125 кбит/с, который представляет собой стандарт связи с низким уровнем скорости с максимальной длиной 40 м/1 Мбит/с. ISO11519 определяет скорость связи от 10 до 125 кбит / с. Стандарт связи с низкой скоростью CAN, принадлежит к шине с открытой петлей, максимальной длиной 1 км / 40 кбит / с. Из -за электрических характеристик ограничений, то есть распределения шины емкости и распределения сопротивления на форме волны шины, максимальное количество узлов на шине CAN составляет 110. Для инженера -прикладного инженера, только частота бодского уровня и параметры битов из приемопередатчика должна быть правильно настроена для достижения синхронизации данных узлов приемопередатчика. Через аппаратное обеспечение контроллера CAN в маркере сообщений может быть реализована фильтрация с точкой с точки зрения, точка-мультипункт и глобальная трансляция и другие способы передачи и получения данных. В то же время, из -за короткой структуры кадров CAN Telegrams, и каждый кадр содержит проверку CRC, которая обеспечивает очень низкую частоту ошибок данных.

 

Уровень приложения CAN, операционная система (реализованная как фоновая программа в приложениях без операционной системы) и драйвер в реализации системы вместе реализуют функции уровня приложений в эталонной модели ISO. Среди них уровень приложения CAN определяет группировку идентификации, отправляя загрузку данных, получение обработки данных и мониторинг безопасности шины приложений; Операционная система/фоновая программа используется для планирования драйвера CAN для обработки данных после того, как CAN по прибытии; Драйвер включает в себя инициализацию (настройка рабочего состояния контроллера, настройка скорости передачи бодов, конфигурация приемлемого фильтра), драйвер приемопередатчика и программу обработки аномалий.


Для среднего слоя передачи его необходимо определить в зависимости от шума окружающей среды, длины шины и так далее. В случае сильного помехи, который должен использоваться экранированный проволока; Из -за распределения емкости, вызванного искажением формы волны шины и распределением сопротивления, вызванного ослаблением уровня шины, длина шины должна учитывать распределение характеристик сопротивления и емкости используемой среды передачи; В то же время, если использование высокоскоростной шины также необходимо экспериментировать, чтобы определить значение соответствующего сопротивления шины.


Для реализации контроллера CAN вы можете выбрать контроллер CAN, интегрированный в системный мастер -чип, такой как микроконтроллеры NXP LPC2000 , вы можете выбрать CTM1050, TJA1050 и т. Д. Если шум окружающей среды велик, вам необходимо рассмотреть сопротивление распределению передачи среды и Характеристики емкости распределения; В то же время, если вы используете высокоскоростную шину, также необходимо определить сопротивление соответствующей шины путем экспериментов. Если шум в окружающей среде велик, необходимо добавить чип изоляции между контроллером и трансивером или использование интегрированной функции изоляции приемопередатчика CAN. Стоит отметить, что новый чип микроконтроллера NXP LPC11C24 не только интегрирует контроллер CAN, но и интегрирует функцию CAN CAN, что обеспечивает хорошую поддержку для быстрой разработки систем BAN Bus. Кроме того, в соответствии с фактическим применением длины шины и количеством узлов на шине, также необходимо рассмотреть время задержки передачи и приема чипа трансивера.


Для уровня драйвера CAN и уровня приложений драйвер включает в себя инициализацию CAN (включая аппаратное включение, настройку скорости бодского уровня, настройку режима работы контроллера и конфигурация таблицы таблицы приемлемого фильтра), драйвер приема/передачи и предоставляет интерфейсные функции для верхнего уровня, из которых из которых есть Необходимо объяснить, что конфигурация таблицы идентификатора приемлемого фильтра должна основываться на группировке идентификатора системы с помощью уровня приложения; Уровень приложения CAN выполняет пакетизацию данных на основе взаимосвязи и получения данных между узлами на шине. Может ли уровень приложения в соответствии с передачей данных и получением отношений между узлами на шине для группировки идентификаторов пакета, отправки пакетов данных, получения обработки данных и мониторинга безопасности шины. Кроме того, широко используемые протоколы верхнего уровня шины CAN включают Canopen, Devicenet и Ican.


2. Can Bus Bus Synchronization Analysis Analysis


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


2.1 Настройка параметров


Обе стороны связи с помощью программного обеспечения, установленного одинаковой скоростью передачи. Как и местоположение точки выборки, структура битов, как показано на рис. 2, часа CAN на рисунке, которая определена в протоколе времени TQ, которое получено через частотное деление внешних часов или периферические часы ЦП. Основной тактовой сигнал контроллера CAN получается путем деления частоты внешних часов или периферийных часов CPU. Сегмент SS соответствует начальному сегменту, а кромка прыжков на шине должен происходить в течение этого периода, TESG1 соответствует сегменту передачи и сегменту 1 фазы, а TESG2 соответствует сегменту 2 фазы и для высокого уровня скоростная шина, контроллер пробегает и различает шину между Tesg1 и Tesg2.

 

o4YBAF_kARqAUmkJAAC0vUwBkGQ744.png

 

2.2 Структура фиксированной кадры


CAN Protocol четко определяет фиксированную структуру кадра для облегчения контроллера CAN и трансивера для контроля состояния шины, в спецификации протокола CAN2. Арбитражный домен, стандартный кадр с использованием идентификатора бита {2}}, в то время как расширенный кадр имеет 29- идентификатор бита, конкретный Стандартная рама, расширенная структура рамы.

 

2.3.3 Строительная синхронизация и ресинхронизация


2.3.1 Скорбная синхронизация


Так называемая жесткая синхронизация означает, что в течение периода простоя шины (то есть уровень шины выражается как непрерывный рецессивный бит), как только контроллер обнаруживает прыжок от рецессивного уровня до доминирующего уровня, это означает, что в это время есть это станция на шине для начала отправки данных, а затем заставит счетчик состояния битового состояния контроллера CAN синхронизировать с сегментом SS, показанный на рис. 2, и в то же время битовые часы начинают решать из Эта точка именуется (время банки устанавливается верхним программным уровнем). Жесткая синхронизация используется для начала определения кадра.


2.3.2 Ресинхронизация


В протоколе шины CAN резации реализуется ресинхронизация на основе механизма заполнения битов. Подобно протоколу HDLC, в структуре кадры CAN, как только пять последовательных битов той же полярности обнаруживаются с начала кадра до бита последовательности CRC, контроллер CAN автоматически вставляет немного противоположной полярности. Повторная синхронизация заключается в том, что во время передачи данных контроллер CAN регулирует сегмент 1 Фазы регулировки 1 и сегмент регулировки фазы, обнаружив разницу между краем прыжков на шине и внутренним временем узела, и размер регулировки программируется синхронизацией Ширина прыжка, и размер регулировки установлен в TQ. Конкретное правило корректировки состоит в том, что в процессе передачи, кромка прыжков на шине, обнаруженной контроллером CAN, регулируется контроллером CAN, если он расположен в течение внутреннего периода времени SS, тогда корректировка не требуется; Если края пропуска расположены в сегменте TESG1, это означает, что на шине есть задержка в автобусе относительно времени узела, то контроллер CAN расширяет период времени TESG1 в течение узла, и если Значение времени задержки (значение t 0) больше, чем ширина пропуска синхронизации, время расширения - это значение ширины синхронизации, в противном случае контроллер CAN Узел расширяет разницу между ним и временем автобуса; Если края прыжка расположен в сегменте TESG2, указывая на то, что время на шине переполнено относительно времени узела, то контроллер CAN уменьшает период времени TESG2 узел, конкретные правила корректировки аналогичны те из сегмента TESG1.


3. анализ механизма адреса шины CAN BUS


В отличие от промышленного Ethernet, RS485 и других автобусов, шина CAN отправляет и получает данные через идентификатор пакета, а не по адресу узла, то есть узлы на шине CAN не имеют фиксированного адреса, вместо этого необходимо настроить каждый узел Программное обеспечение с таблицей идентификаторов (в блок приемного фильтра узла), и если идентификационный номер пакета данных на шине существует в таблице идентификации узла, то пакет успешно проходит Принятие единицы приемлемого фильтра этого узла и будет отправлено в верхний блок обработки программного обеспечения и соответствующим образом обрабатывается, в противном случае пакет отбрасывается. Например, если узел A на автобусе хочет отправить пакет в узел B, идентификационный номер пакета должен быть расположен в таблице идентификации узла B. Аналогично, если узел A хочет транслировать пакет на автобус, в Идентификационный номер пакета должен быть расположен в идентификационных таблицах всех других узлов на автобусе. Как упоминалось ранее, таблица идентификации настроена через программное обеспечение, но функция приемной фильтрации выполняется через приемлемый фильтр, аппаратный блок в контроллере CAN, поэтому задержка, вызванная принятием, невелика с точки зрения скорости. Кроме того, преимущество использования этого механизма адреса заключается в том, что система, использующая эту шину, очень гибкая, то есть, добавленные или удаленные новые узлы, не влияют на связь между исходными узлами системы.

 

В следующем примере будет включен контроллер CAN, интегрированный с чипом NXP LPC2478 для указания метода конфигурации адреса системы CAN Bus. Как показано на рисунке 3, сначала классифицируется в соответствии с пакетами данных, которые будут переданы на шину, то есть идентификатор пакета и соответствующее планирование узлов, например, в нашей системе существуют в основном следующие типы пакетов: пакеты запросов, Командные пакеты управления (включая пакеты действий и параметров), пакеты тревоги и пакеты параметров обратной связи, соответствующие характеристикам узла пакетов запросов и командных пакетов управления, в основном являются главной станцией, отправляемой на каждую рабовладельцу, В то время как пакеты данных тревоги и пакеты данных параметров обратной связи в основном отправляются из каждого узла подчиненного в узле главного блока. Затем, единица приемлемого фильтра каждого узла настроена в соответствии с классификацией идентификации, а конкретный метод конфигурации выглядит следующим образом: Во -первых, настройка соответствующих рабочих режимов приемлемого фильтра в соответствии с характеристиками узла: режим OFF (не получение сообщений шины) , режим обхода (получение всех сообщений на шине) и обычный рабочий режим (аппаратная фильтрация). Если конфигурация для нормального режима работы, то вам необходимо настроить соответствующую таблицу фильтров приемлемости (таблица ID), то есть узел должен получить идентификационный номер пакета контроллера узла, чтобы заполнить соответствующую область таблицы идентификации, И это завершает работу по распределению адреса адреса шины. Вообще говоря, таблица идентификации разделена на следующие четыре области: очистка стандартной площади идентификатора рамки, площадь идентификатора формата стандартной группы Frame Group, область идентификатора идентификатора Frame Formats Clear и область идентификатора формата расширенной группы. Среди них явный формат представляет собой единый независимый идентификатор идентификатора, в то время как область формата группы имеет последовательно пронумерованные идентификаторы идентификатора.


4. CAN BUS ARBIBRICE ANALONASS


Арбитраж шины, ссылается на то, когда на шине есть более одного узла одновременно, чтобы отправить методы обработки протокола шины данных. Can Bus использует неразрушающий арбитражный механизм, то есть, если в то же время более одного узла на шине для отправки данных, с высокоприоритетными арбитражными победами, вы можете продолжать отправлять данные и другие арбитражные сбои Узел выйдет из состояния отправки и превратится в приемный узел с другими арбитражными механизмами шины (такими как CSMA LAN). (По сравнению с другими арбитражными механизмами шины (например, CSMA/CD LAN), это не только разрушает отправленные данные, но и не вызовет задержку отправки данных, что является одним из преимуществ автобусы CAN по сравнению с другими шинами , и это в основном реализуется следующими двумя функциями шины CAN: 1) Линия и характеристики шины CAN, то есть, когда более одного узла на шине отправляет доминирующие и невидимые уровни одновременно Уровень автобуса является доминирующим уровнем. 2) Линия и характеристика шины CAN, то есть, когда более одного узла на автобусе отправляет доминирующие и невидимые уровни одновременно, уровень шины показывает доминирующий уровень. 2) Контроллер CAN контролирует состояние уровня шины, даже при отправке данных, то есть, когда в арбитраже, когда контроллер отправляет невидимый уровень, но обнаруживает шину как видимый уровень, арбитраж узла не удается и поворачивается в приемный узел.


5. Can Analysis Alounty Bus надежности


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


5.1 Мониторинг формы волны в реальном времени в реальном времени


Контроллер может контролировать не только пакеты данных, отправляемые другими узлами на автобусе все время после питания, но и контролировать данные, отправляемые само по себе в процессе отправки пакетов данных в режиме реального времени, после обнаружения ошибок на месте, Ошибки накладки, ошибки CRC, ошибки форматирования или ошибки ответа, узел будет основан на состоянии ошибки, в которой он (активированная ошибка или распознаваемое ошибку) для отправки соответствующего флага ошибок. Фактически, я считаю, что только сайт активации ошибок отправляет логотип ошибки активации (то есть 6 последовательных доминирующих битов, за которыми следуют 8 рецессивных битов логотипа ошибки, определяющего символ), окажут влияние на шину и узлы на шине, в то время как Узел в состоянии распознавания ошибок отправляет логотип распознавания ошибок на самом деле не оказывает никакого влияния на шину (6 рецессивных уровней, отправленных с состоянием холостого хода автобуса, одинаковы).


5.2 Мониторинг состояния узла в реальном времени для определения привилегий узла


Узлы изменяют свое состояние (активируемое ошибкой, признанное ошибкой или состояние отключения) в режиме реального времени в соответствии с пакетами, отправленными на автобусе. Узлы в состоянии, активируемом ошибками, обычно участвуют в связи с шиной, и признанные ошибки подразделения участвуют в связи с автобусом, но должны отправить 8 дополнительных неявных битов, прежде чем они инициируют следующую отправку. Для пакетов, отправленных на шину, как показано в таблице 1, последовательность битов CRC {7}} реализует мониторинг пускового бита, поле арбитража, поле управления и поле данных (если таковое имеется), сайт принимающего генерирует последовательность CRC пакета в соответствии с тем же алгоритмом, что и в отправном узле, когда он получает данные, и сравнивает их с полученной последовательности CRC, если он отличается, то это означает, что там является ошибкой, и приемный узел не будет отвечать на приемный узел, не будет отвечать на пакет, а узел отправки обнаружит ошибку ответа и отправит пакет. В заключение, шина CAN достигла высокой безопасности данных и стабильности шины через уровень канала данных и физический уровень.


6. Заключение


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

Отправить запрос

whatsapp

Телефон

Отправить по электронной почте

Запрос