You are on page 1of 30

‭Disaster Relief Project Final Report‬

‭Robert Wolfe‬
‭Abstract‬
‭The Disaster Relief Project was a project in which a plane was designed to help‬
‭ id disasters in one of several locations. In this case it was wildfires around Rome, Italy. The‬
a
‭final design was a plane specifically meant to help in combating wildfires within ~4500 km of‬
‭Rome. This final design has some improvements over previous designs. For example instead of‬
‭using 2 smaller inefficient low bypass turbofan engines it uses one larger and much more‬
‭efficient high bypass turbofan engine. The final design has about half the range of the Boeing‬
‭787 and is also about half the size. This is another improvement as most similarly sized aircraft‬
‭have a range that is ⅕-⅓ of the range of the Boeing 787. The final design alone, however, costs‬
‭much more than such aircraft. Despite costing more than most similar aircraft it is still financially‬
‭viable with an lifespan of 13 years and an positive ROI of around 253%.‬

‭Introduction‬
‭The problem the Disaster Relief Project hoped to aid in was natural disasters‬
‭ round Rome, Italy. The primary stakeholders would be countries in Europe like Italy that have‬
a
‭lots of forests and are prone to wildfires.‬
‭Requirements‬
‭●‬ ‭The design shall not have a cruise speed that exceeds 310m/s‬
‭●‬ ‭The design shall have a rate of climb that is greater than 2% of the cruise speed‬
‭●‬ ‭The design shall have a water capacity of at least 800 gal‬
‭●‬ ‭The design shall have an autopilot‬
‭●‬ ‭The design shall have a water spraying system‬
‭●‬ ‭The design shall be able to handle a cargo load of at least 200 kN‬
‭●‬ ‭The design shall have a thermal imaging camera‬
‭Criteria‬
‭●‬ ‭The design should have a large cargo and water capacity‬
‭●‬ ‭The design should have a long range‬
‭●‬ ‭The design should have a high top speed‬
‭●‬ ‭The design should be capable of aiding wildfires‬
‭●‬ ‭The design should be adaptable and versatile‬

‭Table 1:AHP table showing the relative importance of all criteria‬


‭Criteria‬ ‭Capacity‬ ‭Range‬ ‭Speed‬ ‭Capability‬ ‭Adaptability‬ ‭Total‬ ‭Weight‬

‭Capacity‬ ‭1‬ ‭3‬ ‭1/4‬ ‭3‬ ‭5‬ ‭12 1/4‬ ‭0.264‬

‭Range‬ ‭1/3‬ ‭1‬ ‭2‬ ‭1/7‬ ‭1‬ ‭4 10/21‬ ‭0.097‬

‭Speed‬ ‭4‬ ‭1/2‬ ‭1‬ ‭1/9‬ ‭1‬ ‭6 11/18‬ ‭0.143‬

‭Capability‬ ‭1/3‬ ‭7‬ ‭9‬ ‭1‬ ‭2‬ ‭19 1/3‬ ‭0.417‬

‭Adaptability‬ ‭1/5‬ ‭1‬ ‭1‬ ‭1/2‬ ‭1‬ ‭3 7/10‬ ‭0.08‬

‭Total‬ ‭5 13/15‬ ‭12 1/2‬ ‭13 1/4‬ ‭4 95/126‬ ‭10‬ ‭46.371‬


‭The scenarios in which the aircraft is designed to aid in include mapping firefront‬
‭ ctivity, aerial firefighting, and act as a multi-purpose transport. Thus its design reflects this as it‬
a
‭has a large cargo capacity for both solid and liquid cargo. It also has room for passengers.‬

‭Background‬
‭The kinds of missions considered when designing the aircraft varied greatly.‬
‭ iding other kinds of disasters was considered, however, the idea was dismissed. This is‬
A
‭because using the equation below where LR is the lease rate, TU is the time used, and P is‬
‭lease rate per amount of time used I can determine where my time is best spent.‬
‭𝐿𝑅‬
‭𝑃‬ = ‭𝑇𝑈‬ ‭(1)‬
‭Of all of the scenarios available the wildfire scenario had the highest P value‬
‭meaning profits could be maximized throughout the lifespan of the aircraft.‬
‭There were two other aircraft that were compared to the design; the Boeing‬
‭787-9 and the Embraer E Jet ERJ 170. Despite having 2 major competitors there is definitely‬
‭room for the design. This is because the Boeing 787-9 and Embraer E Jet ERJ 170 both‬
‭specialize in transporting people and solid cargo rather than solid cargo, liquid cargo, and‬
‭people. Due to this lack of accommodation for liquid transportation there is still room for a plane‬
‭that has generalized capability. There are also a few other important features unique to the‬
‭design. For example both of the other planes lack thermal imaging cameras. This greatly‬
‭hinders their ability to monitor wildfire progress.‬

‭Design Overview‬
‭The design is far too large for the CAD program used to model it so it is at 1:100‬
‭ cale. The 3D CAD rendering of the the design can be found here‬
s
‭https://www.tinkercad.com/things/lTKGBQTJwxA-disaster-relief-project-plane-1100-scale-model‬
‭?sharecode=RUFyn6RjuE7KSB6EQS2jsaaUz55957IDtF7frfXkNLc‬‭.(Just‬‭a quick note that the‬
‭model may not work. My computer crashed and then when I tried to load the model again it‬
‭crashed tinkercad immediately. Thankfully I already had the 3 view drawings done)‬
‭ igure 1: Top view of design‬
F
‭This is the top view of the design. In this view the placement of the engine is‬
‭clear. You can also see the two doors and the cockpit windows.‬

‭ igure 2: Side view of design‬


F
‭This is the side view of the design. In this view you can now see the landing gear,‬
‭the water hose access panel, the thermal camera, and the height difference between the wings.‬
‭The cockpit windows are about ⅕ of a meter tall and about ½ of a meter long.(Quick side note‬
‭the windows are too small in relation to the plane to just label their dimensions so that's why I‬
‭am telling you here) The thermal camera has roughly the same dimensions as the windows.‬
‭ igure 3: Front view of design‬
F
‭This is the front view of the design. In this view you can now see all 3 wheels and‬
‭the beams supporting them.‬

‭The design was intended to aid in wildfire disaster scenarios around Rome, Italy.‬
I‭n such scenarios it is intended to take a more passive transport role with little active aerial‬
‭firefighting. Surprisingly enough it is projected that, with the exception of the 4 week‬
‭maintenance each year, the design should be constantly aiding in disaster scenarios for its 13‬
‭year lifespan. It is projected that there will be ~45 wildfires in the area each year while the‬
‭design will only have time to respond to 32. It is recommended that if possible multiple copies of‬
‭the design should be produced.‬
‭The design is very versatile and could have other uses if by chance it is not in‬
‭use and not undergoing maintenance. This is because it has a maximum take off weight of‬
‭~1500 kN despite its comparatively small size. The specific attributes of the design and a few‬
‭alternatives are listed below.‬
‭Table 2: Attributes of the design and alternatives‬

‭Final Design‬ ‭Alternative Design 1‬ ‭Alternative Design 2‬

‭Name‬ ‭N/A‬ ‭Embraer E Jet ERJ‬ ‭Boeing 787-9‬


‭170‬

‭# of Engines‬ ‭1‬ ‭2‬ ‭2‬

‭Engine Model‬ ‭CF6-80C2‬ ‭CF34-8E‬ ‭Trent 1000‬

‭Range(km)‬ ‭9671.6321km‬ ‭~3334km‬ ‭~15000km‬

‭Endurance(hrs)‬ ‭9.61912hrs‬ ‭N/A‬ ‭N/A‬

‭Cruise Speed(m/s)‬ ‭308.6134m/s‬ ‭247m/s‬ ‭252m/s‬

‭Length(m)‬ ‭30m‬ ‭29.9m‬ ‭62.8m‬

‭Wingspan(m)‬ ‭30m‬ ‭26m‬ ‭60.1m‬

‭Average Chord(m)‬ ‭4m‬ ‭~2.8m‬ ‭~5.4m‬

‭Camber‬ ‭.08‬ ‭N/A‬ ‭N/A‬

‭Angle of Attack(Deg)‬ ‭8*‬ ‭N/A‬ ‭N/A‬

‭Fuselage Width(m)‬ ‭3m‬ ‭3.01m‬ ‭5.77m‬

‭OEW(kN)‬ ‭211.16kN‬ ‭~207kN‬ ‭~1154kN‬

‭Max Fuel‬ ‭200kN‬ ‭N/A‬ ‭N/A‬


‭Capacity(kN)‬

‭Max Take-off‬ ‭1499.16kN‬ ‭353kN‬ ‭2235kN‬


‭Weight(kN)‬
‭Cost(USD(Millions))‬ ‭~$49.11‬ ‭$38.7‬ ‭$264.6‬

‭There are also a few other features which could add value. The full list is shown‬
‭below.‬
‭●‬ ‭Autopilot‬
‭●‬ ‭Access hatch on bottom of plane‬
‭●‬ ‭Winch‬
‭●‬ ‭Thermal imaging camera‬
‭●‬ ‭Winglets‬
‭●‬ ‭Liquid storage‬
‭Financial analysis shows that the design should have an ROI of ~253% and an‬
‭LTW of ~$134 million. The calculations leading to these results can be shown by the equations‬
‭below where‬‭𝐿𝑇𝑊‬‭=LTW($(millions)),‬‭𝑅𝑂𝐼‬‭=ROI(%),‬‭𝐼𝐶‬‭=Initial Cost($(millions)),‬‭𝑃‬‭𝑉‭𝐶‬ 𝑜𝑠𝑡𝑠‬‭=Present‬
‭Value of Costs($(millions)),‬‭𝑃‬‭𝑉‭𝐵‬ 𝑒𝑛𝑒𝑓𝑖𝑡𝑠‬‭=Present Value of Benefits($(millions)). Inserting values we‬
‭get‬‭𝑅𝑂𝐼‬‭(%)=253.043100472% and‬‭𝐿𝑇𝑊‬‭=$124261816.502million where‬‭𝑃‬‭𝑉‭𝐵‬ 𝑒𝑛𝑒𝑓𝑖𝑡𝑠‬
‭=$214974741.533million,‬‭𝑃‬‭𝑉‭𝐶‬ 𝑜𝑠𝑡𝑠‬‭=$90712925.0308million, and‬‭𝐼𝐶‬‭=$49.1069767442million.‬
‭𝐿𝑇𝑊‬: ‭124261816‬. ‭502‬ = ‭𝑃‬‭𝑉‭𝐵‬ 𝑒𝑛𝑒𝑓𝑖𝑡𝑠‬: ‭214974741‬. ‭533‬ − ‭𝑃‬‭𝑉‭𝐶‬ 𝑜𝑠𝑡𝑠‬: ‭90712925‬. ‭0308‬ ‭(2)‬
‭𝐿𝑇𝑊‬:‭124261816‬.‭502‬
‭𝑅𝑂𝐼‬: ‭253‬. ‭043100472‬ = ‭100‬ ‭𝐼𝐶‬:‭49‬.‭1069767442‬
‭(3)‬
‭The full financial analysis can be found in Appendix A. The choice of using‬
‭ utopilot allows for fewer crew and for longer continuous flights. This is because the flight crew‬
a
‭no longer have to constantly watch over the plane. It does, however, this requires a multitude of‬
‭sensors and complex code that otherwise wouldn’t be required which may lead to an increase in‬
‭failures. The choice of only having a single engine was also a difficult decision. This choice has‬
‭some benefits such as reduced fuel consumption and less weight but also has some drawbacks‬
‭such as decreased thrust and fewer placement options.‬
‭Subsystem Descriptions‬
‭Aircraft Performance‬

‭ igure 4: Expanded top view of design‬


F
‭Looking at the tail plane it is now possible to see that the length of each‬
‭horizontal stabilizer is 3.5m and that the width of the whole tail plane is 8m.‬

‭Figure 5: Expanded Side view of design‬


