Страница 8 из 17

Re: Частотник и Modbus. Универсальная заготовка.

Добавлено: 04 окт 2017, 21:38
MGG
Ну в симе скорость точно идет )) тут теперь другая проблема, как победить, чтобы в рабочем конфиге скорость регулировалась.
Этот момент с коэффициентом поправил :)

Ну и как обычно через одно место все. Запускается 1 раз из 10

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

dirname: лишний операнд «стол/my-conf_1/my.ini»
Попробуйте «dirname --help» для получения более подробного описания.
.
/usr/bin/gladevcp:185: GtkWarning: GtkSpinButton: setting an adjustment with non-zero page size is deprecated
  builder.add_from_file(xmlname)
/usr/bin/gladevcp:185: GtkWarning: GtkSpinButton: setting an adjustment with non-zero page size is deprecated
  builder.add_from_file(xmlname)
HAL: ERROR: duplicate component name 'gladevcp'
*** GLADE VCP ERROR:    Asking for a HAL component using a name that already exists.
<commandline>:0: gladevcp exited without becoming ready
/usr/bin/gladevcp:295: GtkWarning: gtk_widget_size_allocate(): attempt to allocate widget with width -5 and height 15
  gtk.main()
/usr/bin/gladevcp:295: GtkWarning: gtk_widget_size_allocate(): attempt to allocate widget with width -5 and height 15
  gtk.main()
/usr/bin/gladevcp:295: GtkWarning: GdkWindow 0x3400003 unexpectedly destroyed
  gtk.main()
/usr/bin/gladevcp:295: GtkWarning: GdkWindow 0x3800003 unexpectedly destroyed

Re: Частотник и Modbus. Универсальная заготовка.

Добавлено: 05 окт 2017, 07:01
aekhv

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

HAL: ERROR: duplicate component name 'gladevcp'
*** GLADE VCP ERROR:    Asking for a HAL component using a name that already exists.
Ругается на дубликат компонента 'gladevcp'. Наверное кто-то прописал в ini вызов gladevcp дважды, без назначения уникальных имён. Но если в одном случае из десяти запускается, то, конечно, странно :thinking: Может параметры вызова стоит подшаманить.

Re: Частотник и Modbus. Универсальная заготовка.

Добавлено: 05 окт 2017, 19:24
MGG
BentScrew писал(а):Ругается на дубликат компонента 'gladevcp'.
Скорее всего так и есть

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

# добавим GladeVCP панель в виде закладки рядом с  Preview/DRO:


EMBED_TAB_NAME=Auto Tool Measurement
EMBED_TAB_COMMAND=halcmd loadusr -Wn gladevcp gladevcp -c gladevcp  -u python/auto_tool_measurement.py -x {XID} auto_tool_measurement.glade


GLADEVCP = -u spindle-vfd.py spindle-vfd-panel.glade 

EMBED_TAB_NAME=Probe Screen 
EMBED_TAB_COMMAND=halcmd loadusr -Wn gladevcp gladevcp -u python/probe_screen.py -x {XID} probe_icons/probe_screen.glade 
Но тут еще такая непонятная для меня вещь, в симе нормально все работает, в рабочем конфиге даже если выключить другие панельки, только включается, и набирает минимальную скорость. + какой то странный звук с вибрацией появился, от шпинделя, включю сим те же обороты, все нормально, в рабочей этот полтергейст.

С шумом вроде разобрался, отсоеденил землю, от земли бп, стало лучше, но скорость по прежнему не регулируется, и постоянно 12 ошибка. Дело скорее всего в заземлении, но в данном случае можно ли ГНД пустить на планету или нет? Или как это сделать? Сама конструкция коротким кабелем соеденина к частотнику, от него уже идет юсб к матери

Re: Частотник и Modbus. Универсальная заготовка.

Добавлено: 06 окт 2017, 08:38
verser
BentScrew писал(а):Ругается на дубликат компонента 'gladevcp'.
Как я думаю, эта строка

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

GLADEVCP = -u spindle-vfd.py spindle-vfd-panel.glade
воспринимается системой в таком виде

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

halcmd loadusr -Wn gladevcp gladevcp -c gladevcp -x {XID} -u spindle-vfd.py spindle-vfd-panel.glade
следовательно имеет смысл попробовать вписать ее впереди "паровоза" и подправить следующую за ней EMBED_TAB_COMMAND (убрать -c gladevcp)

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

