Modélisation Des Convertisseurs Statiques
Modélisation Des Convertisseurs Statiques
Modélisation Des Convertisseurs Statiques
THESE
Pour obtenir le grade de
présentée
par
Asma MERDASSI
le 15/10/2009
JURY
Cette thèse n’aurait pas pu avoir lieu sans un encadrement de très grande qualité celui de M.
Seddik Bacha et M. Laurent Gerbaud. J’ai eu beaucoup de chance d’être encadrée par deux
grands « chefs ». Tous les mots ne suffisent pas à exprimer ma gratitude et ma reconnaissance
envers eux.
M. Seddik Bacha que j’ai connu grâce à un séminaire sur la commande en mode glissant chez
tel-00434953, version 1 - 23 Nov 2009
MGE UPS à Grenoble. J’ai espéré par la suite pouvoir travailler avec lui et mon vœu s’est
exaucé. C’est grâce à lui que j’ai découvert le laboratoire du génie électrique de Grenoble
(G2Elab). Très bon confident, protecteur, je le remercie de tout mon cœur pour sa confiance,
sa disponibilité. Il n’a jamais cessé de me soutenir et me conseiller, même pendant les
moments les plus difficiles il a su toujours trouver les mots pour me remonter le moral. Je
n’oublierai jamais ces trois années de partage enrichissantes sur tous les plans, entre autres les
vidéos et les photos de la Kabylie!!
Pendant ces trois années de thèse, j’ai eu la chance de côtoyer des personnes exceptionnelles
dans le laboratoire G2Elab (KéKé, Gérard, Fred, Ben, Daniel, Raph, Corine, Elise, Diem,
Teu, Yannou, Caro..), la liste est vraiment longue, j’espère sincèrement que les autres
personnes s’y reconnaîtront.
Je remercie du fond de mon cœur tous les permanents, chercheurs, techniciens, ingénieurs,
personnels administratifs, doctorants ainsi que mes deux équipes Mage et Syrel, de m’avoir
accueillis à bras ouverts avec beaucoup d’amour.
Une mention spéciale à Jean Michel Guichon. Il a réussi à passer l’épreuve de la survie en
étant mon voisin de bureau pendant ces trois années de thèse. Je le remercie pour sa
disponibilité (à chaque fois que je lui posais une question il avait toujours la réponse, faut
avouer aussi que mes questions n’étaient pas super difficiles!), toutes les discussions et les
rires que nous avons eu ensemble. C’était également un réel plaisir de faire des enseignements
avec lui, de s’occuper de ses plantes en son absence et de s’amuser à changer les jours de son
calendrier ☺
Merci aux anciens doctorants du laboratoire : Denis, Lalao et Bertrand d’avoir été présents à
tel-00434953, version 1 - 23 Nov 2009
ma soutenance.
Un grand merci à tous les gens du bureau D055 qui se reconnaîtront. Dans ce bureau nous
avons tant partagé, entre les petits déjeuners à 8h du matin, les pauses café, les déjeuners et
les répétitions de chorégraphie (Flamenco, Michael Jackson, et danse orientale) décidément
on a tout vu !! J’espère que les nouveaux arrivants prendront le flambeau.
Je n’oublierai pas aussi le nouveau bureau D066 « le bureau des filles : Miss Colombie, Miss
Tunisie, Miss Hawaï et Miss Vietnam », le slogan de ce bureau c’est le travail mais il doit
rimer avec les potins, cette ambiance me manquera terriblement ainsi que les pauses Bruno ☺
Bon courage les filles pour votre rédaction et le reste, j’ai confiance en vous!
Merci aux personnes qui m’ont soutenu, ont supporté mes sauts d’humeurs et mes caprices de
« princesse », merci pour le courage dont ils ont fait preuve je sais que ce n’était pas toujours
évident, merci de m’avoir rendu la vie facile, j’espère que ces personnes se reconnaîtront. Je
tiens à leur dire que je les aime et que je n’oublierai jamais tout ce qu’ils ont fait pour moi.
«Les amis sont des anges qui nous soulèvent quand nos ailes n'arrivent plus à se
rappeler comment voler »
Merci à Ali, Jérémie, Bibi, Mcita, Feu, Lina, Amal, Damien des gens géniaux et à qui je tiens
énormément. Je ne risque pas de vous oublier !
Une pensée particulière à mes meilleures amies de Tunis naddou, amouna, noussa et chi.
Malgré la distance qui nous sépare, elles ont su être présentes pour moi.
Pour finir ces remerciements n’auront pas de valeur sans une très grande pensée pour mes
parents, et mes sœurs (Ahlem, Hanène et Ghaya) qui n’ont jamais cessé de me cajoler et de
m’aimer, je leur doit tout et les mots ne suffisent pas à leur exprimer mon amour et ma
gratitude. Je leur dédie cette thèse. Que dieu les garde et qu’ils trouvent ici ma reconnaissance
éternelle!
tel-00434953, version 1 - 23 Nov 2009
tel-00434953, version 1 - 23 Nov 2009
tel-00434953, version 1 - 23 Nov 2009
SOMMAIRE
tel-00434953, version 1 - 23 Nov 2009
SOMMAIRE
Introduction .............................................................................................................................. 1
Introduction
tel-00434953, version 1 - 23 Nov 2009
Introduction
Dans la littérature, nous trouvons plusieurs références montrant l’intérêt qu’apporte une
aide à la modélisation moyenne [Raj87, Ver03, Mak01]. Diverses tentatives visaient à
automatiser la démarche de calcul des modèles moyens. Néanmoins, les solutions proposées ne
se faisaient pas d’une manière complètement automatique et étaient dans la plupart des cas
restreintes à la mise en œuvre de modèles de structures de conversion continue-continue.
Nous souhaitons aller plus loin. Ainsi, nous nous intéressons à cette problématique en
proposant une approche qui permette de modéliser automatiquement les convertisseurs
statiques pour tout type de conversion (continue/continue, continue/alternative,
alternative/alternative).
La modélisation moyenne requiert un a priori sur le fonctionnement des convertisseurs
statiques, que le concepteur devra fournir.
tel-00434953, version 1 - 23 Nov 2009
La démarche proposée dans le deuxième chapitre sera mise en œuvre dans le suivant
afin de créer un outil dédié à la génération automatique de modèles moyens : AMG (Average
Model Generator). Le troisième chapitre sera donc entièrement consacré à mettre en évidence
cet outil qui sera développé en Java en s’appuyant sur Maple pour les calculs formels. Les
modèles générés sont élaborés sous une forme symbolique, ce qui permet de les réutiliser pour
d’autres traitements. La projection des modèles est aussi faite en Modelica et en VHDL-AMS,
ce qui permet de profiter des avantages en terme de couplage de modèles.
Introduction -3-
Le dernier chapitre présente les diverses applications qui ont pu être testées grâce au
générateur de modèles. Quelques exemples de structures caractéristiques de l'électronique de
puissance seront appréhendés. Les différents modèles moyens calculés automatiquement ainsi
que les résultats de simulation testés dans plusieurs logiciels de simulation seront également
exposés. Les modèles obtenus seront confrontés à des modèles comportementaux plus fins,
issus d’outils de simulation de circuit, par exemple : Portunus, Pspice, Saber, Psim, etc.
Chapitre 1
Etat de l’art des modèles moyens
tel-00434953, version 1 - 23 Nov 2009
Chapitre 1
Etat de l’art des modèles moyens
I. Introduction
Ce chapitre, présente la modélisation moyenne en électronique de puissance et les
différentes façons de l’appréhender.
Tout d’abord, nous introduisons la notion de modèle à topologie variable puis nous
définissons le modèle exact qui est le point de départ de la modélisation moyenne. Nous
expliquons par la suite l’intérêt de développer les modèles moyens.
Ensuite, nous rappelons les différents modèles moyens existants en décrivant les
tel-00434953, version 1 - 23 Nov 2009
pas de constante de temps par rapport aux autres modèles de semi-conducteurs qui peuvent
ralentir voir perturber la résolution, notamment en simulation système [Nor92, Ger93].
A1
A2 I
C I
A3
A4
A1
V1 ik1
VK1 K1
V V1 -V2 C
i
K2
VK2
ik2
A2
V2
D’un point de vue dynamique, dans une cellule élémentaire de commutation, la commutation
tel-00434953, version 1 - 23 Nov 2009
est provoquée par le changement d’état commandé de l’un des interrupteurs, entraînant
spontanément le changement d’état complémentaire de l’autre.
Les états des deux interrupteurs sont complémentaires en respectant les règles fondamentales
sur les interconnexions des sources:
- ne jamais court-circuiter une source de tension ;
- ne jamais ouvrir une source de courant.
Deux modes de commutation sont envisageables (cf. figure 1.5) :
(a) (b)
ik1 ik1
ON OFF
K1 K1
Vk1 Vk1
Ve Ve
i i
K2 Vk2 K2 Vk2
ik2 ik2
v
tel-00434953, version 1 - 23 Nov 2009
I V V
I
I
I1
V1
V I
I2 V2
I3 V3
Entre deux commutations chaque configuration est indexée par un entier i. Pour chacune
d’elles, il faut écrire une équation différentielle ordinaire, dont les variables d’état sont les
courants dans les inductances et les tensions aux bornes des condensateurs ou des
combinaisons linéaires de ces courants et/ou tensions.
Vc
iL
Ie Vs
tel-00434953, version 1 - 23 Nov 2009
Ve Is
Sous les hypothèses de modélisation déjà posées, tout convertisseur sera représenté pour
chaque configuration d’index i par le système [Bac93]:
dx (1.3)
= Ai ⋅ x + Bi ⋅ e pour t ∈ [ti −1 , ti ] ; i = 1,.., N
dt
avec :
N
∑ t i − t i −1 = T
i =1
où:
En introduisant les fonctions discrètes hi , liées aux différentes topologies prises par le système
durant une période T, nous obtenons une forme bilinéaire générale :
dx p (1.4)
= A ⋅ x + ∑ hi ⋅ ( Bi ⋅x + bi ) + d
dt i =1
Remarque:
La forme bilinéaire implique que A, Bi , bi et d sont indépendants de x et h.
Notons que p fonctions peuvent décrire 2p configurations de la structure.
Afin de mieux comprendre le passage de l’équation (1.3) à l’équation (1.4), nous proposons
de l’illustrer par les équations régissant un hacheur parallèle.
iL
Vc
1 1
1
iL 0 0 0 −
L ; B =L
x = ; e = E ; A1 = 1 ; B1 = L ; A2 =
Vc 0 − 0 1 1 2
0
R⋅C −
C R⋅C
Ce convertisseur possède deux configurations. La fonction discrète h prend ses valeurs dans
l’ensemble discret {0,1} , la représentation se ramènera à l’équation suivante :
(1.7)
= A ⋅ x + h ⋅ (B ⋅ x + b ) + d
dx
dt
tel-00434953, version 1 - 23 Nov 2009
avec :
1 1
E
0 − 0
A= L ; B = L ; b=0 ; d = L
1 −
1
− 1 −
1
0
C R ⋅C C R⋅C
En posant h=0 entre 0 et αT et h=1 entre αT et T, nous retrouvons les équations (1.5) et (1.6).
Plusieurs travaux ont été menés sur les modèles moyens basés sur une représentation
tel-00434953, version 1 - 23 Nov 2009
Nous allons maintenant présenter les différents modèles moyens dans le cadre du
convertisseur statique fonctionnant en conduction continue.
Une classification des modèles peut se faire sur la base de la structure du convertisseur.
Le principe de base de tout modèle moyen est le calcul de la moyenne dite glissante sur
une fenêtre de largeur T, correspondant généralement à une période de fonctionnement (cf.
figure 1.9).
x(t)
tel-00434953, version 1 - 23 Nov 2009
t t+T
0 T t(s)
1 t +T − jkωτ (1.8)
x(t ) k
= ∫ x(τ ) ⋅ e dτ
T t
avec:
2π
ω =
T
x(τ ) = 0 pour τ < 0
Fourier complexe dont la moyenne se fait dans ce cas sur une fenêtre glissante et non sur un
intervalle statique.
Il existe plusieurs types de modèles moyens (cf. figure 1.10) selon le mode de fonctionnement,
le type de conversion et enfin selon l’usage (analyse, simulation système, conception de
commande…).
Chapitre1. Etat de l’art des modèles moyens - 15 -
Structure
du convertisseur
Modèle exact
DC AC et DC AC et DC
Conduction
discontinue
Modèle Moyen
Mode Générateur Moyen
Généralisé
Opératoire? Équivalent
Conduction
continue
Modèle moyen
classique
(grands signaux)
tel-00434953, version 1 - 23 Nov 2009
Modèle moyen
petits
signaux
Fonction de transfert
A partir de la structure du convertisseur, nous calculons son modèle exact (équation 1.4)
qui nous sert de point de départ de la modélisation moyenne. Ensuite, en fonction du mode
opératoire et de la nature du convertisseur, nous choisissons le (ou les) modèle(s) moyen(s)
adapté(s).
A titre d’exemple, le modèle moyen classique grands signaux ne s’applique qu’aux
convertisseurs DC/DC fonctionnant dans le cas de la conduction continue par contre c’est un
modèle qui est non linéaire. Afin de s’affranchir de ce problème de non linéarité, le modèle
moyen petits signaux a été conçu. La création de ce modèle passe par deux étapes
d'approximation : une moyenne et une linéarisation. Il est souvent utilisé pour instaurer des
stratégies de commande et ce à partir du calcul de sa fonction de transfert; par ailleurs, il
permet l’extraction des valeurs propres moyennes du système.
De plus, le modèle moyen classique grands signaux ne peut pas s’appliquer aux
convertisseurs présentant un étage alternatif ou travaillant en conduction discontinue. Afin de
pallier cette insuffisance, deux autres modèles dérivés ont été développés. Nous citerons : le
Générateur Moyen Equivalent (G.M.E) et le Modèle Moyen Généralisé (M.M.G).
Chapitre1. Etat de l’art des modèles moyens - 16 -
dx(t ) d (1.9)
= x(t ) 0
dt 0 dt
Ainsi qu’à l’approximation fondamentale du moyen classique (en partant du principe du
produit de convolution de deux termes x et y):
+∞ (1.10)
x⋅ y k
= ∑
p = −∞
x k− p
⋅ y p
où :
(1.13)
x(τ ) dτ
1 t
x(t ) = ∫
0
T t −T
La durée T correspond à la largeur de la fenêtre dans laquelle nous calculons la moyenne de
x(t). Cette fenêtre de calcul se déplace dans le temps (d’où le nom de moyenne glissante), ce
qui implique que cette moyenne soit elle-même dépendante du temps.
Chapitre1. Etat de l’art des modèles moyens - 17 -
En utilisant les équations (1.9) et (1.12) dans l’équation (1.4), nous obtenons l’équation du
modèle moyen grands signaux.
( )+ (1.14)
d p
x 0
= A 0
⋅ x 0 + ∑ hi 0
⋅ Bi 0
⋅ x 0 + bi 0
⋅ hi 0
d 0
dt i =1
( )+ (1.15)
d p
x 0
= A ⋅ x 0 + ∑ hi 0
⋅ Bi ⋅ x 0 + bi ⋅ hi 0
d 0
dt i =1
échantillonné ainsi que pour l’analyse des modes (via les valeurs propres) du système
considéré. Dans cette perspective, nous sommes amenés à réaliser des modèles linéaires qui
sont aussi appelés modèles tangents, valables autour d’un point de fonctionnement. Ces
modèles permettent de s’affranchir des problèmes de non linéarité. La construction de tels
modèles passe par un développement en séries de Taylor limité au premier ordre.
Nous allons détailler les différentes étapes de construction de ce modèle [Bac06-1, Bac06-2].
avec:
• y est le vecteur de sortie (de dimension [q])
• x est le vecteur d’état (de dimension [n])
• u est le vecteur d’entrée (de dimension [p]).
Le modèle linéaire ci-dessous s’obtient par différentiation autour d’un point d’équilibre donné
(xe, ue) du convertisseur statique, c’est en fait le modèle tangent.
Chapitre1. Etat de l’art des modèles moyens - 18 -
dx
Ce point est calculé pour = 0 en régime stationnaire.
dt
d~
x ~ ~ ~ ~
= A ⋅ x + B ⋅u
dt (1.17)
~ ~ ~ ~ ~
y = C ⋅ x + D ⋅u
La procédure d’élaboration du modèle petits signaux à partir d’un modèle non linéaire passe
par l’espace d’état.
Les matrices du modèle petits signaux sont calculées en utilisant les formules ci-dessous:
tel-00434953, version 1 - 23 Nov 2009
~ ∂f ( x, u ) ~ ∂f ( x, u )
A= ;B =
∂x xe ,u e ∂u xe ,u e (1.19)
~ ∂g ( x, u ) ~ ∂g ( x, u
C = ;D = )
∂ x xe ,u e ∂ u xe ,ue
avec:
~
• A est la matrice d’état (de dimension [n, n]).
~
• B est la matrice d’entrée (de dimension [n, p]).
~
• C est la matrice de sortie (ou d’observation) (de dimension [q, n]).
~
• D est la matrice d’action directe (de dimension [q, p]).
La fonction de transfert s’obtient de manière classique, elle est donnée par l’équation (1.20)
dans le cas du système SISO (Single Input Single Output):
y( s) ~ ~ ~ ~ (1.20)
= C ⋅ ( s ⋅ I − A) −1 ⋅ B + D
u ( s)
avec :
• I est la matrice identité (de dimension [n, n]).
Nous appliquons ces calculs afin d’obtenir le modèle moyen petits signaux à partir de
l’équation du modèle moyen grands signaux (équation 1.15).
• dans le cas général bilinéaire, le point d’équilibre obtenu pour le modèle (1.15) est:
−1 (1.21)
p p
xe = A + ∑ Bi ⋅ hie 0 − ∑ bi ⋅ hie 0
+ d
i =1 i =1
Chapitre1. Etat de l’art des modèles moyens - 19 -
• dans le cas monovariable et en appliquant (1.19) au modèle (1.15), nous obtenons les
matrices suivantes:
~
A = A + B ⋅ he 0
(1.22)
~
B = B ⋅ xe + b (1.23)
Dans cette modélisation, nous supposons que la période T est constante ou varie faiblement
dans le temps.
Ainsi, nous pouvons écrire ce modèle sous la forme suivante:
dx d x (1.24)
= k
+ j ⋅ k ⋅ω ⋅ x k
dt k dt
où:
• k est le rang de l’harmonique considéré.
(1.25)
∫t −T x(τ ) ⋅ e
1 t − jkωτ
• x k
= dτ
T
Pour les variables d’état alternatives (premier harmonique, i.e.: k=1), l’équation (1.24)
devient:
dx d x (1.26)
= 1
+ j ⋅ω ⋅ x 1
dt 1 dt
Pour les variables d’état continues (k = 0), l’équation (1.24) devient l’équation (1.27).
dx d x (1.27)
= 0
dt 0 dt
En utilisant l’équation (1.24), le modèle exact de l’équation (1.4) s’écrit sous la forme de
l’équation (1.28) en supposant que les matrices A et Bi sont invariantes et en s’intéressant à
une harmonique de rang k donné:
( )+ (1.28)
d p
x k
= − j ⋅ k ⋅ω ⋅ x k
+ A⋅ x k
+ ∑ Bi x ⋅ hi k
+ bi ⋅ hi k
d k
dt i =1
Chapitre1. Etat de l’art des modèles moyens - 20 -
Les expressions des variables d’état alternatives sont écrites sous leur forme complexe.
Remarque :
Pour nos applications, nous nous limitons généralement au fondamental (k=1) et aux valeurs
moyennes (k=0). Toutefois, s’il y a nécessité, le développement se poursuivra jusqu’aux rangs
les plus significatifs.
L’étape suivante consiste à faire des simplifications dans le développement des termes de
l’équation (1.28) en utilisant la formule (1.29) :
n
∏nq =1 x q = ∑ ∏ x q
k i1 + i2 +...+ in = k q =1 iq
(1.29)
avec
( )
iq ∈ {− 1,0,1}
tel-00434953, version 1 - 23 Nov 2009
= ∑ x1 i1
⋅ x2 i2
⋅ x3
i1 + i2 + i3 = k i3
Le modèle moyen généralisé nous fournit l’amplitude des variables alternatives à partir du
calcul de la partie réelle et de la partie imaginaire :
Xˆ = 2 ⋅ x 1
= 2⋅ ℜ x ( 1 )2 + ℑ( x 1 )2 (1.33)
Chapitre1. Etat de l’art des modèles moyens - 21 -
avec :
ω = 2 ⋅π ⋅ f (1.35)
III.3.2 Cas particulier de calcul pour une commande en pleine onde moyennée
Le principe de la commande en pleine onde est de commuter les semi conducteurs à la
fréquence de fonctionnement du convertisseur. Quand le semi conducteur est à l’état ON
tel-00434953, version 1 - 23 Nov 2009
1 t (1.36)
∫ hi (τ ) ⋅e
− j ⋅ω ⋅ k ⋅τ
hi k
= dτ
T t −T
Les harmoniques de rang 1 dans le développement en série de Fourier complexe des fonctions
de commutation h1 et h2 variant entre -1 et 1 et déphasées d’un angle δ obtenus après calcul
sont fournis par les équations (1.37) et (1.38)
2 (1.37)
h1 1 =
π⋅j
2 − jδ (1.38)
h2 1 = e
π⋅j
Remarque:
Le rapport cyclique vaut 0,5 et les valeurs moyennes h1 0 et h2 0 sont égales à zéro.
Chapitre1. Etat de l’art des modèles moyens - 22 -
Les variables rapides sont soient des variables alternatives à valeur moyenne nulle, soient
des grandeurs continues qui varient rapidement par rapport à d’autres grandeurs continues.
Si nous considérons le hacheur parallèle de la figure 1.8, le courant dans l’inductance en
conduction continue sera une grandeur lente alors qu’il sera une grandeur rapide en conduction
discontinue (puisque ses variations seront rapides comparativement à celle de la tension aux
bornes du condensateur de la charge).
Le modèle G.M.E est incontournable dés que nous commençons à nous intéresser au
comportement moyen d’un convertisseur en conduction discontinue. Le principe est basé sur la
séparation entre les variables « lentes » et « rapides ». Le cas de la conduction discontinue fera
l’objet d’un traitement approfondi dans la section IV.
tel-00434953, version 1 - 23 Nov 2009
Le Générateur moyen équivalent peut s’appliquer, même s’il peut y avoir des pertes de
précision, dans le cas de variables d’état alternatives. Il est possible de construire le G.M.E à
partir de la structure bilinéaire générale et du M.M.G limité au fondamental.
La démarche du G.M.E est illustrée par la figure 1.12.
dx
= f ( x, h )
dt
Variables d’état lentes Variables d’état rapides
dxl dxr
= fl (xl , xr , h) = fr (xl , xr , h)
dt dt
En considérant constant xl
dxl ~ ~
= fl (xl , Xr , h) Xr = Fr (xl , h) Régime stationnaire X~r
dt
Moyennage
d xl ~
0
= fl (xl , Xr , h)
dt 0
xr (1.41)
x=
xl
où :
• xr représente le vecteur des variables d’état rapides (dim [nr])
Tout d’abord, nous exprimons les équations des variables d’état lentes et rapides à partir de
l’équation du modèle exact (pour une configuration i=1) dans le cas bilinéaire.
dxr (1.42)
r xr Brr xr br
Arl Brl d
dt = Ar ⋅ + ⋅ + (h ) + r
dxl Alr All x Br Bll x b d
l l l l l
tel-00434953, version 1 - 23 Nov 2009
dt
avec :
• All (dim [nl,nl]); Alr (dim [nl, nr]); Arl (dim [nr ,nl]); Arr (dim [nr, nr])
• Bll (dim [nl,nl]); Blr (dim [nl, nr]); Brl (dim [nr ,nl]); Brr (dim [nr, nr])
• h (dim [p])
• br (dim [nr,p]); bl (dim [nl,p])
Le comportement des variables lentes et des variables rapides est exprimé par les équations
(1.43) et (1.44) :
dxl
dt
N
( )
= All ⋅ xl + Alr ⋅ x r + ∑ Bill ⋅ xl + Bilr ⋅ x r ⋅ hi + bil ⋅ hi + d l
i =1
(1.43)
dxr
dt
N
( )
= Arl ⋅ xl + Arr ⋅ xr + ∑ Birl ⋅ xl + Birr ⋅ xr ⋅ hi + bir ⋅ hi + d r
i =1
(1.44)
Nous appliquons par la suite le modèle moyen grands signaux aux variables d’état
continues xl et nous obtenons l’équation (1.45).
d xl p Bill ⋅ xl ⋅ hi (1.45)
= ⋅ xl 0 + ∑ + d
0
0
All
dt
i =1 + B ⋅ x ⋅ h
r
+ bil ⋅ hi 0
l 0
il r i 0
Chapitre1. Etat de l’art des modèles moyens - 25 -
Remarque :
Le modèle moyen généralisé peut être associé au générateur moyen équivalent.
L’équation (1.46) est obtenue effectivement en appliquant ce modèle sur les variables d’état
alternatives xr et en considérant que les variables xr sont en régime permanent (ici, uniquement
les harmoniques d’ordre 1 sont pris en compte).
d xr p Birr xr ⋅ hi (1.46)
= − jω ⋅ xr + ⋅ xr + ⋅ xl 1 + ∑ + d
1
1
Arr Arl
i =1 + B ⋅ x ⋅ h r
ir l i 1 + bir ⋅ hi 1
1 1 l 1
dt
L’équation (1.45) est résolue en supposant que les variables d’état continues sont constantes
dans le temps.
Nous avons utilisé l’équation (1.10) pour développer les termes suivants:
tel-00434953, version 1 - 23 Nov 2009
xr ⋅ hi 0 , xl ⋅ hi 0 , xr ⋅ hi 1 et xl ⋅ hi 1 .
~ d xr
La solution X r de l'équation 1
= 0 représente le régime stationnaire que xr a atteint.
dt
~
Xr (
= j ⋅ ω ⋅ I − Arr )
−1 p
∑ Bir ⋅ xl ⋅ hi 1 + bir ⋅ hi 1 + d r 1
l (1.47)
1 i =1
où :
• I est la matrice identité de même dimension que la matrice Arr
Cette solution est remplacée par la suite dans l’équation (1.45) et nous obtenons finalement,
l’équation du générateur moyen équivalent.
( ( )) + dl
d xl (1.48)
0
= All ⋅ xl 0
+ Blr ⋅ 2 ⋅ ℜ( xr 1 ⋅ ℜ hk 1
+ ℑ xr 1 ⋅ ℑ hk 1
dt
Notons que :
Le générateur moyen équivalent et le modèle moyen généralisé sont des extensions du modèle
moyen classique grands signaux [Bac93].
Chapitre1. Etat de l’art des modèles moyens - 26 -
Modèle moyen -Mêmes hypothèses que pour le modèle - Mise en évidence des -Le modèle se complique
généralisé exact régimes transitoires quand le calcul est poussé
- La période T est constante ou varie (Amplitude et phase) pour des harmoniques de
faiblement dans le temps - K=0 : modèle moyen rang supérieurs
- Variables alternatives classique
- Convertisseurs AC et DC - K=1: fondamental
- Conduction continue - K= n ; nième harmonique
- Possibilité de combiner
avec le Générateur moyen
équivalent.
Plusieurs auteurs se sont intéressés à l’étude des hacheurs (parallèle, série, à accumulation
inductive) fonctionnant dans le cas de la conduction discontinue d’une manière particulière
sans souci de généralisation [Cuk77, Vor90, Mak91, Sun92, Sun98, Sun01, Chet82]. Le mode
de fonctionnement en conduction discontinue se traduit par l’annulation d’une variable d’état
durant un temps supérieur à 0; par exemple le courant dans l’inductance de la figure 1.13
durant une partie de la période de découpage.
v i
tel-00434953, version 1 - 23 Nov 2009
Charge
En conduction continue, nous moyennons les matrices du système ainsi que les variables d’état
(modèle moyen grands et petits signaux). Néanmoins, nous ne pouvons pas appliquer la même
procédure pour la conduction discontinue.
La variable d’état s’annule pendant un certain temps ce qui entraîne que la moyenne de sa
dérivée est nulle (cf. figure 1.15) ce que ne prévoit pas le modèle moyen classique, sauf bien
entendu dans le cas limite conduction continue/discontinue (cf. figure 1.14).
iL Mode 1 Mode 2
0 t
tel-00434953, version 1 - 23 Nov 2009
d1 ⋅ Ts d1 ⋅ Ts
Ts
Figure 1. 14: allure du courant iL dans l’inductance du hacheur parallèle dans le cas de la
limite de conduction continue/discontinue
iL
Mode 1 Mode 2 Mode 3
ipk
0
d1 ⋅ Ts d 2 ⋅ Ts d 3 ⋅ Ts
t
Ts
Figure 1. 15: allure du courant iL dans l’inductance du hacheur parallèle dans le cas de la
conduction discontinue
Chapitre1. Etat de l’art des modèles moyens - 29 -
avec :
• i pk est la valeur du courant crête dans l’inductance.
Pendant la conduction discontinue (cf. figure 1.15), le convertisseur est décrit par les
équations d’état (1.49, 1.50, 1.51) dans chaque intervalle [Usm08].
Les équations d’état sont les suivantes :
dx (1.49)
= A1 ⋅ x + B1 ⋅ E pour t ∈ [0 , d1 ⋅ Ts ]
dt
dx (1.50)
= A2 ⋅ x + B2 ⋅ E pour t ∈ [ d1 ⋅ Ts , (d1 + d 2) ⋅ Ts ]
dt
dx (1.51)
= A3 ⋅ x + B3 ⋅ E pour t ∈ [ (d1 + d 2) ⋅ Ts ,Ts]
dt
L’opération de moyennage de l’espace d’état conduit à l’équation suivante :
tel-00434953, version 1 - 23 Nov 2009
dx [d1 ⋅ A1 + d 2 ⋅ A2 + (1 − d1 − d 2) ⋅ A3 ] ⋅ x 0 (1.52)
=
dt 0 + [d1 ⋅ B1 + d 2 ⋅ B2 + (1 − d1 − d 2) ⋅ B3 ] ⋅ E
avec :
• E est la tension d’entrée du convertisseur.
• x 0 est la valeur moyenne de x
dVc d 2 ⋅ iL Vc (1.54)
= 0
− 0
dt 0 C R ⋅C
Plusieurs études ont été menées afin de modéliser les convertisseurs continu/continu
fonctionnant en conduction discontinue et plusieurs modèles ont été développés [Sun00].
Ceux-ci sont classés en trois catégories et les équations qui en résultent sont souvent identiques
ou équivalentes:
• modèle d’ordre réduit [Cuk77, Sun01]
• modèle d’ordre complet [Mak91, Vor90]
• modèle d’ordre complet corrigé [Sun98, Sun01]
Le principe du modèle d’ordre réduit est de considérer la variable d’état qui s’annule pendant
un intervalle de temps comme une variable dépendante, elle n’apparaît donc pas comme une
variable d’état. D’où la réduction d’ordre du système qui entraîne le manque de précision.
Chapitre1. Etat de l’art des modèles moyens - 30 -
L’absence de courant dans l’inductance d’un modèle moyen est très gênante dans certaines
applications: les modèles moyens d’ordre complet ont été créés afin de surmonter les
difficultés liées à ces approches.
Ces alternatives proposées ont amélioré la précision, même à fréquence élevée par rapport aux
modèles d’ordre réduit. Ils prennent en compte toutes les variables d’état du convertisseur, y
compris le courant qui s’annule dans l’inductance.
Toutefois, certaines divergences ont toujours été observées en hautes fréquences et pour
remédier à cette petite défaillance les modèles moyens corrigés d’ordre complet ont été
développés. Ces modèles prennent en compte très précisément les dynamiques hautes
fréquences du courant dans l’inductance.
Nous allons maintenant détailler ces modèles.
tel-00434953, version 1 - 23 Nov 2009
diL (1.55)
=0
dt 0
L’ordre du modèle moyen résultant est réduit d’une unité par rapport à celui du modèle
d’espace état d’origine. A partir du modèle du système d’état initial, nous obtenons un
nouveau système d’ordre réduit en prenant en compte les équations (1.56) et (1.58).
Chapitre1. Etat de l’art des modèles moyens - 31 -
[Vor90] propose quant à lui une seconde approche basée sur le circuit équivalent d’une cellule
de commutation.
Bien que cette approche soit différente de la précédente, le modèle obtenu au final est le
même.
iL
ipk
iL 0
0
d 1 ⋅ Ts d 2 ⋅ Ts
Ts
Le courant moyen iL 0
est égal à :
i pk (1.60)
iL 0
= (d1 + d 2)
2
En utilisant les équations (1.57) et (1.60), nous déduisons d2 sous la forme d’une fonction
algébrique s’écrivant en fonction de d1 et de la valeur moyenne du courant.
2 ⋅ L ⋅ iL (1.61)
d2 = 0
− d1
d1 ⋅ Ts ⋅ E
Nous remplaçons l’expression de d2 dans les équations d’état du courant iL et de la tension Vc
du hacheur parallèle. Le nouveau système est le suivant :
diL 2 ⋅ iL 0 Vc 0 d1 ⋅ Vc (1.63)
= 1 − + 0
dt 0 d1 ⋅ Ts E L
Dans nos travaux, nous nous sommes intéressés à l’étude du modèle d’ordre réduit et du
modèle corrigé d’ordre complet afin de traiter le cas de la conduction discontinue. Une
simulation de ces deux modèles sera présentée dans le dernier chapitre.
Un premier travail a été développé au laboratoire G2Elab (ancien Leg) dans cette
problématique (le Dea de F. Verdière [Ver03]). Il s’appuie sur l’environnement Gentiane
développé au sein du laboratoire. Ce dernier est particulièrement dédié à la simulation dans le
cadre de l'étude de la commande d'ensembles machine - convertisseur statique.
F. Verdière s’est principalement appuyé sur les deux modules suivants dans l’élaboration
de ses modèles [Ger98] :
Cela concerne non seulement des problèmes de maintenance mais aussi les limitations
intrinsèques liées à l’utilisation d’outils de calcul symbolique tels que Macsyma, Maple
[Maple], Mathematica [Math]. Les principales limites apparaissent pour des formulations
grosses en taille (problèmes liés au temps de calcul et à la consommation de mémoire vive).
VI. Conclusion
Dans ce chapitre, nous avons abordé le problème de la modélisation moyenne. En
premier lieu, nous avons présenté les différents modèles moyens existants et leur principe de
construction. Par la suite, nous nous sommes intéressés au traitement de la conduction
discontinue et les méthodes adoptées dans la littérature.
Un état de l’art nous a permis de positionner nos travaux par rapport aux outils existants, et
d’estimer les difficultés d’automatisation des modèles moyens.
tel-00434953, version 1 - 23 Nov 2009
Le but de cette thèse est d’apporter une aide à la génération automatique de modèles
moyens pour tous les types de convertisseurs électriques et d’aller plus loin en terme de
généricité, facilité d’utilisation et pérennité en s’affranchissant des limitations des méthodes
déjà proposées.
L’idée est de fournir une aide à la construction de modèles moyens de convertisseurs
statiques en vue de la simulation comportementale macroscopique de gros systèmes et ceci:
• de récupérer les modèles afin de les réutiliser pour faire de la simulation système, de la
commande, du dimensionnement…
• de coupler les modèles générés avec d’autres modèles de machine ;
• de traiter le cas de la conduction discontinue.
Nous désirons également que les modèles moyens générés soient codés dans différents
langages (C, VHDL-AMS [V-A], Modelica [Modelica], S-Function de Matlab/Simulink
[M/S]) et traités par la suite dans différents logiciels.
Afin de concevoir cet outil, nous avons développé toute une démarche de modélisation
de modèles moyens dans le cas de la conduction continue et discontinue. Cette démarche fera
l’objet du deuxième chapitre.
tel-00434953, version 1 - 23 Nov 2009
tel-00434953, version 1 - 23 Nov 2009
Chapitre 2
Démarche de modélisation
tel-00434953, version 1 - 23 Nov 2009
Chapitre 2
Démarche de modélisation
I. Introduction
Dans ce chapitre, nous proposons une méthodologie de modélisation des modèles
moyens que nous visons à automatiser par la suite.
Dans un premier temps, nous énonçons la démarche générale de modélisation par
application des modèles moyens. Nous illustrons les différentes étapes de construction d’un
modèle moyen ainsi que les méthodes mises en oeuvre.
Ensuite, nous présentons quelques spécificités de modélisation. Nous nous intéressons à
la description séparée et au couplage de modèles.
tel-00434953, version 1 - 23 Nov 2009
Nous définissons le mode de fonctionnement par un vecteur qui contient une liste de
booléens caractérisant l’état de chaque semi conducteur (0 pour l’état bloqué et 1 pour l’état
passant) dans l’ordre de leur apparition dans la NetList du circuit.
La commande d’indice i est un vecteur caractérisé par une fonction hi associée à chaque
cellule de commutation. Cette fonction a déjà été définie dans le chapitre1.
Le mode opératoire peut être déduit à partir de l’analyse d’une simulation temporelle du
convertisseur.
Afin de mieux expliquer ces définitions, nous avons pris comme exemple un hacheur
parallèle et nous nous sommes intéressés à l’étude de son mode de fonctionnement et de la
commande associée (cf. figure 2.1).
tel-00434953, version 1 - 23 Nov 2009
iL
Vc
Le hacheur contient deux semi conducteurs: un transistor (T1) et une diode (D1).
En conduction continue, deux configurations sont possibles (cf. figure 2.2).
x
x
Configuration n°:1 Configuration n°:2
0 T1 bloqué
• la première configuration est le vecteur ce qui signifie
1 D1 passante
1 T1 passant
• la deuxième configuration est le vecteur ce qui signifie
0 D1 bloquée
Chapitre 2. Démarche de modélisation - 38 -
configuration n° : 1
Mode =
configuration n° : 2
1 − h1
La commande du hacheur parallèle est donc le vecteur en considérant que
h1
h1 ∈ {0,1} (cf. figure 2.3).
tel-00434953, version 1 - 23 Nov 2009
h1
1-h1
Une fois que l’utilisateur a fourni ces différentes informations, nous pouvons procéder à la
construction des différents modèles moyens.
Structure du convertisseur
1. Données à fournir
par l’utilisateur
Extraction Analyse de
de fichier simulation
Entrées Mode
Fichier NetList &
Commande
Modèle Moyen
Généralisé 2.3 Calcul des modèles
• Construction du modèle exact
• Construction des différents modèles moyens
Sorties
Dans nos travaux, nous avons utilisé une approche formelle. En effet, la représentation
sous forme d’équations d’état s’avère intéressante surtout pour le couplage de modèles.
Chapitre 2. Démarche de modélisation - 40 -
Elle peut cependant s’avérer limitée par les performances intrinsèques des outils de
calcul formel (temps de traitement, consommation de mémoire vive).
Pour chaque configuration d’indice i du mode de fonctionnement du convertisseur statique,
l’équation d’état résultante s’écrit :
dx (2.64)
(t ) = Ai ⋅ x(t ) + B i ⋅u (t )
dt
Y (t ) = Ci ⋅ x(t ) + Di ⋅ u (t ) (2.65)
où :
• x(t ) est le vecteur d’état.
Les matrices ( Ai , Bi , Ci , Di ) sont calculées une fois que l’analyse topologique du circuit à
étudier est faite.
• Un graphe est un circuit qui est représenté comme un ensemble d’arêtes orientées
reliant un certain nombre de nœuds constituant un graphe.
Chapitre 2. Démarche de modélisation - 41 -
• Un arbre est un ensemble d’arêtes du graphe reliant tous les nœuds mais ne formant
pas de mailles.
• Une branche est une arête du graphe appartenant à l’arbre.
• Une maille est un ensemble d’arêtes du graphe formant une boucle.
• Une maille fondamentale est une maille du graphe ne contenant qu’un seul maillon de
l’arbre.
• Un maillon est une arête du graphe n’appartenant pas à l’arbre.
maillon maille
2 fondamentale
2 maille
2 2
II II IV
IV II IV II
V V IV V
V
1 3 1 3 1 3 1
tel-00434953, version 1 - 23 Nov 2009
3
I III III
III III
I I I
branche 4 4
4
4
a- circuit b- graphe c- arbre d- mailles
Ainsi connaissant la topologie d’un circuit électrique quelconque, il est possible d’en
exprimer la matrice d’incidence nœuds/branches puis de calculer la matrice d’incidence réduite
et enfin d’en déduire la matrice des mailles fondamentales B1 [Bor85].
Nous avons donc rapidement accès aux formulations matricielles des lois de Kirchhoff,
ainsi qu’aux relations liant les tensions et courants des branches aux tensions et courants des
maillons.
Nous avons choisi de représenter le court circuit par une colonne de zéro dans cette matrice
(cf. figure 2.6).
Branches
2
I II III IV V
II IV
V 1 -1 1 0 0 0
1 3
I III Noeuds
2 0 -1 0 1 1
3 0 0 1 -1 0
4
4 1 0 -1 0 -1
i j
j i
Dans le cas où le semi-conducteur (k) est à l’état bloqué, nous supprimons la colonne qui
lui est associée.
A l’issu de ces opérations, nous obtenons une nouvelle matrice d’incidence réduite. La
figure 2.7 illustre toutes les étapes de création de la matrice d’incidence réduite en prenant
comme exemple un hacheur parallèle.
1 0 0 -1 0 0 1
2 1 -1 0 0 0 -1
3 0 1 1 -1 1 0
3
tel-00434953, version 1 - 23 Nov 2009
4 -1 0 0 1 -1 0
[
Mode= D1 T1, D1 T1, D1 T1 ] Noter : court circuit = colonne de zéro
Matrice d’incidence
noeuds/branches
1 -1 0 0 1
Matrice d’incidence
2 0 1 -1 -1 réduite
3 1 -1 1 0
Nous avons utilisé un algorithme qui repose sur les principes de l’algorithme de Welsh afin
d’extraire les relations entre les tensions U et les courants I du circuit [Bor87, Raj87, Gau01].
L’algorithme de Welsh distingue les grandeurs de maillons et de branches.
• Vmc, Vmr, Vml, Vmj sont respectivement les vecteurs de tensions aux bornes des
capacités, des résistances, des inductances, et des sources de courant correspondant
aux maillons du graphe.
• Ve, Vbc, Vbr, Vbl sont respectivement les vecteurs de tensions aux bornes des sources de
tension, des capacités, des résistances, et des inductances correspondant aux branches
du graphe.
• Ibe, Ibc, Ibr, Ibl sont respectivement les vecteurs de courants dans les sources de tension,
les capacités, les résistances, et les inductances correspondant aux branches du graphe.
• Imc, Imr, Iml, Ij sont respectivement les vecteurs de courants dans les capacités, les
tel-00434953, version 1 - 23 Nov 2009
où :
• les si sont des sous-matrices de la matrice des mailles fondamentales B1 (donc
composées exclusivement de 0 et de 1).
A noter :
• s3 = 0 et s4 = 0 , c’est-à-dire que la tension aux bornes d’une capacité maillon est
uniquement en fonction des tensions d’alimentation et de la tension Vbc.
• s4T = 0 et s8T = 0 , c’est-à-dire que le courant Ibl est uniquement en fonction de Iml.
Le traitement est fait à partir d’un algorithme qui exploite des principes proposés par Welsh.
Cet algorithme permet de déduire la matrice des mailles fondamentales B1 à partir de la
matrice d’incidence réduite. Cette matrice B1 est déterminée une fois que nous avons défini
chaque arête par son nœud de départ et son nœud d’arrivée.
tel-00434953, version 1 - 23 Nov 2009
La matrice des mailles fondamentales B1 est définie comme étant la matrice de terme général
bi,j telle que :
- bi,j = 1 si l’arête j appartient à la maille fondamentale i et a la même orientation.
- bi,j = -1 si l’arête j appartient à la maille fondamentale i et a une orientation opposée.
- bi,j = 0 si l’arête j n’appartient pas à la maille fondamentale i.
Les étapes de construction de cette matrice sont expliquées dans la thèse de Bordry [Bor85].
A partir de la matrice B1, nous obtenons la matrice d’état réduite pour chaque configuration.
Pour exprimer la nature des différentes arêtes, nous disposons des relations suivantes :
Vbr = R1 ⋅ I br (2.68)
Vmr = R2 ⋅ I mr (2.69)
d (2.70)
I bc = C1 ⋅ Vbc
dt
d (2.71)
I m c = C2 ⋅ Vmc
dt
d d (2.72)
Vbl = L1 ⋅ I bl + M T ⋅ I ml
dt dt
d d (2.73)
Vml = L2 ⋅ I ml + M ⋅ I bl
dt dt
où :
• M = (mij) mutuelles entre les inductances de branches et de maillons.
• Les matrices R1 , R2 , C1 , C2 , L1 et L2 sont respectivement les matrices diagonales des
résistances de branche, des résistances de maillon, des capacités de branche, des
capacités de maillon, des inductances de branche et des inductances de maillon.
Chapitre 2. Démarche de modélisation - 46 -
Pour les autres grandeurs, nous avons la connaissance du fait qu’ils soient non alimentés ou
en court-circuit. Nous détaillerons cet aspect par un cas particulier dans le paragraphe qui suit.
Noeud inductif
Maille capacitive
Court circuit
Ainsi, dans le cas de la figure 2.8, l’algorithme de Welsh fournit une relation linéaire entre les
T
courants dans les inductances L1 et L2 (nœud inductif) au travers de s12 ainsi qu’entre les
tensions aux bornes des condensateurs C1, C2 et C3 (maille capacitive) au travers de s2 .
Chapitre 2. Démarche de modélisation - 47 -
La matrice d’incidence réduite est ainsi obtenue automatiquement sans les composants non
alimentés et en court-circuit (cf. tableau 2.1).
Composants
Noeuds
tel-00434953, version 1 - 23 Nov 2009
où :
Vbc (2.76)
x=
I ml
Ve (2.77)
u=
I j
Nous avons considéré que le terme E est nul, ce qui simplifie l’équation (2.75).
Chapitre 2. Démarche de modélisation - 48 -
Les matrices A et B sont exprimées sous la forme de matrices blocs, nous obtenons :
avec :
H1 = R2 − s7 ⋅ R1 ⋅ s7T (2.87)
H 2 = I + R1 ⋅ s7T ⋅ R2−1 ⋅ s7 avec : I une matrice identité (de dimension [Vbr,Vbr]) (2.88)
T1 = C1 + s2T ⋅ C2 ⋅ s2 (2.89)
T2 = L2 + s12 ⋅ L1 ⋅ s12
T (2.90)
Dans certains cas, ces matrices sont nulles et leur calcul s’obtient autrement. Ces différents cas
de figure sont présentés en détail en annexe A2.
La construction du modèle exact ainsi que des modèles moyens se fait en reconstituant le
vecteur complet des dérivées des tensions aux bornes des condensateurs du circuit et des
dérivées des courants dans les inductances du circuit.
Vbc
I
ml
Vmc
(2.92)
I bl
Xtotal =
I
Lnf
I Lcc
VCnf
V
Ccc
où :
• Vbc est le vecteur des tensions aux bornes des condensateurs de branche,
• VCcc est le vecteur des tensions aux bornes des condensateurs en court-circuit.
Chapitre 2. Démarche de modélisation - 50 -
Cette équation est obtenue en ajoutant dans les équations d’état réduites (2.78), les dérivées
temporelles suivantes :
dI Lnf (2.95)
=0
dt
• dérivées des tensions aux bornes des condensateurs non alimentés:
dVCnf (2.96)
=0
tel-00434953, version 1 - 23 Nov 2009
dt
Les composants non alimentés qui sont supprimés du circuit voient leur courant mis à zéro.
Ainsi, les dérivées du courant dans toute inductance et de la tension aux bornes de tout
condensateur non alimenté valent zéro également.
dVCnf dI Lnf
=0 ILnf=0 =0
dt dt
Les inductances en court-circuit sont définies par une dérivée de courant qui est nulle et les
condensateurs en court-circuit sont représentés par une tension nulle, et donc une dérivée de la
tension qui est nulle.
dVCcc dI Lcc
VCcc=0 =0 =0
dt dt
tel-00434953, version 1 - 23 Nov 2009
L’ajout de ILnf, ILcc, VCnf et VCcc correspond à l’ajout de lignes et de colonnes de zéro de
telle manière à ce que la matrice d’état ATotal soit une matrice carrée et correspond seulement
à l’ajout de lignes de zéro dans la matrice totale de commande BTotal pour avoir la même
dimension que le vecteur d’état Xtotal.
Remarque :
Les sources de tension en court-circuit ainsi que les sources de courant en circuit ouvert sont
représentatifs d’une erreur dans la description du circuit et dans notre cas du fonctionnement
du convertisseur.
L’ordre des grandeurs dans les vecteurs Xtotal et u peut changer pour chaque configuration.
Ainsi, il est important d’effectuer un traitement pour obtenir des vecteurs Xtotal et u ordonnés
de la même façon pour chaque configuration du convertisseur statique. Ceci se fait par une
permutation de lignes dans des colonnes des différents vecteurs et matrices ATotal et BTotal.
ne sont pas formulés par des schémas de circuit mais par des équations, par exemple un modèle
de machine électrique.
Nous présentons une approche causale permettant de modéliser les convertisseurs
statiques indépendamment de leur environnement.
Puis, nous proposons d’associer les modèles obtenus à d’autres modèles (par exemple,
une machine électrique), en utilisant des langages descriptifs non causals comme VHDL-AMS
[V-A] ou Modelica [Modelica] qui proposent une représentation structurée des modèles.
Une description causale dans un outil comme Simulink [M/S] est aussi envisagée.
Ce type d’approche est utilisé par exemple pour décrire les S-Fonctions de
Matlab/Simulink [M/S], les blocs dans Amesim [Ames]. Chaque bloc est connecté ensuite
avec les autres blocs du système en respectant la notion d’entrées/sorties.
Etant donné le fait que l'ordre de résolution des équations décrivant le convertisseur est
imposé et que ses entrées/sorties sont définies au préalable, le modèle est dit causal.
UDC IDC
IDC onduleur de tension
iAC monophasé vAC
Langage de modélisation
Compilation
tel-00434953, version 1 - 23 Nov 2009
? ?
Convertisseur statique
? Environnement
? ? Environnement ?
du composant Convertisseur statique
du composant
Environnement Environnement
du composant Convertisseur statique
du composant
Causalité affectée
Les graphes de liens caractérisent l’énergie dans tout domaine physique, par deux grandeurs :
l’effort ou le flux. En électricité, l’effort est la tension et le flux est le courant. Si un composant
impose l’effort à son environnement, ce dernier lui impose le flux et réciproquement si c’est
l’environnement qui impose l’effort au composant, ce dernier lui impose le flux (cf. figure
2.14).
Chapitre 2. Démarche de modélisation - 55 -
effort
Composant flux Environnement
flux
Composant effort Environnement
i
i
Convertisseur Convertisseur
V V statique
statique
i
i
Convertisseur Convertisseur
V V statique
C statique L
V Convertisseur V Convertisseur
C L
statique i statique
i
les courants dans les inductances et les tensions aux bornes des condensateurs.
Ainsi, nous nous ramenons en terme de connexion du convertisseur avec son
environnement, à des sources de courant pour les inductances et à des sources de tension pour
les condensateurs.
La causalité en courant et en tension est utilisée uniquement pour la modélisation de
convertisseur statique. En utilisant ensuite, le langage de modélisation acausal, le modèle
initial causal se retrouve transformé en un modèle acausal, ce qui offre la possibilité de sa
réutilisation dans différents contextes, et donc permet de modifier sa causalité. Les équations
pourront être écrites et donc résolues différemment.
Ys (t ) = Ci ⋅ x(t ) + Di ⋅ u (t ) (2.100)
Chapitre 2. Démarche de modélisation - 57 -
où :
C C12 (2.101)
C = 11
C21 C22
D D12 (2.102)
D = 11
D21 D22
Les vecteurs x et u sont déjà définis dans les équations (2.76) et (2.77).
Le vecteur Ys(t) est choisi de telle manière que nous puissions exprimer le courant traversant
une source de tension et la tension aux bornes d’une source de courant.
Ie (2.103)
Ys (t ) =
Vmj
où :
tel-00434953, version 1 - 23 Nov 2009
• Vmj représente le sous-vecteur des tensions aux bornes des sources de courant externes
s13
T
− s5T ⋅ H1−1 ⋅ s7 ⋅ R1 ⋅ s15T
− s1T ⋅ C2 ⋅ s2 ⋅ T1−1 ⋅ s14T (2.109)
D12 =
+ s1T ⋅ C2 ⋅ S 2 ⋅ T1−1 ⋅ s6T ⋅ H1−1 ⋅ s7 ⋅ R1 ⋅ s15
T
Nous avons aussi complété les calculs afin d’obtenir les différentes équations de sortie
notamment pour les vecteurs de tensions et de courant dans les résistances, les condensateurs
et les inductances.
Vmr I I V (2.112)
YVr (t ) = ; YIr (t ) = br ; Yx1 (t ) = bc ; Yx 2 (t ) = mc
Vbr I mr Vml I bl
• la tension reste constante sur une période de découpage (pour le hacheur série, parallèle
et à accumulation inductive) ;
Il est possible d’élaborer une démarche permettant de déterminer l’expression de cette durée.
D’abord, l’utilisateur doit fournir certaines informations permettant de nous renseigner sur le
fonctionnement du convertisseur pendant la conduction discontinue. Ensuite, nous formulons
les équations d’état pour chaque configuration en prenant soin d’ordonner et de reconstruire le
vecteur d’état global ainsi que les matrices d’état.
A partir de ces équations, nous déterminons l’expression de l’équation caractérisant la durée de
tel-00434953, version 1 - 23 Nov 2009
La figure 2.17 illustre les différentes étapes de calcul de la durée qui caractérise la phase de
conduction discontinue pour aboutir enfin au modèle moyen.
Données à fournir
Equation caractéristique de la
conduction discontinue
Construction du modèle
moyen
Dans ce qui suit, nous détaillons ces différentes étapes en reprenant l’exemple du hacheur
parallèle (cf. figure 2.18).
x x
x x
• le nom de la variable d’état qui s’annule pendant un intervalle de temps et qui sera
associée à un rapport cyclique ddisc permettant de caractériser la durée de la conduction
discontinue.
• l’intervalle de temps pendant lequel nous allons calculer la valeur crête du courant
dans l’inductance, dans notre cas ce sera le numéro de la configuration concernée.
Nous noterons ipk cette valeur crête du courant.
iL
ipk
0
d1 ⋅ Ts d 2 ⋅ Ts d disc ⋅ Ts ??
tel-00434953, version 1 - 23 Nov 2009
Ts
Le but est de trouver l’expression permettant de calculer d disc . Pour cela, comme nous l’avons
précisé de manière générale précédemment, la première étape consiste alors à calculer la
valeur crête du courant dans l’inductance ipk.
Le vecteur d’état x (dim [n]) est décomposé en:
• xr qui représente le vecteur des variables d’état rapides (dim [nr]) ; dans le cas du
hacheur parallèle xr = [iL]
• xl qui représente le vecteur des variables d’état lentes (dim [nl]) ; dans le cas du hacheur
parallèle xl = [Vc]
En supposant que la source E et le vecteur des variables d’état lentes xl restent constants sur
l’intervalle [0, d1 ⋅ Ts ], nous avons l’équation suivante pour une configuration entre 0 et
d1 ⋅ Ts :
dxr (2.113)
= Arr ⋅ xr + All ⋅ xl + Bi ⋅ E
dt
avec :
• All (dim [nl,nl]) ; Arr (dim [nr, nr])
Chapitre 2. Démarche de modélisation - 62 -
Si Arr est inversible, nous résolvons l’équation (2.114) et nous obtenons la solution suivante :
−1
(
xr (t ) = Arr [ All ⋅ xl + Bi ⋅ E ] ⋅ 1 − e Ar ⋅t
r
) avec xr (0) = 0 (2.114)
iL(t ) =
[ All ⋅ xl + Bi ⋅ E ]
Arr
⋅ 1 (
− e Arr ⋅t
) (2.115)
i pk = iL(d1 ⋅ Ts ) =
[ All ⋅ xl + Bi ⋅ E ]
Arr
⋅ 1 − (
e Arr ⋅d 1⋅Ts
) (2.116)
1 Ts 1 i pk i pk (2.119)
iL =∫ iL (t ) ⋅ dt = ⋅ d 1 ⋅ Ts + ⋅ d 2 ⋅ Ts
0
Ts 0 Ts 2 2
En final, nous obtenons :
i pk (2.120)
iL0
= ⋅ (d1 + d 2)
2
D’où :
2 ⋅ iL (2.121)
d2 = 0
− d1
i pk
Chapitre 2. Démarche de modélisation - 63 -
2 ⋅ iL (2.122)
d disc = 1 − 0
i pk
Enfin, pour obtenir le modèle d’ordre complet corrigé, nous remplaçons, dans les équations
d’état, d2 et ddisc par les nouvelles expressions calculées (2.121) et (2.122). Ainsi, nous
obtenons les équations du nouveau système d’état présenté dans le premier chapitre (1.62) et
(1.63).
diL (2.123)
=0
dt 0
Ensuite, nous déduisons l’expression de ddisc et nous la remplaçons dans l’équation de la
tension. Nous vérifions ainsi l’équation 1.59.
Remarque :
Dans le cas où nous avons plusieurs cellules, le calcul de ddisc devient plus complexe. Ceci ne
sera pas appréhendé dans nos travaux.
V.3 Algorithme
Nous présentons dans cette partie, l’algorithme que nous avons développé afin de traiter
le cas de la conduction discontinue de convertisseurs DC/DC. Cet algorithme est conçu d’une
manière générique (cf. figure 2.18).
D’abord, nous fournissons les données nécessaires pour notre traitement. Ensuite, nous
reconstruisons et ordonnançons le système d’équations différentielles globales du circuit ainsi
que le vecteur d’état. Le modèle exact est par la suite calculé avec la même démarche que pour
le cas de la conduction continue.
Nous extrayons la ligne associée à la variable d’état qui s’annule pendant un intervalle de
temps et nous calculons ainsi la valeur crête du courant dans l’inductance. Enfin, en fonction
du modèle choisi (modèle réduit ou modèle d’ordre complet corrigé), le rapport cyclique ddisc
est exprimé en fonction des autres variables et introduit dans les autres équations de courant et
de tension.
Chapitre 2. Démarche de modélisation - 64 -
Reconstruction et
ordonnancement du système
d’équations
différentielles globales
et du vecteur d’état
Calcul de la valeur
crête du courant
dans l’inductance ipk
Calcul de ddisc
tel-00434953, version 1 - 23 Nov 2009
VI. Conclusion
Dans ce chapitre, nous avons présenté dans un premier temps notre démarche de
modélisation et les différentes étapes de construction des modèles moyens. Nous avons
spécifié les connaissances pré-requises sur le convertisseur à étudier et énuméré les différentes
méthodes utilisées en commençant par l’analyse topologique du circuit jusqu’au calcul du
modèle exact et des modèles moyens.
La deuxième partie était dédiée à présenter quelques spécifications de modélisations. En
effet, nous avons étendu notre démarche de modélisation afin de pouvoir coupler les modèles
entre eux d’une part grâce aux développements des calculs dans la thèse de Bordry et d’autre
part afin de traiter le cas de la conduction discontinue. Ce traitement requiert la connaissance
de certaines informations sur les variables d’état qui s’annulent pendant un intervalle de temps.
Nous présenterons dans le chapitre suivant l’outil que nous avons développé et nous
expliquerons comment est faite l’implémentation de la démarche de modélisation des modèles
moyens et les langages de programmation utilisés.
tel-00434953, version 1 - 23 Nov 2009
tel-00434953, version 1 - 23 Nov 2009
Chapitre 3
Implémentation: Average
Model Generator (AMG)
tel-00434953, version 1 - 23 Nov 2009
Chapitre 3
Implémentation: Average Model Generator (AMG)
I. Introduction
La construction des modèles présentés dans les chapitres précédents requiert une bonne
connaissance du fonctionnement du convertisseur à étudier. Cette tâche est très répétitive et
devient rapidement laborieuse dés que la taille des applications augmente. Il s’avère alors
compliqué de calculer à la main les modèles moyens décrits dans le premier chapitre.
L’idée est d’automatiser complètement la démarche de création de ces modèles afin de
libérer le concepteur de cette tâche fastidieuse et de limiter les sources d’erreurs (cf. figure
tel-00434953, version 1 - 23 Nov 2009
dx
= A i x + B iu
dt
???
Outil informatique
dédié à la création
des modèles: AMG
Analyse
topologique du
convertisseur
à étudier 1
Outil
Extraction
des matrices AMG
(A,B,C,D) et des
vecteurs
d’état x 2
Calcul du
et de sortie y
modèle
exact et des
modèles
moyens 3
Projection de
modèles
sous différents
formats
4
Equations orientées
générées par AMG
Figure 3. 4: modèle classique grands signaux écrit dans une S-Function pour un hacheur
parallèle
tel-00434953, version 1 - 23 Nov 2009
II.2.2.1 VHDL-AMS
Le langage VHDL-AMS permet de décrire des modèles multi-abstractions, multi-
disciplines, hiérarchiques à temps continu et à événements discrets dans des librairies externes.
Il permet de gérer aussi bien en numérique qu’en analogique les abstractions
comportementales (la fonction) et structurelles (la NetList de modèles). Les modèles
analogiques sont exprimés sous forme d’équations différentielles ordinaires (par rapport au
temps). Nous pouvons exprimer des transformés de Laplace et en Z.
L’avantage de ce langage est le fait qu’il soit d’une très bonne lisibilité, il permet une
haute modularité avec un typage fort (chaque objet doit être défini par un type) et supporte la
généricité (le fait de pouvoir exprimer un modèle avec des paramètres qui ne seront connus
qu’au moment de l’utilisation effective) [Her02].
Cependant, vu que c’est un langage puissant et général, donc complexe, les constructions
possibles sont nombreuses et les premiers pas sont assez difficiles. Il possède des limitations
intrinsèques assez contraignantes et est un peu bâclé sur certains points (les méthodes
d’entrées/sorties).
Chapitre 3. Implémentation : Average Model Generator (AMG) - 69 -
II.2.2.2 Modelica
Modelica est un langage orienté objet qui permet la modélisation non causale
essentiellement pour les modèles mécatroniques dans le domaine de la robotique, de
l’automobile, de l’aérospatiale et des réseaux électriques depuis peu.
Les modèles en Modelica peuvent être décrits par des équations différentielles,
algébriques et discrètes.
Ce langage permet également la simulation de dispositifs multi-physiques. L’outil de
modélisation permet l’édition des modèles élémentaires par le biais d’un langage de
description.
Passage
Modèle orienté
Compilation
Modèle programmé
Simulation
tel-00434953, version 1 - 23 Nov 2009
Amesim
Scilab/Scicos
Dymola
Description topologique
Entrées
Description du convertisseur
1
Description fonctionnelle
Outil AMG
Modelica
Sorties
Format Texte
Formalisme orienté
S-Function Matlab/Simulink
Générateur de modèles
AMG
Entrées Sorties
Implémentation logicielle
Les entrées
PSPICE
Fichier NetList Mode opératoire Commande
Librairie de
composants spécifiques
Le mode et la commande sont fournis dans un fichier texte comme le montre la figure 3.10.
iL1(A)
2
h1
1
T1 T1
ON OFF
t(s)
tel-00434953, version 1 - 23 Nov 2009
amg_VectCommande:=Vector([(1-h1,h1)]); Commande
Nous avons alors développé une librairie de composants dédiée à notre générateur, que nous
avons appelé « meige.slb ».
Cette librairie permet d’ajouter certaines informations comme le nom des commandes des
interrupteurs. L’utilisation des composants de cette librairie garantit leur reconnaissance lors de
la lecture de la NetList par notre générateur.
Les composants que nous avons définis dans cette librairie sont présentés sur la figure 3.11.
Transistor
Inductance Source de tension
tel-00434953, version 1 - 23 Nov 2009
Bidirectionnel
Inductance Source de courant liée
mutuelle
Fonction MOS
Source de tension
liée
Transistor-diode
série
Bidirectionnel
bicommandable
La NetList pourrait aussi être fournie par tout autre logiciel de simulation de circuits apte à
créer une NetList PSpice avec la bibliothèque de composants souhaités.
Dans nos travaux, nous utilisons le logiciel PSpice étant donné que des parseurs de NetList
PSpice existent déjà au sein de notre laboratoire.
Chapitre 3. Implémentation : Average Model Generator (AMG) - 75 -
* Schematics Netlist *
1 2 4
T_T1 $N_0003 $N_0002 h
Nous allons décrire, dans ce qui suit, comment nous avons structuré les données des
convertisseurs en vue de leur modélisation.
• Les composants
La première information nécessaire concerne les constituants. En effet, il est impératif
que la représentation adoptée décrive la liste complète des composants qui constituent le
circuit. De plus, chaque composant devra pouvoir être caractérisé d’un point de vue
fonctionnel.
Afin de simplifier l’analyse du circuit, les composants sont représentés sous forme de
dipôles. Ceci implique notamment que les coupleurs parfaits soient considérés comme deux
composants et non un seul (avec cependant un lien entre les deux).
Par contre, comme le montre la figure 3.13, tous les composants auront en commun un attribut
précisant
leur dénomination,
leur valeur,
leurs nœuds d’entrée et de sortie.
-Dénomination -Dénomination
-Valeur -Valeur
attributs - Nœud d’entrée attributs - Nœud d’entrée
- Nœud de sortie - Nœud de sortie
méthodes méthodes
Figure 3. 13: représentation orientée objet pour une résistance et une source de tension
Seules exceptions à la règle : les inductances couplées et les coupleurs parfaits. De par
leur nature, les premières sont représentées par un objet du même type que celui des
inductances simples, mais possédant en plus comme attributs spécifiques des références aux
inductances avec lesquelles elles sont couplées (cf. figure 3.14).
Il en va de même pour les coupleurs parfaits qui sont représentés par leurs bobinages
primaire et secondaire, chacun d’entre eux ayant pour attribut une référence à l’autre.
Chapitre 3. Implémentation : Average Model Generator (AMG) - 77 -
Insistons ici sur le fait que ces objets doivent être définis par paires pour avoir une description
cohérente du composant d’origine.
- Dénomination - Dénomination
- Nœud d’entrée - Nœud d’entrée
- Nœud de sortie - Nœud de sortie
-autres inductances couplées -2ème enroulement
Figure 3. 14: représentation orientée objet pour des inductances couplées et des coupleurs
parfaits
tel-00434953, version 1 - 23 Nov 2009
• Semi-conducteurs
Nous gardons les mêmes attributs que ceux des composants passifs, sauf que nous
ajoutons la commande associée au semi-conducteur (cf. figure 3.15).
-Commande
- Nœud d’entrée
attributs - Nœud de sortie
méthodes
• Le convertisseur
Les différents éléments du circuit étant précisés, il reste maintenant à spécifier la manière
dont ils sont connectés entre eux afin d’avoir une représentation complète du circuit sous
forme de graphe. C’est la représentation par les nœuds qui va donner cette dernière
information.
Chaque nœud du circuit est donc représenté sous la forme d’un objet référençant ses
composants entrants et ses composants sortants, de telle sorte que l’orientation de ceux-ci soit
conservée.
Chapitre 3. Implémentation : Average Model Generator (AMG) - 78 -
De la même manière, afin que le graphe correspondant au circuit puisse être parcouru en
passant d’un nœud à un composant, puis de ce composant au nœud suivant, chaque composant
fera référence à son nœud d’entrée et à son nœud de sortie.
Le diagramme UML de la figure 3.16 montre les différentes relations qui existent entre
les objets définissant un convertisseur.
Notons que l’objet « composant » qui y est représenté fait état d’un type générique dont
tous les composants cités plus haut héritent.
1.* 1.*
Composant
tel-00434953, version 1 - 23 Nov 2009
1.*
Dénomination
Convertisseur
entrants sortants
1.* Noeud
Identifiant
Ce digramme montre qu’un convertisseur est entièrement défini par la liste de ses composants
et la manière dont ils sont agencés entre eux.
L’idée de représentation de cet agencement sous la forme d’un graphe se vérifie par les liens
unissant les différents composants aux nœuds du circuit. La bidirectionnalité de ces liens
permet en outre de parcourir le graphe en passant d’un composant à un nœud, puis de ce nœud
vers un autre composant et ainsi de suite.
Nous allons décrire, dans ce qui suit, le cœur de l’outil AMG.
Chapitre 3. Implémentation : Average Model Generator (AMG) - 79 -
OpenMaple est pilotable via des API (Application Programme Interface) Java. C’est une
des raisons importantes de notre choix, car à long terme, cela offre la possibilité de passer outre
Maple en remplaçant les traitements formels faits actuellement par ce logiciel par des calculs
implémentés en Java (cf. figure 3.17).
Récupération du résultat
issu de Maple
Fichier
Parser
de
Java résultats
4- Calcul des matrices de l’équation d’état par une élimination systématique des variables
qui ne sont pas retenues comme variables d’état.
5- Calcul du modèle exact et des modèles moyens
Dans le schéma de la figure 3.18, nous présentons les différentes étapes de modélisation
implémentées dans l’outil AMG.
Lois de Kirchoff
tel-00434953, version 1 - 23 Nov 2009
Mode
&
Commande Composants de Composants non Récupération séparée
maillons alimentés et des matrices
et de branches en court-circuit de S1 à S16
Réorganisation et calcul des matrices des équations d’état et des équations de sortie
(ATotal,BTotal,CTotal,DTotal) et des vecteurs d’état Xtotal et de sortie Ytotal
Le « parseur » utilise une syntaxe en lien avec les fichiers à parser. Dans notre cas, notre
« parseur » lit les données de la NetList caractère par caractère en s’appuyant sur la
structuration objet des données pour créer des objets représentant le convertisseur statique (cf.
figure 3.19).
NetList de description
du convertisseur Objets représentant
Parseur le convertisseur
statique
statique
Syntaxe Lexique
Le processus d’obtention de la matrice d’incidence réduite est présenté sur la figure 3.20.
Chapitre 3. Implémentation : Average Model Generator (AMG) - 82 -
NetList
Parseur
Structuration objet
Extraction de la matrice
d’incidence complète
Pour chaque
tel-00434953, version 1 - 23 Nov 2009
configuration
Extraction de la matrice
d’incidence réduite
Les colonnes des matrices d’incidence réduites sont ordonnées de la même façon en respectant
notamment l’ordre fourni par la figure 3.21.
1 Source de tension
(E)
2 Condensateur
(C)
3 Résistance
(R)
4 Inductance
(L)
5 Source de courant
(J)
Notons que :
- Vm, Vb, Vnf et Vcc sont des vecteurs de chaîne de caractères.
- Si est un tableau d’entiers
Nous trouvons dans les tableaux de la figure 3.23 un récapitulatif des résultats de calcul
obtenus automatiquement pour le hacheur parallèle de la figure 3.22 pour les deux
configurations.
Chapitre 3. Implémentation : Average Model Generator (AMG) - 84 -
R E 0 .0 − 1 .0 0 1 1 1
L C − 1.0 − 1.0
R E 0. 0 − 1. 0 0 1 1 0
C
L − 1.0 0.0
Figure 3. 23: résultats de calculs pour un hacheur parallèle (pour la configuration n°1 et
n°2)
tel-00434953, version 1 - 23 Nov 2009
M M 12 (3.117)
M = 11
M
21 M 22
avec :
M 11 = −T1−1 ⋅ s6 (3.118)
Les expressions de chaque sous-bloc sont écrites dans l’outil AMG en Java sous forme de
lignes de commandes Maple (en chaîne de caractères) comme le montre la figure 3.24 pour le
sous-bloc M11.
Figure 3. 24: expression du sous bloc M11 écrite en chaîne de caractère dans Java
Pour chaque sous bloc, nous faisons les opérations suivantes (cf. figure 3.25):
Chapitre 3. Implémentation : Average Model Generator (AMG) - 85 -
En Maple
En Java
Construction de la ligne
de commande Maple Lancement de la commande Exécution de la commande
permettant de calculer dans Maple Maple
l’expression de M11
Récupération
du résultat de Maple à partir Via un “Parser” Ecriture du résultat dans
du fichier tampon un fichier tampon
sous forme d’un objet
Transformation de l’objet
résultant en un bloc matriciel
de chaîne de caractères
tel-00434953, version 1 - 23 Nov 2009
Ajout du sous-bloc
dans la matrice globale M
à construire
Cet algorithme est utilisé pour calculer les vecteurs et les matrices d’état du convertisseur
statique de chaque configuration.
Dans la partie programmée en Java, nous n’avons manipulé que des chaînes de caractères.
Ainsi, nous avons dû transformer les matrices et les tableaux d’entiers obtenus lors de la mise
en équation topologique du circuit, en matrices de chaîne de caractères.
Dans le cas du hacheur parallèle, nous obtenons le résultat de la figure 3.26. Pour chaque ligne
de ce fichier, une itération du processus de la figure 3.25 a été exécutée.
//Configuration n°1
amg_x:=matrix([[VC1],[iL1]]);
amg_Xtotal:=matrix([[VC1],[iL1]]);
gm_matrice_d_etat_a[1]:=matrix([[-1/C1/R1,1/C1],[-1/L1,0]]);
gm_matrice_d_etat_b[1]:=matrix([[0],[1/L1]]);
gm_matrice_d_etat_ATotal[1]:=matrix([[-1/C1/R1,1/C1],[-1/L1,0]]);
gm_matrice_d_etat_BTotal[1]:=matrix([[0],[1/L1]]);
//Configuration n°2
amg_x:=matrix([[VC1],[iL1]]);
tel-00434953, version 1 - 23 Nov 2009
amg_Xtotal:=matrix([[VC1],[iL1]]);
gm_matrice_d_etat_a[2]:=matrix([[-1/C1/R1,0],[0,0]]);
gm_matrice_d_etat_b[2]:=matrix([[0],[1/L1]]);
gm_matrice_d_etat_ATotal[2]:=matrix([[-1/C1/R1,0],[0,0]]);
gm_matrice_d_etat_BTotal[2]:=matrix([[0],[1/L1]]);
Remarque :
Dans certains cas de figures (composants non alimentés ou en court-circuit), nous
devons faire des manipulations matricielles afin de réorganiser et compléter le vecteur d’état
et les matrices d’état.
Notre démarche de modélisation dans Java prend en compte ces différentes situations et
permet de reconstruire le système différentiel global représentant chaque configuration du
convertisseur statique.
Chapitre 3. Implémentation : Average Model Generator (AMG) - 87 -
Dans le cas particulier de la conduction discontinue, nous obtenons le résultat de la figure 3.27.
Dans ce fichier le vecteur d’état x ainsi que les matrices A et B ont été reconstruits.
gm_matrice_d_etat_a[3]:=matrix([[-1/C1/R1]]);
gm_matrice_d_etat_ATotal[3]:=matrix([[-1/C1/R1,0],[0,0]]); Reconstruction de la matrice A totale
gm_matrice_d_etat_b[3]:=matrix([[0]]);
Reconstruction de la matrice B totale
gm_matrice_d_etat_BTotal[3]:=matrix([[0],[0]]);
En Maple
En Java
« modélisation_i.mpl »
Modélisation
Lancement du fichier et projection
Choix du modèle i
des modèles
Exploite le fichier
contenant les
différentes matrices
tel-00434953, version 1 - 23 Nov 2009
« matricesEtat.txt»
En Maple
En Java
« modélisation_i.mpl »
Lancement
Choix du modèle i
du fichier Modélisation
et projection
« matricesEtat.txt» « donnees_CD.txt »
Fichier résultats
Projection
en
S-Function
Matlab/Simulink
tel-00434953, version 1 - 23 Nov 2009
Format
texte Projection
en
Modelica
Projection
en
VHDL-AMS
Si nous envisageons de coupler les modèles, nous pouvons procéder de plusieurs manières:
- soit en utilisant les fonctionnalités de l’outil de simulation pour connecter les
composants ;
- soit en ajoutant les équations de la machine dans le modèle initial ;
- soit en instanciant le modèle via le langage VHDL-AMS ou Modelica, c'est-à-dire en
utilisant ce langage pour décrire les connexions entre les différents composants
modélisés.
Notons que :
La projection des modèles est faite directement dans la suite de la création des modèles. Il n’y
a pas de formalisme intermédiaire de stockage des modèles avant la projection de ceux-ci.
Chapitre 3. Implémentation : Average Model Generator (AMG) - 90 -
La figure 3.31 résume les différentes étapes de modélisation dans l’outil AMG.
Description fonctionnelle
Description topologique
Analyse de la simulation
(Portunus)
Fichier Mode
NetList &
(PSpice) commande
tel-00434953, version 1 - 23 Nov 2009
Projection dans
Amesim Format
Modelica Modèles
Projection automatique moyens
Simplorer
Format
VHDL-AMS
Portunus
III. Conclusion
Dans ce chapitre, nous avons illustré le processus de création de modèles dans AMG et
décrit le corps de notre outil en définissant ses entrées, ses différentes étapes d’implémentation
logicielle et enfin ses sorties en prenant comme exemple de convertisseur un hacheur parallèle.
Nous verrons dans le dernier chapitre, à travers plusieurs applications, l’intégration des
différents fichiers générés par AMG dans différents logiciels de simulation comme
Matlab/Simulink et Portunus afin d’exploiter les résultats obtenus pour le cas de la conduction
continue et discontinue.
tel-00434953, version 1 - 23 Nov 2009
Chapitre 4
Applications
tel-00434953, version 1 - 23 Nov 2009
Chapitre 4
Applications
I. Introduction
La démarche de modélisation proposée a été appliquée à plusieurs types de
convertisseurs. Dans ce chapitre, nous présentons l’ensemble des résultats obtenus avec l’outil
AMG ainsi que les résultats de simulation exploitant les modèles générés dans
Matlab/Simulink, Portunus (modèles en VHDL-AMS) et Amesim (modèles en Modelica).
Dans un premier temps, nous illustrons les étapes de modélisation pour un
convertisseur à résonance en utilisant AMG.
Ensuite, nous présentons les différents résultats de simulation d’un onduleur triphasé
tel-00434953, version 1 - 23 Nov 2009
DC
AC DC
IL1 VC2
VC1
NetList
h1 h2
h1
h2
1− hi
Notons: hi =
2
tel-00434953, version 1 - 23 Nov 2009
Le principe de la commande en pleine onde déjà expliquée (cf. chapitre1 § III.3.2) est
appliqué. Les fonctions de commutations h1 et h2 sont représentées sur la figure 4.4.
Les signaux sont périodiques et caractérisés par un rapport cyclique égal à 0.5 et un angle de
déphasage delta δ variable entre les créneaux de h1 et h2.
Le mode et la commande sont déduits une fois que nous avons effectué une simulation
classique de la structure à étudier dans un logiciel de simulation comme par exemple Portunus
(cf. chapitre3 § III.3.1.1).
Chapitre 4. Applications - 94 -
Enfin, ils sont transcrits par l’utilisateur dans un fichier format texte (ASCII) (cf. figure 4.5).
Mos1 ON & Mos2 OFF & Mos5 OFF & Mos6 ON & Mos4 OFF & Mos3 ON & Mos7 OFF & Mos8 ON
configuration1:=Vector([1,0,0,1,0,1,0,1]);
Mos1 OFF & Mos2 ON & Mos5 OFF & Mos6 ON & Mos4 OFF & Mos3 ON & Mos7 ON & Mos8 OFF
configuration2:=Vector([0,1,0,1,0,1,1,0]);
Mos1 OFF & Mos2 ON & Mos5 ON & Mos6 OFF & Mos4 ON & Mos3 OFF & Mos7 ON & Mos8 OFF
configuration3:=Vector([0,1,1,0,1,0,1,0]);
Mos1 ON & Mos2 OFF& Mos5 ON & Mos6 OFF & Mos4 ON & Mos3 OFF & Mos7 OFF & Mos8 ON
configuration4:=Vector([1,0,1,0,1,0,0,1]);
mode:=Vector([configuration1,configuration2,configuration3, configuration4]);
amg_VectCommande:=Vector([(h1+1)/2*(h2+1)/2,(1-h1)/2*(1+h2)/2,(1-h1)/2*(1-h2)/2,(1+h1)/2*(1-h2)/2]);
En ce qui concerne l’étude du convertisseur à résonance, nous avons fait la séparation entre :
• les variables rapides :
- la tension VC1 aux bornes du condensateur C1 ;
- le courant iL1 dans l’inductance L1.
• la variable lente :
- la tension VC2 aux bornes du condensateur C2.
Le G.M.E fournit l’équation d’état de la variable supposée lente VC2 (cf. figure 4.6).
Chapitre 4. Applications - 95 -
.....................
VC2_constante'dot==
………..
Re_iL1'dot==
-0.1e1 / 0.3141592654e1 * (re_VC1 * 0.3141592654e1 + R2 * re_iL1 * 0.3141592654e1
- w * L1 * im_iL1 * 0.3141592654e1 - 0.2e1 * VC2_constante * sin(delta)) / L1;
Im_iL1'dot==
-0.1e1 / 0.3141592654e1 * (im_VC1 * 0.3141592654e1 + R2 * im_iL1 * 0.3141592654e1
+ w * L1 * re_iL1 * 0.3141592654e1 - 0.2e1 * VC2_constante * cos(delta) + 0.2e1 * U1_constante) / L1;
Crete_iL1==2.0*sqrt(Re_iL1*Re_iL1+Im_iL1*Im_iL1);
Figure 4. 7: M.M.G généré par AMG pour le courant iL1 en format VHDL-AMS
Chapitre 4. Applications - 96 -
model ondcc_MMG
external connector InputReal = input Real;
parameter Real R1(fixed=false)=0.5 ;
parameter Real R2(fixed=false)=0.5 ;
………………
Real Re_VC1;
Real Im_VC1;
Real Crete_VC1;
Real VC1_reconstitue;
equation
Crete_VC1=2.0*sqrt(Re_VC1*Re_VC1+Im_VC1*Im_VC1);
Figure 4. 8: M.M.G généré par AMG pour la tension VC1 en format Modelica
tel-00434953, version 1 - 23 Nov 2009
h1 h2
Simulation classique de type circuit
h1 h2
h1 h2
Définition des commandes
Figure 4. 9: comparaison dans Portunus entre une simulation classique de type circuit et une
simulation du modèle exact (en VHDL-AMS ) du convertisseur à résonance
Chapitre 4. Applications - 97 -
t (s)
Figure 4. 10: résultat de simulation de la tension VC2 issue du modèle exact (généré par
AMG) et celle issue du modèle circuit (simulation classique Portunus) pour un angle de
déphasage (δ=π/4)
t (s)
Figure 4. 11: résultat de simulation du courant iL1 issu du modèle exact (généré par AMG) et
celui issu du modèle circuit (simulation classique dans Portunus) pour un angle de déphasage
(δ=π/4)
Chapitre 4. Applications - 98 -
D’après les figures 4.10 et 4.11, nous remarquons que les résultats issus du générateur AMG
sont identiques à ceux obtenus par une simulation classique de type circuit.
Néanmoins, nous observons une petite différence au niveau de l’amplitude. Elle est due à la
représentation dans Portunus des semi conducteurs. En effet, ils sont représentés dans ce
logiciel par une faible résistance et une chute de tension à l’état passant et avec une résistance
élevée à l’état bloqué. Or, dans notre modélisation exacte et moyenne, ils sont décrits par une
résistance infinie à l’état bloqué et nulle à l’état passant.
Nous créons dans Matlab une S-Function contenant le modèle généré de notre convertisseur
statique. Pour ceci, nous récupérons les équations écrites en C obtenues automatiquement par
AMG et nous ajoutons ces équations dans la S-Function.
tel-00434953, version 1 - 23 Nov 2009
Notons que :
La création des S-function est en cours d’automatisation.
Modèle Exact
Figure 4. 12: simulation des modèles générés par AMG du convertisseur à résonance dans
Matlab/Simulink
Chapitre 4. Applications - 99 -
Enveloppe de IL1
tel-00434953, version 1 - 23 Nov 2009
Modèle exact
Courant IL1(A)
Modèle exact
Temps (sec)
t (s)
Figure 4. 13: extraction de l’amplitude du courant IL1 à partir du M.M.G pour deux
différents angles de déphasage en delta
D’après la figure 4.13, nous remarquons que l’enveloppe du courant résonant IL1 met en
évidence la bonne concordance entre notre modèle généré automatiquement et le modèle réel.
Une fois le signal du courant IL1 reconstruit, il est comparé au modèle exact d’origine (cf.
figure 4.14).
Chapitre 4. Applications - 100 -
Figure 4. 14: comparaison entre le courant IL1 reconstruit à partir de M.M.G et le modèle
tel-00434953, version 1 - 23 Nov 2009
D’après la figure 4.14, le modèle du courant IL1 reconstruit colle parfaitement au modèle
exact.
Pour les variables continues, nous appliquons le modèle moyen classique grands signaux.
Figure 4. 15: modèle exact, G.M.E et modèle moyen classique de la tension VC2 pour un
angle de déphasage delta (δ=π/4)
Chapitre 4. Applications - 101 -
D’après la figure 4.15, nous remarquons que le générateur moyen équivalent manque
de précision. Ceci est prévisible, étant donné le fait que ce n’est pas le modèle le plus adapté
vu qu’il supprime certaines dynamiques du système.
Par contre, nous observons que le modèle moyen classique grands signaux moyenne
bien le modèle exact.
IL1
IL2
E
IL3
h1 h2 h3
IL1
IL2
E
IL3
h1 h2 h3
Pour cette structure, nous avons appliqué la commande en pleine onde ainsi que la
MLI intersective.
Pour la commande en pleine onde, les signaux sont périodiques et caractérisés par un
2π
rapport cyclique égal à 0.5 et un angle de déphasage δ entre h1, h2 et h3 égal à .
3
Pour la commande MLI intersective, elle est caractérisée par une porteuse triangulaire
2π
à haute fréquence et trois modulantes déphasées de .
3
format C.
Figure 4. 19: le modèle exact des variables d’état (IL1, IL2 et IL3) généré par AMG en C
tel-00434953, version 1 - 23 Nov 2009
Modèle généré
Figure 4. 20: modèle exact généré sous Matlab/Simulink pour une commande MLI
intersective
Chapitre 4. Applications - 104 -
Nous procédons maintenant à la simulation du modèle moyen généralisé du courant IL1 (cf.
figure 4.21).
tel-00434953, version 1 - 23 Nov 2009
Modèle exact
t (s)
IL1 à partir du modèle exact
Courant dans l’inductance IL1 (A)
IL1 reconstitué
t (s)
En utilisant AMG, les différents modèles obtenus que ce soit dans Portunus ou dans
Matlab/Simulink sont identiques.
Chapitre 4. Applications - 105 -
Sources de courant
h1 h2 h3
h1 h2 h3
80
I1 I2 I3
tel-00434953, version 1 - 23 Nov 2009
60
40
Modèle global
20
-20
-40
-60
-80
0.11 0.115 0.12 0.125 0.13 0.135 0.14 0.145
Les résultats obtenus sur les figures 4.23 et 4.24 sont identiques. Ainsi, il est possible dans
AMG de faire une description séparée des modèles en vue de les coupler par la suite.
Boites en
VHDL-AMS
tel-00434953, version 1 - 23 Nov 2009
Figure 4. 25: implémentation dans Portunus de l’onduleur couplé à une machine synchrone
Les résultats obtenus sont en format VHDL-AMS et en Modelica. Sur les figures 4.26 et 4.27
nous présentons les résultats en VHDL-AMS. Les autres résultats sont présentés en annexe E.
Chapitre 4. Applications - 108 -
Les résultats des modèles (cf. figure 4.26 et figure 4.27) générés automatiquement par AMG
sont identiques aux résultats présentés dans l’état de l’art sur le traitement de la conduction
discontinue (cf. chapitre 1 § IV.1).
Dans Portunus, nous avons comparé le résultat obtenu par une simulation classique de type
circuit avec le modèle d’ordre complet corrigé généré automatiquement par AMG.
Chapitre 4. Applications - 109 -
Simulation circuit
VC1 (V)
IL1 (A)
t(s)
t(s)
tel-00434953, version 1 - 23 Nov 2009
IL1 (A)
5u
5
40 u t(s)
20
VC1 (V)
Ts =10 us
t(s)
Boite en VHDL-AMS
t (s)
Figure 4. 28: comparaison entre une simulation classique de type circuit du hacheur
parallèle et le modèle d’ordre complet corrigé de la tension VC1 en VHDL-AMS généré par
AMG pendant la conduction discontinue
Pour cette simulation, nous avons pris les valeurs numériques que J. Sun [Sun01] avait utilisé
afin de valider le modèle corrigé d’ordre complet.
Chapitre 4. Applications - 110 -
La figure 4.28 montre que le modèle généré automatiquement par AMG (le modèle corrigé
d’ordre complet) est identique au modèle issu de la simulation circuit (Portunus).
h4
h3
h2
h1
iL1
Vs
VC3 VC2 VC1 h1
h2
h3
h4
Nous avons modélisé cette structure dans Portunus et dans AMG. Nous avons ensuite
comparé les résultats, notamment le modèle exact généré en VHDL-AMS.
Chapitre 4. Applications - 111 -
Figure 4. 30: comparaison entre le modèle réel issu de la simulation classique du type circuit
avec le modèle exact codé en VHDL-AMS issu de AMG
Chapitre 4. Applications - 112 -
Les lois de commande (h1, h2, h3, h4) sont celles d’une MLI intersective. Chaque
cellule de commutation est commandée à partir de la même modulante sinusoïdale, mais leur
π
porteuse triangulaire est déphasée de par rapport à la porteuse utilisée pour la cellule dans
2
laquelle elle est directement imbriquée.
t (s)
t(s)
Figure 4. 31: résultats de simulation du modèle exact issu de AMG pour le convertisseur
multi-cellulaire monophasé
Chapitre 4. Applications - 113 -
tel-00434953, version 1 - 23 Nov 2009
Figure 4. 32: comparaison entre le courant IL1 issu du modèle exact par AMG et le modèle
réel issu de Portunus
Nous avons comparé le courant IL1 obtenu grâce au modèle exact (généré par AMG) à celui
issu d’une simulation classique (dans Portunus) et nous remarquons que les deux modèles
sont identiques (cf. figure 4.32), cela valide notre approche sur un exemple de structure
compliquée.
Bras 2 Bras 3
Bras 1
tel-00434953, version 1 - 23 Nov 2009
t (s)
Figure 4. 34: modèle exact généré par AMG pour les courants IL1, IL2 et IL3
Chapitre 4. Applications - 115 -
Ainsi, nous pouvons dire que la génération automatique de modèles dans AMG offre
plusieurs avantages. En effet, AMG permet la diminution du risque d’erreurs lors de la
construction des modèles surtout pour des structures complexes où nous nous retrouvons avec
des équations simplifiées (cas du convertisseur multi-cellulaire). Il offre également la
possibilité d’une réutilisation facile des modèles obtenus, notamment grâce aux langages
Modelica et VHDL-AMS. Nous avons donc une génération automatique sous plusieurs
formats standards d’où la possibilité de les simuler dans plusieurs logiciels (annexe E : pour
les résultats en format Modelica).
Enfin, nous avons pu également traiter certains cas d’applications à la fois en conduction
discontinue et en conduction continue.
VI. Conclusion
tel-00434953, version 1 - 23 Nov 2009
Dans ce chapitre, nous avons, dans un premier temps, illustré par l’exemple du
convertisseur à résonance, le processus d’obtention automatique de modèle exact ou moyen
dans AMG.
Dans une seconde partie, nous avons illustré les capacités de l’outil AMG en
présentant les différents résultats de simulation de diverses applications traitées dans le but de
réaliser du couplage de modèle et de traiter la conduction discontinue.
La dernière partie a été consacrée à mettre en évidence l’intérêt de la génération
automatique de modèles pour des structures compliquées comme le convertisseur multi-
cellulaire.
Enfin, nous avons pu voir les avantages de la génération automatique des modèles
dans plusieurs formats ainsi que la possibilité de les simuler dans plusieurs logiciels.
Néanmoins, cet outil présente certaines limitations étant donné le fait que nous traitons
actuellement que certains convertisseurs DC/DC en conduction discontinue.
De plus, nous pouvons être confrontés à des difficultés liées à la détermination du mode de
fonctionnement du convertisseur à étudier. En effet, pour des structures complexes, la
connaissance et le recensement des différentes configurations liées au mode peuvent être
délicates. C’est une contrainte forte de la modélisation moyenne.
tel-00434953, version 1 - 23 Nov 2009
tel-00434953, version 1 - 23 Nov 2009
Conclusions et perspectives
tel-00434953, version 1 - 23 Nov 2009
Conclusions et perspectives
Dans le cadre de cette thèse, dans le premier chapitre, nous avons présenté les
caractéristiques de modélisation à topologie variable et énoncé les hypothèses de modélisation
considérées. Nous avons également présenté un état de l’art des différents modèles moyens
existants et nous avons pu mettre en avant les difficultés associées à la modélisation moyenne.
Nous avons pu constater alors que le calcul (la mise en œuvre) des différents modèles peut
parfois s’avérer être source d’erreurs et peut être une tâche fastidieuse pour le concepteur du
modèle. Ainsi, nous avons proposé d’automatiser entièrement cette démarche de calcul avec un
outil d’aide dédié à la génération automatique de modèles exacts et moyens (AMG). Ainsi,
nous avons pu positionner nos travaux par rapport à l’état de l’art et aux travaux antérieurs.
tel-00434953, version 1 - 23 Nov 2009
La conception d’un tel outil requiert une méthodologie bien rigoureuse et une démarche
de modélisation par application de modèles moyens bien établie. Dans le second chapitre, nous
avons exposé cette démarche. Elle requiert une bonne connaissance du fonctionnement du
convertisseur à étudier. L’utilisateur doit en effet fournir certaines informations à savoir : le
schéma de la structure du convertisseur (fichier NetList), le mode de fonctionnement et la
commande. Elle repose sur une approche formelle qui consiste à extraire les systèmes d’état
pour chaque topologie du circuit. Elle se compose de trois grandes parties :
- l’analyse topologique qui permet d’analyser le circuit et d’extraire les matrices
d’incidence nœuds/branches complètes et réduites, de classifier et de réorganiser les
grandeurs caractérisant le circuit en branches et maillons et enfin de calculer la matrice
des mailles fondamentales B1 en utilisant une version étendue de l’algorithme de
Welsh.
- l’extraction des matrices d’état réduites pour chaque configuration ; cependant, nous
sommes parfois amenés à les réorganiser, les compléter (dans le cas de la conduction
discontinue) afin de construire les matrices du système différentiel complet.
- le calcul des modèles exacts et moyens en construisant d’abord l’équation différentielle
globale du circuit et ensuite en se référant à l’état de l’art réalisé sur les modèles
moyens.
Nous avons également étendu cette démarche de modélisation afin de pouvoir coupler
les modèles de convertisseurs entre eux en combinant les modèles obtenus avec des modèles
de charge ou de machine d’une part et de traiter la conduction discontinue dans le cas des
hacheurs DC/DC (parallèle, série, à charge inductive) d’autre part.
Conclusions et perspectives - 117 -
Nous avons par la suite implémenté cette démarche dans le troisième chapitre pour
créer notre outil informatique de génération des modèles : AMG (Average Model Generator).
Nous avons détaillé le principe général d’utilisation de AMG, ses différentes
fonctionnalités, son formalisme de projection de modèles et enfin les différentes étapes de
modélisation.
Nous avons fournis aussi quelques résultats obtenus dans le cas du couplage de
modèles et du traitement de la conduction discontinue pour un hacheur parallèle.
Les résultats de simulation obtenus dans ces logiciels sont identiques, ce qui valide
notre démarche automatique de modélisation.
Enfin, nous avons mis en évidence l’intérêt et la puissance de cet outil en traitant la
structure multi-cellulaire.
Conclusions et perspectives - 118 -
Dans cette optique, nous pouvons imaginer une solution qui permettra de fournir ces
informations automatiquement en partant de certains travaux [Ger98, Pel03]. Cela concerne
notamment l’extraction automatique des cellules de commutations et la recherche des
grandeurs d’état associées à chaque cellule.
tel-00434953, version 1 - 23 Nov 2009
Des travaux ont été réalisés sur la modélisation fréquentielle de convertisseurs statiques
[Pop99, Lan06]. Il serait également intéressant de reprendre ces travaux, en les enrichissant
pour la détermination automatique des instants de commutation et les adapter à nos besoins.
Notamment, ces études offrent une alternative à la modélisation fréquentielle pour des
structures dont les commutations ne sont pas contrôlées, telles que des redresseurs à diodes.
C’est donc une possibilité supplémentaire pour modéliser certains cas de conduction
discontinue.
Une contrainte forte liée à la modélisation moyenne est l’a priori sur le fonctionnement
du convertisseur. En effet, il faut fournir la commande et le mode de la structure à étudier. Cela
signifie une connaissance et une analyse préalable du convertisseur statique à modéliser. Nous
pouvons prévoir une analyse automatique de la simulation dans n’importe quel logiciel de
simulation de type circuit (par exemple sous Saber, PSim ou Portunus…), afin d’extraire le
mode de fonctionnement automatiquement. La construction automatique du mode de
commande est importante pour des structures ayant de nombreux semi-conducteurs.
D’un point de vue implémentation, nous avons choisi d’utiliser Maple, notamment
parce qu’il offre la possibilité de simplification de formules. Néanmoins, cette utilisation
impose une dépendance logicielle et une grande consommation au niveau de la mémoire. Avec
le recul, il est désormais possible de passer outre et réécrire les calculs formels entièrement en
Java.
Conclusions et perspectives - 119 -
Cependant, il est important de valider que la simplification des formules proposée par
Maple peut être mise en oeuvre dans nos outils de manipulation formelle écrits en Java. En
effet, la simplification des formules est indispensable sur des structures complexes comme le
convertisseurs multi-cellulaires présenté dans le quatrième chapitre, afin de limiter les
redondances de calculs, coûteuses en temps CPU. La mise en équations des circuits a été faite
de façon modulaire de manière à être utilisée dans d’autres outils.
Actuellement, les bibliothèques de modélisation ont pu être réutilisées avec succès dans
les travaux de thèse de Phuong Do-Thai pour la modélisation dynamique multiphysique
d’actionneurs électromécanique. Il manque cependant la prise en compte des mutuelles. Ce
travail sera nécessaire pour les convertisseurs avec des inductances couplées.
interface graphique (IHM) pour l’outil AMG. Nous pourrions notamment envisager un
superviseur permettant d’activer les différents outils nécessaires à la démarche complète de
modélisation, tel que cela a été présenté dans le deuxième chapitre. Il serait notamment
cohérent d’extraire automatiquement la NetList du circuit à modéliser à partir de l’outil de
simulation circuit utilisé pour l’analyse initiale du fonctionnement du convertisseur statique.
tel-00434953, version 1 - 23 Nov 2009
Bibliographie
tel-00434953, version 1 - 23 Nov 2009
Bibliographie
[Mid77] R.D. Middlebrook and S. Cuk, "Modelling and Analysis Methods for Dc-to-Dc
Switching Converters", IEEE International Semi conductor Power Converters
Conference, 1977 Record, pp. 90-111 (IEEE Publication 77 CH 1183-31A).
[Nor92] O. Normand, "Conception d'un outil général de simulation des systèmes de
conversion d'énergie électrique et de leur commande", Thèse de doctorat en génie
électrique de l’Institut National Polytechnique de Grenoble, France, Septembre 1992.
[Pel03] B. du Peloux, "Analyseur de circuit", DEA de génie électrique INPG, sep 2003.
[Pel06] B. Du Peloux, "Modélisation des actionneurs électromagnétiques par réseaux de
reluctances. Création d’un outil métier dédié au prédimensionnement par optimisation",
Thèse de l’INP Grenoble, France, 9 Octobre 2006.
[Per79] J.Perard; E. Toutain.; M. Nougaret, "Modélisation des convertisseurs d’énergie par un
schéma équivalent", L'Onde Electrique, vol. 59, Dec. 1979, p. 81-88.
tel-00434953, version 1 - 23 Nov 2009
Sites internet
Annexe A1
Démonstration de formule
tel-00434953, version 1 - 23 Nov 2009
Annexe1 : Démonstration de formule - 125 -
Annexe A1
Démonstration de formules
avec : (A1.2)
( 1)
tel-00434953, version 1 - 23 Nov 2009
x1 = ℜ x
x2 = ℑ( x 1 )
En développant l’expression (A1.3), nous obtenons l’équation (1.34).
x(t ) = x −1 ∗ e − jωt + x 1 ∗ e jωt (A1.3)
cos(2 ⋅ π ⋅ f ⋅ t )
= (x1 − j ⋅ x2 ) ∗ (cos(2 ⋅ π ⋅ f ⋅ t ) − j sin (2 ⋅ π ⋅ f ⋅ t )) + ( x1 + j ⋅ x2 ) ∗
+ j sin (2 ⋅ π ⋅ f ⋅ t )
= 2( x1 ⋅ cos(2 ⋅ π ⋅ f ⋅ t ) − x2 ⋅ sin (2 ⋅ π ⋅ f ⋅ t ))
tel-00434953, version 1 - 23 Nov 2009
tel-00434953, version 1 - 23 Nov 2009
Annexe A2
Calcul des différents cas de
matrices
tel-00434953, version 1 - 23 Nov 2009
Annexe A2
Calcul des différents cas de matrices
Cette annexe reprend et complète les calculs présentés dans la thèse de Bordry [Bor85].
avec :
Vbc (A2.2)
x(t ) =
tel-00434953, version 1 - 23 Nov 2009
I ml
Ve (A2.3)
u (t ) =
I j
avec :
Nous allons présenter les différents cas de figure de calcul des différents sous-blocs des
matrices A et B.
Notons :
• Si un vecteur V n’existe pas, nous le noterons V (par exemple Vmr signifie qu’il n’y a
pas de résistance de maillons dans le circuit).
• Nous noterons aussi que les mutuelles n’ont pas été prises en compte dans nos calculs.
- Si ( Vmr )
A11 = 0 (A2.13)
- Si ( Vbr )
A22 = 0 (A2.20)
- Si ( Vbc )
- Si ( Vml )
- Si ( Vmr et Vbr )
A11 = 0 (A2.23)
A22 = 0 (A2.26)
- Si ( Vmj )
- Si ( Ve )
- Si ( Vbr et Vmj )
- Si ( Vbc et Vmj )
- Si ( Ve et Vmr et Vbc )
Maintenant, nous allons étudier les différents cas de figure de calcul des sous-blocs de la
matrice de sortie C et de la matrice de transmission directe D.
L’équation de sortie est la suivante :
Ys (t ) = C ⋅ x(t ) + D ⋅ U (t ) (A2.38)
où :
Ie (A2.39)
Ys (t ) =
Vmj
C C12 (A2.40)
C = 11
C 21 C 22
D D12 (A2.41)
D = 11
D21 D22
C11 = − s5T ⋅ H1−1 ⋅ s6 + s1T ⋅ C2 ⋅ s2 ⋅ T1−1 ⋅ s6T ⋅ H1−1 ⋅ s6 (A2.42)
s13
T
− s5T ⋅ H1−1 ⋅ s7 ⋅ R1 ⋅ s15T
− s1T ⋅ C2 ⋅ s2 ⋅ T1−1 ⋅ s14
T (A2.47)
D12 =
+ s1T ⋅ C2 ⋅ S 2 ⋅ T1−1 ⋅ s6T ⋅ H1−1 ⋅ s7 ⋅ R1 ⋅ s15
T
- Si Vmr
C11 = 0 (A2.50)
- Si Vbr
C22 = 0 (A2.57)
- Si Vml
C11 = 0 (A2.60)
C21 = 0 (A2.62)
Annexe A2 : Calcul des différents cas de matrices - 131 -
- Si Vmc
- Si Vbl
- Si Ve
C11 = 0 (A2.74)
C12 = 0 (A2.75)
C12 = 0 (A2.79)
C22 = 0 (A2.81)
- Si Vbr et Vmj
- Si Vmr et Ve
- Si Vbr et V mc
- Si Vbr et Vbl
C22 = 0 (A2.94)
- Si Vmc et Vbl
- Si Vmc et Vmj
- Si Vmc et Ve
- Si Vbl et Ve
C11 = 0 (A2.105)
Annexe A2 : Calcul des différents cas de matrices - 134 -
C22 = 0 (A2.108)
- Si Vmr et Vbr
tel-00434953, version 1 - 23 Nov 2009
C11 = 0 (A2.111)
C22 = 0 (A2.114)
C11 = 0 (A2.115)
C22 = 0 (A2.118)
C11 = 0 (A2.119)
C21 = 0 (A2.131)
C22 = 0 (A2.132)
C11 = 0 (A2.133)
C22 = 0 (A2.136)
Annexe A2 : Calcul des différents cas de matrices - 136 -
- Si ( Vmr et Vmc )
C11 = 0 (A2.137)
- Si ( Vmr et Vbl )
C11 = 0 (A2.141)
C22 = 0 (A2.148)
- Si ( Vmc ) ou ( Vbc )
D12 = s13
T
− s5T ⋅ H1−1 ⋅ s7 ⋅ R1 ⋅ s15
T (A2.150)
- Si ( Vbr )
D12 = s13
T
− s1T ⋅ C2 ⋅ s2 ⋅ T1−1 ⋅ s14
T (A2.154)
D22 = 0 (A2.156)
- Si Vml ou Vbl
s13
T
− s5T ⋅ H1−1 ⋅ s7 ⋅ R1 ⋅ s15T
− s1T ⋅ C2 ⋅ s2 ⋅ T1−1 ⋅ s14
T (A2.158)
tel-00434953, version 1 - 23 Nov 2009
D12 =
+ s1T ⋅ C2 ⋅ S 2 ⋅ T1−1 ⋅ s6T ⋅ H1−1 ⋅ s7 ⋅ R1 ⋅ s15
T
D22 = −( s15
T
⋅ H 2−1 ⋅ R1 ⋅ s15
T
) (A2.160)
- Si ( Ve )
D11 = 0 (A2.161)
D12 = 0 (A2.162)
D22 = −( s15
T
⋅ H 2−1 ⋅ R1 ⋅ s15
T
− s16 ⋅ L1 ⋅ s12
T
⋅ T2−1 ⋅ s11 ⋅ H 2−1 ⋅ R1 ⋅ s15
T
) (A2.164)
D12 = s13
T (A2.166)
D22 = 0 (A2.168)
Annexe A2 : Calcul des différents cas de matrices - 138 -
- Si ( Vmc et Vml )
D12 = s13
T
− s5T ⋅ H1−1 ⋅ s7 ⋅ R1 ⋅ s15
T (A2.170)
D22 = −( s15
T
⋅ H 2−1 ⋅ R1 ⋅ s15
T
) (A2.172)
- Si ( Vmc et Vbl ) ou ( Vml et Vbc ) ou ( Vbc et Vbl ) ou ( Vmc et Vbl et Vml ) ou ( Vmc et Vbl et Vbc ) ou
( Vmc et Vml et Vbc )
D12 = s13
T
− s5T ⋅ H1−1 ⋅ s7 ⋅ R1 ⋅ s15
T (A2.174)
D22 = −( s15
T
⋅ H 2−1 ⋅ R1 ⋅ s15
T
) (A2.176)
D12 = s13
T
− s1T ⋅ C2 ⋅ s2 ⋅ T1−1 ⋅ s14
T (A2.178)
D22 = 0 (A2.180)
- Si ( Vmc et Vbl et Vbr ) ou ( Vbr et Vml et Vbc ) ou ( Vbr et Vml et Vmc ) ou ( Vbr et Vbl et Vbc )
D12 = s13
T (A2.182)
D22 = 0 (A2.184)
Annexe A2 : Calcul des différents cas de matrices - 139 -
- Si ( Vmr )
D11 = 0 (A2.185)
D12 = s13
T
− s1T ⋅ C2 ⋅ s2 ⋅ T1−1 ⋅ s14
T (A2.186)
D22 = −( s15
T
⋅ H 2−1 ⋅ R1 ⋅ s15
T
− s16 ⋅ L1 ⋅ s12
T
⋅ T2−1 ⋅ s11 ⋅ H 2−1 ⋅ R1 ⋅ s15
T
) (A2.188)
D11 = 0 (A2.189)
D12 = s13
T (A2.190)
tel-00434953, version 1 - 23 Nov 2009
D22 = −( s15
T
⋅ H 2−1 ⋅ R1 ⋅ s15
T
− s16 ⋅ L1 ⋅ s12
T
⋅ T2−1 ⋅ s11 ⋅ H 2−1 ⋅ R1 ⋅ s15
T
) (A2.192)
- Si ( Vmr et Vbr )
D11 = 0 (A2.193)
D12 = s13
T
− s1T ⋅ C2 ⋅ s2 ⋅ T1−1 ⋅ s14
T (A2.194)
D22 = −( s15
T
⋅ H 2−1 ⋅ R1 ⋅ s15
T
) (A2.196)
D11 = 0 (A2.197)
D12 = s13
T (A2.198)
D22 = 0 (A2.200)
Annexe A2 : Calcul des différents cas de matrices - 140 -
- Si ( Vmr et Vbr et Vbl ) ou ( Vmr et Vbr et Vbl et Vml ) ou ( Vmr et Vbr et Vml )
D11 = 0 (A2.201)
D12 = s13
T
− s1T ⋅ C2 ⋅ s2 ⋅ T1−1 ⋅ s14
T (A2.202)
D22 = 0 (A2.204)
D11 = 0 (A2.205)
D12 = s13
T (A2.206)
tel-00434953, version 1 - 23 Nov 2009
D22 = 0 (A2.208)
D11 = 0 (A2.209)
D12 = s13
T (A2.210)
D22 = −( s15
T
⋅ H 2−1 ⋅ R1 ⋅ s15
T
) (A2.212)
Nous avons aussi complété les calculs afin d’obtenir les différentes équations de sortie
notamment pour les vecteurs de tensions et de courant dans les résistances, les condensateurs
et les inductances.
Vmr I I V (A2.213)
YVr (t ) = ; YIr (t ) = br ; Yx1 (t ) = bc ; Yx 2 (t ) = mc
Vbr I mr Vml I bl
avec :
C1 C112 (A2.215)
C1 = 11
C121 C122
D1 D112 (A2.216)
D1 = 11
D121 D122
I bc (A2.217)
Yx1 (t ) =
Vml
C111 = s2T ⋅ C2 ⋅ s2 ⋅ T1−1 ⋅ s6T ⋅ H1−1 ⋅ s6 − s6T ⋅ H1−1 ⋅ s6 (A2.218)
C112 = s10
T T
(
− s2T ⋅ C2 ⋅ s2 ⋅ T1−1 ⋅ s10 − s6T ⋅ H1−1 ⋅ s7 ⋅ R1 ⋅ s11
T
)
− s6T ⋅ H1−1 ⋅ s7 ⋅ R1 ⋅ s11
T (A2.219)
− ( s + s ⋅ L1 ⋅ s12
C121 = 10 12
T
(
⋅ T2−1 ⋅ s11 ⋅ H 2−1 ⋅ R1 ⋅ s 7T ⋅ R2−1 ⋅ s 6 − s10 ) (A2.220)
D112 = s14
T T
(
− s2T ⋅ C2 ⋅ s2 ⋅ T1−1 ⋅ s14 − s6T ⋅ H1−1 ⋅ s7 ⋅ R1 ⋅ s15
T
)
− s6T ⋅ H1−1 ⋅ s7 ⋅ R1 ⋅ s15
T (A2.223)
- Si ( Vmr )
C111 = 0 (A2.226)
C112 = s10
T T
( )
− s2T ⋅ C2 ⋅ s2 ⋅ T1−1 ⋅ s10 (A2.227)
- Si ( Vbr )
C112 = s10
T
( )
− s2T ⋅ C2 ⋅ s2 ⋅ T1−1 ⋅ s10
T (A2.231)
C122 = 0 (A2.233)
- Si ( Vbr et Vmr )
C111 = 0 (A2.234)
C112 = s10
T
( )
− s2T ⋅ C2 ⋅ s2 ⋅ T1−1 ⋅ s10
T (A2.235)
C122 = 0
tel-00434953, version 1 - 23 Nov 2009
(A2.237)
- Si ( Vbl )
C112 = s10
T
(
− s2T ⋅ C2 ⋅ s2 ⋅ T1−1 ⋅ s10
T
− s6T ⋅ H1−1 ⋅ s7 ⋅ R1 ⋅ s11
T
)− s6T ⋅ H1−1 ⋅ s7 ⋅ R1 ⋅ s11
T (A2.239)
- Si ( Vbl et Vbr )
C112 = s10
T
( )
− s2T ⋅ C2 ⋅ s2 ⋅ T1−1 ⋅ s10
T (A2.243)
C122 = 0 (A2.245)
- Si ( Vbl et Vmr )
C111 = 0 (A2.246)
Annexe A2 : Calcul des différents cas de matrices - 143 -
C112 = s10
T T
( )
− s2T ⋅ C2 ⋅ s2 ⋅ T1−1 ⋅ s10 (A2.247)
C111 = 0 (A2.250)
C112 = s10
T T
( )
− s2T ⋅ C2 ⋅ s2 ⋅ T1−1 ⋅ s10 (A2.251)
C122 = 0
tel-00434953, version 1 - 23 Nov 2009
(A2.253)
- Si ( Vmc )
C112 = s10
T
− s6T ⋅ H1−1 ⋅ s7 ⋅ R1 ⋅ s11
T (A2.255)
- Si ( Vmc et Vmr )
C111 = 0 (A2.258)
C112 = s10
T (A2.259)
C111 = 0 (A2.262)
Annexe A2 : Calcul des différents cas de matrices - 144 -
C112 = s10
T (A2.263)
C111 = 0 (A2.266)
C112 = s10
T (A2.267)
C122 = 0
tel-00434953, version 1 - 23 Nov 2009
(A2.269)
- Si ( Vmc et Vbl )
C112 = s10
T
− s6T ⋅ H1−1 ⋅ s7 ⋅ R1 ⋅ s11
T (A2.271)
- Si ( Vmc et Vbr )
C112 = s10
T (A2.275)
C122 = 0 (A2.277)
C112 = s10
T (A2.279)
C122 = 0 (A2.281)
- Si ( Vml )
- Si ( Vbc )
C111 = 0 (A2.284)
C112 = s10
T (A2.285)
C122 = 0 (A2.287)
- Si ( Vmr )
D111 = 0 (A2.288)
D112 = s14
T T
( )
− s2T ⋅ C2 ⋅ s2 ⋅ T1−1 ⋅ s14 (A2.289)
- Si ( Vbr )
D112 = s14
T T
( )
− s2T ⋅ C2 ⋅ s2 ⋅ T1−1 ⋅ s14 (A2.293)
D122 = 0 (A2.295)
- Si ( Vmr )
D111 = 0 (A2.296)
D112 = s14 ( )
− s2T ⋅ C2 ⋅ s2 ⋅ T1−1 ⋅ s14
tel-00434953, version 1 - 23 Nov 2009
T T (A2.297)
- Si ( Vmr et Vbr )
D111 = 0 (A2.300)
D112 = s14
T T
( )
− s2T ⋅ C2 ⋅ s2 ⋅ T1−1 ⋅ s14 (A2.301)
D122 = 0 (A2.303)
- Si ( Vbl )
D112 = s14
T T
(
− s2T ⋅ C2 ⋅ s2 ⋅ T1−1 ⋅ s14 − s6T ⋅ H1−1 ⋅ s7 ⋅ R1 ⋅ s15
T
)
− s6T ⋅ H1−1 ⋅ s7 ⋅ R1 ⋅ s15
T (A2.305)
- Si ( Vmr et Vbl )
D111 = 0 (A2.308)
D112 = s14
T T
( )
− s2T ⋅ C2 ⋅ s2 ⋅ T1−1 ⋅ s14 (A2.309)
D121 = −( s9 ) (A2.310)
- Si ( Vbr et Vbl )
D112 = s14 ( )
− s2T ⋅ C2 ⋅ s2 ⋅ T1−1 ⋅ s14
tel-00434953, version 1 - 23 Nov 2009
T T (A2.313)
D121 = −( s9 ) (A2.314)
D122 = 0 (A2.315)
D111 = 0 (A2.316)
D112 = s14
T T
( )
− s2T ⋅ C2 ⋅ s2 ⋅ T1−1 ⋅ s14 (A2.317)
D121 = −( s9 ) (A2.318)
D122 = 0 (A2.319)
- Si ( Vmc )
D112 = s14
T
− s6T ⋅ H1−1 ⋅ s7 ⋅ R1 ⋅ s15
T (A2.321)
- Si ( Vmc et Vmr )
D111 = 0 (A2.324)
D112 = s14
T (A2.325)
- Si ( Vmc et Vbr )
D112 = s14
tel-00434953, version 1 - 23 Nov 2009
T (A2.329)
D122 = 0 (A2.331)
- Si ( Vmc et Vbl )
D112 = s14
T
− s6T ⋅ H1−1 ⋅ s7 ⋅ R1 ⋅ s15
T (A2.333)
D112 = s14
T (A2.337)
D121 = −( s9 ) (A2.338)
D122 = 0 (A2.339)
Annexe A2 : Calcul des différents cas de matrices - 149 -
D111 = 0 (A2.340)
D112 = s14
T (A2.341)
D121 = −( s9 ) (A2.342)
D121 = −( s9 ) (A2.344)
T
) (A2.345)
D111 = 0 (A2.346)
D112 = s14
T (A2.347)
D121 = −( s9 ) (A2.348)
D122 = 0 (A2.349)
- Si ( Vmj )
D121 =
− ( s 9 + s12 ⋅ L1 ⋅ s12
T
(
⋅ T2−1 ⋅ − s9 + s11 ⋅ H 2−1 ⋅ R1 ⋅ s 7T ⋅ R2−1 ⋅ s5 ) (A2.351)
− s ⋅ H −1 ⋅ R ⋅ s T ⋅ R −1 ⋅ s )
11 2 1 7 2 5
- Si ( Vbc )
- Si ( Ve )
D112 = s14
T T
(
− s2T ⋅ C2 ⋅ s2 ⋅ T1−1 ⋅ s14 − s6T ⋅ H1−1 ⋅ s7 ⋅ R1 ⋅ s15
T
)
− s6T ⋅ H1−1 ⋅ s7 ⋅ R1 ⋅ s15
T (A2.354)
- Si ( Vmj et Vbr )
- Si ( Vmj et Vbl )
tel-00434953, version 1 - 23 Nov 2009
D121 = −( s9 ) (A2.361)
- Si ( Vmj et Vmc )
D121 = −( s9 ) (A2.367)
- Si ( Ve et Vmr )
D112 = s14
T T
( )
− s2T ⋅ C2 ⋅ s2 ⋅ T1−1 ⋅ s14 (A2.368)
- Si ( Ve et Vbl )
tel-00434953, version 1 - 23 Nov 2009
D112 = s14
T T
(
− s2T ⋅ C2 ⋅ s2 ⋅ T1−1 ⋅ s14 − s6T ⋅ H1−1 ⋅ s7 ⋅ R1 ⋅ s15
T
)
− s6T ⋅ H1−1 ⋅ s7 ⋅ R1 ⋅ s15
T (A2.370)
- Si ( Ve et Vbl et Vmr )
D112 = s14
T T
( )
− s2T ⋅ C2 ⋅ s2 ⋅ T1−1 ⋅ s14 (A2.372)
- Si ( Ve et Vmc )
D112 = s14
T
− s6T ⋅ H1−1 ⋅ s7 ⋅ R1 ⋅ s15
T (A2.374)
- Si ( Ve et Vmc et Vmr )
D112 = s14
T (A2.376)
- Si ( Ve et Vmc et Vbl )
D112 = s14
T
− s6T ⋅ H1−1 ⋅ s7 ⋅ R1 ⋅ s15
T (A2.378)
D112 = s14
T (A2.380)
- Si ( Vbc et Vmr )
tel-00434953, version 1 - 23 Nov 2009
D121 = −( s9 ) (A2.384)
Yx 2 (t ) = Cx ⋅ x(t ) + Dx ⋅ U (t ) (A2.386)
avec :
Vmc (A2.387)
Yx 2 (t ) =
I bl
Cx Cx12 (A2.388)
Cx = 11
Cx
21 Cx22
Dx Dx12 (A2.389)
Dx = 11
Dx21 Dx22
Annexe A2 : Calcul des différents cas de matrices - 153 -
Cx11 = − s2 (A2.390)
Cx12 = 0 (A2.391)
Cx21 = 0 (A2.392)
Cx22 = ( s12
T
) (A2.393)
Dx11 = − s1 (A2.394)
Dx12 = 0 (A2.395)
Dx21 = 0 (A2.396)
Dx22 = ( s16
T
) (A2.397)
tel-00434953, version 1 - 23 Nov 2009
Cx = s12
T (A2.398)
- Si ( Vmc )
Cx21 = 0 (A2.399)
Cx22 = ( s12
T
) (A2.400)
- Si ( I bl et I ml ) ou ( I ml )
Cx = − s2 (A2.401)
- Si ( I bl )
Cx11 = − s2 (A2.402)
Cx12 = 0 (A2.403)
Annexe A2 : Calcul des différents cas de matrices - 154 -
avec :
Vmr (A2.405)
YVr (t ) =
Vbr
CVr11 CVr12 (A2.406)
CVr =
CVr21 CVr22
DVr11 DVr12 (A2.407)
DVr =
tel-00434953, version 1 - 23 Nov 2009
DVr21 DVr22
CVr11 = −( s6 − s7 ⋅ H 2−1 ⋅ R1 ⋅ s7T ⋅ R2−1 ⋅ s6 ) (A2.408)
- Si ( Vbl )
CVr11 = 0 (A2.416)
CVr21 = 0 (A2.418)
- Si ( Vbr )
- Si ( Vmr )
- Si ( Vbl ) ou ( Vmc )
- Si ( Vml )
CVr11 = −( s6 ) (A2.428)
- Si ( Vbc et Vbl )
- Si ( Vbr )
DVr11 = −( s5 ) (A2.431)
- Si ( Vmr )
- Si ( Ve )
DVr11 = −( s5 ) (A2.435)
DVr12 = 0 (A2.437)
DVr21 = 0 (A2.438)
DVr11 = −( s5 ) (A2.442)
avec :
I br (A2.444)
YIr (t ) =
I mr
tel-00434953, version 1 - 23 Nov 2009
DIr12 = s15
T
− ( s7T ⋅ H1−1 ⋅ s7 ⋅ R1 ⋅ s15
T
) (A2.452)
- Si ( Vbc )
CIr12 = s11
T (A2.458)
- Si ( Vbr )
DIr12 = s15
T (A2.462)
- Si ( Vmc )
DIr12 = s15
T
− ( s7T ⋅ H1−1 ⋅ s7 ⋅ R1 ⋅ s15
T
) (A2.463)
Annexe A2 : Calcul des différents cas de matrices - 159 -
- Si ( Ve ) ou ( Ve et Vbc )
DIr12 = s15
T
− ( s7T ⋅ H1−1 ⋅ s7 ⋅ R1 ⋅ s15
T
) (A2.465)
- Si ( Vmj ) ou ( Ve et Vmj )
Annexe B
Présentation du logiciel
Portunus
tel-00434953, version 1 - 23 Nov 2009
Annexe B
Présentation du logiciel Portunus
I. Description du logiciel
Portunus est une solution logicielle pour le design et l’analyse des systèmes
mécatroniques. Il permet une combinaison de différents modes de modélisation : circuits
conservatifs (circuits électrique, thermique, mécanique, etc.), diagrammes par blocs, machines
d’états. Il permet d'analyser le comportement de systèmes divers. Les possibilités d'application
vont des systèmes d'alimentation électrique, systèmes d'électronique de puissance et de
commande au système de régulation et aux composants automobiles. Au-delà de l'analyse du
comportement électrique, Portunus permet d'évaluer les propriétés mécaniques et thermiques
des systèmes.
tel-00434953, version 1 - 23 Nov 2009
Les analyses peuvent être effectuées dans le domaine temporel, fréquentiel ou pour
calculer le point de fonctionnement. Au cours de la simulation, les résultats peuvent être
affichés sous forme de diagramme ou dans un tableau. Pour certains modèles, il est possible
d’observer l’évaluation des valeurs pendant la simulation avec des animations, c’est-à-dire
pour une machine d’état par exemple, nous pouvons suivre le passage d’un état à un autre avec
ces animations.
Il est possible d’importer des données à partir des autres logiciels comme SPEED
(Laboratoire SPEED, UK) pour l’analyse des moteurs électriques, InCa3D (Cedrat SA, France)
pour les connections électriques et Motor-CAD (Motor-Design, UK) pour les connections
thermiques. Les résultats des simulations peuvent être exportés directement vers Excel, Matlab
et Origin sans gérer un autre fichier.
La bibliothèque standard de Portunus inclut les modèles électriques et mécaniques, les
fonctions temporelles (signal triangulaire, échelon, sinusoïde …), les blocs, les composants
pour construire les machines d’états (transitions, états), les appareils de mesures. Pour faire
l’analyse des réseaux thermiques, une bibliothèque thermique a été crée avec collaboration de
Motor-Design (UK) qui contient les modèles pour le transfert de chaleur (conduction,
convection, radiation…), les sources de chaleurs et les appareils de mesures. La bibliothèque
de SPICE est aussi présente contenant les modèles de semi-conducteurs. (MOSFETs, JFETs)
La figure B.1 illustre la régulation de vitesse du moteur à courant continu avec le freinage
mécanique. Cet exemple met en évidence l’utilisation des différents modes de modélisation
(diagrammes par blocs, machines d’états, circuit électrique pour l’alimentation du moteur)
ainsi que l’affichage des résultats de la simulation.
Annexe B : Présentation du logiciel Portunus - 161 -
tel-00434953, version 1 - 23 Nov 2009
LIBRARY Electrical_device;
LIBRARY ieee;
USE ieee.electrical_systems.ALL;
tel-00434953, version 1 - 23 Nov 2009
Annexe C
Utilisation de OpenMaple
tel-00434953, version 1 - 23 Nov 2009
Annexe C
Utilisation de OpenMaple
phase d’initialisation du module est obligatoire. Nous devons donc définir l’ensemble des
classes Java permettant l’exécution de Maple dans notre propre classe. Cette opération est
réalisée par les lignes suivantes :
/* import the Java Open Maple classes */
import com.maplesoft.openmaple.*;
/* import the MapleException class */
import com.maplesoft.externalcall.MapleException;
Maintenant, nous devons initialiser l’élément permettant le transfert de données entre Java et
OpenMaple. Pour cela, nous allons déclarer un objet spécifique à OpenMaple, qui ouvre une
session Maple et attend les instructions de calculs. Cette opération est réalisée par la ligne:
String a[] = new String[1];
a[0] = "java";
Engine t = new Engine( a, new EngineCallBacksDefault(), null, null );
L’objet “t” est donc maintenant la passerelle entre le langage Java et l’interface de calcul
Maple. Toutes les opérations se feront sous forme t.expression (parm1,…,paramN). Il est à
noter qu’une seule session Maple peut être ouverte. Il est donc nécessaire d’effectuer
l’opération d’initialisation une seule et unique fois.
Nous avons utilisé également une fonction permettant à l’utilisateur d’utiliser les fonctions
Maple directement dans OpenMaple :
Algebraic resultat = t.evaluate(expression Maple) ;
Cette fonction permet de placer dans les parenthèses une expression Maple, comme si une
session Maple était ouverte sur l’ordinateur. Nous pouvons donc utiliser toute la gamme
d’expressions Maple dans un programme écrit en Java.
Annexe C : Utilisation de OpenMaple - 164 -
Le résultat est donné directement sous une forme algébrique, qui nécessitera une conversion
en chaîne de caractères s’il on veut par la suite exploiter le résultat.
Comme pour les traitements sur les fichiers ou autre, après utilisation de la session Maple,
nous devons la fermer par la commande t.close(). Si cette opération est oubliée par
l’utilisateur, Java fermera la session automatiquement à la fin du programme. Il est cependant
fortement recommandé de fermer la session manuellement sous peine d’obtenir certaines
erreurs lors de la réouverture.
tel-00434953, version 1 - 23 Nov 2009
Annexe D
Etapes de modélisation du
hacheur parallèle
tel-00434953, version 1 - 23 Nov 2009
Annexe D
Etapes de modélisation du hacheur parallèle
Vc1
VC1 (V)
Vc1
t(s)
iL1(A)
tel-00434953, version 1 - 23 Nov 2009
h1
1
T1 T1
ON OFF
t(s)
amg_VectCommande:=Vector([(1-h1,h1)]); Commande
Enfin nous les simulons dans Matlab/Simulink ou Portunus (cf. figure D.3 et figure D.4).
Modèle exact
Simulation
S-Function
Modèle exact généré par AMG en Modèle moyen classique grands signaux
VHDL-AMS généré par AMG en VHDL-AMS
Modèle exact
du hacheur
Comparaison du
parallèle codé
modèle exact
en VHDL-AMS
(VHDL-AMS) avec
celui dans
Portunus et S-
Function
Matlab/Simulink
Validation du
modèle
Annexe E
Résultats en format Modelica
tel-00434953, version 1 - 23 Nov 2009
Annexe E
Résultats en format Modelica
Nous allons présenter dans cette annexe quelques modèles générés par AMG en format
Modelica pour les structures suivantes :
- hacheur parallèle ;
- onduleur triphasé ;
- convertisseur à résonance ;
- convertisseur multi-cellulaire.
model hacpar_Exact
equation
der(VC1)= -(VC1 - iL1 * R1 + iL1 * R1 * h1) /
C1 / R1;
der(iL1)= (-VC1 + VC1 * h1 + U1) / L1;
end hacpar_Exact ;
Figure E. 1: modèle exact généré par AMG pour un hacheur parallèle en Modelica pendant
la conduction continue
Annexe E : Résultats en format Modelica - 170 -
model hacpar_completcorrige
external connector InputReal = input Real;
parameter
Real R1(R1(fixed=false)=0.5) ;
Real L1(L1(fixed=false)=0.5) ;
Real C1(C1(fixed=false)=0.5) ;
Real Ts(Ts(fixed=false)=0.5) ;
InputReal h1;
InputReal h2;
InputReal U1;
Real VC1;
Real iL1;
equation
der(VC1)= -(0.2e1 * VC1 * L1 - 0.2e1 * R1 * iL1 * L1 +
R1 * U1 * h1 ^ 2 * Ts) / L1 / C1 / R1 / 0.2e1;
der(iL1)= (-0.2e1 * VC1 * iL1 * L1 + VC1 * U1 * h1 ^ 2 *
Ts + 0.2e1 * U1 * iL1 * L1) / U1 / h1 / Ts / L1;
tel-00434953, version 1 - 23 Nov 2009
end hacpar_completcorrige ;
Figure E. 2: modèle complet d’ordre corrigé généré par AMG pour un hacheur parallèle en
Modelica pendant la conduction discontinue
model hacpar_reduit
external connector InputReal = input Real;
parameter
Real R1(R1(fixed=false)=0.5) ;
Real L1(L1(fixed=false)=0.5) ;
Real C1(C1(fixed=false)=0.5) ;
Real Ts(Ts(fixed=false)=0.5) ;
InputReal h1;
InputReal h2;
InputReal U1;
Real VC1;
equation
end hacpar_reduit ;
Figure E. 3: modèle réduit généré par AMG pour un hacheur parallèle en Modelica pendant
la conduction discontinue
Annexe E : Résultats en format Modelica - 171 -
model OndTc_Exact
external connector InputReal = input Real;
parameter
Real R1(R1(fixed=false)=0.5) ;
Real R2(R2(fixed=false)=0.5) ;
Real R3(R3(fixed=false)=0.5) ;
Real L1(L1(fixed=false)=0.5) ;
Real L2(L2(fixed=false)=0.5) ;
Real L3(L3(fixed=false)=0.5) ;
tel-00434953, version 1 - 23 Nov 2009
InputReal h1;
InputReal h2;
InputReal h3;
InputReal U2;
InputReal U1;
Real iL1;
Real iL2;
Real iL3;
equation
Figure E. 4: modèle exact généré par AMG pour un onduleur triphasé en Modelica
Annexe E : Résultats en format Modelica - 172 -
model ondcc_GME
external connector InputReal = input Real;
parameter Real R1(fixed=false)=0.5 ;
parameter Real R2(fixed=false)=0.5 ;
parameter Real L1(fixed=false)=0.5 ;
parameter Real C1(fixed=false)=0.5 ;
parameter Real C2(fixed=false)=0.5 ;
parameter Real f(fixed=false)=50 ;
tel-00434953, version 1 - 23 Nov 2009
equation
end ondcc_GME ;
model multin1_Exact
external connector InputReal = input Real;
parameter
Real R1(R1(fixed=false)=0.5) ;
Real R2(R2(fixed=false)=0.5) ;
Real L1(L1(fixed=false)=0.5) ;
Real C1(C1(fixed=false)=0.5) ;
Real C2(C2(fixed=false)=0.5) ;
tel-00434953, version 1 - 23 Nov 2009
Real C3(C3(fixed=false)=0.5) ;
input Real h1;
input Real h2;
input Real h3;
input Real h4;
input Real U2;
input Real U1;
Real VC1;
Real VC2;
Real VC3;
Real iL1;
equation
der(VC1)= -(h1 - h2) / C1 * iL1 / 0.2e1;
der(VC2)= -(-h3 + h2) / C2 * iL1 / 0.2e1;
der(VC3)= -(-h4 + h3) / C3 * iL1 / 0.2e1;
der(iL1)= (VC1 * h1 - VC1 * h2 - VC2 * h3 + VC2 * h2 - VC3 * h4 + VC3 *
h3 - 0.2e1 * iL1 * R1 - iL1 * R2 - iL1 * h4 * R2 + U2 + U2 * h4 - U1 + U1 *
h4) / L1 / 0.2e1;
end multin1_Exact ;
Mots clés :
Modèle moyen, convertisseur statique, modélisation, génération automatique, simulation.
Abstract
Power electronics models of static converters are useful in a huge set of applications. They are
used for component sizing, as well for control adjustment, control or behaviour simulation. In this
context, average models are a good compromise between complexity, computation time and acceptable
accuracy for system simulation. However, they may be difficult to create, especially when the structures
of the studied converters are complex and their control involves uncontrolled commutations.
Our work focuses on the way to carry out automatically such a process by using a symbolic
treatment. We propose an automatic building approach of both exact and average models by using a
software tool. This one is named AMG (for Average Model Generator) and has been developed in our
works. This tool is dedicated to the average modelling of power electronics converters. It deals with
some discontinuous conduction modes and continuous conduction modes. The models are created from
the description of the structure of the static converter (i.e. its netlist), its operating mode and its control.
In the architecture of AMG, three steps are important: the analysis of the circuit, the extraction
of the state matrixes for each configuration of the static converter and finally the building of the global
state model. The generated models are generated under their symbolic forma and in Modelica and
VHDL-AMS languages; so this allows their simulation in several software.
The modelling of several static converters is presented to show the possibilities of AMG.
Keywords: