Vfdmod - управляем частотником по MODBUS RTU

Обсуждение установки, настройки и использования LinuxCNC. Вопросы по Gкоду.
Аватара пользователя
aekhv
Мастер
Сообщения: 393
Зарегистрирован: 17 окт 2014, 15:03
Репутация: 218
Настоящее имя: Александр
Откуда: г.Хабаровск
Контактная информация:

Vfdmod - управляем частотником по MODBUS RTU

Сообщение aekhv »

Всем доброго времени года. Родил новую версию компонента для управления частотником, также с претензией на универсальность, но уже без необходимости компилировать исходники. Теперь все настройки берутся из текстового INI-файла, для популярных дистрибутивов LinuxCNC 2.7 на базе Debian Wheezy/Stretch подготовлены установочные deb-ки.

Исходники: https://github.com/aekhv/vfdmod
Документация: https://github.com/aekhv/vfdmod/wiki/Russian-(Русский)
Дистрибутивы DEB: https://github.com/aekhv/vfdmod/releases

Возможности
  • Задание частоты кодами функций 0x06 (write holding register) и 0x10 (write multiple holding registers).
  • Управление запуском и сброс ошибок (fault reset) кодами функций 0x06, 0x10, 0x05 (write coil) и 0x0F (write multiple coils).
  • Мониторинг любого количества дополнительных параметров (напряжение, ток, температура и т.п.) кодами функций 0x01 (read coils) и 0x03 (read holding registers) с созданием в HAL пинов различных типов: bit, float, s32 и u32.
  • Формирование at-speed с заданной точностью.
  • Генератор панели управления PyVcp.
  • Мониторинг качества связи RS485: подключено (да/нет), количество ошибок передачи и код последней ошибки.
  • Переподключение адаптера RS485 при возникновении определённых кодов ошибок (коды выбираются пользователем).
  • Частотные преобразователи Huanyang не поддерживаются поскольку используют не стандартный протокол MODBUS.
Скриншоты
hc1-cplus-axis.png (14603 просмотра) <a class='original' href='./download/file.php?id=180504&sid=76a2dca7894f1ce688c0361de238ee5a&mode=view' target=_blank>Загрузить оригинал (128.07 КБ)</a>
hc1-cplus-hal.png (14603 просмотра) <a class='original' href='./download/file.php?id=180505&sid=76a2dca7894f1ce688c0361de238ee5a&mode=view' target=_blank>Загрузить оригинал (108.51 КБ)</a>
Примеры файлов конфигурации
И ещё по теме
Последний раз редактировалось aekhv 27 янв 2021, 03:26, всего редактировалось 15 раз.
Аватара пользователя
aekhv
Мастер
Сообщения: 393
Зарегистрирован: 17 окт 2014, 15:03
Репутация: 218
Настоящее имя: Александр
Откуда: г.Хабаровск
Контактная информация:

Re: Vfdmod - управляем частотником по MODBUS RTU

Сообщение aekhv »

В ближайших планах:
  • Генератор PyVcp панелей, custom.hal и postgui.hal из ini-файла.
  • Переподключение при внезапной пропаже/появлении переходника USB-RS485. Сейчас эта ситуация никак не отслеживается.
Аватара пользователя
aekhv
Мастер
Сообщения: 393
Зарегистрирован: 17 окт 2014, 15:03
Репутация: 218
Настоящее имя: Александр
Откуда: г.Хабаровск
Контактная информация:

Re: Vfdmod - управляем частотником по MODBUS RTU

Сообщение aekhv »

Добавил генератор PyVcp, работает вот так:

Код: Выделить всё

vfdmod --pyvcp my-config-file.ini > my-pyvcp-panel.xml
vfdmod --postgui my-config-file.ini > postgui.hal
На выходе будет простейшая панель со всеми параметрами, которые прописаны в ini-файле. Удобно для тестирования.
Аватара пользователя
成龙79
Кандидат
Сообщения: 61
Зарегистрирован: 11 сен 2016, 16:49
Репутация: 4
Контактная информация:

Re: Vfdmod - управляем частотником по MODBUS RTU

Сообщение 成龙79 »

Добрый день! Подскажите где взять параметры отмеченные на скрине ? Пытаюсь подружить VLT FC51 с Linuxcnc 2.7.15 (Debian Wheezy) через конвектор rs232>rs485 .
На частотнике выставил значения параметров : 8-01 ( 0 или 2 ) ставл и 0 и 2
8-02 (1) rs 485
8-30 (2) -modbus
8-31 (1) адрес шины по умолчанию
8-32 (2 - (9600)) менял и в большую и меньшую сторону как и в конфигурации linuxcnc
8-33 (2) - нет контроля четности, 1 стоп бит.
Конфигурацию делал stepconfig по инструкции с ютуба одного Польского блогера: ссылка на видео ( https://youtu.be/OJap9CVGacg) дохожу до момента где должна появится связь но связи нет. Хочу попробовать ваш метод.
Вложения
1.png (15868 просмотров) <a class='original' href='./download/file.php?id=179597&sid=76a2dca7894f1ce688c0361de238ee5a&mode=view' target=_blank>Загрузить оригинал (32.3 КБ)</a>
三条通往知识的道路:反思之路是最高贵之路,模仿之路是最简单之路,体验之路是最苦之路
Аватара пользователя
aekhv
Мастер
Сообщения: 393
Зарегистрирован: 17 окт 2014, 15:03
Репутация: 218
Настоящее имя: Александр
Откуда: г.Хабаровск
Контактная информация:

Re: Vfdmod - управляем частотником по MODBUS RTU

Сообщение aekhv »

В руководстве пользователя к вашему частотнику должны быть адреса и значения регистров, читайте внимательно.
Аватара пользователя
aekhv
Мастер
Сообщения: 393
Зарегистрирован: 17 окт 2014, 15:03
Репутация: 218
Настоящее имя: Александр
Откуда: г.Хабаровск
Контактная информация:

Re: Vfdmod - управляем частотником по MODBUS RTU

Сообщение aekhv »

Мануал: https://prom-electric.ru/media/fc51.pdf

Стр.28:

Код: Выделить всё

Register number
...
50000 Input data: Frequency converter control word register (CTW)
50010 Input data: Bus reference register (REF).
...
Стр.30:

Код: Выделить всё

5.4 How to Access Parameters
5.4.1 Parameter Handling
The PNU (Parameter Number) is translated from the register address contained in the Modbus read or write message. The parameter number is translated
to Modbus register address as (10 x parameter number -1)DECIMAL.
Ну и далее там всё подробно расписано :)
Аватара пользователя
成龙79
Кандидат
Сообщения: 61
Зарегистрирован: 11 сен 2016, 16:49
Репутация: 4
Контактная информация:

Re: Vfdmod - управляем частотником по MODBUS RTU

Сообщение 成龙79 »

Хорошо Спасибо! буду изучать. :roll:
三条通往知识的道路:反思之路是最高贵之路,模仿之路是最简单之路,体验之路是最苦之路
alex_sar
Мастер
Сообщения: 1672
Зарегистрирован: 28 авг 2018, 17:13
Репутация: 278
Настоящее имя: Алексей
Контактная информация:

Re: Vfdmod - управляем частотником по MODBUS RTU

Сообщение alex_sar »

Классная идея! Такого не хватало.

Вопрос - инструкции по сборке есть?
Аватара пользователя
aekhv
Мастер
Сообщения: 393
Зарегистрирован: 17 окт 2014, 15:03
Репутация: 218
Настоящее имя: Александр
Откуда: г.Хабаровск
Контактная информация:

Re: Vfdmod - управляем частотником по MODBUS RTU

Сообщение aekhv »

alex_sar писал(а):Вопрос - инструкции по сборке есть?
Я всё собираю в Qt4, который в Wheezy ставится из штатного репозитория: apt-get install qtcreator. В Qt5 тоже собирается без проблем.

На гитхабе сейчас лежит сырая версия с возможностью переподключаться при ошибках связи, она не совсем корректно работает, советую дождаться релиза. На этих выходных планирую доделать.
alex_sar
Мастер
Сообщения: 1672
Зарегистрирован: 28 авг 2018, 17:13
Репутация: 278
Настоящее имя: Алексей
Контактная информация:

Re: Vfdmod - управляем частотником по MODBUS RTU

Сообщение alex_sar »

Понял, спасибо, подожду релиза.

Просьба всё-таки Makefile хотя бы положить в репозиторий. Когда-то давно ставил qtcreator, там вроде есть такая опция стандартная - makefile создать.
alex_sar
Мастер
Сообщения: 1672
Зарегистрирован: 28 авг 2018, 17:13
Репутация: 278
Настоящее имя: Алексей
Контактная информация:

Re: Vfdmod - управляем частотником по MODBUS RTU

Сообщение alex_sar »

Разобрался, пишу для тех кому тоже удобнее компилировать из консоли. Ставил на рабочей машине под ubuntu 18.04, на дебиан могут отличаться имена пакетов, суть такая же.

Нужно поставить

Код: Выделить всё

