exponenta event banner

Уведомления о получении EtherCAT

Сбор уведомлений от шины 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, введите значение индекса устройства из блока EtherCAT Init, представляющего эту сеть, в индекс устройства для блока.

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

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

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

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

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

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

Совет

Для сбора уведомлений:

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

  2. Подключите блок EtherCAT Get Notifications к блоку File Log.

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

Представлен в R2020b