Mach3 авто ноль инструмента

Mach3 авто ноль инструмента

Здесь будет рассказано о подключении и настройке в Mach3 датчиков для станка с ЧПУ. Наличие датчиков на станке позволяет:

Направления осей

Mach3 авто ноль инструмента

Расположение осей отличается от общепринятого. Ноль оси Z расположен вверху, рабочие координаты — отрицательные.

Элемены

В качестве концевиков используются микропереключатели MSW-13 или аналогичные:

Mach3 авто ноль инструмента

В качестве кнопки аварийной остановки «E-Stop» используется ANE-22 «Грибок» с фиксацией в корпусе поста КП101 для кнопок управления, 1 место, белый, IEK:

Mach3 авто ноль инструментаMach3 авто ноль инструмента

В качестве датчика нуля по оси Z – «Z Probe» используется закаленный диск из нержавеющей стали диаматром 40 и толщиной 6,85 мм. Второй провод с крокодилом устанавливается на фрезу.

Mach3 авто ноль инструмента

Функциональная схема подключений

Mach3 авто ноль инструмента

Датчики HOME («дом») устанавливаются на все оси. Датчики LIMIT («концевик») устанавливаются на оси X и Y. При принятии баз датчики HOME работают как дома; в рабочем режиме они работают как концевики. Вверху оси Z устанавливается датчик HOME, датчик LIMIT с противоположного конца (внизу) отсутствует.

Электрическую схему можно скачать внизу страницы.

Все датчики, кроме «Z Probe» работают на размыкание. Датчики HOMES и LIMITS объединяются в один логический сигнал по схеме «ИЛИ», т.е. соединяются в последовательную нормальнозамкнутую цепь.

Все соединения датчиков HOMES и LIMITS выполняются витыми парами. Раскладка проводников датчиков HOMES и LIMITS:

Mach3 авто ноль инструмента

Настройка Mach3

1. Настройка Debonce Interval

В Mach3 программное подавление дребезга контактов датчиков настраивается в диалоге «General Logic Configuration», вызываемом из пункта «General Config» меню «Config». Здесь необходимо настроить количество тактов ядра Mach3, в течение которых неизменное состояние датчика принимается за его срабатывание.

Для частоты ядра Mach3 = 25 кГц, период = 40 мкс.

Таким образом, устанавливаем значение «Debonce Interval» не более минимального из вычисленных:

Mach3 авто ноль инструмента

2. Автонастройка входных пинов

Настроить пины входов датчиков можно вручную; автонастройка упрощает это процесс. Рассмотрим на примере пина для датчика «Z Probe». Выбираем пункт «Ports and Pins» меню «Config». В появившемся диалоге «Engine Configuration. Ports & Pins» выбираем вкладку «Input Signals».

Mach3 авто ноль инструмента

Нажимаем кнопку «Auto Setup of Inputs»:

Mach3 авто ноль инструмента

Из выпадающего списка выбираем нужный сигнал, в данном случае «Probe Switch», нажимаем кнопку «AutoSet», и после этого замыкаем датчик «Z Probe» – в сером поле видим сообщение об успешном определении пина датчика и приглашение к определению следующих пинов. Таким образом определяем остальные пины. Для завершения нажимаем кнопку «OK» и возвращаемся в диалог «Engine Configuration. Ports & Pins», где можно наблюдать за произошедшими изменениями в колонках «Enabled», «Port #», «Pin Number» и «Active Low» (вверху показано для «E-Stop» и «Z Probe», ниже для HOMES и LIMITS).

Mach3 авто ноль инструмента

3. Скрипт для «Z Probe»

Рабочий скрипт с комментариями:

4. Настройка скринсета для «Z Probe»

В рабочий скринсет необходимо добавить кнопку и поле для ввода толщины пластины датчика, аналогично как показано ниже:

Mach3 авто ноль инструмента

