Exemple #1
0
i = 0

max_speeds = []

paths = glob(r'C:\Users\mlip814\airfoil_data\airfoil_data\*')
for path in sample(paths, len(paths)):
    try:
        airfoil = Airfoil.from_folder(path, 100000, 9)

        blade = Blade(airfoil, 3)
        torque = resistance(blade_speed) / 3  # (per blade)
        blade.design(knots(10), torque, rpm(140))

        wind_speeds = np.linspace(8, 12, 3)
        results = [
            blade.solve(knots(wind_speed), system)
            for wind_speed in wind_speeds
        ]

        blade_speeds = [rads(result[0]) for result in results]
        #torques = [result[1] for result in results]
        powers = [result[0] * result[1] for result in results]

        ax1.plot(wind_speeds, blade_speeds)
        ax2.plot(wind_speeds, powers)

        max_speeds.append([airfoil.name, max(blade_speeds), blade.radius])
    except:
        pass

    i += 1
Exemple #2
0
ax = plt.subplot(1, 1, 1)
ax.set_xlabel('Wind Speed (knots)')
ax.set_ylabel('Blade Speed (rpm)')

import time
start_time = time.time()
i = 0

path = glob(r'C:\Users\mlip814\airfoil_data\airfoil_data\*')[56]
airfoil = Airfoil.from_folder(path, 100000, 9)

for n in (2, 3, 6, 12):
    blade = Blade(airfoil, n)
    torque = resistance(blade_speed) / n  # (per blade)
    blade.design(knots(10), torque, rpm(140))

    wind_speeds = np.linspace(8, 12, 20)
    results = [
        blade.solve(knots(wind_speed), system) for wind_speed in wind_speeds
    ]
    blade_speeds = [rads(result[0]) for result in results]

    ax.plot(wind_speeds, blade_speeds, label=str(n))

ax.legend()

print(time.time() - start_time)
if input('Save?') != '':
    plt.savefig('image_n_blades.png')
plt.show()
Exemple #3
0
blade_speeds = np.linspace(rpm(90), rpm(180), 10)
torques = [
    blade.simulate(wind_speed, blade_speed) * 3 for blade_speed in blade_speeds
]
resistances = [resistance(blade_speed) for blade_speed in blade_speeds]

ax = plt.subplot(1, 2, 1)
ax.plot(blade_speeds, torques, label='Torque Output')
ax.plot(blade_speeds, resistances, label='Resistance')
ax.legend()

ax.set_xlabel('Blade Speed (rad/s)')
ax.set_ylabel('Torque (nm)')

ax.set_title('Blade Speed vs Torque for an AG17 airfoil at 10 knots')

ax = plt.subplot(1, 2, 2)
wind_speeds = np.linspace(knots(8), knots(12), 20)
results = [blade.solve(wind_speed, system)[0] for wind_speed in wind_speeds]

wind_speeds = [ms(x) for x in wind_speeds]
results = [rads(x) for x in results]

ax.plot(wind_speeds, results)

ax.set_xlabel('Wind Speed (knots)')
ax.set_ylabel('Blade Speed (rpm)')

plt.show()

plt.figure()