Профиль должен быть заполнен на русском языке кириллицей. Заполнение профиля заведомо ложными или некорректными данными - причина возможного отказа в регистрации на форуме.

MasterOPC, ошибка при обращении к server.SendAndReceiveData()

RS-485, ProfiBUS, 4-20 mA, Wi-Fi, GSM и так далее

Автор темы
Alex Tulaev
здесь недавно
здесь недавно
Сообщения: 4
Зарегистрирован: 15 июн 2016, 09:40
Ф.И.О.: Александр Тулаев

MasterOPC, ошибка при обращении к server.SendAndReceiveData()

Сообщение Alex Tulaev » 15 июн 2016, 10:53

Добрый день. Помогите, плз, разобраться. Хочу (не спрашивайте, зачем) прочитать данные из Меркурий 230, который подцеплен к компу через Меркурий 221 (в данном случае порт СОМ4). Программа "Универсальный конфигуратор" счетчик видит, все нормально, связь есть. Стучусь до счетчика через MasterOPC скриптом, вот кусок :

local err,len=0;
local slen=11; -- send buffer lenght
local rlen=0; -- read buffer lenght
local wt={0x15,0x1,0x1,0x1,0x1,0x1,0x1,0x1,0x1,0x85,0x11}; --Open channel for adr=21
local sbuf=server.TableToString(wt);
err,rbuf,len=server.SendAndReceiveData(sbuf,slen,rlen);

if err then
server.Message("Error openning M230 (adr=21)");
end

По идее счетчик должен возвращать в ответ 4 байта : 1 - адрес, 2 - код возврата, 3,4 - CRC. При попытке указать длину буфера чтения больше нуля функция возвращает ошибку (err=true). Если rlen=0, то ошибки нет, но буфер чтения пуст. Аналогично при попытке прочитать данные.
Аналогичная конструкция нормально работает с овеновскими СИ8, все читает. Здесь не получается.
Посоветуйте, че-нить, плз. :oops:


alex_ugrumov
почётный участник форума
почётный участник форума
Сообщения: 556
Зарегистрирован: 29 сен 2008, 16:05
Ф.И.О.: Алексей Угрюмов
Благодарил (а): 5 раз
Поблагодарили: 15 раз

MasterOPC, ошибка при обращении к server.SendAndReceiveData()

Сообщение alex_ugrumov » 16 июн 2016, 13:04

лучше спросите у поддержки. Они хорошо отвечают. support@insat.ru
Alex.


Автор темы
Alex Tulaev
здесь недавно
здесь недавно
Сообщения: 4
Зарегистрирован: 15 июн 2016, 09:40
Ф.И.О.: Александр Тулаев

MasterOPC, ошибка при обращении к server.SendAndReceiveData()

Сообщение Alex Tulaev » 16 июн 2016, 13:20

Спасибо, это понятно. Мы пока ничего у них не покупали. Хотелось понять, стоит ли это делать. Я полагал, народ пользуется возможностью считать все, что угодно и откуда угодно с помощью этих функций. Может, я просто что-то не так делаю. Ладно, разберемся, но все равно спасибо.


alex_ugrumov
почётный участник форума
почётный участник форума
Сообщения: 556
Зарегистрирован: 29 сен 2008, 16:05
Ф.И.О.: Алексей Угрюмов
Благодарил (а): 5 раз
Поблагодарили: 15 раз

MasterOPC, ошибка при обращении к server.SendAndReceiveData()

Сообщение alex_ugrumov » 16 июн 2016, 14:10

очень узкая сфера, вряд ли найдёте кроме разработчиков с кем обсудить.
да они и до покупки отвечают без проблем. Это обычная практика в работе у Инсат: у них все продукты есть "на попробовать". А чем не устроил готовый OPC сервер для связи со счетчиками "Меркурий" от того же Инсат?
Alex.


alex_ugrumov
почётный участник форума
почётный участник форума
Сообщения: 556
Зарегистрирован: 29 сен 2008, 16:05
Ф.И.О.: Алексей Угрюмов
Благодарил (а): 5 раз
Поблагодарили: 15 раз

MasterOPC, ошибка при обращении к server.SendAndReceiveData()

Сообщение alex_ugrumov » 16 июн 2016, 14:13

А на форуме можете у Виктора Момотова спросить http://asutpforum.ru/memberlist.php?mode=viewprofile&u=9491
Alex.


Автор темы
Alex Tulaev
здесь недавно
здесь недавно
Сообщения: 4
Зарегистрирован: 15 июн 2016, 09:40
Ф.И.О.: Александр Тулаев

MasterOPC, ошибка при обращении к server.SendAndReceiveData()

Сообщение Alex Tulaev » 16 июн 2016, 14:30

Спасибо за совет. А по задаче, мне нужно снять данные с нескольких овеновских СИ8 (вода, стоки), с вычислителя "Ирга-2" (пар), ну и электричество. Все заводится на один комп, хотелось бы все сделать в одной программе. Вешать все на MasterSCADA и три ОРС-сервера как-то неэстетично. Короче, пока тренируюсь.


Автор темы
Alex Tulaev
здесь недавно
здесь недавно
Сообщения: 4
Зарегистрирован: 15 июн 2016, 09:40
Ф.И.О.: Александр Тулаев

MasterOPC, ошибка при обращении к server.SendAndReceiveData()

Сообщение Alex Tulaev » 04 июл 2016, 09:48

Всем спасибо, тема закрыта. Заработало через server.SendAndReceiveDataByMask(). Кстати, по MasterSCADA есть большая ветка на форуме owen.ru, если кому надо :ext_dont_ment:


Вернуться в «Интерфейсы, протоколы, связь»



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

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