В этом примере показано, как собирать данные времени выполнения ПЛК для целей Rockwell Automation ®. Настройка сервера OPC. Используйте инспектор данных моделирования в Simulink ® для визуализации и мониторинга данных регистрации.
Запустите среду IDE Studio 5000 и создайте проект с именем ext_demo1.
Импорт созданного ext_demo.L5X в древовидный узел «Инструкции по надстройкам» проекта. Дополнительные сведения см. в разделе Создание структурированного текстового кода с инструментарием ведения журнала.
В MainProgram узел, удалить многозвенную цепь MainRoutine и создать ST MainRoutine узел.

В ST MainRoutineопределите теги, перечисленные в этой таблице.
| Имя тега | Тип тега |
|---|---|
i0_Subsystem | Subsystem |
i0_Subsystem_val | Subsystem_log |
Init | BOOL |
Y1 | REAL |
Y2 | REAL |
Y3 | DINT |
В среде IDE Studio 5000 i0_Subsystem tag является экземпляром верхней подсистемы AOI и i0_Subsystem_val tag - данные регистрации с типом структуры Subsystem_log. Установка начального значения init тег к 1.

Дважды щелкните значок MainRoutine узел дерева и введите код в изображении. Заявление Subsystem(i0_Subsystem, 23, Y1, Y2, Y3, i0_Subsystem_val) вызывает метод регистрации (ssmethod value=23) для входа в систему i0_Subsystem_val тег.

Скомпилируйте проект в среде IDE Studio 5000 и загрузите его на место установки ПЛК.
Запустите RSLinx Classic Gateway и выберите пункт меню DDE/OPC->Topic Configuration.
В диалоговом окне создайте раздел ext_demo1 нажав кнопку New кнопка. Выберите целевой ПЛК из списка ПЛК.

Щелкните значок Yes для обновления темы (ext_demo1).
Для проверки настройки данных журнала на сервере OPC выберите пункт меню. Edit->Copy DDE/OPC Link. i0_Subsystem_val тег для данных журнала должен отображаться на сервере OPC RSLinx.

После настройки сервера OPC RSLinx можно использовать команды внешнего режима ПЛК для подключения к серверу, потоковой передачи данных регистрации и отображения данных регистрации в реальном времени в Инспекторе данных моделирования. Информация о данных журнала находится в plc_log_data.mat , который можно найти в plcsrc папка. Вы можете использовать plcdispextmodedata для отображения содержимого MAT-файла. В окне команд MATLAB ® введите:
>>cd plcsrc >>plcdispextmodedata plc_log_data.mat
Log data: #1: Y1: LREAL #2: Y2: LREAL #3: Y3: LREAL #4: io_Chart.out: DINT #5: io_Chart.ChartMode: DINT #6: io_Chart.State_A: BOOL #7: io_Chart.State_B: BOOL #8: io_Chart.State_C: BOOL #9: io_Chart.State_D: BOOL #10: io_Chart.is_active_c3_Subsystem: USINT #11: io_MATLABFunction.y: LREAL #12: io_MATLABFunction.i: LREAL #13: io_S1.y: LREAL #14: io_S1.UnitDelay_DSTATE: LREAL #15: i1_S1.y: LREAL #16: i1_S1.UnitDelay_DSTATE: LREAL
Формат данных журнала - номер индекса, имя и тип. Логарифмические данные для выходных данных функционального блока, не являющегося верхней подсистемой, и переменных состояния именуются с использованием точечной нотации для представления экземпляров функционального блока, которые владеют данными. Можно использовать индекс и имя данных журнала с помощью plcrunextmode для указания подмножества данных журнала для потоковой передачи и визуализации.
Для подключения к серверу OPC и передачи данных журнала используйте plcrunextmode функция. Например, выполнение команды plcrunextmode ('localhost', 'studio5000', 'ext_demo1', 'plc_log_data.mat'); командные потоки данных журнала для примера модели в инспектор данных моделирования.

plcrunextmode продолжается выполнение команды и потоковая передача данных журнала. Для выхода из потоковой передачи в командной строке MATLAB введите Ctrl-C.
plcdispextmodedata | plcrunextmode