Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?

Официальный форум Simple-Scada.

Автор Тема: Вывести TCP пакет из порта в поле SCADA  (Прочитано 1795 раз)

vts

  • Новичок
  • *
  • Сообщений: 9
    • Просмотр профиля
Вывести TCP пакет из порта в поле SCADA
« : 09 Февраля 2021, 12:02:41 »
День добрый.
Подскажите куда копать. Есть метеостанция выдающая метео параметры в 4001 порт компьютера с переодичностью 5 секунд. Строчку в Telnet можно увидеть такую:
 0R0,Dm=184D,Sm=2.4M,Ta=-12.9C,Tp=-12.2C,Ua=78.8P,Pa=1009.6H,Id=S/N.
Каким образом это можно засунуть в Scada? В OPC сервере можно увидеть такую же строчку в диагностическом окне ответа прибора(метеостанции), но окно данных пустое какие бы типы данных не выбирал.
« Изменён: 09 Февраля 2021, 16:22:38 от Simple_Scada »

Simple_Scada

  • Администратор
  • *****
  • Сообщений: 1400
    • Просмотр профиля
Re: вывести TCP пакет из порта в поле SCADA
« Ответ #1 : 09 Февраля 2021, 16:22:30 »
Здравствуйте.

В Simple-Scada данные можно получить через OPC-сервер или через HTTP-запросы к серверам с открытым API. Если эти варианты не подходят, то по другому получить данные не получится.

vts

  • Новичок
  • *
  • Сообщений: 9
    • Просмотр профиля
Re: Вывести TCP пакет из порта в поле SCADA
« Ответ #2 : 11 Февраля 2021, 16:17:20 »
Спасибо.
Пробовал делать http запрос в браузере: http://192.168.33.3:4001/ и увидел ту же строчку:
0R0,Dm=184D,Sm=2.4M,Ta=-12.9C,Tp=-12.2C,Ua=78.8P,Pa=1009.6H,Id=S/N, но как сделать http запрос из Scada по примеру
погодного сервера пока не понятно. Никак не могу вывести данные в поле.

Simple-Scada

  • Администратор
  • *****
  • Сообщений: 3214
    • Просмотр профиля
    • Simple-Scada
Re: Вывести TCP пакет из порта в поле SCADA
« Ответ #3 : 11 Февраля 2021, 16:54:16 »
Примерно так:
Код: (delphi)
var
  aHTTP: TM_HTTP;
  aQuery: string;
begin
  // формируем текст запроса
  aQuery := 'http://192.168.33.3:4001/';
  aHTTP := RequestHTTP;      // создаем экземпляр запроса
  aHTTP.Get(aQuery);         // выполняем GET запрос
end.
В скрипте с типом "Выполнен POST/GET запрос" можно обработать результат запроса.
Код: (delphi)
begin
  // выводим ответ сервера в компонент Text1
  Text1.Text := UTF8Encode(Response.Text);
end.
« Изменён: 11 Февраля 2021, 16:57:20 от Simple-Scada »

vts

  • Новичок
  • *
  • Сообщений: 9
    • Просмотр профиля
Re: Вывести TCP пакет из порта в поле SCADA
« Ответ #4 : 12 Февраля 2021, 09:12:26 »
Спасибо за оперативные ответы.
Теперь хотя бы в поле TEXT, сообщение появилось: socket error #10061 Connection refused.
Буду дальше разбираться