Automated homing of X and Y axis

More
05 Nov 2014 08:42 #52790 by FireNWater
First post here. . . hope I'm in the right area . .
.
I have a Probotix V90 3-axis mill that I've been running on Mach 3 for about 3 years. A couple months ago I decided to give LinuxCNC a shot and have had good luck with it so far. I have nearly everything working as it was using Mach 3 and hope to get some help here.
.
The homing of the Z-axis is mostly working. I need to issue the homing command 2 or 3 times before it will finally change the Z axis to "homed". I believe it is a config file issue and I'll post a video of the homing sequence later for everyone's comments, but for now it works OK.
.
To home the X and Y axis, I built a homing tool that uses a 2" diameter copper pipe that is centered over a 1/8" peg. On Mach 3, I used a bit of code that would slowly move the X axis until it touched the pipe, return, go the other direction until it touched, then split the total distance to center. Repeat for the Y axis. I can't find a picture of my tool, so I'll have to post that later if I get some responses here.
.
I realize that LinuxCNC is mostly "roll your own", so I was hoping to at a minimum get pointed in the right direction as to how to add code that controls the mill, or hopefully code that someone else has already written for this task.
.
Thanks again in advance for any help you folk can give me.
.

Please Log in or Create an account to join the conversation.

More
05 Nov 2014 15:39 - 05 Nov 2014 15:39 #52799 by blacksheep
Maybe a video would be really helpful to analyze the behaviour. LinuxCNC drives with "Homing Speed" to the reference switch (in your case the copper pipe), slow down as soon it is touched, move back and touch again with slow speed to be more precise.

If you are (as I understood) inside of your copper pipe and the space inside the copper pipe is not enough for moving back to touch again with slow speed you are in trouble because of you are probably touching the opposite of the copper pipe and the reference switch is closed again.

Regards
Michael
Last edit: 05 Nov 2014 15:39 by blacksheep.

Please Log in or Create an account to join the conversation.

More
05 Nov 2014 15:52 #52801 by Rick G
Might want to look here...
timeguy.com/cradek/01262579508 using a probe to find the center of a hole.

I need to issue the homing command 2 or 3 times before it will finally change the Z axis to "homed".

Perhaps post your config files and some more info on what you are doing, what you expect to happen and what the result is.

Rick G

Please Log in or Create an account to join the conversation.

More
05 Nov 2014 21:31 #52818 by andypugh

To home the X and Y axis, I built a homing tool that uses a 2" diameter copper pipe that is centered over a 1/8" peg.


I think you might be confusing "homing" and "origin setting".

Homing is about the machine finding where it is on the physical axes to avoid running in to the end-stops. Normally this uses switches fixed to the axes. Once the machine has found the axis limits it can avoid hitting them, and can warn if the loaded program exceeds the range of movement. This sets the Machine coordinate system (G53)

Origin setting is different, and is how you tell the machine that (for example) the XY origion for your G-code is half-way long X and a bit past half way on Y. This sets your working coordinate system (G54, G55, G56 etc)
Your copper ring sounds like hole probing, which is how I often set my part origin (typically I have a reference hole in the holding jig just for this). There is a G-code routine for this, using probing moves. To use this you would connect your copper ring to the probe-input pin in HAL, not to a homing switch.

The routine (probe-hole.ngc) should already be in your sample G-code folder.

Please Log in or Create an account to join the conversation.

More
06 Nov 2014 07:33 #52837 by FireNWater
Andy,

You are correct, I use the Z-touchplate and X/Y pipe to set the origin of the part. I build all of my G-Code so 0,0,0 is on the top-center of the part and cut from there, manually checking limits before setting the machine loose. When I first built my machine I tried implementing limit / homing switches but spent more time fighting stray voltages that would trip the E-stop instead of cutting parts so I gave up and just cut from center now. For my little hobby mill it works well, the worst it can do is hit a limit and buzz until I can get over to the machine and restart (with proper expletives added, of course).

I'm on the road this week but it sounds like I definitely came to the right place for help. When I get home I'll post config files and videos that I'm sure you guys can help me get this fixed.

I also plan on adding my setup to your database and hope to become an active member here on the forums.

Please Log in or Create an account to join the conversation.

More
06 Nov 2014 07:38 #52838 by andypugh

When I first built my machine I tried implementing limit / homing switches but spent more time fighting stray voltages that would trip the E-stop instead of cutting parts


Debouncing can help there; www.linuxcnc.org/index.php/english/forum...e-pin?start=10#52497

Please Log in or Create an account to join the conversation.

More
06 Nov 2014 11:32 #52859 by FireNWater

When I first built my machine I tried implementing limit / homing switches but spent more time fighting stray voltages that would trip the E-stop instead of cutting parts


Debouncing can help there; www.linuxcnc.org/index.php/english/forum...e-pin?start=10#52497

.
Been there, done that, got the T-shirts and forehead bruises . .
.

Please Log in or Create an account to join the conversation.

More
06 Nov 2014 17:37 #52869 by cncbasher
try screened cables to limits switches , and switch on the high side rather than to ground , and have the switches normally closed
should cure it

Please Log in or Create an account to join the conversation.

More
07 Nov 2014 11:59 #52895 by FireNWater

try screened cables to limits switches , and switch on the high side rather than to ground , and have the switches normally closed
should cure it

.
Check, check, check, and check . . .
.
I spent two weeks re-wiring, re-programming, and re-jiggering everything and would still get random spurious E-stops so I finally just gave up. If I build a larger machine in the future I'll try homing and limit switches again, but for this small machine I've found they really aren't necessary.
.
I find I usually need to jog the router around anyway the first time I do a job to ensure it isn't going to hit a clamp, and while doing that I also check the limits of the G-Code to make sure I'm not going to hit a stop.
.
Basically it came down to either chasing sparks or making parts. So far it has worked well for my little machine.
.

Please Log in or Create an account to join the conversation.

More
07 Nov 2014 19:07 #52900 by andypugh

Basically it came down to either chasing sparks or making parts. So far it has worked well for my little machine.
.


I confess that due to what seems like a fault in the cable to my X-axis sensor on the lathe I now have it wired only as a home switch and not as a limit.
I will replace the sensor with one of my many spares at some point, but in practice once homed the soft-limits do the job.

In your case, you could consider pushing the un-powered machine to the end-stops before powering up and hitting the "home" button with the machine configured for immediate homing (zero values for home search velocities) that would give you useful soft-limits and G-code preview warning.

Please Log in or Create an account to join the conversation.

Time to create page: 0.166 seconds
Powered by Kunena Forum