‭ igure 6: Expanded Front view of design‬
F
‭The performance characteristics of the design are listed below.‬
‭Endurance(hrs):9.61912‬
‭Range(km):9671.6321‬
‭ROC(m/s):102.5702‬
‭OEW(kN):211.160‬
‭Max Take-off Weight(kN):1499.16‬
‭Cruise Speed(m/s):308.6134‬
‭Lift Coefficient:1.19136‬
‭Drag Coefficient:0.08957‬
‭There are 2 main reasons why the lift and drag coefficients are so high. This is to‬
‭both keep the plane under the 310m/s speed limit set by requirement 1 and to increase the max‬
‭takeoff weight while still staying above the ROC minimum of 2% of the cruise speed set by‬
‭requirement 2. The 310m/s speed limit set by requirement 1 was also a contributing factor in the‬
‭decision to only have one engine.‬

‭Interior Design‬
‭There were three different payload/mission combinations considered. Two of‬
‭ hich were ruled out using a decision matrix to make an unbiased decision. The final‬
w
‭payload/mission combination was 32 wildfires a year as it perfectly filled the 48 week period in‬
‭which the plane would be available and had the highest gain per amount of time spent. The‬
‭AHP table used to determine criteria importance is shown below.‬
‭Table 3: AHP table used to determine criteria weights‬

‭ igh Total Time‬


H ‭ ow Inactive‬
L ‭Total‬ ‭Weights‬
‭Monetary Value‬ ‭Time‬

‭ igh Total Time‬


H ‭1‬ ‭5‬ ‭6‬ ‭5/6‬
‭Monetary Value‬

‭ ow Inactive‬
L ‭1/5‬ ‭1‬ ‭1 1/5‬ ‭1/6‬
‭Time‬

‭Total‬ ‭1 1/5‬ ‭6‬ ‭7 1/5‬

‭Below is the decision matrix used to arrive at the final choice of payload/mission‬
‭combination 1.‬
‭Table 4: Decision Matrix used to arrive at final payload/mission combination‬

‭ ombinati‬
C ‭ ombinati‬
C ‭ ombinati‬
C ‭ ombinati‬
C ‭ ombinati‬
C ‭ ombinati‬
C
‭on 1‬ ‭on 1‬ ‭on 2‬ ‭on 2‬ ‭on 3‬ ‭on 3‬
‭Rating‬ ‭Values‬ ‭Rating‬ ‭Values‬ ‭Rating‬ ‭Values‬

‭ igh Total‬
H ‭5/6‬ ‭25600000‬ ‭1/2‬ ‭19200000‬ ‭3/4‬ ‭22400000‬
‭Time‬
‭Monetary‬
‭Value‬
‭ ow‬
L ‭1/6‬ ‭0‬ ‭1/6‬ ‭0‬ ‭1/6‬ ‭0‬
‭Inactive‬
‭Time(Lowe‬
‭r=Better)‬

‭Total‬ ‭1(Winner)‬ ‭2/3‬ ‭11/12‬

‭ ayload/Mission Combination 1‬
P
‭Missions‬
‭●‬ ‭32 Wildfires/Year‬
‭Payload‬
‭‬
● ‭2 Adult Men/Women(Crew)(Stay With Plane)‬
‭●‬ ‭20 Adult Men/Women(Fire Fighters)‬
‭●‬ ‭Cable Pulley System(Stay With Plane)‬
‭●‬ ‭300 Gallons of Fire Retardant‬
‭●‬ ‭500 Gallons of Groundwater‬
‭●‬ ‭Water Pump(Stay With Plane)‬
‭●‬ ‭Thermal Imaging Camera(Stay With Plane)‬
‭●‬ ‭Aerial Water Bucket(Stay With Plane)‬
‭●‬ ‭22 Plane Seats(Stay With Plane)‬
‭●‬ ‭2 Drinking Water Jugs(Stay With Plane)‬
‭●‬ ‭2 FIrst Aid Kits(Stay With Plane)‬
‭●‬ ‭2 Fire Extinguishers(Stay With Plane)‬
‭●‬ ‭5 Shovels‬
‭●‬ ‭20 Pairs of Work Gloves‬
‭●‬ ‭20 Portable Oxygen Masks/Tanks‬
‭Payload/Mission Combination 2‬
‭Missions‬
‭‬
● ‭24 Wildfires/Year‬
‭●‬ ‭3 Earthquakes/Year‬
‭Payload‬
‭‬
● ‭2 Adult Men/Women(Crew)(Stay With Plane)‬
‭●‬ ‭20 Adult Men/Women(Fire Fighters)‬
‭●‬ ‭Cable Pulley System(Stay With Plane)‬
‭●‬ ‭300 Gallons of Fire Retardant‬
‭●‬ ‭500 Gallons of Groundwater‬
‭●‬ ‭Water Pump(Stay With Plane)‬
‭●‬ ‭Thermal Imaging Camera(Stay With Plane)‬
‭●‬ ‭Aerial Water Bucket(Stay With Plane)‬
‭●‬ ‭22 Plane Seats(Stay With Plane)‬
‭●‬ ‭2 Drinking Water Jugs(Stay With Plane)‬
‭●‬ ‭2 FIrst Aid Kits(Stay With Plane)‬
‭●‬ ‭2 Fire Extinguishers(Stay With Plane)‬
‭●‬ ‭5 Shovels‬
‭●‬ ‭20 Pairs of Work Gloves‬
‭●‬ ‭20 Portable Oxygen Masks/Tanks‬
‭●‬ ‭10 Packs of Rescue Blankets‬
‭●‬ ‭24 Emergency Relief Tents‬
‭Payload/Mission Combination 3‬
‭Missions‬
‭‬ 2
● ‭ 8 Wildfires/Year‬
‭●‬ ‭3 Tornados/Year‬
‭Payload‬
‭●‬ ‭2 Adult Men/Women(Crew)(Stay With Plane)‬
‭●‬ ‭20 Adult Men/Women(Fire Fighters)‬
‭●‬ ‭Cable Pulley System(Stay With Plane)‬
‭●‬ ‭300 Gallons of Fire Retardant‬
‭●‬ ‭500 Gallons of Groundwater‬
‭●‬ ‭Water Pump(Stay With Plane)‬
‭●‬ ‭Thermal Imaging Camera(Stay With Plane)‬
‭●‬ ‭Aerial Water Bucket(Stay With Plane)‬
‭●‬ ‭22 Plane Seats(Stay With Plane)‬
‭●‬ ‭2 Drinking Water Jugs(Stay With Plane)‬
‭●‬ ‭2 FIrst Aid Kits(Stay With Plane)‬
‭●‬ ‭2 Fire Extinguishers(Stay With Plane)‬
‭●‬ ‭5 Shovels‬
‭●‬ ‭20 Pairs of Work Gloves‬
‭●‬ ‭20 Portable Oxygen Masks/Tanks‬
‭●‬ ‭Anderson Sling‬
‭●‬ ‭4 Large Animal Cages‬
‭●‬ ‭8 Medium Animal Cages‬
‭●‬ ‭16 Small Animal Cages‬
‭Wing Design‬

