Understanding Stepper Motors

Understanding Stepper Motors and Their Applications

Isn't it a pleasure to listen to the melodic sounds of stepper motors while they are creating a 3D print? Well, not really, but why do we use them then? I mean a brush DC motor rotates as well and is way quieter. So, in this article, we will explore how a modern stepper motor works and how easy it is to control one with and without a microcontroller.

Let's start by inspecting the insides of a stepper motor that I salvaged from an old 3D printer. By simply unscrewing the four screws on the back and applying a bit of force, we can remove the rotor and reveal its internal structure.

Stepper Motor Structure

The stepper motor has a removable rotor consisting of four permanent magnets with alternating polarity. The two poles are north and south pulled together from a pole shoe which has exactly 50 teeth per sprocket.

Stator Teeth

The stator of the stepper motor also possesses such teeth, but they are not magnetized yet. In order to do that, the motor consists of eight physically separated coils.

Coil Pairs

But since we only have four wires to work with, they are basically just two coils which are spread out. With the help of a multimeter, I asserted that red with blue and black with green form a coil.

Experimenting with the Stepper Motor

Now with those information in mind, let's try to experiment and find out how this motor works. Firstly, I connect black to VCC and green to ground, which creates a south pole at 0 degrees.

Driver Circuit

Because turning on each coil mechanically is kind of impractical, we need a driver. For that I created a rather crude but functional one which consists of 4-end channel and 4 p-channel MOSFETs to form two H-bridges and an Arduino to control the four gate pairs.

Wave Driving

An H-bridge can basically let current flow in either direction through the coil by turning on either the top left and the bottom right MOSFETs or the top right and bottom left MOSFETs. After connecting the motor and creating a bit of simple code, the four steps were repeated over and over.

Micro Stepping IC

An easy solution to this problem is this A4988 micro stepping IC which is basically a more advanced H-bridge. I connected the setup pins like it's shown in this schematic, hooked up the MS pins up to 5 volts in order to enter the 1 sixteenth step modes.

Variable Frequency Square Wave

By connecting the outputs to the step pin, the motor rotates one step when other square wave changes from low to high. And if we take a look at the voltage and current of one coil, we can see that the chopped up voltage creates a variable constant current which ultimately forms a sinusoidal shape.

Conclusion

At this point everything works fine and the advantages of micro stepping are quite obvious. Not only is the movement of the rotation much smoother but the loudness of the motor also decreased drastically.



What are Stepper Motors? A stepper motor is an electric motor that divides a full rotation into a number of discrete steps. It rotates in small increments, or steps, allowing for precise control over the motor's position and speed.
Background The concept of stepper motors dates back to the early 20th century, but it wasn't until the 1950s that they became widely used in industrial applications. The first commercial stepper motor was developed in the 1960s, and since then, they have become a staple in many industries, including robotics, medical devices, and computer hardware.
Key Characteristics Stepper motors are known for their high precision, reliability, and flexibility. They can be driven by simple digital signals, making them easy to control using microcontrollers or computers. Steppers also have a high holding torque, allowing them to maintain position even when power is turned off.
Types of Stepper Motors There are several types of stepper motors, including:
• Permanent Magnet (PM) Steppers: Use permanent magnets as the rotor and stator.
• Variable Reluctance (VR) Steppers: Use a variable reluctance principle to generate torque.
• Hybrid Steppers: Combine elements of PM and VR steppers for improved performance.


Understanding Stepper Motors
Stepper motors are a type of DC motor that moves in discrete steps, allowing for precise control over the movement of the motor. They are commonly used in applications such as 3D printers, CNC machines, and robotics.
How Stepper Motors Work
A stepper motor works by using a combination of magnets and coils to create a magnetic field that rotates the motor shaft. The motor is controlled by a driver, which sends electrical pulses to the motor coils. Each pulse causes the motor to rotate a specific distance, known as a step.
Types of Stepper Motors
  • Bipolar Stepper Motor: A bipolar stepper motor has two coils per phase, which are wound in opposite directions. This allows for a higher torque output and more precise control.
  • Unipolar Stepper Motor: A unipolar stepper motor has only one coil per phase, which is wound in a single direction. This type of motor is simpler to drive than a bipolar motor but provides less torque.
Stepper Motor Components
  • Rotor: The rotor is the moving part of the stepper motor, which rotates when the motor is energized.
  • Stator: The stator is the stationary part of the stepper motor, which provides a magnetic field that interacts with the rotor.
  • Coils: The coils are the windings on the stator that carry electrical current and create the magnetic field.
Stepper Motor Characteristics
  • Holding Torque: The holding torque is the amount of torque that a stepper motor can hold when it is stationary.
  • Running Torque: The running torque is the amount of torque that a stepper motor produces when it is rotating.
  • Step Angle: The step angle is the distance that the rotor moves with each electrical pulse.
