PIR_MadMax/Autom/sys_dyn.m

57 lines
No EOL
1.1 KiB
Matlab
Executable file

% PIR Charrette
% Modélisation du système dynamique en fonctions de transfert
clear all;
close all;
clc;
p = 23 ; % nombre de paires de pôles du moteur PMSM
% U = w_elec * psi_m
% w_elec = p * w_meca
% w_meca = v / rayon
U_alim = 48 ; % alimentation
R_roue = 0.33 ; % rayon de la roue
v_max = 13.9 ; % vitesse en m/s
w_meca = v_max / R_roue ; % vitesse mécanique
w_elec = p * w_meca ; % vitesse électrique
psi_m = U_alim / w_elec ; % flux rotorique couplé au stator
K_psi = 3/2 * p * psi_m ; % (N.m/A) Gain du moteur
M_tot = 50 ; % kg
J_tot = M_tot * R_roue^2 ;
f = 5 ; % N/(m.s) coefficient visqueux de friction
%%
A = [0, 1 ; 0, -f/J_tot] ;
B = [0; K_psi/J_tot] ;
C = [1, 0] ;
D = 0 ;
%%
sys = ss(A, B, C, D) ;
sim("sys_dynamique.slx") ;
figure(1);
plot(ans.simu.Time, ans.simu.Data, 'red');
title('Response of the Dynamic System');
xlabel('Time (s)');
ylabel('Output');
grid on;
hold on;
t = 0:0.1:10 ;
step(sys, t)
legend('Simulink', 'Matlab');
%%
K = place(sys)
%%
cl_sys = ss(A-B*K, -B*inv(C*inv(A-B*K)*B), C, D)