import matplotlib.pyplot as plt
import numpy as np
# Paramètres du moteur de référence (Chapitre 02)
Un = 420.0 # V[cite: 2]
R = 0.55 # Ohm[cite: 2]
KPhi_n = 2.530 # V.s/rad[cite: 2]
Omega_n = 157.08 # rad/s[cite: 2]
C = np.linspace(0, 250, 100) # Couple en N.m
fig, axes = plt.subplots(1, 3, figsize=(16, 5), sharey=True)
# (a) Tension variable
ratios_U = [0.25, 0.50, 0.75, 1.00]
for ratio in ratios_U:
U = ratio * Un
Omega = (U / KPhi_n) - (R / (KPhi_n**2)) * C
label_str = f"{ratio:.2f} U_n" if ratio != 1.0 else "1.00 U_n"
axes[0].plot(C, Omega, label=label_str, linewidth=2)
axes[0].set_title(
"(a) Tension variable", fontsize=12, fontweight="bold", color="#1B365D"
)
axes[0].set_xlabel("Couple C (N·m)")
axes[0].set_ylabel("Vitesse $\\Omega$ (rad/s)")
axes[0].grid(True, linestyle="--", alpha=0.5)
axes[0].legend()
# Point nominal
Omega_nom = (Un / KPhi_n) - (R / (KPhi_n**2)) * 103.7
axes[0].plot(103.7, Omega_nom, "k*", markersize=12, label="Point nominal")
# (b) Résistance série
Rad_list = [0.0, 1.0, 2.0, 4.0]
for Rad in Rad_list:
Omega = (Un / KPhi_n) - ((R + Rad) / (KPhi_n**2)) * C
axes[1].plot(C, Omega, label=f"R_ad = {Rad} $\\Omega$", linewidth=2)
axes[1].set_title(
"(b) Résistance série", fontsize=12, fontweight="bold", color="#1B365D"
)
axes[1].set_xlabel("Couple C (N·m)")
axes[1].grid(True, linestyle="--", alpha=0.5)
axes[1].legend()
# (c) Flux variable
ratios_Phi = [1.00, 0.75, 0.50]
for ratio in ratios_Phi:
Phi = ratio * KPhi_n
Omega = (Un / Phi) - (R / (Phi**2)) * C
axes[2].plot(C, Omega, label=f"$\\Phi$ = {ratio:.2f} $\\Phi_n$", linewidth=2)
axes[2].set_title(
"(c) Flux variable", fontsize=12, fontweight="bold", color="#1B365D"
)
axes[2].set_xlabel("Couple C (N·m)")
axes[2].grid(True, linestyle="--", alpha=0.5)
axes[2].legend()
plt.tight_layout()
plt.savefig("Figure_02_1_Caracteristiques.svg", format="svg", dpi=300)
plt.show()
To embed this project on your website, copy the following code and paste it into your website's HTML: