%% Caractéristique de couple

% v03-v4 pdf - Pour suivi des versions A. Hodder
close all; clear; clc

% Préambule
%  Le but de cet exercice est d'utiliser Matlab pour calculer des caractéristiques de couple.
%  Il faudra calculer les vraies grandeurs des paramètres dans les différents cas, puis l'équivalant de Thévenin puis les couples, etc …
%  Au final cet exercice est une simple application de l'équation du couple et de l'équivalent de Thévenin dans différents cas afin de comprendre comment appliquer ces équations.
%% Exercice
% Donnée

disp('--- Données nominales ---')
Un =   %[V] - tension nominale de phase
In =     %[A] - courant nominal de phase
fn =    %[Hz] - fréquence nominale
p =      %[-] - nombre de paires de poles

disp('--- Paramètres en per unit ---')
rs   = 0.02      %[pu]
xss  = 0.12      %[pu]
xh  = 2          %[pu]
xsrp = 0.12      %[pu]
rrp  = 0.03      %[pu]

% 1. Utilisation sous tension et fréquence nominale
% Pour tous les points suivants, seul le mode moteur est étudié.
% 2. Tension variable : 0.2 - 0.4 - 0.6 - 0.8 - 1 [pu]
% 3. Lorsque la machine est utilisée aux USA, tension de phase de 110 V et fréquence de 60 Hz. Comparer la caractéristique avec le point 1.
% 4. Us/f constant : 0.2 - 0.4 - 0.6 - 0.8 - 1 [pu] (axe x en [tr/min]) – (i.e : 0.6 Us / 0.6 f)
% 5. Machine à rotor bobiné avec un rhéostat valant : 1 - 2 - 4 - 9 Rr'. Et calculer le courant à l'instant du démarrage en pu.
%% Résolution

disp('--- Impédance nominale [Ohm] ---')
Zn =   %[Ohm]

disp('--- Paramètres en vraies grandeurs [Ohm] ---')
Rs =       %[Ohm]
Xss =     %[Ohm]
Xh =       %[Ohm]
Xsrp =   %[Ohm]
Rrp =    %[Ohm]

Omegas =  %[rad/s]

%
%% 1. Conditions nominales

disp('--- Caractéristique sous Conditions nominales ---')
% Utiliser linspace avec 2000 pts

% Pour le plot, l'axe x est en fonction de la vitesseN en [tr/min].

%x_axis = ; % n [pu]
%y_axis = ;

% Affichage

% figure
% plot(x_axis,y_axis)
% title('Caractéristique de couple')
% xlabel('n [p.u]');
% ylabel('Couple [Nm]');
% legend('Tension et fréquence nominales','Location', 'SouthWest');
% grid on

%
%% 2. Tension variable

disp('--- Tension variable ---')
%Utiliser linspace avec 1000 pts

% Pour le plot, l'axe x est en fonction de la vitesse n en [pu].

%x_axis = ; % n [pu]
%y_axis = ;

% Affichage

% figure
% plot(x_axis,y_axis)
% title('Caractéristique de couple à tension d''alimentation variable')
% xlabel('n [p.u]');
% ylabel('Couple [Nm]');
% legend('0.2 Un','0.4 Un','0.6 Un','0.8 Un','1.0 Un', 'Location', 'NorthWest');
% grid on

%
%% 3. U et f varient (USA)

disp('--- USA ---')

% Pour le plot, l'axe x est en fonction de la vitesseN en [tr/min].

%x_axis = ; % N [tr/min]
%y_axis = ;
%x_axis_USA = ; % N [tr/min] 
%y_axis_USA = ;

% Affichage

% figure
% plot(x_axis,y_axis,x_axis_USA,y_axis_USA)
% title('Caractéristique de couple')
% xlabel('N [tr/min]');
% ylabel('Couple [Nm]');
% legend('Tension et fréquence nominales','Tension et fréquence aux USA','Location', 'NorthWest');
% grid on

%
%% 4. Us/f constant

disp('--- Us/f constant ---')

% Pour le plot, l'axe x est en fonction de la vitesseN en [tr/min].

%x_axis = ; % N [tr/min]
%y_axis = ;

% Affichage

% figure
% plot(x_axis',y_axis')
% title('Courbe couple-vitesse avec Us/f constant')
% xlabel('N [tr/min]');
% ylabel('Couple [Nm]');
% legend('0.2','0.4','0.6','0.8','1.0', 'Location', 'NorthWest');
% grid on

%
%% 5. Rhéostat

disp('--- Rhéostat ---')
    

% Pour le plot, l'axe x est en fonction de la vitesse n en [pu]

%x_axis = ; % n [pu]
%y_axis = ;

% Affichage

% figure
% plot(x_axis,y_axis)     
% title('Courbe couple-vitesse avec rhéostat')
% xlabel('n [p.u]');
% ylabel('Couple [Nm]');
% legend('Rr''','2Rr''','4Rr''','9Rr''', 'Location', 'South');
% grid on

% Calculer le courant à l'instant du démarrage pour les différentes valeurs du Rhéostat
% A l'instant du démarrage

%s=; % [-]

% L'impédance équivalente est donnée par (déjà fait dans l'exercice MAS2, donc copy/paste de cette partie).
% Par contre il faut rajouter la multiplication de Rr' par le Rhéostat dans l'équation :

%Zeq_cmpx_start = ; % [Ω]

% Norme de l'impédance équivalente complexe

%Zeq_start = ; % [Ω]

% Courant de ligne au démarrage

%Istart = ; % [A]

% Courant de ligne au démarrage en p.u

%istart =  % [pu]

%
%% Fonctions
% Couple électromagnétique pour un certain glissement
% T_{em}=
% \frac{3U_{e}^{2}\frac{R_r'}{s}}{\Omega_s\left[\left(R_e+\frac{R_r'}{s}\right)^2+(X_e+X_{\sigma r}')^2\right]}

function [Tem] = torque(s, Us, Omegas, Rs, Xss, Xh, Xsrp, Rrp)        
    
end

% Equivalent de thévenin
% \underline U _e = \underline U _s
% \frac{jX_h}{R_s+j(X_{\sigma s}+X_h)}
% \underline Z_e = jX_h\frac{R_s+jX_{\sigma s}}{R_s+j(X_{\sigma s}+X_h)} = R_e+jX_e

function [Ue, Re, Xe] = eq_thevenin(Us, Rs, Xss, Xh)
    
end