So, over the last week or two, I've been working on building a physical #Cessna #C172 #skyhawk #simulator
Only now did I think it might be a good idea to start a thread documenting the design and construction, so here we go!
First, the goals of the build:
1) Accurate scale
2) Physical dials and switches, not simulated with screens
3) Proper controls (yoke, throttle, rudder pedals)
4) Comprehensive enough to run full checklists for training
I still haven't decided on the viewing mechanism. The default is to use screens as windows, but that is locked to a fixed perspective (and certainly doesn't work as well for someone in a copilot seat). My ideal would be to use AR glasses to fill in greenscreen windows, which would allow the user to have free perspective (like leaning to look out & down the side window), but the downside there is that the glasses would literally cost more than the entire rest of the build combined. So... I'm still thinking that part through. Suggestions welcome.
I got this Honeycomb Aeronautical Alpha Flight Controls Yoke.
The yoke itself is great, but it has a number of switches that I planned to implement myself (and are in the wrong place for my build). So, I'm probably still going to use it, but I'll mount it with its switches hidden behind a panel.
I bought a Cessna-style throttle too, but I can't recommend it for a few reasons:
1) It's 3D-printed parts that are simple sliders; it doesn't have the rotational actuation or button locks of the actual Cessna throttle.
2) The Cessna I plan to simulate does not have a propeller angle control (the middle blue one).
3) I left a middling review for the above reasons, and the seller delisted the item and it popped up under another seller the same day, so something fishy is going on.
There's a pretty good chance I'll be rebuilding this controller myself to match my specs.
Finally, I got Logitech G Flight rudder pedals with toe brakes. I like these so far, they're simple and to the point and have the features I need, so I'll likely be using them in the final build.
https://www.newegg.com/black-logitech-945-000024-pedal/p/N82E16826197227
While I waited for all those to arrive, I picked up a stepper motor at a local parts store to start prototyping the gauges. I'm using the vertical speed indicator as my first prototype because it's simple.
However, the stepper motor has a step size of 7.5 degrees, which is a lot (which seems to be common with smaller motors?). Anyway, doing the math, 7.5 degrees on the vertical speed indicator is almost 100 feet per second! That's way too big for a single step, so I either needed to buy better motors, or find another way to increase the resolution.
Enter the icon of industrial #engineering: the #gear!
I went through about a dozen iterations trying to get these to work. The one pictured below was the first to work properly!
Originally, I started with the standard gears like you think of in a watch, but I quickly discovered that there were precision issues with the sizes I wanted, and getting the gears aligned when they don't barely weigh anything was tricky.
So, I quickly discovered that thicker gears work a lot better in these situations, but they have issues with lateral slipping. So, I discovered this herringbone design that works way better than all the rest.
Finally, I had an almost working design, but there were issues with precision from my 3D printer. The design was just too small. So, I upsized it to the biggest the 3.25" dial diameter could fit and got the gears pictured below.
If you're interested in learning more about the herringbone design, check out this video I learned it from: https://www.youtube.com/watch?v=FqNkHA6-61c
So, I applied this gear design to a #3DPrint dial with a pressure-fit cap and two 3D printed clips. This allowed the #motor to drive the needle on the other side through the #gears.
The gears are a 3:1 ratio, and they're double-stacked, so that's 3^2 or 3*3 or 27x. That brings our 7.5 degree/100 fps margin of error down to 0.3 degree/3.5 fps, which is perfectly acceptable.
Next, I needed to figure out the gear faces. I want the designs to be crisp and readable, so free painting is out of the question (too finicky). I considered printing the design into the face as recessions that could be filled with paint, but that's pretty finicky too. Then, I realized I could just print the pattern negative space and put that over a white sheet of paper to show only the design I wanted to see.
Unfortunately, I ran into precision issues on this one too, as you can see in the image below.
Ultimately, I think I'll just be printing the designs onto paper and pasting that on the back of the dial. But it'll have to wait until I get a replacement ink cartridge for my printer.
Today, I got to work on building the frame for the cockpit itself.
I designed the frame in #Maya and then went out to purchase the lumber. I'm planning to 3D print the dashboard itself, so the lumber part just needed to be the base frame, enough to support the rest without getting in the way. This is what I came up with (along with a representation of the yoke controller).
After getting it all designed, I measured up the pieces and bought them and cut them to size. That's enough for today, I think. By next weekend I should be able to have the desk portion constructed and make a little more progress on the dials.
I do need to wait on a number of components I ordered before I can hook up the electronics.
Also got a touchscreen hooked up to an Arduino and running on it. Refresh rate is a problem, though, even with certain techniques to improve it... The problem is that with a glass cockpit type program, pretty much the entire background can need to be refreshed at any given frame.
Next thing to try is generating graphics elsewhere and just pushing them through the USB cable.
Trying something a little more snug for the new smaller screws I bought.
This took well over a dozen iterations to get it just how I liked it, but the tiny size helped me iterate quickly. Now, though, it's perfect. The LED easily slides right in, the legs lock into their grooves, and the holder snaps easily and securely into the panel it needs to be on. This will make installing the LEDs onto the actual build much easier.
This has got to be the highest engineering-to-volume thing I've ever worked on. It's a holder for an LED that's meant to easily snap into a dashboard. So, it's got a slot for the LED, slots for its connectors, a retaining ring, and two clips.
All for something that's barely a centimeter across!