Router Forums banner

XYZ limit switches, do I need them on both extremes?

1812 Views 20 Replies 8 Participants Last post by  difalkner
Allow me to preface this question with a short bio. I am a nerd and I do weird stuff. I embarked on designing and building my own CNC router from scratch a few years ago. Since then, I have had many distractions and setbacks that have delayed the completion of this project. The good news is that it is almost complete, needing mechanical adjustments and some wiring. My question to this group is, "should I have two limit switches per axis (on both extremes), or just one?"

TIA,

Rick H
  • Like
Reactions: 1
1 - 20 of 21 Posts
Welcome to the forum, Rick! I built my CNC router about 5 years ago and have proximity switches on both ends for X & Y and only the top for Z. The reason behind that is it's easy to run a bit below the spoilboard on my machine so I don't want a limit there. If you're interested, here's the build thread for my machine - 2nd Build (first) - CNC Router
  • Like
Reactions: 2
I also designed and built my own CNC, and have limit switches for both ends for all three axis. I actually built my Y axis with 2 steppers & screws, and I have limits for both ends on both screws. A big benefit of this is that the machine is able to self-square the gantry when I home the machine.
  • Like
Reactions: 1
Welcome to the forum, Rick! I built my CNC router about 5 years ago and have proximity switches on both ends for X & Y and only the top for Z. The reason behind that is it's easy to run a bit below the spoilboard on my machine so I don't want a limit there. If you're interested, here's the build thread for my machine - 2nd Build (first) - CNC Router
Dave, I am still reviewing your project. That table of yours is downright gorgeous and massive too. Obviously, a top quality, professional system. Mine project is a few rungs down.
Anyway, I always thought the limit switches were used for homing. Any movement beyond the extreme of the axis would be related to either a controller malfunction or a bogus command. If the motion controller goes south, I would not trust a limit switch which is dependent on the controller to stop the machine. Likewise, if the controller software is not intelligent enough to understand that a G code command is outside the limitations of the machine, I think the program should terminate and the machine halted. Therefore, the opposite limit switches should be tied in to the EMO switch of the controller. What do you think?

Regards,

Rick
That table of yours is downright gorgeous and massive too. Obviously, a top quality, professional system.

Therefore, the opposite limit switches should be tied in to the EMO switch of the controller. What do you think?
Thanks, Rick! It was a fun build and has been a great machine.

When I trip a proximity switch my machine shuts down so I guess it's basically the same thing. For homing I have a script in Mach4 that trips X-Y-Z+ and then backs off just far enough so the proximity is not tripped. As for a Z- proximity I figure by the time it gets tripped the bit is already so far below the work piece and spoilboard that the damage has been done and that sensor would never get tripped or used.
  • Like
Reactions: 1
I also designed and built my own CNC, and have limit switches for both ends for all three axis. I actually built my Y axis with 2 steppers & screws, and I have limits for both ends on both screws. A big benefit of this is that the machine is able to self-square the gantry when I home the machine.
Thanks Mike. I saw your blog, but I didn't see a photo of your project. Which gantry did you select? I used 80/20 for my gantry feet and columns (1530). For the crossmember, I chose 3030. BTW- It must have been a real pain to stuff those ball bearing back into that race.

Regards,

Rick
To answer your direct question, limit switches are needed for both min and max travel on X and Y axes. For Z, you really only need a switch on max (up) travel, often for homing. A min (down) switch doesn't make any sense, btw.

Note also, homing and limit are often used interchangeably though there is a usage distinction. For homing, you only need one switch for each axis. Also, if you want to support squaring of a moving gantry you will need homing switches on both sides of the gantry.

One other point - sensor vs switch. These are also often used interchangeably. There are differences in how you wire them (sensors are generally powered, switches not) but all the controller needs to see is "on or off" so in that sense they are the same.
  • Like
Reactions: 2
To answer your direct question, limit switches are needed for both min and max travel on X and Y axes. For Z, you really only need a switch on max (up) travel, often for homing. A min (down) switch doesn't make any sense, btw.

Note also, homing and limit are often used interchangeably though there is a usage distinction. For homing, you only need one switch for each axis. Also, if you want to support squaring of a moving gantry you will need homing switches on both sides of the gantry.

One other point - sensor vs switch. These are also often used interchangeably. There are differences in how you wire them (sensors are generally powered, switches not) but all the controller needs to see is "on or off" so in that sense they are the same.
Phil,
This is the 2nd time I read about squaring the gantry. Back when I conceptualized my design, I was concerned that having a double motor design may lead to this problem. So, I designed a two-axle cog system that drives belts on both left and right sides of the gantry for the X axis using four 20 tooth cogs. On the one axle, I have an extra 60 tooth cog in the middle that is driven by a single NEMA 23, 430 oz motor that is mounted stationary to the bed. In hindsight, it would have been easier to have two motors attached to each side of the gantry driving a belt back in forth, but I think weird, and therefore I do weird stuff.


Thanks,

Rick H
Also, if you want to support squaring of a moving gantry you will need homing switches on both sides of the gantry.
I never quite understood this concept... Seems to me that if you're using motors to square the gantry then there must be some flex and play in the whole system. And also that it can go out of square just as easily. Mine is too rigid to square by this method but fortunately it is mounted square (I made certain when I put it all together). Or am I missing something?
Limit switches not only provide a "home" position, but protect your drives if they should somehow try to run past their limits of mechanical travel, which can be caused by program errors or electrical failures. Exceeding the mechanical limits can frequently jam or damage the mechanical equipment or cause motor burn-outs, in some cases.

In a former pre-retirement life I designed control systems for high speed, high precision manufacturing systems with many kinds of servo positioning systems incorporated within them. One system had 26 separate servo positioning system axes within it, and every one had limit switches at each end of it's mechanical travel. These are safety devices that should absolutely be part of every system to protect the mechanical, and sometimes electrical, parts of the machinery. Cheap insurance, even if they might never actually be used.

Charley
  • Like
Reactions: 3
Limit switches not only provide a "home" position, but protect your drives if they should somehow try to run past their limits of mechanical travel, which can be caused by program errors or electrical failures. Exceeding the mechanical limits can frequently jam or damage the mechanical equipment or cause motor burn-outs, in some cases.

In a former pre-retirement life I designed control systems for high speed, high precision manufacturing systems with many kinds of servo positioning systems incorporated within them. One system had 26 separate servo positioning system axes within it, and every one had limit switches at each end of it's mechanical travel. These are safety devices that should absolutely be part of every system to protect the mechanical, and sometimes electrical, parts of the machinery. Cheap insurance, even if they might never actually be used.

Charley
Charley,

Thank you, I appreciate your recommendations. We have similar career backgrounds.

Regards,

Rick H
Folks,

Thank you all for your advice and recommendations. After reviewing the specifications of my electronics and the mechanics of my design, I am going ahead to use limit switches for homing only for the X and Y axis.
For mitigating motor damage from hitting hard stops, I have adjusted the settings of the maximum current limit of the motor drivers.
For the Z, I am going to design an adjustable limit switch stop that will trigger a 4P2T relay that is wired between the Z-axis motor and driver. This will instantly brake the Z-axis motor, hence stopping it abruptly when the limit switch is tripped. This braking is done by shorting the field windings in the relay's NO position that is activated by the limit switch. I will need to build a knob on the Z-axis lead screw so I can manually turn the axis past the bottom trip point if it does trip.

Again, I appreciate everyone's comments,

Rick H
i will share how the limit switches work on the cnc i use. there are limit switches on one end each of the x axis (home) and z axis (high limit), and 2 on the y axis (home). these are used to initiate the cnc upon power up to set "home position", and square the gantry.

once initialized, the software uses "soft limits" to limit the motor travel in all directions. upon reaching a soft limit, power is removed from the servo motors. the soft limits are reached before any hard limit (switch) is reached. the soft limits are in a file which can be modified by the user if needed.
  • Like
Reactions: 1
Hi Tim,
I am using a single motor for each of my axis including Y. So, I only need three for homing.


Rick
Thanks Mike. I saw your blog, but I didn't see a photo of your project. Which gantry did you select? I used 80/20 for my gantry feet and columns (1530). For the crossmember, I chose 3030. BTW- It must have been a real pain to stuff those ball bearing back into that race.

Regards,

Rick
Yes, it was a pain! There was apart of me that just wanted to replace the screw completely, lol. Thankfully that particular ball screw seems to still work well! I used 30mm 8020 through out the build. The columns on the gantry are 30-6060, and the cross members are 30-6030. I have more detail, and photos of the CNC build here on the forums as well. My bog is grossly out of date, lol.

Here is the thread: MikeMa's CNC Build

I need to add to it as I have been working on the dust collection for it, and I think I almost have it working well.
  • Like
Reactions: 1
Yes, it was a pain! There was apart of me that just wanted to replace the screw completely, lol. Thankfully that particular ball screw seems to still work well! I used 30mm 8020 through out the build. The columns on the gantry are 30-6060, and the cross members are 30-6030. I have more detail, and photos of the CNC build here on the forums as well. My bog is grossly out of date, lol.

Here is the thread: MikeMa's CNC Build

I need to add to it as I have been working on the dust collection for it, and I think I almost have it working well.
Mike, Kudos on your design. Obviously, you were thinking outside-the-box on this project, as I see you designed and machined a lot of custom brackets. Those linear rails are awesome and those ball screws will ensure consistent accuracy. I used openbuilds V-rails which were adequate, but easy to implement. I was looking at the same brand of motor controller you have, but decided to go with a cheaper Chinese solution that had provisions for a hand-held MPG. Since I have not fired it up yet so it might be a gamble.
What is the diameter of your spindle? I designed and printed a dust collector for my spindle. It turned out looking nice, but I have not tried it yet. I can give you the .STL files if needed.

Regards,

Rick H
Thank you! So far the machine itself has proven solid. I believe there are some MPGs that are compatible with the MESA controllers, though I haven't researched it too deeply yet.

Making the custom brackets actually was a lot of fun. They are all aluminum so it was all woodworking tools to make them. I 3D printed a lot of drilling templates to make sure I drill all my holes accurately which really helped.

I am using a Bosch 1617 as the spindle, which is a 3.5" diameter. I have a dust shoe that has gone through several design iterations. One issue I had is the Bosch 1617 vents down right on the work piece which worked against the dust collection. I have a dust shoe design that redirects that air flow away from the work piece, which works better. I need to get a sweep brush put on which I believe will allow it pick up most of the dust from the machine.
My 510HD Shark doesn't have any limit switches. If it goes to the end of it's travel it stops and looses it's xyz and will need to be rezeroed on most if not all axis. This only happens when something pops up off the spoil board and gets hung up with the bit and jambs. Used to happen with the vacuum hose when it would get caught up in the travel. I have not hit something or maxed out a axis in a long time. It just rarely happens. When it does the clutch kicks in and it makes a loud racket.
I never quite understood this concept... Seems to me that if you're using motors to square the gantry then there must be some flex and play in the whole system. And also that it can go out of square just as easily. Mine is too rigid to square by this method but fortunately it is mounted square (I made certain when I put it all together). Or am I missing something?
Sorry for the late response. To build a moving gantry that has no flex at all would take a pretty beefy design. You must have done some pretty amazing work to have zero flex in your gantry. My Avid Pro4848 is seriously well designed and built but has some flex across the 1300mm gantry, around 6 mm. If I lock down one end, I can move the other end. Have you tested your gantry for squareness lately? So, any kind of stepper stall on only one of the drive motors will cause it to get out of alignment. This is why all the higher end controllers support auto-squaring. By having a homing switch on each side of the gantry and a properly adjusted trigger point for each, you don't have to worry about it. Every time you home, the gantry gets squared. Seems like cheap insurance and makes the first squaring of the gantry pretty simple.
  • Like
  • Love
Reactions: 2
Allow me to preface this question with a short bio. I am a nerd and I do weird stuff. I embarked on designing and building my own CNC router from scratch a few years ago. Since then, I have had many distractions and setbacks that have delayed the completion of this project. The good news is that it is almost complete, needing mechanical adjustments and some wiring. My question to this group is, "should I have two limit switches per axis (on both extremes), or just one?"

TIA,

Rick H
Personally I use four limit switches on each motion, accept Z. This allows for an over travel condition prior to reaching maximum distance, possibly **** up the encoder or stepper locations.
1 - 20 of 21 Posts
This is an older thread, you may not receive a response, and could be reviving an old thread. Please consider creating a new thread.
Top