apt install qtcreator qt5-default
потом заходим в папку vfdmod и запускаем qmake && make

если linuxcnc также собран из исходников и не установлен, нужно поменять строчки в файле vfdmod.pro

Код: Выделить всё

INCLUDEPATH += /usr/include/linuxcnc
LIBS += -lmodbus -llinuxcnchal
на

Код: Выделить всё

INCLUDEPATH += /usr/include/linuxcnc
INCLUDEPATH += /home/user/linuxcnc/include
LIBS += -lmodbus -llinuxcnchal -L/home/user/linuxcnc/lib
Аватара пользователя
Taganrog
Мастер
Сообщения: 1238
Зарегистрирован: 15 апр 2015, 16:32
Репутация: 284
Настоящее имя: Евгений
Откуда: Брянск
Контактная информация:

Re: Vfdmod - управляем частотником по MODBUS RTU

Сообщение Taganrog »

BentScrew, Добрый день, пытаюсь запустить частотник OMRON varispeed v7cimr с вашим плагином. Настроил частоту и параметры порта на частотнике и в ini файле. Добавил строку запуска в HAL с режимом отладки. После старта получаю такие сообщения:
modbus.PNG (14975 просмотров) <a class='original' href='./download/file.php?id=180334&sid=76a2dca7894f1ce688c0361de238ee5a&mode=view' target=_blank>Загрузить оригинал (215.01 КБ)</a>
В hal стоит статус нет связи и постоянно накапливаются ошибки. Я так понимаю что идет запись параметров с помощью команды 06H (запись 1 регистра). Мой частотник, насколько я понял из даташита, такой команды незнает.
протокол.PNG (14975 просмотров) <a class='original' href='./download/file.php?id=180333&sid=76a2dca7894f1ce688c0361de238ee5a&mode=view' target=_blank>Загрузить оригинал (123.94 КБ)</a>
Знает только 10H.

Можно ли что-то поправить в плагине чтоб подружить таки их ?
Документация на всякий случай:
OMRON varispeed v7cimr - v7azb1p5_ru.pdf
(5.33 МБ) 418 скачиваний
Аватара пользователя
aekhv
Мастер
Сообщения: 393
Зарегистрирован: 17 окт 2014, 15:03
Репутация: 218
Настоящее имя: Александр
Откуда: г.Хабаровск
Контактная информация:

Re: Vfdmod - управляем частотником по MODBUS RTU

Сообщение aekhv »

Taganrog писал(а):Знает только 10H.

Можно ли что-то поправить в плагине чтоб подружить таки их ?
Суть проблемы ясна, поправить можно. Надо только подумать как это отразить в ini-файле, чтобы юзер мог указывать код команды записи (0х06 или 0х10)...

Пы.Сы. В соседней теме у человека тоже Omron, так там ещё интереснее, на запуск/останов он принимает только код 0х05. Что-то эти Омроны замороченные слишком :)
Аватара пользователя
Taganrog
Мастер
Сообщения: 1238
Зарегистрирован: 15 апр 2015, 16:32
Репутация: 284
Настоящее имя: Евгений
Откуда: Брянск
Контактная информация:

Re: Vfdmod - управляем частотником по MODBUS RTU

Сообщение Taganrog »

BentScrew писал(а): Надо только подумать как это отразить в ini-файле, чтобы юзер мог указывать код команды записи (0х06 или 0х10)...
А если не переписывать алгоритм , а добавить параметр "Использовать только 10H" например в группу RS485 типа bool. И если false то писать в порт как и было, а если thue то записывать этот же 1 параметр только через 10Н с указанием количества адресов равным 1 ?
Аватара пользователя
aekhv
Мастер
Сообщения: 393
Зарегистрирован: 17 окт 2014, 15:03
Репутация: 218
Настоящее имя: Александр
Откуда: г.Хабаровск
Контактная информация:

Re: Vfdmod - управляем частотником по MODBUS RTU

Сообщение aekhv »

Не всё так просто, задание частоты может работать через 0х06 или 0х10. А запуск/останов может работать через 0x05 или 0x06. То есть true/false все возможные комбинации не описывает. У меня есть идея как всё сделать красиво.
alex_sar
Мастер
Сообщения: 1672
Зарегистрирован: 28 авг 2018, 17:13
Репутация: 278
Настоящее имя: Алексей
Контактная информация:

Re: Vfdmod - управляем частотником по MODBUS RTU

Сообщение alex_sar »