Скачиваем со страницы дизайнер «Klaus’ MachScreen», устанавливаем, запускаем и открываем рабочий скринсет (например, «1024.set»). Сохраняем скринсет в папку Mach3 под новым именем. В главном окне дизайнера нажимаем кнопку «Toggle multiple / single selection», чтобы выбрать режим одиночного выделения Mach3 авто ноль инструмента. В выпадающем списке группы «Control» окна «MachScreen properties» выбираем «Button», нажимаем кнопку «Add» и щелаем ЛКМ примерно на том месте скринсета, где должна находится кнопка авто поиска нуля по оси Z: создается новая кнопка, которая сразу веделяется и отображаются ее свойства.

Mach3 авто ноль инструмента

Размеры и положение созданной кнопки можно изменить в группе «Position». В строке «Text on ctrl» таблицы «Button» меняем «Text» на, например, «Auto Tool Zero». Щелкаем ЛКМ на строке «Execute Code», в появившемся диалоге выбираем «Basic Script»:

Mach3 авто ноль инструмента

В открывшемся диалоге «MachScreen Editor» вводим или открываем/вставляем ранее созданный текст скрипта:

Mach3 авто ноль инструмента

Далее, выбираем пункт «use data and close» из меню «File» – окно закрывается и таблица «Button» в окне «MachScreen properties» принимает вид:

Mach3 авто ноль инструмента

Теперь аналогичным образом добавляем поле для ввода толщины датчика – в выпадающем списке группы «Control» окна «MachScreen properties» выбираем «DRO», нажимаем кнопку «Add» и щелаем ЛКМ примерно на том месте скринсета, где должно находиться поле. В таблице «DRO» выбираем строку «Standart Code» и меняем значение на любое из диапазона 1000–2254, например 1151. В строке «Format» корректируем формат числа. Результат:

Mach3 авто ноль инструмента

Сохраняем скринсет, закрываем редактор. Запускаем Mach3. Выбираем пункт «Load Screens» из меню «View» и загружаем отредактированный скринсет.

5. Настройка скриптов для кнопок в Mach3

При создании скринсета мы ввели требуемый скрипт для кнопки «Auto Tool Zero». Однако, скрипт может быть изменен без редактора скринсета следующим образом. Выбираем пункт «Edit Button Script» из меню «Operator». После этого, кнопки, скрипты которых возможно корректировать начнут мигать. Указываем кнопку «Auto Tool Zero» – появится редактор скрипта «Hidden Script.m1s». По завершению редактирования, закрываем редактор (сохранять скрипт в отдельный файл не требуется).

6. Настройка скрипта для кнопки «Ref All Home»

Проделаем вышеуказанные действия для кнопки «Ref All Home». Рабочий скрипт:

7. Дополнительные настройки

Выбираем пункт «Homing/Limits» из меню «Config»:

Mach3 авто ноль инструмента

Значение в колонках «Soft Max» и «Soft Min» определяют программные ограничения перемещений осей. Устанавливаем в них значения примерно на 0,5-1 мм уже, чем при срабатывании концевиков. Значения «Slow Zone» определяют расстояние от программных ограничений, не доезжая которых сбрасывается скорость. Значение, указанное в колонке «Home Off» будет присвоено координате оси при операции поиска дома, если включено значение «Auto Zero». Значение «Home Neg» определет направление поиска дома: если при поиске дома ось едет в противоположном направлении – меняем значение «Home Neg». И, наконец, поле «Speed %» определяет скорость, с которой осуществляется подъезд к домам и в «Slow Zone».

Проверка датчиков

Первичная проверка на примере «Z Probe». Переходим на вкладку «Diagnostics», замыкаем/размыкаем датчик «Z Probe» и наблюдаем за сменой сигналов:

Mach3 авто ноль инструмента

Проверка кнопки «E-Stop»:

Проверка датчика «Z Probe»:

Проверка датчиков домов и концевиков:

К статье прилагаются файлы:

Внимание! Запрещается воспроизведение данной статьи или ее части без согласования с автором. Если вы желаете разместить эту статью на своем сайте или издать в печатном виде, свяжитесь с автором.
Автор статьи: Вершинин И.В.

