Simulink OPC UA/DA задержка сигнала
08.12.2021
Добрый день, уважаемые эксперты!
Возникли проблемы с подключением по opc ua со стороны Matlab Simulink к серверу, расположенному на другой виртуальной машине. Интересует проброс тегов OPC UA через исполняемый код matlab в simulink модель.
Что сделано:
- Через toolbox с помощью команды opcua('ip', port) создается клиент opc ua, но происходит замена введенного ip сервера на localhost.
- Дальнейшие подключения происходят через localhost, что является некорректным.
В чем может быть причина и как можно её исправить?
Попытки обойти проблему:
- Для обхода указанной проблемы используется конвертор opc ua - opc da и дальнейшее подключение через OPC Data Access Explorer и блоки Simulink (OPC Config, OPC Read, OPC Write).
- Связь устанавливается, происходит чтение и запись данных.
- При использовании по отдельности (в разных .slx файлах) блоки чтения и записи работают корректно, без задержек.
- При одновременном использовании чтения и записи появляется задержка в чтении данных примерно в 1,5 секунды. Запись происходит корректно, без задержек.
- Настройки блоков в обоих случаях одинаковые.
Как можно уменьшить время чтения данных? Какие настройки могут влиять на быстродействие?
P.S. Целевая система:
На последок хотелось бы уточнить следующее:
- В итоге хотелось бы получить из симулинк модели с чтением и импортом OPC тегов исполняемый код
- OPC теги на чтение и запись - параметры PID регуляторов. По сути хотим пид регулирование реализовывать в отдельном контроллере, обратную связь получать от модели.
- Данный код мы хотим запускать на Linux машине (контроллере)
Возможно ли это сделать средствами Matlab и OPC toolbox?
Ответы