View Full Version : Help with mach3  center finding script
eddie60
19-05-2009, 10:39 AM
HI
IM HAVING PROBLEMS WITH THE MACH BLUE SCREEN SCRIPT
I USE METRIC
I HAVE TRIED CHANGING IT MYSELF, I CAN'T GET IT TO WORK
I NEED A SCRIPT THAT CAN FIND THE CENTER OF A 40 mm PIPE
AND MOVE AT ABOUT 100mm A MINUTE
CAN ANYONE HELP ME PLEASE?
EDDIE
Smiler
19-05-2009, 07:16 PM
HI
IM HAVING PROBLEMS WITH THE MACH BLUE SCREEN SCRIPT
I USE METRIC
I HAVE TRIED CHANGING IT MYSELF, I CAN'T GET IT TO WORK
I NEED A SCRIPT THAT CAN FIND THE CENTER OF A 40 mm PIPE
AND MOVE AT ABOUT 100mm A MINUTE
CAN ANYONE HELP ME PLEASE?
EDDIE
First, is mach set up to use metric units?
Second, can you post the VB Script for the button?
Jeff.
John S
19-05-2009, 07:44 PM
Have a look at
http://www.machsupport.com/forum/index.php/topic,8063.0.html
John S.
eddie60
20-05-2009, 07:42 AM
THANKS JOHN
I TRIED THAT SCRIPT,I CANT GET IT TO WORK
AS I SAID BEFORE IM USING METRIC,,,NOT INCHES
I NEED A SCRIPT THAT FINDS THE CENTER OF A 40MM PIPE
AND MOVES ABOUT 100mm A MINUTE
 
EDDIE
eddie60
20-05-2009, 07:55 AM
HI
THANKS JEFF
ANSWERING YOUR QUESTION
YES MY MACH 3 IS SETUP FOR METRIC
THIS IS THE BUTTON SCRIPT I NEED TO EDIT
 
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 "F4"   'slow feed rate to 4 ipm
Rem Probe left
 
 XNew = Xcurrent - 3  'probe 3 inches 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 + 3  'probe 3 inches 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 + 3
 Code "G31 Y" &YNew
 While IsMoving()
 Wend
 YPos1 = GetVar(2001)
 Code "G0 Y" &YCurrent
Rem Probe down
 
 YNew = YCurrent - 3
 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 "F" &FeedCurrent    'restore starting feed rate
End If
irving2008
20-05-2009, 11:26 AM
HI
THANKS JEFF
ANSWERING YOUR QUESTION
YES MY MACH 3 IS SETUP FOR METRIC
THIS IS THE BUTTON SCRIPT I NEED TO EDIT
 
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 "F4" 'slow feed rate to 4 ipm
Rem Probe left
 
XNew = Xcurrent - 3 'probe 3 inches 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 + 3 'probe 3 inches 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 + 3
Code "G31 Y" &YNew
While IsMoving()
Wend
YPos1 = GetVar(2001)
Code "G0 Y" &YCurrent
Rem Probe down
 
YNew = YCurrent - 3
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 "F" &FeedCurrent 'restore starting feed rate
End If
 
OK, I'm no expert on Mach3 but I can write VBScript! This script appears to use an external probe and an external DRO - I'm assuming you have those and that they work and that you have elsewhere verified you can retrieve the DRO values . If thats not the case then this isnt going to work ever.
 
Assuming the above, the only lines that need to be changed are where it subtracts and adds 3 to the current values of X and Y, if Mach3 is set for metric I would assume these should be 75 (for 75mm), e.g.
XNew = Xcurrent - 3 'probe 3 inches to left
should be:
XNew = Xcurrent - 75 'probe 75mm to left
 
Similarly the 'F4' command for the feed rate should be 'F100' for 100mm/min
irving2008
20-05-2009, 12:06 PM
The capital T is inside a comment line  (REM = remark) so is ignored by the program.
 
In that case I would ask, Eddie, two questions...
 
1/ have you verified your probe works and how
 
2/ when you say 'it doesnt work' what exactly are the symptoms... MACH3 complains about the code (what error message?) or the probe doesnt move at all, or it moves but only a little bit?
Smiler
20-05-2009, 06:23 PM
I think Irvings got it, that matches what I have on my old Blue set.
Let us know if this works for you Eddie :feedback:
Jeff.
Powered by vBulletin® Version 4.2.5 Copyright © 2025 vBulletin Solutions Inc. All rights reserved.