Страница 8 из 21
Re: Модернизация фрезерного 6Р13Ф3-01
Добавлено: 11 мар 2012, 00:23
nkp
В Axis можно отключить (убрать,перенести,переназначить ) любую кнопку. Файл /usr/share/axis/tcl/axis.tcl
стр 508:
Код: Выделить всё
Button .toolbar.program_pause \
-command task_pauseresume \
-helptext [_ "Pause \[P\] / resume \[S\] execution"] \
-image [load_image tool_pause] \
-relief link \
-takefocus 0
setup_widget_accel .toolbar.program_pause {}
убираем из под root строчку -command task_pauseresume \ (пустой стоки тоже не должно быть)
Re: Модернизация фрезерного 6Р13Ф3-01
Добавлено: 11 мар 2012, 00:28
nkp
"Расширение" функции кнопки -одной кнопкой управляем 3 задачами на примере шпинделя
Re: Модернизация фрезерного 6Р13Ф3-01
Добавлено: 11 мар 2012, 11:13
Lexxa
круто
Re: Модернизация фрезерного 6Р13Ф3-01
Добавлено: 11 мар 2012, 12:00
Lexxa
nkp писал(а):В Axis можно отключить (убрать,перенести,переназначить ) любую кнопку. Файл /usr/share/axis/tcl/axis.tcl
стр 508:
Код: Выделить всё
Button .toolbar.program_pause \
-command task_pauseresume \
-helptext [_ "Pause \[P\] / resume \[S\] execution"] \
-image [load_image tool_pause] \
-relief link \
-takefocus 0
setup_widget_accel .toolbar.program_pause {}
убираем из под root строчку -command task_pauseresume \ (пустой стоки тоже не должно быть)
А можно чтоб если на пульте оператора стояла пауза, то мышкой её снять было бы нельзя, а вот если она не нажата, то мышкой можно было бы нажать?
Хотя и так хорошо.
Re: Модернизация фрезерного 6Р13Ф3-01
Добавлено: 11 мар 2012, 12:31
nkp
Файл /usr/bin/axis (
правим из под root)
стр 1986
редактируем так:
Код: Выделить всё
def task_pauseresume(*event):
if s.task_mode not in (emc.MODE_AUTO, emc.MODE_MDI):
return
ensure_mode(emc.MODE_AUTO, emc.MODE_MDI)
s.poll()
if s.paused:
return
elif s.interp_state != emc.INTERP_IDLE:
c.auto(emc.AUTO_PAUSE)
соблюсти отступы (return вверху и внизу на одном уровне)
Re: Модернизация фрезерного 6Р13Ф3-01
Добавлено: 11 мар 2012, 12:36
nkp
Перед редактированием не забываем делать резервирование
ЗЫ. Возвратить кнопке привязку к " -command task_pauseresume \"
Re: Модернизация фрезерного 6Р13Ф3-01
Добавлено: 11 мар 2012, 13:53
Lexxa
Код: Выделить всё
def task_pauseresume(*event):
if s.task_mode not in (emc.MODE_AUTO, emc.MODE_MDI):
return
ensure_mode(emc.MODE_AUTO, emc.MODE_MDI)
s.poll()
if s.paused:
return
elif s.interp_state != emc.INTERP_IDLE:
return
Так должно быть?
Re: Модернизация фрезерного 6Р13Ф3-01
Добавлено: 11 мар 2012, 13:56
nkp
Да -это уже после редакции. Проверил- в Axis работает (железной кнопки нет)
Re: Модернизация фрезерного 6Р13Ф3-01
Добавлено: 11 мар 2012, 14:02
nkp
Ошибся

