Linear actuator project


I am building up a linear actuator and hope to drive it with a stepper motor controlled by Arduino.

I have calculated the torque I require and the following stepper motor is sufficient for my purposes running at a speed of 500rpm:

NEMA 23 Stepper Motor

Here is the torque curve:

I plan to use a 48VDC / 7.3A power supply and the following stepper motor driver:

I have the following questions:

1) Which Arduino board would you recommend using?

2) What would be the simplest way of wiring all the components together? Would it be using a bread board with jumpers? Perhaps as the following:

3) Will I have any problems with the components overheating? The linear actuator needs to accelerate up to a certain speed (equivalent to 500rpm motor speed). Hold the speed. Then decelerate back to a stop and repeat the motion continuously.

Any help would be great.



I forgot to mention that I will be wiring the NEMA 23 stepper motor to bipolar parallel, in order to get the best torque at high speed. This will draw 5A / phase. Hence, my question relating to overheating.



Stepping motors are designed to run hot. Do not exceed the rated winding current and it will be OK.

Any Arduino will work, but breadboard wiring is not advised for high current circuits or in cases where you are concerned about reliable operation.

Bread boards are inherently unreliable. When dealing with high torque motors you need something that you can trust, otherwise you'll end up with squashed fingers. Perhaps soldered point to point wires on a fibreglass proto board would be a better choice.

Are you planning on using "end of travel" stop switches? If not, will the threads in you actuator be able to cope with the motor accidentally driving past the end points?

Don't forget, stepper motors are open loop and have inertia so you'll need to use an acceleration profile to avoid skipping steps. This limitation could affect your ability to achieve the required acceleration profile of the actuator.

Thank you for the replies.

I will take your advice and use a fibreglass proto board with soldered connections. Could you suggest the rating of wire to use?

I plan to use 2 end stops. One for home and the other as a hard limit, just in case anything happens.

Additionally I am looking to produce a small control panel with the following:

Button 1 - emergency stop

Button 2 - Home position

Button 3 - 1 pass (home, accel 0 to 500rpm, hold, decel 500 to 0rpm, stop, reverse to home in opposite order)

Button 4 - 5 passes

I hoping the coding will be fairly simple.

Any help on where to start would be appreciated.