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

Обсуждение установки, настройки и использования LinuxCNC. Вопросы по Gкоду.

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

Сообщение aekhv » 13 май 2020, 09:55

1. Строка "loadusr -w vfdmod fc51.ini" записана неправильно. Прочитайте ВНИМАТЕЛЬНО инструкцию, ошибка в одном символе.
2. В папке "мой-станок" нет файла "fc51.ini". Есть какой-то другой файл с похожим названием.

Видео инструкции точно не будет, поскольку в вашем случае начать придётся с базовых навыков владения ОС (не обязательно Linux).
Аватара пользователя
aekhv
Мастер
 
Сообщения: 338
Зарегистрирован: 17 окт 2014, 15:03
Откуда: г.Хабаровск
Репутация: 189
Медальки:
Настоящее имя: Александр

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

Сообщение 成龙79 » 14 май 2020, 08:39

BentScrew писал(а):1. Строка "loadusr -w vfdmod fc51.ini" записана неправильно. Прочитайте ВНИМАТЕЛЬНО инструкцию, ошибка в одном символе.
2. В папке "мой-станок" нет файла "fc51.ini". Есть какой-то другой файл с похожим названием.

Видео инструкции точно не будет, поскольку в вашем случае начать придётся с базовых навыков владения ОС (не обязательно Linux).

Спасибо за ответ! понял! Заменил в строке "w" на заглавную linuxcnc запустился ! Инструкция из первого поста исчезла по этому следующие строки в castom hal из своих постов на форуме а так же из вашей инструкции на форуме linuxcnc.org
Vfdmod - управляем частотником по MODBUS RTU Снимок экрана_2020-05-14_09-01-23.png
они немного отличаются (в частности 3 строка ). Вот с этими строками удалось запустить linuxcnc остальное закоментировал
Vfdmod - управляем частотником по MODBUS RTU Снимок экрана_2020-05-14_09-31-12.png
Vfdmod - управляем частотником по MODBUS RTU Снимок экрана_2020-05-14_09-39-58.png

Можно ли с этим запускать шпиндель или нужно еще что то исправить? Спрашиваю тк компьютер после тщетных попыток запустить шпиндель в гараже был демонтирован из шкафа станка и лежит дома в разобранном виде на табурете. Хотелось бы произвести отладку в домашних условиях и исключить беготню с компьютером в гараж и обратно.
p.s Спасибо за вашу помощь! ТК живу в глухой деревне кроме вас мне помочь не кому. :wik:
成龙79
Новичок
 
Сообщения: 22
Зарегистрирован: 11 сен 2016, 16:49
Репутация: 0

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

Сообщение aekhv » 14 май 2020, 09:00

成龙79 писал(а):Инструкция из первого поста исчезла

Инструкция переехала поближе к исходникам, на Github Wiki. Ссылка есть в первом сообщении темы.

成龙79 писал(а):Вот с этими строками удалось запустить linuxcnc остальное закоментировал

В теории у вас должно работать задание частоты, запуск вперёд и останов. Но только при условии, что в INI корректно прописаны параметры связи и адреса регистров. Без подключенного частотника проверить не получится.

И ещё проверьте что последовательный порт указываете верно, "/dev/ttyS0" это обычно встроенный в мамку COM-порт, если у вас USB переходник, то будет что-то вроде "/dev/ttyUSB0".
Аватара пользователя
aekhv
Мастер
 
Сообщения: 338
Зарегистрирован: 17 окт 2014, 15:03
Откуда: г.Хабаровск
Репутация: 189
Медальки:
Настоящее имя: Александр

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

Сообщение 成龙79 » 14 май 2020, 21:09

Хорошо буду пробовать на станке.Спасибо! Да у меня как раз rs232 -> rs485 converter
成龙79
Новичок
 
Сообщения: 22
Зарегистрирован: 11 сен 2016, 16:49
Репутация: 0

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

Сообщение alex_sar » 23 май 2020, 16:22

Настроил для двух частотников, погонял - работает отлично, как часы. Конфигурация и отладка, после mb2hal - просто удовольствие!

Конфиги для Danfoss FC-051 и Altivar 212 приложил, может пригодятся кому.
Вложения
atv212.ini
(869 байт) Скачиваний: 84
fc051.ini
(3.29 Кб) Скачиваний: 100
alex_sar
Мастер
 
Сообщения: 209
Зарегистрирован: 28 авг 2018, 17:13
Репутация: 21
Настоящее имя: Алексей

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

Сообщение galexey » 26 май 2020, 21:16

Отличный компонент. Настроил на Delta VFD-E
Вложения
spindle_delta.ini
(4.47 Кб) Скачиваний: 94
Последний раз редактировалось galexey 27 май 2020, 08:14, всего редактировалось 1 раз.
galexey
Кандидат
 
Сообщения: 94
Зарегистрирован: 01 апр 2012, 21:35
Репутация: 7

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

Сообщение aekhv » 27 май 2020, 02:56

galexey писал(а):Настроил на Delta VFD

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

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

Сообщение galexey » 27 май 2020, 08:14

У меня VFD075E43A. Как минимум на всей серии VFD-E будет работать.

Подскажите, есть возможность работать с двумя и более частотниками с этим компонентом?
Последний раз редактировалось galexey 27 май 2020, 08:19, всего редактировалось 1 раз.
galexey
Кандидат
 
Сообщения: 94
Зарегистрирован: 01 апр 2012, 21:35
Репутация: 7

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

Сообщение aekhv » 27 май 2020, 08:18

galexey писал(а):VFD075E43A

Спс! Добавлю в шапку :)
Аватара пользователя
aekhv
Мастер
 
Сообщения: 338
Зарегистрирован: 17 окт 2014, 15:03
Откуда: г.Хабаровск
Репутация: 189
Медальки:
Настоящее имя: Александр

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

Сообщение aekhv » 27 май 2020, 08:26

galexey писал(а):Подскажите, есть возможность работать с двумя и более частотниками с этим компонентом?


Да, без проблем. Делаете два INI, в секции Common прописываете разные ComponentName. После этого в HAL будут доступны оба модуля.

Пример:

my-vfd-one.ini
Код: Выделить всёРазвернуть
[Common]
ComponentName=vfd-one
...


my-vfd-two.ini
Код: Выделить всёРазвернуть
[Common]
ComponentName=vfd-two
...


custom.hal
Код: Выделить всёРазвернуть
loadusr -Wn vfd-one vfdmod my-vfd-one.ini
loadusr -Wn vfd-two vfdmod my-vfd-two.ini
Аватара пользователя
aekhv
Мастер
 
Сообщения: 338
Зарегистрирован: 17 окт 2014, 15:03
Откуда: г.Хабаровск
Репутация: 189
Медальки:
Настоящее имя: Александр

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

Сообщение aekhv » 27 май 2020, 08:33

Тут надо добавить, что оно будет работать только на разных последовательных портах. То есть каждому компоненту - по одному порту. Если вы хотите через один порт общаться с разными slave, то такое не поддерживается.
Аватара пользователя
aekhv
Мастер
 
Сообщения: 338
Зарегистрирован: 17 окт 2014, 15:03
Откуда: г.Хабаровск
Репутация: 189
Медальки:
Настоящее имя: Александр

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

Сообщение galexey » 27 май 2020, 09:13

BentScrew писал(а):Тут надо добавить, что оно будет работать только на разных последовательных портах. То есть каждому компоненту - по одному порту. Если вы хотите через один порт общаться с разными slave, то такое не поддерживается.

Да, вопрос был по работе с несколькими slave.
В любом случае, спасибо за проделанную работу. Очень удобный компонент.
galexey
Кандидат
 
Сообщения: 94
Зарегистрирован: 01 апр 2012, 21:35
Репутация: 7

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

Сообщение alex_sar » 27 май 2020, 16:05

galexey писал(а):Да, вопрос был по работе с несколькими slave.

Если не одновременно, то можно и с несколькими. У меня два шпинделя на станке, физически висят на одной шине 485.
Работает. По м-команде выгружается один компонент, загружается другой, и переключается несколько пинов. Без перезагрузки linuxcnc.
alex_sar
Мастер
 
Сообщения: 209
Зарегистрирован: 28 авг 2018, 17:13
Репутация: 21
Настоящее имя: Алексей

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

Сообщение alex_sar » 27 май 2020, 22:30

Раз идея полезная, то код добавлю, надеюсь сэкономит кому-то время.

исполняемый файл [M150], лежит в каталоге routines. в linuxcnc.ini этот каталог настроен как исходный для М-файлов.

Код: Выделить всёРазвернуть
#!/bin/bash
## switch spindle command
## M150 P1 - ATV212 slow spindle
## M150 P2 - FC051 quick spindle 24000

spindle=$1

case $spindle in
[1]*)
    halcmd unload fc051
    sleep 2
    halcmd loadusr vfdmod hal/atv212.ini
    halcmd unlinkp fc051.control.run-forward
    halcmd unlinkp fc051.control.run-reverse
    halcmd unlinkp fc051.spindle.rpm-in
    halcmd unlinkp fc051.spindle.at-speed
    halcmd net spindle-forward spindle.0.forward atv212.control.run-forward
    halcmd net spindle-reverse spindle.0.reverse atv212.control.run-reverse
    halcmd net spindle-vel-cmd-rpm spindle.0.speed-out-abs atv212.spindle.rpm-in
    halcmd net spindle-at-speed spindle.0.at-speed  atv212.spindle.at-speed
    ;;