- не посмотрел последнюю строку
Вот так в итоге должно быть:
Код: Выделить всё
def task_pauseresume(*event):
if s.task_mode not in (emc.MODE_AUTO, emc.MODE_MDI):
return
ensure_mode(emc.MODE_AUTO, emc.MODE_MDI)
s.poll()
if s.paused:
return
elif s.interp_state != emc.INTERP_IDLE:
c.auto(emc.AUTO_PAUSE)
Re: Модернизация фрезерного 6Р13Ф3-01
Добавлено: 11 мар 2012, 14:25
Lexxa
Спасибо)
Re: Модернизация фрезерного 6Р13Ф3-01
Добавлено: 11 мар 2012, 14:27
nkp
Интересно - с пульта оператора заработало?
Re: Модернизация фрезерного 6Р13Ф3-01
Добавлено: 11 мар 2012, 14:36
Lexxa
Дома проверю, ща через тимвьювер просто, комп дома, меса тоже, а я на работе. Вечером отпишу.
Re: Модернизация фрезерного 6Р13Ф3-01
Добавлено: 11 мар 2012, 16:57
zilk
nkp писал(а):Интересно - с пульта оператора заработало?
Я проверил - работает, как было заказано, т.е. паузу можно поставить мышей но снять нельзя, железной кнопкой пауза и ставится, и снимается...
Если не секрет - что дает такая фича в работе?
Re: Модернизация фрезерного 6Р13Ф3-01
Добавлено: 11 мар 2012, 17:44
Lexxa
защита от дурака и антипутанница.
Re: Модернизация фрезерного 6Р13Ф3-01
Добавлено: 11 мар 2012, 18:36
Lexxa
nkp писал(а):В порядке просвещения:
а чем пауза не усраивает ?
Вроде:
Код: Выделить всё
Пауза - грубо это остановить подачу, обычно переводит FEED OVERRIDE и RAPID OVERRIDE в 0% скачком, соответственно поведение зависит от их отработки. Шпиндель и автоматика продолжает работать.
Блин. Не устраивает пауза. Только сейчас обратил внимания, что когда ставишь на паузу программу, то остановка произойдет только по факту отрабтки текущего кадра, а надо как можно раньше.
Т.е. motion.feed-hold был бы как раз кстати, но вот от M53 P1 отучить бы её.
Re: Модернизация фрезерного 6Р13Ф3-01
Добавлено: 11 мар 2012, 18:51
nkp
Пауза не отрабатывает до конца кадра. Это у тебя так включено.
Lexxa писал(а):Почти тоже самое делаю, только в конце кадра (функция M01)
.
Re: Модернизация фрезерного 6Р13Ф3-01
Добавлено: 11 мар 2012, 19:03
nkp
Вот пауза одной кнопкой без ладдера
Код: Выделить всё
setp toggle.0.debounce 100
setp oneshot.0.rising 0
setp oneshot.0.falling 1
setp oneshot.0.width 0.5
net pause-button toggle.0.in <= ваша_кнопка
net resume toggle.0.out => halui.program.resume oneshot.0.in
net pause oneshot.0.out => halui.program.pause
у автора кода работает-сейчас и я "к железу" (макетка с кнопочками

) прикручу,проверю
Re: Модернизация фрезерного 6Р13Ф3-01
Добавлено: 11 мар 2012, 19:20
nkp
В ini в секцию HALUI пишем "HALUI = halui"
В hal
(для просмотра содержимого нажмите на ссылку)Код: Выделить всё
loadrt toggle
addf toggle.0 servo-thread
loadrt oneshot
addf oneshot.0 servo-thread
setp toggle.0.debounce 100
setp oneshot.0.rising 0
setp oneshot.0.falling 1
setp oneshot.0.width 0.5
net pause-button toggle.0.in <= parport.0.pin-11-in
net resume toggle.0.out => halui.program.resume oneshot.0.in
net pause oneshot.0.out => halui.program.pause
(кнопка на 11 пине парпорта)
Re: Модернизация фрезерного 6Р13Ф3-01
Добавлено: 11 мар 2012, 19:45
Lexxa
Макетку с тумблером прикрути
Re: Модернизация фрезерного 6Р13Ф3-01
Добавлено: 11 мар 2012, 19:53
nkp
Lexxa писал(а):Макетку с тумблером прикрути
про тумблер не понял- с тумблером не получается?
если да- то почему выбор пал на тумблер?