Nathan Cardino
Posts: 2
Joined: Mon Dec 30, 2019 3:53 am

Making an avionics package for far 103 aircraft.

Mon Dec 30, 2019 3:58 am

Is it possible to make a simple instrumentation layout of the common big six gauges using this berrygps-imu v3 - gps and 10dof for the raspberry pi - accelerometer, gyroscope, magnetometer and barometric/altitude sensor, and a 7in touch display paired with a raspberry pi?

aBUGSworstnightmare
Posts: 1886
Joined: Tue Jun 30, 2015 1:35 pm

Re: Making an avionics package for far 103 aircraft.

Mon Dec 30, 2019 9:52 am

Theoretically speaking yes, but will your countries authority allow you to use it in a plane?

Nathan Cardino
Posts: 2
Joined: Mon Dec 30, 2019 3:53 am

Re: Making an avionics package for far 103 aircraft.

Mon Dec 30, 2019 9:55 pm

As long as it's not permanently mounted it will be okay.

User avatar
thagrol
Posts: 2961
Joined: Fri Jan 13, 2012 4:41 pm
Location: Darkest Somerset, UK
Contact: Website

Re: Making an avionics package for far 103 aircraft.

Mon Dec 30, 2019 10:17 pm

Nathan Cardino wrote:
Mon Dec 30, 2019 9:55 pm
As long as it's not permanently mounted it will be okay.
Are you keeping the original instruments too? And will they be visible?

The question you need to answer is not whether doing this is technically possible, not even whetther it'll pass regulations but do you trust your own electronics and coding skills with your life and the lives of your passengers?

By making your own instruments and display that's what you'll be doing.

And while I'm not a pilot, won't there be some calibration steps (reference pressure and altitude of the airstrip etc) that you'll end up having to do on two seperate systems? The onboard instruments and your custom ones.

Frankly I'd hesitate to replace the instruments in my car and that's when it's trivial to get the relevant data from the EMU.
Attempts to contact me outside of these forums will be ignored unless signed in triplicate, sent in, sent back, queried, lost, found, subjected to public enquiry, lost again, and finally buried in soft peat for three months and recycled as firelighters

knute
Posts: 550
Joined: Thu Oct 23, 2014 12:14 am
Location: Texas
Contact: Website

Re: Making an avionics package for far 103 aircraft.

Tue Dec 31, 2019 4:23 pm

Disregarding the question of why you would want to do this; there is no airspeed input. I think the other instruments could be created from the data provided. It is not clear to me what a 10dof is however? I don't know enough about how the gyroscopes in this work to know if it is possible to get a gravity reference as you would with a mechanical gyro instrument.

Sounds like a fun project though!

User avatar
thagrol
Posts: 2961
Joined: Fri Jan 13, 2012 4:41 pm
Location: Darkest Somerset, UK
Contact: Website

Re: Making an avionics package for far 103 aircraft.

Wed Jan 01, 2020 12:40 am

knute wrote:
Tue Dec 31, 2019 4:23 pm
Disregarding the question of why you would want to do this; there is no airspeed input. I think the other instruments could be created from the data provided. It is not clear to me what a 10dof is however? I don't know enough about how the gyroscopes in this work to know if it is possible to get a gravity reference as you would with a mechanical gyro instrument.

Sounds like a fun project though!
Can't speak about a "10DoF" sensor but the cheap, basic 9 DoF IMU sensor I have combines a three axis gyro , a three axis accelerometer, and a thre axis magnetometometer in one package. Hence nine degrees fo freedom.

The only way you'll get airspeed from that is to take very frequent readings and integrate them. trouble is that isn't very accurate and is prone to get even less so over time. Don't ask me for the math to do this, I don't know it.

It would probably be easier to derrive airspeed from the GPS fix. Every consumer level GPS I've used (stand alone, in car navigation device, or cell phone) can do this. The downside is no GPS, no airspeed measurement.
Attempts to contact me outside of these forums will be ignored unless signed in triplicate, sent in, sent back, queried, lost, found, subjected to public enquiry, lost again, and finally buried in soft peat for three months and recycled as firelighters

knute
Posts: 550
Joined: Thu Oct 23, 2014 12:14 am
Location: Texas
Contact: Website

Re: Making an avionics package for far 103 aircraft.

Wed Jan 01, 2020 11:14 pm

This discussion got me all excited about making airplane instruments. So I made a gyro compass display for fun. It is written in Java. I don't like the airplane but it's OK for this.

