Список скриптов/макросов для Mach

Mach, популярные и не очень CAD, CAM. Обсуждение и разработка программ для управления станками.
Аватара пользователя
Сергей=
Мастер
Сообщения: 580
Зарегистрирован: 31 июл 2012, 22:28
Репутация: 9
Контактная информация:

Re: Список скриптов/макросов для Mach

Сообщение Сергей= »

NightV писал(а):ага это выход на LPT порту, на реле или еще чего, указывается в настройках мача. щас уже не помню гдеа вот:ActivateSignal - включить DeActivateSignal - выключить
Спасибо большое, буду пробовать :)
Аватара пользователя
Сергей=
Мастер
Сообщения: 580
Зарегистрирован: 31 июл 2012, 22:28
Репутация: 9
Контактная информация:

Re: Список скриптов/макросов для Mach

Сообщение Сергей= »

А в этом скрипте можно управление ещё 2-мя осями прописать и координаты по которым они будут шагать , для подачи инструмента, а то у меня фрезерный стол маленький слишком 700мм на 180мм всего ?
aftaev
Зачётный участник
Зачётный участник
Сообщения: 34042
Зарегистрирован: 04 апр 2010, 19:22
Репутация: 6192
Откуда: Казахстан.
Контактная информация:

Re: Список скриптов/макросов для Mach

Сообщение aftaev »

Если оси прописаны в Маче то должно получиться
Дилетанту сложные вещи кажутся очень простыми, и только профессионал понимает насколько сложна самая простая вещь
Кто хочет - ищет возможности, кто не хочет - ищет оправдание.
Найди работу по душе и тебе не придется работать.
Аватара пользователя
Сергей=
Мастер
Сообщения: 580
Зарегистрирован: 31 июл 2012, 22:28
Репутация: 9
Контактная информация:

Re: Список скриптов/макросов для Mach

Сообщение Сергей= »

aftaev писал(а):Если оси прописаны в Маче то должно получиться
А прописаны ,это как понять, в выводах моторов что-ли включить их надо, или что-то ещё надо сделать ?
aftaev
Зачётный участник
Зачётный участник
Сообщения: 34042
Зарегистрирован: 04 апр 2010, 19:22
Репутация: 6192
Откуда: Казахстан.
Контактная информация:

Re: Список скриптов/макросов для Mach

Сообщение aftaev »

это значит как прописаны оси XYZ вот так же их нужно прописать
Дилетанту сложные вещи кажутся очень простыми, и только профессионал понимает насколько сложна самая простая вещь
Кто хочет - ищет возможности, кто не хочет - ищет оправдание.
Найди работу по душе и тебе не придется работать.
Аватара пользователя
mcmega
Кандидат
Сообщения: 41
Зарегистрирован: 10 июн 2013, 20:00
Репутация: 4
Настоящее имя: Олег
Откуда: Беларусь
Контактная информация:

Re: Список скриптов/макросов для Mach

Сообщение mcmega »

Уважаемые Гуру систем с ЧПУ, нужна Ваша помощь!!!
Я составил макрос М6Start из 3 разных макросов + доработка для автоматической смены инструмента и привязки его к "0", а так же при Т0 М6 происходит сброс инструмента на свою позицию. Таким образом шпиндель всегда свободен.
Он почти работает. Но есть большая проблема. Не могу понять почему, но при определении длины фрезы (при втором измерении на более медленной подаче) у меня едет не ось Z, а почему то Y. Причём это не всегда, иногда едет как надо, но зачастую неправильно.
Большая просьба глянуть макрос, что я там накосячил!?
Это происходит в самом конце макроса на строчках
Code "F100" 'Замедляем подачу до 50мм/мин
ZNew = GetDro(2) - 6
Code "G31 Z" &ZNew 'Опускаем инструмент до касания

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

'===========================================================================================================
Sub Main 
OldTool = GetOEMDRO	(1200)		'Tool In spindle DRO You must add this to your settings screen
x = GetToolChangeStart	(0)
y = GetToolChangeStart	(1)
z = GetToolChangeStart	(2)
a = GetToolChangeStart	(3)
b = GetToolChangeStart	(4)
c = GetToolChangeStart	(5)
Tool = GetSelectedTool	()
'===========================================================================================================
		'Макрос для автоматической смены инструмента с учётом его длины
'===========================================================================================================
NewTool = tool
MaxToolNum = 3				'Максимальное число инструментов
ToolDown = 50					'Высота для захвата и выпуска инструмента
ToolUp =  100					'Высота переезда между инструментами
If NewTool = OldTool Then 
Exit Sub
End If
While NewTool > MaxToolNum			'Проверка номера инструмента
NewTool = Question ("Введите номер другого инструмента:")	'Если номер неверный, выдаёт сообщение
Wend
	'Сброс старого инструмента
Code "G00 G53 Z" & ToolUp			'Подъём по Z на высоту переезда между инструментами
While IsMoving()				'Ожидаем завершения переезда
Wend
Call MovePos(OldTool)			'Вызов поиска координат старого инструмента
Code "G53 Z" & ToolDown			'Опускание по Z на высоту для захвата и выпуска инструмента
Code "G4 P.75"				        'Ожидаем 0,75 сек
While IsMoving()				'Ожидаем завершения переезда
Wend
ActivateSignal (Output2)			'Управление клапаном для выпуска инструмента
Code "G4 P1.0"				        'Пауза для надёжного выпуск инструмента
'SystemWaitFor				        'Дождаться сработки концевого выключателя
	'Захват нового инструмента
Code "G53 Z" & ToolUp			'Подъём по Z на высоту переезда между инструментами
While IsMoving()				'Ожидаем завершения переезда
Wend
If NewTool = 0 Then				'Если новый инструмента - 0, то ничего не делаем
DeActivateSignal (Output2)		'Управление клапаном для захвата инструмента
Call SetUserDRO (1200,NewTool)
SetCurrentTool(NewTool)
Exit Sub					        'Старый инструмент возвращается на место (сделано в предыдущем блоке)
End If
Call MovePos(NewTool)			'Вызов поиска координат нового инструмента
Code "G53 Z" & ToolDown			'Опускание по Z на высоту для захвата и выпуска инструмента
Code "G04 P.75"				'Ожидаем 0,75 сек
While IsMoving()				'Ожидаем завершения переезда
Wend
DeActivateSignal (Output2)		'Управление клапаном для захвата инструмента
Code "G04 P1.0"				'Пауза для надёжного для захвата инструмента
While IsMoving()				'Ожидаем завершения переезда
Wend
Code "G53 Z" & ToolUp			'Подъём по Z на высоту переезда между инструментами
Call SetUserDRO (1200,NewTool)
SetCurrentTool(NewTool)
Call ToolLength
End Sub
	'Определение координат инструмента
Sub MovePos(ByVal ToolNumber As Integer)
Select Case ToolNumber			'Находим координаты инструмента
Case Is = 1					'Инструмент №1
Xpos =		0				'Значение по X
YPos =		50				'Значение по Y
Case Is = 2					'Инструмент №2
Xpos =		0				'Значение по X
YPos =		100				'Значение по Y
Case Is = 3					'Инструмент №3
Xpos =		0				'Значение по X
YPos =		150				'Значение по Y
End Select
Code "G53 G00 X" & XPos & "Y" & YPos	'Переезд к инструменту
While IsMoving()				        'Ожидаем завершения переезда
Wend
End Sub
	'Определение длины инструмента
Sub ToolLength
ChX = 0					'Положение датчика длины инструмента по X
ChY = 0					'Положение датчика длины инструмента по Y
PlateOffset = 50				'Высота датчика длины инструмента
Zup = 50					'Расстояние на которое отойдет фреза после коррекции
MaxZPlus = 250				'Максимальный ход станка по оси Z
Code "G04 P0.1"				'Пауза 0,1 сек.
Code "G53 G00 X" & ChX & "Y" & ChY	'Переезд по XY в позицию датчика длины инструмента
While IsMoving()				'Ожидаем завершения переезда
Wend
CurrentFeed = GetOemDRO(818)		'Запоминаем текущюю скорость, для того чтобы восстановить после коррекции    
Code "F1000"					'Задаём скорость подачи до касания инструментом
ZNew = GetDro(2) - MaxZPlus			
Code "G31 Z" &ZNew				'Опускаем инструмент до касания
While IsMoving()				'Ожидаем касания
Wend
ZNew = GetVar(2002)				'Читаем точку касания
Code "G00 Z" &ZNew + 5			'Поднимаемся вверх на 5мм для более точного измерения
While IsMoving()				'Ожидаем завершения переезда
Wend	
Code "F100"					'Замедляем подачу до 50мм/мин
ZNew = GetDro(2) - 10
Code "G31 Z" & ZNew				'Опускаем инструмент до касания
While IsMoving()				'Ожидаем касания
Wend
If PlateOffset <> 0 Then
Call SetDro (2, PlateOffset)		'Запись в окно Z высоту датчика, тем самым откорректировав позицию по Z
Code "G04 P1"					'Пауза для успешной записи значения в DRO
ZNew = PlateOffset + Zup			'Находим точку подьема
Code "G00 Z" &ZNew				'Поднимаем на высоту отхода после коррекции
While IsMoving()
Wend
Code "(Смена инструмента выполнена)"	'послать сообщение в статус        
End If
Code "F" &CurrentFeed 			'Возвращаем установленное значение подачи
Code "G04 P0.1"				'Пауза 0,1 сек.
End Sub

Main
aftaev
Зачётный участник
Зачётный участник
Сообщения: 34042
Зарегистрирован: 04 апр 2010, 19:22
Репутация: 6192
Откуда: Казахстан.
Контактная информация:

Re: Список скриптов/макросов для Mach

Сообщение aftaev »

mcmega писал(а):Это происходит в самом конце макроса на строчках
Code "F100" 'Замедляем подачу до 50мм/мин
ZNew = GetDro(2) - 6
Code "G31 Z" &ZNew 'Опускаем инструмент до касания
или я слепой или код не весь ;)
Дилетанту сложные вещи кажутся очень простыми, и только профессионал понимает насколько сложна самая простая вещь
Кто хочет - ищет возможности, кто не хочет - ищет оправдание.
Найди работу по душе и тебе не придется работать.
Аватара пользователя
NightV
Почётный участник
Почётный участник
Сообщения: 6599
Зарегистрирован: 30 дек 2011, 09:14
Репутация: 2279
Настоящее имя: Владимир Айрапетян
Откуда: Israel
Контактная информация:

Re: Список скриптов/макросов для Mach

Сообщение NightV »

aftaev писал(а):или я слепой или код не весь
строка 100
только там
ZNew = GetDro(2) - 10
вместо
ZNew = GetDro(2) - 6
Всё просто! если знаешь КАК!
Аватара пользователя
mcmega
Кандидат
Сообщения: 41
Зарегистрирован: 10 июн 2013, 20:00
Репутация: 4
Настоящее имя: Олег
Откуда: Беларусь
Контактная информация:

Re: Список скриптов/макросов для Mach

Сообщение mcmega »

Спасибо, что отозвались! Происходит на 17 строке снизу. Как ни пробую ничего не получается...
aftaev
Зачётный участник
Зачётный участник
Сообщения: 34042
Зарегистрирован: 04 апр 2010, 19:22
Репутация: 6192
Откуда: Казахстан.
Контактная информация:

Re: Список скриптов/макросов для Mach

Сообщение aftaev »

mcmega писал(а):Как ни пробую ничего не получается...
Я замечал что Мач умеет странным образом "перескакивать" некоторые команды не дожидаясь их выполнения.
Попробуй Sleep 100 воткнуть. Примерно так:

While IsMoving() ' ждем выполнения
Sleep 100
Wend
Дилетанту сложные вещи кажутся очень простыми, и только профессионал понимает насколько сложна самая простая вещь
Кто хочет - ищет возможности, кто не хочет - ищет оправдание.
Найди работу по душе и тебе не придется работать.
Аватара пользователя
NightV
Почётный участник
Почётный участник
Сообщения: 6599
Зарегистрирован: 30 дек 2011, 09:14
Репутация: 2279
Настоящее имя: Владимир Айрапетян
Откуда: Israel
Контактная информация:

Re: Список скриптов/макросов для Mach

Сообщение NightV »

mcmega писал(а):Code "G04 P0.1"            'Пауза 0,1 сек.
кстате да, забыл сказать
Code "G04 P0.1"
лучше поменять на,
Sleep 100
команда выполеяется с милли-секундах
1 секунда = 1000
чтоб меньше конвертаций было
Всё просто! если знаешь КАК!
Аватара пользователя
mcmega
Кандидат
Сообщения: 41
Зарегистрирован: 10 июн 2013, 20:00
Репутация: 4
Настоящее имя: Олег
Откуда: Беларусь
Контактная информация:

Re: Список скриптов/макросов для Mach

Сообщение mcmega »

Всем огромное спасибо! Перезагрузил комп и почему то всё заработало как надо :wik: Но на всякий случай везде добавил Sleep 100 и поменял паузу на Sleep. Максимально добавил комментарии. Можно ли в данном алгоритме не создавать поле GetOEMDRO(1200), а использовать стандартное окно с кодом 24?
Выкладываю практически итоговый рабочий вариант (не решено с полем GetOEMDRO(1200) и при выборе какого либо инструмента, при старом инструменте 0, происходит холостое опускание и поднятие шпинделя):

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

'===========================================================================================================
Sub Main 
OldTool = GetOEMDRO	(1200)		'Tool In spindle DRO You must add this to your settings screen
x = GetToolChangeStart	(0)
y = GetToolChangeStart	(1)
z = GetToolChangeStart	(2)
a = GetToolChangeStart	(3)
b = GetToolChangeStart	(4)
c = GetToolChangeStart	(5)
Tool = GetSelectedTool	()
'===========================================================================================================
		'Макрос для автоматической смены инструмента с учётом его длины
'===========================================================================================================
NewTool = tool
MaxToolNum = 9				'Максимальное число инструментов
ToolDown = 50					'Высота для захвата и выпуска инструмента
ToolUp =  100					'Высота переезда между инструментами
If NewTool = OldTool Then 
Exit Sub
End If
While NewTool > MaxToolNum			'Проверка номера инструмента
NewTool = Question ("Введите номер другого инструмента:")	'Если номер неверный, выдаём сообщение
Wend
	'Сброс старого инструмента
Code "G00 G53 Z" & ToolUp			'Подъём по Z на высоту переезда между инструментами
While IsMoving()				'Ожидаем завершения переезда
Sleep 100					'Пауза 0,1 сек.
Wend
Call MovePos(OldTool)				'Вызов поиска координат старого инструмента
Code "G53 Z" & ToolDown			'Опускание по Z на высоту для захвата и выпуска инструмента
Sleep 500					'Ожидаем 0,5 сек.
While IsMoving()				'Ожидаем завершения переезда
Sleep 100					'Пауза 0,1 сек.
Wend
ActivateSignal (Output2)			'Управление клапаном для выпуска инструмента
Sleep 1000					'Пауза для надёжного выпуск инструмента
'SystemWaitFor				'Дождаться сработки концевого выключателя
	'Захват нового инструмента
