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

Mach, популярные и не очень CAD, CAM. Обсуждение и разработка программ для управления станками.
shpak76
Новичок
Сообщения: 2
Зарегистрирован: 11 май 2019, 20:57
Репутация: 0
Настоящее имя: Александр Шпаков
Контактная информация:

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

Сообщение shpak76 »

Здравствуйте. Подскажите кто нибудь, какую команду в макросе ввести, чтобы после выполнения поиска центра по датчику в DRO ввелись определенные координаты по X и по Y. Пробовал Code "G92 X-координаты Y-координаты" Меняются только координаты X. Что я неправильно делаю? Нужно ли вставлять какую нибудь промежуточную команду? Спасибо.
Евжений
Мастер
Сообщения: 1168
Зарегистрирован: 05 апр 2016, 20:18
Репутация: 136
Настоящее имя: Жэзэрэл
Откуда: Там, сям.
Контактная информация:

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

Сообщение Евжений »

Текст покажите.
ВК https://vk.com/id353124059
О Боже, дай мне .... пендель!
shpak76
Новичок
Сообщения: 2
Зарегистрирован: 11 май 2019, 20:57
Репутация: 0
Настоящее имя: Александр Шпаков
Контактная информация:

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

Сообщение shpak76 »

shpak76 писал(а):Здравствуйте. Подскажите кто нибудь, какую команду в макросе ввести, чтобы после выполнения поиска центра по датчику в DRO ввелись определенные координаты по X и по Y. Пробовал Code "G92 X-координаты Y-координаты" Меняются только координаты X. Что я неправильно делаю? Нужно ли вставлять какую нибудь промежуточную команду? Спасибо.
Rem VBScript To center probe inside a pipe

If GetOemLed (825) <> 0 Then 'Check to see if the probe is already grounded or faulty
Code "(Probe plate is grounded, check connection and try again)"
Else
FeedCurrent = GetOemDRO(818) 'Get the current settings
XCurrent = GetDro(0)
YCurrent = GetDro(1)

Code "G4 P1" 'Pause 1 second to give time to position probe plate
Code "F150" 'slow feed rate to 150 mm/min

Rem Probe Left

XNew = Xcurrent - 25 'probe 25 mm to left
Code "G31 X" &XNew
While IsMoving() 'wait for the move to finish
Wend
XPos1 = GetVar(2000) 'get the probe touch location

Code "G0 X" &XCurrent 'rapid move back to start point

Rem Probe Right

XNew = XCurrent + 25 'probe 25 mm to right
Code "G31 X" &XNew
While IsMoving()
Wend
XPos2 = GetVar(2000)

XCenter = (XPos1 + XPos2) / 2 'center is midway between XPos1 and XPos2
Code "G0 X" &XCenter 'rapid move to the x center location

Rem Probe up

YNew = YCurrent + 25
Code "G31 Y" &YNew
While IsMoving()
Wend
YPos1 = GetVar(2001)

Code "G0 Y" &YCurrent

Rem Probe down

YNew = YCurrent - 25
Code "G31 Y" &YNew
While IsMoving()
Wend
YPos2 = GetVar(2001)

YCenter = (YPos1 + YPos2) / 2

Rem move To the center

Code "G0 Y" &YCenter
While IsMoving ()
Wend
Code "G92X-103.56"
Code"G92Y40.23" (Эти два кода я дописал)

Code "F" &FeedCurrent 'restore starting feed rate
End If
kalyuchiy
Новичок
Сообщения: 17
Зарегистрирован: 04 май 2018, 10:36
Репутация: 0
Настоящее имя: Андрей
Откуда: Луганск
Контактная информация:

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

Сообщение kalyuchiy »