вообще есть модуль стандартный mb2hal (оказывается :) ) - наверное чем с нуля пилить. лучше было бы его чутка доработать - сделать ему более user-friendly настройку для задач управления частотником. по крайней мере гляньте как конфиг там устроен. там немного generic всё это сделано - регистры modbus можно писать/читать из linuxcnc.

настроить mb2hal для частотника непрограммисту будет трудно.

зато - работает, и 0x06 0x10 там поддерживается.
Аватара пользователя
Taganrog
Мастер
Сообщения: 1238
Зарегистрирован: 15 апр 2015, 16:32
Репутация: 284
Настоящее имя: Евгений
Откуда: Брянск
Контактная информация:

Re: Vfdmod - управляем частотником по MODBUS RTU

Сообщение Taganrog »

alex_sar писал(а): наверное чем с нуля пилить.
Александр уже доработал плагин. Его плюс в том что очень легко устанавливается и настраивается без танцев с бубнами.
Аватара пользователя
aekhv
Мастер
Сообщения: 393
Зарегистрирован: 17 окт 2014, 15:03
Репутация: 218
Настоящее имя: Александр
Откуда: г.Хабаровск
Контактная информация:

Re: Vfdmod - управляем частотником по MODBUS RTU

Сообщение aekhv »

alex_sar писал(а):настроить mb2hal для частотника непрограммисту будет трудно.
Вот именно! Поэтому мы пойдём своим путем :hehehe:
alex_sar писал(а):зато - работает, и 0x06 0x10 там поддерживается.
Поддержку 0х10 сделал на коленке, тестер-доброволец говорит - работает.
Аватара пользователя
成龙79
Кандидат
Сообщения: 61
Зарегистрирован: 11 сен 2016, 16:49
Репутация: 4
Контактная информация:

Re: Vfdmod - управляем частотником по MODBUS RTU

Сообщение 成龙79 »

Добрый день! Извиняюсь за безграмотность, программирование для меня чуждо и все делаю впервый раз.По этому прошу помощи в настройке.
И оценки правильности моих действий.
1.Были установлены deb. файлы из начала темы. в результате появились в директории usr/bin несколько vfd файлов
IMG_20200424_083201.jpg (14775 просмотров) <a class='original' href='./download/file.php?id=180430&sid=76a2dca7894f1ce688c0361de238ee5a&mode=view' target=_blank>Загрузить оригинал (6.37 МБ)</a>
при нажатии на которые правой кнопкой предлагается открть с помощю linuxcnc.
IMG_20200424_091716.jpg (14775 просмотров) <a class='original' href='./download/file.php?id=180432&sid=76a2dca7894f1ce688c0361de238ee5a&mode=view' target=_blank>Загрузить оригинал (5.54 МБ)</a>
Далее выпадает ошибка.
IMG_20200424_091747.jpg (14775 просмотров) <a class='original' href='./download/file.php?id=180433&sid=76a2dca7894f1ce688c0361de238ee5a&mode=view' target=_blank>Загрузить оригинал (6.61 МБ)</a>
Так же появился пустой файл в папке Evgenii под названием my-config-file.
IMG_20200424_083057.jpg (14775 просмотров) <a class='original' href='./download/file.php?id=180431&sid=76a2dca7894f1ce688c0361de238ee5a&mode=view' target=_blank>Загрузить оригинал (7.65 МБ)</a>
2.Заполнил этот путой файл по иннструкции а так же с использованием мануала на чп fc51 https://euroec.by/news/article/61 и гид по настройке чп овен https://ural-avtomatika.ru/sites/defaul ... achat1.pdf
в результате получил такой файл.
my-config-file.ini
(855 байт) 453 скачивания
三条通往知识的道路:反思之路是最高贵之路,模仿之路是最简单之路,体验之路是最苦之路
Аватара пользователя
aekhv
Мастер
Сообщения: 393
Зарегистрирован: 17 окт 2014, 15:03
Репутация: 218
Настоящее имя: Александр
Откуда: г.Хабаровск
Контактная информация:

Re: Vfdmod - управляем частотником по MODBUS RTU

Сообщение aekhv »

成龙79 писал(а):1.Были установлены deb. файлы из начала темы.
Не надо ставить все deb-файлы! Только один, для своей ОС.
成龙79 писал(а):при нажатии на которые правой кнопкой предлагается открть с помощю linuxcnc.
Вообще неправильно! Читайте инструкцию в первом сообщении темы.
成龙79 писал(а):в результате получил такой файл.
Мануал на частотник я не читал, но конфиг файл точно неправильный. MinSpeedRPM не может быть равно нулю. Адреса регистров не могут быть больше чем 65535 (0хFFFF).
Ответить

Вернуться в «LinuxCNC»