EtherCAT Get Notifications

Соберите уведомления из шины EtherCAT

  • Библиотека:
  • Simulink Real-Time / EtherCAT

Описание

Собирается уведомления от EtherCAT® складывают, и представляет их выходу как вектор с 21 элементом int32. На каждом временном шаге блок выводит то, что это накопилось и очищает себя для следующего временного шага.

Вектор содержит количество уведомлений в элементе 1, сопровождаемый до 20 коды уведомления. Максимальным количеством уведомлений является 20. Если шина представляет больше, чем 20 уведомления выходу, блок отбрасывает новейшие уведомления и представляет первый 20 это было получено.

Порты

Вывод

развернуть все

  • Length(0 – 20 ) — количество уведомлений в векторе.

  • Notification — составной объект типа уведомления и определенного значения. Типы:

    • EC_NOTIFY_GENERIC [0x00000000(0 )] — Представляет изменения состояния, такой as:0x00000001(1 ) — EtherCAT operational state change.

    • EC_NOTIFY_ERROR [0x00010000(65536 )] — Представляет состояния ошибки, такие как 0x00010001(65537 ): cyclic command: working counter error. Некоторые описывают изменения в состоянии ошибки.

    • EC_NOTIFY_SCANBUS [0x00030000(3*65536 )] — Представляет состояния ошибки ScanBus, такие как 0x00030002(196610 ): ScanBus mismatch.

    • EC_NOTIFY_HOTCONNECT [0x00040000(4*65536 )] — Представляет горячие состояния подключения, такие как 0x00040005(262149 ): Slave disappears.

Чтобы распечатать допустимые значения уведомления и описания, вызовите SimulinkRealTime.etherCAT.filterNotifications без аргумента.

Типы данных: int32

Параметры

развернуть все

Чтобы сопоставить блок с сетью EtherCAT, скопируйте значение Device index с блока EtherCAT Init, представляющего ту сеть в Device index для блока.

Программируемое использование

Параметры блоков: device_id

Введите основной шаг расчета или кратное основному шагу расчета. Используйте шаг расчета задачи EtherCAT.

Программируемое использование

Параметры блоков: sample_time

Советы

Собрать уведомления:

  1. Добавьте блок EtherCAT Get Notifications в свою модель.

  2. Соедините блок EtherCAT Get Notifications с блоком Outport. Если возможно, сделайте этот блок Outport блока Outport 1. Если блок EtherCAT Get Notifications соединяется с первым блоком Outport, 21 сигнал уведомления появляется в первом 21 столбце tg.OutputLog матрица. В противном случае необходимо задать столбцы со смещением.

  3. Увеличьте значение Signal logging data buffer size in doubles, по крайней мере, фактором 100 в панели Simulink Real-Time Options. Блок EtherCAT Get Notifications может быстро увеличить размер выходного журнала.

  4. Чтобы распечатать уведомления для этой модели, передайте соответствующий 21 столбец в SimulinkRealTime.etherCAT.filterNotifications функция.

Введенный в R2017a