1. Обязательно представиться на русском языке кириллицей (заполнить поле "Имя").
  2. Фиктивные имена мы не приветствуем. Ивановых и Пупкиных здесь уже достаточно.
  3. Не писать свой вопрос в первую попавшуюся тему - вместо этого создать новую тему.
  4. За поиск, предложение и обсуждение пиратского ПО и средств взлома - бан без предупреждения.
  5. Рекламу и частные объявления "куплю/продам/есть халтура" мы не размещаем ни на каких условиях.
  6. Перед тем как что-то написать - читать здесь и здесь, а студентам - обязательно здесь.
  7. Не надо писать в ЛС администраторам свои технические вопросы. Администраторы форума отлично знают как работает форум, а не все-все контроллеры, о которых тут пишут.

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

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

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

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

Сообщение Alex Tulaev »

Добрый день. Помогите, плз, разобраться. Хочу (не спрашивайте, зачем) прочитать данные из Меркурий 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
почётный участник форума
почётный участник форума
Сообщения: 626
Зарегистрирован: 29 сен 2008, 17:05
Имя: Алексей Угрюмов
Страна: Россия
город/регион: СПб
Благодарил (а): 8 раз
Поблагодарили: 23 раза

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

Сообщение alex_ugrumov »

лучше спросите у поддержки. Они хорошо отвечают. [email protected]
Alex.

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

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

Сообщение Alex Tulaev »

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

alex_ugrumov
почётный участник форума
почётный участник форума
Сообщения: 626
Зарегистрирован: 29 сен 2008, 17:05
Имя: Алексей Угрюмов
Страна: Россия
город/регион: СПб
Благодарил (а): 8 раз
Поблагодарили: 23 раза

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

Сообщение alex_ugrumov »

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

alex_ugrumov
почётный участник форума
почётный участник форума
Сообщения: 626
Зарегистрирован: 29 сен 2008, 17:05
Имя: Алексей Угрюмов
Страна: Россия
город/регион: СПб
Благодарил (а): 8 раз
Поблагодарили: 23 раза

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

Сообщение alex_ugrumov »

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

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

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

Сообщение Alex Tulaev »

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

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

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

Сообщение Alex Tulaev »

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

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