This week’s EYE ON NPI (video) has us pitter-pattering on our tippy-toes – it’s the newest and bestest stepper motor driver we’ve seen, the Analog Devices’ TMC5240 Stepper Motor Controller and Driver IC from the Trinamic division at ADI!
Trinamic is famous for their stepper motor driver chips, which we see often in 3D printers, XY gantries and other robots that need fast motion control. high power stepper motor
Stepper motors are commonly used when we need continuous rotation for linear movement through a rack and pinion. We’ve got huge steppers in our pick and place machine, and most makers are going to be familiar with them in CNC devices like laser cutters, 3D printers or milling machines – servos will be controlling the X, Y and Z axes as well as any extruder.
And if you have one of these devices you know they can be loud and slow: in order to get good precision from a stepper we need to micro-step, so that instead of a standard 200 steps per rotation, we get 16*200 or 256*200.
Microstepping gets us that beautiful precision, but adds a ton of noise because now there’s a PWM signal that is vibrating the motor. That’s where Trinamic’s StealthChop2 secret sauce comes in: The StealthChop chopper modulates the current based on the PWM duty cycle, resulting in a perfect current sinewave with straight crossing of the zero-current level.
The constant PWM frequency minimizes current ripple and, by extension, any Eddy current that may be found in the stator, reducing power loss, and increasing efficiency. The StealthChop chopper also removes variations of the chopper frequency, or frequency jitter, so that only the commanded variations remain. Thus, at a 50% PWM duty cycle, the current is actually zero. The result of all this is silent stepper motor operation at a standstill and at low to moderate speeds.
We’ve covered Trinamic’s TMC2226 stepper driver before on EYE ON NPI and that chip mimic’d the common configuration for stepper motor drivers: set the microsteps with GPIO and then use a DIRection and STEP pin. That makes it easy for integration with any hardware, you just need some GPIO pins, but it means that you have to do the motion control yourself. And, once you have 2 or 3 motors, motion control code can get really complicated: you have to tune and configure ramp ups from idle to fast run, and back down so there isn’t any jerky motion. What’s really cool is that the TMC5240 has built-in motion-control! You set some configurations and then can tell it what position or velocity to achieve, and the microstepping is done for you. It even handles encoder reading, mechanical stall detection, and end-stop switch interrupts for you so you don’t slam into the side of the machine by accident.
To do this, the TMC5240 has a full register and command set, that can be controlled with SPI or UART – with UART there is node addressing required, but perhaps this is easier to integrate with low-pin microcomputers. For both, commands are sent for configuring everything from stall current, to motion control, to individual steps to temperature reads.
Speaking of which: the TMC5240 come in two packages: QFN and TSSOP. TSSOP has a big thermal pad at the bottom for better dissipation, QFN is smaller. With either, use plenty of vias, a 4-layer design with dedicated 2 oz copper ground planes to keep the motor driver cool: these can handle 5-36V at up to 2A per leg, so they are throwing a lot of current around.
You can pick up bare TMC5240 chips, basic breakout boards and eval boards. Since you have to use the SPI/UART protocol to communicate, we recommend checkout out the pyTrinamic library which has added support to the TMC5240 so you can hit the ground running / stepping.
Order up some of these silent stepper drivers today and you’ll get them in hand by tomorrow afternoon, you’ll save tons of time on your next robotic or mechatronic project thanks to the tons of built-in capabilities on the TMC5240!
See the ADI video below:
Adafruit publishes a wide range of writing and video content, including interviews and reporting on the maker market and the wider technology world. Our standards page is intended as a guide to best practices that Adafruit uses, as well as an outline of the ethical standards Adafruit aspires to. While Adafruit is not an independent journalistic institution, Adafruit strives to be a fair, informative, and positive voice within the community – check it out here: adafruit.com/editorialstandards
Adafruit is on Mastodon, join in! adafruit.com/mastodon
Stop breadboarding and soldering – start making immediately! Adafruit’s Circuit Playground is jam-packed with LEDs, sensors, buttons, alligator clip pads and more. Build projects with Circuit Playground in a few minutes with the drag-and-drop MakeCode programming site, learn computer science using the CS Discoveries class on code.org, jump into CircuitPython to learn Python and hardware together, TinyGO, or even use the Arduino IDE. Circuit Playground Express is the newest and best Circuit Playground board, with support for CircuitPython, MakeCode, and Arduino. It has a powerful processor, 10 NeoPixels, mini speaker, InfraRed receive and transmit, two buttons, a switch, 14 alligator clip pads, and lots of sensors: capacitive touch, IR proximity, temperature, light, motion and sound. A whole wide world of electronics and coding is waiting for you, and it fits in the palm of your hand.
Have an amazing project to share? The Electronics Show and Tell is every Wednesday at 7pm ET! To join, head over to YouTube and check out the show’s live chat – we’ll post the link there.
Join us every Wednesday night at 8pm ET for Ask an Engineer!
Join over 36,000+ makers on Adafruit’s Discord channels and be part of the community! http://adafru.it/discord
CircuitPython – The easiest way to program microcontrollers – CircuitPython.org
Maker Business — “Packaging” chips in the US
Wearables — Enclosures help fight body humidity in costumes
Electronics — Transformers: More than meets the eye!
Python for Microcontrollers — Python on Microcontrollers Newsletter: Silicon Labs introduces CircuitPython support, and more! #CircuitPython #Python #micropython @ThePSF @Raspberry_Pi
Adafruit IoT Monthly — Guardian Robot, Weather-wise Umbrella Stand, and more!
Microsoft MakeCode — MakeCode Thank You!
EYE on NPI — Maxim’s Himalaya uSLIC Step-Down Power Module #EyeOnNPI @maximintegrated @digikey
New Products – Adafruit Industries – Makers, hackers, artists, designers and engineers! — #NewProds 7/19/23 Feat. Adafruit Matrix Portal S3 CircuitPython Powered Internet Display!
bipolar stepper motor nema 17 Sorry, the comment form is closed at this time.