Технологии CAN (Controller Area Network – сеть контроллеров) широко используются в разных областях – от промышленной автоматизации до автомобильной электроники и технологий “умного дома”. Одно из достоинств CAN-сетей – большой ассортимент программных инструментов для настройки и администрирования как сети в целом, так и отдельных сетевых устройств. Использование стандартных коммуникационных протоколов гарантирует совместимость систем на основе CAN-сетей и упрощает разработку и тестирование новых устройств.
Теги: saw band pass filters saw material and design choice выбор материала и конструкции пав фильтра паи полосовые фильтры
Преимущества стандартных протоколов
В небольших и относительно несложных проектах разработчики часто используют собственные простые протоколы на основе канального уровня CAN-сети, но для более сложных систем такой подход не оправдан. Опыт показывает, что методы и алгоритмы, используемые в большинстве корпоративных проектов, полностью или во многом сходны со стандартными, что, однако, не гарантирует совместимости различных систем. Такие нестандартные решения затрудняют последующее системное интегрирование больших проектов. Например, при использовании полевой шины CAN только на канальном уровне сети возможен конфликт CAN-идентификаторов в общей системе. Для его разрешения требуется перепрограммирование одной из подсистем. А при использовании стандартных протоколов верхнего уровня необходимо обеспечить лишь уникальность номера CAN-узла в пределах одной сети.
Как правило, стандарты описывают оптимальные и отлаженные методы. Поэтому придерживаться их стоит во всех проектах, а не только при наличии уже готовых устройств сторонних производителей. Для работы со стандартными протоколами имеется множество различных инструментальных средств. Они значительно облегчают настройку отдельных устройств и обеспечивают быстрое и полноценное решение задач конфигурирования сети. А возможность создания и использования стандартных программных библиотек упрощает разработку новых изделий и облегчает их сертификацию.
Помимо унификации коммуникационных протоколов многие стандарты предлагают набор прикладных профилей устройств и систем. Например, в стандарте CANopen профиль представляет собой законченное информационное описание устройства. Он включает в себя логическую блок-схему, детальную параметризацию изделия, диаграмму конечного автомата устройства, прикладные алгоритмы функционирования и другие необходимые пояснения. Любой профиль можно использовать в качестве универсальных инженерных рекомендаций по логической реализации устройства или системы.
Несмотря на то, что стандарт по сути консервативен, он практически не ограничивает параметризацию прикладного объекта. Так, в объектном словаре CANopen, который представляет собой базу данных устройства, предусмотрена возможность внесения параметров, не определенных в стандартном профиле. В таких комбинированных профилях доля нестандартных объектов достигает 30–35%.
Каждое вновь разработанное устройство, отвечающее тому или иному стандарту, должно пройти предварительную сертификацию с использованием теста соответствия. Прохождение компьютерного теста гарантирует как минимум статическую совместимость различных устройств, т.е. они будут корректно взаимодействовать в одной CAN-сети при использовании стандартного протокола. Таким образом, тест соответствия становится независимым средством, с помощью которого подтверждается совместимость отвечающих стандарту устройств.
Одной из серьезных проблем корпоративных программных проектов является последующая поддержка выпущенного продукта. Из-за сжатых сроков нередко пренебрегают важными, хотя и весьма трудоемкими задачами. Прежде всего это выработка единых методик программной реализации и подробного документирования проделанной работы. Известны случаи, когда развитие проекта практически останавливалось при уходе ключевых разработчиков, а продолжающей работу команде часто проще начать разработку заново, вместо того, чтобы разобраться с существующими наработками. Использование хорошо документированных стандартов позволяет в значительной мере смягчить проблему изменения или расширения кадрового состава разработчиков, причем способность освоения стандарта является хорошим квалификационным испытанием для новых работников.
Обзор инструментария CAN
Как уже отмечалось, одно из важнейших преимуществ использования стандартных протоколов верхнего уровня – большой выбор готовых инструментальных средств. Так, фирма Vector (www.vector.com) предлагает мощный инструмент для создания и редактирования электронных спецификаций CANopen-устройств – файлов DCF и EDS (рис.1). Формат и свойства этих файлов определены стандартом организации CAN in Automation (www.can-cia.org) CiA DS 306. Подобный инструментарий освобождает производителей устройств и системных интеграторов от нелегкой, порождающей ошибки работы по созданию EDS-файлов вручную.
Важнейшее достоинство протоколов верхнего уровня для сети CAN – возможность создавать системы, "живущие сами по себе". То есть все устройства в сети настраиваются таким образом, что они обмениваются друг с другом всей необходимой информацией без участия какого-либо централизованного посредника. В протоколе CANopen для этого используются объекты данных процесса (PDO). Они не приводят к избыточности протокола, так как являются неподтверждаемыми коммуникационными сервисами. PDO-объекты формируются на основе таблицы PDO-отображения и являются основным средством обмена данными в масштабе реального времени.
На основе PDO-объектов задается динамическая структура информационных потоков в CAN-сети (рис.2). Это дает возможность устанавливать гибкую топологию логических соединений узлов CANopen-сети. Инструменты для настройки связей по PDO предлагаются различными фирмами, например Port GmbH (www.port.de) (рис.3).
Аналогичные средства для настройки как отдельных устройств CAN-сети, так и конфигурации системы в целом поставляются и другими компаниями. Например, фирма IXXAT (www.ixxat.com) предлагает развитую инструментальную систему CANopen Configuration Studio (рис.4).
Инструменты CAN фирмы "Марафон"
Российская фирма "Марафон" (www.marathon.ru) также предлагает ряд инструментальных средств для стандартов CANopen и J1939. Большая их часть универсальна и может обслуживать устройства любых производителей. Все инструментальные средства "Марафон" реализованы в виде подгружаемых модулей для единой программной платформы CANwise. Их строгий и профессиональный интерфейс удобен и разработчику устройств, и системному интегратору. "Марафон" активно поддерживает и развивает свою инструментальную систему – cоздаются новые модули, а функциональность существующих средств расширяется и приводится в соответствие с новыми версиями стандартов.
Анализатор J1939 (рис.5) позволяет принимать из CAN-сети либо все проходящие кадры, либо отфильтрованные по номеру группы (PGN). В режиме приема всех кадров выводится краткая информация, содержащаяся в сообщении: приоритет, номер группы параметров, адрес получателя, адрес отправителя и содержимое поля данных. В режиме приема кадров по заданному номеру группы параметров поле данных кадра интерпретируется в соответствии со стандартом SAE J1939-71. Для перехода в этот режим нужно выбрать требуемый PGN из списка доступных в текущем сеансе групп параметров. Анализатор регистрирует следующие типы кадров:
Команда (Command).
Запрос (Request).
Запрос2 (Request2).
Широковещательная передача/ответ (Broadcast/Response).
Подтверждение (Acknowledgment).
Групповая функция (Group function).
Сообщение управления соединением транспортного протокола (Transport protocol connection management message).
Сообщение передачи данных транспортного протокола (Transport protocol data transfer message).
Анализатор дает возможность отправлять в CAN-сеть кадры типа Запрос (Request) и Запрос2 (Request2). Получателем таких кадров может быть как конкретный контроллер (ECU), так и все контроллеры в сети.
Анализатор CANopen позволяет интерпретировать протоколы и сетевые объекты, предусмотренные спецификациями CiA 301 v. 4.2 (прикладной уровень CANopen и коммуникационный профиль) и CiA DSP 305 v. 2.2 (сервисы установки уровня LSS). Для коммуникационного профиля используется предопределенное распределение идентификаторов узлов CAN-сети. Анализатор дополнительно отслеживает ход полных транзакций для всех типов SDO-протоколов – ускоренного, сегментированного и блочного.
Интерактивный конфигуратор дает возможность работать с объектным словарем устройства, используя его описание в файле EDS, формат которого определен стандартом CiA DS 306. Конфигуратор загружает словарь из файла и отображает его в виде таблицы, каждая строка которой содержит описание одного объекта CANopen. Конфигуратор дает возможность считывать из устройства значения объектов, доступных для чтения, и редактировать объекты, доступные для записи. Для чтения и записи объектов используется либо ускоренный, либо сегментированный SDO-протокол.
DCF-конфигуратор работает с файлами конфигурации устройства DCF. Формат этого файла также определен стандартом CiA DS 306. В дополнение к электронной спецификации файл DCF содержит конкретные значения всех необходимых параметров и объектов. С помощью конфигуратора эти значения могут быть записаны в устройство и сохранены в его энергонезависимой памяти. Статическое конфигурирование устройства CANopen избавляет от необходимости его настройки при каждом подключении к CAN-сети.
Сценарный конфигуратор дает возможность исполнения наборов команд, которые осуществляют взаимодействие с различными CANopen-устройствами. В текстовом файле сценария могут быть использованы три класса операторов:
CANopen-операторы, которые участвуют в формировании алгоритма сценария и осуществляют взаимодействие с CANopen-устройствами в составе CAN-сети.
Управляющие операторы, которые формируют алгоритм сценария, но не взаимодействуют с CAN-сетью и CANopen-устройствами.
Описательные операторы, выполняющие пояснительные функции в файле или алгоритме сценария и не влияющие на ход исполнения алгоритма.
Используя сценарии, можно тестировать работу не только отдельных узлов, но и CANopen-сети в целом.
Менеджер PDO (рис.6) позволяет работать с PDO-объектами устройства, отвечающего любому прикладному профилю. Таблица PDO-отображения загружается непосредственно из объектного словаря самого CANopen-устройства. При этом тип данных выбирается в зависимости от длины отображаемого прикладного объекта. Таким образом, для работы с PDO не требуется наличия электронной спецификации устройства. Но загрузка EDS-файла позволяет уточнить и зафиксировать тип данных прикладных PDO-объектов, а также определить и отобразить их имена. Менеджер позволяет задавать и пересылать в адрес устройства значения прикладных объектов, которые отображаются в таблице PDO.
LSS-мастер позволяет работать с сервисами установки уровня LSS, которые определяют протоколы для задания номера узла и битовой скорости. LSS-мастер руководствуется стандартом CiA DSP 305 и поддерживает полное семейство протоколов LSS, в том числе FastScan, который осуществляет отбор конфигурируемых LSS-устройств с использованием побитного арбитража адресов.
OPC-сервер может использоваться для взаимодействия с CanNopen-устройствами любого типа в режиме мягкого реального времени, а также для конфигурирования сетей CANopen. Он не привязан ни к одному прикладному профилю и руководствуется исключительно файлами электронной спецификации. Сервер формирует пространство тегов OPC на основе EDS-файлов устройств и конфигурационных файлов CAN-сетей. Каждый индекс и субиндекс объектного словаря устройства преобразуется в отдельный OPC-тег. Кроме того, создается набор предопределенных тегов для управления CANopen-сетью и обеспечения работы каждого узла сети. Использование CANopen OPC-сервера совместно со SCADA-системами позволяет интегрировать устройства CANopen в программную среду приложений АСУТП.
* * *
Таким образом, большой выбор и широкие возможности CAN-инструментов позволяют проектировать сложные прикладные системы, не вникая в детальную реализацию самих протоколов. В результате значительно снижаются усилия системного интегратора, необходимые для освоения и внедрения новой технологии. Разработчик имеет возможность непрерывно и оперативно тестировать новые устройства непосредственно в процессе разработки, что гарантирует готовому устройству быстрое и легкое прохождение теста соответствия и других сертификационных испытаний. Как видно из обзора, инструментальные средства САN активно выпускают различные производители во многих странах мира. Это подтверждает зрелость и распространенность CAN-технологии и гарантирует ее развитие в будущем.
В небольших и относительно несложных проектах разработчики часто используют собственные простые протоколы на основе канального уровня CAN-сети, но для более сложных систем такой подход не оправдан. Опыт показывает, что методы и алгоритмы, используемые в большинстве корпоративных проектов, полностью или во многом сходны со стандартными, что, однако, не гарантирует совместимости различных систем. Такие нестандартные решения затрудняют последующее системное интегрирование больших проектов. Например, при использовании полевой шины CAN только на канальном уровне сети возможен конфликт CAN-идентификаторов в общей системе. Для его разрешения требуется перепрограммирование одной из подсистем. А при использовании стандартных протоколов верхнего уровня необходимо обеспечить лишь уникальность номера CAN-узла в пределах одной сети.
Как правило, стандарты описывают оптимальные и отлаженные методы. Поэтому придерживаться их стоит во всех проектах, а не только при наличии уже готовых устройств сторонних производителей. Для работы со стандартными протоколами имеется множество различных инструментальных средств. Они значительно облегчают настройку отдельных устройств и обеспечивают быстрое и полноценное решение задач конфигурирования сети. А возможность создания и использования стандартных программных библиотек упрощает разработку новых изделий и облегчает их сертификацию.
Помимо унификации коммуникационных протоколов многие стандарты предлагают набор прикладных профилей устройств и систем. Например, в стандарте CANopen профиль представляет собой законченное информационное описание устройства. Он включает в себя логическую блок-схему, детальную параметризацию изделия, диаграмму конечного автомата устройства, прикладные алгоритмы функционирования и другие необходимые пояснения. Любой профиль можно использовать в качестве универсальных инженерных рекомендаций по логической реализации устройства или системы.
Несмотря на то, что стандарт по сути консервативен, он практически не ограничивает параметризацию прикладного объекта. Так, в объектном словаре CANopen, который представляет собой базу данных устройства, предусмотрена возможность внесения параметров, не определенных в стандартном профиле. В таких комбинированных профилях доля нестандартных объектов достигает 30–35%.
Каждое вновь разработанное устройство, отвечающее тому или иному стандарту, должно пройти предварительную сертификацию с использованием теста соответствия. Прохождение компьютерного теста гарантирует как минимум статическую совместимость различных устройств, т.е. они будут корректно взаимодействовать в одной CAN-сети при использовании стандартного протокола. Таким образом, тест соответствия становится независимым средством, с помощью которого подтверждается совместимость отвечающих стандарту устройств.
Одной из серьезных проблем корпоративных программных проектов является последующая поддержка выпущенного продукта. Из-за сжатых сроков нередко пренебрегают важными, хотя и весьма трудоемкими задачами. Прежде всего это выработка единых методик программной реализации и подробного документирования проделанной работы. Известны случаи, когда развитие проекта практически останавливалось при уходе ключевых разработчиков, а продолжающей работу команде часто проще начать разработку заново, вместо того, чтобы разобраться с существующими наработками. Использование хорошо документированных стандартов позволяет в значительной мере смягчить проблему изменения или расширения кадрового состава разработчиков, причем способность освоения стандарта является хорошим квалификационным испытанием для новых работников.
Обзор инструментария CAN
Как уже отмечалось, одно из важнейших преимуществ использования стандартных протоколов верхнего уровня – большой выбор готовых инструментальных средств. Так, фирма Vector (www.vector.com) предлагает мощный инструмент для создания и редактирования электронных спецификаций CANopen-устройств – файлов DCF и EDS (рис.1). Формат и свойства этих файлов определены стандартом организации CAN in Automation (www.can-cia.org) CiA DS 306. Подобный инструментарий освобождает производителей устройств и системных интеграторов от нелегкой, порождающей ошибки работы по созданию EDS-файлов вручную.
Важнейшее достоинство протоколов верхнего уровня для сети CAN – возможность создавать системы, "живущие сами по себе". То есть все устройства в сети настраиваются таким образом, что они обмениваются друг с другом всей необходимой информацией без участия какого-либо централизованного посредника. В протоколе CANopen для этого используются объекты данных процесса (PDO). Они не приводят к избыточности протокола, так как являются неподтверждаемыми коммуникационными сервисами. PDO-объекты формируются на основе таблицы PDO-отображения и являются основным средством обмена данными в масштабе реального времени.
На основе PDO-объектов задается динамическая структура информационных потоков в CAN-сети (рис.2). Это дает возможность устанавливать гибкую топологию логических соединений узлов CANopen-сети. Инструменты для настройки связей по PDO предлагаются различными фирмами, например Port GmbH (www.port.de) (рис.3).
Аналогичные средства для настройки как отдельных устройств CAN-сети, так и конфигурации системы в целом поставляются и другими компаниями. Например, фирма IXXAT (www.ixxat.com) предлагает развитую инструментальную систему CANopen Configuration Studio (рис.4).
Инструменты CAN фирмы "Марафон"
Российская фирма "Марафон" (www.marathon.ru) также предлагает ряд инструментальных средств для стандартов CANopen и J1939. Большая их часть универсальна и может обслуживать устройства любых производителей. Все инструментальные средства "Марафон" реализованы в виде подгружаемых модулей для единой программной платформы CANwise. Их строгий и профессиональный интерфейс удобен и разработчику устройств, и системному интегратору. "Марафон" активно поддерживает и развивает свою инструментальную систему – cоздаются новые модули, а функциональность существующих средств расширяется и приводится в соответствие с новыми версиями стандартов.
Анализатор J1939 (рис.5) позволяет принимать из CAN-сети либо все проходящие кадры, либо отфильтрованные по номеру группы (PGN). В режиме приема всех кадров выводится краткая информация, содержащаяся в сообщении: приоритет, номер группы параметров, адрес получателя, адрес отправителя и содержимое поля данных. В режиме приема кадров по заданному номеру группы параметров поле данных кадра интерпретируется в соответствии со стандартом SAE J1939-71. Для перехода в этот режим нужно выбрать требуемый PGN из списка доступных в текущем сеансе групп параметров. Анализатор регистрирует следующие типы кадров:
Команда (Command).
Запрос (Request).
Запрос2 (Request2).
Широковещательная передача/ответ (Broadcast/Response).
Подтверждение (Acknowledgment).
Групповая функция (Group function).
Сообщение управления соединением транспортного протокола (Transport protocol connection management message).
Сообщение передачи данных транспортного протокола (Transport protocol data transfer message).
Анализатор дает возможность отправлять в CAN-сеть кадры типа Запрос (Request) и Запрос2 (Request2). Получателем таких кадров может быть как конкретный контроллер (ECU), так и все контроллеры в сети.
Анализатор CANopen позволяет интерпретировать протоколы и сетевые объекты, предусмотренные спецификациями CiA 301 v. 4.2 (прикладной уровень CANopen и коммуникационный профиль) и CiA DSP 305 v. 2.2 (сервисы установки уровня LSS). Для коммуникационного профиля используется предопределенное распределение идентификаторов узлов CAN-сети. Анализатор дополнительно отслеживает ход полных транзакций для всех типов SDO-протоколов – ускоренного, сегментированного и блочного.
Интерактивный конфигуратор дает возможность работать с объектным словарем устройства, используя его описание в файле EDS, формат которого определен стандартом CiA DS 306. Конфигуратор загружает словарь из файла и отображает его в виде таблицы, каждая строка которой содержит описание одного объекта CANopen. Конфигуратор дает возможность считывать из устройства значения объектов, доступных для чтения, и редактировать объекты, доступные для записи. Для чтения и записи объектов используется либо ускоренный, либо сегментированный SDO-протокол.
DCF-конфигуратор работает с файлами конфигурации устройства DCF. Формат этого файла также определен стандартом CiA DS 306. В дополнение к электронной спецификации файл DCF содержит конкретные значения всех необходимых параметров и объектов. С помощью конфигуратора эти значения могут быть записаны в устройство и сохранены в его энергонезависимой памяти. Статическое конфигурирование устройства CANopen избавляет от необходимости его настройки при каждом подключении к CAN-сети.
Сценарный конфигуратор дает возможность исполнения наборов команд, которые осуществляют взаимодействие с различными CANopen-устройствами. В текстовом файле сценария могут быть использованы три класса операторов:
CANopen-операторы, которые участвуют в формировании алгоритма сценария и осуществляют взаимодействие с CANopen-устройствами в составе CAN-сети.
Управляющие операторы, которые формируют алгоритм сценария, но не взаимодействуют с CAN-сетью и CANopen-устройствами.
Описательные операторы, выполняющие пояснительные функции в файле или алгоритме сценария и не влияющие на ход исполнения алгоритма.
Используя сценарии, можно тестировать работу не только отдельных узлов, но и CANopen-сети в целом.
Менеджер PDO (рис.6) позволяет работать с PDO-объектами устройства, отвечающего любому прикладному профилю. Таблица PDO-отображения загружается непосредственно из объектного словаря самого CANopen-устройства. При этом тип данных выбирается в зависимости от длины отображаемого прикладного объекта. Таким образом, для работы с PDO не требуется наличия электронной спецификации устройства. Но загрузка EDS-файла позволяет уточнить и зафиксировать тип данных прикладных PDO-объектов, а также определить и отобразить их имена. Менеджер позволяет задавать и пересылать в адрес устройства значения прикладных объектов, которые отображаются в таблице PDO.
LSS-мастер позволяет работать с сервисами установки уровня LSS, которые определяют протоколы для задания номера узла и битовой скорости. LSS-мастер руководствуется стандартом CiA DSP 305 и поддерживает полное семейство протоколов LSS, в том числе FastScan, который осуществляет отбор конфигурируемых LSS-устройств с использованием побитного арбитража адресов.
OPC-сервер может использоваться для взаимодействия с CanNopen-устройствами любого типа в режиме мягкого реального времени, а также для конфигурирования сетей CANopen. Он не привязан ни к одному прикладному профилю и руководствуется исключительно файлами электронной спецификации. Сервер формирует пространство тегов OPC на основе EDS-файлов устройств и конфигурационных файлов CAN-сетей. Каждый индекс и субиндекс объектного словаря устройства преобразуется в отдельный OPC-тег. Кроме того, создается набор предопределенных тегов для управления CANopen-сетью и обеспечения работы каждого узла сети. Использование CANopen OPC-сервера совместно со SCADA-системами позволяет интегрировать устройства CANopen в программную среду приложений АСУТП.
* * *
Таким образом, большой выбор и широкие возможности CAN-инструментов позволяют проектировать сложные прикладные системы, не вникая в детальную реализацию самих протоколов. В результате значительно снижаются усилия системного интегратора, необходимые для освоения и внедрения новой технологии. Разработчик имеет возможность непрерывно и оперативно тестировать новые устройства непосредственно в процессе разработки, что гарантирует готовому устройству быстрое и легкое прохождение теста соответствия и других сертификационных испытаний. Как видно из обзора, инструментальные средства САN активно выпускают различные производители во многих странах мира. Это подтверждает зрелость и распространенность CAN-технологии и гарантирует ее развитие в будущем.
Отзывы читателей