mach3 auto tool zero скрипт

Mach3 Auto tool Zero

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Код ошибки: mach3 auto tool zero скрипт P1050934.bmp 659,9К 569 скачиваний

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

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

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

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

Источник

Опции темы

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 P5» ‘ this delay gives me time to get from computer to hold probe in place
Code «G31Z-40 F500» ‘probing move, can set the feed rate here as well as how far to move
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 Z25.4» ‘put the Z retract height you want here
Code «(Z axis is now zeroed)» ‘puts this message in the status bar
Else
Code «(Z-Plate is grounded, check connection and try again)» ‘this goes in the status bar if aplicable
Exit Sub
End If

mach3 auto tool zero скрипт

Добавляется при помощи редактора рабочего экрана(Mach3Screen) непосредственно в кнопку запускающею процесс коррекции.
Высоту датчика можно задать в скрипте или считать из окна, которое будет расположено на рабочем экране и иметь свободный user OEM код, для возможности обращения к нему.
Если потребуется считывать высоту датчика из окна то надо будет внести небольшую поправку в начало скрипта.

PlateOffset=2.33 ‘толщина платы мм.

Заменить на
PlateOffset = GetOemDRO(OEM код окна)

mach3 auto tool zero скрипт

mach3 auto tool zero скрипт

mach3 auto tool zero скрипт

Как можно понять использую именно такой скрипт как Вы рекомендуете. Пожалуйста поделитесь мнением по существу проблемы. Фрез уже штук 5 поломал. Помогите одолеть эту задачку. Мне представляется что в теле скрипта есть какая то ошибка. Сам не разбираюсь в этом шифровании. Выложите пожалуста кому не трудно реально работающий скрипт. Или возможные места в электронике где скрывается проблема
Спасибо

mach3 auto tool zero скрипт

Свой прикладываю,однозначно рабочий,тоже из второго поста тока подкорректированный под свое железо. блин чет файл не крепится.
придется так—-

PlateOffset=13.28 ‘толщина платы мм.
Zup=36.72 ‘Расстояние на которое отойдет фреза после коррекции
MaxZPlus=250 ‘максимальный ход станка по оси Z мм.

Code «G4 P1» ‘Пауза 1 сек.
CurrentFeed = GetOemDRO(818) ‘Запомнить текущюю скорость, для того чтобы восстановить после коррекции.

Code «F300» ‘Задать скорость подачи до касания инструментом

ZNew = GetVar(2002) ‘читать точку касания
Code «G0 Z» &ZNew + 3 ‘отьехать вверх на 3мм от точки касания
While IsMoving ()
Wend

Code «F» &CurrentFeed ‘Возвращаем установленное значение подачи
Sleep 100
‘ End If
‘End If
Посмотри может найдешь какие либо отличия. у меня пашет без сбоев

Источник

Работа с датчиком инструмента в Mach3

Присоединение датчика инструмента
Провод присоединённый к самому датчику подключается к клемме входов контроллера IN1…IN5) контроллера в алюминиевом корпусе. Второй провод с «крокодилом» подключаем к клемме GND клеммника INPUT.
Существует два варианта контроллеров в алюминиевом корпусе. Первый вариант был в производстве и до начала 3-го квартала 2016 года. Новая ревизия контроллера поставляется с 3-го квартала 2016 г.
Для ранней версии контроллера подключение концевых выключателей возможно с использованием схемы актуальной ревизии контроллера. Настройки Mach3, так же одинаковы.

Рисунок 1 подключение датчика инструмента к 3-х осевому контроллеру в алюминиевом корпусе.

mach3 auto tool zero скрипт

Рисунок 2 подключение датчика инструмента к 4-х осевому контроллеру в алюминиевом корпусе.
mach3 auto tool zero скрипт

Зажим закрепляем или на станине станка или на самом инструменте.
Штангенциркулем или микрометром измеряем высоту(толщину) датчика инструмента. Полученный результат сохраняем.
Производим установку конфигурации входного сигнала «Probe»
Для этого заходим в меню Config/Port&Pins/Input Signals и устанавливаем конфигурацию входа «Probe” согласно рисунку 3.
mach3 auto tool zero скрипт

mach3 auto tool zero скрипт