Источник

Mach3 Auto tool Zero

Столкнулся с проблемой.
Скрипт поиска высоты инструмента не выполняется полностью, а если точнее то выполняется только до касания фрезой пластины.
После этого останавливается. На вкладке Diagnostics горит индикатор Digitize. Сильно подозреваю что именно тут кроется причина, но сам не могу докопаться.
Прошу помощи.

Скрипты пробовал разные. Везде одно и тоже. Коснулся пластины и остановился.

выполняется только до касания фрезой пластины.

так вы бы хоть скрипт выложили свой

А скрипт без разницы какой. Любой работает одинаково, до касания.

Предвосхищая вопросы про «по курить форум» и гугл. Курил. ВИдео видел и не одно.

Из того что накопал, это возможные глюки изза комментов на русском в скрипте.

Комментарии убирал совсем, оставлял только тело скрипта. Один фиг, коснулся и замер.

Примеры скриптов которые пользовал.

только «Plate offset» свой надо вбить

Прикрепленные файлы

Чтобы не открывать новую тему, пишу в старую.

Тоже озадачился автопоиском нуля по «Z», накачал скрипты, сделал датчик, подключил и стал пробовать.

Но, вот незадача: VB Script Editor работает некорректно, любую команду обдумывает минут по 10-15.Иногда просто виснет, и приходится перегружать винду. После этого система сообщает, что была восстановлена после ошибки. Чтобы вставить новый скрипт или изменить старый, приходится танцевать с бубном..А чаще всего всё виснет.. Может кто-то подсказать, где порыться? Где лежит этот VB Skript Editor? Может, его надо заменить? Win XP, Mach3 (От Тодосиевича)

Код ошибки: Mach3 авто ноль инструмента P1050934.bmp 659,9К 591 скачиваний

PS: Пытался найти Visual Basic на компьютере поиском- он не дал результата. Может, другое имя у файла?

Всем привет. Я тут новенький сильно не пинайте пожалуйста. Новую тему плодить не стал, но и перелистав интернет решение не нашел, уже неделю бьюсь. Имеем самодельный фрезер 3 оси на Nemo 34 китайская плата DB25 драйвера DM860A все это «хозяйство» управляется матчем и. в общем то проблем нет точнее не было до недавнего времени.

и теперь вопрос. откуда берется это плавное торможение Z и как с ним бороться? (кстати при каждом нажатии автотул z стартует с разной скоростью, но в датчик врезается всегда)!

Во вкладке диагностика в матче реакция на касание щупом датчика адекватная, да и второе касание на медленной скорости происходит без наезда

Источник

Как установить нулевую точку заготовки в системе управления Mach3

Как установить нулевую точку заготовки в системе управления Mach3

Шаги следующие.

Видео выглядит следующим образом.

Источник

Mach3 поиск 0 по оси Z

То, что творится с инструкциями по обнулению оси Z, это, конечно, полный бардак. Одни не понимают что они пишут, другие не понимают что они читают, ломают фрезы и бросают эту полезную затею.
Может где и есть понятные инструкции, но мне они не попались, поэтому пишу свою.

Итак: Задача установить инструмент в точку ноль по оси Z в программе MACH3.
Алгоритм:
Ось Z опускается на заданную величину (10мм). Если происходит замыкание, то ноль по Z устанавливается с учетом толщины пластину и происходит отскок безопасности на 5 мм. Если замыкания не обнаруживается, то ось Z просто останавливается. Толщину пластины и скорость опускания можно задать в скрине Мач3. Остальные параметры в тексте скрипта.

