Yellow Plane 2 Lost Without a Trace

by nickatredbox | December 13, 2012 | (3) Posted in Projects

Sadly Yellow Plane was lost on a test flight and as yet has not been found. It flew reasonably well, but still a bit heavy. She was in the air nearby but over water I think when I lost orirntation and then she was gone.

Lost a key fob cam 6ch RX and 2200mAh Lipo. As its probebly went in the drink its very likley sunk in the mud by now. Pitty as the video would have shown snow on the hills nearby as it was a frosty Autum morning.

 

 

 
Wing Loading         15 oz/ft² 
 
Motor Power          410 W
Power/Mass            267 Watts/Kg


Fuselage Mass 1040 mm
Wing Span          1200 mm
Wing Chord          280 mm

Take off Mass  1536 Grams

 

All Calcs Here

 

Turnigy L3010C-1300kv (420w) 
H-KING 50A Fixed Wing ESC
10 X 6  Windsor Propeller S2 Series Master Air Screw Sabre Shaped blades 
Turnigy 3C 2200mAh discharge 20C

Thrust test results
1632 Grams, 415 Watts, 37.6 Amps Grams/Watts 3.93 
1490 Grams, 356 Watts, 31.5 Amps Grams/Watts 4.18
1231 Grams, 264 Watts, 23.1 Amps Grams/Watts 4.66
1071 Grams, 214 Watts, 18.2 Amps Grams/Watts 5.00
750   Grams, 139 Watts, 11.6 Amps Grams/Watts 5.39

 

Stability system test

Arduino code for receiver


void UpdateServos()
{
      
    //Digital inputs TX code helper
    //TxVal[8] |= (digitalRead(5) << 0);//joy 2 push
    //TxVal[8] |= (digitalRead(6) << 1);//pb
    //TxVal[8] |= (digitalRead(7) << 2);//slide
    //TxVal[8] |= (digitalRead(8) << 3);//toggle
     
    //Throttle TxVal[1] 
    //Rotary pot TxVal[2]  
    //Joy 1 X TxVal[3] 
    //Joy 1 Y TxVal[4] 
    //Joy 2 X TxVal[5] 
    //Joy 2 Y TxVal[6] 
    //rssi TxVal[7]
    //digital TxVal[8]
    //micros() TxVal[9]
        
    //Use the pot as the gain for all channels for now    
    float GainPot = (float)(TxVal[2]) * 0.001f;    
      
    //Get the target values from the TX    
    int PitchTarg =  (TxVal[3] / 10);
    int RollTarg =  (TxVal[4] / 10);
    int YawTarg =  (TxVal[6] / 10);
    
    
    //Prime the Target WOZ values  
    if(PitchTargWOZ == 9999)
      PitchTargWOZ = PitchTarg;
      
    if(RollTargWOZ == 9999)
      RollTargWOZ = RollTarg;
      
    if(YawTargWOZ == 9999)
      YawTargWOZ = YawTarg;
      
    
    //Get the Centered target values   
    float PitchTargCentred = (float)(PitchTarg - PitchTargWOZ);
    float RollTargCentred =  (float)(RollTarg - RollTargWOZ);
    float YawTargCentred =  (float)(YawTarg - YawTargWOZ);
      
    //Calculate gains
    float PitchGain = GainPot * 1.0f;
    float RollGain = GainPot * 1.0f;
    float YawGain = GainPot * 1.0f;
    
    //Get Gyro values
    float PitchGyro = (float)(AnIn[2] - AnInWOZ[2]);
    float RollGyro = (float)(AnIn[1] - AnInWOZ[1]);
    float YawGyro = (float)(AnIn[0] - AnInWOZ[0]);
    
    //Calc P error
    float PitchError = (float)PitchTargCentred + PitchGyro;
    float RollError = (float)RollTargCentred + RollGyro;
    float YawError = (float)YawTargCentred + YawGyro;
        
    //Apply gains
    int PitchTrim = (int)(PitchError * PitchGain);    
    int RollTrim = (int)(RollError * RollGain);    
    int YawTrim = (int)(YawError * YawGain);
    
    //Constaring trim authority
    PitchTrim = constrain(PitchTrim, -30, 30);
    RollTrim = constrain(RollTrim, -30, 30);
    YawTrim = constrain(YawTrim, -30, 30);
    
    //Dump the trim value
    if((TxVal[9] & 0x4) == 0)
    {        
      PitchTrim = 0;
      RollTrim = 0;
      YawTrim = 0;      
    }      
    
    //Calc flap anglke
    int Flaps = 0;
    
    //Apply flaps
    if((TxVal[9] & 0x8) == 0)
        Flaps = -25;
        
    //Throttle  
    val = TxVal[1] / 10;    
    val = map(val, 1, 179, 30, 179);
    val = constrain(val, 1, 165);         // scale it to use it with the servo (value between 0 and 180) 
    servo[0].write(val);                  // sets the servo position according to the scaled value 
       
       
    //Vee tail
    
    //Left Elevator Joy 1 Y TxVal[4]
    val = (YawTarg + YawTrim) + (PitchTargCentred + PitchTrim);   
    val = constrain(val, 15, 165); 
    val = map(val, 0, 179, 135, 45);       // scale it to use it with the servo (value between 0 and 180) 
    servo[1].write(val);                  // sets the servo position according to the scaled value 
    
    
    //Right Elevator Joy 1 Y TxVal[4]
    val =  (YawTarg + YawTrim) - (PitchTargCentred + PitchTrim);   
    val = constrain(val, 15, 165); 
    val = map(val, 0, 179, 135, 45);       // scale it to use it with the servo (value between 0 and 180) 
    servo[2].write(val);                  // sets the servo position according to the scaled value 
        
    
    //Left Flaperon           
    val = 90 + (RollTargCentred + Flaps) + RollTrim;  
    val = constrain(val, 15, 165); 
    val = map(val, 0, 179, 165, 15);      // scale it to use it with the servo (value between 0 and 180) 
    servo[3].write(val);                  // sets the servo position according to the scaled value 
    
    //Right Flaperon 
    val = 90 + (RollTargCentred - Flaps) + RollTrim;  
    val = constrain(val, 15, 165); 
    val = map(val, 0, 179, 165, 15);      // scale it to use it with the servo (value between 0 and 180) 
    servo[4].write(val);                  // sets the servo position according to the scaled value 
    
    
    //Joy 2 x nose Wheel
    val = (TxVal[6] / 10);  
    val = map(val, 0, 179, 55, 125); 
    servo[5].write(val);                 // sets the servo position according to the scaled value 
      
}

 

Yellow Plane 1 this planes sister, on a windy day for her maiden flight. Learned a lot from this design, mostly keep it light







COMMENTS

subsonichobby on January 1, 2013
Just started to design a RC plane.
http://subsonichobby.blogspot.com/2012/12/diy-subsonicdrone-v1.html

Any advice?
Log In to reply
nickatredbox on January 3, 2013
I amd new also to SPAD's about a year now, mostly to tinker with the electronics.

Initialy I made the planes way to strong and heavy :) over engineered somewhat.

With the planes I found thet doing some sums helps with design decisions

My Calcs Sheet is here
https://docs.google.com/spreadsheet/ccc?key=0AsmGA5b7qZ15dFF1U0JCMVFnTXlPNlFrYWxKVjlmSlE

Wing loading is the key to how the plane will fly, floater fast ect.

I used this Guide
Wing Loading Guide oz/ft² kg / m²
Gliders 3.05 10
Trainers 4.58 15
Sport Planes 6.10 20
Warbirds 7.63 25

If you look here
https://docs.google.com/spreadsheet/ccc?key=0AsmGA5b7qZ15dEJVLXZkaTJ4MUY5T2c0NFVpb3c2Tmc

You can see how different combinations of materials can work together to make the plane lighter.
Log In to reply
subsonichobby on January 3, 2013
Nickatredbox...I am a mechanical engineer myself, but I need some education from you on the calculations. Actually i was trying to determine the motor mount angle (thrust angle) in relation to the CG, but I dont know how to find the CG until I finish build the plane. Seems like the calc might help.
Log In to reply
nickatredbox on January 4, 2013
The guys on this site talk about thrust angle, as I remeber it they said that the closer the motor centre of action is relative to the centre of lift, the greater the thrust angle would have to be, which seems to me would be less efficient? due to the thrust in the flight direction axis being reduced by the Cosine of the thrust angle at least?
Log In to reply
nickatredbox on January 4, 2013
My spread sheet deals mostly with wing loading and keeping a handle on the weights of things on the plane. As you can see there is some basic aero stuff to estimate the effectiveness of the control surfaces, however I have never gone as far as calculating the affect of all the forces and moments.


The battery location is the easy option for adjusting CG as I'm sure you aware.

Also I had to extend the nose more than I expected from my MK1 design, which gives more space inside and allow more flexible battery location.
Log In to reply
nickatredbox on January 3, 2013
I was looking at your blog the other day btw
Log In to reply
Mizzster D Double-a on December 13, 2012
does it fly?
Log In to reply
nickatredbox on December 14, 2012
A specs are improved over Yellow Plane 1 and its ready now, so weather permitting I will let you know next week
Log In to reply
StoneBlueAirlines on December 13, 2012
Cool Plane.
Log In to reply
nickatredbox on December 14, 2012
Thank man
Log In to reply

You need to log-in to comment on articles.


Yellow Plane 2 Lost Without a Trace