‭Figure 7: Plot of Lift Coefficient and Drag Coefficient as a function of Angle of Attack‬
‭ igure 8: Plot of Lift Coefficient and Drag Coefficient as a function of Camber‬
F
‭Using this relationship, the one shown in figure 7, and the aircraft simulator it was‬
‭determined that a wing with a chord of 4m, max thickness of 0.07, angle of attack of 8*, and a camber of‬
‭.1 was optimal while keeping under the less than 310 m/s cruise speed requirement.‬
‭To choose the spar design a decision matrix was used. The AHP table used to obtain‬
‭weights is shown below. Criteria 1 is the lift coefficient to drag coefficient ratio, criteria 2 is the spar cost,‬
‭criteria 3 is the spar weight, and criteria 4 is the spar performance.‬
‭Table 5: AHP Table for Spars‬
‭Criteria 1‬ ‭Criteria 2‬ ‭Criteria 3‬ ‭Criteria 4‬ ‭Total‬ ‭Weight‬

‭Criteria 1‬ ‭1‬ ‭4‬ ‭2‬ ‭1‬ ‭8‬ ‭.3636‬

‭Criteria 2‬ ‭1/4‬ ‭1‬ ‭1/2‬ ‭1/4‬ ‭2‬ ‭.0909‬

‭Criteria 3‬ ‭1/2‬ ‭2‬ ‭1‬ ‭1/2‬ ‭4‬ ‭.1818‬

‭Criteria 4‬ ‭1‬ ‭4‬ ‭2‬ ‭1‬ ‭8‬ ‭.3636‬

‭Total‬ ‭2 3/4‬ ‭11‬ ‭5 1/2‬ ‭2 3/4‬ ‭22‬

‭Table 6: Decision Matrix for Spars‬


‭Design 1‬ ‭*Weights‬ ‭Design 2‬ ‭*Weights‬ ‭Design 3‬ ‭*Weights‬

‭Criteria 1‬ ‭2‬ ‭.7273‬ ‭2.1‬ ‭.7636‬ ‭1‬ ‭.3636‬

‭Criteria 2‬ ‭2‬ ‭.1818‬ ‭2‬ ‭.1818‬ ‭2.1‬ ‭.1909‬

‭Criteria 3‬ ‭2‬ ‭.3636‬ ‭2‬ ‭.3636‬ ‭2.1‬ ‭.3818‬


‭Criteria 4‬ ‭2‬ ‭.7273‬ ‭2‬ ‭.7273‬ ‭2.1‬ ‭.7636‬

‭Total‬ ‭2‬ ‭2.0363‬ ‭1.6999‬

‭Figure 9: Final wing design with spar‬


‭Figure 10: Final spar design wing deflection plot‬
‭Automation‬
‭The system chosen for automation was autopilot as it would have the most‬
‭ enefits. Sadly due to time constraints the autopilot does not have collision avoidance and thus‬
b
‭negated some benefits. As little time was remaining the only option was to continue with the‬
‭autopilot despite it no longer being the best option. Below are the UML models for the intended‬
‭autopilot.‬
‭Figure 11: Use Case diagram for autopilot‬
‭Figure 12: Activity diagram for autopilot‬
‭Figure 13: Sequence diagram for autopilot‬
‭To represent the autopilot a tinkercad circuit sim was created which can be seen‬
‭below.‬
‭ igure 14: Circuit sim representation of autopilot‬
F
‭List of components‬
‭●‬ ‭5 Servos(Represent control surfaces)‬
‭●‬ ‭DC Motor(Represents CF6 engine)‬
‭●‬ ‭3 LCDs‬
‭●‬ ‭4 Potentiometers(Represent pitch and roll of a gyroscope as well as GPS location)‬
‭●‬ ‭Ultrasonic Distance Sensor(Represents a barometric altimeter)‬
‭The code can be found in Appendix B. The results of automation were‬
‭satisfactory as the autopilot worked flawlessly with the exception of the collision avoidance.‬
‭Given a parameter that, for example, says that the plane isn’t facing it’s destination it will turn to‬
‭correct itself as it should. It also stabilizes the plane.‬

‭Testing and Evaluation‬


‭The experimental testing completed throughout the 10 week design process was‬
i‭mportant. It included determining the exterior shape, wing shape, wing span, number of‬
‭engines, fuel capacity, and much more. All of this led to the features of the final design.‬
‭Now that the experimental testing is done, we have FAT testing which verifies all‬
‭requirements have been met. The results of the FAT testing are below.‬
‭Requirement 1:Achieved‬
‭Requirement 2:Achieved‬
‭Requirement 3:Achieved‬
‭Requirement 4:Achieved‬
‭ equirement 5:Achieved‬
R
‭Requirement 6:Achieved‬
‭Requirement 7:Achieved‬
‭The procedures used to achieve these results can be found in Appendix C‬