Code: Select all

import java.awt.*;
import static java.awt.RenderingHints.*;
import java.awt.event.*;
import java.awt.geom.*;
import java.util.*;
import javax.swing.*;

public class Compass extends JPanel {
    private final RenderingHints hints;
    private volatile int heading;

    public Compass() {
        setPreferredSize(new Dimension(400,400));
        hints = new RenderingHints(KEY_ANTIALIASING,VALUE_ANTIALIAS_ON);
    }

    public void paintComponent(Graphics g2D) {
        Graphics2D g = (Graphics2D)g2D;
        g.addRenderingHints(hints);

        int smallDimension = Math.min(getWidth(),getHeight());
        Ellipse2D circle =
         new Ellipse2D.Double(0,0,smallDimension,smallDimension);
        g.setColor(Color.WHITE);
        g.fillRect(0,0,getWidth(),getHeight());
        g.setColor(Color.BLACK);
        g.fill(circle);


        // draw ticks
        g.setColor(Color.WHITE);
        g.setStroke(new BasicStroke(2.5f));
        g.translate(smallDimension / 2,smallDimension / 2);
        g.rotate(Math.PI / -2);
        AffineTransform transform = g.getTransform();
        g.rotate(Math.toRadians(heading));
        for (int i=0; i<360; i+=10) {
            g.drawLine(smallDimension / 2 - 20,0,smallDimension / 2,0);
            g.rotate(Math.toRadians(5));
            g.drawLine(smallDimension / 2 - 10,0,smallDimension / 2,0);
            g.rotate(Math.toRadians(5));
        }
        g.setStroke(new BasicStroke(1f));

        // draw labels
        g.setFont(getFont().deriveFont(Font.BOLD).deriveFont(24f));
        FontMetrics fm = g.getFontMetrics();
        for (int i=0; i<360; i+=30) {
            g.translate(smallDimension / 2 - 50,0);
            g.rotate(Math.toRadians(90.0));
            String label;
            switch (i) {
                case 0:     label = "N";  break;
                case 90:    label = "E"; break;
                case 180:   label = "S"; break;
                case 270:   label = "W"; break;
                default:    label = Integer.toString(i); break;
            }
            int x = fm.stringWidth(label) / 2;
            g.drawString(label,-x,0);
            g.rotate(Math.toRadians(-90.0));
            g.translate(-(smallDimension / 2 - 50),0);
            g.rotate(Math.toRadians(30.0));
        }

        g.setTransform(transform);

        // draw 45 degree marks
        Path2D.Double tick = new Path2D.Double();
        tick.moveTo(smallDimension / 2 - 12,0);
        tick.lineTo(smallDimension / 2,5);
        tick.lineTo(smallDimension / 2,-5);
        tick.closePath();
        for (int i=0; i<360; i+=45) {
            g.fill(tick);
            g.rotate(Math.toRadians(45));
        }

        // draw airplane
        Path2D.Double airplane = new Path2D.Double();
        airplane.moveTo(-125,-20);
        airplane.lineTo(-120,-80);
        airplane.lineTo(-100,-80);
        airplane.lineTo(-90,-20);
        airplane.lineTo(10,-20);
        airplane.lineTo(20,-140);
        airplane.lineTo(50,-140);
        airplane.lineTo(80,-20);
        airplane.lineTo(140,-20);
        airplane.lineTo(140,20);
        airplane.lineTo(80,20);
        airplane.lineTo(50,140);
        airplane.lineTo(20,140);
        airplane.lineTo(10,20);
        airplane.lineTo(-90,20);
        airplane.lineTo(-100,80);
        airplane.lineTo(-120,80);
        airplane.lineTo(-125,20);
        airplane.closePath();
        g.draw(airplane);
    }

    public static void main(String... args) {
        EventQueue.invokeLater(() -> {
            JFrame frame = new JFrame("Compass");
            frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
            Compass compass = new Compass();
            frame.add(compass,BorderLayout.CENTER);
            JSlider slider = new JSlider(-180,180,0);
            slider.setMajorTickSpacing(30);
            slider.setMinorTickSpacing(10);
            slider.setPaintTicks(true);
            Hashtable<Integer,JLabel> dict = new Hashtable<>();
            JLabel label;
            for (int i=-180; i<=180; i+=30) {
                switch (i) {
                    case -180:
                    case 180:   label = new JLabel("S");  break;
                    case -90:   label = new JLabel("W");  break;
                    case 0:     label = new JLabel("N");  break;
                    case 90:    label = new JLabel("E");  break;
                    default:    int hdg = i < 0 ? i + 360 : i;
                                label = new JLabel(Integer.toString(hdg));
                }
                dict.put(i,label);
            }
            slider.setLabelTable(dict);
            slider.setPaintLabels(true);
            slider.addChangeListener(event -> {
                compass.heading = -slider.getValue();
                compass.repaint();
            });
            frame.add(slider,BorderLayout.SOUTH);
            frame.pack();
            frame.setVisible(true);
        });
    }
}
gryocompass.png
gryocompass.png (33.28 KiB) Viewed 1015 times

