Hi everyone, I’m amazed we were able to achieve our campaign goals in just a few days! I am thrilled the project is now a reality. Thank you very much all for your support and interest!
Ok, now I need to calm down and get back to the subject of this post I had originally planned: stepper motors. This may not be particularly exciting for those who already have experience with stepper motors, but I’d like to focus on some of their benefits you might not be aware of until you actually use them.
When you think of a motor, you might think of a DC motor that spins as soon as you connect a battery. But a stepper motor turns in a different way.
The Adafruit site has a great explanation of how they work.
A stepper motor is not very easy to control. However, it has a lot of advantages. In fact, I think it’s the most suitable type of motor for small experiments. Textbook advantages would be accurate positioning and speed control, but I feel their main advantage when actually using them, is they can move slowly and smoothly.
Stepper motors can spin slowly and have the most torque at low speeds. In fact, if you think about it, you probably need a slower rotation more often than a higher speed one. By using a stepper motor, you can make a slow-moving object with a direct connection to the motor shaft without using a speed reducer.
The stepper motor driver (PowerSTEP01) used in STEP400 has a function called microstepping, which provides finer control over one step by further dividing it. I think this feature is available in most practical motor driver chips/models. The PowerSTEP01 can divide one step into a maximum of 128 divisions, so in the case of a motor with 200 steps per revolution, you can control it at a resolution of up to 200x128 = 25,600 steps within one rotation. Moreover, the main advantage of microstepping control is that by making the steps finer, the jumps between steps are smaller and the rotation becomes very quiet and smooth. Especially at low speed, such stepper motors can rotate almost without producing any sound.
This video shows the back side of one of my past projects. The motor shaft only has a range of 45 to 90 degrees of rotation, but by precisely controlling that range, we were able to keep the number of mechanical parts to a minimum.
Note: This project uses an early prototype of STEP400 which uses the L6470 driver, not PowerSTEP01, but the performance is exactly the same when it comes to microstepping capabilities.
While this example is a full scale project, you can of course use such capabilities in simpler experiments. For example, in the last scene of the STEP400 introductory video, the board is turned by a stepping motor.
I think a stepper motor has great potential as a simple constant-speed rotation device. Other advantages include the ability to provide torque and hold the load even when the motor is stopped and a lack of sparking brushes for greater durablility.
Of course, stepper motors also have some disadvantages. The biggest drawback is probably the complexity of the control circuit. Luckily, this is the part that STEP400 can handle. Also, if the load exceeds its limit, at some point it will suddenly shift out of position. Without an external sensor, this fault cannot be detected. Also, certain frequencies tend to resonate for structural reasons and those vibrations can become louder and more prone to stalling at certain RPMs. The PowerSTEP01, used in STEP400, has a function called sensorless stall detection, but it doesn’t seem very practical in real world situations. I will explain this subject in more detail in another post.
Next time, I’ll have some demos of STEP400 working with coding environments and applications. See you!