‭Conclusion/Summary‬
‭The final design is a medium sized plane with well rounded firefighting and‬
t‭ransport capability. The final design solves the initial problems of lack of well rounded aircraft to‬
‭aid in fires and lack of affordable firefighting planes with other capabilities.‬
‭If given more time and resources I would like to add collision avoidance to the‬
‭autopilot, add more automated systems, and find a way to extend the 13 year lifespan.‬
‭I have learned several things from doing this project. A few examples of what I‬
‭have learned are project management, financial analysis skills, definitions of important terms,‬
‭and the difficulties of engineering.‬

‭Works Cited‬
‭N/A. N/A. [PDF].‬
‭https://asuce.instructure.com/courses/5796/files/1132508?wrap=1‬‭(accessed Nov. 26, 2023)‬
‭N/A. N/A. [PDF].‬
‭https://asuce.instructure.com/courses/5796/files/1132880?wrap=1‬‭(accessed Nov. 26, 2023)‬
‭N/A. N/A. [PDF].‬
‭https://www.fs.fed.us/sites/default/files/2015-Rising-Cost-Wildfire-Operations.pdf‬‭(accessed Nov.‬
‭24, 2023)‬
‭USDA. N/A. [PDF].‬
‭https://asuce.instructure.com/courses/5796/files/1132747?wrap=1‬‭(accessed Nov. 24, 2023)‬
‭NIFC. N/A. [Website].‬‭https://www.nifc.gov/fireInfo/nfn.htm‬‭(accessed Nov. 25,‬
‭2023)‬
‭Appendices‬

‭Appendix A‬
‭Financial Analysis Calculations‬
‭ lane Info‬
P
‭Engines:‬‭𝐸‬: ‭1‬
‭Crew:‬‭𝐶‬: ‭2‬
‭Operational Empty Weight(kN):‬‭𝑂𝐸𝑊‬: ‭211‬. ‭16‬
‭Range(km):‬‭𝑅‬: ‭9671‬. ‭6321‬
‭Endurance(hrs):‬‭𝐸𝑛‬: ‭9‬. ‭61912‬
‭Fuel Capacity(kN):‬‭𝐹𝐶‬: ‭200‬
‭𝑂𝐸𝑊‬
‭Initial Cost($):‬‭𝐼𝐶‬: ‭1000000‬ ‭4‬.‭3‬ = ‭49106976‬. ‭7442‬

‭ ission Info‬
M
‭City:Rome‬
‭Design Focus:Wildfire Aid‬
‭Disasters/Year:Wilfire:45‬
‭Weeks/Occurance:‬‭𝑊𝑂‬: ‭1‬. ‭5‬
‭Disasters Aided/Year(Per plane):‬‭𝑌𝐷𝐴‬: ‭32‬
‭Weeks/Year(Total):‬‭𝑊𝑌‬: ‭𝑊𝑂‬ · ‭𝑌𝐷𝐴‬ = ‭48‬
‭|2000‬−‭𝑅‭|‬ ‬
‭|‬ ‭2000‬−‭𝑅‬ −‭1|‬
‭Ground Time:‬‭𝐺𝑇‬: ‭1‬. ‭5‬ ‭2‬
+ ‭1.‬ ‭5‬ = ‭3‬
‭ 8‬
1
‭Trips/Day:‬‭𝐷𝑇‬: ‭𝑟𝑜𝑢𝑛𝑑‬( ‭𝐺𝑇‬+‭𝐸𝑛‬
) = ‭1‬
‭ m/Day:‬‭𝐷𝐷𝑇‬: ‭𝑅‬ · ‭𝐷𝑇‬ = ‭9671‬. ‭6321‬
k
‭Fuel(kN)/Day:‬‭𝐷𝐷𝑇‬: ‭𝐹𝐶‬ · ‭𝐷𝑇‬ = ‭200‬
‭km/Year:‬‭𝑌𝐷𝑇‬: ‭48‬(‭7‭𝐷
‬ 𝐷𝑇‬) = ‭3249668‬. ‭3856‬
‭Fuel(kN)/Year:‬‭𝑌𝐹𝑈‬: ‭𝑊𝑌‬(‭7‭𝐷
‬ 𝐹𝑈‬) = ‭76800‬

‭ dditional Information‬
A
‭Lease Rate:‬‭𝐿𝑅‬: ‭800000‬
‭Interest Rate(%):‬‭𝐼𝑅‬: ‭7%‬‭‬‭𝑜𝑟‬‭‬‭0.‬ ‭07‬
‭43500000‬
‭Lifespan(Yrs):‬‭𝐿‬: ‭𝑟𝑜𝑢𝑛𝑑‬( ‭𝑌𝐷𝑇‬ ) = ‭13‬
‭Fuel Cost($/kN):‬‭54‬. ‭76‬

‭Financial Analysis‬

‭ osts‬
C
‭OMR Costs($/Yr):‬‭𝑂𝑀𝑅‬: ‭350000‬‭𝐸‬ + ‭200000‬‭𝐶‬ = ‭750000‬
‭Payload Costs($/Yr):‬
‭𝑃𝐿𝐶‬: ‭5000‬ + ‭300‬ · ‭2‬ + ‭4000‬ + ‭2500‬ + ‭500‬ + ‭22‬ · ‭320‬ + ‭2‬ · ‭8‬ + ‭2‬ · ‭24‬ + ‭15‬ · ‭5‬ +
‭20‬ · ‭12‬ + ‭20‬ · ‭130‬ = ‭22619‬
‭Fuel Costs($/Yr):‬‭𝑌𝐹𝐶‬: ‭54‬. ‭76‬‭𝑌𝐹𝑈‬ = ‭4205568‬

‭Benefits‬
‭ ecurring Benifits($/Yr):‬‭𝑅𝐵‬: ‭𝐿𝑅‬ · ‭𝑌𝐷𝐴‬ = ‭25600000‬
R
‭Resale Value($):‬‭𝑅𝑆𝑉‬: ‭0.‬ ‭05‬‭𝐼𝐶‬ = ‭2455348‬. ‭83721‬

‭ roject Value‬
P
‭Present Value of Costs($):‬
‭𝐿‬
(‭1‬+‭𝐼𝑅‬) −‭1‬
‭𝑃‬‭𝑉‭𝐶‬ 𝑜𝑠𝑡𝑠‬: ‭𝐼𝐶‬ + (‭𝑂𝑀𝑅‬ + ‭𝑌𝐹𝐶‬ + ‭𝑃𝐿𝐶‬) ‭𝐿‬ = ‭90712925‬. ‭0308‬
‭𝐼𝑅‬(‭1+
‬ ‭𝐼𝑅‬)
‭𝐿‬
(‭1‬+‭𝐼𝑅‬) −‭1‬ ‭𝑅𝑆𝑉‬
‭Present Value of Benefits($):‬‭𝑃‬‭𝑉‭𝐵‬ 𝑒𝑛𝑒𝑓𝑖𝑡𝑠‬: ‭𝑅𝐵‬ ‭𝐿‬ + ‭𝐿‬ = ‭214974741‬. ‭533‬
‭𝐼𝑅‬(‭1‬+‭𝐼𝑅‬) (‭1‬+‭𝐼𝑅‬)
‭Lifetime Worth($):‬‭𝐿𝑇𝑊‬: ‭𝑃‬‭𝑉‭𝐵‬ 𝑒𝑛𝑒𝑓𝑖𝑡𝑠‬ − ‭𝑃‬‭𝑉‭𝐶‬ 𝑜𝑠𝑡𝑠‬ = ‭124261816‬. ‭502‬
‭𝐿𝑇𝑊‬
‭Return on Investment(%):‬‭𝑅𝑂𝐼‬: ‭100‬ ‭𝐼𝐶‬
= ‭253‬. ‭043100472‬

‭Appendix B‬
‭Arduino Code‬
‭This is the arduino code for the autopilot that was included.‬
‭/ C++ code‬
/
//‬

#include <Servo.h>‬

#include <LiquidCrystal_I2C.h>‬

int Speed = 0;‬


int DLongitude = 0;‬


int DLatitude = 0;‬


int PLatitude = 0;‬


int PLongitude = 0;‬


int Time = 0;‬


int Distance = 0;‬


int ETA = 0;‬


int Compass = 0;‬


int Destination = 0;‬


int Change = 0;‬


Servo servo_3;‬

Servo servo_2;‬

Servo servo_1;‬

Servo servo_0;‬

LiquidCrystal_I2C lcd_1(32, 16, 2);‬


LiquidCrystal_I2C lcd_2(33, 16, 2);‬


LiquidCrystal_I2C lcd_3(34, 16, 2);‬


‭ong readUltrasonicDistance(int triggerPin, int echoPin)‬


l
{‬

pinMode(triggerPin, OUTPUT); // Clear the trigger‬

digitalWrite(triggerPin, LOW);‬

delayMicroseconds(2);‬

// Sets the trigger pin to HIGH state for 10 microseconds‬

digitalWrite(triggerPin, HIGH);‬

delayMicroseconds(10);‬

digitalWrite(triggerPin, LOW);‬

pinMode(echoPin, INPUT);‬

// Reads the echo pin, and returns the sound wave travel time in microseconds‬

return pulseIn(echoPin, HIGH);‬

}‬