В программе Мач3 есть возможность обнаружить момент замыкания входа LPT на землю. Обычно это контакт между фрезой и металлической деталью или вспомогательной пластиной. Для этого один контакт мы присоединяем к фрезе, а другой к детали или к пластине.
1.На контроллере находим свободный входной пин разъема LPT. Это пины 10, 11, 12, 13 или 15. Например, 12. И к этому разъему присоединяем один контакт, другой к земле.
1. Выбираем свободный номер пина, заходим в Config->Ports-and-Pins->Input-Signals->Probe и ставим галочки в Enable и ActiveLow. В PinNumber выставляем номер пина.
2. Толщина пластины. Если мы обрабатываем металлическую деталь или печатную плату, то вторым контактом будет сама деталь, пластина не нужна и поправка на ее толщину будет ноль. Если деталь не токопроводящая, то нужна вспомогательная пластина. Т.е. необходимо иметь параметр, где мы можем задать толщину пластины.
Что, например, можно сделать.
Скачиваем с официального сайта программу Screen4.exe — это дизайнер экранов программы Мач, и размещаем ее в директорию Мач. Стартуем, открываем файл 1024.set — стандартный файл скринов Мача, переименовываем и сохраняем под другим именем. Теперь мы можем изменять экраны. Нам надо добавить параметр для установки толщины пластины. Выделяем, например, поле Z inhibit, делаем Copy->Paste и размещаем, например, так:
Mach3 авто ноль инструмента
Кликаем дважды левой кнопкой, и в поле OEM-Code-Function пишем 1151. По этому номеру мы можем теперь считать в программе значение этого поля.
Сохраняем скринсет. Стартуем Мач, в View-LoadScreens выбираем и загружаем модифицированный экран Мача с новым полем.
3. Теперь нам надо стартовать установку нуля. Для этого используется кнопка AutoToolZero. При нажатии на эту кнопку начнет выполняться программа, контролирующая установку нуля. Эта программа написана на языке VBscript. Такие программы широко используются и называются скриптами. Текст программы или заглушку можно увидеть по Operator->EditButtonScript, а затем кликнуть по мигающей кнопке AutoToolZero.
Вот сюда-то и надо скопировать или ввести программу установки нуля. Не забыть потом сохранить ее и профиль Мач3, при выходе из программы.
4. Скрипт. Количество скриптов для установки нуля превышает разумные пределы. Многие из них работают, хотя авторы даже не понимают, что рекомендуют. Давайте рассмотрим один из вариантов, доработанных мною до состояния, которое меня устроило. Заодно и скрипты изучил немного. Это мой первый скрипт, поэтому замечания приветствуются.

Вначале только пример с комментариями. При попытке ввести в программу комментарии на кириллице, приходилось перезагружать компьютер. Рабочий вариант скрипта будет ниже.

ZNew = GetVar(2002) ‘ Считываем значение по Z в момент замыкания
Code «G1 Z» &ZNew ‘ Если проскочили, то возвращаемся
While IsMoving () ‘ Ждем возвращения
Wend
If GetOemLed (825) <> 0 Then
‘ Проверяем нашли ноль или просто опустились по Z на 10мм
‘ Проверяем толщину пластины
‘ если она ненулевая, то корректируем ось Z с учетом ее толщины, иначе 0
Call SetDro (2, PlateOffset) ‘ новая точка 0 по Z
Code «G4 P0.5» ‘ ждем установку по Z 0.5 сек

ZNew = 5 ‘ отскок безопасности по Z. Можете поменять
Code «G1 Z5 F200» ‘ идем в точку отскока
While IsMoving () ‘ ждем прихода в отскок
Wend
Code «(Z axis is now zeroed)» ‘ выводим сообщение об установке нуля.

Else
‘ Замыкания не достигли. Просто опустились на 10мм
Code «(Z-Plate ie not grounded. Try again.)» ‘ сообщение об этом
End If

Code «F» &CurrentFeed ‘ возвращаем значение скорости
End If

Текст скрипта находится в директории Macros->»профиль» под именем HiddenScript.m1s
Но при старте Mach3 скрипт берется из профиля. Так что если у вас не обновился профиль после изменения скрипта, при старте Мач3 получите старый скрипт.

Rem VBScript To probe In the z axis
If GetOemLed (825) <> 0 Then ‘Check to see if the probe is already grounded or faulty
Code «(Z-Plate is grounded or check connection and try again)» ‘this goes in the status bar if aplicable

