Vous êtes sur la page 1sur 48

18/05/2023 Compte-rendu

travaux pratiques
Matlab Simulink
Outils de simulation

BOUVARD Alexandre – MOUGENOT Louis


PROFESSEUR : BOUQUAIN DAVID
MOUGENOT Louis M1-EE CMI
H3E
BOUVARD Alexandre
Table des matières
Objectif : ............................................................................................................................ 3
TP 1 : Initiation à MATLAB .................................................................................................... 4
Activité n°1 : ...................................................................................................................... 4
Activité n°2 : ...................................................................................................................... 4
Activité n°3 : ...................................................................................................................... 6
Activité n°4 : ...................................................................................................................... 8
Activité n°5 : ...................................................................................................................... 8
Activité n°6 : .................................................................................................................... 10
Activité n°7 : .................................................................................................................... 10
Activité n°8 : .................................................................................................................... 11
Activité n°9 : .................................................................................................................... 12
Activité n°10 : .................................................................................................................. 12
Activité n°11 : .................................................................................................................. 13
Activité n°12 : .................................................................................................................. 14
Activité n°13 : .................................................................................................................. 15
Activité n°14 : .................................................................................................................. 16
Activité n°14 bis : ............................................................................................................. 18
Activité n°15 : .................................................................................................................. 18
Activité n°16 : .................................................................................................................. 19
TP 2 : Modélisation d’une machine à courant continu sous matlab ..................................... 21
1.1 Compréhension du modèle : ...................................................................................... 21
1.1.1 Lancement du script : .......................................................................................... 21
1.1.2 Amélioration du script : ........................................................................................ 21
1.1.3 Explication du modèle : ....................................................................................... 22
1.1.4 Cohérence des résultats ..................................................................................... 23
1.1.5 U0 = 8V ............................................................................................................... 23
1.2 Etude du fonctionnement en démarrage avec charge variable .................................. 24
1.2.1 Modification du script pour avoir un Cr = 50 Nm pour 1000 tr/min ....................... 24
1.2.2 Ajout d’un graphique présentant la variation du couple Ce et du couple Cr ......... 25
1.2.3 Ajout d’une courbe de rendement ....................................................................... 26
1.3 Alimentation du moteur à vitesse variable .............................................................. 27
TP 3 : Simulink 1 ................................................................................................................. 30
2.1 Cycle de référence .................................................................................................... 30
2.1.2 Calcul de l’énergie .................................................................................................. 31

1
MOUGENOT Louis M1-EE CMI
H3E
BOUVARD Alexandre
2.1.3 Calcul de l’énergie transitant par les roues ............................................................. 31
2.2.1 Evolution de la puissance délivrée par le moteur .................................................... 32
2.2.2 Calculer énergie chimique, consommation de carburant ......................................... 33
2.3.1 Puissance électrique batterie .................................................................................. 34
2.3.2 Calcule de l’énergie fournie par la batterie en fin de cycle ...................................... 34
2.3.3 Evolution de la tension aux bornes de la batterie .................................................... 35
TP4 : Simulink 2 .................................................................................................................. 37
2.2 Bilan de puissance et énergie .................................................................................... 37
2.3 Production solaire ...................................................................................................... 40
2.4 Stockage de l’énergie par batterie ............................................................................. 42
Conclusion .......................................................................................................................... 46

2
MOUGENOT Louis M1-EE CMI
H3E
BOUVARD Alexandre

Objectif :
Dans cette série de travaux pratiques nous allons travailler sur le logiciel Matlab
Simulink. Cette série de travaux pratiques nous permettra de nous initier à différents cas
concrets tels que la simulation d’un véhicule thermique et thermique/électrique ainsi que la
simulation d’un système photovoltaïque avec un système de stockage de l’énergie

3
MOUGENOT Louis M1-EE CMI
H3E
BOUVARD Alexandre

TP 1 : Initiation à MATLAB

Activité n°1 :
La première activité consiste à se placer dans le répertoire de travail avec grâce à la
commande Set Path.

On retrouve plusieurs registres où on peut télécharger des fichiers. C’est le chemin


que va utiliser MATLAB pour trouver un fichier.

Activité n°2 :
Le but de cette activité est de voir l’impact des différents formats numérique sur le nombre
6.234567890123456

Short a = 6.234567890123456

a=

4
MOUGENOT Louis M1-EE CMI
H3E
BOUVARD Alexandre

6.2346

Long a = 6.234567890123456

a=

6.23456789012346

Short e a = 6.234567890123456

a=

6.2346e+000

Long e a = 6.234567890123456

a=

6.23456789012346e+000

Bank a = 6.234567890123456

a=

6.23456789012346e+000

Hex a = 6.234567890123456

a=

4018f03290a3167e

On à donc pus remarquer les différents types de format numérique à travers le nombre
6.234567890123456

Pour le nombre complexe on a défini B = 1.5000 + 2.0000i. En entrant les fonction “abs(B) “
pour trouver le module et “angle(B)” pour trouver l’argument, on trouve les résultats suivants
:

Module Argument

abs (B) angle (B)

ans = ans =

2.5000 0.9273

5
MOUGENOT Louis M1-EE CMI
H3E
BOUVARD Alexandre

Activité n°3 :

Le but de cette activité est de voir les différentes méthodes de création des vecteurs.