Code "G53 Z" & ToolUp			'Подъём по Z на высоту переезда между инструментами
While IsMoving()				'Ожидаем завершения переезда
Sleep 100					'Пауза 0,1 сек.
Wend
If NewTool = 0 Then				'Если новый инструмента - 0, то ничего не делаем
DeActivateSignal (Output2)			'Управление клапаном для захвата инструмента
Call SetUserDRO (1200,NewTool)
SetCurrentTool(NewTool)
Exit Sub					'Старый инструмент возвращается на место (сделано в предыдущем блоке)
End If
Call MovePos(NewTool)			'Вызов поиска координат нового инструмента
Code "G53 Z" & ToolDown			'Опускание по Z на высоту для захвата и выпуска инструмента
Sleep 500					'Ожидаем 0,5 сек.
While IsMoving()				'Ожидаем завершения переезда
Wend
DeActivateSignal (Output2)			'Управление клапаном для захвата инструмента
Sleep 1000					'Пауза 1 сек. для надёжного для захвата инструмента
While IsMoving()				'Ожидаем завершения переезда
Sleep 100					'Пауза 0,1 сек.
Wend
Code "G53 Z" & ToolUp			'Подъём по Z на высоту переезда между инструментами
Call SetUserDRO (1200,NewTool)
SetCurrentTool(NewTool)
Call ToolLength
End Sub
	'Определение координат инструмента
Sub MovePos(ByVal ToolNumber As Integer)
Select Case ToolNumber			'Находим координаты инструмента
Case Is = 1					'Инструмент №1
Xpos =		0				'Значение по X
YPos =		50				'Значение по Y
Case Is = 2					'Инструмент №2
Xpos =		0				'Значение по X
YPos =		100				'Значение по Y
Case Is = 3					'Инструмент №3
Xpos =		0				'Значение по X
YPos =		150				'Значение по Y
Case Is = 4					'Инструмент №4
Xpos =		0				'Значение по X
YPos =		200				'Значение по Y
Case Is = 5					'Инструмент №5
Xpos =		0				'Значение по X
YPos =		250				'Значение по Y
Case Is = 6					'Инструмент №6
Xpos =		0				'Значение по X
YPos =		300				'Значение по Y
Case Is = 7					'Инструмент №7
Xpos =		0				'Значение по X
YPos =		350				'Значение по Y
Case Is = 8					'Инструмент №8
Xpos =		0				'Значение по X
YPos =		400				'Значение по Y
Case Is = 9					'Инструмент №9
Xpos =		0				'Значение по X
YPos =		450				'Значение по Y
End Select
Code "G53 G00 X" & XPos & "Y" & YPos	'Переезд к инструменту
While IsMoving()				'Ожидаем завершения переезда
Sleep 100					'Пауза 0,1 сек.
Wend
End Sub
	'Определение длины инструмента
Sub ToolLength
ChX = 0					'Положение датчика длины инструмента по X
ChY = 0					'Положение датчика длины инструмента по Y
PlateOffset = 50				'Высота датчика длины инструмента
Zup = 50					'Расстояние на которое отойдет фреза после коррекции
MaxZPlus = 250				'Максимальный ход станка по оси Z
Sleep 100					'Пауза 0,1 сек.
Code "G53 G00 X" & ChX & "Y" & ChY	'Переезд по XY в позицию датчика длины инструмента
While IsMoving()				'Ожидаем завершения переезда
Sleep 100					'Пауза 0,1 сек.
Wend
CurrentFeed = GetOemDRO(818)		'Запоминаем текущюю скорость, для того чтобы восстановить после коррекции    
Code "F1000"					'Задаём скорость подачи до касания инструментом
ZNew = GetDro(2) - MaxZPlus			
Code "G31 Z" & ZNew				'Опускаем инструмент до касания
While IsMoving()				'Ожидаем касания
Sleep 100					'Пауза 0,1 сек.
Wend
ZNew = GetVar(2002)				'Читаем точку касания
Code "G00 Z" &ZNew + 3			'Поднимаемся вверх на 5мм для более точного измерения
While IsMoving()				'Ожидаем завершения переезда
Sleep 100					'Пауза 0,1 сек.
Wend	
Code "F100"					'Замедляем подачу до 50мм/мин
ZNew = GetDro(2) - 6
Code "G31 Z" & ZNew				'Опускаем инструмент до касания
While IsMoving()				'Ожидаем касания
Sleep 100					'Пауза 0,1 сек.
Wend
If PlateOffset <> 0 Then
Call SetDro (2, PlateOffset)			'Запись в окно Z высоту датчика, тем самым откорректировав позицию по Z
Sleep 1000					'Пауза 1 сек. для успешной записи значения в DRO
ZNew = PlateOffset + Zup			'Находим точку подьема
Code "G00 Z" &ZNew				'Поднимаем на высоту отхода после коррекции
While IsMoving()				'Ожидаем завершения переезда
Sleep 100					'Пауза 0,1 сек.
Wend
Code "(Смена инструмента выполнена)"	'послать сообщение в статус        
End If
Code "F" &CurrentFeed 			'Возвращаем установленное значение подачи
Sleep 100					'Пауза 0,1 сек.
End Sub
Main
Вложения
M6Start.rar
Макрос M6Start
(1.74 КБ) 702 скачивания
Аватара пользователя
mcmega
Кандидат
Сообщения: 41
Зарегистрирован: 10 июн 2013, 20:00
Репутация: 4
Настоящее имя: Олег
Откуда: Беларусь
Контактная информация:

Re: Список скриптов/макросов для Mach

Сообщение mcmega »

Подскажите, как сделать кнопку-триггер (как управление шпинделем), нажал - включилось реле, ещё раз нажал - отключилось?
aftaev
Зачётный участник
Зачётный участник
Сообщения: 34042
Зарегистрирован: 04 апр 2010, 19:22
Репутация: 6192
Откуда: Казахстан.
Контактная информация:

Re: Список скриптов/макросов для Mach

Сообщение aftaev »

Рисуешь индикатор(Led) и кнопку(Button).
123.jpg (8383 просмотра) <a class='original' href='./download/file.php?id=31554&mode=view' target=_blank>Загрузить оригинал (227.73 КБ)</a>
Индикатору присваиваешь ОЕМ код = 1000.
Далее в кнопке прописываешь такое:

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

If GetUserLED (1000) then
Call SetUserLED (1000,0)
   Else
Call SetUserLED (1000,1)
End If
И усё ;)
Дилетанту сложные вещи кажутся очень простыми, и только профессионал понимает насколько сложна самая простая вещь
Кто хочет - ищет возможности, кто не хочет - ищет оправдание.
Найди работу по душе и тебе не придется работать.
Аватара пользователя
mcmega
Кандидат
Сообщения: 41
Зарегистрирован: 10 июн 2013, 20:00
Репутация: 4
Настоящее имя: Олег
Откуда: Беларусь
Контактная информация:

Re: Список скриптов/макросов для Mach

Сообщение mcmega »

Спасибо, всё заработало!!!
Я сейчас создаю свой Скринсет для Mach3 и макросы (помощники, настраиваемые через окна DRO) для вычисления:
1. Центра заготовки
2. Центра отверстия
3. Угла заготовки
4. Создания подпрограмм для выравнивания плоскости заготовки
5. Мастер сверлений
и т.д.
Меня интересует такой момент, как можно сделать так, чтоб при сработке концевого датчика (X++, Y++...) и других входов Mach3 отображал их состояние (Ledы), а в режим E-Stop не уходил, так как при настройке это очень мешает? Скажем так, нажал кнопку "Режим настроек" и Mach3 начинает отображать в On-Line состояние всех входов, выходов и т.д. На данный момент у меня получается, что при сработке концевика, прога сразу же уходит в E-Stop.
aftaev
Зачётный участник
Зачётный участник
Сообщения: 34042
Зарегистрирован: 04 апр 2010, 19:22
Репутация: 6192
Откуда: Казахстан.
Контактная информация:

