EnglishУкраїнськаmRussian
Login/New
Topic with no new replies

Вопрос по шаблону VKT-7


Author Message
Written on: 01. 03. 2015 [10:00]
pentagon128
Руслан Кучерявый
Topic creator
registered since: 15.11.2011
Posts: 102
Есть у меня под рукой ВКТ-7-04 с RS232 для экспериментов, настроены тепловыводы. VKT7Easy2_v3.44 (заводское ПО) с ним работает у меня нормально в Windows, через USB/RS232 преобразователь CH341 по перекрёстному нуль-модемному кабелю. Также этот USB/RS232 преобразователь CH341 нормально определяется драйвером ядра и работает в Linux, в частности на Raspbian на Raspberry Pi (проверено telnet используя 2-шт. таких адаптеров а также через работу с модемами). Т.е. физически канал связи рабочий 100%.

Теперь в качестве эксперимента пробую настроить связь в OpenScada на Raspberry Pi. Версия OpenScada на устройстве 2219, библиотеку DevLib подключил из версии 2221 (перекинул через sql запрос). Пользовательский протокол VKT-7 установлен, входной и выходной последовательный транспорт VKT7 созданы, входному транспорту назначен протокол UserProtokol.VKT7, адрес=/dev/ttyUSB0:9600:8N1 (это USB/RS232 преобразователь CH341) . Создаю на логическом уровне контроллер vkt7 с периодом исполнения 60 сек, задаю внутри контроллера параметр vkt7 и привязываю к нему шаблон DevLib.VKT7.
В конфигурации шаблона параметра транспорт=SYS.Transport.["Serial"].["out_VKT7"]. В самом исходнике DevLib.VKT7 вижу адрес прибора прописан=0 (у меня так и есть в приборе), список параметров прибора в шаблоне расширен, появилась возможность, как я догадываюсь - опрашивать архивы.

При запуске параметра на исполнение получаю в его атрибутах Ошибка:1:Transport 'SYS.Transport.["Serial"].["out_VKT7"]' error.
Трафик транспортов VKT7 что входящего, что исходящего равен 0. Т.е. шаблон не работает с транспортами. Пробовал указывать в конфигурации шаблона Транспорт=SYS.Transport.Serial.out_VKT7,тоже не работает.

Роман, подскажите пожалуйста в чём может быть проблема. Или шаблон ещё не рабочий (в процессе разработки)? Такую-же ошибку получал при работе с предыдущей версией шаблона VKT-7.
Сам ВКТ-7 со своим протоколом интереса для меня не представляет, на рынке есть тепловычислители других производителей с Modbus RTU&TCP. Будут представлять интерес пожалуй тепловычислители с OPC-UA, другой вопрос - когда они появятся )))
Written on: 01. 03. 2015 [15:43]
roman
Roman Savochenko
Moderator
Contributor
Developer
registered since: 12.12.2007
Posts: 3750
"pentagon128" wrote:

Теперь в качестве эксперимента пробую настроить связь в OpenScada на Raspberry Pi. Версия OpenScada на устройстве 2219, библиотеку DevLib подключил из версии 2221 (перекинул через sql запрос). Пользовательский протокол VKT-7 установлен, входной и выходной последовательный транспорт VKT7 созданы, входному транспорту назначен протокол UserProtokol.VKT7, адрес=/dev/ttyUSB0:9600:8N1 (это USB/RS232 преобразователь CH341) .

Входной зачем? Про него тут что-то написано: http://wiki.oscada.org/HomePageEn/Using/APIFunctionLibs/LibUserPrtDevs#h1161-7

"pentagon128" wrote:

Создаю на логическом уровне контроллер vkt7 с периодом исполнения 60 сек, задаю внутри контроллера параметр vkt7 и привязываю к нему шаблон DevLib.VKT7.
В конфигурации шаблона параметра транспорт=SYS.Transport.["Serial"].["out_VKT7"].

Разве это правильно?

"pentagon128" wrote:

