Close
0%
0%

Project Bird Fish - Free Flight Robotics

Considerate conservation and climate science is on the horizon. These robots are developed to work in multi-species flocks for GOOD!

Similar projects worth following
Non-rigid airfoils have enormous potential, but to date automated systems must be reliable and therefore tend to be low performance high loading airfoils. Like parachutes. Paragliding is an elegant form of flight along with other free flight methods. These vehicles have the highest payload-performance to aircraft weight/pack-volume of any aircraft or flight platform in the world. To this end. Development of Free Flying flocks has been on-going since 2016 in various forms at Autodesk Pier 9 where it was conceived, then within Free Flight Lab a non-profit research lab, then within a larger project called Monark we were able to flight test this concept at 18,000m using a high altitude balloon. The payload collected atmospheric data and flew to a waypoint 50km away. Work is on going on new versions un-related to past versions based on lessons learned.

- Mike Vergalla

Typical paragliders that human pilots fly have 6:1 -> 12:1 glide ratios. high performance sail planes are incredible with up to 70:1 glide ratio. I'm confident we will see cooperative free flight flocks in the near future. 

Full size paraglider wings carry 60-220kg. I fly a wing rated to 95kg, 105kg, and a tandem rated to 220kg. 

Typical descent wings like speed wings and ram-foil parachutes are in the <3:1 area... with some exceptions. This limits operations mostly to waypoint tracking and arrival in a 4-D manner. This is still novel and unique. You can see groups like space-x and worldview successfully conduct these operations. What if you open much higher, what if you had the skills of a trained free flight pilot, and finally what if you could talk to your friends of all types to find out where the best lift is and what conditions are like elsewhere. 

A human pilot who is skilled, in the right place, on the right day, with the right mindset and gear can fly over 12hours and over 500km in a single flight. 

It is much easier to fly when you are observing the other creatures, bugs, birds, pilots around you. This naturally leads to a flock can always fly faster and farther.

What is the most simple form of this?  What is the most advanced, complex tech saturated form?

Think about a butterfly, Monarchs travel 1000s of miles. They do not fight the conditions. Or take a bigger engine. They use the environment and timing to travel far.  

photo: Small unit flying at Woodrat Mountain in Ruch, Oregon. 2020

I want to thank Yohan from https://hackaday.io/project/176621-r2home for the inspiration to post this work. The article on him got me to reach out and start to share lessons I learned so that he can be more successful, faster. He is super smart, motivated and talented. Thank you for getting me in gear and looking through files and folders to find failures.. videos and pictures. 

This is what it looks like.. 4hours later many of these pilots were over 100km away from the start. 

On a different flight, this is the view down. I was above other pilots, and as you can see we crossed into land that had more agriculture. That directly changed our ability to fly. You can see the line... as we go from dry land to wet crops. Within the next 30min all pilots were on the ground. 

The ultimate goal is to have multiple vehicles coordinating together to do good for our planet, and our understanding of energy, mass and water exchange in atmosphere.

The high altitude drop was quite exciting. Here is a timing run down. 

Balloon Launch from Ground 00:13:28

Release at 18,000m (60,000ft) - Time Stamp 00:51:27 

Wing finally has enough air to open 9 seconds later (~400m free fall)- Time Stamp 51:36

Opens with twists, twisted until - Time Stamp 00:52:12

Untwisted in spiral maneuver, overspeed collapses - Duration 43 seconds. 

Exit and stable flyaway - Time Stamp 00:52:55

So over a minute of terror!!! hahah well not really it was a brave robot. 

If you do the math on that.. as an estimate the system needed to fall at 88.3m/s before the single surface wing had enough dynamic pressure to open at 18,000m.  If you go higher the air is thinner. I would like the system to be open and flying above 114,000ft so basically double the height. To demonstrate Martian explorer capability. 

Units need to communicate in a simple, low power way. One solution is LoRa and things like Meshtastic, another option while in the research phase is to use APRS. I have some ideas about how to create team logic and strategies for different types of sensing missions.  

One I always daydream about is full 3D time lapse of thunderstorm. Throw a couple into the fire and see what happens. Have a group that is flying big circuits around spaced out, all filming.. Would be incredible. 

TESTED_FLIGHTcontrolbirdfishv2_flightFixed.txt

Flight tested.. With one error fixed.

plain - 9.94 kB - 01/10/2021 at 01:10

Download

controlParaSoundingv4.ino

Latest version.. With lessons learned implemented

ino - 9.57 kB - 01/10/2021 at 01:10

Download

exactflat.jpg

taking 3d surface and making flat pattern

JPEG Image - 75.06 kB - 01/08/2021 at 00:07

Preview
Download

quadwing.f3d

Design of my own wing. cut files below are via exact flat. From 3d surfaces.

fusion - 7.62 MB - 01/08/2021 at 00:05

Download

celldxfs.f3d

A Wing design cutfiles with seam allowance Fusion360 archive

fusion - 806.60 kB - 01/08/2021 at 00:00

Download

View all 29 files

  • 22hrs Later - Birdfish V5

    freeflightlab02/07/2021 at 16:40 0 comments

    Final moments of printing. 

  • After the Storm

    freeflightlab02/02/2021 at 02:54 0 comments

    In the days after the storm the atmosphere can remain quite unstable. This becomes our playground. 

    First we hike the 2000 feet up to a launch at Mission Peak. I'm flying this day tandem on the Ozone Swiftmax. 

    Taking off we are able to find thermals that take us up to close to 4000ft. Our climbs are really only limited by the fact that we are reaching the clouds. It is possible to go higher, but not safely or legally in the US. I did try to get to the windward edge to surf/soar up the face of the cloud, but it didn't work this time. 

    This picture is take right as we are trying to push forward to get cloud surfing. 

    Below us is Fremont, the Tesla Plant, 680 is the closer highway, and 880 is the one just a bit farther. Across the bay if you look carefully you can see both NASA Ames, and Shoreline Amphitheater. The color of the bay changes, there are some reddish brine ponds on the eastern shores closest in frame. To the immediate right of us are piles of salt. 

    A keen eye can see that there is very little wind. The bay is reflecting like a mirror. 

    Multi-million dollar homes scatter the hillside, but in some places large palaces loom above the others in private kingdoms on tiny mountains. 

    There is a white square and a white water tank in the lower left of the view both of these tend to be good trigger points for thermals. The Mission Blvd section of road cuts out a volume of airspace that my best guess is for the old glider port. 

    Warm springs BART is also in view. 

    Across the Bay you can see rain. Near Windy hill and Stanford (If you look close enough you can see Stanford Tower)  as well as los altos. 

    The picture is taken by Bob, another paraglider pilot who climbed up in the same thermal as us. 

    We ended up flying down range to another park called Ed Levin, and almost landing twice on the way there, but we got low saves back to the clouds both times.. 

    As Bob and Ismo (another pilot who is from Finland and doesnt mind the cold!) went down range, we decided to attempt to fly back to Mission Peak. We did it!!! Ismo and Bob went on to have amazing flights. 

    https://ayvri.com/scene/1q5r1p96k3/ckkiu9nfa00013b6gzw75q1ju

  • Raining - Re-Design

    freeflightlab01/28/2021 at 00:17 0 comments

    I need to carry more cargo, and sensors... mostly loading for the bigger wings. 

    It's raining again.. 

    Want to learn a bit more? https://weatherwest.com/

    Anyway.. Here are some shots of the re-design. 3 Bragg's Nutritional Yeast Seasoning Configuration. ;)

     I added reinforcement in the back, and took out the speed system for now.

  • EARTH

    freeflightlab01/25/2021 at 16:19 0 comments

    Here is the footage from the downward facing camera.. 

    Its a wild ride, balanced with beautiful Earth views. 

    I love when its doing spirals. Could be a strange art installation on an old TV in a German art museum. 

    Then... as it flies away Earth shows up.. 

    Oh this is not an old film of glitch footage.. This is real life. 

    Time Stamps are the same as the above upwards facing camera.

  • Weather, The Invisible Force (sometimes)

    freeflightlab01/22/2021 at 20:24 0 comments

    Well Today I planned to make some videos of testing one of the newest units.. 

    After flying some RC planes in the field to warm up, all of the planes are 3d printed (https://www.eclipson-airplanes.com/airplanes)

    It started to rain, in fact my maiden flight of a plane was in the rain.. Super fun, but no paraglider flight testing.  

    The window we had was from 9-10am. 

    Weather.. I've devoted a lot of passion and energy since about 2010 into understanding our Earth's processes in greater detail. I like the limits of things, or to imagine where those limits might be.. 

    2008 - Started sailing by repairing hurricane damaged boats and testing them... 

    2010 - Refocus Carbon Cycle Project at International Space University

    2012 - Started Paragliding

    2015 - Anticip8  - Weather Analytics Company Startup Incubator - Singularity University

    2017 - Express 37' National Champions - Sailing.

    2018-2020 - Monark - Weather Analytics, GNSSRO, Global Sensing at Scale | Airbus, Acubed Innovation Center

    2020 - BBC Super Powered Eagles / PBS NOVA Eagle Power - Tandem Paragliding with Lloyd Buck 

    To me weather is a critical part of operating flying vehicles safely, and understanding it is the crux of getting global adoption of autonomy.

    You must consider to your fullest extent of skill possible/available all risks that are present, or in a different way, potential opportunities for performance gains.

     I love to sail and paraglide, both of these use no fuel, only sunlight and wind. Other vehicles can use this mindset to keep flying or to safely launch or land. 

    The topic of weather, and climate is difficult because it happens at various scales of time and dimension. Ok that sounds crazy, but how do I talk about the tiny flies that float in early morning sun around my plants in the same context as wind driven sea spray impacting the formation and trajectory of a hurricane. 

    This is also why it has been difficult to fully resolve the physics that go into computational analysis of weather and Earth processes. Things must be parameterized to be able to get an answer before the event occurs. Where is this limit.. 

    There is a great statement from the book '2081 A hopeful view of the Human Future' - Gerard K O'Neill

    -Von Neumann imagined that by the 1980s a very big electronic computer would be able to predict weather quite accurately. But weather prediction isn't a great deal better now than it was several decades ago. The atmosphere of Earth is enormous, a billion cubic miles in volume, and it reacts to sunlight, cloud cover, the exchange of heat with the oceans and the land, and even to the particles streaming off the sun. To make perfect predictions we'd need not only a computer of infinite speed and memory, but a system of sensing devices at every latitude, longitude, and altitude in the atmosphere, measuring at every moment the temperature, pressure, humidity, wind, airborne dust, and perhaps still other variables. In fact, measurements are only taken twice daily, and only at wildly scattered geographic locations. Over great areas of oceans, desert, and polar regions there are almost none at all. In reality, weather prediction can be affected more by a governmental decision to economize the number of air samples taken per day than by the advances in the speed and memory capacity of computers ------ 1980

    Since 1980 there have been significant improvements in both ends of sensing and forecast skill. We have not rea yet reached the limit of what is possible. Many "advanced" uav projects and high altitude platforms focus on the technical aspects of design, and offering capability to customers. We see this is difficult as Loon was just shut down. The difference between 1000 platforms, and 10 are how well do you understand your ability to navigate and maintain flight aloft. This skill is massively correlated to weather and environment. Groups like Perlan 2.0 and HAPS platforms...

    Read more »

  • Underloading Failures

    freeflightlab01/18/2021 at 05:01 0 comments

    When something works.. sometimes I move on.. sometimes I skip things.. well loading was a big one. Ill let you learn through all the videos of me excited to go test, and fly and.. well. failing.. 

    All of these failures are mostly due to having the payload too light!! yeah i said it.. too light.... its like backwards airplane.. make things heavy and strong.. why.. because then you wont have to add batteries and steel to make it correct. 

    You will see 2 wings in this... the yellow is smaller than the white.. both.. i fail at... 


    After the first wings worked, I wanted to move right away to the larger higher performance ones. I totally underestimated the loading needed for them to fly properly. 

    Glide Test

  • Flying the creation!

    freeflightlab01/11/2021 at 23:45 0 comments

    Ok here is some flying footage. Of both the big servo and small servo units. As well as the center EDF Mario Bullet version3

  • EDF vs. Pusher Fan

    freeflightlab01/11/2021 at 19:51 0 comments

    The goal of the project is free flight, so why mess around with motors. Well Simplicity. keep everything simple... simple... i hope.. simple.. 

    I could either keep flying a two part system. Drop drone, drop plane, bridge, building, paraglider.... 

    Or.. just fly up.. and test things with the throttle off. So.. 1 system it is.. can we keep it simple? 

    can we share it in a way that it is simple for others?? ugh... we will see. 

    what is the right thing to use... a large prop!!!! pusher... yea.. that is.. but why am I using EDF.... 

    EDF are more power hungry and less efficient.

    Why? 

    For Simplicity.

    For Safety.

    The goal is that anyone could handle, launch and recover. 

    In the end I needed to increase loading for the wings to work anyway, so extra batteries was not an issue. 

    I'm using 2 - 3S 1500mAh batteries. Sometimes I plug them in together for long flight times, other times just one at a time. 

    The original model I tested did have a pusher. It worked great. It also chopped lines... at least once. 

    I have tried at least 3 sizes from 55mm to over 80mm. The large ones are loud and power hungry. 

    Small ones are sorta not super efficient, but do the job. So what is the thrust vector?! Right now its perpendicular to "vertical" along the X axis. 

    I have tried models pitching it down up to 10 degrees. It also requires finding the sweet spot of thrust, to moment.. to climb efficiently. 

    Well Id like to adjust it from where it is.. Mainly because it pitches back the system, and if the loading is not enough a stall will occur. To take care of this I add a bit of speed system just as I get off the ground. 

    I took it out today to test fly and get re-familiar with the unit so I can write these logs better. 

    To add to the fun. Bob was flying. He landed so perfectly. no flipping. Full brakes. Flare to ready to fly again. Congrats Bob.. well done. 

  • Deployment Bag - Dbag

    freeflightlab01/08/2021 at 17:59 0 comments

    Learning from what works. What do humans do to jump out of things with paragliders and high aspect ratio wings.. its not like a parachute. One must avoid cravats and the lines are thinner. Not meant for shock inflation. 

    I based my design directly off of the JUSTAcro D-Bag designed by Pal Takats. I also used his packing method.  

    First drawing.

    Made it out of paper next.

    Outside of bag. Note attachment points Velcro direction. Flaps. And reinforcements on the line keeper flap

    View of inside portion of bag. 

    Packed 

  • Automation Code for Flying Paragliders

    freeflightlab01/08/2021 at 17:16 0 comments

    //level 6 heading based turn
    
    #include <PWMServo.h> //level 1
    
    #include <i2c_t3.h> //level 2
    #include <Adafruit_10DOF.h> //level2
    #include <Adafruit_Sensor.h> //level2
    #include <Adafruit_LSM303_U.h> //level2
    #include <Adafruit_BMP085_U.h> //level2
    #include <Adafruit_Simple_AHRS.h> //level2
    
    
    #include <TinyGPS.h> //level4
    
    PWMServo myservo1;  // level 1 create servo object servo1
    PWMServo myservo2;  // level 1 create servo object servo2
    
    TinyGPS gps; //level 4
    
    // Create sensor instances. //level2
    Adafruit_LSM303_Accel_Unified accel(30301); 
    Adafruit_LSM303_Mag_Unified   mag(30302);
    Adafruit_BMP085_Unified       bmp(18001);
    
    // Create simple AHRS algorithm using the above sensors. //level2
    Adafruit_Simple_AHRS          ahrs(&accel, &mag);
    
    //  LEVEL 2 Update this with the correct SLP for accurate altitude measurements
    float seaLevelPressure = SENSORS_PRESSURE_SEALEVELHPA;
    
    HardwareSerial Uart = HardwareSerial(); //level4
    //--------------------
    int pos1 = 140;
    int pos2 = 50;
    float poscom1 = pos1;
    float poscom2 = pos2;
    int n = 0;
    int xint=0;
    int loopcnt=100;
    int turnlevel=50;
    
    float heador = 0;
    float headorOLD = 0;
    
    float latgoal=37.362081;
    float longgoal=-120.993190;
    
    float brng = 0;
    float brng1 = 0;
    float turngain = .25;
    float dist_calc = 0;
    float ERRORhead = 1; // difference between heading and bearing
    float ERabs = 1; 
    float ERsplit=1;
    
    //Use for Testing Altitude based logic! yea it mostly works
    float testalt= 600; //meters
    
    unsigned long course = 0;
    //-------------------
    void gpsdump(TinyGPS &gps);
    void printFloat(double f, int digits = 2);
    
    void setup() {
      Serial.begin(9600);
       Uart.begin(9600);
        
        myservo1.attach(3); //set servo 1 to pin 3 pwm level 1
        myservo2.attach(4); //set servo 2 to pin 4 pwm level 1
        
         
     delay(100);
      // Initialize the sensors. level2
      accel.begin();
      delay(10);
      mag.begin();
      delay(10);
      bmp.begin();
      delay(10);
      Serial.println("started");
      Serial.print("Servo1 Position, ");Serial.println(pos1);//level1
      Serial.print("Servo2 Position, ");Serial.println(pos2);//level1
         
      Serial.println("10 DOF Board AHRS Starting"); Serial.println("");//level2
    }
    
    void loop() {
      sensors_vec_t   orientation;
      delay(10);
    
      sensors_event_t event; //level3
      bmp.getEvent(&event); //level3
      
      myservo1.write(pos1);
      myservo2.write(pos2);
    
       bool newdata = false; //level4
      unsigned long start = millis(); //level4
    
    
       // Every 5 seconds we print an update //level4
      while (millis() - start < 5000) {
        if (Uart.available()) {
          char c = Uart.read();
           //Serial.print(c);  // uncomment to see raw GPS data
          if (gps.encode(c)) {
            newdata = true;
            //break;  // uncomment to print new data immediately!
          }
        }
      }
    
    //turn circles when near waypoint
    while(gps.f_altitude() < 500 && dist_calc < 1){
    
    //while(testalt<15 && dist_calc < 0.8){
      delay(50);
    myservo1.write(100);
    myservo2.write(pos2);
    Serial.print("right turn"); Serial.println();
    Serial.print("Goal");Serial.println();
    Serial.print(testalt);Serial.println();
    delay(45000);
    Serial.print("Hands Up");Serial.println();
    myservo1.write(pos1);
    myservo2.write(pos2);
    delay(20000);
    Serial.print("left turn");Serial.println();
    myservo1.write(pos1);
    myservo2.write(80);
    delay(45000);
    Serial.print("Hands Up");Serial.println();
    myservo1.write(pos1);
    myservo2.write(pos2);
    delay(20000);
    Serial.print("Distance to Goal: ");
        Serial.println(dist_calc);Serial.println();
    }
    
    //head for waypoint between release and waypoint
    
    while((gps.f_altitude()) > 500 && gps.f_altitude() < 16150 ){
    //while(testalt >15 && testalt < 1000){
      myservo1.write(pos1);
      myservo2.write(pos2);
      Serial.println();
    
    brng = brng1;
     
    //hands up for +/- 10 degrees on heading
      if(ERsplit < 180 && ERsplit > 160){
        turngain=1; 
       poscom1=pos1;
       poscom2 = pos2; 
       Serial.print("hands up");Serial.println();
    }
     if (ERsplit < 20 && ERsplit > 0){
       turngain=1; 
       poscom1=pos1;
       poscom2 = pos2;
        Serial.print("hands up");Serial.println();
       }
    
       //
    
    //small turn from +/- 10 to +/-45
      if(ERsplit < 160 && ERsplit > 135)
        turngain=0.4;
      if (ERsplit <45 && ERsplit >20)
        turngain=0.4;
        
    //medium...
    Read more »

View all 13 project logs

  • 1
    55mm EDF Testing Unit - Small Servo

    (under construction. pictures of a unit with big servos. note the blocking effect... fixed... but not in this one. crash more.. then it will be fixed. )

    1. Print 

    2. Remove Support Material

    3. Using silicone glue in EDF. 

    4. Screw In Servos for Arms. 

    5. Cut length of carbon fiber or wooden rod for the riser attachments. 

    6. If using a switch (I keep frying them... so be careful) Install switch. 

    7. Using double sided tape. Mount Receiver, ESC.

    8. (Optional) If adding speed system. Build Turning Blocks. 

    9. Attach two lines that are too long to the servo arms on the speed system. 

    10. Attach wing to base. 

    11. Connect electronics to transmitter. Power on. Get zero position and find out if the EDF is wired the right direction, if not. swap two wires to the ESC. 

    12.  Attach Control Arms to Servos in the "up" Neutral position.

    13. Hang unit upside down. Adjust brake line length. 

    14. Run speed system lines to cascade attachment on the A risers. (most front) Tighten to where at neutral speed system, there is almost no slack. 

    15. Clean up wires and tape in battery pack. 

    16. Go fly. 

  • 2
    Tuning the brakes

    So.. You have it working. it flies. mostly. 

    Depending on battery and servos. You will need to adjust some things to get it flying well. 

    When you fully deflect the right or left. the wing should just break into spin. 

    When you fully bring both arms down it should just break away into full stall. Establish a stable back fly. 

    With hands full up. There should be no deflection of the trailing edge. 

    I need to get someone to help film this. 

    There is an interesting lesson from another test.. What happens if you lose power.. Do you want to fly straight? Maybe.... 

    I'm not opposed to slow turns into the ground.. I did that by accident here. A switch that I was using to not have to plug batteries in each time, fried. Again... and I lost all power.. Luckily the power off configuration... had a bit of turn in how I adjusted the brakes.. just enough to make it not land in a tree!!!!!!! yipeeee!

  • 3
    V4 Unit Build

    Print out the files Base Unit V4 & BirdFishArmBig

    The V4 version is not the one pictured, as I had made a mistake with the reinforcements between the outer shell and the core EDF unit. 

    This version uses a bigger EDF than the first unit. 

    The broken version ready for salvage is a good exploded view of the components. I might have gone overboard with the ESC. Im testing things to find out. 
    here is the Unit all buttoned up before I broke it.. Ready to fly. This ended up working great for the smaller wing, but... it really wasnt enough loading for the larger two wings.. I had to tape containers of steel bbs to it for the larger wing to fly properly. 

    Here is the next version with additional reinforcement. Still flying, still testing. Perfect for the smaller wing. 

    Do not use a switch. It will FRY!!!!!! Trust me.. You can watch the video in the last step to see that in action. 
    These have speed systems with servos to pull it down, I ended up detaching it, because It wasnt working for me the way I wanted. For this wing.. I dont need speed system. 

View all 3 instructions

Enjoy this project?

Share

Discussions

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates