• Aucun résultat trouvé

Chapitre 2 Commande vectorielle à flux rotorique orienté

2.3 Commande vectorielle à flux orienté

2.3.5 Calcul des régulateurs

2.3.5.4 Application numérique

Les paramètres du moteur donnés Tableau 3.1 permettent de calculer les valeurs des différents coefficients (Tableau 2.2).

L'application numérique montre que la valeur du coefficient de frottement visqueux f est négligeable devant celle de

3

5 , 9 trep

J .

Il conviendra de s'assurer, lors des essais en simulation, que nous ne saturons pas la commande, c'est à dire que la norme de la tension statorique V n'atteigne pas la valeur limite admissible (380 V).

sdqref

Régulateur de flux

ζ1 0,4 0,5 0,6 0,7 Kp1 691 442 307 225 Ki1 3036 1923 1350 991 γ 171,6

σ 0,062 Tr(ms) 0,227

Régulateur de couple

rref

Φ (Wb) 0,85

trep2(ms) 50 40 30 Kp2 0,21 0,26 0,35 Ki2 36,3 45,4 60,6

Régulateur de vitesse

ζ3 1

trep3(ms) 500 400 300

Kp3 4,18 5,2 7

Ki3 19,8 31 55,1

Tableau 2.2 Paramètres des régulateurs

Chapitre 3

Plate-forme expérimentale

Le Laboratoire d'automatique de Grenoble dispose depuis 1994 d'un banc d'essais "Machine asynchrone" destiné à valider des algorithmes de commande dédiés.

Leur implantation nécessite un environnement susceptible de permettre une mise en œuvre rapide et d'offrir une modularité importante.

La solution retenue passe par l'utilisation d'un processeur de signal (le DSP TMS320C30 de TEXAS INSTRUMENTS) dont les programmes temps réel sont générés par le logiciel MATLAB et complété par des outils de compilation spécifiques au DSP (RTW, Real Time Workshop), et par des modules de pilotage de l'application, COCKPIT et TRACE.

La représentation synoptique de la plate-forme est donné Figure 3.1 :

DSP TMS320C30

Carte PWM Alcatel Génération de

largeur d'impulsion _________

Génération de consigne (charge)

Acquisition de données

Protections et gestion des défauts

MACHINE A COURANT CONTINU

P=7kW

MOTEUR ASYNCHRONE P=7.5k

Ωnom=1500 tr/mn Cnom=50N.m Interface

et Isolement.

Filtres Antirepliement

Convertisseur à circulation de courant

Ud Ta+

Ta- Tb- Tc- Tb+ Tc+

Va Vc Vb Ia Ic Ib Da+ Db+ Dc+

Da- Db- Dc-

Onduleur triphasé F=1kHZ PC 486

Matlab Simulink

couplemètre

Figure 3.1 Représentation synoptique de la plate-forme expérimentale du L.A.G..

Nous détaillerons dans ce chapitre la commande la structure électromécanique du banc, les organes de commande de la machine asynchrone et l'environnement de mesures. Les éléments de contrôle de la machine à courant continu sont détaillés en Annexe A.

3.1 Structure électromécanique

3.1.1 Description

La structure électromécanique est constituée par :

• Une machine asynchrone triphasée à cage d'écureuil d'une puissance de 7,5 kW. Cette puissance a été choisie pour sa capacité à simuler des moteurs de taille plus importante (de l'ordre de 50 kW).

• Une machine à courant continu ventilée d'une puissance de 7,5 kW servant de charge variable associée à une dynamo tachymétrique pour l'asservissement local de vitesse.

• Un codeur optique incrémental pour la mesure de vitesse de l'axe.

• Un couplemètre à grande bande passante intercalé entre les deux machines ; il est relié aux moteurs par deux accouplements rigides en torsion et souples en flexion de manière à rattraper les défauts d'alignement.

Accouplements

Couplemètre

Moteur asynchrone Moteur à

courant continu Codeur

optique D.T.

Socle IPN rigide

Figure 3.2 Structure électromécanique de la plate-forme

3.1.2 Principaux paramètres

Le Tableau 3.1 donne les principaux paramètres du moteur asynchrone.

Puissance nominale P 7,5 kW Vitesse nominale n 1450 tr/min

Couple nominal Γn 50 N.m

Courant nominal In 16 A

Résistance statorique Rs 0,63 Résistance rotorique Rr 0,4 Inductance mutuelle Lm 0,091 H Inductance statorique Ls 0,097 H Inductance rotorique Lr 0,091 H

Inertie J 0,22 kg.m²

Frottement visqueux f 0,001 N.s/rad

Paire de pôles p 2

Vitesse maximale Ω 200 tr/min Tension maximale

(norme en repère V

smax

380 V Courant maximal

(norme en repère Is max

35 A

Flux maximal

(norme en repère Φ

r max

1 Wb Couple de charge

i l

Γ 45 N.m

Tableau 3.1 Paramètres du moteur et valeurs maximales admissibles

3.2 Commande de la machine asynchrone

3.2.1 L'onduleur de puissance J

IS

35 (Jeumont-Schneider)

Cet onduleur triphasé de technologie bipolaire (Figure 3.3) [Annexe A], conçu à l'origine pour fonctionner de manière autonome en U/f, n'était pas utilisable pour le test de lois de commande avancées : il ne pouvait recevoir d'ordres en provenance d'un logiciel de contrôle.

2 Ud

2 Ud

0 Valim

Tc

Ta Tb

Vc

N

Ta Tb Tc

Vb

Va

Figure 3.3 Onduleur triphasé

Le variateur a donc été modifié afin de recevoir des consignes en provenance d'un processeur de signal.

3.2.2 Pilotage de l'onduleur par la carte Alcatel P

WM

3.2.2.1 Modulation de largeur d'impulsion

La modulation de largeur d'impulsions est une technique de découpage de tension ou de courant permettant de générer des formes quasi sinusoïdales. L'objectif principal de cette technique est de régler l'amplitude et la fréquence du terme fondamental et de rejeter les harmoniques indésirables générées par une ondulation "pleine onde" vers les fréquences élevées, leurs amplitudes devenant alors négligeables.

On démontre que plus le nombre d'angles de découpage est important, plus on annule d'harmoniques. Ainsi, pour trois angles calculés, la modulation est déjà performante et il est possible de supprimer les harmoniques de rangs 3 et 5 et régler la valeur efficace du fondamental.

3.2.2.2 Génération de référence

Chaque bras du pont (Figure 3.3) est chargé de générer par modulation de largeur d'impulsion un signal dont le fondamental est le signal de référence.

Il existe différents types de modulation :

• MLI naturelle ou intersective : le calcul des instants de commutation se fait par intersection du signal de référence avec un signal triangulaire.

• MLI avec contrôle d'amplitude : l'amplitude crête est constante et pour la valeur efficace du fondamental, on agit sur la largeur des impulsions. Pour maintenir U/f=Cte, il faut modifier la valeur des angles d'amorçage de la MLI pour chaque valeur de vitesse. Ceux-ci sont donc précalculés et stockés dans une mémoire.

• MLI vectorielle : les instants de commutation sont calculés en ligne.

Cette technique est utilisée par la carte PWM Alcatel ALCT01 (Figure 3.1), développée spécialement par la société dSPACE pour le compte d'Alcatel Alsthom Recherche et implantée sur la plate-forme du L.A.G.

Il s'agit d'une carte client compatible PHS-Bus, le bus propriétaire des équipements dSPACE. Les principales caractéristiques de cette carte sont les suivantes :

• six générateurs MLI indépendants,

• impulsions symétriques pour sortie triphasée sinusoïdale,

• tension, fréquence, déphasage programmables,

• fréquence de découpage 20 kHz,

• temps morts, retards à la mise en et hors circuit programmable,

• transformation automatique du repère cartésien en repère polaire,

• fonctionnement synchrone ou asynchrone sur toutes les voies.

Les générateurs MLI sont basés sur un circuit spécialisé, le PBM 1/89, de la société Hanning [24]. Chaque circuit fournit trois voies MLI déphasées de 120° (Figure 3.4), à raison de deux signaux (On et Un) par voie.

Une étude détaillée de la modulation du PBM 1/89 a été réalisée [6]. Elle conclut à une modélisation de type modulation sinusoïdale simple avec un harmonique de rang 3.

Les sorties On pilotent les branches supérieures du pont de puissance de l'onduleur et les sorties Un sont conçues pour piloter les branches inférieures.

Figure 3.4 Modulation PBM 1/89

3.2.2.3 Gestion des impulsions

Le PBM 1/89 prévoit le paramétrage des durées minimales de conduction et de temps de garde. Néanmoins, cette mise en œuvre n'est pas apparue suffisamment fiable pour permettre d'envoyer directement ces impulsions sur les transistors. Les signaux Un ne sont donc pas utilisés.

Une interface de protection a été réalisée (Figure 3.5). En pratique, les trois signaux O1, O2, O3 de commande sont calibrés pour que les impulsions présentent une durée minimale (400 µs, signaux S11, S12, S13) [14]. Toutefois, ces durées ne sont pas appliquées en raison de la technologie bipolaire de l'onduleur. Ce paramètre prendrait toute son importance avec des transistors de type MOS.

Ta,b,c

Ta,b,c

6

Ordres de marche Défauts variateur

T3

T'3

T'2

T2

T'1

T1

S13

S12

S11

O3

O2

O1

Déblocage impulsions Gestion

marche/arrêt et défauts

Buffer Application

des temps de garde ALCT 01

Signaux PBM 1/89

Durée minimale d'impulsions

Figure 3.5 Interface commande - puissance

L'application des temps de garde consiste à partir du signal S11 à générer un signal S11r retardé de la valeur du temps mort (25 µs). Les signaux de commande T1 et T'1 du transistor Ta et de son complémentaire sont alors obtenus par les opérations logiques suivantes :

) . ( 11 11

11final S S r

S =

) ( 11 11

21final S S r

S = +

La Figure 3.6 donne une représentation de cette équation.

Les signaux prêts à être appliqués aux transistors sont alors stockés dans un buffer. Une logique de contrôle veille au blocage des impulsions pendant la séquence de démarrage et interrompt la commande en cas de défaut sur le banc d'essai.

TMLI

T'1= S11.S11r

T1= S11.S11r

temps Temps

morts S11r

S11

Figure 3.6 Génération des temps morts

3.2.2.4 Problèmes liés à la modulation de largeur d'impulsion

Si l'on considère le fonctionnement logiciel et matériel de l'ensemble carte DSP DS1002 - carte Alcatel (Figure 3.7), on constate que :

• L'algorithme de commande est séquencé par une horloge (timer1) qui envoie des interruptions au processeur.

La fonction appelée isr_t1 assure la mise à jour du modèle du contrôleur et le calcul des sorties.

• La carte de génération de la MLI appelle le processeur de manière périodique (intc04) mais indépendante de isr_t1.

isr_t1 Horloge commande

Timer1 PBM 1/89 int_c04

TMS320C30

DS1002 ALCT01

Horloge PWM

COCKPIT

TRACE

PC O1

O2

O3

Figure 3.7 Contrôle des interruptions – Cartes ALCT01 et DS1002

La génération de MLI fonctionne donc de manière asynchrone par rapport à l'algorithme de commande. Les conséquences sont les suivantes :

• un déphasage supplémentaire dû au blocage par la MLI venant s'ajouter au bloqueur d'ordre 0 en sortie de régulateur numérique,

• une différence de période des deux bloqueurs dans la mesure où les horloges de référence sont générées à partir de deux quartz différents.

Des relevés ont été effectués [6] qui mettent en évidence les harmoniques perturbateurs, essentiellement de rang 2, générés par ce type de fonctionnement, en particulier sur les courants de phase.

Ce fonctionnement entraîne de plus des retards qui sont préjudiciables à la robustesse de l'algorithme, ainsi qu'un aléa quant à la valeur de ce retard.

Un solution logicielle a été élaborée pour résoudre ce problème d'asynchronisme : utiliser l'interruption int_c04 pour contrôler l'algorithme de commande [14]. Elle est schématisée par la Figure 3.8.

• L'interruption PBM 1/89 (int_c04) est appelée toutes les 500 µs.

• Une fois sur deux, le timer 1 est réarmé pour lancer isr_t1 une milliseconde plus tard, ce qui synchronise les deux algorithmes.

Décomptage timer1

Tr T calcul DSP

1 1

TMLI TMLI

TMLI

1

Int_c04

Isr_t1

TMLI : Période de calcul de la MLI

Tr : Retard dû au temps de calcul et de transfert vers la MLI

1 : Intervalle de temps entre la fin du calcul et la prise en compte de la donnée par la MLI

Figure 3.8 Synchronisation des algorithmes MLI – Commmande

3.2.2.5 Adaptation de la carte Alcatel

La fréquence de MLI utilisée actuellement (1 kHz) limite le temps d'exécution total du programme implanté sur le DSP à environ 800 µs. Certaines commandes, gourmandes en temps de calcul (notamment le DTC), nécessitent une période de MLI plus faible.

Nous avons donc modifié la carte Alcatel ALCT 01 en ajoutant un diviseur de fréquence à l'horloge de base distribuée aux circuits PBM 1/89 par l'intermédiaire des drivers de ligne 74BCT2245 [22].

Le schéma fonctionnel de la carte d'adaptation est proposé Figure 3.9.

Quatre diviseurs sont disponibles : 1, 2, 4 et 8. La sélection peut être effectuée directement sur la carte par straps ou par deux inverseurs situés sur la face arrière du boîtier PX20.

Pour une fréquence de MLI fixée à 500 Hz, les inverseurs A et B doivent être en position "L"

(diviseur par 2).

L'utilisation d'un multiplexeur évite le passage des signaux d'horloge par des circuits de commutation mécaniques et limite ainsi la sensibilité de l'ensemble aux parasites.

Le schéma électronique complet est fourni en Annexe C.

Driver

Vers PBM1/89

B7

B0

A7

A0

Sélection diviseur

Y Horloge

ALCT01 20 MHz

E3 E1 E0

Multiplexeur E4

H

Diviseur /8 /4 /2

Figure 3.9 Adaptation horloge carte ALCT 01

3.3 Environnement de mesures

3.3.1 Instrumentation du banc

La commande des moteurs asynchrones nécessite généralement la mesure :

• des courants statoriques (deux des trois phases étant instrumentées, la troisième obtenue par soustraction),

• de la vitesse (la suppression de ce capteur motive d'ailleurs de nombreuses recherches).

Le banc d'essai a néanmoins été instrumenté avec d'autres capteurs qui permettent une meilleure évaluation du comportement du procédé (Figure 3.10) :

• capteurs de tensions (tensions stator, Ur tension redressée onduleur, Ua tension d'induit MCC),

• capteurs de courant Ia, courant d'induit MCC et Ir courant redressé onduleur,

• capteur de couple mécanique sur l'arbre moteur,

• capteurs de flux Φsa, Φsb,

• capteur de couple électromagnétique Γe

Une possibilité de pilotage du moteur asynchrone en U/f à partir du DSP via la carte de sortie DS2101 a également été prévue.

MCC MAS

D.T.

Carte filtre Consigne U/f

Gestion modes marche/arrêt

Consignes Vitesse/couple

ONDULEUR

VARIATEUR

MCC

Couple- mètre

Codeur optique

Carte DSP

DS1002

Carte CNA

DS2101

Carte PWM

ALCT01

Carte codeur DS3001

Carte CAN

DS2002 Φsa,Φsb,Γe

Γm

Isa, Usa

Isb, Usb

Ia, Ua Iex

ana

Ir, Ur

Figure 3.10 Instrumentation du banc

3.3.2 Capteurs

3.3.2.1 Capteur de flux et de couple électromagnétique

L'une des difficultés de la commande du moteur asynchrone réside dans la nécessité de reconstruire les flux qui ne sont pas mesurés dans la pratique.

Dans le but d'évaluer la performance des observateurs et des contrôleurs réalisés par certains utilisateurs du banc, il est paru souhaitable de disposer d'une information sur les flux effectivement créés dans le moteur.

Une solution simple a été mise en œuvre au laboratoire : elle consiste à insérer sous les pôles du stator des spires de mesure de la tension induite, ce qui permet par intégration de reconstruire le flux statorique. Cette technique pose toutefois deux types de problèmes :

• L'intégration du signal de mesure est en pratique réalisée à l'aide d'un filtrage passe-bas. Il en résulte que les mesures ne seront exploitables que pour des fréquences de signaux, et donc de vitesse rotorique, suffisante.

• La mesure est dépendante de la réalisation technologique de l'enroulement de mesure (emplacement du brin dans l'encoche).

La connaissance des flux statoriques permet aisément de construire une image du couple électromagnétique à l'aide de la formule :

(

ba a b

)

e = Φ i −Φ i

Γ 3

où Φa, Φb et ia, ib sont des grandeurs par phase.

3.3.2.2 Capteur de vitesse

La vitesse est évaluée par dérivation de la position fournie par un codeur optique. L'interface logicielle doit prendre en compte le dépassement de capacité du registre mémorisant la position.

3.4 Evaluation des retards

3.4.1 Retards dus à l'onduleur et au temps de calcul

Le retard statistique dû à l'onduleur est en moyenne équivalent à une demi-période d'échantillonnnage.

Le retard dû au temps de calcul est illustré par la Figure 3.11.

fin de calcul fin de

calcul

Commande Calcul commande

Sortie du procédé

t1+2Te

t0+2Te

t1+Te

t0+Te

t1

t0

t

t

t Figure 3.11 Retard dû au temps de calcul

Le retard est théoriquement équivalent à une période d'échantillonnage. Toutefois, compte tenu des caractéristiques particulières du circuit PBM 1/89, il peut dans certains cas être réduit à une demi-période d'échantillonnage.

Ces retards devront être pris en compte lors de la simulation (Figure 3.12).

Echantillonnage Filtre anti-repliement

Mesures

Modèle moteur asynchrone

e

-Te/2.s

e

-Te.s

V Vsα

Retard PBM 1/89 Retard

temps de calcul Bloqueur

ordre 0

Figure 3.12 Présentation synoptique des différents retards

3.4.2 Retards dus au filtrage des mesures

Les mesures sont échantillonnées et destinées à un traitement numérique. Elles sont donc soumises au problème de repliement de spectre. Les convertisseurs numériques-analogiques sont donc précédés de filtres anti-repliement (Figure 3.12).

Or, ces filtres génèrent des retards de phase incompatibles avec les dynamiques demandées et conduisent à l'instabilité à haute vitesse.

Il faudra donc tenir compte de leur présence dans la synthèse de la commande.

Afin de compenser les déphasages induits, il est nécessaire d'identifier correctement le filtre utilisé.

Identification du filtre anti-repliement

Le circuit MAX280 fabriqué par Maxim [25] est un filtre passe-bas du 5e ordre qui a été choisi pour son absence d'offset et sa bande passante (jusqu'à 20 kHz). Toutefois, la technologie utilisée (4e ordre à capacité commutée associé à un circuit RC) ne permet pas a priori de connaître son comportement précis dans la bande de fréquence qui nous intéresse.

L'analyse des courbes de Bode du MAX280, relevées à partir d'essais en laboratoire, a permis d'assimiler le comportement du circuit à celui d'un filtre de Butterworth du 5e ordre (Figure 3.13), à la condition de choisir le couple (R,C) tel que [25] :

RC fc

= π 2

1 62 , 1

Un mauvais réglage du filtre RC entraîne une résonance près de la fréquence de coupure.

0 50 100 150 200 250 300 350

-20 -18 -16 -14 -12 -10 -8 -6 -4 -2 0

Frequence (rad/sec)

Phase (deg)

en continu : relevé (fréquence,phase) du MAX280 pour fcoupure=500 Hz et fclk=50 kHz en pointillé : filtre de Butterworth du 5e ordre théorique

Figure 3.13 Courbes MAX280 et filtre de Butterworth du 5e ordre

Dans la bande de fréquence qui nous intéresse, c'est à dire jusqu'à ω = ωs ≈ pΩnom (p nombre de paires de pôles, Ωnom = 1500 tr/mn) soit 300 rad/s, nous avons la relation linéaire suivante :

Pour le MAX280 : ϕdeg ≈−0,063.ωs, soit ϕrad ≈−1,1.103s Pour le filtre de Butterworth théorique : ϕdeg ≈−0,059.ωs, soit ϕrad ≈−1,03.103s

Ces équations seront utilisées pour le passage des repères (α,β) à (d,q), en simulation et dans les schémas temps réels implantés sur le banc.

3.5 Environnement dSPACE

Le système informatique dSPACE est construit autour du processeur de signal TMS320C30 de la société Texas Instruments..

L'unité centrale DS1002 est située dans un coffret type PX20, qui peut être considéré comme une extension du PC (Figure 3.14).

Les échanges d'informations entre la carte DS1002 et les autres cartes d'interface sont réalisés par l'intermédiaire du bus rapide PHS-Bus (16,6 MB/s) déjà mentionné.

Carte d'extension

PC PHS-Bus

ALCT01 Alcatel PWM

DS4001

Entrées-sorties numériques DS2002

Entrées analogiques DS3001 Codeur incrémental DS2101

Sorties analogiques DS1002

Unité centrale DSP

Coffret PX 20

Figure 3.14 Environnement dSPACE

Les principales caractéristiques des cartes d'interface sont les suivantes :

• Carte DS2101 – Sorties analogiques – 5 convertisseurs N/A 12 bits parallèles,

– 3 µs de temps d'établissement à ± 0,01% de la pleine échelle, – gammes de tension de sortie programmables,

• Carte DS2002 - Entrées analogiques

–deux convertisseurs A/N 16 bits séparés avec chacun 16 voies multiplexées, – résolution programmable : 4, 8, 12, 16 bits,

– temps de conversion :1,5- 2,7-3,8- 5 µs suivant la résolution demandée, – gammes de tension d'entrée programmables : ± 5 V, ± 10 V.

• Carte DS3001 - Codeur incrémental – 5 voies codeur indépendantes,

– entrées différentielles (RS 422) ou simples (TTL), – résolution : 24 bits,

– fréquence de comptage maximum : 5 MHz, – multiplication par 4,

– étage filtre du 4ème ordre.

• Carte DS4001 -Entrées-Sorties numériques

– 32 E/S compatibles TTL, configurables en entrée ou en sortie par blocs de 8, –5 compteurs/timers 16 bits indépendants avec possibilité d'interruptions, – base de temps 5 Mhz avec 200 ns de résolution.

Chapitre 4

Simulation de la commande vectorielle

4.1 Présentation de l'environnement M

ATLAB

/S

IMULINK

MATLAB est un logiciel destiné principalement au calcul scientifique, à la modélisation et à la simulation [15]. Le noyau de calcul est associé à l'environnement SIMULINK, permettant une modélisation basée sur des schémas-blocs [16].

Des bibliothèques spécialisées sont disponibles (les "Toolboxes") pour la plupart des domaines scientifiques nécessitant des moyens de calcul importants : automatique, traitement de signal, mathématiques appliquées, télécommunications, etc.

Des modules temps réel, développés autour des produits dSPACE (Real Time Interface, TRACE, COCKPIT) sont également proposés et rendent l'environnement de travail particulièrement attractif : l'utilisateur dispose en effet de tous les outils nécessaires à l'élaboration d'une application sur procédé réel, de la simulation à la supervision.

Les simulations proposées sont réalisées sous MATLAB version 4.2.c1. Le passage aux versions 5.x nécessite quelques adaptations mineures (en particulier la recompilation des S-functions écrites en C).

4.2 Modélisation sous M

ATLAB

/S

IMULINK

4.2.1 Introduction aux

S-Functions

L'élaboration d'un algorithme sous MATLAB/SIMULINK est basée sur une description arborescente par schémas-blocs.

Chaque bloc fonctionnel peut être décrit de trois manières :

• graphiquement. C'est la méthode la plus courante et la plus facile à utiliser (Figure 4.1).

Scope Mux

Mux y(n)=Cx(n)+Du(n)

x(n+1)=Ax(n)+Bu(n) Discrete State-Space Signal

Generator

Figure 4.1 Représentation graphique sous Simulink

• par une S-function (fonction système) écrite en langage MATLAB standard.

L'avantage de ce type de description est la simplicité. Par contre, la simulation est plus lente et, surtout, une S-function de ce type n'est pas compilable par le module temps réel Real Time Workshop (RTW).

• par une S-function écrite en langage C. Celle-ci doit être compilée avant utilisation (fonction cmex). Elle a pour principales caractéristiques une écriture plus complexe, une simulation rapide et une compatibilité avec RTW.

La Figure 4.2 illustre le lien entre un bloc S-function, sa boîte de dialogue et le fichier source définissant la fonction réalisée par le bloc.

Fichier source S-function

Fichier Matlab Fichier C MEX

ou

Figure 4.2 Lien entre S-function et fichier source

L'utilisation de S-functions est incontournable pour la description de processus complexes, difficilement représentables graphiquement ou encore pour les systèmes modélisés sous forme de jeu d'équations. Pour la modélisation du moteur asynchrone, nous utiliserons donc des S-functions écrites en C.

Nous utilisons le compilateur WATCOM C/C++ v11, lancé sous MATLAB 4.2c.1 par la commande !cmex. Un fichier C-MEX est généré (Figure 4.3). Celui-ci pourra être appelé par la S-function correspondante.

Fichier moteur.C

commande

!cmex sous Matlab

Fichier moteur.MEX Compilateur

Watcom

Figure 4.3 Génération d'un fichier C-MEX

4.2.2 Fonctionnement d'une

S-Function

Tout bloc S-function contenu dans un schéma Simulink possède les caractéristiques suivantes [17] : un vecteur d'entrée u, un vecteur de sortie y et un vecteur d'état x (Figure 4.4).

état x sortie y

entrée u

Figure 4.4 Fonctionnement d'une S-function

Le vecteur d'état peut être discret, continu ou une combinaison des deux.

Le vecteur d'état peut être discret, continu ou une combinaison des deux.