[2]*)
    halcmd unload atv212
    sleep 2
    halcmd loadusr vfdmod hal/fc051.ini
    halcmd unlinkp atv212.control.run-forward
    halcmd unlinkp atv212.control.run-reverse
    halcmd unlinkp atv212.spindle.rpm-in
    halcmd unlinkp atv212.spindle.at-speed
    halcmd net spindle-forward spindle.0.forward fc051.control.run-forward
    halcmd net spindle-reverse spindle.0.reverse fc051.control.run-reverse
    halcmd net spindle-vel-cmd-rpm spindle.0.speed-out-abs fc051.spindle.rpm-in
    halcmd net spindle-at-speed spindle.0.at-speed  fc051.spindle.at-speed
    ;;
*)
    >&2 echo "Invalid P parameter for M150 [$0] [$1] [$2] [$3]"
    exit 1
    ;;
esac


В линуксцнс набираем
M150 P2 - переключаемся на второй шпинель.
M150 P1 - обратно на первый.
alex_sar
Мастер
 
Сообщения: 209
Зарегистрирован: 28 авг 2018, 17:13
Репутация: 21
Настоящее имя: Алексей

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

Сообщение aekhv » 28 май 2020, 03:01

Я бы добавил -Wn <component-name> для надёжности, иначе нет полной уверенности, что компонент загружен и готов к работе.

Код: Выделить всёРазвернуть
...
halcmd loadusr -Wn atv212 vfdmod hal/atv212.ini
...
halcmd loadusr -Wn fc051 vfdmod hal/fc051.ini
...
Аватара пользователя
aekhv
Мастер
 
Сообщения: 338
Зарегистрирован: 17 окт 2014, 15:03
Откуда: г.Хабаровск
Репутация: 189
Медальки:
Настоящее имя: Александр

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

Сообщение alex_sar » 28 май 2020, 10:26

Да, так лучше. И sleep тогда можно убрать скорей всего.
alex_sar
Мастер
 
Сообщения: 209
Зарегистрирован: 28 авг 2018, 17:13
Репутация: 21
Настоящее имя: Алексей

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

Сообщение 成龙79 » 30 май 2020, 07:01

alex_sar писал(а):Настроил для двух частотников, погонял - работает отлично, как часы. Конфигурация и отладка, после mb2hal - просто удовольствие!

Конфиги для Danfoss FC-051 и Altivar 212 приложил, может пригодятся кому.


Покажите свой custom.hal файл и на каком дистрибутиве запускали?. Не не могу запустить у себя частотник FC051. Пробовал ваш config fc051.ini на stretch amd64 linuxcnc запустился (только со строками в cutom.hal о которых я говорил ранее), в графическом окне программы включается шпиндель но частотник не реагирует на команды.
На частотнике параметры выставленны:
8-01 (0- цыфровое управление и командное слово)
8-02 (1-rs 485)
8-30 (2-modbus rtu)
8-32 (2-9600)
Снес дистрибутив stretch и установил Wheezy i386 на этом дистрибутиве при запуске linuxcnc выпадает ошибка что нет такого файла.
Vfdmod - управляем частотником по MODBUS RTU 1.png
成龙79
Новичок
 
Сообщения: 22
Зарегистрирован: 11 сен 2016, 16:49
Репутация: 0

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

Сообщение aekhv » 30 май 2020, 07:09

Ошибка в файле custom.hal:
Код: Выделить всёРазвернуть
loadusr -W fc051.ini

Как должно быть написано в инструкции, ссылка в первом сообщении темы.

Для понимания: http://linuxcnc.org/docs/2.6/html/hal/b ... _loadusr_a
Аватара пользователя
aekhv
Мастер
 
Сообщения: 338
Зарегистрирован: 17 окт 2014, 15:03
Откуда: г.Хабаровск
Репутация: 189
Медальки:
Настоящее имя: Александр

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

Сообщение alex_sar » 30 май 2020, 12:47

成龙79 писал(а):
alex_sar писал(а):Настроил для двух частотников, погонял - работает отлично, как часы. Конфигурация и отладка, после mb2hal - просто удовольствие!

Конфиги для Danfoss FC-051 и Altivar 212 приложил, может пригодятся кому.


Покажите свой custom.hal файл и на каком дистрибутиве запускали?. Не не могу запустить у себя частотник FC051. Пробовал ваш config fc051.ini на stretch amd64 linuxcnc запустился (только со строками в cutom.hal о которых я говорил ранее), в графическом окне программы включается шпиндель но частотник не реагирует на команды.
На частотнике параметры выставленны:
8-01 (0- цыфровое управление и командное слово)
8-02 (1-rs 485)
8-30 (2-modbus rtu)
8-32 (2-9600)
Снес дистрибутив stretch и установил Wheezy i386 на этом дистрибутиве при запуске linuxcnc выпадает ошибка что нет такого файла.
1.png

