EtherCAT Get Notifications

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

  • Библиотека:
  • Simulink в реальном времени/EtherCAT

  • EtherCAT Get Notifications block

Описание

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

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

Порты

Выход

расширить все

  • Length (020) - количество уведомлений в векторе.

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

    • EC_NOTIFY_GENERIC [0x00000000 (0)] - Представляет изменения состояния, такие как: 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.

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

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

Параметры

расширить все

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

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

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

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

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

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

Примеры моделей

Совет

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

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

  2. Соедините EtherCAT Get Notifications блок с File Log блоком.

  3. Используйте экспортированные данные журнала данных из данных сигнала, отображаемых в Данные моделирования Inspector. Смотрите пример Получите время и журнал данных из блока EtherCAT Get Notifications для slrealtime.EtherCAT.filterNotifications функция.

Введенный в R2020b