Страница 6 из 31
Re: EMC2 и неровная поверхность гравировки
Добавлено: 14 фев 2012, 11:23
Nick
Значит так, тебе нужно вот это из hal:
Код: Выделить всё
...
loadrt lut5
...
...
addf lut5.0 servo-thread
...
...
net all-limit-home <= parport.0.pin-11-in-not
setp lut5.0.function 0x10000
net all-limit-home => lut5.0.in-4
net all-limit <= lut5.0.out
net homing-x <= axis.0.homing => lut5.0.in-0
net homing-y <= axis.1.homing => lut5.0.in-1
...
...
net all-limit-home => axis.0.home-sw-in
net all-limit => axis.0.neg-lim-sw-in
net all-limit => axis.0.pos-lim-sw-in
...
...
net all-limit-home => axis.1.home-sw-in
net all-limit => axis.1.neg-lim-sw-in
net all-limit => axis.1.pos-lim-sw-in
В ini:
HOME_SEARCH_VEL = 0.050000 можно сделать по-больше. У тебя датчики и ускорения какие?
И в оси 2 убери:
HOME_OFFSET = -3.000000
HOME_SEARCH_VEL = 0.050000
HOME_LATCH_VEL = 0.050000
Re: EMC2 и неровная поверхность гравировки
Добавлено: 14 фев 2012, 11:29
Романов Семен
Помоему так делал - не работало... сейчас еще попробую!!!!
Re: EMC2 и неровная поверхность гравировки
Добавлено: 14 фев 2012, 11:37
Романов Семен
Nick писал(а):Ctrl+Alt+BackSpace - перезапустить иксыCtrl+Alt+F1..F8 - 8 различных терминалов, если в одном что-то случилось, можно переключиться в другой, там залогиниться и посмотреть что с системой творится.
Сейчас завис опять
перезагрузка иксов не реагирует
нумлока нет на клаве (укороченная)
капслок не реагирует
в терминалы не выходит
Nick писал(а):Ну и магическая комбинация Alt+SysRq+REISUB
второй кнопки нет на клаве (урезанная гадина)
а третье что такое вообще не в курсе =(
пс. опять ребут...
Re: EMC2 и неровная поверхность гравировки
Добавлено: 14 фев 2012, 11:46
Романов Семен
Nick писал(а):Значит так, тебе нужно вот это из hal:
Код: Выделить всё
...
loadrt lut5
...
...
addf lut5.0 servo-thread
...
...
net all-limit-home <= parport.0.pin-11-in-not
setp lut5.0.function 0x10000
net all-limit-home => lut5.0.in-4
net all-limit <= lut5.0.out
net homing-x <= axis.0.homing => lut5.0.in-0
net homing-y <= axis.1.homing => lut5.0.in-1
...
...
net all-limit-home => axis.0.home-sw-in
net all-limit => axis.0.neg-lim-sw-in
net all-limit => axis.0.pos-lim-sw-in
...
...
net all-limit-home => axis.1.home-sw-in
net all-limit => axis.1.neg-lim-sw-in
net all-limit => axis.1.pos-lim-sw-in
В ini:
HOME_SEARCH_VEL = 0.050000 можно сделать по-больше. У тебя датчики и ускорения какие?
И в оси 2 убери:
HOME_OFFSET = -3.000000
HOME_SEARCH_VEL = 0.050000
HOME_LATCH_VEL = 0.050000
Все работает, предыдущий раз проблема была в этом:
HOME_SEQUENCE
она должны быть от нуля считаться для каждой оси...
а то что делал степконф 0 у зета - ноль у икса 1 у игрика 2
это видимо последовательность поиска. очередность
поставил для игрика ноль у себя у икса 1.
работает!!!!
пс. пошел помою посуду и буду тестировать компенсацию, если на работу не выдернут =(
Re: EMC2 и неровная поверхность гравировки
Добавлено: 14 фев 2012, 11:54
Nick
скинь свои /var/log/syslog.0 и /var/log/syslog.1
Re: EMC2 и неровная поверхность гравировки
Добавлено: 14 фев 2012, 12:10
Романов Семен
Nick писал(а):скинь свои /var/log/syslog.0 и /var/log/syslog.1
- 1.ZIP
- (222.73 КБ) 420 скачиваний
Re: EMC2 и неровная поверхность гравировки
Добавлено: 14 фев 2012, 12:41
Романов Семен
Nick писал(а):Работает, это хорошо, но работает оно плохо. Самое плохое, что "мы обманули EMC2" и теперь он не знает, где находится ось на самом деле.
Сейчас задумался, и похоже без специальной кинематики сделать чтобы работало правильно не выйдет.
По упрощению работы, тебе нужен Gкод такого типа:
Начало программы:
Код: Выделить всё
M63 P0 (это мы выключаем работу компенсатора)
T1 M6 (выдаем запрос на установку щупа)
(Сюда вставляешь скрипт сканирования поверхности)
M62 P1 (это мы скажем нашему скрипту обновить карту высот и компенсаций)
G4 P4 (делаем паузу на 4 секунды, на всякий случай, чтобы скрипт успел отработать)
T2 M6 (Выдаем запрос на установку фрезы)
M62 P0 (это мы включаем работу компенсатора)
(Сюда твой Gкод для гравировки платы)
Все. Только нужно жописать пару строчки в HAL
Код: Выделить всё
# это мы делаем так, что бы M62 P0 (цифровой вывод №1) включал компенсацию
net dout-00 <= motion.digital-out-00
net dout-00 => compensation.enable
# это мы настраиваем функцию reset.
net dout-01 <= motion.digital-out-01
net dout-01 => compensation.reset
Главное не забывать, что мы на самом деле обманули EMC2, => и можем выехать за пределы осей!
ЗЫ Скобки и # можешь оставить - это комментарии.
тут вот ругается....
на эту строчку:
net dout-01 => compensation.reset
Debug file information:
Can not find -sec MOT -var MOT -num 1
Can not find -sec IO -var IO -num 1
Can not find -sec LINUXCNC -var NML_FILE -num 1
Can not find -sec EMC -var NML_FILE -num 1
custom.hal:19: Signal 'dout-01' can not add I/O pin 'compensation.reset', it already has OUT pin 'motion.digital-out-01'
2117
PID TTY STAT TIME COMMAND
Stopping realtime threads
Unloading hal components
Re: EMC2 и неровная поверхность гравировки
Добавлено: 14 фев 2012, 13:00
Nick
Попробуй вот эту версию, переписал reset, чтобы он был просто IN, а не I/O.
Re: EMC2 и неровная поверхность гравировки
Добавлено: 14 фев 2012, 13:12
Романов Семен
Nick писал(а):Попробуй вот эту версию, переписал reset, чтобы он был просто IN, а не I/O.
ЕМС стартонул...
Да...
НО. как обнулить Z ?
Х и У автоматически...
А как сделать теперь что бы Зет обнулять вручную %(
Без этого он не дает стартонуть цикл гкода =(
Re: EMC2 и неровная поверхность гравировки
Добавлено: 14 фев 2012, 13:29
Романов Семен
Романов Семен писал(а):Nick писал(а):Попробуй вот эту версию, переписал reset, чтобы он был просто IN, а не I/O.
ЕМС стартонул...
Да...
НО. как обнулить Z ?
Х и У автоматически...
А как сделать теперь что бы Зет обнулять вручную %(
Без этого он не дает стартонуть цикл гкода =(
проблема решена =)
Добавил в ini:
Для оси Зет, правда он его обнуляет в том месте где находился на момент запуска....
Потестим, потом придумаю что нибудь!
Кажется прийдется ставить концевик наверх...

Re: EMC2 и неровная поверхность гравировки
Добавлено: 14 фев 2012, 13:58
Nick
Романов Семен писал(а):Для оси Зет, правда он его обнуляет в том месте где находился на момент запуска....Потестим, потом придумаю что нибудь!
Просто гонишь ось в нужное место по Z и нажимаешь home на клаве и все.
Кстати, ты хотел его хомить по пробе? Можно probe-in подключить в качестве датчика home.
Re: EMC2 и неровная поверхность гравировки
Добавлено: 14 фев 2012, 14:42
Романов Семен
Nick писал(а):Романов Семен писал(а):Для оси Зет, правда он его обнуляет в том месте где находился на момент запуска....Потестим, потом придумаю что нибудь!
Просто гонишь ось в нужное место по Z и нажимаешь home на клаве и все.
Кстати, ты хотел его хомить по пробе? Можно probe-in подключить в качестве датчика home.
кнопки Home нет тоже =)
Ставлю концевик сейчас на верх оси зет.
Re: EMC2 и неровная поверхность гравировки
Добавлено: 14 фев 2012, 14:54
Nick
Как нет? Что за клава такая??? Может она есть через Fn+что-нибудь?
тогда жми на кнопку home на экране.
Re: EMC2 и неровная поверхность гравировки
Добавлено: 14 фев 2012, 15:04
Романов Семен
Nick писал(а):тогда жми на кнопку home на экране.
такая есть? =)
пс. туплю может быть... сижу паяю концевик =)
Re: EMC2 и неровная поверхность гравировки
Добавлено: 14 фев 2012, 16:05
Романов Семен
не знаю почему.
НО
1. развалился концевик по зету.
2. при М62 Р0 - компенсация НЕ включается!
В hal прописаны те 4 строки
Не знаю =(
3. Если filename.txt пустой или "неправельный" - ЕМС не запускается =(
вот три траблочки в какие уперся...
Концевик потом поменяю... щас покушаю и к девушке... а то уже нервничает... мол все влюбленные вместе. а я не с тобой... а ты со станком... ревнует =))
Re: EMC2 и неровная поверхность гравировки
Добавлено: 14 фев 2012, 16:57
Nick
Романов Семен писал(а):. при М62 Р0 - компенсация НЕ включается!В hal прописаны те 4 строки
Как проверял?
Романов Семен писал(а):3. Если filename.txt пустой или "неправельный" - ЕМС не запускается =(
Это может быть, надо будет исправить...
-----
Исправил, но теперь перед запуском надо делать reset.
Re: EMC2 и неровная поверхность гравировки
Добавлено: 14 фев 2012, 21:16
Романов Семен
Nick писал(а):Как проверял?
Эммм... самым прямым способом:
1. сканирование.
2. M62 P0
3. ручками двигаю туда сюда Х и У - а зет на месте.
Nick писал(а):Исправил, но теперь перед запуском надо делать reset.
Возможно сегодня попробую. Обещать не буду.
Девушку позвал в гости, искупать вину за сегоднешнюю измену со станком =(
Но щас она готовит, возможно я дизертирую с кухни к станочку =)))
Отпишусь вообщем =)
Re: EMC2 и неровная поверхность гравировки
Добавлено: 14 фев 2012, 21:32
Nick
А файл компенсации нормальный, не совсем ровный? Вообще попробуй плату соовсем под углом положить, например на 1см подними с угла и тестируй.
Может не включил компенсацию? Проверь в hal meter пин compensation.enable.
Re: EMC2 и неровная поверхность гравировки
Добавлено: 14 фев 2012, 21:39
Романов Семен
файл компенсации нормальный - не совсем ровный... до этого до "введения" М62/М63 работала компенсация.
Сейчас проверю....
Nick писал(а):Может не включил компенсацию?
Вероятно =))
щас пока поменял концевик его щас проверю с новым компенсатион.пу
Nick писал(а):Проверь в hal meter пин compensation.enable.
False
и на M62 P0 / M63 P0 не реагирует
Re: EMC2 и неровная поверхность гравировки
Добавлено: 15 фев 2012, 10:00
Романов Семен
Последний конфиг.
Как в нем включить компенсацию %(
Делаю так:
1. NGC файл содержит:
Код: Выделить всё
F100
G0 X100 Y100 Z10
G38.2 Z-10
F1
G38.4 Z10
G92 Z0
M2 (end program)
2. Второй файл
Код: Выделить всё
F500
M63 P0 (это мы выключаем работу компенсатора)
T1 M6 (выдаем запрос на установку щупа)
#<h> = 100
#<w> = 100
#<x0> = 100
#<y0> = 100
#<step> = 10
(PROBEOPEN filename.txt)
#<y> = #<y0>
o101 while [#<y> LT #<h>+#<y0>]
#<x> = #<x0>
o102 while [#<x> LT #<w>+#<x0>]
G0 X#<x> Y#<y>
G38.3 Z-10
G0 Z10
#<x> = [#<x>+#<step>]
o102 endwhile
#<y> = [#<y>+#<step>]
o101 endwhile
(PROBECLOSE)
M62 P1 (это мы скажем нашему скрипту обновить карту высот и компенсаций)
G4 P4 (делаем паузу на 4 секунды, на всякий случай, чтобы скрипт успел отработать)
T2 M6 (Выдаем запрос на установку фрезы)
M62 P0 (это мы включаем работу компенсатора)
(Сюда твой Gкод для гравировки платы)
M2 (end program)
По сути своей после этого должна работать компенсация, так?
Не работает!