A Stepper Motor Stall Detection

I’m using a stepper motor to raise and lower a small lift. I want to be able to detect if someone sticks their fingers in the lift to stop the motor.

How would you detect stall using a stepper motor? I assume with a DC motor I could use a current sensor. Thanks!

That’s a very unpleasant design, to stop when fingers are in press.
Use light fences to stopp before anyone is in danger, or use the stuff used for the doors in buses.

Heh good point. The lift will be on top of the roof of a car and exposed to elements (snow). That’s why I thinking of detecting stall but I agree. Do you have a link to the type of sensors in bus doors? Or do I need to consider a different sensor?

To be honest the bus type sensors are not easy to get or to use. Anything being pressed by the door makes an increased air pressure in the tube but in reality it’s hard to adjust it well. I’m a former bus driver…
To detect hands, fett, legs… use light fences to make sure it’s safe to run the lift.
To handle “the environment”, the reality, like snow, ice etc. I agree to monitor parameters like current. That’s rather easy using DC motors but for steppers it is quite different.

Use an encoder on the shaft of the motor to detect if it moves when a step is commanded.

Is a stepper the right type of motor for that application? Unlikely.

To get reliable positioning, it would have to be heavily geared down, which might remove the need for finger sensing… and fingers.

To detect hands, fett, legs… use light fences to make sure it’s safe to run the lift.
To handle “the environment”, the reality, like snow, ice etc. I agree to monitor parameters like current. That’s rather easy using DC motors but for steppers it is quite different.

Is a stepper the right type of motor for that application? Unlikely.
To get reliable positioning, it would have to be heavily geared down, which might remove the need for finger sensing… and fingers.

Perhaps I should’ve asked a different question… is a stepper motor the right choice for my application. Here’s a summary of what I’m building:

The lift will be raising and lowering a small platform using a lead screw to “scissor” the platform up and down (sort of like a scissor jack). The platform will be on top of my car and exposed to the environment. The physical load placed on the lift will be no more than 10lbs (but wind may need to be a consideration).

I do need positional accuracy. For instance, I need to move the lift up 2 inches (which means I need to know how many times to rotate). Speed is important (120-150rpm is perfect). It’d be nice to keep it from chopping people’s fingers off just in case… but ideally no one would stick their fingers inside a moving lift. Power efficiency is important too… ideally it would not consume a ton of power (pulling from a 12V car battery).

I considered a stepper motor at first since it is easiest to code, but I’m concerned about 4 things - speed, feedback, power consumption, and lack of torque as speed increases.

But now after reading the comments, perhaps a brushed/brushless DC Motor with encoder is better??

Use a Hall sensor and mount a magnet, or more, to a plate rotating with the screw. Counting pulses and knowing the thread the position is easily calculated.
PWM and a DC motor is even more easy to code.

Motor & leadscrew like this?

Or this?

Videos included, mounted on a board and powered back and forth at 12V .

Yes! I just need an encoder. I ended up purchasing a DC Motor from Pololu with a lead screw coupler. Pololu also carries encoders, but the frequency is rather high (12 ppr).

Use a Hall sensor and mount a magnet, or more, to a plate rotating with the screw. Counting pulses and knowing the thread the position is easily calculated.
PWM and a DC motor is even more easy to code.

That should work perfectly. I’ll need to count 3 of these at the same time. Thank you all for the help.

This topic was automatically closed 120 days after the last reply. New replies are no longer allowed.