GLADEVCP = -u spindle-vfd.py spindle-vfd-panel.glade 

EMBED_TAB_NAME=Auto Tool Measurement
EMBED_TAB_COMMAND=halcmd loadusr -Wn gladevcp gladevcp -u python/auto_tool_measurement.py -x {XID} auto_tool_measurement.glade

EMBED_TAB_NAME=Probe Screen 
EMBED_TAB_COMMAND=halcmd loadusr -Wn gladevcp gladevcp -u python/probe_screen.py -x {XID} probe_icons/probe_screen.glade 

Re: Частотник и Modbus. Универсальная заготовка.

Добавлено: 06 окт 2017, 10:54
aekhv
Да, -с gladevcp в данном случае нужно выкинуть, ровно как и halcmd loadusr -Wn gladevcp. Ключ -Wn gladevcp указывает ожидать загрузку компонента с явно заданным именем (gladevcp). Но этот компонент и так уже загружен ранее, следовательно это условие всегда истинно, и мы контролируем непонятно что.

Рабочий вариант такой, только что проверил на своих тестовых панельках:

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

GLADEVCP = -u spindle-vfd.py spindle-vfd-panel.glade 

EMBED_TAB_NAME=Auto Tool Measurement
EMBED_TAB_COMMAND=gladevcp -u python/auto_tool_measurement.py -x {XID} auto_tool_measurement.glade

EMBED_TAB_NAME=Probe Screen 
EMBED_TAB_COMMAND=gladevcp -u python/probe_screen.py -x {XID} probe_icons/probe_screen.glade 
В HAL должны появиться три компонента: 'gladevcp', 'auto_tool_measurement' и 'probe_screen'. Правосторонняя панель всегда подгружается с именем 'gladevcp'. Может это можно как-то изменить, но я не в курсе. Вкладки же, если НЕ указан ключ -c, подгружаются в HAL с именами файлов визуальных компонентов, только без расширения (*.glade, *.ui и пр.).
Вот странные же люди бывают. Напишешь человеку подробную мини инструкцию, он вроде прочитает, ответит даже:
MGG писал(а):Буду пробовать, спасибо!
А потом жалуется, что опять не работает, и показывает кусок конфига, где вообще ничего не исправлено. :shock: Хотя, казалось бы, ничего сложного: прочитай, осмысли и сделай по писанному... :wik:

Re: Частотник и Modbus. Универсальная заготовка.

Добавлено: 06 окт 2017, 11:21
aekhv
Можно ещё вот так, с применением ключа -c:

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

GLADEVCP = -u spindle-vfd.py spindle-vfd-panel.glade

EMBED_TAB_NAME=Auto Tool Measurement
EMBED_TAB_COMMAND=gladevcp -c atm_panel -u python/auto_tool_measurement.py -x {XID} auto_tool_measurement.glade

EMBED_TAB_NAME=Probe Screen
EMBED_TAB_COMMAND=gladevcp -c ps_panel -u python/probe_screen.py -x {XID} probe_icons/probe_screen.glade
Вкладки будут загружены в HAL с явно указанными именами - 'atm_panel' и 'ps_panel'. Естественно нужно помнить о том, что если имя компонента изменилось, то и во всех связанных с этим компонентом HAL-файлах нужно внести корректировки. Например, была кнопка probe_screen.button1, исправляем на ps_panel.button1.

Re: Частотник и Modbus. Универсальная заготовка.

Добавлено: 06 окт 2017, 12:35
MGG
BentScrew писал(а):Вот странные же люди бывают
В промежутках по времени вылетело из головы. И тут условие поменялось, панелька и вкладка :D . Тут больше смутило, что оно и запускалось, но при этом не постоянно, т.е. могло запускаться, могло нет.

Но опять это все откладывается, ибо в рабочем конфиге свисток отваливается, из-за помех наверное, земля на планету не спасает, на землю БП, тоже не спасает. Экранированный провод остался как вариант, при том, что свисток на 2ух проводах от витой пары на 10см от частотника, далее юсб кабель.

Re: Частотник и Modbus. Универсальная заготовка.

