Disclaimer and Social

This page may contain affiliate links. As an Amazon Associate I earn from qualifying purchases.

Monday, August 17, 2020

DIY Two-Needle Dial with Arduino

Just learned about a great device called a "Biaxial Stepper Motor." It's a pair of stepper motors driving two separate shafts that are nested concentrically inside of each other. This allows you to mount two indicator needles, one on each shaft, and operate them independently.

It functions something like the shafts that move the hands of a clock, but with one very important difference. 

two hand dial gauge for arduino with dual independent needle working with biaxial stepper for sim games
You can easily make a dial or gauge for your flight sim or other game. These biaxial stepper motors move each needle arm independently. Each hand can rotate at different speeds or directions. Easy to control with any Arduino or Raspberry Pi.


In a clock, all the shafts are linked by gears and they rotate with a set ratio (for example: the hour hand moves 1/12th of a rotation for every full rotation of the minute hand). Wikipedia calls the gearing mechanism a "wheel train" (note the illustration) with the "hand shafts" being the part attached to and  moving the hands.

By contrast, the two shafts of a biaxial stepper operate completely independently, so you can

rotate the two needles (hands) at different speeds or even in different directions at the same time. (They are not geared together like in the clock). This makes a biaxial stepper much more versatile.

How Are They Used

A great example of how they can be used is shown in this video on making custom gauges for a flight-sim (at about 3:35 he shows a two-needle fuel gauge and how he uses a biaxial stepper to make it. He even has a nice OLED display embedded in the face of the gauge.) 

And this video shows how you could rotate the dial-face with one stepper while rotating a needle with the second.

You could also make a clock, one where you can turn time backwards. A reverse clock would be surreal, or random movements could make a great office gag.

They are also useful for animatronics and special effects in cosplay and miniature models.

Buying and Specs

I could only find one version of a biaxial stepper on Amazon. (affiliate link). The images and description look exactly the same as the versions on Ebay, AllieExpress and every other site.

It is 5v with a 0.33 degree step (0.083 micro-step) and both appear to be standard 4-wire motors, so finding the pin-out should be easy. They don't appear to come furnished with the indicator needles or dial face, so you might need to create your own. You will also need to make the connecting sleeves for attaching the indicator-needle to the shafts.

The motors are small (only 29x59mm (1,15x2.32in)) and are not very strong (4nMn). I don't think they are designed for tasks larger than moving a gauge's needle. You will definitely not be powering a big combat robot with these. But I can see a lot of uses for them in cosplay and model making as well.

There are lots of tiny, single shaft stepper motors and even micro servo motors (affiliate link) designed specifically for use in creating gauges. They might be what you need if you don't require two needles operating independently on the same dial.

My guess is the biaxial stepper is really just two of those really tiny steppers with a gearbox featuring a tube (or sleeve) over the shared shaft. You could probably design a simple 3d printable mechanism to configure any pair of motors into a biaxial mechanism. There is a great single-motor three-shaft gear-linked version on Thingiverse that you could adapt and print.

Don't Be Confused

Also, don't confuse a concentrically-nested-biaxial motor with "dual shaft" or "two shaft" stepper motors (affiliate link). These motors really only have a single shaft, but it extends out of two faces of the motor. So both of the exposed ends of the single shaft always turn at the same time, at the same speed and in the same direction.

Making It Into a Gauge

NEEDLES: You will need to buy, make or adapt the indicator needles. Luckily, there are lots of clock hand kits on Amazon (affiliate link) that will provide the raw material. There are large collections or basic sets with long hands, and red-line,hi-tech with fat arrows and looped-modern and the victorian steampunk look available (affiliate links). There are many different lengths and mounting-hole sizes, so be careful to choose the sizes you need. 

You might still need some glue and a rotary tool, maybe some paint or a snipper to get the exact look you want. Every second-hand store has lots of old clocks with interesting hands, and the dollar-store sells complete clocks cheaper than you can buy a DIY kit. Scavenge the hands from these cheap sources and customize them for your needs.

OTHER INDICATORS:
You can attach different things to the shafts, it doesn't have to ne a needle. Many dials and gauges move the face (or part of it) to indicate range with colors or tick marks. You can place one needle under the face and bend it back to show around the perimeter of the dial face.

FACES: You could always draw your own custom face for your gauge or dial, but why. There a lots of great printable dial/gauge/meter faces on Pinterest. And Google has an equally large collection. Hi-tech, modern, traditional or weathered steampunk - there is already a version ready to be downloaded and printed.


CASE:
They are small enough that they will fit inside a standard automotive gauge housing (affiliate link). Of course you could always 3d print or adapt your gauge from a repurposed, found object.

CONTROL WITH ARDUINO (PI):
They use simple stepper motors, so any small stepper driver board will control them. At 5v and minimal amperage, you can use the tiniest driver board and probably not need a heatsink. You will need either a driver board that that can control two steppers, or two separate drivers. Since this might not be the only the only gauge being used, you should also consider a combination board that can drive multiple motors and motors of different types (DC, stepper and servo).

I love the "motor shield" series from Adafruit. They are dependable, versatile and well documented. The classic motorshield V2 (affiliate link) uses the UNO form factor and can control a combination of DC, stepper and servo motors. You can chain several boards together and control a dozen motors (or more). The version for the Raspberry Pi (affliate link) version has many of the same features. And the compact Featherwing vesrion (affiliate link) is perfect for builds with tight spaces.

Conclusion

The biaxial stepper motor is one of those quirky devices that you never realized you needed until you find out that they exist. Now that I know, I'm thinking of dozens of uses for them in several types of hobbies.

As an Amazon Associate, I earn from qualifying purchases.

Also find me on:

1 comment:

  1. Thanks for sharing this. I'm considering a temp gauge for my flat 6 engine but while most sensors/gauges only measure one head, there's some chance that the temp may vary between the two so I first thought of two stepper motors but realized I really wanted both needles on the same axis. Yay!

    ReplyDelete