vect = [1 2 3 4 5] VECT1 = [10 20 30 40 50]

VECT1 =

10 20 30 40 50

vect = [1 ; 2 ;3 ;4 ;5] VECT2 = [10 ;20 ;30 ;40 ;50]

VECT2 =

10
20
30
40
50

vect = 0 : 0.5 : 10 VECT3 = 1 : 2 : 29

VECT3 =

1 3 5 7 9 11 13 15 17 19 21 23 25 27 29
(Le vecteur doit s’afficher en ligne)

vect = linspace(0 , 10 , 50) VECT4 = linspace(5, 10, 50)

VECT4 =

Columns 1 through 7

5 5.102 5.2041
5.3061 5.4082 5.5102
5.6122

Columns 8 through 14

5.7143 5.8163 5.9184


6.0204 6.1224 6.2245
6.3265

Columns 15 through 21

6.4286 6.5306 6.6327


6.7347 6.8367 6.9388

6
MOUGENOT Louis M1-EE CMI
H3E
BOUVARD Alexandre
7.0408

Columns 22 through 28

7.1429 7.2449 7.3469


7.449 7.551 7.6531
7.7551

Columns 29 through 35

7.8571 7.9592 8.0612


8.1633 8.2653 8.3673
8.4694

Columns 36 through 42

8.5714 8.6735 8.7755


8.8776 8.9796 9.0816
9.1837

Columns 43 through 49

9.2857 9.3878 9.4898


9.5918 9.6939 9.7959
9.898

Column 50

10

VECT5 = logspace (0 , 5 , 50)

VECT5 =

1.0e+05 *

Columns 1 through 13

0.0000 0.0000 0.0000 0.0000 0.0000


0.0000 0.0000 0.0001 0.0001 0.0001
0.0001 0.0001 0.0002

Columns 14 through 26

0.0002 0.0003 0.0003 0.0004 0.0005


0.0007 0.0009 0.0011 0.0014 0.0018
0.0022 0.0028 0.0036

Columns 27 through 39

0.0045 0.0057 0.0072 0.0091 0.0115


0.0146 0.0184 0.0233 0.0295 0.0373
0.0471 0.0596 0.0754

7
MOUGENOT Louis M1-EE CMI
H3E
BOUVARD Alexandre

Columns 40 through 50

0.0954 0.1207 0.1526 0.1931 0.2442


0.3089 0.3907 0.4942 0.6251 0.7906
1.0000

Grâce à ces différentes fonctions MATLAB, nous pouvons créer des vecteurs de
différentes façons les fonctions linspace pourrons nous être utile dans le cas ou il faut tracer
une fonction, linspace pourra être un espace de temps.

Activité n°4 :
Le but de cette activité est de créer 2 matrices dans MATLAB est de faire le produit
matriciel, une matrice 2,4 et une matrice 4,2.
Pour réaliser cette activité, nous avons écrit un fichier.m le voici :

M1 = [2 4 6 8 ; 1 2 3 4] %Initialisation Matrice 1
M2 = [2 4; 6 8; 1 2; 3 4] %Initialisation Matrice 2
P = M1*M2 %Produit Matriciel

La console affiche le résultat suivant :


M1 =

2 4 6 8
1 2 3 4

M2 =

2 4
6 8
1 2
3 4

P=

58 84
29 42

Nous avons pu facilement faire le produit de deux matrices.

Activité n°5 :
Le but de cette activité est d’utiliser des fonctions propres au matrice, extraire des lignes,
trouver le rang ou encore calculer l’inverse de la matrice.

8
MOUGENOT Louis M1-EE CMI
H3E
BOUVARD Alexandre
Matrice définie M = [1 2 2 4 ; 1 2 -2 1 ; 0 0 4 2 ; -1 0 0 -1]

M=

1 2 2 4
1 2 -2 1
0 0 4 2
-1 0 0 -1

3ème colonne de la matrice M (:,3)

ans =

2
-2
4
0

2ème ligne de la matrice M (2,:)

ans =

1 2 -2 1

Rang de la matrice rank (M)

ans =

Déterminant de la matrice det (M)

ans =

Inverse de la matrice inv (M)

ans =

-1.0000 1.0000 1.0000 -1.0000


-0.5000 1.0000 0.7500 0.5000
-0.5000 0.5000 0.7500 0
1.0000 -1.0000 -1.0000 0

Nous avons donc utilisé les fonctions de MATLAB pour trouver les paramètres de la matrice
définie.

9
MOUGENOT Louis M1-EE CMI
H3E
BOUVARD Alexandre
Activité n°6 :
Le but de cette activité est de commenter un petit bout de code, qui nous permet de nous
poser une question et de nous afficher un prénom. Voici le code commenté :

disp( 'Hello, who are you? ! ') % On affiche Hello, who are you dans la
% console
name = input( 'write your name as a string characters: ') %On nous pose une
% question, créer une variable name
phrase = [' Hello ',name] % Créé variable phrase avec la variable name
disp (phrase) % On affiche la phrase

Voici le résultat dans la console :

Hello, who are you? !


write your name as a string characters: 'Alexandre BOUVARD'

name =

'Alexandre BOUVARD'

phrase =

' Hello Alexandre BOUVARD'

Hello Alexandre BOUVARD

