Режим "обучения" в Linuxcnc

Обсуждение установки, настройки и использования LinuxCNC. Вопросы по Gкоду.
vmarkiv
Мастер
Сообщения: 516
Зарегистрирован: 21 янв 2012, 00:23
Репутация: 32
Откуда: Ивано-Франковск
Контактная информация:

Режим "обучения" в Linuxcnc

Сообщение vmarkiv »

Как сделать режим "обучения" формирования управляющей программы в Linuxcnc ? . Я хочу подключить пропорциональный джойстик , назначить рукоятке перемещение +Х -Х ,+У - У , кнопкам - включение шпинделя , охлаждение , эмульсию , вручную перемещать джойстиком по нужному контуру , а Linuxcnc будет формировать управляющую программу в G -кодах с значениями координат , ПОДАЧ , включения исполнительных механизмов . В НЦ-31 режим обучения был ...
Impartial
Мастер
Сообщения: 953
Зарегистрирован: 23 фев 2011, 01:50
Репутация: 36
Контактная информация:

Re: Режим "обучения" в Linuxcnc

Сообщение Impartial »

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

Re: Режим "обучения" в Linuxcnc

Сообщение Nick »

Да, только так, если будешь с джойстика управлять, то векторизовать траекторию будет шибко тяжело.
А координаты в сервоцикле писать в файл - это просто. Потом их в одну строчку можно будет в Gкод переписать. Правда будет около 1000 строк в секунду :freak:
Хотя, можно еще чуть чуть помозговав упростить эти 1000 строк в сек.
А можно запись делать и по реже.

Какой размер "программы" будет?
Impartial
Мастер
Сообщения: 953
Зарегистрирован: 23 фев 2011, 01:50
Репутация: 36
Контактная информация:

Re: Режим "обучения" в Linuxcnc

Сообщение Impartial »

Nick писал(а):А координаты в сервоцикле писать в файл - это просто. Потом их в одну строчку можно будет в Gкод переписать. Правда будет около 1000 строк в секунду
Потом из этих координат нарисавать что то типа чертежа, и потом уже этот чертеж в Г код преобразовать. Так должно получиться.
vmarkiv
Мастер
Сообщения: 516
Зарегистрирован: 21 янв 2012, 00:23
Репутация: 32
Откуда: Ивано-Франковск
Контактная информация:

Re: Режим "обучения" в Linuxcnc

Сообщение vmarkiv »

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

Re: Режим "обучения" в Linuxcnc

Сообщение Nick »

А в чем разница, что мы пишем координаты, что подачу?
А тебе скорости в определенных местах разные нужны, ну это тоже можно сделать, потом в скрипте просто дописать расчет подачи исходя из текущего перемещения. Если с частотой 10Гц писать - точность будет маленькая, или там пофигу?
на 10 Гц можно и user-space компонентик на питоне написать...
Аватара пользователя
solo
Мастер
Сообщения: 1374
Зарегистрирован: 20 окт 2011, 18:39
Репутация: 272
Настоящее имя: Юрий Соловьев
Откуда: Украина Харьков
Контактная информация:

Re: Режим "обучения" в Linuxcnc

Сообщение solo »

Эсли не ошибаюсь то в станка ЧПУ обучение идет по контрольным точкам
Тоесть подводиш джойстиком в нужную точку нажимаеш на "кнопочкеу" даная координата XYZ заносится в програму дальше амалогично следуючая точка , так и составляется прога из линейных участков.
Я еще так програмировал робота "Универсал 5" только там програме записывалась штырьками на програматор а контрольные точки выставлялись реоставами на серводвигателяш.
vmarkiv
Мастер
Сообщения: 516
Зарегистрирован: 21 янв 2012, 00:23
Репутация: 32
Откуда: Ивано-Франковск
Контактная информация:

Re: Режим "обучения" в Linuxcnc

Сообщение vmarkiv »

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

Re: Режим "обучения" в Linuxcnc

Сообщение Nick »

solo писал(а):Эсли не ошибаюсь то в станка ЧПУ обучение идет по контрольным точкам
Тоесть подводиш джойстиком в нужную точку нажимаеш на "кнопочкеу" даная координата XYZ заносится в програму дальше амалогично следуючая точка , так и составляется прога из линейных участков.
Я еще так програмировал робота "Универсал 5" только там програме записывалась штырьками на програматор а контрольные точки выставлялись реоставами на серводвигателяш.
Это вообще не сложно сделать.
vmarkiv писал(а):А может попробовать через Keygrabber for Mach3 ?
А что он делает?
vmarkiv
Мастер
Сообщения: 516
Зарегистрирован: 21 янв 2012, 00:23
Репутация: 32
Откуда: Ивано-Франковск
Контактная информация:

Re: Режим "обучения" в Linuxcnc

Сообщение vmarkiv »

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

Re: Режим "обучения" в Linuxcnc

Сообщение Nick »

Проще через linuxcnc будет...

Надо просто написать компонентик. с тремя пинами x,y, и enable.
потом в главном цикле смотрим на координаты и пишем инфу в файл.

В общем, проще написать, чем объяснять:

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

#!/usr/bin/python
import hal, time, math
h = hal.component("recorder")
h.newpin("x", hal.HAL_FLOAT, hal.HAL_IN)
h.newpin("y", hal.HAL_FLOAT, hal.HAL_IN)
h.newpin("enable", hal.HAL_BIT, hal.HAL_IN)

h.ready()
f = open("reader.ngc","w")
try:
	while 1:
		if h['enable'] :
			if lx!=None and ly!=None :
				vel = math.sqrt((h['x']-lx)**2 + (h['y']-ly)**2)/time*60
				f.write("G1 X%f Y%f F%f\n"%(h['x'],h['y'],vel))
			else :
				f.write("G0 X%f Y%f F%f\n"%(h['x'],h['y'],vel))
			lx = h['x'] 	
			ly = h['y']
			
			time.sleep(0.1)
	
except KeyboardInterrupt:
	f.close()
	raise SystemExit

это все сохраняешь в reader.py, и в hal добавляешь
loadrt python reader.py -Wn reader

и потом коннектишь его пины enable, x и y. И вроде все...
vmarkiv
Мастер
Сообщения: 516
Зарегистрирован: 21 янв 2012, 00:23
Репутация: 32
Откуда: Ивано-Франковск
Контактная информация:

Re: Режим "обучения" в Linuxcnc

Сообщение vmarkiv »

Спасибо , опробую ...
Ответить

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