Motor.Battery = Battery Motor.SpeedController = Phoenix100 Motor.Battery.WeightGroup = 'Electronics' Motor.SpeedController.WeightGroup = 'Electronics' Motor.WeightGroup = "Propulsion" Prop.WeightGroup = "Propulsion" Vmax = 50 # Set Propulsion properties Propulsion = ACPropulsion(Prop, Motor) Propulsion.Alt = 0 * FT Propulsion.Vmax = Vmax * FT / SEC Propulsion.nV = 30 if __name__ == '__main__': import pylab as pyl V = npy.linspace(0, Vmax, 30) * FT / SEC Vprop = npy.linspace(0, Vmax, 6) * FT / SEC N = Motor.NRange() Propulsion.PlotMatched(V, N, Vprop, fig=2, ylimits=[None, None, None, None]) #Propulsion.PlotTPvsN(N, Vprop, fig=3)
Engine.Weight = 1.5 * LBF Engine.NoseCone.LenDi = [1 * IN, 0.6 * IN] # # Curvefitting parameters # Engine.BMEPR = 50.038 * LBF / IN**2 Engine.Rnmt = 0.01 Engine.Rtmt = 1.5 Engine.Rnsfc = 0.8 # Set Propulsion properties Propulsion = ACPropulsion(Prop, Engine) Propulsion.Alt = 0 * FT Propulsion.Vmax = 100 * FT / SEC Propulsion.nV = 20 if __name__ == '__main__': import pylab as pyl # # This data has been corrected for standard day # # RPM, Torque, Power TestData = [(7000 * RPM, 107.35 * IN * OZF, 0.75 * HP), (8500 * RPM, 104.24 * IN * OZF, 0.88 * HP), (9500 * RPM, 101.13 * IN * OZF, 0.95 * HP), (9700 * RPM, 98.02 * IN * OZF, 0.94 * HP), (10600 * RPM, 102.69 * IN * OZF, 1.08 * HP), (10800 * RPM, 98.02 * IN * OZF, 1.05 * HP),
from scalar.units import AsUnit #ADDED Motor.Battery = Battery Motor.SpeedController = Phoenix100 Motor.Battery.WeightGroup = 'Electronics' Motor.SpeedController.WeightGroup = 'Electronics' Motor.WeightGroup = "Propulsion" Prop.WeightGroup = "Propulsion" # Set Propulsion properties Propulsion = ACPropulsion(Prop, Motor) Propulsion.Alt = 0 * FT Propulsion.Vmax = 70 * FT / SEC Propulsion.nV = 20 if __name__ == '__main__': import pylab as pyl print "Static Thrust :", AsUnit(Propulsion.T(0 * FT / SEC), "lbf") Vmax = 70 V = npy.linspace(0, Vmax, 30) * FT / SEC Vprop = npy.linspace(0, Vmax, 5) * FT / SEC N = npy.linspace(1000, 20000, 30) * RPM Propulsion.PlotMatched(V, N, Vprop, fig=1) #Propulsion.PlotTPvsN(N, Vprop, fig=2) Propulsion.PlotTestData(fig=3)
#sys.path.append(os.path.join(BAPDir,r'Propulsion\Motors')) from Motors.Hacker_A50_14L import Motor ## # Scorpion Powerplant ##sys.path.append(os.path.join(BAPDir,r'Propulsion\Propellers')) ##from APC_22x10E import Prop ##sys.path.append(os.path.join(BAPDir,r'Propulsion\Motors')) ##from Scorpion250KV import Motor #==============================================================================# # PROPULSION MODEL #==============================================================================# # Set Propulsion properties Propulsion = ACPropulsion(Prop, Motor) Propulsion.Alt = 0 * FT Propulsion.Vmax = 60 * FT / SEC Propulsion.nV = 20 #==============================================================================# # VISUALIZATION & RESULTS #==============================================================================# if __name__ == '__main__': import pylab as pyl print "Static Thrust :", AsUnit(Propulsion.T(0 * FT / SEC), "lbf") Vmax = 60 V = npy.linspace(0, Vmax, 30) * FT / SEC Vprop = npy.linspace(0, Vmax, 5) * FT / SEC N = npy.linspace(1000, 20000, 30) * RPM Propulsion.PlotMatched(V, N, Vprop, fig=2)
from Aerothon.ACPropeller import ACPropeller from Aerothon.ACEngine import ACEngine from Aerothon.ACPropulsion import ACPropulsion from Engine.OS61FX_04 import Engine as OS from Engine.MAGNUM import Engine as Magnum from Prop.APC_12_25x3_75 import Prop #from APC_13_5x6 import Prop #from GRAUPNER_13_5x6 import Prop import numpy as npy from scalar.units import IN, LBF, PSFC, SEC, ARCDEG, FT, OZF, RPM, HP from scalar.units import AsUnit # Set Propulsion properties PropulsionOS = ACPropulsion(Prop, OS) PropulsionOS.Alt = 0 * FT PropulsionOS.Vmax = 100 * FT / SEC PropulsionOS.nV = 20 PropulsionMAG = ACPropulsion(Prop, Magnum) PropulsionMAG.Alt = 0 * FT PropulsionMAG.Vmax = 100 * FT / SEC PropulsionMAG.nV = 20 if __name__ == '__main__': import pylab as pyl print "Static Thrust :", AsUnit(PropulsionOS.T(0 * FT / SEC), "lbf") print "Static Thrust :", AsUnit(PropulsionMAG.T(0 * FT / SEC), "lbf") Vmax = 100 V = npy.linspace(0, Vmax, 30) * FT / SEC