Nous avons donc commenter un problème est nous avons pus voir son fonctionnement
dans la console MATLAB.

Activité n°7 :

L’objectif de cette activité est d’écrire un problème qui nous demande un nombre complexe
et ensuite il nous donne son argument et son module.

Voici le programme réalisé :


% Ce programme permet de calculer le module et l'argument d'un nombre
% complexe et de l'afficher
X = input ('Veuillez entrer un nombre complexe : '); % On demande de
% entrer un nombre complexe
M = abs (X); % On calcul le module de ce nombre
A = angle (X); % On calcul l'argument de ce nombre
Xc = num2str (X); % Sur les 3 prochaines ligne on transforme
Mc = num2str (M); % les nombre en chaîne de caractère afin de

10
MOUGENOT Louis M1-EE CMI
H3E
BOUVARD Alexandre
Ac = num2str (A); % pouvoir les afficher dans une phrase
phrase = ['Pour le nombre complexe ',Xc,', son module est ',Mc,' et son argument est ',Ac,'.'];
% On construit la phrase à afficher
disp(phrase); % On affiche la phrase définie précédemment

On obtient alors le résultat suivant en exécutant le programme :

Veuillez entrer un nombre complexe : 2+i


Pour le nombre complexe 2+1i, son module est 2.2361 et son argument est 0.46365.

Activité n°8 :
L’objectif de cette activité est d’écrire un fichier M permettant de créer une matrice d’ordre
m,n (l’utilisateur spécifie les valeurs de m et n) dont l’élément appartenant à la ligne n°i et à
la colonne n°j vaut i+j.
Voici le code que nous avons écrit :

% Demande à l'utilisateur de saisir les valeurs de m et n


m = input("Entrez le nombre de lignes: "); % Nombre de ligne
n = input("Entrez le nombre de colonnes: "); % Nombre de colonne
% Crée une matrice d'ordre m x n
A = zeros(m, n); % Initialisation d'une matrice remplit de 0
% Remplit la matrice avec les valeurs i+j
for i = 1:m % Boucle d'incrémentation
for j = 1:n
A(i,j) = i+j;
end
end
% Affiche la matrice
disp("La matrice est:");
disp(A);

MATLAB nous affiche le résultat suivant:

Entrez le nombre de lignes de la matrice: 4


Entrez le nombre de colonnes de la matrice: 6
La matrice est:
2 3 4 5 6 7
3 4 5 6 7 8
4 5 6 7 8 9
5 6 7 8 9 10

Grâce à une boucle nous avons pu remplir automatiquement la matrice souhaitée.

11
MOUGENOT Louis M1-EE CMI
H3E
BOUVARD Alexandre
Activité n°9 :
Le but de cette activité est de recopier le code et de voir son fonctionnement dans la
commande MATLAB. Voici le code suivant :
function res=div_3_5 (var)
% DIV_3_5 Cette fonction a pour argument un nombre entier
% et elle renvoi un vecteur dont*
% le premier élément vaut
% 1 si le nombre est divisible par 3
% 0 si le nombre n'est pas divisible par 3
% le seconde élément vaut
% 1 si le nombre est divisible par 5
% 0 si le nombre n'est pas divisible par 5
if rem(var,3)==0 % si le nombre est divisible par 3 alors 1
x=1;
else % sinon 0
x=0;
end
if rem(var,5)==0 % si le nombre est divisible par 5 alors 1
y=1;
else % sinon 0
y=0;
end
res=[x;y];

On peut avoir plusieurs résultat de simulation comme ceux ci :

div_3_5(15) div_3_5(20) div_3_5(9) div_3_5(22)

ans = ans = ans = ans =

1 0 1 0
1 1 0 0

Voici donc les différents résultats de la fonction. On peut voir que le problème fonctionne
correctement.
Grâce à une fonction nous pouvons donc simplifier les itérations.

Activité n°10 :

Le but de ce TP est de créer 2 fonctions respectivements dans f.m et dans g.m


Voici les codes :

12
MOUGENOT Louis M1-EE CMI
H3E
BOUVARD Alexandre
Pour le fichier f.m :

function y = f(t,a)
y = 10*exp(-a*t)*cos(120*pi*t);%Initialisation de la fonction
end

Pour le fichier g.m :

function y = g(t,a)
y = 10*exp(-a*t)*sin(120*pi*t);%Initialisation de la fonction
end

Nous avons créé les deux fonctions dans des fichiers respectifs.

Activité n°11 :
Le but de cette activité est de tracer une fonction sinus cosinus selon la fréquence
d'échantillonnage

%Activité 11
% Demande de tmin, tmax et f
tmin = input('Quelle est la valeur du temps de départ ? ');
tmax = input('Quelle est la valeur du temps de fin ? ');
f = input("Quelle est la fréquence d'échantillonnage ? ");
% On initilialise le temps
t = tmin : 1/f : tmax;
% On prend y = t
y = t;
long = length(t); % On messure la taille du vecteur temps
i = 1; % i = 1 pour la boucle while
while i~=long+1 %tant que i est différent de la taille +1
y(i) = sin(t(i))*cos(3*t(i));
i = i+1;
end
% On plot la fonction
plot(t,y,'r-');
xlabel('Temps (s)');
ylabel('y(t)');
title('y(t)=sin(t)*cos(3t)');
legend('f(t)');
grid on;

