EMC2 и неровная поверхность гравировки [РЕШЕНО]

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

Re: EMC2 и неровная поверхность гравировки

Сообщение Nick »

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

Re: EMC2 и неровная поверхность гравировки

Сообщение Nick »

Тут вот какая жопа оказывается, этот модуль он оказывается не в основном архиве git от emc2, а стороннем. И пока этот архив еще не влился в основной. Поэтому в пакетах от buildbot его нету :(...

Так будем решать тогда другим способом, заодно и опробуем как работать с пинами hal во внешних скриптах.
Сейчас скриптик накатаю...
Романов Семен
Почётный участник
Почётный участник
Сообщения: 646
Зарегистрирован: 23 янв 2012, 23:25
Репутация: -80
Откуда: Самара

Re: EMC2 и неровная поверхность гравировки

Сообщение Романов Семен »

Жду, Ник.
И ОООООООООООООООООЧЕНЬ надеюсь на твою помощь!
Романов Семен
Почётный участник
Почётный участник
Сообщения: 646
Зарегистрирован: 23 янв 2012, 23:25
Репутация: -80
Откуда: Самара

Re: EMC2 и неровная поверхность гравировки

Сообщение Романов Семен »

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

Re: EMC2 и неровная поверхность гравировки

Сообщение Nick »

В общем, что-то вырисовывается, но оно написано через .... :freak:

Значит так, качаешь этот файл, распаковываешь, сохраняешь его в директорию с конфигом. В hal файл нужно дописать
loadusr python compensation.py file.txt
file.txt это название твоего файла с пробами.

Далее, запускаешь emc2. И если запустится, сразу смотришь пины, пины нужны compensation.0.x-map , y-map, reset и out. Если они есть, то переходим далее, сейчас допишу.

ЗЫ 2.6 не поможет, я посмотрел, там тоже нет.
Вложения
compensation.py.tar.gz
(1.49 КБ) 1260 скачиваний
Романов Семен
Почётный участник
Почётный участник
Сообщения: 646
Зарегистрирован: 23 янв 2012, 23:25
Репутация: -80
Откуда: Самара

Re: EMC2 и неровная поверхность гравировки

Сообщение Романов Семен »

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

Re: EMC2 и неровная поверхность гравировки

Сообщение Nick »

Теперь если получится, то нужно загнать в наш компонент перемещения по x и y. Для этого, опять же в hal
сначала чуть-чуть изменим строчку загрузки компонента на
loadusr -Wn compensation python compensation.py file.txt
потом подсоединяем пины
net [сюда название сигнала axis-x-pos-cmd] => compensation.0.x-map
net [сюда название сигнала axis-y-pos-cmd] => compensation.0.y-map

После этого опять запускаем emc2 гоняем по осям и смотрим, как меняется пин compensation.0.out.

PS а я и не уходил, я писал :).
Романов Семен
Почётный участник
Почётный участник
Сообщения: 646
Зарегистрирован: 23 янв 2012, 23:25
Репутация: -80
Откуда: Самара

Re: EMC2 и неровная поверхность гравировки

Сообщение Романов Семен »

emc2 стартануло после действий.
Nick писал(а):В hal файл нужно дописать
loadusr python compensation.py file.txt
если верно понял то дописал это в хал файл в той же директории по имени моего конфига для станка.

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

Re: EMC2 и неровная поверхность гравировки

Сообщение Nick »

В меню ищи halmeter, там в нем вкладка ножки.

Запустилось это гуд, не ожидал :freak:
Романов Семен
Почётный участник
Почётный участник
Сообщения: 646
Зарегистрирован: 23 янв 2012, 23:25
Репутация: -80
Откуда: Самара

Re: EMC2 и неровная поверхность гравировки

Сообщение Романов Семен »

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

Re: EMC2 и неровная поверхность гравировки

Сообщение Nick »

Ну а что-нибудь типа compensation ... есть ?

Да, попробуй emc2 из консоли запустить и посмотреть не ругается ли на что-нибудь она в консоле...
Романов Семен
Почётный участник
Почётный участник
Сообщения: 646
Зарегистрирован: 23 янв 2012, 23:25
Репутация: -80
Откуда: Самара

Re: EMC2 и неровная поверхность гравировки

Сообщение Романов Семен »

нет вообще про компенсатион... будто не подключается
Романов Семен
Почётный участник
Почётный участник
Сообщения: 646
Зарегистрирован: 23 янв 2012, 23:25
Репутация: -80
Откуда: Самара

Re: EMC2 и неровная поверхность гравировки

Сообщение Романов Семен »

semen@semen-desktop:~$ emc
The emc script is deprecated; use the linuxcnc script instead
LINUXCNC - 2.5.0-pre2-765-g0ff7c90
Machine configuration directory is '/home/semen/linuxcnc/configs/cnc_3040t'
Machine configuration file is 'cnc_3040t.ini'
Starting LinuxCNC...
[0.0, 20.0, 40.0, 60.0, 80.0]
0.0 {0.0: -0.002421, 40.0: 0.201375, 20.0: 0.20141000000000001, 80.0: 0.079097000000000001, 60.0: 0.16061600000000001}
40.0 {0.0: 0.26682400000000001, 40.0: 0.67435400000000001, 20.0: 0.27476200000000001, 80.0: 0.68237199999999998, 60.0: 0.72315200000000002}
20.0 {0.0: 0.24213499999999999, 40.0: 0.20952699999999999, 20.0: 0.44593100000000002, 80.0: 0.54380300000000004, 60.0: 0.58451799999999998}
80.0 {0.0: -0.075731000000000007, 40.0: 0.356271, 20.0: 0.233989, 80.0: 0.31558999999999998, 60.0: 0.35626099999999999}
60.0 {0.0: 0.15246399999999999, 40.0: 0.63342399999999999, 20.0: 0.470387, 80.0: 0.62532500000000002, 60.0: 0.67426900000000001}
Traceback (most recent call last):
File "compensation.py", line 115, in <module>
h["out"]=get_comp(x,y)
File "compensation.py", line 69, in get_comp
for i in range_x :
TypeError: 'int' object is not iterable
^CTraceback (most recent call last):
File "/usr/bin/axis", line 3336, in <module>
o.mainloop()
File "/usr/lib/python2.6/lib-tk/Tkinter.py", line 1020, in mainloop
self.tk.mainloop(n)
File "/usr/lib/python2.6/lib-tk/Tkinter.py", line 1408, in __call__
def __call__(self, *args):
KeyboardInterrupt
Shutting down and cleaning up LinuxCNC...
Cleanup done
semen@semen-desktop:~$ ^C
semen@semen-desktop:~$
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: EMC2 и неровная поверхность гравировки

Сообщение Nick »

так, сейчас пофиксим...
Романов Семен
Почётный участник
Почётный участник
Сообщения: 646
Зарегистрирован: 23 янв 2012, 23:25
Репутация: -80
Откуда: Самара

Re: EMC2 и неровная поверхность гравировки

Сообщение Романов Семен »

дважды после этих процедур (дай Бог не облажаться и выразиться правильно) слетали иксы.
Черный экран, замерз курсор.
ребут, далее...

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

Re: EMC2 и неровная поверхность гравировки

Сообщение Nick »

Так, еще раз, только с этим фалом.
А зависание - это нормально, говорил же сделал через ж.
Вложения
compensation.py.tar.gz
(1.58 КБ) 1228 скачиваний
Романов Семен
Почётный участник
Почётный участник
Сообщения: 646
Зарегистрирован: 23 янв 2012, 23:25
Репутация: -80
Откуда: Самара

Re: EMC2 и неровная поверхность гравировки

Сообщение Романов Семен »

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

semen@semen-desktop:~$ emc
The emc script is deprecated; use the linuxcnc script instead
LINUXCNC - 2.5.0-pre2-765-g0ff7c90
Machine configuration directory is '/home/semen/linuxcnc/configs/cnc_3040t'
Machine configuration file is 'cnc_3040t.ini'
Starting LinuxCNC...
[0.0, 20.0, 40.0, 60.0, 80.0]
0.0       {0.0: -0.002421, 40.0: 0.201375, 20.0: 0.20141000000000001, 80.0: 0.079097000000000001, 60.0: 0.16061600000000001}
40.0       {0.0: 0.26682400000000001, 40.0: 0.67435400000000001, 20.0: 0.27476200000000001, 80.0: 0.68237199999999998, 60.0: 0.72315200000000002}
20.0       {0.0: 0.24213499999999999, 40.0: 0.20952699999999999, 20.0: 0.44593100000000002, 80.0: 0.54380300000000004, 60.0: 0.58451799999999998}
80.0       {0.0: -0.075731000000000007, 40.0: 0.356271, 20.0: 0.233989, 80.0: 0.31558999999999998, 60.0: 0.35626099999999999}
60.0       {0.0: 0.15246399999999999, 40.0: 0.63342399999999999, 20.0: 0.470387, 80.0: 0.62532500000000002, 60.0: 0.67426900000000001}
(0.0, 0.0, 20.0, 20.0, 10, 10)
0.22176375
Traceback (most recent call last):
  File "compensation.py", line 134, in <module>
    comp.run()
  File "compensation.py", line 125, in run
    h["out"]=get_comp(x,y)
NameError: global name 'get_comp' is not defined
Shutting down and cleaning up LinuxCNC...
Cleanup done
semen@semen-desktop:~$ 
теперь так.

компенсетион в пинах не появился...


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

Re: EMC2 и неровная поверхность гравировки

Сообщение Nick »

строка 125 сделай такой:
h["out"]=self.get_comp(x,y)
добавить "self."
Романов Семен
Почётный участник
Почётный участник
Сообщения: 646
Зарегистрирован: 23 янв 2012, 23:25
Репутация: -80
Откуда: Самара

Re: EMC2 и неровная поверхность гравировки

Сообщение Романов Семен »

Запустилось без ошибок.
Screenshot.png (3501 просмотр) <a class='original' href='./download/file.php?id=3948&sid=710a03feb801a297287dba9d23ac9472&mode=view' target=_blank>Загрузить оригинал (30.51 КБ)</a>
вот такие пины появились...

что делать дальше, из поста выше не совсем понял, поможешь раскруть?

пс. кстати выше выкладывал содержимое filename.txt -в котором содержатся координаты сканирования - почему в каждой строчке куча лишних нулей??

перед запуском я удалил лишние нули...

такс... что дальше то
Романов Семен
Почётный участник
Почётный участник
Сообщения: 646
Зарегистрирован: 23 янв 2012, 23:25
Репутация: -80
Откуда: Самара

Re: EMC2 и неровная поверхность гравировки

Сообщение Романов Семен »

Nick писал(а):net [сюда название сигнала axis-x-pos-cmd] => compensation.0.x-map
net [сюда название сигнала axis-y-pos-cmd] => compensation.0.y-map
дописать в hal?

а что написать вместо "сюда название сигнала"
Ответить

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