При запуске параметра на исполнение получаю в его атрибутах Ошибка:1:Transport 'SYS.Transport.["Serial"].["out_VKT7"]' error.

Естественно.

"pentagon128" wrote:

Сам ВКТ-7 со своим протоколом интереса для меня не представляет, на рынке есть тепловычислители других производителей с Modbus RTU&TCP. Будут представлять интерес пожалуй тепловычислители с OPC-UA, другой вопрос - когда они появятся )))

Это вряд-ли, скорее нечто IEC 60870-5.

Learn, learn and learn better than work, work and work.
Written on: 02. 03. 2015 [02:52]
pentagon128
Руслан Кучерявый
Topic creator
registered since: 15.11.2011
Posts: 102
Спасибо за подсказку! Буду пробовать по новой, в соответствии с http://wiki.oscada.org/HomePageEn/Using/APIFunctionLibs/LibUserPrtDevs#h1161-7, этот документ для меня новый.
Written on: 02. 03. 2015 [16:28]
pentagon128
Руслан Кучерявый
Topic creator
registered since: 15.11.2011
Posts: 102
По новому документу связь с прибором установил сразу. Считываются несколько параметров (номер абонента, номер прошивки, тип прибора), но не все. (см. прилагаемые рисунки) Например текущие показания объёмных расходов Eval(Nan), а на табло прибора V1=V2=V3=0, но при этом в приборе наличии код нештатной ситуации 6, нет питания расходомеров+расход ниже нижней уставки. Также не определяются еденицы измерения параметров прибора, в приборе система практическая (кгс/см2, т/ч, град.С, М3/ч)/ Ну и соответственно архивы в прибое пустые, т.к. прибор взят "с полки". Как нибудь попробую опросить прибор с данными на рабочем узле учёта, но это не скоро. В полях конфигурации шаблона прописал архиватор на БД SQLITE вида DBArch.vkt7days . Никаких таблиц в файле БД тоже не создаётся.

Также есть мысль прокинуть транспорт VKT7 через уже настроенный remserial на Raspberry Pi на верхний уровень (так у меня Modbus RTU пробрасывается по Ethernet на нижний уровень), но пока нужды в этом нет.
Attachment

01.png (File type: image/png, Size: 30.32 kilobytes) — 2577 downloads
02.png (File type: image/png, Size: 22.45 kilobytes) — 2439 downloads
Written on: 02. 03. 2015 [16:55]
roman
Roman Savochenko
Moderator
Contributor
Developer
registered since: 12.12.2007
Posts: 3750
"pentagon128" wrote:

По новому документу связь с прибором установил сразу. Считываются несколько параметров (номер абонента, номер прошивки, тип прибора), но не все. (см. прилагаемые рисунки) Например текущие показания объёмных расходов Eval(Nan), а на табло прибора V1=V2=V3=0, но при этом в приборе наличии код нештатной ситуации 6, нет питания расходомеров+расход ниже нижней уставки. Также не определяются еденицы измерения параметров прибора, в приборе система практическая (кгс/см2, т/ч, град.С, М3/ч)/ Ну и соответственно архивы в прибое пустые, т.к. прибор взят "с полки". Как нибудь попробую опросить прибор с данными на рабочем узле учёта, но это не скоро. В полях конфигурации шаблона прописал архиватор на БД SQLITE вида DBArch.vkt7days . Никаких таблиц в файле БД тоже не создаётся.

И к чему это всё?
Во первых поддержки по этому протоколу никто не обещал, т.е. как есть.
Во вторых этой поддержки быть не может поскольку у меня лично такого счётчика нет.
И в третьих, как результат первых двух — включайте отладку и разбирайтесь, настраивайте правильно исходящий транспорт и изучайте почему нет ответов на многие запросы, за VKT7 такое наблюдалось, особенно когда там опрашиваются почти все параметры.

Learn, learn and learn better than work, work and work.
Written on: 02. 03. 2015 [18:15]
pentagon128
Руслан Кучерявый
Topic creator
registered since: 15.11.2011
Posts: 102
"roman" wrote:

И к чему это всё?


пока есть прибор под рукой и Openscada +немного времени , почему бы не проверить возможности по получению данных таким образом?

"roman" wrote:

Во первых поддержки по этому протоколу никто не обещал, т.е. как есть.
Во вторых этой поддержки быть не может поскольку у меня лично такого счётчика нет.
И в третьих, как результат первых двух — включайте отладку и разбирайтесь, настраивайте правильно исходящий транспорт и изучайте почему нет ответов на многие запросы, за VKT7 такое наблюдалось, особенно когда там опрашиваются почти все параметры.


Ситуация понятна. Разработчик ВКТ ещё и протокол меняет от версии к версии (4,5,7,9 все разные) поэтому смысла поддержки этого прибора в пользовательском протоколе Openscada вообще не вижу, соответственно копания в отладке тоже. С точки зрения проектировщика АСУТП - гораздо выгоднее прибор с готовым modbus на борту. Рациональная мысль - только кинуть туннель по remserial через rs232/usb что даст возможность сэкономить на 1 шт. модеме, но т.к. модемы как правило оплачивает заказчик (входят в спецификацию на узел учёта) то тратить время на это экономически нецелесообразно.
Written on: 03. 03. 2015 [11:16]
roman
Roman Savochenko
Moderator
Contributor
Developer
registered since: 12.12.2007
Posts: 3750
"pentagon128" wrote:

пока есть прибор под рукой и Openscada +немного времени , почему бы не проверить возможности по получению данных таким образом?

Проверять никто и не запрещал, но Вы же и вопросы задавали. А если задаются вопросы, то что-то ожидается чего никто не обещал.

"pentagon128" wrote:

Ситуация понятна. Разработчик ВКТ ещё и протокол меняет от версии к версии (4,5,7,9 все разные)

Впервые вообще слышу о версии протокола VKT-7, как минимум в документе "modbusprotocol-vkt7.pdf" от начала 2014 года ничего о версиях не упоминается, только о версии ПО прибора, которая должна быть больше 1.5.

"pentagon128" wrote:

С точки зрения проектировщика АСУТП - гораздо выгоднее прибор с готовым modbus на борту.

Если обратите внимание на название файла со спецификацией протокола VKT7, да и внутри они такое заявляют, то он яко-бы ModBus/RTU, хотя отношения к ModBus/RTU по сути уже и не имеет, поскольку стандартные функции переопределили исказив PDU (модель данных ModBus) и от ModBus там осталось только ADU.

Learn, learn and learn better than work, work and work.
Written on: 03. 03. 2015 [16:22]
pentagon128
Руслан Кучерявый
Topic creator
registered since: 15.11.2011
Posts: 102
"roman" wrote:

Впервые вообще слышу о версии протокола VKT-7, как минимум в документе "modbusprotocol-vkt7.pdf" от начала 2014 года ничего о версиях не упоминается, только о версии ПО прибора, которая должна быть больше 1.5.

Речь идёт о версии прибора - самого тепловычислителя. От версии к версии протокол разный. В 9-й, как я понимаю, добавлена запись настроечных тегов в прибор. Завтра например будет 10-я, что нибудь ещё добавят, а 7-й снимут с производства...и смысл тогда какой с ним возиться )))

"roman" wrote:

Если обратите внимание на название файла со спецификацией протокола VKT7, да и внутри они такое заявляют, то он яко-бы ModBus/RTU, хотя отношения к ModBus/RTU по сути уже и не имеет, поскольку стандартные функции переопределили исказив PDU (модель данных ModBus) и от ModBus там осталось только ADU.