Nous obtenons la courbe suivante :

13
MOUGENOT Louis M1-EE CMI
H3E
BOUVARD Alexandre

Nous avons donc réussi à tracer le graphique ci-dessous

Activité n°12 :
L’objectif de cette activité est de plot 2 fonctions, selon plusieurs conditions dans la
même fenêtre.
t = linspace(0, 0.1, 1000); %Initialisation du temps
f = 10*exp(-60*t).*cos(120*pi*t); %fonction f
g = 10*exp(-60*t).*sin(120*pi*t); % fonciton g
figure; %initialisation des figures
subplot(2,1,1); %on met le graphique en coordonée 2.1.1
plot(t, f, 'r', t, g, 'b-'); %Plot de t et g sur le même graphique
title('Représentation de f(t) et de g(t)')
xlabel('Temps (s)');
ylabel('Amplitude');
legend('f(t,60)','g(t,60)')
subplot(2,1,2);%On met le grpahique en coordonée 2.1.2
plot(f,g, 'r-'); %On plot f en fonction de g
title('Représentation de f(t) en fonction de g(t)')
xlabel('f(t)');
ylabel('g(t)');

14
MOUGENOT Louis M1-EE CMI
H3E
BOUVARD Alexandre

On voit les deux différents graphiques sur la même fenêtre Matlab.

Activité n°13 :
Le but de cette activité est de visualiser f en fonction de f en fonction de g mais avec
une coordonnée z qui correspond au temps.
t = linspace(0, 0.1, 1000); %Initialisation du temps
f = 10*exp(-10*t).*cos(120*pi*t); %fonction f
g = 10*exp(-10*t).*sin(120*pi*t); % fonciton g
z=t
figure; %initialisation des figures
plot3(f,g,z);
xlabel('f(t)')
ylabel('g(t)')
zlabel('t')

15
MOUGENOT Louis M1-EE CMI
H3E
BOUVARD Alexandre

On visualise donc la figure ci-dessus, ce qui correspond à ce que l’on doit avoir.

Activité n°14 :
L’objectif de cette activité est d'effectuer une double boucle for pour print la fonction
en x et y.
% Définir la plage de valeurs pour x et y
x = -10:0.4:10;
y = -10:0.4:10;
% Initialiser la matrice pour stocker les valeurs de f(x,y)
z = zeros(length(x),length(y));
% Parcourir chaque valeur de x et de y
for i=1:length(x)
for j=1:length(y)
% Calculer la valeur de f(x,y) pour la paire (i),y(j))
r = sqrt(i)^2 + y(j)^2);
if r == 0 % éviter la division par zéro
z(i,j) = NaN;
else
z(i,j) = sin(r)/r;
end
end
end
% Tracer la surface
figure;
surf(x,y,z);
title('Surface de f(x,y) = sin(sqrt(x^2+y^2))/sqrt(x^2+y^2)');
xlabel('x');
ylabel('y');
zlabel('f(x,y)');

16
MOUGENOT Louis M1-EE CMI
H3E
BOUVARD Alexandre

On peut également le faire avec une autre méthode :


clear all
clc
x_i=-10; %On garde la main sur les variables
x_f=10;
n_x=100;
y_i=-10;
y_f=10;
n_y=100;
Vx = linspace(x_i,x_f,n_x).'; %On crée un vecteur transposé
Vy = linspace(y_i,y_f,n_y); %On crée un vecteur
[Mx,My]=ndgrid(Vx,Vy); %On met sous forme matrice Mx et My
f=@(x,y) sin(sqrt(x.^2+y.^2))./sqrt(x.^2+y.^2); %Fonction
mesh(f(Mx,My)) %On print la fonciton
title('Surface de f(x,y) = sin(sqrt(x^2+y^2))/sqrt(x^2+y^2)');
xlabel('x');
ylabel('y');
zlabel('f(x,y)');

17
MOUGENOT Louis M1-EE CMI
H3E
BOUVARD Alexandre

Nous obtenons le même résultat.

Activité n°14 bis :

Voici le code pour trouver la racine de la fonction exp(x)-x-2:


%Activité 15
f=@(x) exp(x)-x-2;
x0=1.5;
r = fzero(f,x0)
Et le résultat :
r=

1.1462

Activité n°15 :
Voici le code pour trouver la racine du polynôme :
p=[1 2 3 2 1 0]
r2 = roots(p)

Voici le résultat :
r2 =

0+ 0i
-0.5 + 0.86603i
-0.5 - 0.86603i
-0.5 + 0.86603i

18
MOUGENOT Louis M1-EE CMI
H3E
BOUVARD Alexandre

Activité n°16 :
Voici le programme Matlab permettant de calculer la valeur de l’intégrale de la fonction
𝑒 −𝑥 − 𝑥 avec la fonction quad :

clear all; % On efface les variables

x1 = 0; % On défini les variables de départ et de fin de l'intégrale


x2 = 1;

f =@(x) exp(-x)-x; % On défini la fonction à intégrer

I = quad(f,x1,x2) % On calcul l'intégrale de la fonction définie entre


% les valeurs définies grâce à la fonction quad puis
% on affiche le résultat

Le résultat donné par ce programme est alors le suivant :

I=

0.1321

Voici le programme permettant de calculer puis d’afficher sur un graphique l’intégrale de la