Re: Список скриптов/макросов для Mach

Сообщение aftaev »

mcmega писал(а):Меня интересует такой момент, как можно сделать так, чтоб при сработке концевого датчика (X++, Y++...) и других входов Mach3 отображал их состояние (Ledы), а в режим E-Stop не уходил, так как при настройке это очень мешает?
У Мача есть специальная закладка где высвечиваются если не все, то многие сигналы и состояние ЛПТ порта
123.png (8324 просмотра) <a class='original' href='./download/file.php?id=31692&mode=view' target=_blank>Загрузить оригинал (197.94 КБ)</a>
Дилетанту сложные вещи кажутся очень простыми, и только профессионал понимает насколько сложна самая простая вещь
Кто хочет - ищет возможности, кто не хочет - ищет оправдание.
Найди работу по душе и тебе не придется работать.
Аватара пользователя
Predator
Мастер
Сообщения: 9583
Зарегистрирован: 18 июл 2013, 18:26
Репутация: 2531
Контактная информация:

Re: Список скриптов/макросов для Mach

Сообщение Predator »

aftaev, Это твой скриншот? С каким-то полуруссифицированным мачем или нарыл в инете? :hehehe:
Аватара пользователя
mcmega
Кандидат
Сообщения: 41
Зарегистрирован: 10 июн 2013, 20:00
Репутация: 4
Настоящее имя: Олег
Откуда: Беларусь
Контактная информация:

Re: Список скриптов/макросов для Mach

Сообщение mcmega »

Да, я в курсе, но и на стандартном экране такая же ерунда. При сработке датчика включается E-Stop и отображение состояния на Led корректно не происходит. Контроллер у меня по Ethernet от Purelogic PLCM-E3 http://purelogic.ru/shop/elektronnye_ko ... hernetusb/
aftaev
Зачётный участник
Зачётный участник
Сообщения: 34042
Зарегистрирован: 04 апр 2010, 19:22
Репутация: 6192
Откуда: Казахстан.
Контактная информация:

Re: Список скриптов/макросов для Mach

Сообщение aftaev »

при настройке обычно Естоп прописываю на 100пин чтоб не мешал ;)
Дилетанту сложные вещи кажутся очень простыми, и только профессионал понимает насколько сложна самая простая вещь
Кто хочет - ищет возможности, кто не хочет - ищет оправдание.
Найди работу по душе и тебе не придется работать.
Аватара пользователя
mcmega
Кандидат
Сообщения: 41
Зарегистрирован: 10 июн 2013, 20:00
Репутация: 4
Настоящее имя: Олег
Откуда: Беларусь
Контактная информация:

Re: Список скриптов/макросов для Mach

Сообщение mcmega »

1. E-Stop нужен, но при настройке его хочу автоматически отключать. А поподробнее, это как? У меня он на контроллере жёстко прописывается на 3 порт 13 пин.
2. Для чего нужны вход Jog X++ и т.д.?
3. Я установил на каретки картриджи автосмазки. Хотелось бы сделать кнопку "Автосмазка". Суть её такова: Последовательно, по всем осям необходимо сделать переезд по всему диапазону рабочего поля (начиная с текущего), например едим по X до концевого выключателя (не до Home, а другое направление), после сработки его (игнорируя E-Stop), отправляем ось в Home и так далее для всех осей. Как это сделать?
Помогите плиз, я в написании скриптов пока не селён, поэтому за основы беру готовые и на них учусь. К тому же не могу найти названия событий и входов/выходов для Mach3, как их прописывать. На оф. сайте убрали эту страницу.
Ответить

Вернуться в «Windows / Mach»