Главная Гальваническое покрытие Обработка поверхности Радиотехника
Бессточные операции Гальвано- химическое производство Достижения

Самые новые
Основы организации современных гальвано-химических производств
Взаимная адаптация технологий гальванического производства и очистки сточных вод
Импульсная металлизация печатных плат
Создание высокоэффективных систем промывки деталей
Утилизация гальванических отходов как гигиеническая проблема
Получение химико-механических цинковых покрытий на высокопрочных термообработанных сталях
Переработка металлургических отходов
Последние достижения в гальванопластике
Обработка промывных вод травильных агрегатов
Экологические перспективные технологии цинкования, кадмирования и меднения
Об утилизации гальванических шламов
Технологии изготовления технологической оснастки и продуктов методом гальванопластики
Россия экспортировала продукции химической промышленности и каучука на 11,3 млн долларов
В октябре экспорт ферросплавов уменьшился на 0,03% до 108,9 тыс. тонн
Мировое производство стали за 10 месяцев 2006 года выросло на 9,2%
Производство алюминия продолжает расти
Химическое производство в России выросло на 1,2%
Китай за 10 месяцев увеличил выпуск медной продукции на 6,6% до 4,6 млн. т
"Антон" - "Северсталь"
Чистая прибыль ОАО "Ульяновский автомобильный завод"
Оценка эфф. подготовки поверхности полистирола перед химической металлизацией
"Российские металлургические компании и ЕС - особые отношения"
Аналитики расходятся во мнениях по прогнозу цен на железную руду
Evraz увеличивает выплаты
Китай вышел на ежемесячный объем экспорта стали
Чистая прибыль Borealis в III квартале выросла в 2,6 раза
"Цинк среди драгоценных металлов"
Росбанк стал держателем 29,33% "Норникеля"
"Северсталь" подорожала на 2.7 миллиарда долларов после вчерашнего IPO
Новая волна слухов на тему консолидации в мировой металлургии
Итоги деятельности химического комплекса за 9 месяцев
Стратегия развития металлургической промышленности
Инженеры в почете
Информационное обеспечение химического комплекса
Дефицит кадров
Спрос на оцинкованную сталь растет
Карта: 1 2 3 4 5 6 7 8 9
10 11 12 13 14
Главная Радиотехника


CAN протоколы высокого уровня


Введение


CAN протокол получил всемирное признание как весьма универсальная, эффективная, надежная и экономически приемлемая платформа для почти любого типа связи данных в передвижных системах, машинах, техническом оборудовании и индустриальной автоматизации. Основанная на базе протоколов высокого уровня CAN-технология успешно конкурирует на рынке распределенных систем автоматизации. Под терминами CAN стандарт или CAN протокол понимаются функциональные возможности, которые стандартизированы в ISO 11898. Этот стандарт объединяет физический уровень (Physical Layer) и уровень канала данных (Data Link Layer) в соответствии с 7-ми уровневой OSI моделью. CAN стандарт соответствует уровню сетевого интерфейса в 4-х уровневой модели TCP/IP. Однако, практическая реализация даже весьма простых распределенных систем на базе CAN демонстрирует, что помимо предоставляемых сервисов уровня канала данных требуются более широкие функциональные возможности : передача блоков данных длинной более чем 8 байтов, подтверждение пересылки данных, распределение идентификаторов, запуск сети и функции супервизора узлов. Так как эти дополнительные функциональные возможности непосредственно используются прикладным циклом, вводится понятие уровня приложений (Application Layer) и протоколов высокого уровня. Обычно их и называют термином CAN протоколы.

OSI модель протоколов высокого уровня на базе CAN,протоколов TCP/IP

