Страница 80 из 111 ПерваяПервая ... 3070787980818290 ... ПоследняяПоследняя
Показано с 791 по 800 из 1109

Тема: Modbus Universal MasterOPC Server новый OPC сервер от компании ИнСАТ

  1. #791

    По умолчанию

    В справке:
    Руководство по языку Lua 5.1 > Примеры и полезности > Примеры расчета контрольных сумм >CRC-CCITT
    Спасибо.

  2. #792

    По умолчанию

    Цитата Сообщение от SCADAMaster Посмотреть сообщение
    Руководство по языку Lua 5.1
    Неужто в Master SCADA в качестве внутреннего языка используется Lua ?

  3. #793

    По умолчанию

    Вопрос был про OPC сервер - в нем скриптовый язык на Lua.
    Спасибо.

  4. #794

    По умолчанию

    Спасибо за подсказку

  5. #795

    По умолчанию

    Столкнулся с проблемой! Есть программа написанная на Qt. Она взаимодействует с Modbus Universal MasterOPC по протоколу TCP. В одном из тегов реализованная следующая функция:
    function OnWrite()
    local srcdata = {0}
    local srcmask = {"int16:10"}
    local srclen = 1;
    local dstdata = {}
    local dstmask = {"byte", "uint32:1:3210", "float:1:3210", "float:1:3210", "float:1:3210"};--количество элементов – 5, чередование старшим байтов вперед
    err, dstdata, dstlen = modbus.ExtFunction(68, srclen, srcmask, srcdata, dstmask);
    -- dstlen = dstlen - 1;
    server.Message( "dstlen = ", dstlen, " err = ", err, " ", dstdata[1], dstdata[2], dstdata[3]);
    end
    Осуществляю запрос в прибор. Приходит запрос в программу правильно. Ответ от программы приходит тоже правильный заданной длинны и правильного содержания. Тем не менее функция ExtFunction не может в принятой последовательности выделить 5 значений. Отправленная и принятая последовательности приведены ниже:
    29-01-2019 11:35:55.047 modbus::modbus_miko10.10.10.97:2323) Rx: [0025] 00 00 00 00 00 13 0A 44 01 00 00 00 00 41 25 A5 BA 40 A9 6D FF 00 00 00 00 - строка ответ содержащее 5 значений
    29-01-2019 11:35:55.047 modbus::modbus_miko10.10.10.97:2323) Tx: [0010] 00 00 00 00 00 04 0A 44 00 00 - строка запроса, содержащая в качестве передаваемого параметра - 0, размерность два байта

  6. #796

    По умолчанию

    Точнее она не определяет ни одного значения

  7. #797

    По умолчанию

    Цитата Сообщение от alss Посмотреть сообщение
    Точнее она не определяет ни одного значения
    А что именно происходит?
    Вообще как вы написали делать не правильно - где контроль err? Нужно сперва убедится что нет ошибки приема, убедится что в dstdata достаточно элементов таблицы (функция table.maxn), и только потом уже обращаться к элементам таблицы
    Спасибо.

  8. #798

    По умолчанию

    После запуска скрипта в Modbus Universal MasterOPC, отправляю следующий запрос:
    Tx: [0010] 00 00 00 00 00 04 0A 44 00 00. Клиент принимает данный запрос обрабатывает и отправляет ответ. В информационном окне в Modbus Universal MasterOPC ответ отображается (и он является верным) и выделен зеленным цветом:
    Rx: [0025] 00 00 00 00 00 13 0A 44 01 00 00 00 00 41 25 A5 BA 40 A9 6D FF 00 00 00 00.
    согласно заданному шаблону dstmask = {"byte", "uint32:1:3210", "float:1:3210", "float:1:3210", "float:1:3210"}, Modbus Universal MasterOPC должен после последовательности 00 00 00 00 00 13 0A 44 выделить в полученном ответе 5 элементов. Тем не менее
    modbus.ExtFunction возвращает нулевую ошибку, длину равную 1 и пустой dstdata. Вопрос заключается в том, почему Modbus Universal MasterOPC принимает ответ (и отображает его верное), но при этом dstdata пустой.
    Скрипт писался согласно примерам приведенным в Помощи к программе.

  9. #799

    По умолчанию

    Пришлите лог обмена с устройством. Для этого в свойствах сервера включите запись журнала и всех его событий размер лога задайте равным 10000. Запустите режим исполнения и воспроизведите ошибку. Лог пишется в папку:
    c:\ProgramData\InSAT\MasterOPC Universal Modbus Server\SERVERLOGS\
    Лог заархивируйте и вышлите нам, также пришлите вашу конфигурацию ОРС сервера.
    Спасибо.

  10. #800

    По умолчанию

    Цитата Сообщение от SCADAMaster Посмотреть сообщение
    Пришлите лог обмена с устройством. Для этого в свойствах сервера включите запись журнала и всех его событий размер лога задайте равным 10000. Запустите режим исполнения и воспроизведите ошибку. Лог пишется в папку:
    c:\ProgramData\InSAT\MasterOPC Universal Modbus Server\SERVERLOGS\
    Лог заархивируйте и вышлите нам, также пришлите вашу конфигурацию ОРС сервера.
    Оправил Лог и картинку с настройками OPC сервера
    настройки.png
    Вложения Вложения
    • Тип файла: rar Server.rar (724 байт, Просмотров: 1)

Страница 80 из 111 ПерваяПервая ... 3070787980818290 ... ПоследняяПоследняя

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •