Linear actuator backup safety switch for Arduino and NEMA 23/34 in production?

Hi all,

I have intermediate skills with Arduino hardware and electronics. A friend of mine and I are building a linear actuator concept prototype that we hope to eventually take to market and distribute throughout the US. Our current linear actuator setup relies on external limit switches to govern the bounds of travel. The NEMA 23 (bigger actuator prototype uses 34) motor direction is controlled by a remote button setup. The primary requirement of the system, aside from ensuring safety, is to carry a load of 150+ lbs load (w/ safety factor).

Our problem statement:
We decided several weeks ago to integrate a second set of external limit switches just a short distance beyond each in the first set. Instead of using a signal line (via Arduino), as the first set of limit switches uses to bound the actuator travel, we run the voltage line of the motor through these second switches before it reaches the motor. We mean for this to shut off the motor if the traveling component goes beyond the intended first switch set positions.

For a number of reasons, this extra set of switches will not work in the final design of our product. Is there a better choice or all-in-one component that would work better for limiting travel and ensuring safety with a high torque motor? How can we guarantee the motor will stop when it hits the switch or component, even if there is a hardware failure or software error? I cannot seem to find other viable solutions for other similar commercial products that ensure safety on top of accomplishing the desired behavior.

Thank you for taking the time to read through my post. Have a blessed day!

Without images it's hard to tell what you have and what does not work.

zwieblum:
Without images it’s hard to tell what you have and what does not work.

Hey zwieblum, yes I understand how it may be difficult to interpret.

Picture two aluminum bearing guide rails with a lead screw driven by the motor in between them. Next to one of the guide rails are positioned the two sets of switches (four total). The switches make contact with a beveled surface on the bearing’s side in order to stop once the travel component (also the bearing) reaches a limit switch. Because of the lead screw in this design, it has some significant torque behind it. Ultimately we believe something additional or entirely different might be needed to prevent the motor from running past the first switch, in the event of an error or failure, and potentially crashing into the end points of the system.

If that's your problem, then you have a deeper problem. It's not uncommon to have soft and hard limit switches, but your controller software needs to know how to handle that.

So, what's your controller software?

tmpted93:
For a number of reasons, this extra set of switches will not work in the final design of our product.

What are those reasons?

There seems little point considering new solutions when you have given no details of the problems with the obvious solution.

...R

I've included an example picture below to demonstrate.

zwieblum:
If that's your problem, then you have a deeper problem. It's not uncommon to have soft and hard limit switches, but your controller software needs to know how to handle that.

So, what's your controller software?

Ah, yes, soft and hard limit switches. I could not for the life of me recall those terms last night. Thanks, zwieblum.

On every loop cycle, the controller simply measures if one of the soft switches is pressed. If so, then it stops motor movement and the logic prevents it from moving in the direction beyond the soft switch it triggered. A remote button is used to initiate the travel in the opposite direction, after pressing one of the soft switches. Our code simply acts as two diodes would in controlling the direction of current for a linear actuator that is driven with a 2 wire DC gear motor with switches and diodes.

The hard switches are NC and wired in series of the 24V line. No logic is required. If either of these hard switches as pressed, the line becomes open and the motor power is cut off.

One of the problems we are currently facing is that the travel must manually reset to back to the soft switches if a hard switch is trigged. There is no mechanism to resume power to the motor.

Robin2:
What are those reasons?

There seems little point considering new solutions when you have given no details of the problems with the obvious solution.

...R

Robin2, agreed.

The first point is described above: if a hard switch is triggered, then it cuts power to the motor, which must be manually reset. There is no mechanism to resume power to the motor without manually moving it off of a hard switch, and onto the soft switch. This was a quick solution we used for being able to rapidly and safely test code iterations when adding other components to our project.

The second problem is, with both sets of hard and soft limit switches, we lose an additional 2-3 inches of overall travel length. This is pretty significant for our product application.

The third problem we face is, we have other hardware (not electrical) components that are not yet assembled onto our system. This hardware that moves with the travel must mesh to stationary hardware the system, which aligns via the soft limit switch positions. If the soft switches for whatever reason fail to stop the motor, then the hardware will almost definitely break off or be structurally damaged as the system moves to trigger a hard switch.

You said the magic word: "diode". just wire the hard limits so that if triggered the voltage applied has to be the one that moves the sledge away from the switch. To be more precise: if the switch is not triggered, it makes a short across the diode. if triggered, the short is removed and the diode is in charge.

You wrote: "If the soft switches for whatever reason fail to stop the motor, then the hardware will almost definitely break off or be structurally damaged as the system moves to trigger a hard switch.".

Then you have some more engineering to do. Why do you not have microswitches to sense the physical end of travel on the mounts for your guide rail?

Paul

This approach with a diode could then be used as the only set of switches, it seems. I see this design all over the place with current products on the market. However, unlike many of these, we need the travel to move 160 pounds across 15 inches in about 6-8 seconds, which is significantly faster for a heavy load (why we believe this needs to be fail safe).

tmpted93:
The first point is described above: if a hard switch is triggered, then it cuts power to the motor, which must be manually reset