Для систем реального времени на базе CAN нет необходимости в реализации полной 7-ми уровневой модели OSI( 1). Это связано с тем, что типичная CAN система имеет в своей основе единственный канал данных для обмена сообщениями между устройствами, все устройства ориентированы на конкретный способ передачи данных по каналу, а приложения пишутся именно под данную архитектуру сети и данный протокол. Поэтому нет необходимости в реализации уровня представлений, уровня сеанса и сетевого уровня из 7-ми уровневой модели OSI и были оставлены только 3 уровня этой модели : физический уровень, уровень канала данных и уровень приложений( 2). Причем последний реализует некоторые функции транспортного уровня.


1


2

Из-за широко использования CAN сетей с различными целями и требованиями существуют несколько главных стандартов CAN-протоколов высокого уровня : CAL (CAN Application Layer), OSEK/VDX, SAE J1939, CANopen, DeviceNet, SDS (Smart Distribution Systems),CAN-Kingdom. Далее более подробно будет рассмотрен стандарт DeviceNet для сравнения с TCP/IP.

Основные возможности протоколов высокого уровня на базе CAN

Рассмотрим основные возможности, которые предоставляют протоколы высокого уровня:

  • система назначения идентификатора для сообщения
  • метод обмена данных цикла
  • прямая(peer-to-peer) связь
  • метод установления связей для обмена данных цикла
  • сетевое управление
  • модели и профайлы устройств
Идентификаторы сообщений

Метод назначения идентификатора сообщения является главным архитектурным элементом CAN систем, так как идентификатор CAN-сообщения определяет относительный приоритет сообщения и следовательно время обработки сообщения (latency time). Это также влияет на возможность применимости фильтрования сообщения,на использование возможных коммуникационных структур и эффективность использования идентификатора. Что касается назначения идентификаторов сообщений, существуют различные подходы для систем на базе CAN. Некоторые (CANopen) не применяют предопределение идентификаторов для общих структур системы, DeviceNet и SDS делают это.

Устройства (nodes) в DeviceNet получают постоянный идентификатор. Максимальное количество узлов составляет 64. Каждый узел имеет некоторое множество идентификаторов в одной из 3-х групп в зависимости от приоритета сообщения ( 3).


3

Группа 1 сообщений обеспечивает до 16 высоко приоритетных сообщений на устройство, группа 3 сообщений - до 7 низко приоритетных сообщений на устройство. Группа 2 сообщений предназначена для поддержки устройств с ограниченными способностями фильтрования сообщений. Поэтому для данной группы идентификаторов было выбрано фильтрование согласно номеру узла (MAC-ID). Это означает, что приоритет сообщений этой группы прямо определяется номером узла. MAC-ID группы 2 может быть адресом источника или адресом назначения.

DeviceNet использует также предопределенное Master/Slave множество связей для облегчения взаимодействия в Master/Slave системной конфигурации ( 4):


4

Поддерживаются следующие функции канала обмена I/O сообщениями и явными (Explicit) сообщениями между Master и Slave устройствами из предопределенного множества связей:

  • явный канал сообщений
  • изменение Master статуса канала (Master Poll Change of State/Cyclic channel)
  • изменение Slave статуса канала (Slave I/O Change of State/Cyclic channel )
  • Bit Strobe канал
Явный канал сообщений главным образом служит для конфигурации устройства. С изменением Master статуса канала Master может запрашивать данные ввода - вывода от устройства и посылать данные на Slave устройство. C изменением Slave статуса канала Slave устройство может передать данные Master-устройству. При помощи Bit Strobe команды Master-устройство может запросить данные у любого из 64 Slave устройств посредством одного сообщения.

Oбмен данных цикла

Передача данных цикла между устройствами распределенной системы - цель системы на основе CAN протокола. Поэтому передача прикладных данных (данные цикла, данные ввода - вывода) системы должна быть выполнена наиболее эффективным путем. CANopen и DeviceNet обеспечивают весьма схожие механизмы связи для передачи данных обслуживания / конфигурации цикла. У CANopen передача данных цикла происходит посредством так называемых Объектов Данных цикла (PDOs), у DeviceNet посредством I/O-сообщений .