Else
Code «G4 P1» ‘Pause 1 seconds to give time to position probe plate
PlateOffset = GetUserDRO(1151) ‘Get plate offset DRO
CurrentFeed = GetOemDRO(818) ‘Get the current feedrate to return to later
MyFeed = 100
If CurrentFeed > MyFeed Then
Code «F» &MyFeed ‘slow down feedrate to 100 mmpm
Else
Code «F» &CurrentFeed
End If
Rem Probe In the z direction
ZNew = GetDro(2) — 10 ‘probe move to current z — 10mm
Code «G31Z» &ZNew
While IsMoving() ‘wait for probe move to finish
Wend

ZNew = GetVar(2002) ‘read the touch point
Code «G1 Z» &ZNew ‘move back to hit point incase there was overshoot
While IsMoving ()
Wend
If GetOemLed (825) <> 0 Then ‘ Zero or Not

Call SetDro (2, PlateOffset) ‘set the Z axis DRO to plate thickness
Code «G4 P0.5» ‘Pause for Dro to update.

ZNew = 5 ‘ Up to 5mm
Code «G1 Z5 F200» ‘&ZNew ‘put the Z retract height you want here
While IsMoving ()
Wend
Code «(Z axis is now zeroed)» ‘puts this message in the status bar
Else

Code «(Z-Plate is not grounded. Try again.)»
End If

Code «F» &CurrentFeed ‘Returns to prior feed rate

End If
Rem Finalized by George164 05/03/2012

Источник

Автоматическая установка ноля по Z по датчику касания

Какие проверенные варианты еcть с кнопкой автонуля по Z и макросом под мач3

CurrentFeed = GetOemDRO(818) ‘Get the current feedrate to return to later
PlateThickness = GetUserDRO(1151) ‘Z-plate thickness DRO

If GetOemLed (825)=0 Then ‘Check to see if the probe is already grounded or faulty
DoOEMButton (1010) ‘zero the Z axis so the probe move will start from here
Code «G4 P2» ‘ two second delay
Code «G31 Z-20 F100» ‘Z goes down a max of 20mm at 100mm/min
While IsMoving() ‘wait while it happens
Wend
ZProbePos = GetVar(2002) ‘get the axact point the probe was hit
Code «G0 Z» &ZProbePos ‘go back to that point, always a very small amount of overrun
While IsMoving ()
Wend
Call SetDro (2, PlateThickness) ‘set the Z axis DRO to whatever is set as plate thickness
Code «G4 P0.25» ‘Pause for Dro to update.
Code «G0 Z6.35» ‘retract Z to 6.35mm
Code «(Z axis is now zeroed)» ‘puts this message in the status bar
Code «F» &CurrentFeed ‘Returns to prior feed rate
Else
Code «(Z-Plate is grounded, check connection and try again)» ‘this goes in the status bar if aplicable
Exit Sub
End If

Еще один скрипт avtozero. Не требует ничего никуда вводить. Один раз настроил и все.
Не помню,где взял,но сам сейчас использую.

Message( «Auto Zeroing. » )
If IsSuchSignal (22) Then
code «G31 Z-15 F60»
While IsMoving()
Wend
Call SetDRO( 2, 3 )
code «G1 Z5»
End If

3-это толщина пластины.

Всем доброго времени суток. Необходима помощь в создании макроса. Суть в следующем:

Укажите пожалуйста куда копать, может уже есть что то подобное? Спасибо

Копать в гугле и яндексе, ибо разжевано всё уже. И половина ссылок в т.ч будет и на этот форум.

Не макрос, а скрипт(Script). Скорее всего в вашем маче какой-то уже есть. Проверьте Operator-Edit Button Script. Замигают кнопки в окне мача. Ткните в кнопку пробы Z. Откроется блокнот со скриптом. Его можно изменять. Варианты скриптов можно поискать здесь на форуме.

Одна голова хорошо, а две лучше. Русская народная чпу поговорка.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *