I am trying to construct analog gauges to display CPU load, RAM use, and Network bandwidth. I am very much a n00b with all of this but everyone has to start somewhere. Anyway, my research has lead me to the Switec X27.168 stepper to drive the dials as they are cheap and works with Gaugette (About Gaugette) so the behind the scenes code is done. I’ve also decided to have an Arduino Uno run the motors as this seems to be the best all around solution.
For guages you should use a real stepper driver like the RAMPS A4988 or Pololu A4988.
They have the microstepping feature which is ideal for a guage. Forget about using the L293D.
Your link to the PDF is a mechanical drawing. You need the electrical specs sheet.
If its really > 200 ohms and 5V then you can drive direct from Arduino pins, you just
need 2 schottky diodes per pin to protect/back up the internal protection diodes.
raschemmel:
For guages you should use a real stepper driver like the RAMPS A4988 or Pololu A4988.
They have the microstepping feature which is ideal for a guage. Forget about using the L293D.
Good point. 200 steps per turn is kind of coarse for a gauge.
You might also consider air core gauges aka air core meters. They take very little current and the resolution is as high as what you drive them with. You can even build them from scratch.
PWM can drive them, or you could use external DAC chips through a buffer driver. They are very low current. In fact, if you balance them really well, I'll bet 20mA would be enough, and you could drive them directly from the Arduino pins. It will take two PWM outputs per gauge.
Its a little jerky but should be more than adequate for the low precision type of gauge I am making (CPU utilization) look at the Switec in action here attps://www.youtube.com/watch?v=AedCPZO8LsM
Its literally the same motor that drives the dials in GM cars and trucks.
So I can run 3 of these directly from the Uno? I just need to add some protection to prevent reverse flow damaging the Uno?
You'll need some kind of Home sensor. One of the problems with a stepper motor is that all motion is relative. You only know how many steps you are away from the initial position, but you must add a way to find that initial position.
An optical interrupter and an arm attached to the shaft would do it.
A nice thing about air core gauges is that they are absolute position.
The board in the Hackaday page has the flyback diodes (they are not resistors, as was mentioned in the first post) and seems to be directly connected to the Arduino. There are mechanical stops mentioned in one of the pages so maybe they drive it beyond the stop to home it (send -210 to a 200 step motor)?