fonction 𝑓(𝑡) = 𝑒 −𝑡 − 𝑡 avec la fonction ode23 :

clear all; % On efface les variables

ti = 0; % On défini les variables de départ et de fin


tf = 1;

yi = -exp(-ti)-ti^2/2; % On calcul la valeur initiale de y

[t,y] = ode23(@(t,y) f(t),[ti tf],yi); % On calcul l'intégrale de la


% fonction f(t) de ti à tf

% La partie ci-dessous permet d'afficher l'intégrale sur un graphique


plot(t,y,'-o')
title('Intégration de la fonction f(t)=e(-t)-t')
xlabel('Temps(s)')
ylabel('y(t)')
legend('y(t)')

19
MOUGENOT Louis M1-EE CMI
H3E
BOUVARD Alexandre

On obtient alors le graphe suivant :

20
MOUGENOT Louis M1-EE CMI
H3E
BOUVARD Alexandre

TP 2 : Modélisation d’une machine à courant


continu sous matlab

1.1 Compréhension du modèle :

1.1.1 Lancement du script :


En lançant le script nous obtenons les courbes suivantes :

1.1.2 Amélioration du script :


Dans cette partie nous rajoutons des titres aux axes, des titres aux graphiques ainsi qu’une
grille :

21
MOUGENOT Louis M1-EE CMI
H3E
BOUVARD Alexandre

Voici le résultat, pour cela nous utilisons les fonctions xlabel, ylabel, title et grid.

1.1.3 Explication du modèle :

Le code nous permet de faire une simulation du démarrage à vide d’une machine à courant
continu, il utilise la méthode d’Euler pour effectuer l’intégration.
On peut voir que le modèle se base sur les principales grandeurs physiques de la MCC, le
courant induit, la vitesse angulaire, le couple résistant ainsi que la tension d’alimentation.
Pour représenter le fonctionnement nous nous servons du modèle électrique équivalent. Le
moteur est donc représenté comme une source de tension avec une résistance et une
inductance en série, la FEM est représenté comme une source de courant.

22
MOUGENOT Louis M1-EE CMI
H3E
BOUVARD Alexandre
SI nous nous intéressons plus aux équations, nous retrouvons les équations électriques
ainsi que celle de la mécanique qui permettent de décrire le comportement de démarrage à
vide. On retrouve dans la boucle while les différentes équations :
dI=(u-R*I-k*w)/L; %Equation électrique
Ce=k*I; %Equation du couple
dw=(Ce-a*w-Cr0)/J; %Equation de la mécanique

La boucle while permet de faire l'intégration des équations et d’avoir les résultats.
Si nous regardons le code, les premières lignes permettent l'initialisation du système ainsi
que les valeurs propres du système comme la résistance de l’induit.
La boucle while permet d’avoir une plage de temps allant de 0.01s jusqu'à 0.5s ce qui
correspond au temps de démarrage. Grâce à la méthode d’euler nous faisons une
approximation de la résolution des équations différentiel, notre dt est 0.0001s. Ensuite on
intègre nos valeurs pour la prochaine itération. Une fois t=0.5s on affiche les résultats.

Un logigramme reprenant les différentes étapes du programme est disponible en annexe

1.1.4 Cohérence des résultats

Les courbes obtenues sont corrects avec la réalité, car quand nous démarrons une MCC
nous avons un appel de courant, par la suite le courant se stabilise à 0,500 A ce qui
cohérent de plus quand la vitesse se stabilise nous avons le courant qui diminue, cohérence
par rapport au modèle vu en cours.
On remarque par ailleurs que le courant atteint son régime permanent à partir de 170 ms
soit 160 ms après la mise sous tension de la machine et que la vitesse atteint son régime
permanent à partir de 150 ms soit 140 ms après la mise sous tension de la machine. Nous
avons pour valeur maximum de la vitesse une vitesse de 104,5 rad/s (environ 1000 tr/min),
pour valeur maximale du courant 180 A et comme valeur de courant de régime permanent
0,55 A.

1.1.5 U0 = 8V

Quand nous modifions la tension d’alimentation à 8V nous obtenons la courbe suivante :

23
MOUGENOT Louis M1-EE CMI
H3E
BOUVARD Alexandre

Nous obtenons exactement les mêmes courbes, sauf que les valeurs de la vitesse et du
courant ont diminué ce qui est dû à la tension à vide qui est plus faible.

1.2 Etude du fonctionnement en démarrage avec charge


variable

1.2.1 Modification du script pour avoir un Cr = 50 Nm pour 1000


tr/min

Nous devons mettre un couple résistant de 50 Nm quand w = 1000 tr/min. Pour cela on
initialise un tableau qui va pouvoir accueillir les valeurs du couple résistif au début du
𝜔×30 50
programme. On calcul ensuite le couple résistif par la formule suivante 𝐶𝑅 = 𝜋
× 1000
dans la boucle while, cette formule convertit la vitesse en tours/min puis applique le rapport
entre le couple résistif et la vitesse de rotation de la machine. On stocke ensuite la valeur
calculée dans le tableau initialisé pour.
Nous obtenons la courbe suivante :

24
MOUGENOT Louis M1-EE CMI
H3E
BOUVARD Alexandre

