# 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) Propulsion.PlotTestData(fig=3) #Propulsion.Draw(fig=4) Nm = Propulsion.RPMMatch(V) Ib = Motor.Ib(Nm) / A #rho = KG/M**3 #print AsUnit( 0.11 * rho * (6723*RPM/(2*math.pi))**3 * (9*IN)**4*(6*IN), 'W' ) #print AsUnit( Prop.P(N=Nm[0], V=0*FT/SEC, h=0*FT), 'W' ) print "Static Thrust : ", AsUnit(Propulsion.T(0 * FT / SEC),
##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) Propulsion.PlotTPvsN(N, Vprop, fig=1) Propulsion.PlotTestData(fig=3) Propulsion.Draw(fig=4) pyl.show()
# # 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), (11000 * RPM, 101.13 * IN * OZF, 1.1 * HP), (11200 * RPM, 99.57 * IN * OZF, 1.11 * HP), (11600 * RPM, 98.02 * IN * OZF, 1.13 * HP), (12900 * RPM, 93.35 * IN * OZF, 1.19 * HP), (13300 * RPM, 91.79 * IN * OZF, 1.21 * HP), (13600 * RPM, 91.79 * IN * OZF, 1.24 * HP), (14600 * RPM, 88.68 * IN * OZF, 1.28 * HP), (15600 * RPM, 79.35 * IN * OZF, 1.23 * HP), (16300 * RPM, 77.76 * IN * OZF, 1.26 * HP)] Engine.TestData = TestData Engine.PlotTestData() V = npy.linspace(0, 100, 30) * FT / SEC N = npy.linspace(1000, 20000, 30) * RPM Propulsion.PlotMatched(V, fig=2) V2 = npy.linspace(0, 100, 5) * FT / SEC Propulsion.PlotTPvsN(N, V2, fig=3) Propulsion.Draw(fig=4) pyl.show()
# 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 Vprop = npy.linspace(0, Vmax, 5) * FT / SEC N = npy.linspace(1000, 20000, 30) * RPM PropulsionOS.PlotMatched(V, N, Vprop, fig=2) PropulsionMAG.PlotMatched(V, N, Vprop, fig=2) #Propulsion.PlotTPvsN(N, Vprop, fig=3) PropulsionMAG.PlotTestData(fig=3) PropulsionOS.PlotTestData(fig=4) #Propulsion.Draw(fig=4) pyl.show()