Протокол Овен для VISA

Делись идеей, получай поддержку и критику!
yuxx
interested
interested
Сообщения: 4
Зарегистрирован: 16 фев 2017, 16:16
Версия LabVIEW: 2012
Благодарил (а): 1 раз
Контактная информация:

Re: Протокол Овен для VISA

Сообщение yuxx »

Добрый день, попробовал вашу программу в связке с трм210. Однако возникает странная ошибка, при попытке записи параметра уставки SP запись происходит, но в прибор записываются странные значения, 0 записывает как 0, 10 как 2.0, любое число больше 19 как 2.1. Чтение уставки и текущей температуры происходит нормально. Я так понимаю ошибка возникает при формировании пакета данных, но вот где? :help:
Аватара пользователя
Chupakabra

Tutorials
professional
professional
Сообщения: 362
Зарегистрирован: 21 янв 2009, 10:50
Награды: 1
Версия LabVIEW: 2015
Откуда: Москва
Поблагодарили: 4 раза
Контактная информация:

Re: Протокол Овен для VISA

Сообщение Chupakabra »

Как на рисунках Тип данных SP должен быть Single (SGL), потом TypeCast в байтовый массив и обрезка до 3 первых байт. В таком виде уже отправляется.
yuxx
interested
interested
Сообщения: 4
Зарегистрирован: 16 фев 2017, 16:16
Версия LabVIEW: 2012
Благодарил (а): 1 раз
Контактная информация:

Re: Протокол Овен для VISA

Сообщение yuxx »

Спасибо, заработало!
дело было в типе данных.

Попробовал сделать на modbus без сервера, регистры читает, но запутался в преобразовании данных регистров в температуру.
Потом выползла еще проблема записи, по modbus почему-то не получается записать данные во второй регистр (SP адрес 0х0002 команда 0х10). В чем там дело так и не понял,
подсовываю те же данные регистров на текущую температуру как исходные данные для SP, ошибка 01 - код функции не поддерживается.
Andrey Petrzhik
user
user
Сообщения: 88
Зарегистрирован: 17 ноя 2015, 11:57
Версия LabVIEW: 12
Благодарил (а): 4 раза
Контактная информация:

Re: Протокол Овен для VISA

Сообщение Andrey Petrzhik »

Chupakabra, спасибо огромное за драйвер!
Подцепил счётчик импульсов Овен СИ30, заменив всего несколько параметров:
- скорость 115200 -> 9600
- порт 1 -> 16
- com1 -> com3
И всё бы отлично, но никак не могу разобраться как мне перевести принятый блок данных в число импульсов...
Может кто в формате для дураков как это делать рассказать? А то чёта запутался в алгоритме... Да, в мануале написано что текущие значения счётчика (на запросы CEU и Ctr) приходят как 4-байтный Long...
Спасибо за помощь!
Вложения
CEU_real.png
CEU.jpg
Аватара пользователя
dadreamer

Activity Professionalism Tutorials Gold Silver
Bronze Black Автор
professor
professor
Сообщения: 3998
Зарегистрирован: 17 фев 2013, 16:33
Награды: 9
Версия LabVIEW: 2.5 — 2025
Благодарил (а): 14 раз
Поблагодарили: 149 раз

Re: Протокол Овен для VISA

Сообщение dadreamer »

 
Вложения
2019-03-01_0-49-28.jpg
2019-03-01_0-49-28.jpg (12.56 КБ) 6147 просмотров
2019-03-01_0-49-52.jpg
2019-03-01_0-49-52.jpg (25.31 КБ) 6147 просмотров
Andrey Petrzhik
user
user
Сообщения: 88
Зарегистрирован: 17 ноя 2015, 11:57
Версия LabVIEW: 12
Благодарил (а): 4 раза
Контактная информация:

Re: Протокол Овен для VISA

Сообщение Andrey Petrzhik »

Точно!
Пысы: кому надо вдруг... вот так для СИ30 всё работает (см. принтскрин).
Вложения
si30ok.jpg
yuxx
interested
interested
Сообщения: 4
Зарегистрирован: 16 фев 2017, 16:16
Версия LabVIEW: 2012
Благодарил (а): 1 раз
Контактная информация:

Re: Протокол Овен для VISA

Сообщение yuxx »

Добрый день. Спасибо за протокол, написал на основе него много всего для терморегуляторов. Сейчас появился двухканальный прибор и я никак не могу разобраться реализована ли в Вашем протоколе возможность адресации для разных каналов. Как я понимаю, канал прибора это базовый адрес прибора плюс смещение. Но как это задать в этом протоколе не очень понятно.
Artem.spb

Activity Автор
professor
professor
Сообщения: 3643
Зарегистрирован: 31 июл 2011, 23:05
Награды: 2
Версия LabVIEW: 12-18
Благодарил (а): 61 раз
Поблагодарили: 200 раз
Контактная информация:

Re: Протокол Овен для VISA