В таблице 1 приведены основные характеристики для протоколов CANopen, DeviceNet and SDS. Одним из главных различий является обеспечение протоколами DeviceNet and SDS фрагментации пакетов без подтверждения, что делает возможным передачу данных длиной более 8 байт. Также поддерживаются 3 различных протокола ( 4) по отношению к подтверждению приема данных (Transport Classes) . Например, классы 2 и 3 могут быть использованы для эффективного опроса(polling) устройств. Для той цели master устройство имеет коммуникационные объекты (connection objects), связанные с каждой командой опроса как клиентский транспортный класс 2 или 3. Каждое slave устройство имеет коммуникационные объекты серверного транспортного класса 2 или 3 для получения команд опроса и передачи соответствующих ответных данных.

Таблица 1. Exchange of Process Data in CANopen, DeviceNet and SDS (Multicasting)

CANopen DeviceNet SDS (V2.0)
Name of Communication Object Process Data Object I/O-Message Multicast Channel APDU
Maximal Number of Communication Objects per Device 512 Transmit PDOs 512 Receive PDOs 27 I/O- Transmit Messages 1701 I/O Receive Messages per device 32 Multicast Channels for each of up to 32 Embedded Objects per device
Maximal length of Data Field 8 bytes 8 bytes fragmented: Arbitrary length 6 bytes fragmented: 64 * 4 bytes
Protocol Unfragmented: No overhead, Notify/Read Stored-Event-protocol (CAL/CMS) Unacknowledged Unfragmented: No overhead, three Transport Classes supported:
  • Unacknowledged,
  • Acknowledged by Server Connection Object,
  • Acknowledged by Application
Unfragmented: 2 byte protocol overhead, Unacknowledged
Fragmented: Unacknowledged fragmented protocol 1 byte protocol overhead per frame Fragmented: Acknowledged fragmented protocol with Acknowledge after reception of complete block 4 bytes protocol overhead per fragment
Message Production Triggering Modes
  • On Request of local or remote application
  • Cyclic/acyclic synchron
  • Cyclic
  • Change-of-State
  • Application specific
Specified by object model
Mapping of Application Objects Maximum number of mappable application objects/PDO dependent on data size of objects (1-bit objects: 64 application objects mappable) Definition of Application objects by means of Mapping Parameter Record (configurable) Dynamic mapping supported Arbitrary number of Application objects mappable with fragmented protocol. Definition of Application objects by means of Assembly Object (several Assembly Objects possible) Dynamic mapping supported Network Data Descriptor defines size, granularity and data type of I/O data of Embedded Object (V1.8)


5. Device Net Transport Classes

Вызов (triggering) сообщений

Все рассматриваемые протоколы поддерживают различные способы вызова сообщений. DeviceNet поддерживает циклический (Cyclic), по состоянию (Change-of-State) и программный (Application) способы вызова. Циклический вызов осуществляется по истечению времени таймера и опять начинается передача сообщения. Передача по состоянию опять начинается, когда статус определенного объекта изменяется. В этом случае сообщение также передается, когда истекает определенный интервал времени, в котором не осуществлялась передача сообщения. Программным способом сам объект решает, когда начать передачу сообщения. В этом случае сообщение также передается, когда истекает определенный интервал времени без передачи сообщения.

Установление соответствий (mapping) для программных объектов

Сетевые устройства обычно содержат более одного программного объекта и передача I/O сообщения более чем одному программному объекту внутри одного PDO является необходимым требованием. В DeviceNet объединение прикладных данных осуществляется посредством трансляционных (assembly) объектов, которые определяют формат передаваемых данных. Устройство может содержать более одного I/O трансляционного объекта и выбор подходящего (consumed/ produced_connection_path) может быть настраиваемой опцией устройства.

Прямые (peer-to-peer) коммуникационные каналы

