Страница 1 из 1

Быстрый алгоритм поиска поверхности в Масh3- НЕLP!

Добавлено: 28 сен 2014, 20:00
andre_bel
Добрый день!
ПРОШУ помощи, т.к в программировании пока не особо силен!

Суть проблемы:
заканчиваю постройку гвоздезабивного станка для производства тары. (кому интересно - в личку tehincom@mail.ru - пообщаемся)
Рабочий инструмент - пневматический гвоздезабивной пистолет. Пистолет стреляет, когда собачка бойка прижимается к материалу. Если вовремя не поднять пистолет - стрельнет еще раз. (это на станке с ЧПУ совсем не хорошо)

Прикрутил к собачке датчик и завел его на INPUT1
Создал макрос, например М331. Он будет вызываться из основного кода и выполнять задачу "БЫСТРО опустить пистолет до срабатывания датчика-(ВЫСТРЕЛ)- и БЫСТРО поднять"
(Сразу скажу - пробовал стандартный механизм поиска поверхности(коррекции длины инструмента) с использованием G31 - НЕ ПОДХОДИТ. Использую контроллер PLCM - а у него своя обработка G31 и он дико тормозит после сработки датчика пока с него не "сползет")

Итак, желаемый алгоритм работы такой внутри макроса:

Вне зависимости от состояния датчика начать движение вниз до срабатывания датчика.
Как только датчик сработал - читать координату Z и сразу же отъехать вверх от этой координаты на заданное расстояние.
Cкорость опускания/подъема должна устанавливаться внутри скрипта.

Вроде все просто, но я еще не научился грамотно программировать.
Прошу помощи.
СПАСИБО!







Возникла необходимость написания скрипта для МАСH3 по типу "поиск поверхности".

Re: Быстрый алгоритм поиска поверхности в Масh3- НЕLP!

Добавлено: 29 сен 2014, 03:05
AlexTskan
механизм brain mach'а в помощь. сигнал с датчика на вход таймера, таймер управляет переменной - а макрос в программе следит за переменной и выполняет движение.
а нельзя ли выстрелом управлять внешне, а не пользовать механизм автоматики? я думаю это надёжнее...

Re: Быстрый алгоритм поиска поверхности в Масh3- НЕLP!

Добавлено: 29 сен 2014, 09:50
andre_bel
Спасибо за ответ!

Тут момент такой.
Можно прикрутить к пистолету на спусковой крючок электромагнит и завязать на кокой-нибудь М3, НО!
пистолет стрельнет, только тогда, когда боек будет прижат к заготовке.

Поэтому и есть задача "Опустить, найти поверхность по срабатыванию датчика, (он сам при прижатии стрельнет) и подняться".

По жизни заготовки могут быть не совсем одинаковой толщины. Поэтому программировать координату Z не представляется возможным. Надо опускаться до заготовки и искать координату касания.


А по механизму брайна - я к сожалению не силен.
(Начитавшись, знаю что еще есть macropump...
А может быть использовать в макросе циклы Do loop и отслеживать состояние IsActive( INPUT1) ? )

Не могли бы Вы набросать более подробно что и как нужно запрограммировать в брайне?.

СПАСИБО!

Re: Быстрый алгоритм поиска поверхности в Масh3- НЕLP!

Добавлено: 08 окт 2014, 21:19
Andrey_tlt
Недавно подобную задачу решал, можно вот такой макрос написать:

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

'переменные для команды JogOn()
Xaxis	=	0
Yaxis	=	1
Zaxis	=	2
Plus	=	0
Minus	=	1


	JogOn(Zaxis, Minus)	'включить движение в сторону детали (в минус)
	While (isActive(Input1) = 0)		'движение продолжается пока датчик не активен - вход Input1
	Wend
	

JogOff(Zaxis)			'Остановка движения, когда датчик активен
Sleep (10)             'пауза для остановки движения 10 ms (можно меньше поставить)


Code "G0 Z0 "        'вернуться по Z в 0 (указать свое значение)

скорость движения в сторону детали будет равна скорости ручного перемещения - как от кнопок
Задать скорость внутри макроса для команды JogOn явно не получится, только в % от максимальной скорости.
Корректно прервать команды G0 или G1 при срабатывании датчика тоже не получается....
Спрашивал на разных форумах - других вариантов условного движения никто не знает.
в руководстве по программированию скриптов тоже ничего подходящего не нашел...
Если найдется другое решение - напишите - интересно.

Re: Быстрый алгоритм поиска поверхности в Масh3- НЕLP!

Добавлено: 12 окт 2014, 18:32
artem44ik
У меня на плазме в макросе м3 прописан поиск металла,завтра буду на работе скину сюда.

Re: Быстрый алгоритм поиска поверхности в Масh3- НЕLP!

Добавлено: 13 окт 2014, 15:07
artem44ik
Code "G00 Z 0"
Code "G31 Z -100"
While ismoving()
Wend
Code "G92 Z 0"
Code "G00 Z 8"
While ismoving()
Wend
DoSpinCW()

Re: Быстрый алгоритм поиска поверхности в Масh3- НЕLP!

Добавлено: 13 окт 2014, 15:08
artem44ik
Вот так в макросе м03 прописан поиск металла

Re: Быстрый алгоритм поиска поверхности в Масh3- НЕLP!

Добавлено: 14 окт 2014, 08:20
Andrey_tlt
Это обычный поиск через Probe и G31,
а в первом посте написано, что G31 использовать не желательно, а почему?
Если из-за скорости, то нужно написать G31 F500 Z-100 - задать скорость перемещения при поиске датчика.
Если из-за занятого входа Probe, то попробуй мой макрос - должно работать.
кстати, в последних прошивках для PLCM сделан нормальный поиск G31 - едет до срабатывания датчика и останавливается. А в старых прошивках для G31, похоже, был взят алгоритм выхода в Home - доезжал до датчика, останавливался, и съезжал с датчика примерно на 20% скорости.