Сообщение Artem.spb »

yuxx писал(а): 03 фев 2021, 14:56 реализована ли в Вашем протоколе возможность адресации для разных каналов.
О каком "вашем" протоколе идёт речь? О протоколе, разработанном Овном?
Что за прибор? По-моим воспоминаниям Овен на разных приборах разные протоколы и методы адресации реализует
yuxx
interested
interested
Сообщения: 4
Зарегистрирован: 16 фев 2017, 16:16
Версия LabVIEW: 2012
Благодарил (а): 1 раз
Контактная информация:

Re: Протокол Овен для VISA

Сообщение yuxx »

Разобрался, протокол ОВЕН. Я скачал первую версию реализации протокола овен под labview. А в первом сообщении есть и вторая версия реализации протокола и там работа с многоканальными приборами доделана. Еще раз спасибо огромное автору!
Maks1m
interested
interested
Сообщения: 5
Зарегистрирован: 04 сен 2025, 12:04
Версия LabVIEW: 13/17
Благодарил (а): 1 раз
Контактная информация:

Re: Протокол Овен для VISA

Сообщение Maks1m »

Доброго времени суток!

По работе выдали МВ110.8АС и МУ110.6У H/W v2.0 (второй из обновлённой линейки, как я понимаю).
С МВ110.8АС проблем не возникло, значения успешно считываю через LabVIEW с помощью закреплённой в теме реализации ОВЕН-протокола.
А вот с МУ110.6У уже не получается управлять выходом. Пока подключён лишь 4 вход, сам прибор у меня на COM3, базовый адрес 32 (35 для 4-го канала, соответственно). Через Owen Configurator по протоколу Modbus RTU на 4 выходе подаю напряжение и всё работает корректно: подал 10В, на мультиметре ~10В.
Перешёл в LabVIEW, через оперативный параметр r.OE подаю 1.0 (что эквивалентно 10В на аналоговом выходе) в формате float24 и... ничего не генерируется, нулевое напряжение на 4 выходе вместо ожидаемых 10В. Ошибок при этом тоже нет, которые возникают в случае неверных сетевых параметров.
Сделал по примерам, сам пока не представляю в чём может быть причина:
Изображение
Может это связано с тем, что МУ110.6У из обновлённой линейки H/W v2.0? Или у меня что-то не так на блок-диаграмме?
Аватара пользователя
IvanLis

Activity Professionalism Tutorials Gold Man of the year 2012
Автор
guru
guru
Сообщения: 5678
Зарегистрирован: 02 дек 2009, 17:44
Награды: 7
Версия LabVIEW: 2015, 2016
Откуда: СССР
Благодарил (а): 35 раз
Поблагодарили: 125 раз

Re: Протокол Овен для VISA

Сообщение IvanLis »

Maks1m писал(а): 04 сен 2025, 12:38 Может это связано с тем, что МУ110.6У из обновлённой линейки H/W v2.0? Или у меня что-то не так на блок-диаграмме?
Стандартной программой посмотрите.
Он может быть на другой протокол включен.
Maks1m
interested
interested
Сообщения: 5
Зарегистрирован: 04 сен 2025, 12:04
Версия LabVIEW: 13/17
Благодарил (а): 1 раз
Контактная информация:

Re: Протокол Овен для VISA

Сообщение Maks1m »

IvanLis писал(а): 04 сен 2025, 19:45
Maks1m писал(а): 04 сен 2025, 12:38 Может это связано с тем, что МУ110.6У из обновлённой линейки H/W v2.0? Или у меня что-то не так на блок-диаграмме?
Стандартной программой посмотрите.
Он может быть на другой протокол включен.
Речь про овеновский конфигуратор? Согласно руководству, там автоопределение протокола, насколько я понимаю:
Снимок экрана 2025-09-05 094403.jpg
В пользу этого еще говорит отсутствие команды Prot в перечне конфигурационных параметров, приводимого в руководстве для МУ110.6У H/W v2.0.
Для старой линейки (которая не H/W v2.0) наоборот, данный параметр присутствует. Он там и отвечал за выбор протокола.
В Owen Configurator удалось подключить устройство по Modbus RTU, по ОВЕНу не хочет (но в руководстве как раз и указан Модбас для конфигурации, видимо так оно и работает только по модбасу).
А опции смены протокола уже после подключения нигде больше не увидел.
Есть ещё старый Конфигуратор М110 под старую линейку, там есть смена протокола после подключения, но для новых H/W v.2.0 данная опция закономерно подсвечивается ошибкой, параметр никак не записать в прибор.
Последний раз редактировалось Maks1m 05 сен 2025, 06:04, всего редактировалось 2 раза.
Maks1m
interested
interested
Сообщения: 5
Зарегистрирован: 04 сен 2025, 12:04
Версия LabVIEW: 13/17
Благодарил (а): 1 раз
Контактная информация:

Re: Протокол Овен для VISA

Сообщение Maks1m »