Далее подключаем скрипт приведённый в файле скрипт_zero_tool. Txt. При работе с LPT- портом или скрипт zero_tool_usb.txt при работе с USB адаптером.
Открываем главный экран (вкладка Program Run). После этого открываем выпадающее меню “Operator” и выбираем пункт «Edit Button Script”. После этого на главном экране начинают мигать несколько кнопок. Выбираем кнопку «Auto Tool Zero” панели «Tool Information” рисунок 6.

mach3 auto tool zero скрипт

После нажатия кнопки открывается окно скрипта рисунок 7.

mach3 auto tool zero скрипт

mach3 auto tool zero скрипт
Рисунок 8

Rem VBScript To probe In the z axis

If GetOemLed (825) <> 0 Then ‘Проверка нет-ди замыкания между датчиком и фрезой
Code «(Z-Plate is grounded, check connection and try again)» ‘Предупреждение выводимое в строку статуса если есть замыканае между датчиком и фрезой
Else
‘Code «G4 P1» ‘Пауза 1 сек, чтобы дать время для установки
Sleep 100
PlateOffset = 13.3 ‘ 0 Then
Call SetDro (2, PlateOffset) ‘присвоить значение толщины датчика координате Z
‘Code «G4 P1» ‘Пауза для обновления.
Sleep 500
ZNew = PlateOffset + 2 ‘ZNew = толщина датчика + 2 mm, где 2mm величина подъема от точки контакта с пластиной
Sleep 100
‘ZNew = 2 ‘ координата ZNew должна быть больше толщины датчика
Code «G0 Z» &ZNew
Code «(Z axis is now zeroed)» ‘ Сообщение в строке состояния»
End If

Sleep 100
Code «F» &CurrentFeed ‘Возврат к прежней подаче
End If

Источник

cnc-club.ru

Статьи, обзоры, цены на станки и комплектующие.

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

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

Сообщение aftaev » 18 фев 2012, 10:44

Так как на форуме нет главы программирование засуну сюды.

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

Сообщение VVChaif » 18 фев 2012, 11:39

mach3 auto tool zero скрипт

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

Сообщение Nick » 18 фев 2012, 12:26

Use the Console, Luke.

mach3 auto tool zero скрипт

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

Сообщение aftaev » 18 фев 2012, 15:11

mach3 auto tool zero скрипт

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

Сообщение Nick » 20 фев 2012, 13:21

Use the Console, Luke.

mach3 auto tool zero скрипт

mach3 auto tool zero скрипт

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

Сообщение NightV » 20 фев 2012, 13:55

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

Сообщение aftaev » 20 фев 2012, 14:18

mach3 auto tool zero скрипт

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

Сообщение Nick » 20 фев 2012, 15:24

Ну так это теперь вроде понятно как сделать, G38 + M03.

Use the Console, Luke.

mach3 auto tool zero скрипт

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

Сообщение aftaev » 20 фев 2012, 16:22

Морда связана с макросом.

Ник, простой пример есть кусок железки 100*200 и в шпинделе воткнут 3Д пробник. Нужно найти точно его центр. Как сделать

mach3 auto tool zero скрипт

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

Сообщение Nick » 20 фев 2012, 18:27

Use the Console, Luke.

mach3 auto tool zero скрипт

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

Сообщение aftaev » 20 фев 2012, 19:29

mach3 auto tool zero скрипт

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

Сообщение Nick » 20 фев 2012, 19:45

Use the Console, Luke.

mach3 auto tool zero скрипт

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

Сообщение aftaev » 20 фев 2012, 19:48

mach3 auto tool zero скрипт

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

Сообщение NightV » 21 фев 2012, 15:12

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

Code «G53 G00 Z-1» ‘Move the tool all the way up

Code «G53 G00 X» & ChX & «Y» & ChY ‘Move to the probe position
Code «G53 Z-15 F600»
While IsMoving()
Wend
Code «G31 F20 Z» & ChZ ‘Z move down untill hit
While IsMoving()
Wend
HitOld = GetVar(2002) ‘Get the Position that the Porbe hit at
Code «G4 P.5»
Code «G53 G00 Z» & ToolUp

Call MovePos(OldTool)
While IsMoving()
Wend
Code «G53 Z-32»
Code «G53 G01 f400 Z» & ToolDown
While IsMoving()
Wend
Code «G4 P.2»
ActivateSignal(Output1) ‘Turn On Draw bar to release the tool
Code «G4 P.5» ‘Wait for the tool to release
Code «G53 G01 Z-32 F400»
Code «G53 G00 Z» & ToolUp
Call MovePos(NewTool)
While IsMoving()
Wend
Code «G53 G00 Z-32»
Code «G53 G01 f400 Z» & ToolDown
While IsMoving()
Wend
Code «G4 P.2»
DeActivateSignal(Output1) ‘Turn Off Draw bar to Clamp the tool
Code «G4 P0.5» ‘Wait for the tool to Clamp
Code «G53 G01 Z-32 f400»
Code «G53 G00 Z» & ToolUp

