Формирование строки адреса OPC UA в макросе

Работа с панелями оператора Weintek - подключение, программирование, совмещение с ПЛК

Модераторы: kiv, 8bit, VanMo

Формирование строки адреса OPC UA в макросе

Сообщение Oleg_K » 15 июл 2022, 13:36

Добрый день. Пытаюсь сформировать строку и подоткнуть её на вход GetData для чтения переменной из OPC UA. Не получается, синтаксическая ошибка.
Подскажите как можно это сделать?

Код: Выделить всё
char strSrc[255]="enable(Application.PROTECT.protect_burner[0].enable)[0] (ns:2;s:Application.PROTECT.protect_burner[0].enable)"
bool read_opc_bool = false

GetData(read_opc_bool, "OPC UA Client", strSrc, 1)

Аватара пользователя
Oleg_K
 
Сообщения: 26
Зарегистрирован: 11 июл 2022, 12:27

Re: Формирование строки адреса OPC UA в макросе

Сообщение 8bit » 15 июл 2022, 13:43

адрес в виде значение текстовой переменной не поддерживается..... :(
Хороший вопрос содержит половину ответа - A good question contains half the answer
Аватара пользователя
8bit
 
Сообщения: 1106
Зарегистрирован: 20 апр 2020, 19:07

Re: Формирование строки адреса OPC UA в макросе

Сообщение Oleg_K » 18 июл 2022, 17:21

Частично решается индексами, но работает только с массивами и еще присвоить индекс можно только крайнему массиву.

Вот так использовать можно:
Код: Выделить всё
Application.PROTECT.protect_burner[0] + IDX


А вот так уже нет
Код: Выделить всё
Application.PROTECT.protect_burner[0].signal + IDX
Аватара пользователя
Oleg_K
 
Сообщения: 26
Зарегистрирован: 11 июл 2022, 12:27

Re: Формирование строки адреса OPC UA в макросе

Сообщение 8bit » 19 июл 2022, 10:30

Сделали запрос реализации такой фичи, получили ответ Weintek: We do not have plans for this function at present.
Хороший вопрос содержит половину ответа - A good question contains half the answer
Аватара пользователя
8bit
 
Сообщения: 1106
Зарегистрирован: 20 апр 2020, 19:07

Re: Формирование строки адреса OPC UA в макросе

Сообщение Dimon775 » 22 дек 2022, 12:28

Получилось прочитать вот так:
Код: Выделить всё
bool a=0
GetData(a, "OPC UA Client", "eH (ns:2;s:Application.GVL_AI.ST_601B.eH)", 1)

Изображение
Dimon775
 
Сообщения: 2
Зарегистрирован: 05 апр 2019, 12:26

Re: Формирование строки адреса OPC UA в макросе

Сообщение 8bit » 22 дек 2022, 12:39

Dimon775 писал(а):Получилось прочитать вот так:
Код: Выделить всё
bool a=0
GetData(a, "OPC UA Client", "eH (ns:2;s:Application.GVL_AI.ST_601B.eH)", 1)

Изображение


Так это штатный путь через Мастер вставки функций (с выбором тегов), каждый тег "прибит гвоздями", вы то хотели формировать имена тегов как строки и уже эти строки подсовывать в GetData() ...
Хороший вопрос содержит половину ответа - A good question contains half the answer
Аватара пользователя
8bit
 
Сообщения: 1106
Зарегистрирован: 20 апр 2020, 19:07


Вернуться в Weintek

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 11