Страница 6 из 8
Re: Использование "шпинделя" для управления допоборудованием
Добавлено: 06 фев 2013, 00:16
Ворон226
Хм... вот как все просто. А то "jog"

Завтра попробую.
А если у меня насос - четвертая ось: почему я её не прописал в ini-файле? Или это не обязательно? А если бы прописал, то у меня на панели появилась бы возможность выбрать четвертую ось и подвигать её мышкой...
(эка меня кидает!)
Re: Использование "шпинделя" для управления допоборудованием
Добавлено: 06 фев 2013, 00:23
nkp
Ворон226 писал(а):Хм... вот как все просто. А то "jog"

Завтра попробую.
А если у меня насос - четвертая ось: почему я её не прописал в ini-файле? Или это не обязательно? А если бы прописал, то у меня на панели появилась бы возможность выбрать четвертую ось и подвигать её мышкой...
(эка меня кидает!)
вот видишь - я ошибся
нет у тебя четвертой оси
сами же для генератора скоростные режимы писали
надо спать - а то уже бред несу

Re: Использование "шпинделя" для управления допоборудованием
Добавлено: 06 фев 2013, 01:22
nkp
вот я набросал как вариант:
это хал
Код: Выделить всё
loadusr -Wn vel python vel.py
loadrt abs count=2
addf abs.0 servo-thread
addf abs.1 servo-thread
loadrt sum2
loadrt mux4
addf sum2.0 servo-thread
addf mux4.0 servo-thread
net absin0 abs.0.in axis.0.joint-vel-cmd
net absout0 abs.0.out vel.vaxis1
net absin1 abs.1.in axis.1.joint-vel-cmd
net absout1 abs.1.out vel.vaxis2
net velout vel.velout sum2.0.in0
setp vel.setvel 1.0
setp mux4.0.in1 100
setp mux4.0.in2 -100
net muxout mux4.0.out sum2.0.in1
net sumout sum2.0.out stepgen.3.velocity-cmd
это постgui:
Код: Выделить всё
net pyvcp vel.setpyvcp pyvcp.velpump-f
net b1 pyvcp.b1 mux4.0.sel1
net b2 pyvcp.b2 mux4.0.sel0
смысл такой - в панели две кнопки - если нажимаешь одну - она на выход mux4 подает 100 -если нажимаешь другую - то -100
выход mux4 подается на один из входов sum - на другой наша скорость
в итоге когда скорость равна нулю (в ручном режиме или при паузе) - то получаем сумму : 0+100 или 0+(-100)
в итоге двиг должен крутить в одну или в другую сторону
сделал в своем конфиге чтоб проверить
но думаю прикрутишь к своему
файл панели:
Re: Использование "шпинделя" для управления допоборудованием
Добавлено: 06 фев 2013, 06:54
Ворон226
ага-ага...
Т.е. мы опять возвращаемся к двум скоростям, только берем их с другого пина axis.N.joint-vel-cmd
Интересно...
Re: Использование "шпинделя" для управления допоборудованием
Добавлено: 06 фев 2013, 10:21
Nick
nkp писал(а):я предлагал jog
[ ] -движения четвертой оси
или я чего то путаю ))))
Не, у него не как ось - было бы как ось, тогда скоростью управлять не вышло бы.
У него просто шаговик на stepgen, который управляется пинами через gкод.
Лучше всего подключить все это к пину шпинделя!
------------
О, я смотрю вы с этим уже разобрались. Ворон, скинь свой последний конфиг целиком.
Re: Использование "шпинделя" для управления допоборудованием
Добавлено: 06 фев 2013, 15:42
Ворон226
Вот конфиги...
Но в них есть "ляпы":
1. При запуске ругается, что в файле custom_postgui.hal во второй строке
net b1 pyvcp.b1 mux4.0.sel1
b1 До нот экзист!
Я так понимаю, что кнопки не прописаны в velxml.xml
А кнопки нужны! Именно ими "заряжается" насос, а по окончании работ - "промывается".
2. В этом варианте насос работает ВСЕГДА, когда есть перемещение по X и Y. Т.о. необходимо в расчёт скорости включить бит разрешающий\запрещающий движение насоса. При чем это разрешение\запрещение должно устанавливаться Gкодом.
Re: Использование "шпинделя" для управления допоборудованием
Добавлено: 06 фев 2013, 15:55
nkp
кнопки прописаны
попробуй закомментировать обе строки с кнопками в postgui
Re: Использование "шпинделя" для управления допоборудованием
Добавлено: 06 фев 2013, 15:59
nkp
попробуй - сама панелька у тебя запускается
в скачанной папке запусти start
Ворон226 писал(а):В этом варианте насос работает ВСЕГДА, когда есть перемещение по X и Y. Т.о. необходимо в расчёт скорости включить бит разрешающий\запрещающий движение насоса. При чем это разрешение\запрещение должно устанавливаться Gкодом.
можеь использовать M64 P00
эта команда в ж-коде активирует motion.digital-out-00 в хал
M65 P00 делает его False
Re: Использование "шпинделя" для управления допоборудованием
Добавлено: 06 фев 2013, 16:11
nkp
вместо строки
прописать:
Код: Выделить всё
net let motion.digital-out-00 stepgen.3.steplen
Re: Использование "шпинделя" для управления допоборудованием
Добавлено: 06 фев 2013, 16:32
Nick
nkp писал(а):net let motion.digital-out-00 stepgen.3.steplen
А это зачем??? Может stepgen.3.enable?
Re: Использование "шпинделя" для управления допоборудованием
Добавлено: 06 фев 2013, 16:34
nkp
копировал - не то скопировал

исправляюсь:
строку :
заменить на :
Код: Выделить всё
net let motion.digital-out-00 stepgen.3.enable
Re: Использование "шпинделя" для управления допоборудованием
Добавлено: 06 фев 2013, 16:40
Nick
Ворон226, попробуй написать вот это в hal:
Код: Выделить всё
loadrt mult2 names = mult2.spindle
addf mult2.spindle servo-thread
net mult2-in0 => mult2.spindle.in0
net mult2-in0 <= motion.spindle-speed-out
net mult2-in1 => mult2.spindle.in1
net mult2-in1 <= motion.current-vel
net mult2-out <= mult2.spindle.out
net mult2-out => stepgen.3.velocity-cmd
вместо того, что под
#############################################################################################
Так мы подключаем скорость мотора к (пину скорости шпинделя) * (текущую скорость)
Если надо коэффициент можно подстроить параметром scale у stepgen.
У тебя сразу будут кнопки старт/стоп/реверс насоса + будет бегунок, чтобы регулировать обороты.
Re: Использование "шпинделя" для управления допоборудованием
Добавлено: 06 фев 2013, 16:42
Ворон226
Мой косяк - не прописал новый velxml.xml - потому и ругался EMC2
М64 и М65 вчера уже использовал. Просто нужно будет восстановить.
stepgen.<chan>.steplen – Длинна импульса шага (тип шага 1 и 0) или минимальное время в данном положении для (типов шага 2-14), в наносекундах.
А как цифровой бит к этому пристёгивается? Как работает, вернее?
Кхе... Вот теперь понятно - пока писал вопрос - уже всё исправилось
Всё, да не всё... Получается, что я не смогу насосом подвигать, пока не включу его М64 ??? А как же обслуживание? Тут похитрее нужно... Кнопки-то не должны блокироваться, а мы enable выключаем... Или я опять не понимаю?
Блин! не успеваю за тобой... Читаю... (похоже сегодня ещё успею на станок "слетать"

Re: Использование "шпинделя" для управления допоборудованием
Добавлено: 06 фев 2013, 16:45
nkp
Ник,гениально просто
сразу
два все зайцы убиты ))))))))
Re: Использование "шпинделя" для управления допоборудованием
Добавлено: 06 фев 2013, 16:55
Ворон226
Так выходит в этом варианте и vel.py не нужен? И .xml файл? Только ини и хал???
А управлять всем этим кодами М3, М4 и М5

Круто!
Re: Использование "шпинделя" для управления допоборудованием
Добавлено: 06 фев 2013, 17:15
Nick
По идее да. Но я такого еще не пробовал
Ворон226 писал(а):А управлять всем этим кодами М3, М4 и М5 Круто!
Да, плюс еще S----
Re: Использование "шпинделя" для управления допоборудованием
Добавлено: 06 фев 2013, 19:22
Ворон226
Ругается Линукс. Говорит - инвалид параметр mult.2
Загрузил вчерашнее и попробовал свежеиспеченный контурный рисунок

БЕГАЕТ!!!
(видео обработаю - выложу)
Re: Использование "шпинделя" для управления допоборудованием
Добавлено: 06 фев 2013, 21:00
Ворон226
Ну никак не найду ошибки...
Re: Использование "шпинделя" для управления допоборудованием
Добавлено: 06 фев 2013, 21:09
nkp
я тоже самое проще (ну мне так кажеться

) пишу :
Код: Выделить всё
loadrt mult2
addf mult2.0 servo-thread
net mult2-in0 motion.spindle-speed-out mult2.0.in0
net mult2-in1 motion.current-vel mult2.0.in1
net mult2-out mult2.0.out stepgen.3.velocity-cmd
у меня запускается)))
Re: Использование "шпинделя" для управления допоборудованием
Добавлено: 06 фев 2013, 21:29
Ворон226
Я, вроде, по мануалу проверяю... построчно - вроде верно.
А ты версию Ника проверял? Работает?
А вот видео:
