byn
byn
rus
rus
Каталог товаров
Нераспределенные товары

Обзор протокола EtherCAT

Принцип работы EtherCAT

Если в обычной Ethernet сети master устройство опрашивает slave устройства отдельными командами, то протокол EtherCAT позволяет отправить одну команду для опроса и управления сразу несколькими slave устройствами. Подчиненные устройства на лету считывают из Ethernet-фрейма нужные им данные или записывают данные для передачи и затем пересылают фрейм следующему устройству. Такой механизм позволяет на высокой скорости управлять до 65 535 устройств в одной сети без ограничений в топологии сети: линия, шина, дерево, звезда или их комбинация. Причем для организации различных топологий не нужны хабы или коммутаторы, т.к. сами подчиненные устройства имеют несколько портов. Процесс обмена данными с 1000 распределенных цифровых входов-выходов EtherCAT занимает около 30 мкс, что является типичным для передачи 125 байт на скорости 100 Мбит/с. Данные от 100 сервоосей могут обновляться со скоростью до 10 кГц.



Протокол EtherCAT можно применять как в централизованных, так и в распределенных системах автоматизации. Он поддерживает режимы: master-to-slave, master-to-master и slave-to-slave, а также интеграцию с другими промышленными протоколами. На верхнем уровне можно применить EtherCAT Automation Protocol, который позволяет работать на базе уже существующей Ethernet-инфраструктуры. Кроме того, EtherCAT позволяет в реальном времени передавать различные протоколы без влияния на передачу данных технологического процесса. Профиль Ethernet over EtherCAT позволяет инкапсулировать FTP, HTTP, TCP/IP и т.д.

Протокол EtherCAT основан на технологии Ethernet и спецификации IEEE 802. Он использует те же Ethernet-фреймы и физический уровень, но дополнительно к этому позволяет:

  • - Работать в режиме жесткого реального времени с детерминированным временем отклика
  • - Создавать множество узлов, каждый из которых обрабатывает небольшое число точек ввода-вывода
  • - Снизить затраты на оборудование при создании инфраструктуры передачи данных

Инициатором отправки команды может быть только master-устройство. Все остальные устройства лишь обрабатывают запрос от master’a и пересылают его дальше, что позволяет избежать непредсказуемых задержек и обеспечить передачу данных в реальном времени.

Master-устройства используют стандартный Ethernet Media Access Controller (MAC) и не нуждаются в каких-либо специальных сетевых картах, что позволяет реализовать master-устройства на любой аппаратной платформе с поддержкой Ethernet независимо от ее RTOS (англ. Real-Time Operating System – Операционная система реального времени) и программного обеспечения. Slave-устройства используют специальный контроллер EtherCAT Slave Controller (ESC) для обработки кадров на лету на аппаратном уровне.

Краткое описание протокола EtherCAT

Для передачи данных EtherCAT использует обычные Ethernet-фреймы. Фрейм EtherCAT имеет идентификатор 0x88A4 в поле EtherType. Поскольку EtherCAT оптимизирован для быстрой циклической передачи небольших порций данных, то он не использует ресурсоемкие стеки протоколов TCP/IP и UDP/IP.


В случае необходимости интеграции EtherCAT в обычную IT-инфраструктуру TCP/IP-трафик можно туннелировать через механизм «почтового ящика» (Mailbox) без влияния на оперативные данные процесса управления, передаваемые в реальном времени.

Во время запуска master-устройство конфигурирует slave-устройства и определяет список их параметров. Объем данных от одного узла сети может составлять от одного бита до нескольких килобайт. Фрейм EtherCAT включает заголовок и несколько датаграмм. В заголовке датаграммы указывают тип доступа к данным:

  • - чтение, запись или оба параметра
  • - доступ к конкретному устройству через прямую адресацию или доступ к нескольким устройствам через логическую (неявную) адресацию

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


Топология сети EtherCAT

EtherCAT поддерживает почти все существующие сетевые топологии: шина, дерево, звезда или гирлянда (daisy-chain). Причем в EtherCAT можно подключить тысячи устройств без использования коммутаторов и другого промежуточного оборудования, что позволяет снизить затраты и избежать ограничений при проектировании сети.