У меня linuxcnc 2.8 так что custom.hal не поможет для 2.7

Проблема вот в том, что выше написали. Ещё очень рекомендую на период отладки включить дебаг (добавить --debug)
loadusr -W vfdmod --debug vfd-config-file.ini
и запускать линкусцнц из консоли. Запускаете терминал, заходите в каталог с конфигурацией, и запускаете команду
linuxcnc machine-configname.ini
тогда вы можете наблюдать что там происходит в сети модбус. Это значительно облегчает задачу. Ещё есть параметр в .ini файле чтобы замедлить обмен - посмотрите документацию. Помогает, чтобы не мелькали цифры-буквы на экране.

У меня конкретно была проблема с соединением RS-485. Миллион раз читал про это и всё равно сделал неправильно первый раз. Подключать надо экранированной витой парой, экран подключается к GND только с одной стороны - это важно. Если есть вывод GND в адаптере RS-485 - лучше туда. Если нет, то к GND разъема RS-485 на частотнике (на одном, если их больше одного, как у меня).
alex_sar
Мастер
 
Сообщения: 209
Зарегистрирован: 28 авг 2018, 17:13
Репутация: 21
Настоящее имя: Алексей

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

Сообщение 成龙79 » 04 июн 2020, 09:32

BentScrew писал(а):Ошибка в файле custom.hal:
Код: Выделить всёРазвернуть
loadusr -W fc051.ini

Как должно быть написано в инструкции, ссылка в первом сообщении темы.

Для понимания: http://linuxcnc.org/docs/2.6/html/hal/b ... _loadusr_a

Спасибо! Удалось запустить с такими строками в custom.hal
Vfdmod - управляем частотником по MODBUS RTU Снимок экрана_2020-06-02_23-36-39.png

но как только раскомментировать строку <net spindle-at-speed > при запуске выдает ошибку что этот пин уже прочитан
Vfdmod - управляем частотником по MODBUS RTU Снимок экрана_2020-06-02_23-38-06.png


alex_sar писал(а):
成龙79 писал(а):
alex_sar писал(а):Настроил для двух частотников, погонял - работает отлично, как часы. Конфигурация и отладка, после mb2hal - просто удовольствие!

Конфиги для Danfoss FC-051 и Altivar 212 приложил, может пригодятся кому.


Покажите свой custom.hal файл и на каком дистрибутиве запускали?. Не не могу запустить у себя частотник FC051. Пробовал ваш config fc051.ini на stretch amd64 linuxcnc запустился (только со строками в cutom.hal о которых я говорил ранее), в графическом окне программы включается шпиндель но частотник не реагирует на команды.
На частотнике параметры выставленны:
8-01 (0- цыфровое управление и командное слово)
8-02 (1-rs 485)
8-30 (2-modbus rtu)
8-32 (2-9600)
Снес дистрибутив stretch и установил Wheezy i386 на этом дистрибутиве при запуске linuxcnc выпадает ошибка что нет такого файла.
Vfdmod - управляем частотником по MODBUS RTU Снимок экрана_2020-06-02_23-38-06.png

У меня linuxcnc 2.8 так что custom.hal не поможет для 2.7

Проблема вот в том, что выше написали. Ещё очень рекомендую на период отладки включить дебаг (добавить --debug)
loadusr -W vfdmod --debug vfd-config-file.ini
и запускать линкусцнц из консоли. Запускаете терминал, заходите в каталог с конфигурацией, и запускаете команду
linuxcnc machine-configname.ini
тогда вы можете наблюдать что там происходит в сети модбус. Это значительно облегчает задачу. Ещё есть параметр в .ini файле чтобы замедлить обмен - посмотрите документацию. Помогает, чтобы не мелькали цифры-буквы на экране.

У меня конкретно была проблема с соединением RS-485. Миллион раз читал про это и всё равно сделал неправильно первый раз. Подключать надо экранированной витой парой, экран подключается к GND только с одной стороны - это важно. Если есть вывод GND в адаптере RS-485 - лучше туда. Если нет, то к GND разъема RS-485 на частотнике (на одном, если их больше одного, как у меня).

Спасибо! Кабель обязательно заменю на экранированный. Тоесть если запустить как вы говорите: можно видеть связь с частотником по модбас? Я просто запускал как мне советовали ранее: Linuxcnc пр.кн.мыши > свойства>запуск>запускать в терминале. Это не тоже самое?
成龙79
Новичок
 
Сообщения: 22
Зарегистрирован: 11 сен 2016, 16:49
Репутация: 0

Пред.След.

Вернуться в LinuxCNC

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

Зарегистрированные пользователи: Bing [Bot], dondigidon, Google [Bot], Leo_1943, Majestic-12 [Bot], RNDL, vasilevs, Vitalii, Yandex [bot], Yaroslav

Reputation System ©'