Nous avons maintenant avec ce couple résistif une vitesse de 94,6 rad/s et un courant de
24,1 A en régime permanent. Le pic de courant maximal absorbé par la machine est de
181,1 A. On remarque que la vitesse en régime permanent à diminuer alors que le courant
absorbé par la machine a augmenté, ce qui est logique puisque l’application d’un couple
résistif sur la machine va freiner le moteur qui va alors absorber plus de courant pour
compenser la perte de vitesse.

1.2.2 Ajout d’un graphique présentant la variation du couple Ce et


du couple Cr

Pour ajouter un graphique qui représente les différents courbes il faut que nous ajoutions le
code suivant :

figure(2);
subplot(2,1,2),plot(tt,Crt,'k');
grid on;
legend('Cr [Nm]');
title('Evolution du couple de la charge mécanique en fonction du temps');
xlabel('t [s]');
ylabel('Cr [Nm]');
subplot(2,1,1),plot(tt,Cet,'b');
grid on;
title('Evolution du couple électromagnétique en fonction du temps');
xlabel('t [s]');
ylabel('Ce [Nm]');
legend('Ce [Nm]');

25
MOUGENOT Louis M1-EE CMI
H3E
BOUVARD Alexandre
Grâce à ce code nous pouvons visualiser les courbes suivantes :

On remarque que le couple électromagnétique à la même tendance de courbe que la courbe


du courant et le couple résistif à la même courbe que celle de la vitesse puisque ces
paramètres sont liés entre eux. Le couple électromagnétique admet 345,9 Nm en valeur
maximale et 46,1 Nm en régime permanent, et le couple résistif admet 45,2 Nm en régime
permanent.

1.2.3 Ajout d’une courbe de rendement

Tout d’abord, nous devons calculer le rendement pour cela il faut prendre en compte Pu et
Pa qui sont respectivement égale à :
- Puissance utile = Couple * Vitesse
- Puissance absorbée = Courant * Tension
Et le rendement est égal à :
- Pu/Pa*100 = rendement

Nous avons donc rentré ces calculs dans le programme pour obtenir dans un premier temps
les puissances utile et absorbé puis nous avons calculé le rendement. Nous obtenons alors
les courbes suivantes :

26
MOUGENOT Louis M1-EE CMI
H3E
BOUVARD Alexandre

On lit alors une puissance absorbée maximale de 36,2 kW, une puissance absorbée en
régime permanent de 4,8 kW et une puissance utile en régime permanent de 4,3 kW. Ces
valeurs nous permettent d’obtenir un pic de rendement de 91 % et un rendement en régime
permanent de 88,5 %.

1.3 Alimentation du moteur à vitesse variable


% Simulation d’une MCC en démarrage à vide
clc,clear all, close all
load('Uref.mat');
%% initialisation
tf=1000; % valeur finale du temps de la simulation
dt=0.001; % pas de temps de calcul
tk=1; % indice tableaux
Ntf=floor(tf/dt);
%% variables du système
R=0.8; % resistance induit
L=0.011; % inductance induit
k=1.91; % coefficient de FEM
J=0.2; % moment d'inertie du rotor
a=1E-2; % coefficient de frottement visqueux
u=Uref; % tension induit
i=0; %
w=0; % vitesse rad/s
u0=200; % tension d'alimentation de la machine au premier pas de temps
% (limitée à 8V si on veut limiter le courant)
Cr0=0; % Couple résistant au premier pas de temps
% initialisation des variables et tableaux
tt=zeros(1, Ntf);
t=0;
It=zeros(1, Ntf);
I=0.0001; % Courant induit
ut=zeros(1, Ntf);

27
MOUGENOT Louis M1-EE CMI
H3E
BOUVARD Alexandre
wt=zeros(1, Ntf);
Cet=zeros(1, Ntf);
Crt=zeros(1, Ntf);
Pat=zeros(1, Ntf);
Put=zeros(1, Ntf);
% rendt=zeros(1, Ntf);
%% boucle de simulation
while (t<tf)
% if t>=0.01 % a t=10ms on alimente la MCC
% u=u0;
% end
dI=(u(tk)-R*I-k*w)/L;
Ce=k*I;
dw=(Ce-a*w-Cr0)/J;
Cr=w*30/pi*50/1000;
Pa=u(tk)*I;
Pu=Cr*w;
% rend=Pu/Pa*100;
%intégrarion par la methode d'Euler
I=I+dI*dt;
w=w+dw*dt;
% stockage des résultats du pas de calcul dans les tableaux
tt(tk)=t;
It(tk)=I;
% ut(tk)=u;
wt(tk)=w;
Cet(tk)=Ce;
Crt(tk)=Cr;
Pat(tk)=Pa;
Put(tk)=Pu;
% rendt(tk)=rend;
Cr0=Cr;
t=t+dt;
tk=tk+1; % incrementation indice tableaux
end % fin de la boucle while
% Affichage des résultats
figure(1);
subplot(2,1,2),plot(tt,wt,'k');
grid on;
legend('w [rad/s]');
title('Evolution de la vitesse angulaire en fonction du temps');
xlabel('t [s]');
ylabel('w [rad/s]');
subplot(2,1,1),plot(tt,It,'b');
grid on;
title('Evolution du courant en fonction du temps');
xlabel('t [s]');
ylabel('I [A]');
legend('I [A]');
figure(2);
subplot(2,1,2),plot(tt,Crt,'k');
grid on;
legend('Cr [Nm]');