Для конфигурации устройств посредством конфигурационных средств требуются специальные функции у устройств или программы, обеспечивающие многоцелевые каналы связи. Это не критичные по времени каналы связи. Передача данных в них осуществляется посредством протокола с подтверждениями и фрагментацией. Любой из протоколов высокого уровня, которые поддерживают некоторую конфигурацию устройств, должны обеспечивать этот вид связи.

DeviceNet обеспечивает многоцелевые устройство ориентированные каналы и сервисы. Запись и чтение атрибутов объектов, контролирование объектов (reset, start, stop etc.), сохранение/восстановление атрибутов объектов осуществляется посредством явных (Explicit) сообщений. Намерение использовать данное сообщение определяется в поле данных CANа. На 7 показан формат поля данных фрагментированного Explicit сообщения. В запросе сервиса указывается номер класса, номер экземпляра(instance), номер атрибута (в поле Service specific arguments).


6. DeviceNet Fragemented Explicit Message Data Field Format (Request/Response)

Explicit(прямая) связь устанавливается посредством менеджера сообщений (Unconnected Message Manager (UCMM)). UCMM предоставляет два сервиса для открывания и закрывания подобных соединений. Каждое устройство, поддерживающее UCMM, резервирует у себя идентификаторы сообщений для запросов и ответов для UCMM. Для устройств 2-й группы, которые не поддерживают UCMM порт, master устройство сперва должно разместить Explicit соединение в предопределенном множестве соединений. Запрос к устройству группы 2 передается как Explicit запрос без предварительного установления соединения (Unconnected Explicit Request ) с зарезервированным идентификатором сообщения.

Сравнительные характеристики протоколов CANopen, DeviceNet и SDS в отношении прямых (peer-to-peer) коммуникационных каналов представлены в таблице 2.

Таблица 2. Main Characteristics of Peer-to-Peer Communication Channels

CANopen DeviceNet SDS (V2.0)
Name Service Data Channel Explicit Message Peer-to-peer Channel
Maximum number of channels 128 Client SDOs, 128 Server SDOs per device 27 Explicit Transmit Messages 1701 Explicit Receive messages per device 4 channels per Embedded Object. 32 Embedded Objects per Logical Device
Protocol < 5 byte: Acknowledged unfragmented 4 byte: Fragmented transmission (7 bytes per fragment) Each frame acknowledged Any length (CAL Multiplexed Domain protocol) < 7 byte: Acknowledged unfragmented 6 byte: Fragmented transmission. (6 bytes per fragment) Each frame acknowledged Any length < 6 bytes Acknowledged unfragmented 5 byte Fragmented transmission (3 bytes per fragment) Acknowledgement of complete data block. Max. 255 byte
Establishing of Connections
  • Dynamic establishment by means of Unconnected Message Manager
  • Group 2 Only devices: Allocation of Explicit Message from Predefined Connection Set
  • Dynamic establishing by means of Connection Manager
  • Master/Slave Set of Connections Set
  • Dynamic establishment by means of SDO Manager
  • Default predefined connections
Connection Services and Arguments Initiate, Abort Upload/Download Segment/Domain Open/Close Creation, Configuration, Start, Stop, Reset etc. of Objects Open/Close Read, Write, Event, Action
Index and Subindex of addressed Object Directory Entry Object attribute access path, Service arguments Channel Number, Attribute/Action/Event Identifier
Установление связей для обмена данных цикла

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

В системе с предопределенным множеством сообщений функции и идентификаторы сообщений уже определены. DeviceNet также использует предопределенное множество сообщений для системы со структурой 1:n. Master устройство, предварительно разместив у себя множество связей со Slave устройствами, знает ID сообщений для передачи запроса и ID сообщений для получения ответа, который включает Slave MAC-ID в соответствии с предопределенным множеством связей. Также возможно не предопределять идентификаторы сообщений.

Сетевое управление

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