‭oid setup()‬
v
{‬

pinMode(5, OUTPUT);‬

servo_3.attach(3, 500,
‭ 2500);‬
servo_2.attach(2, 500,
‭ 2500);‬
servo_1.attach(1, 500,
‭ 2500);‬
servo_0.attach(0, 500,
‭ 2500);‬
lcd_1.init();‬

lcd_2.init();‬

lcd_3.init();‬

pinMode(A2, INPUT);‬

pinMode(A3, INPUT);‬

Serial.begin(9600);‬

pinMode(A5, INPUT);‬

pinMode(A4, INPUT);‬

‭nalogWrite(5, 0);‬
a
Speed = 0;‬

servo_3.write(90);‬

servo_2.write(90);‬

servo_1.write(90);‬

servo_0.write(90);‬

lcd_1.backlight();‬

lcd_2.backlight();‬

lcd_3.backlight();‬

lcd_1.print("Altitude(1000Ft)");‬

lcd_2.print("Headings(Deg)");‬

‭cd_2.setCursor(0, 1);‬
l
lcd_2.print("Roll");‬

lcd_2.setCursor(4, 1);‬

lcd_2.print("
‭ Pitch");‬

‭Latitude = random(-90, 90 + 1);‬


D
DLongitude = random(-180, 180 + 1);‬

Compass = random(0, 360 + 1);‬

}‬

‭oid loop()‬
v
{‬

lcd_1.setCursor(0, 1);‬

lcd_1.print("
‭ ");‬
lcd_1.setCursor(0, 1);‬

lcd_1.print((0.006783 * readUltrasonicDistance(A1, A0) / 12));‬

lcd_2.setCursor(5, 1);‬

lcd_2.print(" ");‬

lcd_2.setCursor(5, 1);‬

lcd_2.print(abs((map(analogRead(A2), 0, 1023, 0, 180) - 90)));‬

lcd_2.setCursor(14, 1);‬

lcd_2.print(" ");‬

lcd_2.setCursor(14, 1);‬

lcd_2.print(abs((map(analogRead(A3), 0, 1023, 0, 180) - 90)));‬

lcd_2.setCursor(4, 1);‬

if ((map(analogRead(A2), 0, 1023, 0, 180) - 90) / abs((map(analogRead(A2), 0, 1023,‬

0, 180) - 90)) < 0) {‬

lcd_2.print("-");‬

} else {‬

lcd_2.print(" ");‬

}‬

lcd_2.setCursor(13, 1);‬

if ((map(analogRead(A3), 0, 1023, 0, 180) - 90) / abs((map(analogRead(A3), 0, 1023,‬

0, 180) - 90)) < 0) {‬

lcd_2.print("-");‬

} else {‬

lcd_2.print(" ");‬

}‬

if (Speed < 100) {‬



lcd_3.clear();‬

lcd_3.print("Starting Enigne");‬

while (Speed < 100) {‬

‭Speed = 100;‬
‭analogWrite(5, Speed);‬
}‬

lcd_3.clear();‬

lcd_3.print("Engine Active");‬

}‬

if (0.006783 * readUltrasonicDistance(A1, A0) / 12 < 1) {‬

lcd_3.clear();‬

‭cd_3.print("Taking Off");‬
l
while (0.006783 * readUltrasonicDistance(A1, A0) / 12 < 1) {‬

‭Speed = 100;‬
‭analogWrite(5, Speed);‬
‭servo_0.write(75);‬
}‬

servo_0.write(90);‬

lcd_3.clear();‬

lcd_3.print("Takeoff Completed");‬

}‬

if (abs(((map(analogRead(A2), 0, 1023, 0, 180) - 90))) > 1) {‬

lcd_3.clear();‬

lcd_3.print("Steadying Plane");‬

lcd_3.setCursor(0, 1);‬

lcd_3.print("(Roll)");‬

while (abs(((map(analogRead(A2), 0, 1023, 0, 180) - 90))) > 1) {‬

‭Serial.println(abs(((map(analogRead(A2), 0, 1023, 0, 180) - 90) /‬
abs((map(analogRead(A2), 0, 1023, 0, 180) - 90)))));‬

‭if ((map(analogRead(A2), 0, 1023, 0, 180) - 90) / abs((map(analogRead(A2), 0,‬
1023, 0, 180) - 90)) < 0) {‬

‭servo_1.write(75);‬
‭servo_2.write(105);‬
‭}‬
‭if ((map(analogRead(A2), 0, 1023, 0, 180) - 90) / abs((map(analogRead(A2), 0,‬
1023, 0, 180) - 90)) > 0) {‬

‭servo_1.write(105);‬
‭servo_2.write(75);‬
‭}‬
‭lcd_1.setCursor(0, 1);‬
‭lcd_1.print(" ");‬
‭lcd_1.setCursor(0, 1);‬
‭lcd_1.print((0.006783 * readUltrasonicDistance(A1, A0) / 12));‬
‭lcd_2.setCursor(5, 1);‬
‭lcd_2.print(" ");‬
‭lcd_2.setCursor(5, 1);‬
‭lcd_2.print(abs((map(analogRead(A2), 0, 1023, 0, 180) - 90)));‬
‭lcd_2.setCursor(14, 1);‬
‭lcd_2.print(" ");‬
‭lcd_2.setCursor(14, 1);‬
‭lcd_2.print(abs((map(analogRead(A3), 0, 1023, 0, 180) - 90)));‬
‭lcd_2.setCursor(4, 1);‬
‭if ((map(analogRead(A2), 0, 1023, 0, 180) - 90) / abs((map(analogRead(A2), 0,‬
1023, 0, 180) - 90)) < 0) {‬

‭lcd_2.print("-");‬
‭} else {‬
‭lcd_2.print(" ");‬
‭}‬
‭lcd_2.setCursor(13, 1);‬
‭if ((map(analogRead(A3), 0, 1023, 0, 180) - 90) / abs((map(analogRead(A3), 0,‬
1023, 0, 180) - 90)) < 0) {‬

‭lcd_2.print("-");‬
‭} else {‬
‭lcd_2.print(" ");‬
‭}‬
}‬

servo_1.write(90);‬

servo_2.write(90);‬

lcd_3.clear();‬

lcd_3.print("Plane Steadied");‬

}‬

if (abs(((map(analogRead(A3), 0, 1023, 0, 180) - 90))) > 1) {‬

lcd_3.clear();‬

lcd_3.print("Steadying Plane");‬

lcd_3.setCursor(0, 1);‬

lcd_3.print("(Pitch)");‬

while (abs(((map(analogRead(A3), 0, 1023, 0, 180) - 90))) > 1) {‬

‭lcd_1.setCursor(0, 1);‬
‭lcd_1.print(" ");‬
‭lcd_1.setCursor(0, 1);‬
‭lcd_1.print((0.006783 * readUltrasonicDistance(A1, A0) / 12));‬
‭lcd_2.setCursor(5, 1);‬
‭lcd_2.print(" ");‬
‭lcd_2.setCursor(5, 1);‬
‭lcd_2.print(abs((map(analogRead(A2), 0, 1023, 0, 180) - 90)));‬
‭lcd_2.setCursor(14, 1);‬
‭lcd_2.print(" ");‬
‭lcd_2.setCursor(14, 1);‬
‭lcd_2.print(abs((map(analogRead(A3), 0, 1023, 0, 180) - 90)));‬
‭lcd_2.setCursor(4, 1);‬
‭if ((map(analogRead(A2), 0, 1023, 0, 180) - 90) / abs((map(analogRead(A2), 0,‬
1023, 0, 180) - 90)) < 0) {‬

‭lcd_2.print("-");‬
‭} else {‬
‭lcd_2.print(" ");‬
‭}‬
‭lcd_2.setCursor(13, 1);‬
‭if ((map(analogRead(A3), 0, 1023, 0, 180) - 90) / abs((map(analogRead(A3), 0,‬
1023, 0, 180) - 90)) < 0) {‬

‭lcd_2.print("-");‬
‭} else {‬
‭lcd_2.print(" ");‬
‭}‬
‭if ((map(analogRead(A3), 0, 1023, 0, 180) - 90) / abs((map(analogRead(A3), 0,‬
1023, 0, 180) - 90)) > 0) {‬

‭servo_0.write(105);‬
‭}‬
‭if ((map(analogRead(A3), 0, 1023, 0, 180) - 90) / abs((map(analogRead(A3), 0,‬
1023, 0, 180) - 90)) < 0) {‬

‭servo_0.write(75);‬
‭}‬
}‬

servo_0.write(90);‬

‭cd_3.clear();‬
l
lcd_3.print("Plane Steadied");‬

}‬

if (Speed < 255) {‬

lcd_3.clear();‬

lcd_3.print("Accelerating");‬

while (Speed < 255) {‬

‭Speed = 255;‬
‭analogWrite(5, Speed);‬
}‬

lcd_3.clear();‬

lcd_3.print("At Cruise Speed");‬

}‬

if (Compass != Destination) {‬

lcd_3.clear();‬

lcd_3.print("Turning to");‬

lcd_3.setCursor(0, 1);‬

lcd_3.print("Destination");‬

‭hange = ((Destination - Compass) / 20);‬


C
while (Compass != Destination) {‬

‭if (Compass < Destination) {‬
‭servo_3.write(75);‬
‭Compass -= Change;‬
‭}‬
‭if (Compass > Destination) {‬
‭servo_3.write(105);‬
‭Compass += Change;‬
‭}‬
‭lcd_1.setCursor(0, 1);‬
‭lcd_1.print(" ");‬
‭lcd_1.setCursor(0, 1);‬
‭lcd_1.print((0.006783 * readUltrasonicDistance(A1, A0) / 12));‬
‭lcd_2.setCursor(5, 1);‬
‭lcd_2.print(" ");‬
‭lcd_2.setCursor(5, 1);‬
‭lcd_2.print(abs((map(analogRead(A2), 0, 1023, 0, 180) - 90)));‬
‭lcd_2.setCursor(14, 1);‬
‭lcd_2.print(" ");‬
‭lcd_2.setCursor(14, 1);‬
‭lcd_2.print(abs((map(analogRead(A3), 0, 1023, 0, 180) - 90)));‬
‭lcd_2.setCursor(4, 1);‬
‭if ((map(analogRead(A2), 0, 1023, 0, 180) - 90) / abs((map(analogRead(A2), 0,‬
1023, 0, 180) - 90)) < 0) {‬

‭lcd_2.print("-");‬
‭} else {‬
‭lcd_2.print(" ");‬
‭}‬
‭lcd_2.setCursor(13, 1);‬
‭if ((map(analogRead(A3), 0, 1023, 0, 180) - 90) / abs((map(analogRead(A3), 0,‬
1023, 0, 180) - 90)) < 0) {‬

‭lcd_2.print("-");‬
‭} else {‬
‭lcd_2.print(" ");‬
‭}‬
}‬

lcd_3.clear();‬

lcd_3.print("Facing");‬

lcd_3.setCursor(0, 1);‬

lcd_3.print("Destination");‬

servo_3.write(90);‬

}‬

if (abs(Distance) > 50) {‬

lcd_3.clear();‬

lcd_3.print("Nearing Destination");‬

}‬

if (random(1, 10000 + 1) == 1) {‬

lcd_3.clear();‬

lcd_3.print("Critical Failure");‬

lcd_3.setCursor(0, 1);‬

lcd_3.print("Land Immediately");‬

}‬

lcd_3.clear();‬

delay(500); // Wait for 500 millisecond(s)‬

‭Latitude = map(analogRead(A5), 0, 1023, -90, 90);‬


P
PLongitude = map(analogRead(A4), 0, 1023, -180, 180);‬

Distance = ((DLatitude - PLatitude) / ((DLatitude - PLatitude) + (DLongitude -‬

PLongitude)));‬

ETA = (Distance / ((Speed / 255) * Time));‬

Destination = cos(((DLatitude - PLatitude) / ((DLatitude - PLatitude) / ((DLatitude‬

- PLatitude) + (DLongitude - PLongitude)))));‬

}‬

‭Appendix C‬
‭ AT Procedures‬
F
‭Test Title: Verifying Requirements 1, 2, and 6‬
S‭ cope:‬ ‭This test verifies Requirements 1, 2, and 6 of the Disaster Relief Project‬
‭The following requirements are included in this procedure:‬
‭1.‬ ‭The design shall not have a cruise speed that exceeds 310m/s‬
‭2.‬ ‭The design shall have a rate of climb that is greater than 2% of the cruise speed‬
‭3.‬ ‭The design shall be able to handle a cargo load of at least 200 kN‬

‭Name of Tester‬‭:‬ ‭Date of Test‬‭:‬

‭Prerequisites:‬
‭‬ A
● ‭ browser is open‬
‭●‬ ‭The aircraft simulator located at the url‬
‭https://static.edpl.us/courses/gfa/fse100/html5/airplane-engine-simulator/airplane-engine-simu‬
‭lator.html‬‭is open‬

T‭ est Procedure:‬
‭Step‬ ‭Instructions‬ E‭ xpected Outcome‬ ‭Requirement‬ ‭Pass/Fail‬
‭1‬ ‭On the aircraft simulator‬ ‭Several engine choices will‬
‭find the engine type listed.‬ ‭appear.‬
‭Click on it.‬
‭2‬ ‭Locate the engine called‬ T‭ he engine choices will‬
‭CF6-80C2 (jet) and click on‬ ‭disappear and the selected‬
‭it.‬ ‭engine type will now be‬
‭CF6-80C2 (jet).‬
‭3‬ L‭ ocate the number of‬ ‭The number of engines will‬
‭engines listed. Click on it‬ ‭decrease to 1.‬
‭and change the value to 1.‬
‭4‬ ‭Find the value of the lift‬ T‭ he lift coefficient will decrease‬
‭coefficient and set it to‬ ‭to 1.19146.‬
‭1.19146.‬
‭5‬ ‭Find the drag coefficient‬ T‭ he drag coefficient will‬
‭and set it to .08957.‬ ‭decrease to .08957.‬
‭7‬ ‭Find the chord and set it to‬ ‭The chord will increase to 4.‬
‭4.‬
‭8‬ ‭Find the fuel weight and‬ ‭Fuel weight will increase to 200.‬
‭set it to 200.‬
‭9‬ ‭Find the Payload weight‬ ‭ ayload weight will increase to‬
P
‭and set it to 200.‬ ‭200.‬
‭10‬ ‭Find the fuselage‬ ‭The fuselage cross-sectional‬
‭cross-sectional area and set‬ ‭area should decrease to‬
‭it to 7.068583.‬ ‭7.068583.‬
‭11‬ ‭Find Cruise Speed‬ ‭The cruise speed should be‬ ‭ eq#1‬
R
‭308.6134‬ ‭Cruise Speed=‬
‭12‬ ‭Find Rate of Climb‬ ‭Rate of Climb should be‬ ‭Req#2&3‬
‭102.5702‬ ‭Rate of Climb=‬

You might also like