Моделирование сетей EtherCAT

Ethernet для Автоматизации управления (EtherCAT®) является открытым протоколом сети Ethernet для распределенного управления в реальном времени, например, для автомобильных и промышленных систем. Протокол EtherCAT обеспечивает:

  • Детерминированное и быстрое время цикла

  • Недорогой модуль ввода-вывода стоится

Сети EtherCAT состоят из одного главного узла и нескольких ведомых узлов. Подбиблиотека Simulink® Real-Time™ EtherCAT поддерживает только главный узел сети EtherCAT. Вы не можете эмулировать ведомые узлы с помощью блоков в подбиблиотеке EtherCAT. Однако можно использовать эти блоки, чтобы моделировать несколько сетей EtherCAT с несколькими картами Ethernet.

Вы моделируете сеть EtherCAT с помощью одного из сторонних конфигураторов EtherCAT: TwinCAT®3 от Beckhoff® или Инженер EC от Acontis.

Конфигуратор Beckhoff ET9000 больше не поддерживается.

Чтобы сопоставить сетевую модель в модель Simulink Real-Time, познакомьтесь со следующими отображениями:

Блоки и задачи

Как минимум каждая модель EtherCAT должна содержать блок EtherCAT Init. Блок EtherCAT Init содержит ссылку на файл Информации о сети EtherCAT (ENI). Файл ENI описывает сеть, включая переменные устройства сети.

Если вы генерируете конфигурационный файл с TwinCAT 3, используйте программное обеспечение, чтобы создать по крайней мере одну циклическую задачу ввода/вывода. Соедините эту задачу по крайней мере с одним входным каналом и одним выходным каналом на каждом ведомом устройстве. Если вы генерируете файл с помощью Инженера EC Acontis, программное обеспечение создает одну задачу по умолчанию, соединенную со всеми каналами ввода-вывода ведомого устройства.

Когда вы знаете метки деления цикла ввода/вывода, устанавливаете Fixed-step size в диалоговом окне Model Configuration Parameters к значению, которое сопоставимо со следующими ограничениями:

  • Метка деления цикла всех ведомых устройств EtherCAT.

  • Шаги расчета всех других блоков в модели Simulink.

Для получения дополнительной информации смотрите Деривацию Размера Фиксированного Шага.

Когда вы знаете переменные устройства, которые вы используете в своей модели, добавляете блок EtherCAT PDO Receive или EtherCAT PDO Transmit для каждой переменной устройства EtherCAT. Когда вы добавляете эти блоки в модель, блок получает список переменных устройства из конфигурационного файла в блоке EtherCAT Init. Когда вы задаете переменную устройства в диалоговом окне блока, обновления программного обеспечения информация о блоке с информацией о переменной устройства от конфигурационного файла.

Чтобы передать информацию о CANopen по EtherCAT (CoE) через вашу сеть, добавьте Загрузку SDO и блоки Загрузки SDO к вашей модели. Блоки SDO прибывают в два типа, синхронные и асинхронные. С точки зрения EtherCAT существует мало различия в поведении этих типов. Различие возникает во время выполнения приложения реального времени. Синхронизирующий SDO блокирует выполнение останова, в то время как они ожидают ответа. Асинхронные блоки SDO продолжают выполняться и опрашивают модуль ввода-вывода относительно ответа.

Чтобы избежать перегрузки ЦП, установите шаг расчета для синхронных блоков SDO к значению по крайней мере три раза, которое для PDO блокируется.

Чтобы отследить состояние сети или обеспечить сеть в конкретное состояние, добавьте блок EtherCAT Get State или EtherCAT Set State.

Порядок сетевых Событий

Блок EtherCAT Init планирует сетевые события в двух фазах:

  1. Фаза 1 — Считывает данные из переменных EtherCAT из последнего принятого кадра в EtherCAT PDO, Получают блоки.

  2. Любой из следующих блоков, в произвольном порядке:

    • EtherCAT PDO Получает — данные о Процессах, считанные из последнего кадра, принятого от ведомого устройства.

    • Передача EtherCAT PDO — Буферные данные, чтобы отправить в следующем кадре к ведомому устройству.

  3. Каждый из следующих блоков, в произвольном порядке:

    • Синхронизация EtherCAT Загрузка SDO — Ставит кадр SDO в очередь с новым значением, ожидает ответа.

    • Синхронизация EtherCAT Загрузка SDO — Ставит кадр SDO в очередь с запросом о данных, ожидает ответа.

    • EtherCAT Асинхронная Загрузка SDO — Ставит кадр SDO в очередь с новым значением, проверками на ответ, продолжает выполнение.

    • EtherCAT Асинхронная Загрузка SDO — Ставит кадр SDO в очередь с запросом о данных, проверками на ответ, продолжает выполнение.

      Синхронная загрузка и загрузка берут по крайней мере три метки деления самой быстрой метки деления цикла PDO, чтобы завершить обработку.

    • EtherCAT Получают состояние — текущее состояние Чтений сети EtherCAT.

    • Состояние Набора EtherCAT — Очереди запрашивают изменить текущее состояние сети EtherCAT.

  4. Фаза 2 — Передает кадры PDO, сопровождаемый следующим доступным поставил кадры SDO в очередь.

Смотрите также

| | | | | | | | | | | |

Похожие темы