Thomas (aka Big Tex)
I got the embedded touch plate installed and thanks to you everything works as advertised.
One Happy Customer, I am!
Paul
Thomas (aka Big Tex)
I got the embedded touch plate installed and thanks to you everything works as advertised.
One Happy Customer, I am!
Paul
Lets testing begin
Rem Rem VBScript To probe In the z axis 'Written by Big-Tex May 23 2010
If GetOemLED(801) Then 'NOTE: This part of script is for Inches as Native Units
If GetOemLed (825) <> 0 Then 'Check to see if the probe is already grounded or faulty
Code "(Z-Plate is grounded, 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
Code "F12" 'slow down feedrate to 12 ipm
Rem Probe In the z direction
ZNew = GetDro(2) - 6 'probe move to current z - 6 inches
Code "G31Z" &ZNew
While IsMoving() 'wait for probe move to finish
Wend
ZNew = GetVar(2002) 'read the touch point
Code "G0 Z" &ZNew +.1 'move back +.1 to hit point incase there was overshoot +.1
While IsMoving ()
Wend
Rem End add lines
Code "F4" 'slow down feedrate to 4 ipm
ZNew = GetDro(2) - .25 'probe move to current z - .25 inches
Code "G31Z" &ZNew
While IsMoving() 'wait for probe move to finish
Wend
ZNew = GetVar(2002) 'read the touch point
Code "G0 Z" &ZNew 'move back to hit point incase there was overshoot
While IsMoving ()
Wend
If PlateOffset <> 0 Then
Call SetDro (2, PlateOffset) 'set the Z axis DRO to plate thickness
Code "G4 P0.25" 'Pause for Dro to update.
ZNew = PlateOffset + 2.6315 'calc retract
Code "G0 Z" &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
End If
Code "F" &CurrentFeed 'Returns to prior feed rate
End If
Else 'NOTE: This portion of script is for Metric as Native Units
If GetOemLed (825) <> 0 Then 'Check to see if the probe is already grounded or faulty
Code "(Z-Plate is grounded, 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
Code "F300" 'slow down feedrate to 300 mmpm
Rem Probe In the z direction
ZNew = GetDro(2) - 150 'probe move to current z - 150 mm
Code "G31Z" &ZNew
While IsMoving() 'wait for probe move to finish
Wend
ZNew = GetVar(2002) 'read the touch point
Code "G0 Z" &ZNew + 3 'move back + 3 mm to hit point incase there was overshoot + 3 mm
While IsMoving ()
Wend
Rem End add lines
Code "F100" 'slow down feedrate to 100 mmpm
ZNew = GetDro(2) - 6 'probe move to current z - 6 mm
Code "G31Z" &ZNew
While IsMoving() 'wait for probe move to finish
Wend
ZNew = GetVar(2002) 'read the touch point
Code "G0 Z" &ZNew 'move back to hit point incase there was overshoot
While IsMoving ()
Wend
If PlateOffset <> 0 Then
Call SetDro (2, PlateOffset) 'set the Z axis DRO to plate thickness
Code "G4 P0.25" 'Pause for Dro to update.
ZNew = PlateOffset + 60 'calc retract
Code "G0 Z" &ZNew 'put the Z retract height you want here
While IsMoving ()
Wend
Code "(Z axis is now zeroed in metric Units)" 'puts this message in the status bar
End If
Code "F" &CurrentFeed 'Returns to prior feed rate
End If
End If
Yes Tex it works but like before if the offset plate is set to zero then it doesn't retract or set the DRO to zero.
I,ve altered the code below so that it does this know, I know most will use a plate of some kind but every now and again some like me wont so now it covers all base's.
I also turned down the slow feed from 100mm to 50mm i feel hundred is a bit fast esp for small tiny cutters.
Other than that it's good. . . Thanks. (Please test without plate on your machine because i've changed the inch's side as well)
Rem Rem VBScript To probe In the z axis 'Written by Big-Tex May 23 2010
If GetOemLED(801) Then 'NOTE: This part of script is for Inches as Native Units
If GetOemLed (825) <> 0 Then 'Check to see if the probe is already grounded or faulty
Code "(Z-Plate is grounded, 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
Code "F12" 'slow down feedrate to 12 ipm
Rem Probe In the z direction
ZNew = GetDro(2) - 6 'probe move to current z - 6 inches
Code "G31Z" &ZNew
While IsMoving() 'wait for probe move to finish
Wend
ZNew = GetVar(2002) 'read the touch point
Code "G0 Z" &ZNew +.1 'move back +.1 to hit point incase there was overshoot +.1
While IsMoving ()
Wend
Rem End add lines
Code "F4" 'slow down feedrate to 4 ipm
ZNew = GetDro(2) - .25 'probe move to current z - .25 inches
Code "G31Z" &ZNew
While IsMoving() 'wait for probe move to finish
Wend
ZNew = GetVar(2002) 'read the touch point
Code "G0 Z" &ZNew 'move back to hit point incase there was overshoot
While IsMoving ()
Wend
If PlateOffset <> 0 Then
Call SetDro (2, PlateOffset) 'set the Z axis DRO to plate thickness
Code "G4 P0.25" 'Pause for Dro to update.
ZNew = PlateOffset + 2.6315 'calc retract
Code "G0 Z" &ZNew 'put the Z retract height you want here
While IsMoving ()
Wend
Else
Call SetDro (2, PlateOffset) 'set the Z axis DRO to plate thickness
Code "G4 P0.25" 'Pause for Dro to update.
ZNew = + 2.6315 'calc retract
Code "G0 Z" &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
End If
Code "F" &CurrentFeed 'Returns to prior feed rate
End If
Else 'NOTE: This portion of script is for Metric as Native Units
If GetOemLed (825) <> 0 Then 'Check to see if the probe is already grounded or faulty
Code "(Z-Plate is grounded, 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
Code "F300" 'slow down feedrate to 300 mmpm
Rem Probe In the z direction
ZNew = GetDro(2) - 150 'probe move to current z - 150 mm
Code "G31Z" &ZNew
While IsMoving() 'wait for probe move to finish
Wend
ZNew = GetVar(2002) 'read the touch point
Code "G0 Z" &ZNew + 3 'move back + 3 mm to hit point incase there was overshoot + 3 mm
While IsMoving ()
Wend
Rem End add lines
Code "F50" 'slow down feedrate to 100 mmpm
ZNew = GetDro(2) - 6 'probe move to current z - 6 mm
Code "G31Z" &ZNew
While IsMoving() 'wait for probe move to finish
Wend
ZNew = GetVar(2002) 'read the touch point
Code "G0 Z" &ZNew 'move back to hit point incase there was overshoot
While IsMoving ()
Wend
If PlateOffset <> 0 Then
Call SetDro (2, PlateOffset) 'set the Z axis DRO to plate thickness
Code "G4 P0.25" 'Pause for Dro to update.
ZNew = PlateOffset + 20 'calc retract
Code "G0 Z" &ZNew 'put the Z retract height you want here
While IsMoving ()
Wend
Else
Call SetDro (2, PlateOffset) 'set the Z axis DRO to plate thickness
Code "G4 P0.25" 'Pause for Dro to update.
ZNew = 20 'calc retract
Code "G0 Z" &ZNew 'put the Z retract height you want here
While IsMoving ()
Wend
Code "(Z axis is now zeroed in metric Units)" 'puts this message in the status bar
End If
Code "F" &CurrentFeed 'Returns to prior feed rate
End If
End If
I recently added a touch plate system so I could find Z Zero more accurately.
I applied the VB Code to my Zero Button and need some help getting it working.
First, there needs to be a third "End If" at the bottom of the "inch" routine.
That got rid of the error I was getting and made the program come to life.
I have a touch plate DRO and I am entering .063, the thickness of my touch plate, in the DRO.
When I run the VB Code the result in the Z Axis DRO reads 2.6945. If I run with the touch plate value at 0.00 the result in the Z Axis DRO is 2.6315.
When I bring the Z Axis back down to 0.00, in the Z Axis DRO, the tip of the tool is exactly .25 inches above the work surface.
I must really be missing something here. Have spent most of the day working with the VB Code but no matter what I do it just never comes out with the work surface at 0.00
Just an afterthought. My Z Axis coming down reaches 0, then goes minus for the depth of the cut. So I am always cutting below zero. Don't know but that may have something to do with it.
HELP!
George
If you are using the code for the Inch/metric test that Tex and i just posted then by adding the extra end if all you are doing is terminating the code at the end of the Inch routine missing the metric code completely.
If you are only ever going to use Inch units then dont bother using this code and stick with the original code.
The only reason for this new code is for completeness and to make it easier for new user's that use metric or those that use both.
YES this is correct with a touch plate thickness of 0.063
2.6945 - 0.063= 2.6315
2.6315 is the retract amount set in the code and your plate is 0.063 added together they make 2.6945 and if this is what is showing in the Z DRO then it's correct.
Without the plate and Zero set in the plate thickness DRO then the Z DRO should read the retract amount of +2.6315 then when you tell it to goto Zero it should move down 2.6315 and read zero.
The code is working correctly according to the DRO figures that you quote.?
If the Z DRO reads either 2.6945 with plate thickness of 0.063 or 2.6315 without then mach is set this amount above zero and cant be wrong.
So something else is causing this problem when it moves to 0.25 above Zero.?
What is hard to say without knowing more about your setup but i'm confident the code is working correctly
Are you using the Mach blue screenset and using the platethickness DRO on the Right handside in the probe section and not some other screen like in Offsets because this is the only DRO the code reads from.?
Are you using home switch's.?
Check that something like tool offsets are not affecting things.?
Also what was the Error it was giving before you added the extra End If.?
It will be something simple and keep plugging away and it will show, belive me it's worth the trouble and time to get working.
Keep us informed how you go.
The only problem i can see is that to use something so thin you would have to turn the feed rates right down to stop a sharp tool from piercing the foil or tape.?
Give it a try by placeing tape or foil on a stiff sponge as pretend surface to protect the tool and see if it pierc's it or not.?
Infact i will try it my self because you pricked my interest.!!
Well Eloid here's some thing just for you.!!
I did a test using a 1mm ballnose the smallest pointist cutter i have.
To test i'm using Aluminium foil that is so thin my vernier gauges that work to 1000's mm or inch wont register the thickness. This stuff is near tissue paper thin.
I stretched it between blocks of wood for the test and if you watch the vid you see a guest apperance from Rupert the bear.?
My Z probe is using the latest code that Big Tex just posted and the only differance between Tex's version and mine is i changed the second probe feed from 100mm/min to 50mm/min and the retract from 60mm to 20mm.
I did post the altered code in my reply to Tex.
In the video when rupert shows and the probe is finished and i click goto Z the feed rate is 4000mm/min.
So the probe goes like this.
1st fast probe: 300mm/min
2nd Slow probe 50mm/min
3rd Retract 20mm @ 4000mm/min
4th Goto Zero @ 4000mm/min
Here is the Video
hemsworthlad
Thank for helping guys out.
I have been slammed with work.
2.6315 value is for my calculated set up as my touch off plate is .3685 thick
and after retract it is @ Z=3.
I wanted to have whole value to be able visualy inspect if there is any issues.
You may change it to what ever works for you.
Also I feel that very thin plate such as foil would not be best solution.
Hi there and thanks for getting back to me.
I cut the file at the end of the "inch" routine, not ever working in metric.
So it makes sense that the missing EndIf was at the end of the COMPLETE routine. Thanks for that.
I am still puzzled at the problem I am having.
I am using my own screen design, and I have a UserDRO(1151) on the screen. And the routine does read it or I would not be getting the results that I get with either .060 or 000 in the DRO.
I will keep plugging away and see if I can figure out what is causing my problem. Will get back to you with more information when I have it.
Thanks,
George
Here is the video again but it doesn't seem much better.?
I think you tube must degrade the quality because the originals are perfect HD video.!! anyway you will get the picture.
Like Bigtex says personally i wouldn't use this method of plate but it sure does work and shows the amazing sensitivity of the probe routines.
[nomedia="http://www.youtube.com/watch?v=WAvGLbRnIP8"]YouTube- Mach3 probe test on aluminium foil[/nomedia]
the logic for thin foil tape ie alumin duct tape, serves 3 purpose
1, cheap fast,
2 sticks to any noconductive surface, fast
3. you can use hossmachine outside corner finder, also a center a pocket in hole easy in wood
http://www.hossmachine.info/forum/ya...ool-Probe.aspx
[nomedia="http://www.youtube.com/watch?v=jqciex7lVaA"]YouTube- Auto Corner Finding with Isolated Probe[/nomedia]
Well guys, after about 2 days of doing everything I could I have come to the realization that the VB routine for finding Z Zero is causing the problem I am having trying to get it to work on my touch pad.
It seems as though the moment I click on the Zero button, the computer goes to 100% CPU usage. After the probe touches twice and starts back to the upper position the Z Axis stepper moves right along as it should, but due to the 100% CPU Usage the Z Axis DRO starts missing steps along the way. The result is that the actual Z Axis moves up higher than it should while the Z Axis DRO chugs along and finally gets to the level it is seeking.
Have been a computer geek all my life, writing programs in just about any language, and this is the first time I have ever seen this kind of action. It is like the computer has gone into a "DO Loop", something that those of you who go back in early computer years will recognize from early machine language programs that were hand written and compiled.
Incidentally, my computer is a Dell 2.85 Ghz with 1 gig of memory so please don't jump to the conclusion that I need a faster computer. When milling a piece the highest CPU usage I see is about 10% running Mach3.
This one has stopped me cold. Maybe I am getting to old to think computer like I used to. I would be interested to hear what your Windows Task Manager shows for you CPU Usage when you click on the Zero routine. Use Ctrl-Alt-Del to open the Task Manager, it will stay on top.
Any comments and ideas would be greatly appreciated. What am I missing here? Have I installed the code on the button improperly someway? Is there some other piece of software that I should be running in the background that I don't have? HELP - HELP - HELP!
George
I want to thank you again Big-Tex. My problem was the verison I had installed. I reladed it and now have the edit button screen. thank you
George
I have tested stuff on my machine I am running XP Pro with Pentium 2.26 and 1.5 gig ram Junk Dell computer scrapped at some company.
I am maxing CPU at 18% with 24 processes running in my ms config all removed as much as possible. So this computer is only set up for one purpose, machining.
I hope that helps.
If it does not we may wanna think about me possibly connecting remotely to your machine and see what is going on. Providing this machine has net connceted.