I originally started by creating full scale OpenScad 3D models of the externals of the instruments that I had bought.
I have since realised that you only see the front of panel parts of an instrument so for a flight simulator the rear design can be completely different, or just a simple flat motor mounting plate.
So I have also started designing some generic 3D printed instruments for all of the ancillary instruments (i.e not on the central blind flying panel). I will also make them available on Thingiverse so that other enthusiasts can print them without the need to buy and dismantle the real things first!
The Artificial Horizon, Altimeter and Direction Indicator instruments will all require far more complex designs, but again the rear design of these instruments do not need to be physically identical to their originals.
So far I have been working on the following generic designs:
A vertical linear gauge for the Oil and Fuel Pressure. I have completed the initial OpenScad design and have a working test rig see below
A generic 2.55" ring/dial gauge, front of the panel only, with an X.27 Motor on the backplate which can be used for the Boost Gauge, Temp Gauges or Oil Pressure.
A modified 2.55" gauge for the Nose Up/Down Trim indicator
A modified 2.55" gauge to work with Meter Style Instruments such as the Oil and Radiator Temperature
A generic 2.15" meter style gauge, for the Voltmeter and Ammeter.
A generic 3.05" ring/dial gauge, which can be used for a static Brake Gauge.
A unique Direction Indicator gauge using a 28BYJ Motor and a
A Chassis (Undercarriage) position Indicator Light Box
Some simple scaling up/down of these designs will allow them to be used for the Oxygen gauges and scaling up for the fuel gauge. Offsetting the needle centre (and using smaller motors) will also enable the basic design to be used for Nose Trim and Voltage gauges.
The biggest issue I have with any motor instrument is knowing just where the needle is pointing when you power it on. The normal solution to this is to have a limit switch (or two) and to just ramp the needle down until you hit the lower limit switch then back up to a known point (the zero on the gauge). In the attached photograph zero (and down) is at the top of the photo!
Limit Switch testing for a Linear Vertical Gauge a.k.a the OIl Pressure Gauge
I have tried 3 different mechanical switches for this and several different optical switches. Even the smallest of the mechanical switches requires quite a bit of torque to close the switch and this can make the smaller stepper motors stall and miss steps. It also requires considerable mechanical fiddling just to get the switch in the right location.
There are 2 basic types of optical switch, reflector (to the right in the above photograph) and interrupter switches. The Reflector tends to be used in distance sensing rather than a simple on/off application. Interrupters are most commonly used in printers to sense and count the rotation of a shaft so are more suitable. I have some more interrupters on order from China and will give these a try before finalising the mechanical design
Another alternative is to do away with the limit switches altogether and just remember the last position count of the motor (and if using micro-stepping the step phase of the motor). This can be achieved by continuously writing the position data to the Arduino’s EEPROM. This should work well for a while, but it could suffer from creeping errors. Each time the gauge is powered off and on there is the possibility that the motor may not have completed the last movement, or may shift by a step, so the recorded position could be 1 or 2 steps out after each power cycle. So after some use the gauge may occasionally need recalibration. I will eventually set up an experiment to see just how many power cycles cause a noticeable error in the zero position.
When I have a finalised design that I am happy with I will post the 3D stl files, and some Arduino sketches on Thingiverse.
Having looked at how other people do this for the simpler dial instruments I will use X.27 car dashboard steppers and their solution. That is to simply reverse the pointer on to a stop and keep going until it can be nowhere else, then count back up to zero.