Добавлено: 06 окт 2017, 12:50
Сергей Саныч
MGG писал(а):Экранированный провод остался как вариант, при том, что свисток на 2ух проводах от витой пары на 10см от частотника, далее юсб кабель.
Надо наоборот - делать как можно короче кабель USB. Лучше вообще без кабеля обойтись.
А помехоустойчивость RS-485 достаточно высокая.

Re: Частотник и Modbus. Универсальная заготовка.

Добавлено: 08 окт 2017, 22:45
alexx.bit
Привет! Что делать, если не находит RS485?
Программка SpindleTalker2 из под Windows работает.

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

Starting LinuxCNC...
.
Found file(REL): ./core_sim.hal
Found file(REL): ./sim_spindle_encoder.hal
Found file(REL): ./axis_manualtoolchange.hal
Found file(REL): ./simulated_home.hal
Found file(REL): ./custom.hal
spindle-vfd: device='/dev/ttyUSB0', baud=19200, bits=8, parity='none', stopbits=1, slave=1, verbose=0, debug=0
open: Permission denied
ERROR Opening device /dev/ttyUSB0 (no : 13)
spindle-vfd: ERROR - couldn't open serial device
./custom.hal:9: waitpid failed spindle-vfd spindle-vfd
./custom.hal:9: spindle-vfd exited without becoming ready
Shutting down and cleaning up LinuxCNC...
LinuxCNC terminated with an error.  You can find more information in the log:
    /home/cnc/linuxcnc_debug.txt
and
    /home/cnc/linuxcnc_print.txt
as well as in the output of the shell command 'dmesg' and in the terminal
cnc@linuxcnc:~/Загрузки/spindle-vfd/sim.axis.example$ 

Re: Частотник и Modbus. Универсальная заготовка.

Добавлено: 08 окт 2017, 23:34
N1X
Нет прав у тебя на доступ к порту. Как вариант выполнить в терминале:

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

sudo gpasswd --add ${USER} dialout

Re: Частотник и Modbus. Универсальная заготовка.

Добавлено: 10 окт 2017, 13:42
alexx.bit
Кто-нибудь находил правильные регистры управления для huanyang hy02d223b?
В инструкции даже нет описание modbus.

Re: Частотник и Modbus. Универсальная заготовка.

Добавлено: 10 окт 2017, 14:27
aekhv
Что за инструкция? Дайте ссылку, посмотрим что там есть. Если под Win работает, то регистры всегда можно вычислить прослушивая COM-порт каким-нибудь сниффером, типа Advanced Serial Port Monitor. Но это совсем крайний случай. :)

Re: Частотник и Modbus. Универсальная заготовка.

Добавлено: 10 окт 2017, 14:51
alexx.bit
Инструкция huanyang hy02d223b с модбасом, но моя бумажная без этого описания.
BentScrew писал(а):регистры всегда можно вычислить прослушивая COM-порт каким-нибудь сниффером
Я уже начал это делать. Потом нашел описаниерегистров управления, но мне не до конца ясно как их прикручивать в программу.
И вообще, могу ли я как-то посмотреть есть ли связь с самим свистком RS485?

Re: Частотник и Modbus. Универсальная заготовка.

Добавлено: 11 окт 2017, 23:24
alexx.bit
Пордключил свой ПЧ к linuxcnc. Оказывается под Huanyang'и есть компонент hy_vfd в стандартном наборе linuxcnc.

Содержимое custom.hal

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

loadusr -Wn spindle-vfd hy_vfd -n spindle-vfd -d /dev/ttyUSB0 -p none -r 9600
net hy-fwd <= motion.spindle-forward => spindle-vfd.spindle-fwd
net hy-rev <= motion.spindle-reverse => spindle-vfd.spindle-rev
net hy-on <= motion.spindle-on => spindle-vfd.spindle-on
net spindle-cmd => spindle-vfd.speed-command
Содержимое custom_postgui.hal

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

net RPM <= spindle-vfd.Rott => pyvcp.spindle-speed
net health-modbus <= spindle-vfd.modbus-ok => pyvcp.modbus-ok
setp spindle-vfd.enable 1
Содержимое custompanel.xml

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