В DeviceNet каждое соединение контролируется. Поэтому каждая ожидающая сообщение конечная точка имеет Inactivity/Watchdog таймер, чтобы контролировать прибытие сообщения согласно предопределенному времени ожидания. Если время истекает, соединение выполняет действие Timeout. На 7 показана диаграмма изменения состояний у объекта I/O.


7. Device Net I/O Connection Object State Transition Diagram

После получения вызова CREAT ( Explicit сообщение) соединение настраивается при помощи подходящей последовательности вызовов явных сообщений и после этого устанавливается. Перед получением доступа к сети каждое устройство должно совершить проверку на дубликат своего MAC-ID. Определенные алгоритмы выбора гарантируют уникальность MAC-ID.

Контроль может осуществляться также посредством Heartbeat сообщения, которое может посылаться устройствам посредством UCMM в форме сообщения. В поле данных этого сообщения передается состояние устройства. Heartbeat сообщение вызывается объектом Idendity.

Профайлы устройств

Для открытых автоматических систем помимо обеспечения связи от входящих в их состав устройств требуется также обеспечение возможности взаимодействия и взаимозаменяемости. Поэтому протоколы высокого уровня (такие как DeviceNet) описывают функциональные возможности устройств в виде модели устройства (Device Model).

Помимо описания функциональности устройств модель устройства должна также содержать ряд важных параметров (статус, диагностическую информацию, коммуникационные возможности, конфигурационные параметры и т.д.). На 8 показана модель устройства DeviceNet.


8. DeviceNet Object Model

DeviceNet профайл должен содержать следующую информацию:

  • модель объекта для устройства
  • формат данных I/O для устройства
  • конфигурационные данные и внешние интерфейсы для этих данных
В таблице 3 показаны главные функции объектов в DeviceNet.

Таблица 3. Objects of a DeviceNet node

Object Function
Connection Instantiates connections (I/O or Explicit Messaging)
DeviceNet Maintains configuration and status of physical attachments to DeviceNet.
Message Router Routes received Explicit Messages to appropriate target objects
Assembly Groups attributes of multiple objects into a single block of data, which can be sent and received over a single connection
Parameter Provides a standard means for device configuration and attribute access
Identity Provides general information about the identity of a device
Application Supplies application-specific behaviour and data
Заключение

Протокол CAN применяется в real-time системах для решения различных задач. В настоящий момент развиваются несколько видов CAN протоколов высокого уровня, таких как CAL ,OSEK/VDX, SAE J1939, CANopen, DeviceNet, SDS ,CAN-Kingdom , в основе которых лежит канальный протокол CAN2.0 (Bosch) , и на основе этих протоколов можно решать проблемы, возникающие в real-time системах, которые невозможно разрешить при помощи других известных протоколов, скажем, TCP/IP.



Источник: http://gaw.ru

Читайте далее: Колесо и палка. Размышления., ЧТО ТАКОЕ 'ТЕПЛОВОЕ ЗЕРКАЛО'?, Микросхемы - усилители низкой частоты (4), Я вам пишу… без опасений. О криптографии..., Предельные значения величин, Техника, Числа, Громкоговоритель Карфидова, Частицы и вещества, СОЗДАН НОВЫЙ СВЕТОДИОДНЫЙ СВЕТОФОР СПЕЦИАЛЬНО ДЛЯ РОССИЙСКИХ ЖЕЛЕЗНЫХ ДОРОГ, Уран в стеклянной клетке, Компьютеры и средства связи, Ураган из улитки, Микросхемы - усилители низкой частоты (6), Удивительное в физике - рядом., НОВЫЙ ПРИНЦИП ПРЕОБРАЗОВАНИЯ СОЛНЕЧНОЙ ЭНЕРГИИ, РАДИОИМПУЛЬС ЗАСТАВЛЯЕТ ВЕЩЕСТВО ФОНТАНИРОВАТЬ, IrDA, TMP05, TMP06 - Температурные датчики с точностью измерения температуры ±1 C, ШИМ,
Самые читаемые