Académique Documents
Professionnel Documents
Culture Documents
Commandes électriques
Matière : EC943
PARTIE A
L’objectif de cette partie consiste à s’initier au prototypage rapide et au contrôle en temps réel à travers
l’utilisation du système dSPACE et du logiciel ControlDesk.
La maitrise de l’utilisation de ce système est primordiale pour l’implantation et la validation d’application
dans le domaine de la commande électrique et particulièrement dans celui des machines tournantes.
Version : V_03
2022-2023
Sommaire
TP 00 (01 semaine)
Prise en main du système dSPACE 1104, de l’interface RTI dans Simulink et ControlDesk
Next Generation 5.4
TP 01 (01 semaine)
Mise œuvre des convertisseurs numérique/analogique (DAC) et analogique/numérique
(ADC)
TP 02 (02 semaines)
Mise œuvre des capteurs de courant, de tension et de position / vitesse
Démarrage d’un moteur asynchrone - Démarrage MCC avec hacheur
TP 03 (02 semaines)
Implémentation des techniques MLI pour onduleur triphasé et hacheur
Démarrage MAS avec onduleur- Démarrage MCC avec hacheur
TP 04 (02 semaines)
Implémentation de la commande d’un moteur à courant continu
Régulation cascade par régulateur PI
Commande en couple et en vitesse (en position)
Annexes A
A1. Description du banc d’essai
A2. Description de l’onduleur Semikron
A3. Programme de récupération de données sous Matlab
Modalités
Remarques :
• Il est possible (et conseillé) de compléter et d’approfondir l’étude du TP par un travail personnel.
• L’évaluation de ce TP tient compte du compte rendu et du travail effectué lors de la séance du TP
(Des courbes "brutes" sans commentaire ou des résultats non significatifs peuvent justifier à eux seul
une note de TP très inférieure à la moyenne).
L’implémentation d’une commande temps réel, en utilisant la carte dSPACE DS1104 et le logiciel
Matlab, nécessite :
- la carte de contrôle dSPACE DS1104 ;
- la licence sous forme de clé USB (Dongle) ;
- la licence software (fichier Licence.dsp) ;
- le fichier Keys.dsp ; Figure 3. Dongle.
- le panneau de connexion CP1104 ;
- de la bibliothèque spécifique « dSPACE RTI1104 », complémentaire à la bibliothèque de base de
Simulink, regroupant les fonctions utiles pour le prototypage rapide et le contrôle en temps réel ;
- du logiciel ControlDesk permettant la création d’interface utilisateur pour la visualisation et
l’acquisition de données.
Après la construction du système de commande en utilisant les blocs de Simulink et sa simulation
dans différents scénarios, les principales étapes à suivre pour le prototypage rapide d’une loi de
commande et le contrôle temps réel sont :
1. Implémentation : c’est l’étape de construction du système de commande avec la création
de la loi de contrôle à prototyper dans un fichier Simulink à partir de la bibliothèque de Simulink
et la librairie RTI1104.
2. Compilation : Cette étape permet la génération d’un code en langage machine (code C) à
partir du fichier Simulink à l’aide de la boite à outils Matlab RealTime Workshop Toolbox. Ce
code, une fois généré sera alors stocké dans le DSP de la carte dSPACE.
3. Contrôle en temps réel : L’exécution du modèle en temps réel à travers la carte DS1104 et
son contrôle peut s’effectuer à partir de Simulink External Mode Control ou le plus souvent à
partir d’une interface utilisateur créée avec le logiciel ControlDesk.
La carte DS1104 dispose d’un processeur principal à virgule flottante, le MPC8240 avec une horloge
interne à 250 MHz, il a une capacité mémoire de 8Mo en Flash et de 32Mo en SDRAM, Il possède
également un DSP esclave, le TMS320F240 DSP, utilisé pour générer les signaux PWM 1.
1
Pour plus de détails sur la carte DS1104, consulter la documentation en ligne en cliquant sur le lien suivant :
http://www.sport-transfer.eu/media/blfa_files/wymiary_boiska.pdf
La carte DS104 (Master PPC) possède :
• 8 convertisseurs analogiques numériques ADC : dont la tension d’entrée est comprise entre
-10V et +10V ;
• 8 convertisseurs numériques analogiques DAC : dont la tension délivrée est comprise entre -
10V et +10V.
Elle dispose de plusieurs interfaces, notamment des entrées/sorties numériques (Figure 4) :
• une interface parallèle 20 bits,
• deux entrées incrémentales, (capteurs de vitesse incrémentaux),
• des interfaces séries (RS232 / RS422 / RS485),
• 20 entrées-sorties numériques,
• 3 timers (32 bits) pouvant fonctionner de manière indépendante.
Remarque :
Les signaux PWM générés par la carte sont des signaux de type TTL, de niveau de tension compris
entre 0 et 5V.
Le master PPC contrôle deux types de convertisseurs analogiques / numériques (ADC).
• Un convertisseur A/D (ADC1) multiplexé pour les signaux (ADCH1 à ADCH4)
- Résolution : 16 bits ;
- Plage de tension : ±10 V ;
- Marge d’erreur Offset : ± 5 mV ;
- Marge d’erreur sur le gain : ± 0,25% ;
- Rapport signal sur bruit : SNR >80 dB (à 10 kHz).
• Quatre convertisseurs A/D (ADC2 … ADC5) pour les signaux (ADCH5 à ADCH8)
- Résolution : 12 bits ;
- Plage de tension d’entrée : ±10 V ;
- Marge d’erreur Offset : ± 5 mV ;
- Marge d’erreur sur le gain : ± 0,5% ;
- Rapport signal sur bruit > 70 dB.
Lorsqu’on place un bloc ADC dans le programme Simulink, on doit tenir compte du fait que toutes les
entrées analogiques à l’entrée de la carte dSPACE sont multipliées par un gain de 0,1 pour avoir des
signaux compris en -1V et +1V. Il faut donc multiplier par le gain 10 toutes les entrées analogiques
à chaque que l’on utilise les blocs ADC.
Après avoir placé le bloc ADC dans le programme, il faut choisir le canal (channel) sur lequel on veut
connecter le signal (Channel number).
En double cliquant sur le bloc, on obtient la fenêtre de la figure 5.
Figure 5.
Les caractéristiques des canaux Digital to Analogic (Signaux DACH1 à DACH8) sont :
- Résolution 16 bits,
- Plage de tension des sorties analogiques ±10 V ( 5 mA),
- Plage d’erreur Offset ± 1 mV,
- Plage d’erreur sur le gain ± 0.1%,
- Rapport signal sur bruit > 80 dB (à 10 kHz).
De la même façon, lorsqu’on place un bloc DAC dans le programme Simulink, on doit diviser par un
gain de 10 pour avoir des signaux compris en -1V et +1V. Il faut également choisir le canal sur lequel
on veut obtenir le signal (Channel number).
En double cliquant sur le bloc, on obtient la fenêtre de la figure 6.
Figure 6.
Figure 7.
2
Exemple : TP1_G1_B2_AB, pour TP1, Groupe G1, Binome 2, AB initiales du nom et prénom d’un étudiant du binôme.
Une fois la carte choisie et activée, on obtient le message suivant :
Figure 8.
Figure 11.
Dans l’interface Simulink, réaliser le modèle représenté sur la figure 12, en ajoutant les blocs
fonctionnels à partir de la bibliothèque Simulink et de la librairie Master PPC.
Figure 3.
Figure 4.
Figure 5.
Aller dans Hardware implementation, puis Device Vendor, choisir : Generic, Device Type : Custum,
Byte ordering : Big Endian, et pour Signed Integer division rounds to : Zero.
Figure 6.
Ensuite, aller dans Code Generation, puis choisir dans System target file, le fichier rti1104.tlc, et pour
Language, choisir C (pour générer un code en langage C), puis cliquer sur Apply.
Figure 7.
Une fois le schéma Simulink terminé et sauvegardé, l'étape suivante consiste à générer le code
associé qui sera sauvegardé automatiquement dans le DSP.
Pour lancer la compilation du programme et générer le code C, cliquer sur control+B (ou en cliquer sur
l’icône ).
Figure 8.
Le code C sera créé, compilé et envoyé vers la carte dSPACE. Un fichier (.sdf) sera généré dans le
dossier de travail. Ce fichier contient toutes les variables utilisées dans votre programme Simulink.
Pour vérifier que la procédure de génération de code s’est bien déroulée, vous devrez retrouver le
message suivant dans la fenêtre de commande Matlab :
### Successful completion of Real-Time Workshop build procedure for model: test01 ***
Finished RTI build procedure for model test01_tr
Les variables sont représentées sous forme d’arbre en correspondance avec les blocs et sous-blocs du
programme Simulink.
Il existe trois modes de fonctionnement sous ControlDesk :
- le mode Layouting : Mode de construction de Layout,
- le mode Standard : Mode permettant de tester la validité des connexions entre le Layout et les
variables Simulink.
- le mode Measuring : Mode d’exécution du programme contenu dans le DSP avec le Layout
comme IHM (Interface Homme Machine).
Figure 9.
Figure 10.
La fenêtre de définition du projet s’ouvre. Saisir le nom du projet, puis cliquer sur suivant (Next).
Figure 11.
Figure 12.
Dans la fenêtre Select variable description, choisir le fichier (.sdf) correspondant (Fichier généré
lors de l’exécution de votre programme Simulink) et cliquer sur Finish.
Le fichier (.sdf) est utilisé par ControlDesk pour lier les variables du fichier Simulink aux variables
affichées ou contrôlées dans le Layout.
Figure 13.
Le projet est créé. Ensuite, il faut créer un (ou plusieurs) Layout associé à ce projet.
Un Layout est une interface graphique à laquelle on peut ajouter divers instruments de contrôle et/ou
de visualisation, afin de visualiser et/ou modifier en temps réel les différentes variables du projet.
Les variables disponibles via Simulink peuvent être vues dans le bas de la fenêtre des variables (Figure
23). La fenêtre (Onglet Projet) montre le fichier (.sdf) sélectionné pour le chargement.
Remarque
Lors de toute modification au modèle Simulink d'origine, en cliquant sur l'onglet Projet, faites un clic
droit sur le fichier (sdf), recharger la description de la variable. Vous pouvez mettre à jour les variables
à leurs dernières valeurs sans redémarrer dSPACE.
Exemple, on peut modifier en temps réel les paramètres d’un correcteur, modifier une consigne, etc…
Fenêtre de
navigation
(Navigator)
Fenêtre
contenant les
instruments
Aire de travail (Instrument
(Layout) Selector)
Fenêtre des
variables Simulink
Fichier
(.sdf)
Figure 14.
Le Layout est créé dans l’espace de travail. Ensuite il faut y ajouter des instruments.
Si l’une de ces fenêtres n’est plus visible à l’écran, on peut l’ouvrir dans View puis Controlbar.
Figure 15
Figure 165.
• Animation mode (Fonctionnement en temps réel)
Afin de lancer l’exécution du programme, cliquer sur Go Online (Figure 25).
Figure 175.
Pour lancer l’exécution du modèle, l’acquisition des mesures et agir sur le programme Simulink,
utiliser le mode Measuring en cliquant sur le bouton Start Measuring (Figure 26).
Figure 186.
Attention, avant de recompiler (Build) sous Matlab/Simulink, il faut impérativement désactiver le mode
Online en cliquant sur Go Offline (Figure 27).
Figure 197.
A la fin de la compilation, il sera possible de remettre le mode Online pour charger les modifications.
• Acquisition de données
ControlDesk offre la possibilité d’effectuer des acquisitions de données.
Pour augmenter la durée de visualisation des mesures, aller dans Measurement Configuration >
Triggers > Duration Trigger1, puis changer la durée dans Duration, (Par exemple inscriver 1s).
Figure 20.
On peut à tout moment modifier les propriétés des axes X et Y. Pour ce faire, cliquer le bouton droit,
puis sur Properties. Aller dans la fenêtre Properties, Axis, dans Scaling mode choisir fixed, puis
ensuite modifiez les valeurs max et min.
Figure 21.
Figure 22.
Figure 23.
Une fois que vous avez exporté le fichier (.mat) (Nommer le fichier : test01.mat, sauvegarder le dans
le dossier de travail), vous pouvez le charger dans l’espace de travail de Matlab et extraire les variables
en utilisant le programme de récupération des données suivant :
==========================================================
% Programme 1 de récupération de données sous Matlab
% Nom du fichier test01.mat
% Le fichier doit être placé dans le dossier de travail de Matlab
==========================================================
%
load test01.mat; % Pour charger les données, test01 est le nom de fichier (.mat)
%
temps = test01.X.Data; % Création du vecteur temps
%
variable_1=test01.Y(1).Data; % Récupération des variables
variable_2=test01.Y(2).Data;
% ainsi de suite jusqu’à
variable_n=test01.Y(n).Data; % Variable numéro n (n : Nombre de variables enregistrées)
% ********************************** %
% ****** Tracé des courbes ***** %
% ********************************** %
figure 1;
plot(temps,variable_1); grid;
figure 2;
plot(temps, variable_2); grid;
% Fin
=====================================================
Fermer les applications ouvertes, éteindre l’ordinateur et couper l’alimentation du poste de travail.
Ranger le poste de travail et le remettre le dans l’état dans lequel vous l’avez trouvé en début de séance.
TP 01 : Mise œuvre des convertisseurs numérique/analogique (DAC)
et analogique/numérique (ADC)
1. Objectifs
L’objectif de ce TP consiste à utiliser la carte dSPACE DS1104 et à se familiariser à l’emploi des
convertisseurs analogique/numérique (ADC) et numérique/analogique (DAC).
- Figure 1.
- Compiler le programme afin de générer le code C en cliquant sur l’icône (ou en tapant
[Control+B] au clavier).
- Le code C sera créé, compilé et envoyé à la carte dSPACE. Un fichier test_ordre1.sdf sera
ensuite généré dans le Dossier de travail (Ce fichier contient toutes les variables utilisées dans
votre programme Simulink).
- Pour vérifier que la procédure de génération de code s’est bien déroulée, vous devrez retrouver
le message suivant dans la fenêtre de commande Matlab :
### Successful completion of Real-Time Workshop build procedure for model: test01 ***
Finished RTI build procedure for model test_ordre1_tr
3
Exemple : TP1_G1_SG12_AB, pour TP1, Groupe G1, Sous-groupe G12, PP, AA : AB initiales du nom et prénom d’un étudiant
du binôme.
2.1 Implémentation du programme et visualisation des sorties du système avec ControlDesk
- Lancer l’application ControlDesk et sélectionner New Project + Experiment dans l’interface
d’accueil.
- Saisir un nom (par exemple : Project_001), et indiquer le dossier de travail
TP1_Groupe_S/Groupe_Initiales, dans lequel sera sauvegarder le projet.
- Choisir le fichier (test_ordre1.sdf) correspondant, en se référant au dossier de travail, puis
cliquer sur Finish.
- Un onglet supplémentaire s’ouvre dans le cadre inférieur (Variables) portant le nom du fichier
(test_ordre1.sdf). Dans cet onglet, vous trouverez une arborescence (Variable browser)
commençant par le nom de votre programme puis en dessous le sous Dossier « Model root ».
- Ouvrir ce niveau, vous devez retrouver les noms des variables de votre programme Simulink.
Cela va permettre de créer un lien entre ces variables et l’interface ControlDesk.
- Insérer, depuis l’onglet du menu Instrument Selector, les instruments virtuels nécessaires pour
réaliser votre interface « Tableau de bord », à titre d’exemple :
- un bouton glissant Slider Control, pour régler les paramètres du générateur PULSE
(Amplitude, période, rapport cyclique, déphasage) ;
- un bouton radio Radio Button pour piloter le multiport (choix d’entrée) ;
- des entrées numériques Numeric input pour régler les paramètres du filtre,
- un Plotter pour visualiser les différents signaux.
- Au final, vous obtiendrez l’interface suivante (Figure 2) :
- Figure 2.
Figure 3.
2.2 Génération d’un signal numérique (Pulse generator)
• Mesures
- En sortie du panneau de contrôle, connecter la sortie DACH1 à un oscilloscope numérique pour
visualiser le signal de sortie du filtre.
- Sélectionner l’entrée 1 du commutateur multiport (Multi-port Switch).
- Lancer l’exécution du modèle et l’acquisition des mesures en cliquant sur Start Measuring.
- Visualiser les signaux d’entrée (Pulse Generator) et de sortie du filtre à l’aide du Plotter et de
l’oscilloscope.
- Modifier les paramètres d’entrée du générateur Pulse Generator (Amplitude, période et rapport
cyclique) et visualiser les différents signaux.
- Que peut-on conclure ?
• Acquisition et sauvegarde
Fermer les applications ouvertes, éteindre l’ordinateur et couper l’alimentation du poste de travail.
Ranger le poste de travail et le remettre le dans l’état dans lequel vous l’avez trouvé en début de séance.
TP 02 : Mise œuvre des capteurs de courant, de tension et de Position/vitesse
Démarrages d’un moteur asynchrone et d’un moteur à courant continu
1. Objectifs
L’objectif de ce TP consiste à :
- apprendre à utiliser les capteurs de courant, de tension et de vitesse en association avec la carte
dSPACE DS1104 ;
- faire l’acquisition et à visualiser à l’aide du logiciel ControlDesk les courbes temporelles des
variables courant, tension et vitesse lors des démarrages d’un moteur asynchrone et d’un moteur
à courant continu.
- sauvegarder et à extraire à l’aide du logiciel Matlab les variables courants, tensions et vitesse en
utilisant un programme (script) de récupération.
2. Matériel nécessaire
Il est constitué principalement :
- 01 alimentation triphasé variable (3 x 0 à 430 Volts AC / 5A),
- 01 machine asynchrone triphasé à cage 400/230 V-50Hz,
- 01 machine à courant continu,
- 02 capteurs de courant (sondes Fluke i30s) de rapport 100 mV/A, pour la mesure des courants ia
et ib circulant dans les phases A et B.
- 01 capteur de tension (sonde différentielle Metrix MX 9030) de rapport 1/20 et 1/200 pour la mesure
de la tension ubc entre les phases A et B du moteur,
- 01 capteur incrémental 1024 points pour la mesure de la vitesse (ou de la position du rotor),
- 01 voltmètre, 01 ampèremètre et 01 tachymètre (pour la vérification de la mesure de la vitesse),
- Le système dSPACE DS1104 pour le prototypage rapide et le contrôle en temps réel,
- d’un ordinateur hôte avec le logiciel Matlab/Simulink, la bibliothèque « dSPACE RTI1104 » et
l’environnement ControlDesk NG.
Figure 1.
Remarque : La tension, les courants et la vitesse de rotation sont mesurés pour des objectifs de
visualisation et d’analyse et pas de commande.
Le rôle des capteurs dans le montage est d’effectuer les mesures, mais aussi de réaliser l’isolation
galvanique entre le circuit de puissance du moteur et la carte dSPACE DS1104.
- Les courants ia et ib circulant dans les phases A et B seront mesurés, le troisième courant ic circulant
dans la phase C ne sera pas mesuré, mais déduit des deux autres courants à l’aide de la relation :
ia + ib + ic = 0.
- La fréquence d'échantillonnage fe choisie sera de 10 kHz (Te = 0,1 ms) (Il faut que fe >> 50 Hz).
Les sorties des capteurs seront connectées aux entrées suivantes du panneau de connexion de la carte
DS1104 :
- Tension ubc : Entrée ADC, canal ADCH5 ; (ubc : Tension mesurée entre les phases B et C)
- Courant ia : Entrée ADC, canal ADCH6 ;
- Courant ib : Entrée ADC, canal ADCH7 ;
- Vitesse de rotation : Entrée Inc1, (N en tr/mn) et en rad/s).
Les mesures doivent ensuite être filtrées pour éliminer les bruits de mesure, deux techniques sont
couramment mises en œuvre :
- L’emploi d’un filtre passe bas ayant une fréquence de coupure convenable. Ce filtre doit être
dimensionné afin d’être transparent pour la plage des fréquences de fonctionnement possibles
(par exemple,c = 1000 rad/s => fc 160 rad/s). Le schéma complet des mesures est illustré par
la figure 3.
4
Présence d’une valeur en sortie du capteur, lorsque la grandeur à mesurée est nulle
- L’emploi d’un bloc permettant de lisser les mesures par le calcul de la moyenne des n derniers
échantillons. Ce bloc peut être ajouté au modèle à l'aide d'un sub-system, comme montré sur la
figure 4.
De plus les capteurs de mesures sont généralement affectés d’offset. Dans les applications où ces
défauts ne peuvent être négligés par rapports à l’amplitude de la grandeur mesurée, il faut les
déterminer, puis les éliminer avant l’exploitation des mesures.
Figure 8
Dans ce travail, le bloc ‘Index’ ne joue aucun rôle à part l’activation de la détection du signal Z
d’initialisation. Sa sortie n’est pas exploitée.
c. Adaptation des unités des mesures (Figure 6)
Le nombre d’impulsions (points) par tour de l’encodeur est N=1024 points (1000), d’où :
où nencod est la valeur du conteur incrémental activé par les signaux encodeurs.
La carte permet la détection des fronts montants et descendants des signaux A et B.
Par conséquence, nous avons les résultats suivants :
• Résolution : 4×N = 4000
• Précision :
Te est la période d’échantillonnage (la valeur choisie dans cet travail est Te = 10-4 s).
Afin d’alléger la procédure de calcul, les deux gains sont introduits en valeurs numériques.
5
Exemple : TP1_G1_B2_AB, pour TP1, Groupe G1, Binome 2, PP, AB initiales du nom et prénom d’un étudiant du binôme.
Figure 9
Figure 10.
La fréquence d'échantillonnage fe choisie sera de 10 kHz (Te = 0,1 ms) (Il faut que fe >> 50 Hz).
Les sorties des capteurs seront connectées aux entrées suivantes du panneau de connexion de la carte
DS1104 :
- Tension UDC : Entrée ADC, canal ADCH5 ; (UDC : Tension d’induit)
- Courant Ia : Entrée ADC, canal ADCH6 ;
- Vitesse de rotation : Entrée Inc1, (N en tr/mn) et en rad/s).
Uex et Iex sont respectivement la tension d’alimentation de l’inducteur et l’intensité du courant
d’excitation.
Fermer les applications ouvertes, éteindre l’ordinateur et couper l’alimentation du poste de travail.
Ranger le poste de travail et le remettre le dans l’état dans lequel vous l’avez trouvé en début de séance.
Annexes
Partie A
1. Caractéristiques de la carte dSPACE DS1104
Principales fonctions
• The i30s current clamp is based on Hall Effect technology for use in measurement of
both DC and AC current.
• The current clamp may be used in conjunction with oscilloscopes and other suitable
recording instruments for accurate non-intrusive current measurement.
• Current range: 30 mA to 30 A DC, 30 mA to 20 A AC rms
• Frequency range: DC to 100 kHz (-0.5 dB)
• CAT III 300 V safety rating
Caractéristiques techniques :
Bande passante : 30 MHz
Rapports de tension : 1/20 et 1/200
Entrée : 1 voie différentielle / cordons banane amovibles
Plage de tension différentielle d´entrée : ± 0,1V à ± 600V
Impédance d´entrée : 2MOHM - 6pF
Réjection de mode commun : 80dB à 50 Hz, 50dB à 1 MHz
Sortie Oscilloscope : ± 3V chargée par 1 MOHM, câble BNC 1,10m environ
Alimentation/Autonomie : 1 pile 9V type 6LF22 / 18 heures
Sécurité/CEM : IEC 61010-1, Cat.IV - 600V, CEM selon NF EN 61326-1
Dimensions : 163 x 62 x 40 mm
Poids : 195 g avec pile
4 Capteur de courant à effet Hall LEM LA55-P
✓ Rapport de tours 70:1
✓ Technologie de détection Boucle fermée
✓ Tension d'alimentation 12→15 V
✓ Courant d'entrée 70A
✓ Courant de sortie 50 mArms
✓ Hauteur hors tout 27.6mm
✓ Largeur hors tout 36.6mm
✓ Profondeur hors tout 14.45mm
✓ Température minimum -40°C
✓ Température maximum +85°C
✓ Série LA
✓ Type de montage Montage sur CI
Principe d'utilisation
Puisque l'effet Hall est utilisé pour mesurer le courant, le câble qui véhicule le courant doit passer à
travers le noyau magnétique (trou prévu dans le boîtier à cet effet).
Liste des extensions des différents types de fichiers utilisées sur Control Desk
.cdx : projet
.csv : fichier d’acquisition de mesures au format ASCII
.idf : fichier d’acquisition de mesure en mode Stream to Disk
.lay : layout
.mat : fichier d’acquisition de mesures pouvant être chargées sur Matlab
.ppc : application pouvant être chargée dans le DSP
.sdf : fichier des variables qui vont être récupérées depuis Matlab