User avatar
Gavinmc42
Posts: 4508
Joined: Wed Aug 28, 2013 3:31 am

Re: Making an avionics package for far 103 aircraft.

Thu Jan 02, 2020 3:10 am

It is possible to do it baremetal with OpenVG.
https://github.com/Gavinmc42/PFD
Lots of work to do it all.

Airspeed would need a differential air pressure sensor and pitot tube.
Most pressure sensors are analog but I have used a PSoC micro as a i2c A/D converter.
Could it be done with two digital pressure sensors, static and dynamic?
Bit of code for variometer function.

GPS would be very nice and some govs are working on mapping/navigation down to 10cm accuracy for autonomous vehicle use.
Saw a video with Sebastian Thrun, about Kittyhawk and eVTOLs.
Turns out lots of people are looking at this, some are doing more than just looking.
https://evtol.news/aircraft/

Could you just take the CPU from a Tesla and recode it for this application?
Visual collision warning?
5G transponders with GPS is all that is needed?
GPS redundancy?
Are decent batteries the only thing slowing this down?
I'm dancing on Rainbows.
Raspberries are not Apples or Oranges

TundraFlyer
Posts: 1
Joined: Thu Jan 02, 2020 5:32 am

Re: Making an avionics package for far 103 aircraft.

Thu Jan 02, 2020 5:46 am

thagrol wrote:
Mon Dec 30, 2019 10:17 pm
Nathan Cardino wrote:
Mon Dec 30, 2019 9:55 pm
As long as it's not permanently mounted it will be okay.
Are you keeping the original instruments too? And will they be visible?

The question you need to answer is not whether doing this is technically possible, not even whetther it'll pass regulations but do you trust your own electronics and coding skills with your life and the lives of your passengers?

By making your own instruments and display that's what you'll be doing.

And while I'm not a pilot, won't there be some calibration steps (reference pressure and altitude of the airstrip etc) that you'll end up having to do on two seperate systems? The onboard instruments and your custom ones.

Frankly I'd hesitate to replace the instruments in my car and that's when it's trivial to get the relevant data from the EMU.
Just an FYI, FAR103 is the FAA's classification in the USA of a type of aircraft that by definition, doesn't have instruments to start with, so he won't be hiding or blocking his vision to existing instruments. Also, by definition, if you fall under FAR103 you aren't allowed to carry passengers. An example of something that falls under FAR103 is a paramotor or a powered parachute. Check out Tucker Gott on YouTube and you will get the idea.

So, that said, anything he adds to himself, will be an improvement from no instruments. :-)

Cheers,
Jeff

aBUGSworstnightmare
Posts: 1886
Joined: Tue Jun 30, 2015 1:35 pm

Re: Making an avionics package for far 103 aircraft.

Thu Jan 02, 2020 7:43 am

thagrol wrote:
Wed Jan 01, 2020 12:40 am
knute wrote:
Tue Dec 31, 2019 4:23 pm
Disregarding the question of why you would want to do this; there is no airspeed input. I think the other instruments could be created from the data provided. It is not clear to me what a 10dof is however? I don't know enough about how the gyroscopes in this work to know if it is possible to get a gravity reference as you would with a mechanical gyro instrument.

Sounds like a fun project though!
Can't speak about a "10DoF" sensor but the cheap, basic 9 DoF IMU sensor I have combines a three axis gyro , a three axis accelerometer, and a thre axis magnetometometer in one package. Hence nine degrees fo freedom.

The only way you'll get airspeed from that is to take very frequent readings and integrate them. trouble is that isn't very accurate and is prone to get even less so over time. Don't ask me for the math to do this, I don't know it.

It would probably be easier to derrive airspeed from the GPS fix. Every consumer level GPS I've used (stand alone, in car navigation device, or cell phone) can do this. The downside is no GPS, no airspeed measurement.
Fuse GPS speed with the data from your ACC. GPS speed only is inaccurate.
Use differential GPS for better positional accuracy.

User avatar
Gavinmc42
Posts: 4508
Joined: Wed Aug 28, 2013 3:31 am

Re: Making an avionics package for far 103 aircraft.

Thu Jan 02, 2020 8:32 am

RTK-GPS is the differential type, the receivers are getting cheaper.
I have used the RF basestation versions for farming rigs, 2cm type accuracy.
Will 5G offer this type of tech?

Probably soon( few years?) it will just be a module anyone can buy?
Sensor fusion maths is complex, now chips can do it for you.
Newest sensors have this chip inside them.

A 9 degree of freedom sensor tells you which way you are pointing and going in that space.
A 10th degree is normally a barometric sensor which is height, but that has to be calibrated against air pressure and sea level.

Been trying to get up to speed on autonomous navigation and it looks like Tesla has hardware that can do it.
It is only a software issue now, apart from approvals.
Elon mentions vector space, a 3D computer version of the world.

It is something I wanted when I was paraglding more than a decade ago.
Daylight displays are the main issue for using them for that application.

Been hoping a Pi Clearink display is one of the secret lab projects RPT is working on.
https://www.clearinkdisplays.com/
Wonder how Tesla do theirs?
I'm dancing on Rainbows.
Raspberries are not Apples or Oranges

User avatar
thagrol
Posts: 2961
Joined: Fri Jan 13, 2012 4:41 pm
Location: Darkest Somerset, UK
Contact: Website

Re: Making an avionics package for far 103 aircraft.

Thu Jan 02, 2020 12:32 pm

TundraFlyer wrote:
Thu Jan 02, 2020 5:46 am

Just an FYI, FAR103 is the FAA's classification in the USA of a type of aircraft that by definition, doesn't have instruments to start with, so he won't be hiding or blocking his vision to existing instruments. Also, by definition, if you fall under FAR103 you aren't allowed to carry passengers. An example of something that falls under FAR103 is a paramotor or a powered parachute. Check out Tucker Gott on YouTube and you will get the idea.
Fair enough. Like I said I am not a pilot though I have lots of experience in software failure and testing.
So, that said, anything he adds to himself, will be an improvement from no instruments. :-)
I have to disagree here. Accurate instruments, sure. But inaccurate ones are probably worse than none. We're talking about a DIY rig rather than commercially produced, tested and certified devices.
Attempts to contact me outside of these forums will be ignored unless signed in triplicate, sent in, sent back, queried, lost, found, subjected to public enquiry, lost again, and finally buried in soft peat for three months and recycled as firelighters

User avatar
Gavinmc42
Posts: 4508
Joined: Wed Aug 28, 2013 3:31 am

Re: Making an avionics package for far 103 aircraft.

Fri Jan 03, 2020 2:12 am

i have to disagree here. Accurate instruments, sure. But inaccurate ones are probably worse than none. We're talking about a DIY rig rather than commercially produced, tested and certified devices.
It depends on the sensors and technology you use, as DIYers we can use newer, better stuff than traditional equipment makers.
And yep sometime any instrument is better than none.
When coastal dune hopping it is experience that determines whether you crash into or miss trees.
Getting a wing off the top of a small tree is one experience I don't want to repeat :lol:
A mice headup display with glide slope and 3D vector space prediction plot would be nice.
Laser altimeter would be handy too.

I once calculated and designed up an electric paramotor that would be nice for those spots without enough lift etc.
The only thing that made it hard/costly was the batteries, that is/has changed in the last decade.
Plus it is fun to make stuff that none or only a few have done.

So much has changed, companies like Opener make flying without pilot training possible.
eVTOLs have exploded onto this low to mid end aviation market.
On that list I noticed automotive companies names.
Lots of very ugly designs but some made me feel like George Jetson living is just around the corner.

It took me 5 years to learn how but a Pi Zero WH with a few hundred dollars of parts was turned into a portable version of a $80,000 desktop unit.
Turned out to be more accurate too, which the client was really happy with.
Companies with marketing managers etc can be stifled with "it works, don't change a thing".
Even clients can be like that, unable to understand the electronic equivalent of chewing gum, duct tape and bailing wire.
Newer advances mean the next will be even more accurate and easier to make, removing some bailing wire needs..

Change adaption is what we do.
I'm dancing on Rainbows.
Raspberries are not Apples or Oranges

Return to “Other projects”