Всем доброго времени суток. Помогите разобраться как реализовать несложный (я надеюсь) скрипт. Суть вопроса: есть контурный станок, рисует смолой на стекле, вместо шпинделя крутит шестеренчатый насос. Модифицировал команды М3 и М5 под свои задачи.
М3 обозвал М103, выглядит вот так:
Code "G0 z-39" // опускаем пипетку на заданную высоту
While isMoving() // ждем
wend
DoSpinCW() // включаем насос
sleep(500) // ждем пока прокачается смола, подбирается экспериментально
М5 обозвал М105, выглядит вот так:
DoSpinCCW() // включаем реверс насоса (М4)
sleep(500) // ждем пока капля затянется в пипетку, подбирается экспериментально
DoSpinStop() // выключаем насос (М5)
Code "G0 z0" // поднимаем пипетку, отрываем если есть капля
While isMoving() //ждем поднятия пипетки
wend
Все это работает, но из-за того, что насос обладает инерционностью в конце получается расплывающееся пятно смолы, пробовал увеличивать обороты при реверсе в 4 раза от оборотов при подаче смолы, не помогает, все равно получается пятно.
Можно ли реализовать скрипт, чтоб следил за рисуемым вектором (траекторией) и на определенном расстоянии от конца вектора (расстояние задается оператором в мм) включал мою команды М105. Чтоб я смог скомпенсировать инерционность насоса за счет реверса не в конце линии (вектора), а заранее. Реально ли такое сделать? Я так понял, что это можно сделать с помощью команды getDRO, но я не могу с ней разобраться т.к. не силен в программировании. Помогите пожалуйста, очень надо.
Аватара пользователя
FLUKE
Мастер
Сообщения: 843
Зарегистрирован: 11 мар 2013, 21:18
Репутация: 187
Настоящее имя: Сергей
Откуда: Смоленск
Контактная информация:

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

Сообщение FLUKE »

А, если выключать насос чуть раньше? За 2-3 мм до конца контура?
kalyuchiy
Новичок
Сообщения: 17
Зарегистрирован: 04 май 2018, 10:36
Репутация: 0
Настоящее имя: Андрей
Откуда: Луганск
Контактная информация:

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

Сообщение kalyuchiy »

Что то подобное мне как раз и нужно, я не знаю как это реализовать. Просто выключить недостаточно, надо еще отмотать назад.
Аватара пользователя
FLUKE
Мастер
Сообщения: 843
Зарегистрирован: 11 мар 2013, 21:18
Репутация: 187
Настоящее имя: Сергей
Откуда: Смоленск
Контактная информация:

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

Сообщение FLUKE »

Если выключать заранее, то излишка как раз должно хватить дотянуть до конца линии, а там уже включать реверс.
У меня подобного станка нет, я просто предполагаю.
В чём ж-код готовишь? Шиткам подобное сможет.
Аватара пользователя
Q-starь
Мастер
Сообщения: 918
Зарегистрирован: 04 апр 2011, 16:50
Репутация: 604
Настоящее имя: Гэн
Откуда: Казахстан
Контактная информация:

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

Сообщение Q-starь »

kalyuchiy, Подождите до среды, вернусь с моря - расскажу как реализовано у меня, сейчас напряжно в телефоне тыкать. На стеклянном форуме тоже вашу проблему читал, но с телефона не могу там авторизоватся.
Винтовка, жена и ложка - оружие строго индивидуальное!
Изображение
kalyuchiy
Новичок
Сообщения: 17
Зарегистрирован: 04 май 2018, 10:36
Репутация: 0
Настоящее имя: Андрей
Откуда: Луганск
Контактная информация:

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

Сообщение kalyuchiy »

Q-starь писал(а): Подождите до среды, вернусь с моря - расскажу как реализовано у меня
Буду благодарен за помощь.
FLUKE писал(а):В чём ж-код готовишь? Шиткам подобное сможет.
G-код делаю в арткаме, с Шиткамом не знаком, вчера загрузил, потыкал, все время упираюсь инструментом в стол. Не понятно. Надо разбираться. Очень интересует редактирование векторов, последовательность обработки.
Аватара пользователя
Q-starь
Мастер
Сообщения: 918
Зарегистрирован: 04 апр 2011, 16:50
Репутация: 604
Настоящее имя: Гэн
Откуда: Казахстан
Контактная информация:

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

Сообщение Q-starь »

kalyuchiy, Вот держите:

x=GetOEMDRO(802) - ось Z
If X<=-0.5 Then - Z будет опускаться до -1 включаем реле раньше
ActivateSignal(OUTPUT1) - включаем реле
Else
DeActivateSignal(OUTPUT1) - выключаем реле
End If

