Авто ноль по Z в EMC
-
- Кандидат
- Сообщения: 61
- Зарегистрирован: 14 мар 2013, 13:40
- Репутация: 2
- Контактная информация:
Re: Авто ноль по Z в EMC
объясните последовательность действий с датчиком и определением базы детали, я так понимаю сначала едем на датчик и запоминаем положение конца инструмента в машинных абсолютных координатах, далее этим измеренным инструментом определяем базы заготовки (определяем нули в G54) - имеем разницу между высотой контактной площадки и нулем G54 - правильно? далее при смене инструмента едем на датчик определяем координату конца инструмента в абсолютных машинных координатах и к ней прибавляем разницу между высотой площадки и нулем G54? не могу понять как коррелирует измерение нуля детали с измерением длинны инструмента. Опишите пожалуйста всю цепочку действий от поиска HOME до смены поломанной фрезы например.
- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: Авто ноль по Z в EMC
Измерение длинны инструмента и базы детали это две разные вещи, никак не связанные между собой.
Для измерения инструмента сразу после смены, лучше всего написать отдельную процедуру на Gкоде, сохранить в отдельный файл и потом вызывать ее по мере надобности.
Т.е. берем процедуру: o<auto-tool-change> sub из сообщения Алексса: Датчик длины инструмента #116.
сохраняем в файл auto-tool-change.ngc в каталог указанный в ini в качестве subroutines.
В процедуре надо поменять вот эти две строчки, - поставить там свои координаты в _!абсолютных координатах станка!_ :
Потом эту процедуру вызываем так
O<auto-tool-change> CALL
Все.
Можно еще добавить туда запрос на смену инструмента и постаноку на паузу:
Номер инструмента при этом передаем в параметре при вызове функции:
Для измерения инструмента сразу после смены, лучше всего написать отдельную процедуру на Gкоде, сохранить в отдельный файл и потом вызывать ее по мере надобности.
Т.е. берем процедуру: o<auto-tool-change> sub из сообщения Алексса: Датчик длины инструмента #116.
сохраняем в файл auto-tool-change.ngc в каталог указанный в ini в качестве subroutines.
В процедуре надо поменять вот эти две строчки, - поставить там свои координаты в _!абсолютных координатах станка!_ :
Код: Выделить всё
g53 g0 z0
g53 g0 x135 y71
O<auto-tool-change> CALL
Все.
Можно еще добавить туда запрос на смену инструмента и постаноку на паузу:
Код: Выделить всё
(MSG, Вставьте инструмент номер #1)
M0
Код: Выделить всё
O<auto-tool-change> CALL [10]
- solo
- Мастер
- Сообщения: 1374
- Зарегистрирован: 20 окт 2011, 18:39
- Репутация: 272
- Настоящее имя: Юрий Соловьев
- Откуда: Украина Харьков
- Контактная информация:
Re: Авто ноль по Z в EMC
Я лично начинал с того что нарисовал с поморщу PyVCP панель на которой располагались кнопки для упражнения операцией смены инструмента и там можно вообще вывести то что ты посчитаеш необходимым для работы. после того как я ее нарисовал появиось немного понимания что как работаее т.
Дополнительная панель имеет свои пины (виртуальные, программные,--- контакты) которые в хел файле вы потом соединяете с файлом G кода который проводит смену инструмента, то есть нажатие на кнопку выдлета EMC2 Integrators Manual Перевод на русский язык #67 вызывает выполнение файла с Ж кодом Файл Gкода или М кода надо написать или найти готовый, и положить в папку с nc- файлами.
Также в хел файле необходимо соединить пин датчика с пином соответствующего вывода ЛПТ порта.
В ини файле необходимо добавить загрузку соответствующих файлов, панель PyVCP, хел файла и файлов с Ж кодом
Как пример прикладываю свои файли
Может я конечно все это совершенно не о том то тогда прошу прощение, а то я часто способен только на или
Дополнительная панель имеет свои пины (виртуальные, программные,--- контакты) которые в хел файле вы потом соединяете с файлом G кода который проводит смену инструмента, то есть нажатие на кнопку выдлета EMC2 Integrators Manual Перевод на русский язык #67 вызывает выполнение файла с Ж кодом Файл Gкода или М кода надо написать или найти готовый, и положить в папку с nc- файлами.
Также в хел файле необходимо соединить пин датчика с пином соответствующего вывода ЛПТ порта.
В ини файле необходимо добавить загрузку соответствующих файлов, панель PyVCP, хел файла и файлов с Ж кодом
Как пример прикладываю свои файли
Может я конечно все это совершенно не о том то тогда прошу прощение, а то я часто способен только на или
- Вложения
-
- jet.tar.gz
- (5.42 КБ) 1180 скачиваний
-
- Кандидат
- Сообщения: 61
- Зарегистрирован: 14 мар 2013, 13:40
- Репутация: 2
- Контактная информация:
Re: Авто ноль по Z в EMC
понятно что поиск заготовки и длинны инструмента это разные вещи, я заготовку по высоте определяю первым инструментом, мне нужно понять последовательность операций, то-есть сначала едем по домам, затем едим инструментом на датчик, затем едем инструментом на заготовку и выставляем 0 в G54(тут как раз вопрос - надо ли что-то делать с полученной от датчика координатой), теперь у нас есть все чтобы запустить программу, скажем после десятого прогона программы надо поменять фрезу, но с тем-же номером инструмента - (затупилась или сломалась) - тогда новой фрезой едем на датчик и разницу в координатах записываем в G код компенсации на длину инструмента? тогда надо три саброутина - правильно ли я понимаю?
- solo
- Мастер
- Сообщения: 1374
- Зарегистрирован: 20 окт 2011, 18:39
- Репутация: 272
- Настоящее имя: Юрий Соловьев
- Откуда: Украина Харьков
- Контактная информация:
Re: Авто ноль по Z в EMC
Как я обычно поступаю и что я сделал под себя
1 на дополнительной панели есть две кнопки "проба ПЕРЕД замены" нажимание ее инструмент едит на датчик,
после срабатывания датчика в память записываться длинна инструмента и ЛЕД на панели меняет цвет!!!. Длинна инструмента хранится в память до выключения компа (могу ошибаться) Я эту операцию для себя называю "привязкой инструмента"
Начинанием работать.
Теперь в процессе работы если у нас возникает необходимость замены фрезы (сламалась или просто надо заменить на другой размер) мы меняем фрезу едим на датчик и нажимаем кнопку "проба ПОСЛЕ замены". Инструмент опускается на датчик .
Все дальше можно продолжать работать
Ж код действий по нажатию кнопки кнопки "проб перед заменой" лежит в файле probado.ngc
Ж код ---"проба после замены" в файле probaand.ngc
возможно надо подправить последние файлы под себя
все так и я делаюvalor писал(а):затем едим инструментом на датчик, затем едем инструментом на заготовку и выставляем 0 в G54(тут как раз вопрос - надо ли что-то делать с полученной от датчика координатой)
1 на дополнительной панели есть две кнопки "проба ПЕРЕД замены" нажимание ее инструмент едит на датчик,
после срабатывания датчика в память записываться длинна инструмента и ЛЕД на панели меняет цвет!!!. Длинна инструмента хранится в память до выключения компа (могу ошибаться) Я эту операцию для себя называю "привязкой инструмента"
Начинанием работать.
Теперь в процессе работы если у нас возникает необходимость замены фрезы (сламалась или просто надо заменить на другой размер) мы меняем фрезу едим на датчик и нажимаем кнопку "проба ПОСЛЕ замены". Инструмент опускается на датчик .
Все дальше можно продолжать работать
Ж код действий по нажатию кнопки кнопки "проб перед заменой" лежит в файле probado.ngc
Ж код ---"проба после замены" в файле probaand.ngc
возможно надо подправить последние файлы под себя
- РЕКЛАМА
- Почётный участник
- Сообщения: 726
- Зарегистрирован: 11 дек 2012, 21:46
- Репутация: 80
- Откуда: Брянск
- Контактная информация:
Re: Авто ноль по Z в EMC
А зачем 2 файла и 2 кнопки, Что будет если их перепутать?
- solo
- Мастер
- Сообщения: 1374
- Зарегистрирован: 20 окт 2011, 18:39
- Репутация: 272
- Настоящее имя: Юрий Соловьев
- Откуда: Украина Харьков
- Контактная информация:
Re: Авто ноль по Z в EMC
При выполнении первого файла мы в относительных единицах измеряем длину инструмента и записываем ее в память
Чтобы не забывать это сделать я специально прицепил светодиод на панеле
Второй файл присваивает относительные координаты новому инструменту.
Там на панели есть еше одна кнопка "Z 0 проба" это кнопка просто выставляет после касания датчику ноль на уровне стола. Только надо подправить Ж код в зависимость от высоты датчика. Тогда кнопки "перед " и после в принципе не нужны
В принципе каждый может сам под себя переделать как панель так и Ж код
Я предложил свой вариант и это наверное уже 6 или 7 вариант моей панели и она меня пока не устраивает.
Наверное вся прелесть LCNC в том что каждый пользователь может адаптировать под себя и свои потребности данную программу.
Чтобы не забывать это сделать я специально прицепил светодиод на панеле
Второй файл присваивает относительные координаты новому инструменту.
не знаю, надо попробовать .РЕКЛАМА писал(а):Что будет если их перепутать?
Там на панели есть еше одна кнопка "Z 0 проба" это кнопка просто выставляет после касания датчику ноль на уровне стола. Только надо подправить Ж код в зависимость от высоты датчика. Тогда кнопки "перед " и после в принципе не нужны
В принципе каждый может сам под себя переделать как панель так и Ж код
Я предложил свой вариант и это наверное уже 6 или 7 вариант моей панели и она меня пока не устраивает.
Наверное вся прелесть LCNC в том что каждый пользователь может адаптировать под себя и свои потребности данную программу.
- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: Авто ноль по Z в EMC
Ее можно писать в таблицу инструмента, чтобы не хранить в переменных. (через G10 L1 или G10 L10)solo писал(а):Длинна инструмента хранится в память до выключения компа (могу ошибаться) Я эту операцию для себя называю "привязкой инструмента"
http://linuxcnc.org/docs/html/gcode/gco ... ec:G10-L1_
Можно записать, измеряли ли мы текущий инструмент, и если не измеряли - вставать на паузу и ждать нажатия кнопки.solo писал(а):после срабатывания датчика в память записываться длинна инструмента и ЛЕД на панели меняет цвет!!!
О, еще один понял истину !solo писал(а):Наверное вся прелесть LCNC в том что каждый пользователь может адаптировать под себя и свои потребности данную программу.
- solo
- Мастер
- Сообщения: 1374
- Зарегистрирован: 20 окт 2011, 18:39
- Репутация: 272
- Настоящее имя: Юрий Соловьев
- Откуда: Украина Харьков
- Контактная информация:
Re: Авто ноль по Z в EMC
Таблица инструментов наверное полезна при автоматической смене инструментов ИМХО. А если стоит задача; в цангу в ручную вставить новую фрезу, зажать ее колючем, и быстренько сделать привязку системы координат станка по Z то наверное манипуляции с датчиком по Z самый оптимальный вариант.Nick писал(а):Ее можно писать в таблицу инструмента, чтобы не хранить в переменных. (через G10 L1 или G10 L10)
Еще хотел добавить по поводу своей панели
Если при выполнении программы обработки детали возникала необходимость замены фрезы (я часто работаю с черным металлом ) то поступаю следующим образом.valor писал(а): скажем после десятого прогона программы надо поменять фрезу, но с тем-же номером инструмента - (затупилась или сломалась)
1 нажимаю кнопку "пауза" потом "исполнить следующую строку" , потом "стоп" короче надо чтобы строка программы управления на всяк случай выполнилась до конца
2 на дополнительной панели нажимаю кнопку "ТОЧКА"-- позволяет запомнить текущую координату станка
3 В ручном управлении вывожу фрезу из зоны обработки
4 меняю фрез
5 делаю привязку по высоте
6 нажимая на кнопки res X или Y или Z на дополнительной панели мы быстро возвращаемся в зону обработки Главное при этом не на что не налететь.
7 в меню axis нажимаем выполнить с "данной строки" и все поехали дальше
- NightV
- Почётный участник
- Сообщения: 6602
- Зарегистрирован: 30 дек 2011, 09:14
- Репутация: 2279
- Настоящее имя: Владимир Айрапетян
- Откуда: Israel
- Контактная информация:
Re: Авто ноль по Z в EMC
у меня в окуме такая фишка есть , нажимаю паузу а потом кнопку среднюю кнопку что на картинке,solo писал(а):1 нажимаю кнопку "пауза" потом "исполнить следующую строку" , потом "стоп" короче надо чтобы строка программы управления на всяк случай выполнилась до конца
2 на дополнительной панели нажимаю кнопку "ТОЧКА"-- позволяет запомнить текущую координату станка
3 В ручном управлении вывожу фрезу из зоны обработки
после этого делаю что хочу, верчу туретой (барабаном), останавливаю шпиндель, двигаю по X Z куда хочется,
после всех манипуляций нужно только запустить шпиндель и вернуть инструмент в барабане который был (иначе не выходит из этого режима)
после нажимаю "Sequence restart" и станок сам возвращается в место где был когда я нажал на паузу (разумеется при этом могу контролировать скорость меремещения) и стоит в режиме паузы, снимаю с паузы и поехали работать дальше, работает даже когда исполняется цикл, например нарезание резьбы.
кроме работы с мечиком так как шпиндель продолжает крутится и нельзя нажимать паузу
Последний раз редактировалось NightV 11 окт 2013, 17:28, всего редактировалось 1 раз.
Всё просто! если знаешь КАК!
- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: Авто ноль по Z в EMC
А как он возвращяется? По какой траектории?NightV писал(а):после нажимаю "Sequence restart" и станок сам возвращается в место где был когда я нажал на паузу
- NightV
- Почётный участник
- Сообщения: 6602
- Зарегистрирован: 30 дек 2011, 09:14
- Репутация: 2279
- Настоящее имя: Владимир Айрапетян
- Откуда: Israel
- Контактная информация:
Re: Авто ноль по Z в EMC
по ближайшейNick писал(а):А как он возвращяется? По какой траектории?
Всё просто! если знаешь КАК!
- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: Авто ноль по Z в EMC
Опасно
- PKM
- Почётный участник
- Сообщения: 4263
- Зарегистрирован: 31 мар 2011, 18:11
- Репутация: 705
- Настоящее имя: Андрей
- Откуда: Украина
- Контактная информация:
Re: Авто ноль по Z в EMC
Кстати в LinuxCNC на днях сделали ручное перемещение во время паузы
- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: Авто ноль по Z в EMC
А как потом восстанавливается? (особенно интересует восстновление G02, у которого ij зависят от текушего положения...)
Эх, еще бы MDI...
Эх, еще бы MDI...
- PKM
- Почётный участник
- Сообщения: 4263
- Зарегистрирован: 31 мар 2011, 18:11
- Репутация: 705
- Настоящее имя: Андрей
- Откуда: Украина
- Контактная информация:
Re: Авто ноль по Z в EMC
Я еще не пробовал. Кстати, пауза в середине команды возможна?
- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: Авто ноль по Z в EMC
Вроде да...
-
- Новичок
- Сообщения: 28
- Зарегистрирован: 10 окт 2012, 10:50
- Репутация: 1
- Контактная информация:
Re: Авто ноль по Z в EMC
А что означают эти строки???
Код: Выделить всё
#<_ToolZ>=#5063
G43.1 z[#<_ToolZ> - #1000]
- solo
- Мастер
- Сообщения: 1374
- Зарегистрирован: 20 окт 2011, 18:39
- Репутация: 272
- Настоящее имя: Юрий Соловьев
- Откуда: Украина Харьков
- Контактная информация:
Re: Авто ноль по Z в EMC
наглядная демонстрация кода G43Simmer писал(а):А что означают эти строки???Код: Выделить всё
#<_ToolZ>=#5063 G43.1 z[#<_ToolZ> - #1000]
FAQ по Gcode, примеры #164
Могу ошибаться но в ячейке памяти #5063 хранятся относительные текущие координаты позиции Z
ToolZ это промежуточная ячейка для хранения
-
- Новичок
- Сообщения: 28
- Зарегистрирован: 10 окт 2012, 10:50
- Репутация: 1
- Контактная информация:
Re: Авто ноль по Z в EMC
Народ, выручайте... У меня уже ни каких сил нету. Не могу я победить эту смену инструмента.
В HAL присутствуют строки
В INI есть
Файл tool_change.ngc следующего содержания
Что делаю дальше... Обнуляю станок по концевикам, переезжаю в некоторую другую позицию, делаю отступ, пытаюсь выполнить O-Code и получаю следующую ошибку. Что я делаю не так????
В HAL присутствуют строки
Код: Выделить всё
loadusr -W hal_manualtoolchange
net tool-change iocontrol.0.tool-change => hal_manualtoolchange.change
net tool-changed iocontrol.0.tool-changed <= hal_manualtoolchange.changed
net tool-number iocontrol.0.tool-prep-number => hal_manualtoolchange.number
net tool-prepare-loopback iocontrol.0.tool-prepare => iocontrol.0.tool-prepared
Код: Выделить всё
TOOL_CHANGE_QUILL_UP = 1
TOOL_CHANGE_POSITION = 32 48 0
Код: Выделить всё
O<toolchange> sub
T#1M6 (поменяли инструмент нажали продолжать)
G53 G0 Z10
G53 G0 X32 Y48 (едем в точку датчика инструмента)
F100 (Устанавливаем скорость поиска)
G38.2 Z-100 (едем в сторону датчика до касания)
(после касания отъезжаем на 10мм вверх)
G91 (относительные координаты)
G0 Z-10
F1 (снова ищем датчик но на маленькой скорости)
G38.2 Z-20
G90 (абсолютные координаты)
G10 L10 P#1 Z0
G43
O<toolchange> endsub