Пример #1
0
Fuselage.Nose.FrontBulk.Material = AircraftPly.copy()
Fuselage.Nose.FrontBulk.Material.AreaForceDensity = (0.01 * BaseWeight) / (
    2.0 * IN * 2.0 * IN)
Fuselage.Nose.FrontBulk.WeightGroup = 'Fuselage'

# rear bulkhead definition
Fuselage.Nose.BackBulk.Width = 10.55 * IN
Fuselage.Nose.BackBulk.Height = 11.5 * IN
Fuselage.Nose.BackBulk.Material = AircraftPly.copy()
Fuselage.Nose.BackBulk.Material.AreaForceDensity = (0.03 * BaseWeight) / (
    10.55 * IN * 11.5 * IN)
Fuselage.Nose.BackBulk.WeightGroup = 'Fuselage'

# miscellaneous
Fuselage.Nose.SkinMat = Ultracote.copy()
Fuselage.Nose.StringerMat = Basswood.copy()
Fuselage.Nose.StringerMat.LinearForceDensity = 0.005 * LBF / IN
Fuselage.Nose.Align = 2.59  # Top of section relative to thrust line (z=0)
Fuselage.Nose.WeightGroup = 'Fuselage'

# Add components to the fuselage
# add nose wheel servo
Fuselage.Nose.AddComponent("NoseWheelServo", 0.05 * LBF,
                           (1.14 * IN, 1.18 * IN, 0.51 * IN), "Front",
                           (0.8, 0.5, 0.05))
Fuselage.Nose.NoseWheelServo.WeightGroup = "Controls"

Fuselage.Nose.AddComponent('MotorBattery', 0.93125 * LBF,
                           (5.5 * IN, 1.75 * IN, 1.5 * IN), 'Back',
                           (-0.4, 0.5, 0.685))  #
Fuselage.Nose.AddComponent('SpeedController', 0.28 * LBF,
Пример #2
0
#    on the builds
#    **main spar assumed to weigh from 14.5-16 ozf**
SparLinearDensity = WebArea*Poplar.ForceDensity*0.855 + \
                    CapArea*Basswood.ForceDensity*0.855

# TESTS SHOULD BE RUN TO VALIDATE DENSITY VALUES IN AEROTHON!!, shiggins 151107

# ** Try splitting the main spar definition into three spars to accurately **
#                      represent the taper at the ends

# -> generate WingWeight obj for the main spar using AddSpar in ACWingWeight
Wing.WingWeight.AddSpar("MainSpar", SparH, SparW, (0.33,0),1.0,\
                        DSpar=False,Mirror=False,Structural=True)

# -> assign material to WingWeight object (use Basswood as a base then adjust)
Wing.WingWeight.MainSpar.SparMat = Basswood.copy()
Wing.WingWeight.MainSpar.SparMat.LinearForceDensity = SparLinearDensity

# -> scale the cross sectional dimensions of the spar relative to wing thk
#    along the span of the spar; first entry is x (d1), second entry is z (d2)
Wing.WingWeight.MainSpar.ScaleToWing = [False, False]

# -> add main spar WingWeight object to the weight group for the main wing
Wing.WingWeight.MainSpar.WeightGroup = "MainWing"

#------------------------------- SECONDARY SPAR -------------------------------#
secondSparW = 0.5 * IN
secondSparH = 0.5 * IN
secondCapThk = 1 / 8 * IN
secondWebThk = 1 / 8 * IN
Пример #3
0
HTail.Elevator.Ft = 0.0  #0.25
HTail.Elevator.Weight = 0.1 * LBF
HTail.Elevator.WeightGroup = "HTail"
HTail.Elevator.Servo.Fc = 0.3
HTail.Elevator.Servo.Fbc = 0.5
HTail.Elevator.Servo.Weight = 0.77 * OZF
HTail.Elevator.Servo.WeightGroup = "Controls"
HTail.Elevator.Servo.Torque = 94.4 * IN * OZM
#Set the sweep about the elevator hinge
HTail.SweepFc = 1.0 - HTail.Elevator.Fc

#
# Structural properties
# Spar taken as 1/8 inch width and thickness of the max thickness at the root
#
Basswood = Basswood.copy()
BWRibMat = Balsa.copy()
BWRibMat.Thickness = 1 / 8 * IN

HTail.SetWeightCalc(ACRibWing)
HTail.WingWeight.RibMat = BWRibMat
HTail.WingWeight.RibSpace = 4 * IN
HTail.WingWeight.SkinMat = Ultracote.copy()
HTail.WingWeight.WeightGroup = 'HTail'
HTail.WingWeight.AddSpar("MainSpar", 1 * IN, 1.25 * IN, (0.25, 1), 1.0, False)
HTail.WingWeight.MainSpar.SparMat.LinearForceDensity = .008 * LBF / (
    1 * IN)  # = Balsa.copy()
HTail.WingWeight.MainSpar.Position = (0.45, 0.55)
HTail.WingWeight.MainSpar.ScaleToWing = [False, False]
HTail.WingWeight.MainSpar.WeightGroup = "HTail"
Пример #4
0
# Elevator properties
HTail.Elevator.Fc = 0.50  # Elevator chord (% chord)
HTail.Elevator.Fb = 1.0  # Elevator span (% span)
HTail.Elevator.Ft = 0.0  # Start of the aileron (% span)
HTail.Elevator.Weight = 2.8 * OZF  # ##MASS##: matches prototype build 01/14/2016 SPH
HTail.Elevator.WeightGroup = 'HTail'

HTail.Elevator.Servo.Fc = 0.363  # c.g. of servo matches proto build 01/14/2016 SPH
HTail.Elevator.Servo.Fbc = 0.0
HTail.Elevator.Servo.Weight = 1.58 * OZF  ##MASS## measured for proto build 01/15/2016 SPHHTail.Elevator.Servo.WeightGroup = 'Controls'
HTail.Elevator.Servo.Torque = 152 * IN * OZM  # 2 servos on elevator @76 IN*OZM each

# Structural properties
# Spar taken as 1/8 inch width and thickness of the max thickness at the root
Basswood = Basswood.copy()
RibMat = Balsa.copy()
RibMat.Thickness = 1 / 8 * IN
RibMat.ForceDensity *= 0.425 * 0.85  # assuming 50% rib area cut-out

HTail.SetWeightCalc(ACRibWing)
HTail.WingWeight.RibMat = RibMat
HTail.WingWeight.RibSpace = 4.0 * IN

HTail.WingWeight.SkinMat = Ultracote.copy()
HTail.WingWeight.SkinMat.AreaForceDensity *= 0.5  # shiggins: based on measurements
HTail.WingWeight.SkinMat.Thickness = 0.002125 * IN  # shiggins: based on measurements
HTail.WingWeight.WeightGroup = 'HTail'

HTail.WingWeight.AddSpar('MainSpar', 0.5 * IN, 0.75 * IN, (0.25, 1), 1.0,
                         False)