Stepper Motor Applications
  • 3D Printers: Stepper motors are commonly used in 3D printers to control the movement of the print head and extruder.
  • CNC Machines: Stepper motors are used in CNC machines to control the movement of the cutting tool.
  • Robotics: Stepper motors are used in robotics to provide precise control over the movement of robotic arms and grippers.


Q1: What is a stepper motor? A stepper motor is a type of DC motor that rotates in discrete steps, allowing for precise control over the rotation angle and speed.
Q2: How does a stepper motor work? A stepper motor works by using a sequence of electrical pulses to rotate the motor shaft in small increments, with each pulse causing the motor to rotate a fixed angle.
Q3: What are the main components of a stepper motor? The main components of a stepper motor include the stator (the stationary part), the rotor (the rotating part), and the driver circuitry that controls the flow of electrical current to the motor.
Q4: What are the advantages of using a stepper motor? The advantages of using a stepper motor include high precision, high torque at low speeds, and the ability to hold a position without the need for feedback.
Q5: What are some common applications of stepper motors? Stepper motors are commonly used in applications such as 3D printers, CNC machines, robotics, and medical devices, where precise motion control is required.
Q6: How do I choose the right stepper motor for my application? To choose the right stepper motor, consider factors such as the required torque, speed, and precision, as well as the physical size and weight constraints of your application.
Q7: What is microstepping in a stepper motor? Microstepping is a technique used to increase the resolution of a stepper motor by dividing each full step into smaller sub-steps, allowing for smoother and more precise motion.
Q8: Can I control a stepper motor with an Arduino or Raspberry Pi? Yes, both Arduino and Raspberry Pi boards can be used to control a stepper motor using specialized libraries and driver circuitry.
Q9: What is the difference between unipolar and bipolar stepper motors? Unipolar stepper motors have a single winding per phase, while bipolar stepper motors have two windings per phase, allowing for more flexibility in driver design.
Q10: How do I troubleshoot common issues with my stepper motor?




Rank Pioneers/Companies Description
1 NEMA (National Electrical Manufacturers Association) Established standards for stepper motor design and performance, enabling widespread adoption.
2 Moog Inc. Pioneered the development of high-performance stepper motors for aerospace and industrial applications.
3 Parker Hannifin Developed innovative stepper motor technologies, including high-torque and compact designs.
4 Maxon Motor AG Introduced high-precision and reliable stepper motors for robotics, medical devices, and other applications.
5 Oriental Motor Co., Ltd. Developed a wide range of stepper motors with advanced features, such as high-speed and low-vibration designs.
6 Nanotec Electronic GmbH & Co. KG Created compact and powerful stepper motors for robotics, automation, and medical devices.
7 Portescap Danaher Motion LLC Designed high-performance stepper motors with advanced features, such as low-vibration and high-torque designs.
8 Advanced Micro Controls Inc. (AMCI) Developed innovative stepper motor controllers with advanced features, such as high-speed and low-vibration capabilities.
9 Trinamic Motion Control GmbH & Co. KG Created intelligent stepper motor drivers with advanced features, such as sensorless control and low-vibration designs.
10 STMicroelectronics N.V. Developed a wide range of stepper motor drivers with advanced features, such as high-speed and low-power designs.




Stepper Motor Basics
A stepper motor is a type of DC motor that converts electrical pulses into discrete mechanical movements.
The motor consists of a rotor and a stator, with the rotor attached to an output shaft. The stator is made up of multiple electromagnets, which are arranged in a circular pattern around the rotor.
Component Description
Rotor The moving part of the motor, attached to the output shaft.
Stator The stationary part of the motor, made up of multiple electromagnets.
Electromagnets Coils of wire wrapped around a magnetic core, which generate a magnetic field when an electric current is passed through them.
Stepper Motor Operation Description
Pulse Input An electrical pulse is applied to the motor, causing one of the electromagnets in the stator to become energized.
Magnetic Field Generation The energized electromagnet generates a magnetic field, which attracts the rotor and causes it to rotate to a specific position.
Rotor Movement The rotor moves in discrete steps, with each step corresponding to a specific pulse input.
Step Angle The angle of rotation between each step, typically ranging from 1.8° to 90°.
Stepper Motor Types Description
Unipolar Stepper Motor A motor with a single winding per phase, requiring only two power connections.
Bipolar Stepper Motor A motor with two windings per phase, requiring four power connections and allowing for more precise control.
Variable Reluctance (VR) Stepper Motor A motor that uses a variable reluctance principle to achieve high torque at low speeds.
Stepper Motor Control Description
Open-Loop Control A control method where the motor is driven without feedback, relying on the motor's inherent properties to determine position.
Closed-Loop Control A control method where the motor is driven with feedback from an encoder or other sensor, allowing for precise control and error correction.
Microstepping A technique used to divide each step into smaller sub-steps, allowing for smoother motion and higher resolution.
Stepper Motor Applications Description
3D Printers Stepper motors are used to control the movement of the print head and bed.
CNC Machines Stepper motors are used to control the movement of the cutting tool and workpiece.
Robotics Stepper motors are used to control the movement of robotic arms and grippers.