Использование "шпинделя" для управления допоборудованием

Обсуждение установки, настройки и использования LinuxCNC. Вопросы по Gкоду.
Аватара пользователя
Ворон226
Мастер
Сообщения: 1923
Зарегистрирован: 01 окт 2012, 18:14
Репутация: 181
Откуда: Солнечногорск Московской обл. - Борки Конаковского р-на - Скоморохово Фировского р-на
Контактная информация:

Re: Использование "шпинделя" для управления допоборудованием

Сообщение Ворон226 »

Хм... вот как все просто. А то "jog" ;) Завтра попробую.

А если у меня насос - четвертая ось: почему я её не прописал в ini-файле? Или это не обязательно? А если бы прописал, то у меня на панели появилась бы возможность выбрать четвертую ось и подвигать её мышкой...
(эка меня кидает!)
Хочешь быть счастливым? Будь им!
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Использование "шпинделя" для управления допоборудованием

Сообщение nkp »

Ворон226 писал(а):Хм... вот как все просто. А то "jog" ;) Завтра попробую.

А если у меня насос - четвертая ось: почему я её не прописал в ini-файле? Или это не обязательно? А если бы прописал, то у меня на панели появилась бы возможность выбрать четвертую ось и подвигать её мышкой...
(эка меня кидает!)
вот видишь - я ошибся
нет у тебя четвертой оси :)
сами же для генератора скоростные режимы писали
надо спать - а то уже бред несу :D
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Использование "шпинделя" для управления допоборудованием

Сообщение 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)
в итоге двиг должен крутить в одну или в другую сторону
сделал в своем конфиге чтоб проверить ;)
но думаю прикрутишь к своему
файл панели:
velxml.xml
(585 байт) 808 скачиваний
Аватара пользователя
Ворон226
Мастер
Сообщения: 1923
Зарегистрирован: 01 окт 2012, 18:14
Репутация: 181
Откуда: Солнечногорск Московской обл. - Борки Конаковского р-на - Скоморохово Фировского р-на
Контактная информация:

Re: Использование "шпинделя" для управления допоборудованием

Сообщение Ворон226 »

ага-ага...

Т.е. мы опять возвращаемся к двум скоростям, только берем их с другого пина axis.N.joint-vel-cmd

Интересно...
Хочешь быть счастливым? Будь им!
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Использование "шпинделя" для управления допоборудованием

Сообщение Nick »

nkp писал(а):я предлагал jog
[ ] -движения четвертой оси
или я чего то путаю ))))
Не, у него не как ось - было бы как ось, тогда скоростью управлять не вышло бы.
У него просто шаговик на stepgen, который управляется пинами через gкод.

Лучше всего подключить все это к пину шпинделя!

------------
О, я смотрю вы с этим уже разобрались. Ворон, скинь свой последний конфиг целиком.
Аватара пользователя
Ворон226
Мастер
Сообщения: 1923
Зарегистрирован: 01 окт 2012, 18:14
Репутация: 181
Откуда: Солнечногорск Московской обл. - Борки Конаковского р-на - Скоморохово Фировского р-на
Контактная информация:

Re: Использование "шпинделя" для управления допоборудованием

Сообщение Ворон226 »

Вот конфиги...

Но в них есть "ляпы":

1. При запуске ругается, что в файле custom_postgui.hal во второй строке
net b1 pyvcp.b1 mux4.0.sel1
b1 До нот экзист!
Я так понимаю, что кнопки не прописаны в velxml.xml
А кнопки нужны! Именно ими "заряжается" насос, а по окончании работ - "промывается".

2. В этом варианте насос работает ВСЕГДА, когда есть перемещение по X и Y. Т.о. необходимо в расчёт скорости включить бит разрешающий\запрещающий движение насоса. При чем это разрешение\запрещение должно устанавливаться Gкодом.
Вложения
вариант8.rar
(2.59 КБ) 430 скачиваний
Хочешь быть счастливым? Будь им!
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Использование "шпинделя" для управления допоборудованием

Сообщение nkp »

кнопки прописаны
Выделение(019).jpg (1370 просмотров) <a class='original' href='./download/file.php?id=11588&mode=view' target=_blank>Загрузить оригинал (141.73 КБ)</a>
попробуй закомментировать обе строки с кнопками в postgui
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Использование "шпинделя" для управления допоборудованием

Сообщение nkp »

попробуй - сама панелька у тебя запускается
в скачанной папке запусти start
запуск_PYVCP.tar
(210 КБ) 399 скачиваний
Ворон226 писал(а):В этом варианте насос работает ВСЕГДА, когда есть перемещение по X и Y. Т.о. необходимо в расчёт скорости включить бит разрешающий\запрещающий движение насоса. При чем это разрешение\запрещение должно устанавливаться Gкодом.
можеь использовать M64 P00
эта команда в ж-коде активирует motion.digital-out-00 в хал
M65 P00 делает его False
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Использование "шпинделя" для управления допоборудованием

Сообщение nkp »

вместо строки

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

setp stepgen.3.steplen 1
прописать:

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

net let motion.digital-out-00  stepgen.3.steplen
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Использование "шпинделя" для управления допоборудованием

Сообщение Nick »

nkp писал(а):net let motion.digital-out-00  stepgen.3.steplen
А это зачем??? Может stepgen.3.enable?
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Использование "шпинделя" для управления допоборудованием

Сообщение nkp »

копировал - не то скопировал :hehehe:
исправляюсь:
строку :

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

setp  stepgen.3.enable  1
заменить на :

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

net let motion.digital-out-00  stepgen.3.enable 
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Использование "шпинделя" для управления допоборудованием

Сообщение 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.
У тебя сразу будут кнопки старт/стоп/реверс насоса + будет бегунок, чтобы регулировать обороты.
Аватара пользователя
Ворон226
Мастер
Сообщения: 1923
Зарегистрирован: 01 окт 2012, 18:14
Репутация: 181
Откуда: Солнечногорск Московской обл. - Борки Конаковского р-на - Скоморохово Фировского р-на
Контактная информация:

Re: Использование "шпинделя" для управления допоборудованием

Сообщение Ворон226 »

Мой косяк - не прописал новый velxml.xml - потому и ругался EMC2

М64 и М65 вчера уже использовал. Просто нужно будет восстановить.

stepgen.<chan>.steplen – Длинна импульса шага (тип шага 1 и 0) или минимальное время в данном положении для (типов шага 2-14), в наносекундах.
А как цифровой бит к этому пристёгивается? Как работает, вернее?
Кхе... Вот теперь понятно - пока писал вопрос - уже всё исправилось ;)

Всё, да не всё... Получается, что я не смогу насосом подвигать, пока не включу его М64 ??? А как же обслуживание? Тут похитрее нужно... Кнопки-то не должны блокироваться, а мы enable выключаем... Или я опять не понимаю?

Блин! не успеваю за тобой... Читаю... (похоже сегодня ещё успею на станок "слетать" ;)
Хочешь быть счастливым? Будь им!
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Использование "шпинделя" для управления допоборудованием

Сообщение nkp »

Ник,гениально просто :D
сразу два все зайцы убиты ))))))))
Аватара пользователя
Ворон226
Мастер
Сообщения: 1923
Зарегистрирован: 01 окт 2012, 18:14
Репутация: 181
Откуда: Солнечногорск Московской обл. - Борки Конаковского р-на - Скоморохово Фировского р-на
Контактная информация:

Re: Использование "шпинделя" для управления допоборудованием

Сообщение Ворон226 »

Так выходит в этом варианте и vel.py не нужен? И .xml файл? Только ини и хал???

А управлять всем этим кодами М3, М4 и М5 ;) Круто!
Хочешь быть счастливым? Будь им!
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Использование "шпинделя" для управления допоборудованием

Сообщение Nick »

По идее да. Но я такого еще не пробовал :)
Ворон226 писал(а):А управлять всем этим кодами М3, М4 и М5 Круто!
Да, плюс еще S----
Аватара пользователя
Ворон226
Мастер
Сообщения: 1923
Зарегистрирован: 01 окт 2012, 18:14
Репутация: 181
Откуда: Солнечногорск Московской обл. - Борки Конаковского р-на - Скоморохово Фировского р-на
Контактная информация:

Re: Использование "шпинделя" для управления допоборудованием

Сообщение Ворон226 »

Ругается Линукс. Говорит - инвалид параметр mult.2

Загрузил вчерашнее и попробовал свежеиспеченный контурный рисунок ;) БЕГАЕТ!!!
(видео обработаю - выложу)
Хочешь быть счастливым? Будь им!
Аватара пользователя
Ворон226
Мастер
Сообщения: 1923
Зарегистрирован: 01 окт 2012, 18:14
Репутация: 181
Откуда: Солнечногорск Московской обл. - Борки Конаковского р-на - Скоморохово Фировского р-на
Контактная информация:

Re: Использование "шпинделя" для управления допоборудованием

Сообщение Ворон226 »

Ну никак не найду ошибки...
Вложения
333.hal
(4.65 КБ) 957 скачиваний
Хочешь быть счастливым? Будь им!
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Использование "шпинделя" для управления допоборудованием

Сообщение 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 
у меня запускается)))
Аватара пользователя
Ворон226
Мастер
Сообщения: 1923
Зарегистрирован: 01 окт 2012, 18:14
Репутация: 181
Откуда: Солнечногорск Московской обл. - Борки Конаковского р-на - Скоморохово Фировского р-на
Контактная информация:

Re: Использование "шпинделя" для управления допоборудованием

Сообщение Ворон226 »

Я, вроде, по мануалу проверяю... построчно - вроде верно.

А ты версию Ника проверял? Работает?

А вот видео:
Изображение
Хочешь быть счастливым? Будь им!
Ответить

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