Читал месяца 3 назад. Также читал форум по этому прибору. Математическая модель обмена, когда вначале надо пробудить прибор пакетом, потом запросить маску конфигурации, потом записать в прибор маску запрашиваемых данных рассчитанную по маске конфигурации (полученной на предыдущем шаге) и только потом по маске запрашиваемых данных запросить прибор (только тогда будет ответ прибора) отнюдь не модбас, где вся карта тегов доступна сразу и целиком.
Written on: 16. 02. 2017 [06:57]
pentagon128
Руслан Кучерявый
Topic creator
registered since: 15.11.2011
Posts: 102
Удалось решить вопрос съёма данных с теплокомовских девайсов ВКТ-7 и ВКТ-9 через контроллер выполняющий интеграционные функции и имеющий работающую OpenScada на борту. Решение - шлюзование интерфейса через remserial, что не затрагивает функционал OpenScada, главное - чтобы на борту контроллера было Linux ядро. На одной стороне канала ВКТ7/9, на другом виртуальная машина с vkt-easy или менеджером данных. Канал идёт через наш облачный сервис используя серые IP как на стороне ВКТ, так и на стороне рабочего места специалиста опрашивающего ВКТ, оно находиться на ноутбуке. Удалось совсем избавиться от GSM CSD модемов. На эту тему я недавно написал краткую статью, ознакомиться можно здесь
asutpeng.ru/images/files/articles/OEMVKT9DANFOSSECL310.pdf

[This article was edited 2 times, at last 16.02.2017 at 07:20.]
Written on: 10. 09. 2018 [17:29]
Garro
Olegs Sos
registered since: 10.09.2018
Posts: 1
"pentagon128" wrote:

Есть у меня под рукой ВКТ-7-04 с RS232 для экспериментов, настроены тепловыводы. VKT7Easy2_v3.44 (заводское ПО) с ним работает у меня нормально в Windows, через USB/RS232 преобразователь CH341 по перекрёстному нуль-модемному кабелю. Также этот USB/RS232 преобразователь CH341 нормально определяется драйвером ядра и работает в Linux, в частности на Raspbian на Raspberry Pi (проверено telnet используя 2-шт. таких адаптеров а также через работу с модемами). Т.е. физически канал связи рабочий 100%.

Теперь в качестве эксперимента пробую настроить связь в OpenScada на Raspberry Pi. Версия OpenScada на устройстве 2219, библиотеку DevLib подключил из версии 2221 (перекинул через sql запрос). Пользовательский протокол VKT-7 установлен, входной и выходной последовательный транспорт VKT7 созданы, входному транспорту назначен протокол UserProtokol.VKT7, адрес=/dev/ttyUSB0:9600:8N1 (это USB/RS232 преобразователь CH341) . Создаю на логическом уровне контроллер vkt7 с периодом исполнения 60 сек, задаю внутри контроллера параметр vkt7 и привязываю к нему шаблон DevLib.VKT7. Цена на ВКТ-5 по линку.
В конфигурации шаблона параметра транспорт=SYS.Transport.["Serial"].["out_VKT7"]. В самом исходнике DevLib.VKT7 вижу адрес прибора прописан=0 (у меня так и есть в приборе), список параметров прибора в шаблоне расширен, появилась возможность, как я догадываюсь - опрашивать архивы.

При запуске параметра на исполнение получаю в его атрибутах Ошибка:1:Transport 'SYS.Transport.["Serial"].["out_VKT7"]' error.
Трафик транспортов VKT7 что входящего, что исходящего равен 0. Т.е. шаблон не работает с транспортами. Пробовал указывать в конфигурации шаблона Транспорт=SYS.Transport.Serial.out_VKT7,тоже не работает.

Роман, подскажите пожалуйста в чём может быть проблема. Или шаблон ещё не рабочий (в процессе разработки)? Такую-же ошибку получал при работе с предыдущей версией шаблона VKT-7.
Сам ВКТ-7 со своим протоколом интереса для меня не представляет, на рынке есть тепловычислители других производителей с Modbus RTU&TCP. Будут представлять интерес пожалуй тепловычислители с OPC-UA, другой вопрос - когда они появятся )))


а ваше мнение о ВКТ-5?



3502