Решил попробовать через dll ОВЕНа, загрузил с сайта производителя (https://owen.ru/product/biblioteka_win_dll). Там же взял и описание библиотеки.
Сделал просто для проверки, но результат тот же - напряжения на выходе нет, а в LabVIEW функции OpenPort и WriteFloat24 возвращают 0 (т.е. ошибки не обнаружены, т.к. при их наличии функция возвращала бы значение <0):
Вложения
Снимок экрана 2025-09-05 121112.jpg
Снимок экрана 2025-09-05 121750.jpg
Снимок экрана 2025-09-05 122433.jpg
Снимок экрана 2025-09-05 122912.jpg
Maks1m
interested
interested
Сообщения: 5
Зарегистрирован: 04 сен 2025, 12:04
Версия LabVIEW: 13/17
Благодарил (а): 1 раз
Контактная информация:

Re: Протокол Овен для VISA

Сообщение Maks1m »

В ТП Овена посоветовали вместо функции WriteFloat24 использовать универсальную OwenIO. Увы, проблема осталась, напряжение на выходе МУ110 неизменно нулевое.
Во вложениях прикрепил свою тестовую программу, описание функции из руководства по библиотеке и прототип функции в Call Library Function.
На 1-й странице данной темы сам автор отметил, что для МУ110 генерация происходит через запись значения формата float24 в параметр r.OE. Т.е. в посылке значение передаётся 3 байтами.
В функции OwenIO параметр params в формате char*, т.е. необходимо подать набор символов.

На простом примере: хочу сгенерировать на выходе 10В, что эквивалентно значению 1 у параметра r.OE. 1 = 0х3F800000. Для формата float24 отбрасываю младший байт мантиссы и получаю 3F8000.
В протоколе Овен байт кодируется двумя символами, согласно таблице 3F8000 = JVOGGG
Снимок экрана 2025-09-08 120257.jpg
Снимок экрана 2025-09-08 120257.jpg (20.97 КБ) 198 просмотров
Данный набор символов и подаю в качестве params, но никакого результата на мультиметре не обнаружил... :help:
Замечу, что сама функция не вернула ошибку, что продемонстрировано на рис.1 во вложениях (return type 2). А сам индикатор "Авария" на модуле при выполнении программы гаснет, т.е. запросы от ПК проходят.
Вложения
Снимок экрана 2025-09-08 114657.jpg
Поддерживка протокола ОВЕН.png
Снимок экрана 2025-09-08 115812.jpg
Последний раз редактировалось Maks1m 08 сен 2025, 08:16, всего редактировалось 4 раза.
Maks1m
interested
interested
Сообщения: 5
Зарегистрирован: 04 сен 2025, 12:04
Версия LabVIEW: 13/17
Благодарил (а): 1 раз
Контактная информация:

Re: Протокол Овен для VISA

Сообщение Maks1m »

Приключения продолжаются :)
Написал в ТП Овена повторно, содержание в целом идентично написанному мною выше.
Вот оттуда ответ:
Добрый день.


Уточнил. Подобная проблема уже была. Нашли ошибку.


Owen_io.dll программирование модуля МУ110.224.8Р на Visual Basic 6 Ошибка в описании функции Неправильно: Function WriteFloat24(ByVal adr As Long, ByVal adr_type As Long, ByVal command As String, ByVal value As Single, ByVal Index As Integer) As Long Правильно: Function WriteFloat24(ByVal adr As Long, ByVal adr_type As Long, ByVal command As String, value As Single, ByVal Index As Integer) As Long

По аналогии с Function ReadFloat24(ByVal adr As Long, ByVal adr_type As Long, ByVal cmd As String, res As Single, ByVal Index As Integer) As Long

В Windows 10 с Visual Basic 6 не работают функции записи, т.к. скорее всего сама Windows 10 неправильно работает с Visual Basic 6. В COM-порт прилетает неправильный пакет, судя по расшифровкам оно неправильно формирует именно часть пакета с значащими данными, т.е. если отправили туда 1, то оно отправляет туда неправильное значение.


Попробуйте использовать функцию WriteFloat24.
Помогите разобраться, причём тут Visual Basic 6? Хорошо, в Windows10 с VB6 не работают функции записи, но с МУ110 я работаю в LabVIEW, что не забыл указать в своём запросе. Разве между данными средами есть какая-то связь? Или библиотека на VB создавалась, речь об этом?
Допустим, в описании функции WriteFloat24 для VB6 ошибка. Как мне это знание применить к моей проблеме? Что надо исправить? С VB не знаком.
Прикрепляю описание функции во вложениях.
Своё использование функции WriteFloat24 и её прототип в Call Library Function скидывал ранее:
ИзображениеИзображение
Вложения
Снимок экрана 2025-09-08 214325.jpg
Последний раз редактировалось Maks1m 08 сен 2025, 18:27, всего редактировалось 2 раза.
Ответить
  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Проекты»