28
MOUGENOT Louis M1-EE CMI
H3E
BOUVARD Alexandre
title('Evolution du couple de la charge mécanique en fonction du temps');
xlabel('t [s]');
ylabel('Cr [Nm]');
subplot(2,1,1),plot(tt,Cet,'b');
grid on;
title('Evolution du couple électromagnétique en fonction du temps');
xlabel('t [s]');
ylabel('Ce [Nm]');
legend('Ce [Nm]');
figure(3);
subplot(2,1,1),plot(tt,Put,'k');
grid on;
legend('Pu[W]');
title('Evolution de la puissance utile en fonction du temps');
xlabel('t [s]');
ylabel('P [W]');
subplot(2,1,2),plot(tt,Pat,'b');
grid on;
legend('Pa[W]');
title('Evolution de la puissance absorbée en fonction du temps');
xlabel('t [s]');
ylabel('P [W]');
%{
figure(4);
plot(tt,rendt,'r');
grid on;
title('Evolution du rendement de la machine en fonction du temps');
xlabel('t [s]');
ylabel('Rendement [%]');
legend('Rendement [%]');
%}

29
MOUGENOT Louis M1-EE CMI
H3E
BOUVARD Alexandre
On remarque que le moteur ne fonctionne pas toujours à la même puissance en fonction du
temps.

TP 3 : Simulink 1

2.1 Cycle de référence

On retrouve les valeurs du cycle dans le bloc Lookup Table. Pour définir les discontinuités lors
des différentes phases du cycle on met les deux valeurs l’une derrière l’autre avec un pas de
temps très court. On obtient alors le cycle suivant :

30
MOUGENOT Louis M1-EE CMI
H3E
BOUVARD Alexandre

En intégrant le cycle de puissance et en convertissant les kWs en Wh on trouve une valeur


d’énergie totale à la roue consommée sur le cycle de 371,5 Wh.

2.1.2 Calcul de l’énergie

On trouve alors une valeur d’énergie consommée à la roue de 445,8 Wh et une valeur
d’énergie totale produite de 74,3 Wh.

2.1.3 Calcul de l’énergie transitant par les roues


Pour calculer l’énergie transitant par les roues, on reprend le schéma de la question 2.1.1 et
on obtient alors la courbe suivante :

31
MOUGENOT Louis M1-EE CMI
H3E
BOUVARD Alexandre

2.2.1 Evolution de la puissance délivrée par le moteur

Pour calculer la puissance totale délivrée par le moteur, on ajoute une saturation minimale à
0 puisque le moteur thermique ne permet pas la régénération d’énergie. On applique ensuite
le rendement.

On obtient alors la courbe suivante :

32
MOUGENOT Louis M1-EE CMI
H3E
BOUVARD Alexandre

On remarque que les plateaux et les pentes de montée en puissance du moteur sont plus
élevés que ceux de la puissance à la roue et que la puissance du moteur stagne à 0 lors des
phases de freinage.

2.2.2 Calculer énergie chimique, consommation de carburant


Pour calculer l’énergie chimique consommée on divise la puissance moteur par le rendement
du moteur. Ensuite pour calculer le carburant consommé on divise l’énergie chimique
consommée par la puissance massique et la masse volumique du gazole. Enfin pour obtenir
la consommation au 100 km, on multiplie par 100 et on divise par la distance totale du cycle
(en km).

On obtient alors une valeur d’énergie chimique consommée de 1651 Wh et une consommation
de carburant de 0,1651 L pour la totalité du cycle soit une consommation de 8,468 L/100km.

33
MOUGENOT Louis M1-EE CMI
H3E
BOUVARD Alexandre
2.3.1 Puissance électrique batterie
Le moteur électrique permet la régénération d’énergie, ce qui veut dire que le moteur sera
aussi générateur lors des phases de freinage. Pour différencier les deux mode on sépare les
deux phases par des saturation, l’une minimale à 0 pour les phase moteur où l’on divise la
puissance à la roue par les rendement de la chaîne de traction du moteur et de l’électronique
de puissance pour calculer (après intégration) l’énergie fournie par la batterie lors des phases
motrices, et l’autre maximale à 0 où l’on multiplie la puissance à la roue par ces même
rendement pour calculer l’énergie fournie à la batterie lors des phases de freinage.

On trouve alors une puissance fournie par la batterie de 549,3 Wh et on obtient le profil de
puissance suivant :

On remarque que la puissance fournie par la batterie est supérieure à la puissance nécessaire
à la roue lors des phases moteur et que la puissance fournie à la batterie est inférieure à celle
fournie par la roue lors des phases de freinage.

2.3.2 Calcule de l’énergie fournie par la batterie en fin de cycle


On reprend le schéma précédent pour calculer la valeur totale de l’énergie fournie par la
batterie :

34
MOUGENOT Louis M1-EE CMI
H3E
BOUVARD Alexandre

L’énergie totale fournie par la batterie à la fin du cycle est de 549,3 Wh (en prenant en compte
les phases de régénération).

2.3.3 Evolution de la tension aux bornes de la batterie


Pour tracer le courant et la tension de la batterie, on reproduit le schéma deux fois donné dans
le sujet en ajustant la valeurs de la source de tension, l’une à 20% et l’autre à 100% de la
charge totale :

35
MOUGENOT Louis M1-EE CMI
H3E
BOUVARD Alexandre

On remarque que le courant est plus élevé lorsque la capacité de la batterie est à 20% que
lorsqu’elle est à 100%. Cela est en accord avec ce que nous attendions car la tension baisse
avec la charge de la batterie et à puissance égale c’est le courant qui va augmenter pour
compenser la baisse de tension.

Comme dit précédemment, la tension diminue avec la charge de la batterie, il est donc normal
d’obtenir une tension de batterie supérieure lorsque la capacité de la batterie est à 100% que
lorsqu’elle est à 20%. Cependant à 20% on ne doit considérer que les phase de régénération
car lors des phase de traction, la tension est en dessous de la tension minimale acceptable.
A l’inverse, à 100% on ne doit considérer que les phases de traction car lors des phases de
régénération, on obtient une tension au-dessus de la tension maximale acceptable par la
batterie.

36
MOUGENOT Louis M1-EE CMI
H3E
BOUVARD Alexandre

TP4 : Simulink 2

2.2 Bilan de puissance et énergie

La consommation maximale en été du logement A est de 1,85 kW alors que celle du logement
B est de 1,27 kW. La consommation moyenne est alors de 526 W pour le logement A et de
320 W pour le logement B.

37
MOUGENOT Louis M1-EE CMI
H3E
BOUVARD Alexandre

La consommation maximale du bâtiment en été est de 2,24 kW et sa consommation moyenne


est de 847 W.

L’énergie consommée sur une semaine en été par le logement A est alors de 81,21 kWh et
celle du logement B est de 59,06 kWh soit une consommation totale d’énergie de 140,27 kWh
pour le bâtiment complet.

38
MOUGENOT Louis M1-EE CMI
H3E
BOUVARD Alexandre
La consommation maximale en été du logement A est de 2,68 kW alors que celle du logement
B est de 2,14 kW. La consommation moyenne est alors de 843 W pour le logement A et de
592 W pour le logement B.

La consommation maximale du bâtiment en été est de 4,69 kW et sa consommation moyenne


est de 1,44 kW.

L’énergie consommée sur une semaine en hiver par le logement A est alors de 107,8 kWh et
celle du logement B est de 92,82 kWh soit une consommation totale d’énergie de 200,62 kWh
pour le bâtiment complet.

39
MOUGENOT Louis M1-EE CMI
H3E
BOUVARD Alexandre
2.3 Production solaire

On remarque que la puissance fournie par les panneaux solaires en été est de 583,3W en
moyenne avec un pic max à 4.011kW.

40
MOUGENOT Louis M1-EE CMI
H3E
BOUVARD Alexandre

Donc en été on renvoie en moyenne 182.9 W sur la saison, avec un pic max à 4.011 kW.

En hiver, nous obtenons une moyenne drastiquement plus faible avec 15.5 W avec un pic
max à 391 W, nous n’allons pas renvoyer d’énergie sur le réseau, ou très peu.

41
MOUGENOT Louis M1-EE CMI
H3E
BOUVARD Alexandre

En moyenne nous renvoyons -1.17kW ce qui signifie que nous consommons de l’énergie sur
le réseau.

On remarque que nous envoyons beaucoup d’énergie en été et peu en hiver, ce qui
correspond à l'ensoleillement des saisons.

2.4 Stockage de l’énergie par batterie

Dans cette étape nous avons pris une énergie max pour la batterie de 15.5kWh (Calculé par
rapport à l’énergie stockable totale en hiver +1 kW pour avoir de la marge).
L’énergie minimum est de 20%, ce qui correspond à 3.1kWh.
Pour la simulation nous utilisons 1500 Cellules pour avoir un courant maximum de 1 kA.
Les phases de courant négatives permettent de recharger la batterie. Ce système permet
d’effacer le bâtiment du réseau.

42
MOUGENOT Louis M1-EE CMI
H3E
BOUVARD Alexandre

On stock l’énergie en été et on la restitue en hiver.

43
MOUGENOT Louis M1-EE CMI
H3E
BOUVARD Alexandre

44
MOUGENOT Louis M1-EE CMI
H3E
BOUVARD Alexandre

À travers ces différentes courbes, on remarque que ce genre de stockage n’est pas
judicieux. Il faudrait comparer avec une solution hydrogène avec un électrolyseur et une pile
à combustible.

45
MOUGENOT Louis M1-EE CMI
H3E
BOUVARD Alexandre

Conclusion
Dans cette série de travaux pratiques, nous avons utilisé la théorie vue au travers des
différents cours et travaux dirigés. Cela nous a permis d'appliquer les aspects théoriques à
des cas concrets tels que la production photovoltaïque avec système de stockage d’énergie
et le dimensionnement d’un système de stockage dans le domaine automobile. La série
d'exercices pratiques que nous avons faite sera importante dans notre future carrière
d'ingénieur, cela nous permettra d’avoir de bonnes connaissances au niveau du
dimensionnement de système de stockage d’énergie ainsi que leur gestion.

Annexe

46
MOUGENOT Louis M1-EE CMI
H3E
BOUVARD Alexandre

47

Vous aimerez peut-être aussi