‘=============================================
Code «G53 G00 Y» & ChY ‘Move to the probe position
‘While IsMoving()
‘Wend
Code «G53 G00 X» & ChX ‘Move to the probe position
‘While IsMoving()
‘Wend
Code «G53 Z-15 F600 » ‘Z move down untill hit
While IsMoving()
Wend
Code «G31 F20 Z» & ChZ ‘Z move down untill hit
While IsMoving()
Wend
HitNew = GetVar(2002) ‘Get the Position that the Porbe hit at
Code «G4 P0.5»

If DiffABS=0 Then End
ZNew=0
ZOld = Getdro(2)
If HitOld HitNew Then ZNew = ZOld + DiffABS :A=2

Call setdro(2,ZNew)
Code «G53 G00 Z» & ToolUp

Code «G00 X» & x & » Y» & y ‘Move back to where the tool change was prompted
‘Code «G00 Z» & z ‘Move back to where the tool change was prompted

Sub MovePos(ByVal ToolNumber As Integer)

Code «G53 Y» & YPos
Code «G53 X» & XPos

Источник

cnc-club.ru

Статьи, обзоры, цены на станки и комплектующие.

Скрипты для MACH3.

mach3 auto tool zero скрипт

Скрипты для MACH3.

Сообщение putman » 12 дек 2014, 07:38

Re: Скрипты для MACH3.

Сообщение aftaev » 12 дек 2014, 07:44

Re: Скрипты для MACH3.

Сообщение aftaev » 12 дек 2014, 07:46

mach3 auto tool zero скрипт

Re: Скрипты для MACH3.

Сообщение putman » 12 дек 2014, 08:01

Re: Скрипты для MACH3.

Сообщение aftaev » 12 дек 2014, 08:22

mach3 auto tool zero скрипт

Re: Скрипты для MACH3.

Сообщение putman » 12 дек 2014, 08:27

mach3 auto tool zero скрипт

Re: Скрипты для MACH3.

Сообщение putman » 12 дек 2014, 18:43

mach3 auto tool zero скрипт

Re: Скрипты для MACH3.

Сообщение Сергей Саныч » 12 дек 2014, 19:13

mach3 auto tool zero скрипт

Re: Скрипты для MACH3.

Сообщение putman » 12 дек 2014, 19:20

mach3 auto tool zero скрипт

Re: Скрипты для MACH3.

Сообщение Сергей Саныч » 12 дек 2014, 19:47

Re: Скрипты для MACH3.

Сообщение konyshevk » 12 дек 2014, 19:49

mach3 auto tool zero скрипт

Re: Скрипты для MACH3.

Сообщение shalek » 12 дек 2014, 19:54

‘ 2010 Circular Pocket Probing Script
‘ 3-1-11

Dim FRate1, FRate2
Dim DMax, Clearance, EdgeLength, CornerClear
Dim XStart, YStart
Dim PlateOffset, XOffset, YOffset
Dim ZeroYN
Dim ToolNo
Dim ToolD
Dim ProbeD
Dim ProbeLengthX, ProbeLengthY
Dim XNew, XHit1, Xhit2, XEdge, X1, X2
Dim YNew, YHit1, YHit2, YEdge, Y1, Y2

Dim XPos, YPos, EdgeAngle, PocketXLen, PocketYLen, EdgeDelta, XCenter, YCenter

Dim XScale, YScale, ZScale

FRate1 = abs(GetUserDRO(1821))
FRate2 = abs(GetUserDRO(1822))
DMax = abs(GetUserDRO(1823))
PlateOffset = GetUserDRO(1824)
ToolNo = GetCurrentTool()
ToolD = GetToolParam(ToolNo,1)
If GetUserDRO(1829) = 0 then
ProbeD = ToolD
Else
ProbeD = GetUserDRO(1829)
End If
Clearance = abs(GetUserDRO(1825))
XOffset = GetUserDRO(1826)
YOffset = GetUserDRO(1827)
EdgeLength = abs(GetUserDRO(1828))
ProbeLengthY = GetOEMDRO(801) + DMax
XStart = GetOEMDRO(800)
YStart = GetOEMDRO(801)

If GetOEMLED(801) Then ‘ On = English Measure INCH

Else ‘ Off = Metric Measure MM

If GetOEMLED(1871) Then
ZeroYN=1
Else
ZeroYN=0
End If

CurrentFeed = GetOemDRO(818) ‘ Get the current feedrate to return to later

CurrentAbsInc = GetOemLED(48) ‘ Get the current G90/G91 state

‘Get Axis Scale factors
XScale = GetOEMDRO(59)
YScale = GetOEMDRO(60)
ZScale = GetOEMDRO(61)

‘Set All Axis’ Scale to 1
Call SetOEMDRO(59,1)
Call SetOEMDRO(60,1)
Call SetOEMDRO(61,1)
Sleep(250)

If GetOemLED(16)<>0 Then ‘ Check for Machine Coordinates
Message «Please change to working coordinates»
Call SetOEMDRO(59,XScale)
Call SetOEMDRO(60,YScale)
Call SetOEMDRO(61,ZScale)
Sleep(250)
Exit Sub ‘ Exit if in Machine Coordinates
End If

Message «Probing for Y Center. »
Sleep(1000) ‘Pause 1 second
Code «F» & FRate1
Sleep(125)
Code «G31 Y» & ProbeLengthY
While IsMoving()
Wend
YHit1 = GetVar(2001)
Y1 = YHit1 + ProbeD/2 + YOffset ‘Tool position at probe hit.

If FRate2<>0 Then
Code «F» & Frate2
Sleep(150)
Code «G31 Y» & ProbeLengthY
While IsMoving()
Wend
YHit1 = GetVar(2001)
Y1 = YHit1 + ProbeD/2 + YOffset ‘Tool position at probe hit.

Code «G0 Y» & YStart
While IsMoving()
Wend

Code «G0 Y» & YHit2 + ProbeD/4
While IsMoving()
Wend

If ZeroYN = 1 then
Code «G0 Y» & YPos
While IsMoving()
Wend

SetOEMDRO(801,0)
Sleep(150)
Else

Code «G0 Y» & YStart
While IsMoving()
Wend

PathLength = Len(YCenter)
For X = 2 To PathLength Step 1
lstring=Mid(YCenter,X,PathLength-X+1)

If Left(lstring,1) = «.» Then
LabelLength = X+5
Exit For
End If

Message «Y Center Found. »
Sleep(150)

If FRate2=0 Then
Code «G0 X» & XStart
While IsMoving()
Wend
Else
Code «G0 X» & XHit1 + ProbeD/4
While IsMoving()
Wend
End If

Code «G0 X» & XStart
While IsMoving()
Wend

ProbeLengthX = XStart + DMax

Message «Probing for X Center. »
Sleep(250) ‘Pause 1/4 second
Code «F» & FRate1
Sleep(125)
Code «G31 X» & ProbeLengthX
While IsMoving()
Wend
XHit2 = GetVar(2000)
X2 = XHit2 + ProbeD/2 + XOffset ‘Tool position at probe hit.

Message «Slow Probing for X position. »
Sleep(100) ‘Pause 1/10 second
Code «F» & Frate2
Sleep(150)
Code «G31 X» & ProbeLengthX
While IsMoving()
Wend
XHit2 = GetVar(2000)
X2 = XHit2 + ProbeD/2 + XOffset ‘Tool position at probe hit.

If ZeroYN = 1 then
Code «G0 X» & XPos
While IsMoving()
Wend
SetOEMDRO(800,0)
Sleep(150)
Else

Code «G0 X» & XStart
While IsMoving()
Wend

PathLength = Len(XCenter)
For X = 2 To PathLength Step 1
lstring=Mid(XCenter,X,PathLength-X+1)

If Left(lstring,1) = «.» Then
LabelLength = X+5
Exit For
End If

Message «X Center Found. »
Sleep(150)

SetUserLabel (9,XCenter)
SetUserLabel (10,YCenter)

Code «F» & CurrentFeed ‘ Reset to original feed rate

If CurrentAbsInc = 0 Then ‘if G91 was in effect before then return to it
Code «G91»
End If

Call SetOEMDRO(59,XScale)
Call SetOEMDRO(60,YScale)
Call SetOEMDRO(61,ZScale)
Sleep(250)

Источник

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

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