Логическая топология EtherCAT — это шина, но физическое соединение может быть любым. Это реализовано за счет того, что у каждого EtherCAT устройства есть несколько портов. Выглядит это вот так:


Master-устройство посылает команду на 0 порт slave-устройства, там команда обрабатывается на лету в EtherCAT Processing Unit и затем пересылается на следующий порт. Если порт не подключен к другому устройству, то команда без изменений пересылается на следующий порт, пока не вернется на 0 порт к master-устройству.

EtherCAT совместим со стандартными Ethernet кабелями. Например, в стандартном режиме 100BASE-TX можно передавать данные на скорости 100 Мбит/с, если расстояние между устройствами не превышает 100 м, а для передачи данных на расстояния более 100 м можно применить оптоволокно (100BASE-FX).

EtherCAT P (P означает питание, power) – это расширение стандарта EtherCAT, которое позволяет передавать как данные, так и питание по одному стандартному 4-проводному Ethernet кабелю. Такая возможность пригодится при создании шины из датчиков с организацией связи и питания всего по одному кабелю. EtherCAT и EtherCAT P идентичны с точки зрения протокола и отличаются только на физическом уровне. EtherCAT P можно использовать в одной сети с обычными EtherCAT устройствами. Чтобы преобразовать EtherCAT в EtherCAT P и обратно, применяют специальные устройства.

EtherCAT G/G10 – это расширение стандарта EtherCAT, которое позволяет передавать данные со скоростью 1 гигабит/с или 10 гигабит/с. Это особенно актуально при передаче большого объема данных в задачах машинного зрения, быстрого измерения параметров или сложных приложениях управления движением. EtherCAT G/G10 поддерживает все возможности EtherCAT и полностью совместим со стандартом IEEE 802.3. EtherCAT G добавляет в стандарт концепцию ветвей, которую реализуют с помощью устройств EtherCAT Branch Controllers (EBC). EBC представляют собой шлюзы между гигабитными и мегабитными (100 мбит/с) сегментами сети, что позволяет легко интегрировать в единую систему различные типы сетей.

Точная синхронизация времени в EtherCAT

EtherCAT использует технологию распределенных часов Distributed Clocks (DC).



В сети EtherCAT механизм синхронизации времени реализован полностью аппаратно. Часы на slave-устройствах могут легко и точно измерить задержку относительно других часов, так как для связи используется логическая и полнодуплексная физическая кольцевая структура Ethernet, т.е. каждый пакет EtherCAT проходит дважды через каждое slave-устройство (прямой и обратный путь по разным витым парам). На основе этого значения задержки производится подстройка распределенных часов, что позволяет достичь очень точной временной базы с разбросом существенно меньше 1 мкс в масштабах всей сети.

Применение EtherCAT в Цифровизации, Индустрии 4.0 и IoT

EtherCAT соответствует высоким требованиям тренда Цифровизации всего за счет своей производительности, гибкости и открытости. EtherCAT можно применять не только на полевом уровне, но и использовать для подключения к облачным сервисам.

Для подключения к облачным сервисам без необходимости переконфигурирования master- и slave-устройств EtherCAT использует коммуникационный шлюз, который может получить доступ ко всем данным с помощью доступа к почтовому ящику (mailbox) master-устройства. Коммуникационный шлюз может представлять собой как отдельное устройство, взаимодействующее с EtherCAT Master по протоколу TCP/IP или UDP/IP, или же являться приложением на самом master-устройстве. Кроме того, открытость протокола позволяет интегрировать в него IT-протоколы: OPC UA, MQTT, AMQP и любые другие – либо на стороне master-устройства, либо прямо на slave-устройствах, обеспечивая прямую передачу данных от датчиков до облачного сервиса с помощью единого протокола.

EtherCAT может работать в сетях TSN IEEE 802.1 (Time-Sensitive Networking), что позволяет организовать обмен между контроллерами с передачей данных в режиме реального времени. Кроме того, EtherCAT поддерживает интеграцию с протоколом OPC UA Pub-Sub, который можно использовать для межмашинного взаимодействия (M2M) и связи с облачными сервисами.