<?xml version='1.0' encoding='UTF-8'?>
<pyvcp>
         <vbox>
         <relief>RIDGE</relief>         
         <bd>6</bd>
                <label>
                        <text>"Spindle Speed:"</text>
                        <font>("Helvetica",20)</font>
                </label>
                <bar>
                        <halpin>"spindle-speed"</halpin>
                        <max_>3000</max_>
                </bar>
                <label>
                        <text>"Modbus-OK:"</text>
                        <font>("Helvetica",20)</font>
                </label>
                <hbox>
                    <label>
                            <text>"             "</text>
                            <font>("Helvetica",20)</font>
                    </label>
                    <led>
                        <halpin>"modbus-ok"</halpin> 
                        <size>30</size> 
                        <on_color>"green"</on_color>
                        <off_color>"red"</off_color>
                    </led>
                </hbox>
        </vbox>
</pyvcp>
Три недели вплотную бьюсь с linuxcnc и только сейчас что-то начинаю понимать)

Re: Частотник и Modbus. Универсальная заготовка.

Добавлено: 12 окт 2017, 13:05
aekhv
alexx.bit писал(а):Пордключил свой ПЧ к linuxcnc. Оказывается под Huanyang'и есть компонент hy_vfd в стандартном наборе linuxcnc.
Ну вот, оказывается всё уже придумано до нас. :hehehe: Бегло посмотрел мануал, похоже у этих моделей частотников modbus какой-то особенный, не стандартный. Отличаются коды функций чтения/записи и структура пакета. Поженить исходники из этой темы с твоим Huanyang навряд ли получится.

Re: Частотник и Modbus. Универсальная заготовка.

Добавлено: 12 окт 2017, 14:07
Serg
Помнится и контрольная сумма иначе считается...

Re: Частотник и Modbus. Универсальная заготовка.

Добавлено: 19 окт 2017, 10:07
Piligrym
Приветствую, что-то тоже не могу на боевом конфиге стартануть. В симуляции все четко, а в боевом нифига не крутится... Причем: напряжение dc считывает и показывает, халметр и морда частотника показывают что команда крутить вперед и назад появляетя,

Re: Частотник и Modbus. Универсальная заготовка.

Добавлено: 19 окт 2017, 11:40
aekhv
Если в симе работает, то может быть причина вроде этой. Это когда конфиги создаются разными мастерами (StepConf, PncConf) и названия некоторых сигналов могут отличаться. Проверьте внимательно связи в hal, что с чем соединено.

Re: Частотник и Modbus. Универсальная заготовка.

Добавлено: 19 окт 2017, 15:41
Piligrym
Спасибо!
пробовал по разному, вот такой код работает.

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

# Include your customized HAL commands here
# This file will not be overwritten when you run stepconf again

# Запуск компонента с явно заданными параметрами. Описание возможных параметров
# доступно в исходном коде (spindle-vfd.c), или из командной строки (spindle-vfd -h)
# loadusr -W spindle-vfd -d /dev/ttyUSB0 -r 9600 -b 8 -p none -s 1 -t 1 -v

# Простой запуск, настройки связи по умолчанию
loadusr -W spindle-vfd

# This file will not be overwritten when you run stepconf again

#

# connect the spindle direction pins to the VFD
net hc1c-fwd <= motion.spindle-forward => spindle-vfd.spindle-fwd
net hc1c-rev <= motion.spindle-reverse => spindle-vfd.spindle-rev

# connect the spindle on pin to the VFD
#net spindle-on => spindle-vfd.spindle-on
net spindle-on motion.spindle-on spindle-vfd.spindle-on
# connect the spindle RPM to the VFD
net spindle-cmd-rpm => spindle-vfd.command-speed

#net spindle-at-speed <= spindle-vfd.spindle-at-speed
net spindle-at-speed  spindle-vfd.at-speed
Сделал конфигурацию для dzb300, хз какие файлы в архив вложить для потомков.
параллельно родился еще один вопрос:
как исправить невменяемые значения мощности и момента?

Re: Частотник и Modbus. Универсальная заготовка.

Добавлено: 19 окт 2017, 15:51
aekhv
Piligrym писал(а):как исправить невменяемые значения мощности и момента?
Надо поставить верные множители для этих параметров. Смотрите в spindle-vfd.c, начиная со строки 220, там где функции read_holding_registers().