Скрипт сохранить в файл с названием "macropump.m1s" в папку "C:\Mach3\macros\Mach3Mill" , в папку с вашим рабочим профилем.
Правда сам я его не проверял, у меня всё решено намного проще на базе ГРаБЛей, а МАСН3 для витражника я считаю излишней городьбой, зачем такую монстру на простую рисовалку мне не ведомо :thinking:
Винтовка, жена и ложка - оружие строго индивидуальное!
Изображение
kalyuchiy
Новичок
Сообщения: 17
Зарегистрирован: 04 май 2018, 10:36
Репутация: 0
Настоящее имя: Андрей
Откуда: Луганск
Контактная информация:

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

Сообщение kalyuchiy »

Q-starь писал(а):kalyuchiy, Вот держите:

x=GetOEMDRO(802) - ось Z
If X<=-0.5 Then - Z будет опускаться до -1 включаем реле раньше
ActivateSignal(OUTPUT1) - включаем реле
Else
DeActivateSignal(OUTPUT1) - выключаем реле
End If
Спасибо за скрипт, а можно, если не трудно, с комментариями? Макрос "macropump.m1s" теперь вызывать вместо М103 и М105? Аргумент 802 обозначает ось Z, мне же нужно следить за координатой X или я что-то не так понимаю? Расскажите суть работы данного алгоритма, чтоб я смог его подправить под свои нужды.
UPD. В старом станке нашел такой файл конфигурации, там по идее должен быть реализован алгоритм похожий на то, что мне нужно, было сделано так, что оператор мог задать расстояние от конца вектора, где выключался насос, а реверс происходил в конце вектора. Мне же нужно включать реверс на заданном от конца вектора расстоянии.
Вложения
kadram config.txt
конфигурационный файл старого станка
(37.37 КБ) 849 скачиваний
kalyuchiy
Новичок
Сообщения: 17
Зарегистрирован: 04 май 2018, 10:36
Репутация: 0
Настоящее имя: Андрей
Откуда: Луганск
Контактная информация:

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

Сообщение kalyuchiy »

Как я себе представляю алгоритм выполнения скрипта. 1. Считываем значение X и Y координаты с текущего кадра УП. 2. Присваиваем эти значение переменным Xtemp и Ytemp. 3. Отслеживаем координаты X и Y из окна текущих координат (типа x=GetOEMDRO(800) и y=GetOEMDRO(801)) и сравниваем их с Xtemp и Ytemp. 4. Как только выполняется условие Xtemp - x <= 10 (в мм, задается оператором) или Ytemp - y <=10 (в мм, задается оператором) выполняем мою команду М105. Где этот макрос должен располагаться в УП или в Mach3?
Аватара пользователя
Q-starь
Мастер
Сообщения: 918
Зарегистрирован: 04 апр 2011, 16:50
Репутация: 604
Настоящее имя: Гэн
Откуда: Казахстан
Контактная информация:

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

Сообщение Q-starь »

kalyuchiy писал(а):Спасибо за скрипт, а можно, если не трудно, с комментариями? Макрос "macropump.m1s" теперь вызывать вместо М103 и М105? Аргумент 802 обозначает ось Z, мне же нужно следить за координатой X или я что-то не так понимаю? Расскажите суть работы данного алгоритма, чтоб я смог его подправить под свои нужды.
Про МАСН3 можете меня не спрашивать, я им не пользуюсь, от слова "совсем". У меня алгоритм работы станка организован на G0-G1 и S , без всяких М. Да и контроллер у меня совсем другой. К тому же на насосной станции ( которая смолу давит ) у меня 2 ШД с раздельным управлением, у вас же один ШД на два насоса.
Винтовка, жена и ложка - оружие строго индивидуальное!
Изображение
kalyuchiy
Новичок
Сообщения: 17
Зарегистрирован: 04 май 2018, 10:36
Репутация: 0
Настоящее имя: Андрей
Откуда: Луганск
Контактная информация:

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

Сообщение kalyuchiy »

