390 likes | 616 Views
Electric Propeller Driven RC Aircraft Constraint Analysis/Weight Estimation/Flight Simulation/Optimization. Purdue University AIAA Design Build Fly Team 2007-2008. Electric Propulsion Model. Measures of efficiency:. Battery. Motor. Propeller. Battery Energy Density:.
E N D
Electric Propeller Driven RC AircraftConstraint Analysis/Weight Estimation/Flight Simulation/Optimization Purdue University AIAA Design Build Fly Team 2007-2008
Electric Propulsion Model Measures of efficiency: Battery Motor Propeller Battery Energy Density:
Quantifying the target design space CONSTRAINT ANALYSIS
Definition Performance requirements imply a functional relationship between Power to Weight ratio ( ) and Wing Loading ( ). For each phase of flight, the power to weight ratio is calculated in terms of wing loading.
Code Structure input.dat (can rename as required) Calculate C_D, K, L/D constraint.m (Run this file to run code) Turns Takeoff Landing Ceiling Rate of Climb Max Speed Turns
Takeoff Note: Velocity taken to be mean velocity till take-off (=70% of take-off velocity) (Brandt Eqs 5.52 and 5.77)
Landing (Brandt Eqs 5.52 and 5.77)
Running the Constraint Program • Download and unzip the constraint analysis code(s) from Team Center. • In the folder, you will see a program called constraint.m. This is the master program, and it calls all of the other .m files as functions. • There is no need to edit the master program, but feel free to take a look at the program and its functions to understand how it works. • Run constraint.m in MATLAB, it will prompt you for an input file (contraint_input.dat). • Desired constraints can be analyzed by updating the aircraft parameters and flight segments in the input file (contraint_input.dat). • The program will output (to the MATLAB command screen) some various values (mostly the data you have input). If you wish to see additional numerical data, feel free to change the program to print out the data. • A graph of Wing Loading (oz/ft2) vs. Power to Weight Ratio (Watts/lbf) will be created, showing the energy required for each of the legs of the mission. An example of the output follows.
The input file is called contraint_input.dat(You can rename it to whatever you want). Here is an example set of inputs: airplane 5.00 aspect ratio 0.08 Cdo 0.60 propellor efficiency 0.60 motor efficiency 0.80 oswaldefficiciency take off 1300. altitude (ft) 1.2 Clmax 75. takeoff distance (ft) landing 1300. altitude (ft) 1.2 Clmax 100. landing distance (ft) 0. reverse force fraction ceiling 1400. altitude (ft) rate-of-climb 1400. altitude (ft) 5. R/C (ft/sec) max speed 1400. altitude (ft) 42. airspeed (ft/sec) turn 1400. altitude (ft) 50. airspeed (ft/sec) 1.15 load factor Edit as required • Each of the numbers in the input file must have a decimal in it. For example, 1.2, or 75. (not 75). • Do not change the order of the different variables. Don’t change anything but the numbers! • The altitude is MSL (Altitude above Mean Sea Level). • You can repeat certain legs, for example, you can have multiple turn segments, ceilings, etc. To do so, simply add the new flight profiles to the input file. Sequence of flight segments is not important. Mission Legs Edit as required
Estimating aircraft weight/size WEIGHT ANALYSIS
Take-Off Weight Computation Take-off Weight Empty Weight Payload Weight Battery Weight for each flight leg Rearrange terms Mission Input Mission Output Computed for each flight leg Empirically Derived
SLUF Battery Weight Fraction Brandt p42
Reference: Aircraft Design: A Conceptual Approach, Daniel P. Raymer Flight Segments Aerodynamic Model: Take-off: Cruise (Type 1 – Best Range; Type 2 – Velocity Specified) Loiter (Max. Endurance) Sustained Turn:
Assumptions • The weight fraction is known and achievable • 0.23 for most competitive AIAA D/B/F aircraft • 0.40 for AIAA D/B/F competition average • The motor and propeller efficiencies are constant (not true!) • Known 2 term aircraft aerodynamic drag model is applicable • Estimate and update based on wind-tunnel testing • Wind speeds/directions not considered • Increased power requirement for upwind flight segments with a headwind are not offset by reduced power requirements on the downwind flight segment. • Human-in-the-loop – Pilot cannot always operate aircraft at optimal design point! • Safety factor required to achieve design performance specification
Running the Weight Program • Download and unzip the constraint analysis code(s) from Team Center. • In the folder, you will see a program called weight.m. This is the master program, and it calls all of the other .m files as functions. • There is no need to edit the master program, but feel free to take a look at the program and its functions to understand how it works. • Update to input file (weight_input.txt) to include desired aircraft parameters and define different flight segments. • Run weight.m in MATLAB, it will prompt you for an input file (weight_input.txt). • Aircraft weight break-up and performance summary for each flight leg will be output to the Matlab screen. An example of the output follows.
The input file is called weight_input.dat(You can rename it to whatever you want). Here is an example set of inputs: airplane 5. aspect ratio 0.08 Cdo 0.65 span efficiency 0.60 propeller efficiency 0.60 motor efficiency 22. wing loading (oz weight/ft2) 45. power to weight (Watt/lbf) 70000. energy (Joules) / Battery Weight (lbf) 0.40 empty weight fraction (emperical) 7.2 payload weight (lbf) take-off 1300. altitude (ft) 1.2 Clmax climb 100 alitude above ground to climb to (ft) 1. delta (% of max power) c1 1400. altitude (ft) 7000. cruise distance (ft) c2 1400. altitude (ft) 7000. cruise distance (ft) 40. cruise velocity (ft/s) lo 1400. altitude (ft) 7000. cruise distance (ft) t1 1400. altitude (ft) 720. turn angle (degrees) 1.8 clmax t2 1400. altitude (ft) 31.05 turn velocity (ft/s) 720. turn angle (degrees) Edit as required • Each of the numbers in the input file must have a decimal in it. For example, 1.2, or 75. (not 75). • Do not change the order of the different variables. Don’t change anything but the numbers! • The altitude is MSL (Altitude above Mean Sea Level). • You can repeat certain legs, for example, you can have multiple turn segments, ceilings, etc. To do so, simply add the new flight profiles to the input file. Sequence of flight segments is not important. Mission Legs Edit as required Note: Climb module available, but current version requires improvement and is not recommended for use.
Estimating aircraft performance FLIGHT ANALYSIS
Running the Flight Program • Download and unzip the constraint analysis code(s) from Team Center. • In the folder, you will see a program called flight.m. This is the master program, and it calls all of the other .m files as functions. • There is no need to edit the master program, but feel free to take a look at the program and its functions to understand how it works. • Update to input file (flight_input.txt) to include desired aircraft parameters and define different flight segments. • Run flight.m in MATLAB, it will prompt you for an input file (flight_input.txt). • Aircraft performance summary for each flight leg will be output to the Matlab screen, including energy requirements and surplus. An example of the output follows.
The input file is called flight_input.dat(You can rename it to whatever you want). Here is an example set of inputs: airplane 5. aspect ratio 0.08 Cdo 0.65 span efficiency 0.60 propeller efficiency 0.60 motor efficiency 70000. Energy (Joules) / Battery Weight (lbf) 7.2 payload weight (lbf) 7.96 empty weight (lbf) 4.75 battery weight 14.48 wing planform area (ft^2) 895.95 motor power (watts) take-off 1300. altitude (ft) 1.2 Clmax climb 100 alitude above ground to climb to (ft) 1. delta (% of max power) c1 1400. altitude (ft) 7000. cruise distance (ft) c2 1400. altitude (ft) 7000. cruise distance (ft) 40. cruise velocity (ft/s) lo 1400. altitude (ft) 7000. cruise distance (ft) t1 1400. altitude (ft) 720. turn angle (degrees) 1.8 clmax t2 1400. altitude (ft) 31.05 turn velocity (ft/s) 720. turn angle (degrees) Edit as required • Each of the numbers in the input file must have a decimal in it. For example, 1.2, or 75. (not 75). • Do not change the order of the different variables. Don’t change anything but the numbers! • The altitude is MSL (Altitude above Mean Sea Level). • You can repeat certain legs, for example, you can have multiple turn segments, ceilings, etc. To do so, simply add the new flight profiles to the input file. Sequence of flight segments is not important. Mission Legs Edit as required Note: Climb module available, but current version requires improvement and is not recommended for use.
Iterating through the feasible design space PERFORMACE OPTIMIZER
Program Format • Software Platform: Matlab • Flight Profiles: mission1.m, mission2.m • Specify flight segment types, distances, etc. for each flight mission • Main program: optimize.m • Define design space, aircraft constants and scoring parameters • Program Output: Matlab screen • No output file
Mission Profiles (missionx.m) • Place blue text in mission files in any sequence and any number of times. Required inputs are placed in <> and outputs include flight segment name (leg(i,:)), battery weight fraction (wb_wto(i,:)), velocity (v(i,:)) in ft/s, time (t(i,:)) in seconds and distance (x(i,:)) in feet. Input units are feet and degrees. • Take-off:[leg(i,:) wb_wto(i,:) v(i,:) t(i,:) x(i,:)]=takeoffp((<altitude>, <Clmax>) • Straight & Level Flight • Cruise Type 1 (Min. Power Consumption)[leg(i,:) wb_wto(i,:) v(i,:) t(i,:) x(i,:)]=cruise1p(<altitude>, <distance>); • Cruise Type 2 (Specified Velocity)[leg(i,:) wb_wto(i,:) v(i,:) t(i,:) x(i,:)]=cruise2p(<altitude>, <distance>, <velocity>); • Loiter (Max. Endurance)[leg(i,:) wb_wto(i,:) v(i,:) t(i,:) x(i,:)]=loiterp(<altitude>, <distance>); • Turns • Turn Type 1 (Min. Power Consumption)[leg(i,:) wb_wto(i,:) v(i,:) t(i,:) x(i,:)]=turn1p(<altitude>, <angle>); • Turn Type 2 (Velocity Specified)[leg(i,:) wb_wto(i,:) v(i,:) t(i,:) x(i,:)]=turn1p(<altitude>, <velocity>, <angle>); Note: Climb module available, but current version requires improvement and is not recommended for use.
Main Program (optimize.m) • Input aircraft parameters • Establish mission constraint to obtain required specific power requirements • Usually take-off distance requirement • Size aircraft for heaviest payload mission • Evaluate aircraft performance for other missions • Iterate through wing loadings and aspect ratios to optimize parameters of interest! • File provided is based on 2007-2008 competition and will require to be tailored for each year’s requirements.
Example: 2007-2008 Flowchart INPUT: Wing Loading (WTO/S) & Aspect Ratio (AR) MAIN PROGRAM LOOP Drag Coefficient: Take-off Weight: TAKE-OFF Take-off Velocity: Take-off Distance: CRUISE Min. Power Cruise Point: Battery Weight Fraction: TURN Iterate load factor (n) and turn velocity. Minimize Battery Weight Fraction: PAYLOAD MISSION T/O WEIGHT MISSION 2 SCORE EMPTY MISSION T/O WEIGHT MISSION 1 SCORE
Contacts Pritesh Mody (pcmody@purdue.edu) Kyle Noth (knoth@purdue.edu)