If the purpose of the hard switches is for safety then it seems to me a manual reset is very desirable. Something serious will have gone wrong and needs to be investigated by a competent person before the system is returned to regular use.

If the soft switches for whatever reason fail to stop the motor, then the hardware will almost definitely break off or be structurally damaged

I don't mean to cause offence but that sounds like poor design.

Of course another possible solution to the overshoot question is the equivalent of a railway buffer stop - something strong enough to stop the linear actuator.

...R

tmpted93:
This approach with a diode could then be used as the only set of switches, it seems. I see this design all over the place with current products on the market. However, unlike many of these, we need the travel to move 160 pounds across 15 inches in about 6-8 seconds, which is significantly faster for a heavy load (why we believe this needs to be fail safe).

Have you computed the force necessary to accelerate the load, and then safely decelerate the load before it reaches the end point? The speed between the acceleration/deceleration will need to be quite rapid. Will the load be firmly attached to the carriage?

Paul

tmpted93:
This approach with a diode could then be used as the only set of switches, it seems. I see this design all over the place with current products on the market. However, unlike many of these, we need the travel to move 160 pounds across 15 inches in about 6-8 seconds, which is significantly faster for a heavy load (why we believe this needs to be fail safe).

This won’t work that way. What you are trying to do needs some more information than you are willing to give. Again, what’s your controller software?

Otherwise: If you want commertial consultancy fell free to send me a email or PM, but it’ll cost.

Robin2, no offense taken. It's only a prototype, and it was an unforeseen complication that came about as we began adding more features to meet the MVP.

Paul_KD7HB:
Why do you not have microswitches to sense the physical end of travel on the mounts for your guide rail?

Paul, I don't understand? The limit switches are microswitches. They do sense the end limits, which we have defined by the switch placements.

Maybe my partner and I have some misconceptions concerning trusting the electronics?... It is our understanding that, if we put the switches at the physical end, and something goes seriously wrong (i.e. software has an error and doesn't stop the motor, a diode fails, the switch breaks, etc.) then it will crash into the end mounts. In my limited experience with this, it doesn't appear that the motor will be very forgiving.

The hardware is a T8 lead screw set purchased from banggood, pictured below.

The load is firmly attached. Yes, we have had to space out our switches based on the accel/decel profiles we computed.

I would like to express my gratitude for everyone's input. It has been very insightful and hopefully will be of use to anyone else in a similar situation.

You should definitly look for professional help.

zwieblum:
You should definitly look for professional help.

Yea, in what sense?

Keep in mind, these initial efforts are a desired learning process for my partner and I. It is our challenge to accomplish this first design, knowing that a final product may likely be vastly different.

Depends on what you want to acomplish. I'd suggest some book on "Maschine Components" would be a good start. Then something on "electrical machines and devices", and probably physics would be a good starter. Or you can keep trying and learn it the hard way :slight_smile:

The microswitches at the real end of travel are safety switches that control the actual power going to the equipment. If they ever get pressed, your load has already decelerated to almost zero velocity. If it has not, then there are more serious problems that have never been addressed.

Paul

A lot of the older machine tools used two end stops and they sent a signal at the hard stop to BACK OFF x amount and them move to the soft stop rather than cut the power.
You would simply have to know an approximate amount to back off past the soft limit and use that as a constant.

On initialisation of the machine tool (power up) they first read the switch positions and if a true hard stop was triggered already they again moved back to the soft limit before doing anything else.

They would usually be mounted on the same bracket with maybe less than 25mm between each switch.
The bracket was also able to be moved for shorter strokes etc too but the switches always remained the same distance apart

You can even buy an AIO dual limit switch so that two independent switches may not be needed but they can become expensive as they are often real industrial units.

zwieblum:
Then something on "electrical machines and devices", and probably physics would be a good starter.

Lol. Yes, I did enjoy those entry weed-out physics classes many years ago. I'm still not clearly seeing your point to which you think we need professional help and consulting?

Paul_KD7HB:
The microswitches at the real end of travel are safety switches that control the actual power going to the equipment. If they ever get pressed, your load has already decelerated to almost zero velocity. If it has not, then there are more serious problems that have never been addressed.

Paul

Certainly and this is much like what we currently have in our setup. I apologize if it's not entirely clear in the previous diagram.

@ballscrewbob, thank you for posting. Do these older machine tools use a PLC rather than hobbyist level microchips & micro-controllers? I suppose one thing we are unsure of, which we need to research and find in the commercial functional safety standards literature is what levels of safety features NEMA 23/34 grade motors require in commercial applications. Also, it will be based on the desired functionality in our project whether or not Arduino boards are even deemed safe, over say a PLC.

What I've learned from the replies in this post and other literature available is to steer away from software in safety features. Discrete logic is preferable, and mechanical is even better.

tmpted93:
The hardware is a T8 lead screw set purchased from banggood, pictured below.

If you are using a lead screw and a powerful motor then physically stopping the motion without causing damage may not be practical.

My suggestion is that you have a second set of limit switches just beyond the “normal” ones and if the second limit switch is triggered it just cuts power to the whole machine - no computer logic involved.

…R