Q-starь писал(а):Про МАСН3 можете меня не спрашивать, я им не пользуюсь, от слова "совсем". У меня алгоритм работы станка организован на G0-G1 и S , без всяких М. Да и контроллер у меня совсем другой. К тому же на насосной станции ( которая смолу давит ) у меня 2 ШД с раздельным управлением, у вас же один ШД на два насоса.
Все равно спасибо за помощь. Пока что работаю на очень низких скоростях насоса (10 об/мин) и подаче (400 мм/мин). Долго, медленно, зато качество получается вполне неплохое. Не получится реализовать, буду работать так. Заказов сейчас мало, спешить некуда. Хоть это все и не правильно(((.
Аватара пользователя
Q-starь
Мастер
Сообщения: 918
Зарегистрирован: 04 апр 2011, 16:50
Репутация: 604
Настоящее имя: Гэн
Откуда: Казахстан
Контактная информация:

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

Сообщение Q-starь »

kalyuchiy писал(а): Пока что работаю на очень низких скоростях насоса (10 об/мин) и подаче (400 мм/мин)
Это 6,6 мм/сек? Ну да, медленно, я пободрее рисую, хотя соотношение скорость/вращение насосов примерно такое же, реверс включаю за 5 мм до конца линии.
Что бы в конце кляксы не было попробуй сделать задержку подъёма иглы в конце линии и увеличить время реверса на это же время. Это если настройки твоего станка позволяют :wik:
Винтовка, жена и ложка - оружие строго индивидуальное!
Изображение
kalyuchiy
Новичок
Сообщения: 17
Зарегистрирован: 04 май 2018, 10:36
Репутация: 0
Настоящее имя: Андрей
Откуда: Луганск
Контактная информация:

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

Сообщение kalyuchiy »

Q-starь писал(а):Что бы в конце кляксы не было попробуй сделать задержку подъёма иглы в конце линии и увеличить время реверса на это же время. Это если настройки твоего станка позволяют
Инерционность насосов такая, что пока кручу реверс капля первое время продолжает растекаться. Если долго крутить реверс, затем придется увеличивать задержку в начале линии на прокачку контура, и так по замкнутому кругу.
Аватара пользователя
Q-starь
Мастер
Сообщения: 918
Зарегистрирован: 04 апр 2011, 16:50
Репутация: 604
Настоящее имя: Гэн
Откуда: Казахстан
Контактная информация:

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

Сообщение Q-starь »

kalyuchiy писал(а): Инерционность насосов такая, что пока кручу реверс капля первое время продолжает растекаться. Если долго крутить реверс, затем придется увеличивать задержку в начале линии на прокачку контура, и так по замкнутому кругу.
Это понятно...
Сначала надо настроить конец линии ( у меня скорость реверса в 8 раз больше рабочей, и ничо :thinking: ) а потом уже начало. Если насосы не успевают выгнать смолу на старте надо увеличивать задержку в начале движения. У меня задержка в начале 0.55 сек. Правда я и стартовую скорость могу на столько же разогнать как и реверс, поэтому меня эти проблемы не волнуют.
Винтовка, жена и ложка - оружие строго индивидуальное!
Изображение
kalyuchiy
Новичок
Сообщения: 17
Зарегистрирован: 04 май 2018, 10:36
Репутация: 0
Настоящее имя: Андрей
Откуда: Луганск
Контактная информация:

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

Сообщение kalyuchiy »

Могу регулировать скорость оборотов насоса и на старте и на реверсе, могу регулировать задержки и в начале линии и в конце. Может быть действительно попробовать увеличить скорость реверса еще? У меня сейчас соотношение подача/реверс 1 к 4. Вам немного проще, вы можете реверсить не в конце вектора, а я пока не могу.
Аватара пользователя
Q-starь
Мастер
Сообщения: 918
Зарегистрирован: 04 апр 2011, 16:50
Репутация: 604
Настоящее имя: Гэн
Откуда: Казахстан
Контактная информация:

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

Сообщение Q-starь »

kalyuchiy писал(а): Вам немного проще, вы можете реверсить не в конце вектора, а я пока не могу.
Я со своими настройками могу настроить реверс и в конце линии - капли не будет.
Винтовка, жена и ложка - оружие строго индивидуальное!
Изображение
kalyuchiy
Новичок
Сообщения: 17
Зарегистрирован: 04 май 2018, 10:36
Репутация: 0
Настоящее имя: Андрей
Откуда: Луганск
Контактная информация:

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

Сообщение kalyuchiy »

Q-starь писал(а):Я со своими настройками могу настроить реверс и в конце линии - капли не будет.
Предлагаю перейти в ветку витражных станков, чтоб не засирать ветку макросов своими обсуждениями.
Ответить

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