Vous êtes sur la page 1sur 147

Convertisseurs d

electronique de puissance et syst`


emes
num
eriques en a
eronautique : application au radar
m
et
eo
Cedric Milleret

To cite this version:


Cedric Milleret. Convertisseurs delectronique de puissance et syst`emes numeriques en
aeronautique : application au radar meteo. Sciences de lingenieur [physics]. Universite JosephFourier - Grenoble I, 2009. Francais. <tel-00379410>

HAL Id: tel-00379410


https://tel.archives-ouvertes.fr/tel-00379410
Submitted on 28 Apr 2009

HAL is a multi-disciplinary open access


archive for the deposit and dissemination of scientific research documents, whether they are published or not. The documents may come from
teaching and research institutions in France or
abroad, or from public or private research centers.

Larchive ouverte pluridisciplinaire HAL, est


destinee au depot et `a la diffusion de documents
scientifiques de niveau recherche, publies ou non,
emanant des etablissements denseignement et de
recherche francais ou etrangers, des laboratoires
publics ou prives.

Universit Joseph Fourrier


N attribu par la bibliothque
/__/__/__/__/__/__/__/__/__/__/
DOCTORAT
Spcialit : Gnie Electrique
Effectu au Laboratoire de Gnie Electrique de Grenoble (G2Elab LEG)
UMR 5269
Dans le cadre de lcole doctorale Electronique, Electrotechnique, Automatique,
Tlcommunication, Signal.
Et
Effectu Thales Systmes Aroports Brest
EWS/I2M - DDT MPS - Alimentations
Dans le cadre de projets civils en cours
Prsent et soutenu par
Cdric MILLERET
Le 5 fvrier 2009.

Titre :

Convertisseurs dlectronique de puissance et systmes


numriques en aronautique : application au radar mto
JURY
M. Philippe LEMOIGNE
M. Bernard MULTON
M. Grard ROJAT
M. James ROUDET
M. Pierre-Olivier JEANNIN
M. Emmanuel TOUTAIN
M. Arnaud MAHE
M. Herv STEPHAN
M. Jean-Paul ARTIS

Prsident
Rapporteur
Rapporteur
Directeur de thse
Encadrant universitaire
Encadrant universitaire
Encadrant industriel
Encadrant industriel
Responsable projet

Laboratoire L2EP, Lille


Laboratoire SATIE, ENS Cachan
Laboratoire Ampre, UCB Lyon
Laboratoire G2Elab, Grenoble
Laboratoire G2Elab, Grenoble
Laboratoire G2Elab, Grenoble
Thales Systmes Aroports, Brest
Thales Systmes Aroports, Brest
Thales Systmes Aroports, Brest

Titre : Convertisseurs dlectronique de puissance et systmes numriques en


aronautique, application au radar mto.
Rsum :
En aronautique civile, les systmes lectriques qui composent lavion sont de plus en plus
nombreux, de par laccroissement des fonctionnalits, des besoins des usagers (confort), mais
aussi par le besoin damliorer les performances des actionneurs lectromcaniques et
hydrauliques, voire de les remplacer par du tout lectrique. Ainsi, les systmes dlectroniques de
puissance sont les premiers dispositifs lectriques que voient les actionneurs. Ces dispositifs sont
interfacs avec les interfaces de pilotage par des systmes de contrles-commandes.
Les normes aronautiques imposent que tous les dispositifs utiliss dans un avion
rpondent des contraintes svres quant leur fiabilit et leur scurit de fonctionnement. Dans
le cas prcis des convertisseurs statiques qui pilotent les actionneurs, on est confront aux
normes de fonctionnement des rseaux lectriques, aux normes C.E.M., aux normes
environnementales (au sens du contexte du dispositif), et aux normes lis aux systmes de
contrle.
Le march de laronautique, bien que trs spcifique, est trs concurrentiel au niveau
mondial. Les multiples objectifs de matriels trs performants, trs fiables, trs srs, mais les
moins chers possibles sont donc de vritables problmatiques.
Dans le cadre des convertisseurs statiques, un moyen pour rduire les cots est lutilisation
de DSP (Digital Signal Processors) pour maximiser lintgration de la commande et pour rduire
les cots, mais ce composant nest pas conu pour le milieu aronautique.
Lensemble de cette tude porte sur la conception dun nouveau type de radar marqu par
plusieurs ruptures technologiques. Le prototype ralis comporte un convertisseur statique pilot
par un DSP, mais ayant des fonctionnalits qui vont largement au-del du convertisseur basique
dlectronique de puissance. Laspect systme est largement pris en compte. Le convertisseur
mis en uvre est un dispositif autonome de pilotage de moteurs.
Mots clefs :
Aronautique, radar, onduleur triphas, normes DO178B, sret de fonctionnement, DSP,
Matlab/Simulink, Code Composer Studio, Gnration de code, machine synchrone
SPMSM, indexage au dmarrage, C.E.M., asservissements.

II

Title: Power Electronics Static Converters and Digital Control for aeronautical
applications, control of weather radar.
Abstract:
In civil aeronautics, the electric systems which compose the aircraft are increasingly
numerous, from the increase in the functionalities, the needs for the users (comfort), but also by
the need to improve the performances of the electromechanical and hydraulic actuators, to even
replace them by electric whole. Thus, the power electronics systems are the first electric devices
which the actuators see. These devices are interfaced with the interfaces of piloting by systems of
control.
The aeronautical standards impose that all the devices used on an aircraft answer severe
stresses as for their reliability and their safety. In the precise case of the static inverters which
control the actuators, one is confronted with the standards of operation of the electrical supply
networks, with standards E.M.C., the environmental standards (within the meaning of the
context of the device), and with the standards related to the systems of control.
The market of aeronautics, although very specific, is very competing on a world level.
Multiple objectives of very powerful materials, highly reliable, very sure, but the least expensive
possible, are thus of true problems.
Within the framework of the static inverters, a means to reduce the costs is the use of DSP
(DIGITAL Signal Processors) to maximize the integration of the control and to reduce the costs,
but this component is not designed for the aeronautical medium.
The whole of this study relates to the design of a new type of radar marked by several
technological ruptures. The developed prototype comprises a static inverter controlled by a DSP,
but having functionalities which go largely beyond the basic converter of power electronics. The
aspect "system" is largely taken into account. The converter implemented is an autonomous
device of servomotors piloting.
Key words:
Aeronautics, radar, three-phase inverter, standards DO178B, safety, DSP,
Matlab/Simulink, Code Composer Studio, code generation, synchronous machine SPMSM,
start indexing, E.M.C., servo controls.

III

Remerciements.
Je tiens avant toute chose remercier Emmanuel Toutain du G2Elab qui a t le
prcurseur dans linitiative de lintroduction de la commande numrique dans lquipe
lectronique de puissance, et celui qui ma permis de me lancer dans ce crneau. Son implication
dans le systme de recherche universitaire le rend la fois proche des recherches amont, et son
vcu et ses relations avec le monde de lindustrie lui donne une vision diffrente vis vis des
besoins des industriels. Tout fruit dune recherche a pour but de mrir en tant appliqu au plus
de domaines possibles. Avec cette vision, jai travaill efficacement avec son soutien.
Je remercie galement Arnaud Mahe de Thales qui ma donn carte blanche vis vis
de mes ides et ma donner les moyens pour les tester. Sa vision technique et son ct manager
industriel ma rappel plusieurs fois le but et lapplicabilit de mes ides : une bonne ide est une
ide qui peut se mettre en oeuvre sans compromettre les cots, qui soit durable et volutive. La
performance pure vient ensuite. Je regrette quil naie pu se donner corps et me durant ma thse
avec son dpart anticip de lentreprise.
Je remercie aussi Herv Stphan de mavoir donn lopportunit de travailler Thales
et donn des moyens pour un tel projet. Sa vision des projets et ses interactions avec les
laboratoires permettent que ce genre de projets et les doctorants se rencontrent.
Je remercie aussi Pierre-Olivier Jeannin du G2Elab qui ma suivi depuis plusieurs
annes, sur plusieurs projets, qui est lcoute des innovations et qui me permet dy participer. Sa
tche na pas toujours t trs gratifiante de par le contexte industriel du projet. Son implication
au niveau du laboratoire contribue lvolution de la commande numrique dans les systmes
dlectronique de puissance.
Je fais bien sr un clin doeil aux personnes que jai ctoyes, qui ont t des collgues
agrables au G2Elab et TAS, puisque la thse ma impliqu comme un membre dune quipe
normale. Les techniciens, ingnieurs et administratifs du G2Elab et TAS se reconnatront. Je ne
citerai personne au risque den omettre car ils sont trs nombreux.
Je remercie aussi Jean-Paul Artis et Maurice Callac de Thales avec leur quipe mto
davoir travaill avec moi, alors que jtais un lectron libre.
Je remercie naturellement James Roudet et lquipe lectronique de puissance pour
mavoir fait confiance au sein du laboratoire G2Elab.
Je remercie les rapporteurs Bernard Multon et Grard Rojat pour le temps consquent
quils ont consacr la correction de ce manuscrit traitant de plusieurs domaines et Philippe
Lemoigne pour avoir prsider le jury sur ce sujet.

IV

Sommaire.
Acronymes. ............................................................................................................................................. VIII
Prambule ..................................................................................................................................................... 1
Introduction.................................................................................................................................................. 2
Chapitre 1 : contexte et contraintes sur llectronique embarque....................................................... 6
I.

Les normes et les contraintes.............................................................................................................. 7


A.

Rappels sur la sret de fonctionnement :............................................................................... 8

1.

La dcomposition de la sret de fonctionnement ................................................................ 8

2.

Les risques et la classification .................................................................................................. 10

a) Dfinitions.................................................................................................................................. 10
b) Exemple sur lapplication du radar ......................................................................................... 12
c) Lintgration des rgles et des normes ................................................................................... 13
d) La classification du risque ........................................................................................................ 14
e) La criticit ................................................................................................................................... 16
B.

La DO-178B .............................................................................................................................. 17

1.

La gense de la norme et son volution................................................................................. 17

2.

Exemples significatifs de la norme appliqus au projet....................................................... 18

II.

Sret de fonctionnement, hardware et software ........................................................................ 23

A.
1.

Lexistence du SEU cre une difficult actuelle.................................................................... 23

2.

Le SEU et le monde numrique.............................................................................................. 28

3.

Le DSP, un composant numrique typique .......................................................................... 29

4.

Le SEU, une prsence inluctable, une cohabitation exige............................................... 29

B.

Le monitoring ............................................................................................................................ 31

1.

Le principe.................................................................................................................................. 31

2.

Sa mise en uvre....................................................................................................................... 32

3.

Exemple de monitoring............................................................................................................ 34

4.

Transposition de lexemple lapplication du radar............................................................. 35

C.

III.

Les SEU...................................................................................................................................... 23

Lanalyse du fonctionnement .................................................................................................. 37

1.

Le fonctionnement vnementiel ........................................................................................... 38

2.

Lanalyse temporelle (approche RMA)................................................................................... 41

3.

Lanalyse fonctionnelle (approche AMDEC)........................................................................ 42


Bilan des normes et analyses.................................................................................................... 42
V

Chapitre 2 : modlisation, simulation et conception de lensemble ................................................... 43


I.

Le systme ........................................................................................................................................... 44
A.

La problmatique de lantenne ................................................................................................ 44

B.

Lexistant..................................................................................................................................... 44

C.

La rupture technologique ......................................................................................................... 45

II.

Une tude de servomcanisme ....................................................................................................... 47

A.

Le dcoupage fonctionnel........................................................................................................ 47

B.

Les boucles ................................................................................................................................. 48

III.

Une approche sous Matlab/Simulink.............................................................................. 51

A.

Ltude continue........................................................................................................................ 51

1.

Le principe gnral .................................................................................................................... 51

2.

Le dtail des axes circulaire et lvation................................................................................. 54

B.

Etude chantillonne au format du DSP ............................................................................... 56

C.

Lanalyse du code ...................................................................................................................... 60

D.

Lanalyse normative des vnements...................................................................................... 64

1.

La prise en compte des normes............................................................................................... 64

2.

Lanalyse vnementielle .......................................................................................................... 71

a) Les mcanismes ......................................................................................................................... 71


b) Lanalyse temporelle.................................................................................................................. 76
c) Lanalyse fonctionnelle ............................................................................................................. 80
d) Lanalyse des flux de donne ................................................................................................... 83
IV.

La protection de la mcanique ................................................................................................ 85

V.

Bilan de la simulation/conception ................................................................................................. 87

Chapitre 3 : indexage moteur ................................................................................................................... 88


I.

Lindexage usuel.................................................................................................................................. 89
A.

La problmatique....................................................................................................................... 89

B.

Les contraintes........................................................................................................................... 91

C.

Les dmarrages des contrles-moteurs .................................................................................. 93

II.

Lindexage automatique................................................................................................................... 94

A.

Le phnomne recherch......................................................................................................... 94

B.

La mthode des essais de courant par impulsions................................................................ 97

C.

Les limitations de la mthode................................................................................................103

D.

La phase statique .....................................................................................................................107

E.

Rsultats de dimensionnement de la procdure dindexage de la phase statique ..........110

VI

F.

La phase lectromcanique ....................................................................................................114

G.

Lorganigramme fonctionnel .................................................................................................115

III.

1.

Machine tats finis de lindexage........................................................................................116

2.

Programme de la phase statique............................................................................................119

3.

Programme de la phase lectromcanique...........................................................................123


Bilan de lindexage automatique :..........................................................................................125

Conclusion ................................................................................................................................................126
Table des figures. ......................................................................................................................................... a
Bibliographie................................................................................................................................................. d

VII

Acronymes.
ADC :

Analog to Digital Converter

ALARP : As Low As Reasonably Practicable


ALU : Unit Arithmtique et Logique
AMDEC : Analyse des Modes de Dfaillances, des Effets et de leurs Criticits
ASV : Asservissements
BIOS : Built In Operating System
BREL : Boeing Radiation Effects Laboratory
CCS : Code Composer Studio
CEI : (ou IEC) Commission lectrotechnique Internationale
CEM : Compatibilit Electro Magntique
CGS : convention Centimtre / Gramme / Seconde
CIPM : International Committee for Weights and Measures
COTS : Commercial Off-The-Shelf
CPLD : Complex Programmable Logic Device
CPU : Central Processing Unit
DRAM : Dynamic Random Access Memory
DDRAM : Dual Dynamic Random Access Memory
DSP : Digital Signal Processor
DMA : Direct Memory Access
eCAN : enhanced CAN Network
EPLD : Electrically Programmable Logic Device
EV : EVent manager
FAA : Federal Aviation Administration
F.E.M. : Force ElectroMotrice
FMECA : Failure Mode, Effects and Criticality Analysis
FPGA : Field Programmable Gate Array
GPT : Global Purpose Timer
I/O : Input / Output
INFORM : INdirect Flux detection by On-line Reactance Measurement
IPM : Interior Permanent Magnet
ISO : International Organization for Standardization
VIII

ISR : Interrupt Service Routine


I.T. : InterrupT
MAIN : programme principal
McBSP : Multiple Channel Buffered Serial Protocol
MOS : Metal Oxyde Semiconductor ( + FET : Field Effect Transistor)
MTBF : Mean Time Before Failure
NMI :

Non Masquable Interrupt

NOP : No Operation
PFC : Power Factor Correction
PIE : Peripheral Interrupt Enable
PLL : Phase Locked Loop
PMSM : Permanent Magnet Synchronous Machine
PWM :

Pulse Width Modulation

QdS : Qualit de Service


RAM : Random Access Memory
RAZ : Remise A Zero
RMA : Rate Monotonic Analysis
ROM : Read Only Memory
RTCA : Radio Technical Commission for Aeronautics
RTOS : Real-Time Operating System
RTS : Real Time Software
RTSU : Receiver Transmitter Servo Unit
SCI : Serial Communication Interface
SDRAM : Synchronous Dynamic Random Access Memory
SEE : Single Event Effect
SETR : Systme Embarqu Temps Rel
SEU : Single Event Upset
SI : Systme International dunits (ISU)
SPI : Serial Protocol Interface
SPM : Surface Permanent Magnet
SRAM : Static Random Access Memory
C : MicroContrleur
WCET : Worst Case Execution Time
WNR : Weapons Neutron Research (Facility at Los Alamos National Lab)

IX

Prambule
Lobjet de cette thse est le rsultat dune motivation industrielle et dune motivation
personnelle quant au sujet.
En effet, ce doctorat et sa concrtisation mont permis douvrir les portes de la
spcialisation en industrie, et non celles de lenseignement ou de la recherche. Cette thse a t
axe dans la recherche applicative directement aux problmes industriels. La diffrence entre la
recherche scientifique et la recherche industrielle est pour moi une diffrence fondamentale quant
au but mme du sujet et de son contexte.
La Rt&D (Recherche Technologique et Dveloppement) est et a t mon crneau. Cette
thse propose des solutions, des mthodes pour faire du design en lectronique de puissance vis
vis des convertisseurs statiques avec des systmes numriques qui sopposent aux rgles
ancestrales du contexte aronautique. Mes propositions ont t testes sur des cas concrets de
projets en cours TAS (Thales Systmes Aroports).
Le sujet de thse ne porte pas sur un point scientifique dur en particulier, mais sur un
systme qui soulve de multiples problmes, corrls, qui nont pas t rsolus dans une tude
interne lentreprise. De mme, le sujet ntait pas clair au dbut, et le sujet de thse sest
construit dans les premiers mois compte tenu des premires recherches bibliographiques et des
interventions avec les gens du mtier. Cest donc une thse systme o lon va aborder
plusieurs points difficiles sur un sujet, dont lapplication est dfinie : un convertisseur statique de
pilotage dun radar. Le radar est un support dapplication adquat pour cette thse puisquil pose
de nombreux problmes, et les rsultats obtenus seront rutilisables pour dautres projets de
convertisseurs statiques en aronautique. On ne tend pas encore vers un systme sur tagre
puisque le systme est assez intgr, mais ce nest pas forcment difficile de dcliner le systme
prsent avec des fonctions allges et dissocies. Cest pour cette raison que le systme prsent
permet de montrer un ensemble de rsultats et de performances obtenus afin de se faire une ide
du potentiel sous-jacent.

Introduction

Introduction
Cette thse a pour but de montrer des techniques de dveloppement pour la commande
numrique de convertisseurs statiques, avec un environnement de fonctionnement aronautique.
Lvolution permanente des dispositifs dlectronique de puissance, notamment les structures
semi-conducteurs et les composants passifs, permet de rduire les masses et les cots. Cest un
double objectif : rduire les cots de fabrication, mais aussi les cots dexploitation, car un
ensemble de convertisseurs plus performants permet dconomiser du carburant. Le terme
techniques de dveloppement doit tre dcompos en diffrents aspects, car le numrique
pose des problmes de conception selon la cible et demande des comptences particulires, mais
le numrique pose des problmes de matrise et dinteraction de tous les paramtres (I/O) vis-vis de lintgration trs importante. On a aussi un problme de fiabilit vis--vis des erreurs de
conception, et des problmes de fiabilit vis--vis des perturbations des lments et vnements
extrieurs.
Dans un avion, un grand nombre de systmes sont prsents : les onduleurs des moteurs de
servitudes (pompes), les PFC en tte pour avoir une bonne exploitation des alternateurs des
racteurs, les convertisseurs multiples greffs au rseau de bord pour alimenter les appareils du
cockpit, les convertisseurs pour alimenter les appareils de confort, les convertisseurs qui
alimentent linstrumentation et le systme de guidage, et les convertisseurs des servomcanismes.
Chaque convertisseur a une application spcifique, et mme si les gammes de puissance et de
taille sont identiques, ils ne sont pas interchangeables. Chaque application est soumise des
normes diffrentes selon le niveau de criticit. Les normes sont cumulables et lon peut
facilement se trouver dans des contextes de dveloppement trs difficiles.
On peut diffrencier par exemple :

Les convertisseurs critiques de servomcanismes : le train datterrissage se doit de ne


jamais tre dfaillant, donc son systme est redond, protg, robuste. Londuleur qui
pilote le moteur a donc ces caractristiques. Comme on ne peut pas envisager une
quelconque panne, son niveau de criticit sera le plus lev.

Le systme de dtection radar : le systme qui fait balayer le radar est du domaine des
servomcanismes. Le radar vise loin et on rafrachit les donnes sur une priode assez
grande (sauf cas militaire). Un mode de dfaillance peur tre tolr si le rarmement du
systme est rapide. Son niveau de criticit sera donc moyen. Par contre, on va superposer

-2-

Introduction
dautres normes quant aux interconnexions avec dautres systmes. Par exemple, les
servomcanismes ne devront pas perturber le radar vis--vis de la C.E.M.
Les systmes actuels dlectronique de puissance sont souvent analogiques, de par leur
dveloppement ancien, mais surtout cause de la robustesse de ces technologies. Sur un
onduleur en contrle moteur, une boucle de rgulation analogique (en courant) a le mrite dtre
robuste et insensible aux perturbations telles que les agressions C.E.M. de lenvironnement.
Cependant, la place quelle occupe est loin dtre ngligeable et son volution par rapport un
actionneur diffrent implique des modifications coteuse et longues (cblages, mise au point). Les
rgulations possibles sont limites aux gains et intgrateurs. Des correcteurs plus complexes
deviennent alors trs dlicats en mise au point, en reproductibilit, en implmentation.
Lanalogique impose des limitations en performance et manque de compacit.
Un systme numrique peut remplacer une boucle analogique, mais on change alors
radicalement de mode opratoire, entre la consigne et la commande. Le calcul implique des
sources derreurs, des formats variables et varis, des possibilits de bogues, mais on accde alors
des correcteurs trs complexes. Une rgulation numrique est insensible la temprature, elle
est reproductible, et une mise jour est plutt facile.
La performance est de moindre importance par rapport la fiabilit, mais les techniques
utilises pour concevoir et contrler un convertisseur statique demandent une interaction forte
entre le logiciel et le matriel. Un code pointu pour chercher la performance peut et va poser des
problmes de certification, car le programme qui dfinit lapplication nest pas forcment
surveill et possible surveiller par une couche logicielle dun autre niveau.
Une difficult existe quant la sret de fonctionnement [LAP89] et la robustesse du
programme numrique, mais le rel problme entre un systme analogique et un systme
numrique en aronautique apparat en altitude. En effet, autant le composant analogique
(macroscopique) est insensible aux particules traversant latmosphre, autant le composant
numrique (microscopique) qui sera percut et/ou travers par une particule non filtre par la
couche atmosphrique, sera soit perturb, soit dgrad. Cette particule, appele S.E.U (Single
Event Upset), est un problme srieux contre lequel aucun blindage raisonnable autour du
composant ne peut le protger. A la surface du sol, la densit de particules est trs faible et
lnergie trs attnue. En altitude, ces deux derniers critres sont tous faits diffrents.
Dans le cadre des logiciels qui pilotent des systmes embarqus (convertisseurs statiques), le
logiciel qui contrle les entres / sorties matrielles est dun niveau de type driver -

-3-

Introduction
algorithme : il sagit dune fusion entre la couche application qui donne les lois, les
algorithmes de traitement du signal, mais aussi la couche logiciel dexploitation qui coordonne
les ressources, et la couche driver qui interface les priphriques avec lapplication. On voit
bien que le dveloppement est plus proche du driver volu, que du systme dexploitation allg
car les contrleurs embarqus sont dfinis par leurs drivers .
La question est donc de savoir comment intgrer des techniques logicielles pour dvelopper
un systme matriel avec un logiciel de premier niveau, lorsque le critre est la sret de
fonctionnement, la fiabilit, et la portabilit des techniques sur de multiples cibles.
Afin de pouvoir raliser de tels convertisseurs, jai travaill 9 mois en relation entre le
laboratoire et lentreprise sur les normes pour extraire les besoins et les attentes dun
dveloppement logiciel et matriel affects par de nombreuses normes (aronautique), mais aussi
par diffrentes techniques. Ensuite, jai pass 12 mois temps complet dans lentreprise sur un
projet Level C pour mettre en application une des techniques et tre impliqu dans un processus
de dveloppement pour un produit dont lapplication impose des normes trs strictes. Ce projet
est le support des mes travaux.
Aujourdhui, le march de laronautique est partag par plusieurs grands groupes, o
Thales se positionne dans plusieurs domaines. Thales est aussi bien impliqu dans les
quipements de confort des avions, que des quipements de scurit, des quipements de
navigation et bien dautres fonctions dans lavion et sa priphrie. Thales propose des solutions
compltes pour le cockpit, mais auquel il manque un lment dans le package, le radar de pointe.
Celui-ci est fourni principalement par Honeywell, Bendix et Rockwell-Collins. Ce radar
est situ dans le radme de tous les avions dune taille commerciale , c'est--dire des avions
constituant la majorit du trafic arien. Cest un radar balayage mcanique et lectronique ; sa
fonction est de dresser en temps rel une cartographie mtorologique le long du plan de vol de
lavion, afin de montrer aux pilotes les obstacles. On parle bien sr des nuages, mais cest surtout
linvisible lhomme qui est le plus recherch, tels que les vents (latraux, cisaillants), les trous
dair, les gouttes deau. Thales souhaite donc dvelopper son propre quipement, mais pas avec
un simple quivalent. Mon travail soriente vers une antenne disposant dune rupture
technologique au niveau des servomcanismes, qui elle-mme introduit une rupture au niveau du
systme lectrique. Les problmes lis aux hyperfrquences et aux algorithmes de dtection sont
traits dans dautres thses. Notre problmatique est lintgration de la commande numrique des
servomcanismes. Cette nouvelle conception de radars, permettant un gain significatif sur le cot
du produit, tant en fabrication quen entretien, est rendue possible par les progrs technologiques

-4-

Introduction
des composants de commande, sur leur intgration et sur leurs performances, ce qui ntait pas
encore possible quelques annes plus tt.
La thse fait le lien entre des techniques de scurit de fonctionnement existantes, mais
appliques dans dautres disciplines, que lon tend au cas du convertisseur statique dlectronique
de puissance ; puis la thse permet de conduire ltude sur le contrle compact de lantenne
aroporte avec les technologies de commande modernes.

-5-

Chapitre 1

Chapitre 1 : contexte et contraintes sur


llectronique embarque
I.

Les normes et les contraintes.............................................................................................................. 7


A.

Rappels sur la sret de fonctionnement :............................................................................... 8

1.

La dcomposition de la sret de fonctionnement ................................................................ 8

2.

Les risques et la classification .................................................................................................. 10

a) Dfinitions.................................................................................................................................. 10
b) Exemple sur lapplication du radar ......................................................................................... 12
c) Lintgration des rgles et des normes ................................................................................... 13
d) La classification du risque ........................................................................................................ 14
e) La criticit ................................................................................................................................... 16
B.

La DO-178B .............................................................................................................................. 17

1.

La gense de la norme et son volution................................................................................. 17

2.

Exemples significatifs de la norme appliqus au projet....................................................... 18

II.

Sret de fonctionnement, hardware et software ........................................................................ 23

A.
1.

Lexistence du SEU cre une difficult actuelle.................................................................... 23

2.

Le SEU et le monde numrique.............................................................................................. 28

3.

Le DSP, un composant numrique typique .......................................................................... 29

4.

Le SEU, une prsence inluctable, une cohabitation exige............................................... 29

B.

Le monitoring ............................................................................................................................ 31

1.

Le principe.................................................................................................................................. 31

2.

Sa mise en uvre....................................................................................................................... 32

3.

Exemple de monitoring............................................................................................................ 34

4.

Transposition de lexemple lapplication du radar............................................................. 35

C.

III.

Les SEU...................................................................................................................................... 23

Lanalyse du fonctionnement .................................................................................................. 37

1.

Le fonctionnement vnementiel ........................................................................................... 38

2.

Lanalyse temporelle (approche RMA)................................................................................... 41

3.

Lanalyse fonctionnelle (approche AMDEC)........................................................................ 42


Bilan des normes et analyses.................................................................................................... 42

-6-

Chapitre 1

I. Les normes et les contraintes


Lusage dun DSP (pVIII) dans un dispositif aronautique introduit juste titre la
problmatique de la sret de fonctionnement (et QdS [BAB05]) pour un systme embarqu. On
rappelle quun systme embarqu (peu importe sa taille : avion ou chronomtre pour les J.O.) est
un systme limit, la fois par ses ressources matrielles, par sa puissance, par sa source
dnergie, et aussi par ses capacits de traitement. La sret de fonctionnement et les dispositifs
pour y parvenir seront donc aussi limits.
Au mme titre que le FPGA qui est soumis la norme firmware DO-254 [DO254], le DSP
est soumis la norme logicielle DO-178B [DO178]. Cette norme est une vaste procdure pour
valider toutes les tapes, de la conception lindustrialisation. La criticit C en ce qui nous
concerne est un palier de la norme qui durcit les contraintes au fur et mesure que lon
sapproche de la criticit A , la plus svre (ex : train datterrissage). Les criticits B et C
autorisent quelques souplesses dans le fonctionnement du systme, telle quune possibilit de
redmarrage en cas de problme.
Le logiciel est soumis au respect de la norme DO-178B, ainsi quaux rgles de codages
[SCS04], et aux scurits Hardware et Software tel que le monitoring [FOR90] et la surveillance
du code.
Le DSP est aussi un composant dont le fonctionnement est diffrent du FPGA puisque le
DSP est intrinsquement conu pour ragir sur vnements. Il existe plusieurs faons de
contrler et dinteragir avec ses ressources. Chacune a des avantages et des inconvnients, et on
peut se demander juste titre pourquoi choisir une mthode plutt quune autre. Les DSP ddis
llectronique de puissance et aux contrles moteurs sont des variantes des microcontrleurs,
donc des systmes faible frquence de fonctionnement, ayant beaucoup de priphriques, mais
dont le cur est un DSP de traitement du signal. La thse montre et met en application le
contrle des ressources sur vnements, puisque le DSP est intrinsquement conu pour ce type
de contrle. Les techniques habituelles par squenceurs sont chaque fois utilises pour les
commandes car le recul sur ces techniques conditionne le choix du contrle du composant. En
proposant une commande sur vnements, donc en marge des mthodes habituelles, on doit
augmenter les performances et donner des degrs de liberts suprieurs aux concepteurs. Ainsi, la
dmarche de conception et de programmation est typique, et on verra comment montrer quun
fonctionnement vnementiel est dterministe, donc utilisable en aronautique.

-7-

Chapitre 1
La sret de fonctionnement passe aussi par la robustesse aux S.E.U. (Single Event Upset)
qui est une forte contrainte en altitude, puisque les systmes doivent prsenter une vritable
robustesse face aux particules qui ne peuvent pas tre stoppes. Il faut donc tablir des parades
pour contourner les effets quelles provoquent.

A. Rappels sur la sret de fonctionnement :


1. La dcomposition de la sret de fonctionnement
Quand on parle de sret de fonctionnement [TCHIN], le nombre de termes utiliss peut
introduire une certaine ambigut (hors termes anglais), notamment au niveau de la scurit et de
la fiabilit. La sret de fonctionnement (voir Fig. 1) est bien la base de toutes nos interrogations,
associe ces divers termes.

Fig. 1 : Arborescence de la sret de fonctionnement [TCHIN]


Cette arborescence se prcise ensuite pour chaque thme. Prenons le cas des fautes (voir Fig. 2) :

Fig. 2 : Arborescence des fautes de la sret de fonctionnement [TCHIN]

-8-

Chapitre 1
On peut alors appliquer ce type darborescence chaque item de la sret de
fonctionnement. Il est donc indispensable de mener une analyse rigoureuse sur le systme si lon
veut tayer et justifier notre design. On peut synthtiser les principales fautes selon la Fig. 3 :

Fig. 3 : Synthse des fautes de la sret de fonctionnement [TCHIN]


Daprs ce tableau, on peut voir que les fautes de conception ne sont quune partie du
problme. Il faut vraiment dcomposer lanalyse pour isoler et rsoudre un maximum de fautes
possibles.
De plus, la sret de fonctionnement ne se rsume pas un fonctionnement sans bogues,
mais implique la rigueur, de la conception lindustrialisation, pour viter les bogues (on parle ici
du logiciel). Par lanalyse de la sret de fonctionnement, on extrait 3 thmatiques
essentielles (voir Fig. 4):

Fig. 4 : Thmes de la sret de fonctionnement [TCHIN]


La fiabilit est une problmatique essentielle en industrie, car elle est le gage de profits.
Gnralement, la fiabilit est obtenue (maximise) pendant le processus dindustrialisation. A
notre niveau, la fiabilit ne doit pas tre un frein aux innovations, tant quelle peut tre atteignable
en termes de cots et de moyens. La scurit, concernant lintgrit et les non dfaillances, est le
-9-

Chapitre 1
thme qui nous intresse : tous les choix techniques doivent garantir la scurit que ce soit au
niveau du prototype ou au niveau du produit final.

2. Les risques et la classification


La sret de fonctionnement prcdemment dcrite est trs bien apprhende en
aronautique. En effet, ce thme a toujours fait lobjet dune grande attention, et les termes ont
un sens bien plus dfini que ceux que lon a lhabitude de manipuler. Il convient de faire un bref
point sur les termes qui nous intressent. En aronautique, les chelles de risques [GUI03] sont
durcies par rapport aux chelles de risques des systmes courants. On en donne la description au
I.A.2.a).

a) Dfinitions
Systme scurit critique : transfert de responsabilits de lhumain au dispositif dans
un systme o la scurit des biens et des personnes est mise en jeu. On voit alors apparatre le
terme de sret de fonctionnement, dfini par Laprie (1989-1992) [LAP89] :
La proprit du systme qui permet de placer une confiance justifie dans le service quil dlivre.
Deux termes distincts en ressortent :
-

Scurit-confidentialit : security

Fiabilit, disponibilit, scurit-innocuit : safety

Comme le risque zro est illusoire, le concepteur intgre la notion du risque rsiduel dans
le dveloppement, la fabrication et lutilisation. Les effets non dsirs sont dfinis par la notion
de dommage.
Les dommages (normes IEC 60300-3-9, 1995) : cest la gravit dun incident
-

catastrophique : dcs

majeur : blessures permanentes

mineur : traitement mdical

minime : soins

ngligeable : incident sans traitement

La gravit dun dommage est la svrit. Le dommage est aussi qualifi par son occurrence :

- 10 -

Chapitre 1
Loccurrence gnrale : cest loccurrence usuelle pour bon nombre dapplications
-

frquente : >1 /par an

probable : 1-10-1 /par an

occasionnelle : 10-1 10-2 /par an

rare : 10-2 10-4 /par an

improbable : 10-4 10-6 /par an

invraisemblable : <10-6 (tous les 1 000 000 dannes)

Loccurrence en aronautique :
-

frquente : >10-3 /par an

probable : 10-3-10-4 /par an

occasionnelle : 10-4 10-5 /par an

rare : 10-5 10-7 /par an

improbable : 10-7 10-9 /par an

invraisemblable : <10-9 (catastrophe naturelle)

On voit donc que laronautique est un milieu o lchelle des risques est rvise en faveur
des utilisateurs. Compte tenu de ces chiffres loquents, on na pas de mal comprendre pourquoi
laronautique fait partie des moyens de transports les plus srs, et pourquoi les cots sont si
levs. Ainsi, le risque en aronautique prend tout son sens dans le dimensionnement et la
conception dun systme, puisque le risque est la combinaison entre la gravit et loccurrence dun
dommage. On peut le qualifier dans le tableau suivant (occurrence gnrale) :

Lgende des risques :


H : fort
I : intermdiaire
L : faible
T : insignifiant

Fig. 5 : Tableau de classification des risques, fonction de la gravit et de loccurrence [GUI03]


On notera que le risque est dj faible pour des cas invraisemblables, improbable et rare
pour des occurrences gnrales, donc le cas occasionnel en aronautique qui est un cas
invraisemblable pour les usages commun, ce qui nous donne une vision trs ferme des marges
- 11 -

Chapitre 1
de manuvres sur un quelconque systme. On trouve cette approche sous dautres noms, telle
que la reprsentation ALARP (voir Fig. 6):

ALARP : As Low As Reasonably Practicable

Fig. 6 : Reprsentation ALARP des risques [GUI03]


Daprs cette reprsentation, la prvention doit augmenter si la probabilit du risque
augmente. De la mme manire, le degr de protection augmente en corrlation avec la gravit du
dommage.

b) Exemple sur lapplication du radar


Sur un systme tel que le radar, on a par exemple pour la classification prcdemment
illustre :
-

le contrle moteur : la gravit du dommage est lie une casse lectrique du matriel.
La protection devra tre dautant plus forte que le dommage caus pourra tre
important. La probabilit de ce risque est lie larrt du programme et au temps de
redmarrage du systme en cas danomalie. Si cest d un SEU (dvelopp au II.A),
la probabilit est a priori faible. Le contrle moteur est une tche autonome,
indpendante et prioritaire, qui na quune seule entre, elle-mme vrifie. Seuls les
fonctionnements nominaux sont accepts par des verrous logiciels. Il semble que la
probabilit soit un critre moins prpondrant que la gravit.

lasservissement des trajectoires : le risque de dfaillance est limit sur laspect gravit
par le contrle moteur. En effet, une mauvaise consigne sera ignore, et naura pas
dimpact sur la carte lectronique. Par contre, la mcanique pourra tre chahute par
de mauvaises trajectoires (vers les butes). L aussi, la gravit est modre puisse

- 12 -

Chapitre 1
quun mcanisme de protection est prvu. La probabilit de ce mauvais
fonctionnement est sans doute laspect prpondrant. Comme il existe plusieurs
faons daboutir un comportement anormal, il est plus difficile de mettre en place
tous les mcanismes de protections, et denvisager toutes les sources danomalies. Le
critre de probabilit dmarre donc de plus bas.

c) Lintgration des rgles et des normes


A quel moment le risque est-il acceptable ?
Un risque acceptable (ISO/CEI) est dfini comme un risque accept dans un contexte donn, bas sur
des valeurs courantes de notre socit.
Lacceptabilit concerne le risque et non la gravit du dommage ou sa probabilit
doccurrences considres sparment. Lacceptabilit est aussi fonction du contexte : est-ce un
systme prcurseur avec de nouvelles technologies ou ltat dun savoir, ou alors un systme avec
une mise en uvre rode ?
Les valeurs courantes sont une comparaison avec quelque chose dapprouv de tous : on
accepte le risque de mourir en prenant lavion si la probabilit de ce dcs par cette cause est
identique voire infrieure la probabilit de dcs induit par un sisme ou une crise cardiaque.
Peut-on prendre un risque lev si un dnouement fatal est inluctable dans ltat actuel du
contexte ?
On parle de scurit lors de labsence de risque inacceptable, cest lquilibre entre lidal de
la scurit absolue, et les exigences remplir. Le danger est caractris par un transfert dnergie
ou d un ensemble de conditions couples, induisant une accumulation conduisant un
accident, donc capable de provoquer un dommage.
- Phnomne dangereux : source potentielle de dommage ;
- Situation dangereuse : exposition aux phnomnes dangereux ;
- Evnement dommageable : vnement dclencheur qui fait passer de la situation au
dommage ;
- accident : vnement non dsir et occurrence non prvue rsultant en un dommage ;
- incident : vnement qui ne conduit pas des pertes, mais qui a le potentiel de crer des
dommages en dautres circonstances.
Lanalyse du risque consiste en la production dinformations en vue de la certification. La
certification est possible si et seulement si lanalyse est considre tout au long du processus de

- 13 -

Chapitre 1
mise en place du systme (dveloppement et fabrication). Lanalyse est continue et itrative. On
rejoint alors les thmatiques exposes dans les normes, telle que la DO-178B. Cest pour cela que
lorsque lon veut appliquer une norme pour un projet, il faut tout au long de la conception
prendre en compte lanalyse des risques : on doit pouvoir la justifier pour lindustrialisation du
prototype. Ltude du radar mto a t faite pendant la thse. Bien que la thse soit une tude
scientifique, le travail fait dans ce cadre peut tre largement remis en question si lon ne passe pas
beaucoup de temps simpliquer dans la rigueur du dveloppement, qui reprsente un temps
significatif dans la thse.

d) La classification du risque
Lanalyse du risque doit identifier les phnomnes dangereux par :
-

la technique forward : on part des phnomnes dangereux et on en dduit les


situations dommageables

la technique backward : on part des dommages pour retrouver les situations et les
phnomnes dangereux

Lerreur humaine doit tre intgre dans les phnomnes dangereux car en avionique
lerreur humaine est responsable de 70% des accidents. Dans le cas du dveloppement du radar
mto, cest une approche backward qui a t adopt de faon naturelle. En effet, on sest
pos la question des dommages possibles suite un mauvais fonctionnement, pour retrouver les
manires existantes pouvant conduire ces dits dommages. Dune certaine manire, la mthode
forward est dans notre manire de penser, puisse qu chaque tape du dveloppement, on
anticipe sur les phnomnes dangereux afin dviter les situations dommageables, telle quune
dfaillance de lexcution du programme, qui conduit un blocage du systme. Il ne faut donc
pas trop se formaliser sur ces points mthodiques qui nous dispersent, puisquon remarque
que finalement, avec la mthode AMDEC, on revient sur ces points.
Lanalyse des risques va mettre en avant la dfaillance ventuelle de composants du
systme. Un sous systme logiciel doit avoir un niveau dintgrit (Software Integrity Level)
correspondant un niveau de criticit des fonctions que le sous systme doit raliser. La norme
Logicielle DO178B / ED-12 rev. B donne cette indication :
Un logiciel dont un comportement anormal contribuerait la dfaillance dune fonction du systme, et
qui conduirait une dfaillance catastrophique pour lavion, est de niveau A le plus lev (pour un effet
nul, le niveau E est attribu)

- 14 -

Chapitre 1
Le but de cette classification est dliminer les mauvais logiciels et non de les analyser. La
zone ALARP (Fig. 6) est un indicateur de prvention et de protection. En zone tolrable, on
prend un risque si lon peut en retirer un bnfice. Plus les risques augmentent, plus les cots
pour y pallier augmentent. On travaille donc toujours avec ces deux objectifs :
-

Prvention : rduire la probabilit doccurrence

Protection : rduire la gravit du dommage

Comme on a pu le rpter plus haut, une bonne analyse AMDEC synthtise un bon
nombre de points. La mthode AMDEC (Analyse des Modes de Dfaillance et de leurs Effets et
de leurs Criticit) est une analyse point par point de toutes les fonctions du systme. On ne prend
en compte quun des modes de dfaillance (parmi : coupure lectrique, dpassement mmoire,
pointeur fou, etc.) la fois.

Plus de
signe
dactivit

Fig. 7 : Exemple de la mthode AMDEC sur une fonction [AMDEC]


Dans ce tableau (Fig. 7), on rajoute autant de lignes quil est ncessaire pour lister tous les
composants et les fonctions susceptibles davoir un mode de dfaillance, donc tout ce qui existe
dans le projet ! Compte tenu des rsultats que lon aura dans lvaluation du risque, on pourra
mettre en uvre les dispositifs adapts pour retrouver les tolrances dfinies au dbut du projet
par tous les acteurs. On pourra par exemple prendre les dcisions suivantes :
-

La redondance structurelle : multiplier les composants matriels. Les donnes sont


compares pour conduire carter un composant dont la dfaillance est dtecte. Si la
dfaillance est critique, la redondance est une technique de scurit. Cette technique
est celle de la triplication dans le cas du FPGA. Notre architecture nest pas
vraiment oriente dans ce sens, comme cela a t expliqu au I.

La redondance fonctionnelle : elle permet deffectuer une fonction avec une


conception diffrente (autres capteurs, autres processeurs, autres connections). Cette
technique est celle retenue au niveau du RTSU (pVIII) qui est interchangeable. Cest
une redondance fonctionnelle sur un systme complet. Cest une redondance adapte
au systme, et qui est trs coteuse.

- 15 -

Chapitre 1
-

On peut brider les performances si un vnement extrieur est dtect, et pouvant


mettre en doute le fonctionnement nominal. A priori, dgrader le mode de
fonctionnement nest pas envisageable car le radar mto doit fonctionner en mode
oprationnel quel que soit le contexte.

Lanalyse dbouche sur le constat suivant : il faut sparer le systme qui gre les aspects
fonctionnels et le systme ddi la surveillance, sans dpendance entre eux, sans complexifier le
systme, et avec une maintenance simple. Les RTSU interchangeables distance, dont lantenne
est surveille par un dispositif extrieur, est le rsultat dune telle analyse. Ainsi, on est confront
nos propres contraintes qui brident svrement nos marges de manuvres en ce qui concerne
lindexage du moteur (voir Chap3. I.BI.B), puisque le RTSU est interchangeable.

e) La criticit
La mthode AMDEC introduit aussi lindice de criticit, qui est fonction des 3 facteurs
essentiels (voir Fig. 8), dont le troisime est la dtection. Ce facteur est dcrit par les diffrents
contrles ou tests, actuels ou envisags, permettant de dtecter lapparition du mode de
dfaillance ou de leffet. Son nombre (arbitraire selon la mthode) est dautant plus grand quil
nest pas dtect. On comprend bien que lindice de criticit sera fort si la dtection est mdiocre,
puisque la non anticipation va augmenter leffet de la dfaillance.

Indice de criticit = gravit x occurrence x dtection

Fig. 8 : Reprsentation de lindice de criticit pour un exemple dun maximum admis de 11 sur 64
Lexemple en Fig. 8 illustre lindice de criticit lorsque chaque paramtre est compris entre
0 et 4, 4 tant mauvais. On peut donc trouver cet indice entre 0 et 64. En industrie, on peut
modifier les indices notre guise. Chez Renault par exemple, chaque paramtre varie de 0 10,
pour une criticit maximale de 100 pour les lments porteurs. Dans ce cas (ici) courant, on
dcline les paramtres comme :

- 16 -

Chapitre 1
Gravit :

Occurrence :

- 0 : sans danger - 0 : nulle

dtection : (optionnelle selon les cas)


- 0 : directe et immdiate

- 1 : mineure

- 1 : extrmement rare

- 1 : indirecte mais rapide

- 2 : marginale

- 2 : occasionnelle

- 2 : (in)directe et peu diffre

- 3 : critique

- 3 : moyenne

- 3 : tardive

- 4 : catastrophique

- 4 : frquente

- 4 : aucune

Dans une application ferroviaire, on aurait :


-

0 : incident mineur nentranant aucune consquence sur les personnes,

1 : incident mineur pouvant entraner quelques blesss lgers, pas de grave, pas de morts,

2 : incident majeur/limit pouvant entraner quelques blesss graves et lgers, pas de morts,

3 : accident grave pouvant entraner quelques morts et un certain nombre de blesss graves,

4 : accident catastrophique pouvant entraner de nombreux morts et blesss.


Il faut donc fixer les critres au dbut du projet. Dans le cas du radar, les dnominations

prcdentes ne sont pas adaptes.


Les exigences de la certification se justifient donc par la traabilit des choix, lintgration
de lanalyse logicielle, lintgration des facteurs humains, lapproche multi domaine, et la
terminologie non ambigu.

B. La DO-178B
1. La gense de la norme et son volution
La norme logicielle DO-178 est une norme plutt ancienne (1982) rdige par le comit
RTCA (pVIII) afin de rglementer les nouveaux dispositifs logiciels, revue en 1985 (rvision A)
suite un retour dexprience. La rvision B, la dernire ce jour, date dj de 1992. Cette mise
jour a t demande en 1989 par la FAA (pVIII) suite aux volutions rapides des technologies et
aux diffrentes interprtations des industriels et des autorits de certifications (qui sont des
problmes rcurrents). Cette norme est apparue avec les premires utilisations des logiciels
embarqus en aronautique, et nest pas vraiment adapte aux cibles DSP modernes. Le DSP
est pourtant aussi ancien que la norme, mais cest un composant nouveau en aronautique
compte tenu de sa maturit ce jour. Cela sexplique sans doute par la monte en puissance
rcente de ces composants qui les rendent attractifs. Cependant, les DSP existent dj en

- 17 -

Chapitre 1
aronautique, mais sous des versions dutilisation processeur o les programmes excuts sont
calqus sur les calculateurs, c'est--dire suivant un squenceur ou un RTOS (pVIII).
La nouveaut de notre application est lutilisation dun DSP optimis pour llectronique de
puissance, o la frquence dhorloge est faible en comparaison des DSP de traitements
numriques, et les priphriques sont relis de llectronique de puissance qui demande un
contrle vnementiel. On scarte donc du DSP qui traite des donnes qui lui-mme
communique avec dautres composants qui traitent des donnes. La sret de fonctionnement a
ici un impact direct sur les composants lectroniques, cest donc une approche
software/hardware.
Cette norme est globalement trop gnrale pour que lon puisse appliquer une quelconque
rgle au DSP en question, mais elle est aussi souvent contradictoire avec lutilisation de celui-ci.
En effet, la norme ne pouvait pas anticiper toutes les ventualits des progrs des
microprocesseurs / microcontrleurs. La rvision C de cette norme est prvue pour fin 2008,
des industriels tel que Thales participent son laboration, mais la question directe des
interruptions (vnements) na pas t aborde daprs les sources internes.

2. Exemples significatifs de la norme appliqus au projet


Ltude de la documentation RTCA DO-178B (1992) nous donne un support qui rgit le
dveloppement logiciel. Elle nest pas forcment dtaille sur le plan technique, mais elle relie les
techniques, comment les mettre en uvre, les tester et les appliquer. Elle a t crite pour donner
au concepteur les lignes directrices suivre pour son dveloppement logiciel.
La norme traite des aspects : (liste non exhaustive)

de compatibilit avec la cible (interruptions),

de boucles infinies,

de temps critiques,

dentre arrivante dtermine,

de transitions dtats,

de saut dinterruption,

de code mort,

dutilisation des interruptions,

des marges,

des mthodes alternatives.

- 18 -

Chapitre 1
En fait, partir du moment o lon peut prouver et justifier ses choix, analyser les temps
critiques, dfinir les transitions, faire apparatre les marges, il ne semble pas y avoir de contreindication utiliser les interruptions. Beaucoup de critres sont communs entre le
fonctionnement en ISR et le squenceur tel que le code mort (code inactif et prsent), mais
dautres changent le raisonnement de fond :

les boucles infinies : en mode I.T., les boucles infinies sont remplaces par le
fonctionnement asynchrone o lon dmarre une tche par I.T. et lon recommence avec
une autre I.T. synchronise avec le Hardware. Avec un squenceur, la boucle infinie est
indispensable pour recommencer un cycle.

la compatibilit avec la cible : lorsque la cible fonctionne sous I.T. ddies, cest que son
fonctionnement est prvu, donc les mcanismes associs des vnements sont supports.

Les temps critiques : en interruptions, les temps critiques apparaissent clairement car le
Hardware impose les contraintes du systme, donc on peut voir si la rponse est
respecte, alors quavec un squenceur, le scan du systme est indpendant des
changements de llectronique (cet exemple illustre notre cas de convertisseur statique).
Lexemple prcdent illustre les enchanements.
Voyons quelques points significatifs de la norme, qui ne sont pas des rgles pour

standardiser et justifier les dveloppements (traabilit, vrifications, outils, patchs, process,


analyses).

2.3.1 : le partitionnage : le logiciel est implant dans des cibles distinctes, pour isoler
les fonctions et les rendre indpendantes. Chaque partie son propre niveau de scurit.
Les critres sont :

Le DSP est un composant o cohabitent des priphriques matriels distincts (fonctions). Considre-ton un DSP/microcontrleur comme une fonction gnrale, ou un ensemble de fonctions ?
o Les ressources matrielles : processeurs, mmoires, I/O, bases de temps,
interruptions,

Tout est partag


o Les interactions des commandes : accs externes,

Chaque priphrique dispose de ses accs propres


o Les donnes partages : piles et registres,

La pile est commune, les registres sont exclusifs aux fonctions, mais sont tous accessibles par
le programme.
o Les mcanismes de protection et modes de dfauts.
- 19 -

Chapitre 1

Les mcanismes de protections sont adapts chacun, mais le code est excut sur des
ressources communes.

2.3.3 : la supervision : cest la surveillance dune fonction.

La fonction, est-ce la fonction globale du DSP, ou chaque fonction quil remplit ?


o La supervision a le degr de scurit le plus lev du systme,

Le dispositif de supervision est donc soit purement logiciel software (DO-178B Level
B/C) ou soit logiciel cbl Firmware , type EPLD, (DO-254 Level B/C)
o Les dfauts doivent tre dtects quel que soit les conditions,

Si le dispositif est logiciel, il est indpendant des ressources disponibles (priorits), des tats de
fonctionnements (dmarrages, I.T., standby, sauts)
o Les mcanismes de protections ne sont pas affects par la panne qui cause le
dfaut.

Le dispositif ne peut pas tre interrompu par un bogue logiciel, c'est--dire que le dispositif de
supervision nexcute pas son code avec le code fonctionnel : problme des ressources du DSP,
sauf watchdog.

6.3.3 : analyse de larchitecture du logiciel : cela doit confirmer que larchitecture


atteint les objectifs :

Ltape danalyse dtecte et reporte les erreurs introduites durant le dveloppement.


o (a) La compatibilit avec les critres de hauts niveaux, comme les fonctions
proches de lintgrit du systme (techniques de partitionnement),

On revient au problme du partitionnement de la fonction DSP ou des fonctions du DSP


o (b) Luniformit (entre les flux de donnes et de contrles),

Les formats soft/hard et inversement, ou entres fonctions doivent tre clairement identifis
o (c) La compatibilit avec la cible, comme les initialisations, les oprations
asynchrones, les synchronisations et les interruptions.

Le logiciel est dvelopp pour la cible. On nest pas dans le cas du logiciel gnrique qui peut
tre excut sur nimporte quelle cible.

6.3.4 : analyse des codes sources : les codes sources rpondent toutes les rgles de
codage

Les rgles sont : propres au langage, aux spcifications, la cible, aux marges
o (a) Tous codes implmentent des fonctions documentes,

Explications par documentation, et dans code source


o (c) Tout tat ou toute structure est vrifiable, sans que le code soit altr par le
test,
- 20 -

Chapitre 1

En interruption, on peut suivre lexcution dans les temps morts. Il faut nanmoins veiller
aux donnes locales, non visibles par les outils de dveloppements.
o (f) La conformit et la prcision : utilisation de la pile, exactitude et conformit
des dpassements et des rsolutions des calculs en virgule fixe, des ressources, des
temps critiques, des sauts dexceptions, lutilisation de variables ou constantes non
initialises, non utilises, corruption de donnes suite un conflit de tches ou
dinterruptions.

Ces points ne semblent a priori pas contraignants. Cest tout fait vrifiable.

6.4.2.2 : robustesse : le logiciel doit avoir la capacit de rpondre une entre ou une
condition anormale.

Chaque fonction dispose de dispositifs de vrifications


o (a) On exerce des valeurs invalides sur les variables relles et entires,

Tests concernant les donnes des correcteurs notamment. Cela peut tre anticip en simulation.
o (b) On initialise le systme dans des conditions anormales,

Tests avec une mcanique alatoire


o (c) On doit dterminer des modes de dfauts sur une donne entrante (en
provenance dun systme extrieur),

Analyse des trames qui sont les seules pouvoir crer des fonctionnements errons.
o (d) Les boucles compteurs finis sont robustes aux valeurs hors limites,

Concerne toutes les bases de temps (I.T. et compteurs logiciel)


o (e) Avoir un mcanisme de protection des trames trop longues,

Cela fait parti de lanalyse des trames


o (f) Pour les fonctions dpendantes du temps (filtres, retards, intgrateurs), il faut
tre robuste aux dpassements arithmtiques,

Ces tests sont anticips en simulation (bloc Simulink - Texas Instruments)


o (g) Pour les transitions dtat, transitions non autorises ?

Machines tats finis ?

11.7 : Standards de conception logicielle : rgles pour le dveloppement de


larchitecture

Cela regroupe les rgles, mthodes et outils


o (c) conditions imposes sur les mthodes de conception permises : utilisation des
interruptions et les architectures vnements, tches dynamiques, rentrencit,
variables globales, sauts dexceptions et leurs logiques,

- 21 -

Chapitre 1

Lusage du DSP C2x requiert une manipulation de variables globales, donc on a la


contrainte que nimporte quelle variable est accessible par chaque fonction. On a lavantage quil
ny a aucune cration dynamique, hormis lexcution du code en RAM, et la cration des
variables linitialisation. On ne fonctionne quen interruptions, mais elles ne sont pas
rentrantes.
o (e) Contraintes sur les exclusions de rcursivit, les objets dynamiques, les alias,
les expressions compactes.

Le code est rendu plus lisible avec les alias. Ils sont tous dfinis dans des fichiers rservs.

11.9 : donnes requises du logiciel : Cest la dfinition des critres de haut niveau :

Ce sont des critres de conception.


o (a) Description des allocations du systme au logiciel, en faisant attention aux
critres de sret et les conditions potentielles de pannes,

On borne lutilisation de chaque priphrique, et son interaction avec le code excut.


o (b) Critres oprationnels et fonctionnels sous chaque mode dopration,
o (c) Critres de performances (prcision et exactitude),

Frquence des I.T. et temps de traitement. Compromis avec la bande passante du systme.
o (d) Critres temporels et contraintes,

Relations avec les entres/sorties, synchronismes. Exemple avec la synchronisation de lADC


(pVIII)
o (e) Contraintes de taille mmoire,

Taille du code stock, et du code en cours dexcution. Toutes les variables sont alloues lors
de la conception. La taille mmoire est dtermine chaque instant.
o (f) Interfaces Hard/Soft (protocoles, formats, Frquences des entres et des
sorties),

Les interfaces sont dfinies la conception. Les interfaces logicielles/matrielles sont intgres
au DSP. Seuls les formats sont lis aux grandeurs extrieures.
o (g) Dtection des pannes et des critres de surveillance pour la scurit,

Les entres sont vrifies avant tout traitement.


o (h) Critres de partitionnement.

Tout est dfini lors de la conception initiale.


Comme on peut le constater, la DO-178B donne des indications respecter. Cette norme
est donc une norme de haut niveau pour la mise en place des mthodes, comment lier ces
mthodes, lesquelles appliquer et quel moment. La norme ABD100 dAirbus est bien mieux
adapte pour les informations techniques. Des extraits sont tudis au second chapitre.
- 22 -

Chapitre 1

II. Sret de fonctionnement, hardware et software


Dans le thme de la scurit de fonctionnement, on attend du systme un fonctionnement
qui nengendre pas de dommages quels que soient les cas de figures. On parle aussi bien des
dysfonctionnements engendrs par une architecture insuffisamment prouve, que dun rsultat
de traitement avec des cas non prvus, ou bien dun dysfonctionnement d une perturbation du
systme. La perturbation extrieure la plus redoute en numrique aronautique est le SEU, dont
le dtail est donn au II.A.1.

A. Les SEU
1. Lexistence du SEU cre une difficult actuelle
Lintroduction de logiciel dans les convertisseurs statiques saccompagne de nouveaux
problmes, dont fait partie la sensibilit aux particules provenant de lespace, tels que les
neutrons. En effet, on appelle SEU (Single Event Upset) leffet indsirable sur les matriels
informatiques d ces particules, car ils touchent essentiellement les mmoires, de part leurs
technologies et leurs tailles. On met en relief ci-dessous les trois types rcurrents :

Un registre : cest une mmoire statique ddie un usage unique, lie un


priphrique ou une mmoire systme trs rapide et incontrlable par une autre
ressource, car cest elle la mmoire de plus haut niveau (ex : les paramtres de passage
en pile). Les registres ont dans lensemble une petite taille et ont des rpercussions
directes sur le droulement du programme, un ou plusieurs bits qui changent dtats
compromettent fortement lexcution dun programme.

Une RAM : cest une mmoire dynamique o les donnes de calcul peuvent tre
errones en changeant un ou plusieurs bits. En gnral, les donnes (au sens des
variables) en RAM sont rafrachies et crases de faon cyclique et intervalles trs
courts. Par exemple, une donne corrompue dun asservissement sera perue comme
un glitch , et sera filtre par lalgorithme. Limpact dune erreur est donc
relativiser. Par contre, une erreur dun code excut en RAM sera dune consquence
de toute autre nature car cela change les instructions, les adresses, etc.

- 23 -

Chapitre 1

Une ROM : des donnes du programme altres peuvent conduire un bogue


systme selon le bit touch : un bit de variable peut changer sa valeur, cela peut tre
gnant ou non ; un bit de saut dadresse conduit un chec dexcution.

Contrairement aux composants analogiques et numriques discrets qui ont une taille et une
nergie de fonctionnement significative, les composants numriques trs intgrs ont une
nergie lmentaire (pour chaque cellule mmoire) proche des nergies des particules [DOD03].
Ainsi, une particule qui traverse une cellule mmoire peut changer ltat nergtique de cette
dernire, donc altrer ltat mmoire. Laronautique est un secteur touch par ce phnomne car
laltitude est un facteur prpondrant sur la densit des SEU (voir Fig. 9).
Les SEU sont une catgorie de dfauts des S.E.E. (Single Event Effect [MAJ95]) issus des
particules redoutes car on ne peut pas les dtecter, les canaliser ou les viter. Ces particules ont
t mises en vidence ces 20 dernires annes suite diffrents incidents. En 1988-1989, IBM
a conduit des tudes sur des SRAM sur plusieurs avions, avant de se joindre Boeing. Cet
industriel a mis en place un laboratoire distinct nomm BREL [RLAB] sur ces thmatiques,
disposant dun rseau de comptence sur diffrents sites, notamment le WNR Los Alamos, sur
les neutrons atmosphriques. Ainsi, il est dmontr que les SEU sont corrls avec le flux de
neutrons atmosphrique [NOR93] [NOR95] [NOR96] [NOR97] [NOR98] [OBE93]. Un SEU
provoque un changement dtat dun bit. Les radiations qui en sont la source sont :
-

concentres dans la ceinture magntique terrestre et affecte le passage des satellites,

prsentes dans lespace via les rayons cosmiques galactiques, trs nergtiques mais
moins concentrs. Leffet est alors bien plus grave quun simple changement dtat,

issues du soleil dont lactivit varie (heures, jours). Il produit des lectrons, des
protons et dautres particules moins nergtiques.

Les particules des radiations atmosphriques sont (voir Fig. 9):


-

les photons,

les particules charges,

les neutrons.

Ce sont les neutrons qui crent des SEU car il nexiste pas de blindage pour lavion, et la
quantit de protons et de pions nest pas significative devant le nombre les neutrons. Le flux de
neutrons est fonction de laltitude et de la latitude. Les neutrons sont crs par linteraction des
rayons cosmiques avec lO2 et le N2 dans lair. Les densits sont :
-

1.4 Neutron/cm.sec 60000 pieds (pic), soit 18.2 km daltitude

0.4 Neutrons/cm.sec 30000 pieds, soit 9.1 km daltitude


- 24 -

Chapitre 1
-

0.004 Neutrons/cm.sec au sol

Le changement dtat dans le silicium nest pas du la ionisation directe due au neutron,
mais plus la raction nuclaire dans le silicium. Les nergies <1MeV1 sont sans effet pour le
silicium. Pour laronautique, les mesures laissent penser que le spectre des nergies est compris
entre 1MeV et 10MeV, en fonction de laltitude et de la latitude. (On notera quon peut avoir des
nergies >1000 MeV en dehors du spectre qui nous concerne).
A titre dexemple, la normalisation est donne pour une altitude de 40000 pieds et une
latitude de 40. On a alors une densit de 0.89 neutrons/cm.sec dans lintervalle 1-10 MeV.
Dans le pire cas de vol (Paris Anchorage), on a 2.4 neutrons/cm.sec (8600 n/cm.h) dans la
gamme 1-800 MeV daprs les sources Thales Avionics/SE.
Pour les essais en laboratoire par exemple, la section efficace des neutrons atmosphriques
est comparable celle des protons pour des nergies >50 MeV.
Pour un A320 dun vol dune heure, avec un bombardement de 1.4 neutrons/cm.s (pour
altitude dun vol court), le bombardement total est de 5000 neutrons/cm pour une nergie de
1MeV. Pour un A340 dun vol de 8 heures, avec un bombardement de 2.4 neutrons/cm.s (pour
laltitude dun vol long), le bombardement total est de 70000 neutrons/cm pour une nergie de
1MeV. Pour la comparaison avec les rsultats donns en Fig. 12 provenant du laboratoire
TRIUMF - UBC, on donne les nergies en MeV et les densits de bombardement pour les
conditions des tests et des essais qui permettent de reproduire les effets en laboratoire.

LeV est une nergie cintique acquise par un lectron en passant dans une diffrence de potentiel de 1V dans
le vide, soit 1eV = 1,6.10-19J. LeV nest pas une unit SI mais est accepte par le CIPM. Dans la suite du
document, on fait la distinction entre cette nergie et lirradiation.

- 25 -

Chapitre 1

Fig. 9 : Densit de neutrons et altitude [ABD100]


Laronautique se situe l o les particules sont clates (voir Fig. 9), do la problmatique des
neutrons. Le vol de croisire dun A340 est de 13000m, soit 43000 pieds, donc tout juste dans la
tranche dirradiation.
Les nergies aux ples sont 6 fois suprieures aux nergies lquateur, cause du champ
magntique terrestre qui protge mieux lquateur. A la latitude de 60, le flux est constant ; 40
sera la latitude de rfrence. On a donc des graphes corrls aux altitudes et aux latitudes pour le
flux de neutrons (voir Fig. 10 et Fig. 11).

- 26 -

Chapitre 1

Fig. 10 : Energie des neutrons en fonction de laltitude [ABD100]

Fig. 11 : Energie des neutrons en fonction de la latitude [ABD100]


Les effets sur les mmoires sont particulirement visibles et consquents dans les systmes
embarqus des avions. Autant les anciennes technologies taient robustes, autant les actuelles
sont sensibles, et autant les prochaines seront problmatiques. Le constat est clair, on ne pourra
pas faire voluer les systmes numriques discrets des convertisseurs statiques actuels par une
simple miniaturisation des fonctions de commande. Il est ncessaire de concevoir des systmes
numriques qui prennent en compte des alas de fonctionnements imprvisibles, puisque lon ne
peut pas sen protger, avec un blindage par exemple.

- 27 -

Chapitre 1

2. Le SEU et le monde numrique


En ce qui concerne les commandes numriques par FPGA, Thales, ses sous-traitants et
ses concurrents ont lexprience et le recul sur les techniques mettre en uvre, comme la
triplication des fonctions sensibles, le checksum2 des mmoires pour vrifier leur intgrit, les
bits dextension des trames et les protocoles spcifiques pour les dtections et les corrections
derreurs. Cest lnorme avantage du FPGA qui permet de concevoir des commandes typiques,
et ddies aux systmes aronautiques. Cependant, le FPGA un inconvnient, cest son cot,
aussi bien au niveau du composant quau niveau de sa mise en uvre, tant en conception quen
certification. De plus, le FPGA sera physiquement assez gros partir du moment o lon aura
besoin dune mmoire significative.
Avec le DSP, on peut rpondre la contrainte du cot, mais on na pas la souplesse de
conception du FPGA. De mme, la technologie du composant est assez diffrente. On est alors
confront une autre problmatique, la sensibilit de la mmoire nest plus la mme, et les
moyens de rendre le systme robuste seront diffrents. Pour cette partie, on se concentrera sur
son fonctionnement en milieu hostile, c'est--dire dans un environnement o les SEU sont
prsents. Les DSP font dj partie de nombreux systmes de traitement du signal en
aronautique, mais souvent sous forme de cartes pour des traitements de signaux ddis dans un
calculateur, o les algorithmes se partagent du temps dexcution. Les moyens pour rendre le
systme robuste sont multiples, comme les associations de composants, et des algorithmes
spcifiques ddis aux traitements des signaux. Notre travail se situant dans la commande
loigne des convertisseurs statiques, on demande au DSP dtre quasiment intgr la
commande rapproche. La problmatique systme est tout fait diffrente, car on a aussi
besoin dune commande minimaliste afin de pouvoir lintgrer la carte de puissance. Le format
du calculateur (en rack) nest pas du tout adapt. De mme, si on fait une commande avec un
DSP, cest pour ne pas avoir dautres composants. Il nest pas envisager de coupler le DSP avec
dautres composants de performances quivalentes (type FPGA) pour assurer le fonctionnement
de lensemble. Cest un problme dencombrement, de complexit, mais aussi de cot. Sil avait
fallu un FPGA, dans ce cas, autant en prendre un qui soit un peu plus gros si besoin, plutt que
davoir deux composants numriques ! La robustesse aux SEU envisage est bien pour un DSP

Le checksum (somme de contrle) est un type de code correcteur (simple et rapide), concept de la thorie des
codes . Cest un cas particulier de contrle par redondance. Un checksum des plus connus et rpandus est le
bit de parit, ne permettant la dtection que dune seule erreur.

- 28 -

Chapitre 1
intgr lapplication des convertisseurs statiques, avec les contraintes dun fonctionnement sur
les vnements matriels du convertisseur.

3. Le DSP, un composant numrique typique


Contrairement au FPGA qui a des fonctions cres sur mesure par le concepteur (avec les
moyens associs de triplication , de checksum, etc.), le DSP a une architecture fige en ce qui
concerne les fonctions numriques. En effet, on ne parle pas de la disposition sur le silicium des
fonctions mmoires, I/O, etc. des deux composants, bien que cette disposition ne soit pas
anodine. Ainsi, le DSP a une structure fige qui ne permet pas de tripler les fonctions, on ne peut
pas rajouter de mcanismes sur le traitement des donnes (ex : checksum), sauf bien sr de faon
logicielle, mais aprs il faudrait continuer la boucle pour tre sr que ce mcanisme ne soit pas
lui-mme corrompu. Le DSP est conu pour un usage spcifique, cest pour cela que lon
distingue les DSP de traitements de signaux (ex : audio et vido), des DSP ddis des
applications comme llectronique de puissance. Quand on choisit un DSP, on ne peut pas
choisir larchitecture la plus adapte pour mettre en uvre des mcanismes de scurit de
fonctionnement. Ainsi, lusage des vnements dans notre famille de DSP est voulue et oriente
par notre application. Les mcanismes mettre en uvre pour la robustesse aux SEU seront
explorer.

4. Le SEU, une prsence inluctable, une cohabitation exige


La quantification des SEU permet de mettre en uvre des techniques pour prouver les
composants, et plus directement de classer les composants en fonction de leurs susceptibilits.
Les tudes de Thales Avionics mettent en avant la robustesse de la flash. La RAM est quant
elle sensible aux SEU, que ce soit de la RAM, SRAM, SDRAM, DRAM, DDRAM ou une autre
version de mmoire vive. La RAM du DSP fait parti des RAM en gnral, donc a priori des
mmoires sensibles. Tout le design du projet est orient vers du code efficace, c'est--dire excut
en RAM interne. Compte tenu de nos marges dutilisation du processeur, il est possible de
saffranchir de la RAM pour le code critique en lexcutant directement partir de la mmoire
flash. La RAM ne serait alors utilise que pour les variables qui sont priodiquement crases et
naltrant pas le code fonctionnel. Le DSP a cet avantage sur le FPGA quil peut fonctionner
partir de la mmoire flash, alors que le FPGA charge la RAM partir de la flash/ROM
dporte pour le boot . Il reste le problme de la pile qui est de la RAM critique. Peut-on se
suffire dun redmarrage en cas danomalie ? Cela fait partie du level C .
- 29 -

Chapitre 1
Une caractrisation des effets sur un DSP est donne dans la publication [HIE05]. Le test
est ralis sur un DSP TMS320 C6701 de version militaire (nuance du botier cramique), issue de
la famille C6000 trs performante. Le notre est un C2000, mais on reste dans la mme gamme, les
TMS320. On ne donnera en Fig. 12 que des rsultats issus de la synthse de la publication.
Lexprience a permis de mettre en avant la robustesse du DSP soumis un faisceau de 120
MeV, avec une dose totale dirradiation pendant le test de 16.6 Krad(SI)3 sur la ligne TRIUMF
PIF MDA Ontario. Le protocole de test simule un fonctionnement en orbite 556km.
Voici les rsultats :
Elment test

Erreurs

Registres internes

Aucune

ALU virgule fixe

Aucune

ALU virgule flottante

Aucune

DMA

Aucune

Echantillons dynamiques en RAM (on les change 1.5x10-2 upsets/day


rgulirement), avec4 erreur avant fin du test
Echantillons dynamiques en RAM (on les change 2.2x10-2 upsets/day
rgulirement), sans erreur avant fin du test
Echantillons statiques en RAM (cris au dbut du test), 1.9x10-2 upsets/day
avec erreur avant fin du test
Echantillons statiques en RAM (cris au dbut du test), 2.9x10-2 upsets/day
sans erreur avant fin du test
Fig. 12 : Synthse des erreurs du DSP6701 en orbite dans lespace
La publication conclue sur le fait que ce DSP est utilisable dans lespace pour bon nombre
dapplications, en veillant mettre en uvre des corrections automatiques sur la SRAM.
Apparemment, seule la RAM est sensible aux SEU. On en dduit que les registres sont fiables, et
cest intressant pour lapplication du radar. La RAM du C6000 a t test au moins la
frquence du C2000. Il faudrait maintenant avoir les tests quivalents dans latmosphre, donc
avec lnergie adquate des particules.

Le Krad(SI) ou Krd(SI) est la dose de radiation absorbe dans les units hors CGS, dont son quivalent est le
gray (Gy), 1Gy = 100rd = 1J/kg = 1 m/s.
4

Les erreurs (avec ou sans) concernent le protocole de test. Le test peut tre fig en fonction de bits errons,
donc on distingue les erreurs avec un test achev et les erreurs avec un test avort.

- 30 -

Chapitre 1

B. Le monitoring
1. Le principe
Le monitoring est un concept bien connu en informatique, et en informatique industrielle.
Il existe beaucoup douvrages relatifs la scurit et la sret de fonctionnement logicielle. Le
monitoring est sur le fond identique dune application lautre, mais il est dclin en autant de
manires de mise en pratique possible que dapplications monitorer. En effet, le monitoring
surveille et/ou analyse des donnes ou/et des comportements des applications [QIU00] [TIN03].
En ce sens, les dispositifs de monitoring sont spcifiques aux grandeurs associes.
La publication [PET02] requirements-based monitors for real time systems est une
description haut niveau du principe de monitoring. La mthode sapplique assez bien notre
problmatique de logiciel embarqu, qui est un programme interfac directement avec du
matriel . En soi, ce nest pas une rvolution, mais le DSP nest pas souvent cit dans les
exemples dapplications aronautiques, et encore moins en termes de sret de fonctionnement et
de normes ; ainsi, on va faire le point sur les techniques applicables.
En cas derreur, il se produira un effet non souhait et non souhaitable. Lerreur va gnrer
un effet qui se dcline en plusieurs niveaux, qui chacun traduit une criticit. On trouvera lerreur
catastrophique, svre, majeure et mineure. Dans tous les cas, lerreur doit tre dtectable et
dtecte. Comme le projet sinscrit dans une criticit C de la DO178B, en cas de problme
majeur ou plus du RTSU (carte servomcanisme pour lobjet de ltude), on peut basculer dun
RTSU lautre afin disoler le matriel dfectueux (principe de redondance). Ainsi, une
dfaillance majeure ou plus naura pas deffet sur les systmes connexes (notamment sur le PFC
en tte et les moteurs). Le DSP est la base un microcontrleur, et est ainsi dot dun watchdog.
Cet appendice, intgr au silicium du DSP, est un circuit en troite relation avec le cur
permettant de raliser un reset gnral. Le watchdog est configur au dmarrage de la cible, et
fonctionne de faon autonome en parallle du DSP. Lors de la configuration, le concepteur
choisit comment surveiller le programme. Si au bout dun certain time-out (priodique), le
watchdog nest pas rafrachi, on considre quune erreur est survenue, et le DSP redmarre. Pour
minimiser limpact dune erreur, la frquence de la vrification est la plus leve possible. Cest
donc un choix arbitraire du concepteur pour avoir un compromis entre de bonnes performances
du systme et des tests qui dtectent toutes les erreurs effets importants. Daprs [PET02], on
peut rsumer tout systme selon le schma suivant :

- 31 -

Chapitre 1

Fig. 13 : Systme logiciel gnrique monitorer [PET02]


Dfinitions des noms :
-

m(t) : environnement monitor ;

c(t) : environnement contrl ;

i(t) : entre de la solution numrique (registres, ADC, I/O) ;

o(t) : sortie de la solution numrique (registres, PWM (pVIII), I/O) ;

input devices : capteurs, boutons ;

ouput devices : actuateurs, amplificateurs, relais, affichage ;

SOFREQ : software requirements, caractrise le jeu de fonctionnements acceptables


du logiciel ;

REQ : requirements, caractrise le fonctionnement du systme. REQ(m, c) doit tre


vrai.

Le monitoring peut soit vrifier un fonctionnement pendant lexcution du programme de la


cible, soit utiliser un enregistrement du fonctionnement. Le monitoring est fonction du temps
coul, et non du temps absolu. Dans tous les cas, le monitoring doit donner un retour de tous
les fonctionnements passs (en particulier sils ont t enregistrs).

2. Sa mise en uvre
Dans notre cas, le monitoring doit empcher un effet indsirable sur le matriel, donc dans
la surveillance instantane , o lon est en phase avec lexcution du code pour maximiser les
temps de ractions. On peut ensuite faire la diffrence entre le monitoring logiciel et le
monitoring systme :

- 32 -

Chapitre 1

Fig. 14 : Monitoring logiciel [PET02]


Fig. 15 : Monitoring systme [PET02]
Dans notre cas, le report (ou le rapport derreur) peut tre trait par lextrieur
(calculateur), ou directement par lantenne. Le traitement in-situ est plutt adapt aux erreurs
majeures ou plus, qui peuvent engendrer une dfaillance matrielle significative. Ainsi, on
pourrait avoir un temps de raction bien plus rapide. Le monitoring aurait aussi un pouvoir de
dcision.
-

Le watchdog du DSP est un monitoring logiciel intgr, qui prend la dcision


immdiate de relancer le logiciel. Le temps de rponse est minimal. Il ny a aucune
mmorisation de lerreur.

Les C-BIT sont des monitoring logiciels, qui renvoient un rapport une frquence
fixe, donc dune certaine faon, cest un monitoring avec enregistrement car FCBIT <
Fmax logiciel, et cest le calculateur qui prend la dcision relative au dfaut constat. Le
temps de rponse peut tre grand.

Le watchdog de lEPLD (pVIII) est un monitoring logiciel, avec un mcanisme et un


composant distinct du DSP. LEPLD, qui assurent des fonctions logiques et
dinterfaces (voir Fig. 18 et Fig. 25) sur le systme, peut redmarrer le DSP si une
condition nest pas respecte. Le DSP et lEPLD ont des donnes en commun, donc
lEPLD a accs aux donnes internes du DSP (celles qui sont prvues dans la
conception).

Pour avoir un monitoring systme, il faudrait avoir un dispositif de surveillance un peu


quivalent au DSP, car la sortie est issue dun traitement complexe des entres ; donc pour
prdire la sortie, il faudrait traiter des calculs quivalents au DSP. On revient donc une sorte de
redondance totale (pour avoir les mmes performances du monitoring face au DSP), qui est
contradictoire au besoin dun systme compact. Le monitoring systme peut ncessiter des

- 33 -

Chapitre 1
capteurs supplmentaires, si par exemple des grandeurs relatives au bon fonctionnement ne sont
pas directement traites par le systme principal.
Le monitoring tolre une certaine libert de fonctionnement sur les donnes quil analyse.
Plus les donnes scrutes peuvent donner des combinaisons complexes de fonctionnement, plus
la libert sera importante, et moins le monitoring sera efficace. En effet, un bon rsultat peut tre
la combinaison de mauvaises donnes. Quand il y a trop de cas possibles, on ne peut plus
justement distinguer tous les cas possibles.

3. Exemple de monitoring
On identifie/qualifie un monitoring selon la dmarche prsente dans [PET02], dont
lillustration est donne en Fig. 16 :

Fig. 16 : Bornes optimistes et pessimistes du monitoring [PET02]


Cette reprsentation illustre les bornes du monitoring par une analogie avec un stylo sur
une table traante (robot traceur de la publication [PET02]) : les marges sont volontairement
exagres.
-

wall : limites de la feuille. Ici, cest une limite mcanique, limites de fonctionnements.

FP : prcision de monitoring possible false positive , entre la limite wall_space et


wall.

FN : prcision de monitoring possible false negative , entre la limite wall_space et la


zone pessimiste.

WALL_SPACE : marge de scurit, fonction de lerreur destimation de la position du


stylo.

Perceived pen location : position mesure du stylo.

Possible actual pen locations : positions possibles du stylo selon les erreurs de
mesures.

Accepted by optimistic monitor : comportement normal.

- 34 -

Chapitre 1
-

Accepted by pessimistic monitor : comportement dans la limite basse tolre qui


nintroduit pas de dfaillance.

Aprs avoir dfini les bornes du monitoring, il faut dfinir sa ractivit. En effet, le monitoring
est dimensionn par son temps de rponse qui est fonction du temps de traitement du systme.
Le chronogramme Fig. 17 illustre cet aspect :

Fig. 17 : Prcision des timings du monitoring [PET02]


On voit que lchantillonnage du monitoring introduit un dlai (cas a), qui est un temps o
une dfaillance peut soprer sans quil ny ait aucune dtection, ou alors si ce temps est trop
grand, le monitoring ne voit pas le changement et dtecte une fausse dfaillance. Le temps d et
le temps dchantillonnage du monitoring sont corrls. Le cas (b) montre un monitoring qui
voit un changement simultan de la sortie sur lentre. Cela peut tre considr comme une
fausse erreur puisque le temps de traitement d est masqu par lchantillonnage du
monitoring. Le monitoring doit tolrer des marges sur les excutions, sans que ces marges soient
pnalisantes pour la dtection de dfaillances effets rapides. Les performances du monitoring
peuvent donc tre leves.

4. Transposition de lexemple lapplication du radar


Dans notre application, lanalogie du stylo nest pas si loigne dans le cas des butes
mcaniques :
-

wall : butes mcaniques de lantenne.

FP : prcision de monitoring possible false positive , entre la limite wall_space et


wall.

FN : prcision de monitoring possible false negative , entre la limite wall_space et la


zone pessimiste.
- 35 -

Chapitre 1
-

WALL_SPACE : marge fonction de la vitesse instantane et des attitudes du porteur


pour langle darrt.

Perceived location : position mesure de lantenne.

Possible actual locations : positions possibles de lantenne relatives au retard de


traitement (la position volue entre les chantillonnages).

Accepted by optimistic monitor : comportement normal.

Accepted by pessimistic monitor : comportement dans la limite basse tolre qui


nintroduit pas de dfaillance, aucun effet sur la mcanique.

Et pour les temps de rponse :


-

d est le retard introduit par lasservissement, soit 1ms (chelle fixe des calculs), ou
cest le temps pour mesurer une rponse en vitesse par rapport une consigne darrt
par exemple (et le temps est fonction de plein de paramtres).

m0, m1, m2 sont les chantillonnages du C-BIT et lalgorithme de scurit qui


surveillent les butes

Les watchdog nont aucun effet sur la gestion des butes (comportement mcanique), mais
uniquement sur le comportement lectrique (erreur gnrale et sortie PWM fixe par
exemplecourt-circuit momentan).
Dans lanalyse plus concrte de notre systme, on reprend la dmarche prcdente
applique la carte de servomcanismes et non au DSP seul car on sintresse au mode de
dfaillance gnral comme lillustre le schma en Fig. 18 :

Fig. 18 : Monitoring gnral


Afin de dtecter toutes les anomalies pouvant engendrer une dfaillance majeure, donc les
fonctionnements en dehors de la plage maximale de fonctionnement, on cherche dtecter ces
anomalies aux extrmits du systme puisque lon est sur une stratgie de redondance du RTSU.
Si on ne surveille pas suffisamment loin, on risque de laisser des dfauts. Cela pose alors le
problme de la rutilisation des capteurs existants, puisquil faut quils soient en bout de chane.
- 36 -

Chapitre 1
La mthode de la surveillance logicielle est intressante, mais si on procde lanalyse cidessus, on se rend compte que lon peut facilement tomber dans le pige o les interactions avec
le systme ne sont pas les plus judicieuses. En effet, si on utilise lEPLD comme circuit logique
de buffer des signaux du DSP, entre la commande des drivers (partie 2 sur Fig. 18 et Fig. 19)
et les semi-conducteurs de puissance (partie 3 sur Fig. 18 et Fig. 19), o lEPLD a un pouvoir de
dcision en fonction du fonctionnement du DSP, on insre lEPLD dans la chane de traitement
au lieu de le mettre en parallle sur lensemble :

Fig. 19 : Monitoring entrelac


Ainsi, par lentremlement des signaux, on na plus deux systmes distincts, et la dernire partie
de la chane nest pas surveille. On peut ventuellement dtecter une anomalie sur lentre qui
naurait pas de cause connue.

C. Lanalyse du fonctionnement
Lanalyse du fonctionnement [BON03] fait partie des points incontournables en vue dune
certification. Un systme aronautique ne sera autoris tre utilis que si lon peut prouver son
fonctionnement, comment il a t dvelopp, et comment ont t mens les tests et les mthodes
pour garantir une conception comme prvu dans les rgles de dveloppements. Ainsi, nous allons
discuter du fonctionnement vnementiel (par interruptions) qui est un point dlicat pour la
certification, car les autres fonctionnements des systmes numriques sont dterministes, c'est-dire que lexcution du programme est connu chaque instant (ex : par un squenceur), sans
vnements. Il faut donc dployer un argumentaire et une analyse qui permettent de justifier dun
fonctionnement certain du systme.
Comme il en tait question dans la synthse des risques, nous allons mettre en uvre des
mthodes prouves de lindustrie sur notre problmatique de commande numrique.
- 37 -

Chapitre 1

1. Le fonctionnement vnementiel
Le fonctionnement en interruptions est par dfinition un fonctionnement qui est
interrompu. Contrairement un squenceur cadenc par une horloge qui alloue du temps aux
diffrentes fonctions (par diffrents procds), un programme en interruptions est compos de
routines dinterruptions indpendantes les unes des autres. Elles sont indpendantes dans leurs
modes de dclenchement, darrt, mais elles schangent ou se partagent des donnes, donc elles
sont dpendantes les unes des autres en ce qui concerne le fonctionnement du systme. Il faut
donc bien dissocier les deux analyses [RIC03a] [SPU96]:
-

lanalyse des vnements, des dclenchements, des arrts et des priorits : cest la
gestion des ressources, les conflits matriels, les crashs du systme, les blocages. Les
temps dexcutions de chaque fonction sont primordiaux, donc comment peut-on
garantir lexcution de toutes les fonctions dans un temps donn?

lanalyse des flux : cest la cohrence des donnes, le risque du bogue, les mauvaises
utilisations. Il faut prendre en compte le fait du non squencement, mais de
lenchanement des fonctions (et non des tches au sens du squenceur). En effet,
quel est limpact sur les donnes manipules si les interruptions sont glissantes les
unes avec les autres ?

Ces deux analyses prennent en compte le caractre de lvnement, c'est--dire si cest un


vnement priodique ou non, ce qui change fondamentalement le caractre de linterruption. On
rappel ces caractres temporels :
-

Priodique : lexcution de la tche a lieu dans un intervalle rgulier. On connat le


pire temps dexcution de la tche (temps maximal), sa priode et son deadline.

Apriodique : cest une tche excute alatoirement. Son apparition est inconnue lors
de la conception.

Sporadique : elle arrive arbitrairement, mais avec un intervalle minimum entre deux
occurrences. Elle a un WCET (pVIII) et un deadline (chance stricte). Ses attributs
sont connus lors de la conception.

Les diffrentes analyses sont sensibles au dterminisme, donc une interruption apriodique
est prohibe. Il nen est pas moins possible de continuer avec les autres. Avec une approche de
type RMA (pVIII), on procde lanalyse temporelle des pires temps de rponse (WCET)
[RIC03b] pour que nimporte quelle tche puisse sexcuter dans son temps imparti. Lanalyse est
proche de ce qui a t dit plus tt, lorsque lon sintressait au fonctionnement du DSP. On
rappelle les critres suivants et on taye sur le fonctionnement DSP type C2x :
- 38 -

Chapitre 1
-

restrictions sur le matriel :


o dures dexcution des instructions fixes ou bornes : cest le mode de
fonctionnement normal du DSP o toutes les instructions sont fixes ainsi que le
mode dadressage.
o pas de mmoire cache : la mmoire du DSP est conue de telle manire que la
RAM est une ressource constante et unique pour les calculs. Lutilisation des
registres internes de lALU est prdtermine en cbl, donc cela ne constitue pas
une mmoire cache (dvelopp au second chapitre).
o pas de pagination : la pagination du DSP est une pagination de conception, o
lon identifie les diffrentes zones mmoires, diffrente de celle voque ici qui est
une pagination dynamique des donnes pour occuper la RAM au mieux. Cela
nest pas utilis dans le DSP.
o pas de swapping : il ny a pas de phnomne de dplacement de donnes car rien
nest dynamique. Tous les espaces mmoires sont rservs et figs ds le
dmarrage.
o pas de pipeline : le pipeline fait parti des attributs majeurs du DSP, mais cest un
mcanisme constant et permanent, dont lutilisation est dfinie la compilation.
Le pipeline nest pas dynamique en fonction des demande daccs type DMA dun
PC.

restrictions sur le logiciel


o pas de rcursivit : le code a un accs unique chaque instant. Il na pas de
multiples utilisations et de fonctions rentrantes.
o pas de dclarations dynamiques : toutes les variables sont cres au dmarrage, et
les mmoires sont alloues ce moment l.
o pas de goto, break : ce langage nest pas compatible avec une excution sans
sauts conditionnels et sans sauts sans retour.
o pas de float, long : le programme est ralis en virgule fixe dans le format du DSP.
Le long est utilis car cest un format prvu dans le DSP, donc la restriction ne
sapplique pas.
o appels explicites des procdures ou des fonctions : tous les appels aux fonctions
sont fixes et constants, avec un mode dadressage identique et complet. Il ny a
pas dambigut.
o limitation des boucles (dure borne ou nombre ditrations born) : toutes les
itrations sont bornes selon les rgles de codage en vigueur. Les dures sont

- 39 -

Chapitre 1
aussi bornes avec ces mmes rgles. Seul le code qui nest pas en interruption est
infini, donc la restriction est hors contexte.
A priori, bien que le DSP soit sans RTOS, lutilisation des ressources est saine. On peut
continuer lanalyse sur les interruptions.
Dans lapplication, le DSP est le seul organe de contrle de lantenne (partie
servomcanismes), donc il gre toutes les entres/sorties (au sens fonctionnel). A ce titre, chaque
entre/sortie dispose de ses propres contraintes. On a diffrentes interfaces qui sont les
amplificateurs, les communications, les capteurs. Chaque famille de fonction a ses propres
priphriques, des mcanismes hardware sont mis en uvre afin de bnficier dune capacit
de traitement maximise des informations et des signaux (do un processeur de traitement du
signal). Ainsi, on va trouver dans le fonctionnement du DSP des bases de temps distinctes et des
priphriques ddis, indpendants les uns des autres.
Les priphriques nont pas tous la mme importance, que lon qualifie soit sur le plan
fonctionnel (dans la chane fonctionnelle du systme), soit sur le plan scurit de fonctionnement
(importance de la dfaillance dun priphrique). En effet, un priphrique peut tre dfaillant
sans quil remette en cause lintgrit des dispositifs, ou inversement une dfaillance furtive peut
avoir un impact significatif sur la fiabilit et la dure de vie du matriel.
Le DSP est un composant utilisable de multiples manires, soit avec un squenceur ddi
lapplication, soit avec un RTOS (donc un systme dexploitation pour les composants
embarqus), soit en interruptions directes.
o le squenceur/scheduler [LIU73] ddi lapplication est bas sur une conception
simpliste dun RTOS, o celui-ci est rduit sa plus simple expression. On accde aux
diffrents priphriques par scrutation des entres, et les sorties sont rafrachies au
rythme du squenceur. Le squenceur est plutt dune frquence leve car les tches5
doivent senchaner trs vite pour donner lillusion du temps rel ;
o le RTOS est un systme de gestion temps rel des tches, et embarqu dans la cible avec
les tches. Il est conu sur mesure pour la cible (Texas Instrument son propre RTOS :
DSP BIOS (pVIII)). Ces RTOS ne sont gnralement pas certifis. Les systmes certifis
sont plus accessibles pour des stations temps rel o la station a tellement dusages
multiples dans lindustrie quelle est rutilisable, comme le RTOS. La conception du
systme est faite en fonction du RTOS utilis. Les performances temps rel sont alors

Le terme tche est employ abusivement dans ce document car cest souvent dune fonction ou dune
routine dont on parle. Cela permet cependant dhomogniser la lecture pour comprendre les diffrentes
variantes.

- 40 -

Chapitre 1
trs hautes. Le dsavantage est que le RTOS consomme des ressources au dtriment des
tches, et cest difficile sur une cible dont les capacits sont limites ;
o le fonctionnement en interruptions directes est ce qui se rapproche le plus du temps
rel , car les tches disposent de 100% des ressources de la cible, mais la conception des
tches requiert une conception en prenant en compte les ressources matrielles. Il ny
a plus de distinctions entre les tches, les drivers et le RTOS. Concrtement, les drivers et
les tches forment des routines dinterruptions, et le RTOS fictif est ralis par les
flags hardware et les vnements, dont larchitecture est laisse aux soins du
dveloppeur. Cest pour cela que chaque conception est unique et que le code nest pas
transportable.
On notera quil y a une diffrence assez significative entre un ordonnanceur/squenceur et
des interruptions directes. Lordonnanceur temps rel va essayer de remplir au maximum le CPU
pour faire un maximum de tches afin de donner une illusion de temps rel. Avec des
interruptions directes, on va essayer davoir la marge de temps (CPU non utilis) la plus forte
possible pour maintenir/garantir le temps rel [THI04]. Ceci requiert donc une analyse des
temps, qui apparat essentielle.

2. Lanalyse temporelle (approche RMA)


Lanalyse RMA (Rate Monotonic Analysis) est une mthode danalyse temporelle des temps
dexcution. Cela peut tre une mthode assez lourde mettre en uvre selon la complexit du
systme et du type de tches utilises. On retrouve lutilisation des mthodes RMA dans les
systmes ordonnancement [AZZ04] [KAL04], o cette mthode prend tout son sens avec les
stratgies de partage du temps qui crent tout un ventail denchanement des tches. Cet
enchanement dynamique induit des temps dexcutions diffrents, ce qui implique de dterminer
le temps maximal. Cest une analyse temporelle o le but final est bien de connatre le pire cas, et
non de donner toutes les stratgies possibles. Les mthodes danalyses permettent de calculer le
pire temps en fonction de la stratgie de lordonnanceur, de la date dactivation, de la pire dure
dexcution, du dlai critique (temps maximal entre lactivation et la terminaison) et de la priode.

- 41 -

Chapitre 1

3. Lanalyse fonctionnelle (approche AMDEC)


Lanalyse AMDEC (ou FMECA) est un outil [AMDEC] trs gnrique appliquer
nimporte quel systme en vue de dresser un panorama sur la sret de fonctionnement du
systme. Cest une tude dont les axes significatifs sont choisis par le concepteur, tel que lanalyse
de maintenance, des procdures, des dfaillances, des points critiques.
Malgr son caractre trs gnrique, la dmarche gnrale permet dadapter lanalyse son
projet, en choisissant bien les points pertinents. Ainsi, dans le cas du systme base du DSP, on
sintresse la fois au composant et ses modes de dfaillances, ainsi qu larchitecture du
programme qui lui est ddi. Lanalyse RMA, qui est trs cibl la problmatique du temps
dexcution, va tre complt par lanalyse AMDEC dont le but est de vrifier la cohrence du
systme, ses interactions fonctionnelles et ses modes de fonctionnements pour soulever des
modes de dfaillances, leurs effets et leurs criticit ; le but tant de donner des solutions ou de
borner les cas de fonctionnement. Cette analyse sera dveloppe dans le second chapitre sur
lexemple de la gestion des donnes.

III.Bilan des normes et analyses


Lusage des normes est essentiel et obligatoire pour fournir un travail cohrent et utilisable.
Il faut cependant avoir un recul et une vue densemble sur les normes pour en avoir une
interprtation juste et efficace. Tout laspect documentaire et la rigueur du projet doivent tre
abords en amont. Le travail de la thse sassocie cette dmarche. Le caractre novateur, quant
lutilisation du DSP, ne doit pas tre entrav pour toutes ces normes qui cause dun usage
dhabitudes peut masquer la relle possibilit dexploitation de composants qui ne sont pas
dans les rfrentiels usuels et conventionnels des dispositifs (notamment lors des
dveloppements).
En ayant tudi la problmatique de lusage du DSP dans les systmes embarqus temps
rel (SETR) voqus par les normes, on remarque quil nest pas du tout prohib dutiliser des
dispositifs base de DSP, partir du moment o lon est capable de justifier nimporte quel choix
et de garantir nimporte quel cas de fonctionnement. Ce nest alors plus quune question de mise
en uvre des moyens de tests et de vrifications adapts au dispositif en question. Les moyens
abords ici ont t mis en uvre dans les chapitres suivants, mme si tous les dtails ne sont pas
fournis afin de ne pas faire driver les thmatiques des chapitres suivants.
- 42 -

Chapitre 2

Chapitre 2 : modlisation, simulation et


conception de lensemble
I.

Le systme ........................................................................................................................................... 44
A.

La problmatique de lantenne ................................................................................................ 44

B.

Lexistant..................................................................................................................................... 44

C.

La rupture technologique ......................................................................................................... 45

II.

Une tude de servomcanisme ....................................................................................................... 47

A.

Le dcoupage fonctionnel........................................................................................................ 47

B.

Les boucles ................................................................................................................................. 48

III.

Une approche sous Matlab/Simulink.............................................................................. 51

A.

Ltude continue........................................................................................................................ 51

1.

Le principe gnral .................................................................................................................... 51

2.

Le dtail des axes circulaire et lvation................................................................................. 54

B.

Etude chantillonne au format du DSP ............................................................................... 56

C.

Lanalyse du code ...................................................................................................................... 60

D.

Lanalyse normative des vnements...................................................................................... 64

1.

La prise en compte des normes............................................................................................... 64

2.

Lanalyse vnementielle .......................................................................................................... 71

a) Les mcanismes ......................................................................................................................... 71


b) Lanalyse temporelle.................................................................................................................. 76
c) Lanalyse fonctionnelle ............................................................................................................. 80
d) Lanalyse des flux de donne ................................................................................................... 83
IV.
V.

La protection de la mcanique ................................................................................................ 85


Bilan de la simulation/conception ................................................................................................. 87

- 43 -

Chapitre 2

I. Le systme
A. La problmatique de lantenne
Lantenne aroporte est un systme en plusieurs parties dont les servomcanismes, les
amplificateurs, les calculateurs et les interfaces utilisateurs. Cette thse concerne les
servomcanismes et les amplificateurs des moteurs. On notera que lamplificateur hyperfrquence
sera intgr proximit des autres. Lantenne est un assemblage mcanique assez sophistiqu,
situ la pointe de lavion (voir Fig. 20), derrire le radme. Celle-ci est soumise aux contraintes
environnementales car le radme nest pas une protection isolante.

Fig. 20 : Emplacement du radar aroport


Le radar remplit la fonction mto , ce nest pas un radar de vision comme ceux que lon peut
rencontrer dans les avions de combat. Il permet de dtecter des conditions mtorologiques, ainsi
le niveau de criticit C suffit. Cest une antenne balayage mcanique, donc deux axes de
mouvements sont ncessaires pour diriger les ondes hyperfrquences. Il faut donc une certaine
prcision des mouvements pour que les mesures soient traitables.

B. Lexistant
Les systmes actuels (voir Fig. 21) permettent dobtenir des positionnements prcis de
lantenne avec des motorducteurs. Ce sont des actionneurs mcaniques complexes qui
contiennent des engrenages. Ces derniers introduisent des jeux, de lusure et cela aura un impact
sur les rsonances basses frquences qui sont du mme ordre de grandeur que nos bandes
passantes. En plus de limpact sur les asservissements, on a une contrainte sur la dure de vie de
lantenne, o lon doit prendre en compte le MTBF. Les motorducteurs ont aussi un volume et
- 44 -

Chapitre 2
un poids non ngligeables. Le plateau de lantenne est reli lamplificateur hyperfrquences via
des guides dondes, constitus de parties fixes, et dun joint tournant. Celui-ci est une pice
coteuse qui demande un entretien (maintenance prventive et corrective).

Joint tournant
hyperfrquences
motorducteur

Fig. 21 : Radar actuel (concurrent)

C. La rupture technologique
Le radar de Thales (voir Fig. 23) propose une rupture technologique des
servomcanismes, concernant llectromcanique et les amplificateurs. En effet, on remplace les
motorducteurs par un entranement direct (voir Fig. 22), c'est--dire une prise directe entre laxe
du moteur et laxe de rotation de lantenne, nomm par la suite direct-drive . On supprime
ainsi les jeux et les usures lis aux engrenages. Ensuite, les amplificateurs qui taient dports sont
intgrs lantenne. Comme les amplificateurs des moteurs et de la partie hyperfrquence sont
ports par la mcanique mobile, on saffranchit dune connectique complexe et du joint
hyperfrquence.

Antenne stator lvation (amplificateurs)


Rotor lvation stator circulaire
Rotor circulaire - pidestal
Fig. 22 : Cinmatique du direct-drive

- 45 -

Chapitre 2

Amplificateurs moteurs

Moteurs intgrs

et hyperfrquences

laxe porteur

Fig. 23 : Radar direct-drive (image de simulation)


Cest partir dune stratgie mcanique destine augmenter la fiabilit et diminuer le
cot (dentretien et de fabrication) quest apparue la problmatique de lintgration et de la
conception de lensemble lectronique. Pour parvenir lentranement direct, il faut des
actionneurs adapts et une commande associe. Les moteurs sans balais Brushless sont une
solution pour rpondre la problmatique de la fiabilit. Un ensemble lectromcanique a t
conu et dimensionn pour cette application : la mcanique a t construite autour dun stator
dune machine synchrone, et des aimants permanents ont t dposs la surface de laxe qui est
le pivot de la partie porte. Un pivot est ddi la rotation circulaire et un pivot la rotation en
lvation. Les actionneurs sont des machines troites, mais avec un diamtre important compte
tenu des dix paires de ples (pour la basse vitesse) et de leur couple (classe centaine de W, 3
N.m), qui permet de disposer dun couple important pour lentranement direct. Le moteur
circulaire a un dbattement angulaire au maximum de 90 tandis que le moteur lvation a un
dbattement angulaire au maximum de 45. Sachant que la prcision de positionnement est de
0.25, on remarque que le contrle moteur va devoir prsenter des performances assez leves.
On a la double contrainte entre une forte intgration de llectronique dans le contrepoids de
lantenne, et une grosse capacit de contrle commande. Cela explique le choix de composants
numriques ddis.
Ensuite, il faut tenir compte des contraintes imposes par le contexte aronautique. En
effet, lantenne est soumise aux vibrations, aux acclrations, aux variations de temprature, mais
aussi la C.E.M. (ex : [DO160]), linterchangeabilit, et aux normes. Les contraintes mcaniques
et lectriques font partie du dimensionnement du convertisseur et des asservissements, et les
contraintes normatives [RCM] et fonctionnelles [REFSA] font partie des verrous techniques qui
cartent certaines solutions techniques.
- 46 -

Chapitre 2
Les retours des positions sont obtenus par des capteurs angulaires absolus sur chaque axe,
qui sont rfrencs au montage au 0 absolu du plateau antenne (vise droit devant). Ce sont les
deux seuls capteurs ; on ne compte pas les capteurs sur les circuits imprims. On utilise les deux
capteurs de position pour les fonctions dasservissements et pour les contrles moteurs (se
rfrer au dernier chapitre pour la problmatique de lindexage).

II. Une tude de servomcanisme


A. Le dcoupage fonctionnel
Les servomcanismes sont un ensemble constitu dun systme mcanique, dun systme
lectronique, et dun systme informatique [ABD01]. Vu de lextrieur, la fonction servo (Fig.
24), qui est le systme de pilotage de lantenne, nest constitu que de deux entres que sont les
capteurs de positions, et de deux sorties que sont les moteurs. La fonction est interface avec un
calculateur pour recevoir les consignes de fonctionnement, et pour renvoyer des informations de
fonctionnement.

antenne

Fig. 24 : Fonction servomcanisme et I/O


La fonction servo est intgre lantenne et fait partie dun ensemble lectronique (voir
Fig. 25) dnomm RTSU, qui est le coffret (Unit) partag entre les amplificateurs des moteurs
(Servo) et les amplificateurs hyperfrquences (Receiver/Transmitter).

- 47 -

Chapitre 2

Fig. 25 : RTSU et Servo


On remarque lEPLD aux cts du DSP. Il remplit une double fonction : cest la fois une
interface pour convertir les formats des capteurs, et cest aussi un composant du monitoring. Le
convertisseur statique ainsi tudi, pour la commande numrique, est troitement li aux
servomcanismes que sont lantenne avec ses mouvements mcaniques, ses asservissements et ses
contraintes [MAR06] [OZE06] [MAU03].

B. Les boucles
La fonction servo prend en charge la fois le contrle moteur des deux axes et leurs
indexages, les asservissements des mouvements, les gnrateurs de consignes, le changement de
repre, le monitoring, la communication et la gestion des butes. Chaque fonctionnalit a t
simule indpendamment. On a des machines tats finis, et des fonctions C dterministes pour
les parties transverses la fonction principale que sont les asservissements mcaniques. Ce point
a t abord prcdemment. La figure suivante (Fig. 26) montre les diffrentes fonctionnalits qui
reprsentent larchitecture de conception dans le DSP :

- 48 -

Chapitre 2

Fig. 26 : Organigramme du programme


La partie automatique est dimensionnante pour la commande, car elle fixe les bases de
temps, les temps de calculs et les ressources ncessaires. La conception de larchitecture nest
donc pas fixe au dbut du design, mais dcoule des simulations abordes dans la prochaine
partie. Larchitecture (Fig. 26) ne fait pas clairement apparatre les entrelacements des fonctions,
ainsi la reprsentation des boucles (Fig. 27) montre une imbrication des diffrents blocs
fonctionnels.

Fig. 27 : Boucles de la fonction principale


Note : La vitesse est estime ( 100Hz) partir de lchantillonnage de la position 1 kHz, rsultant dune
tude par simulation pour les besoins des asservissements.

- 49 -

Chapitre 2
A partir du moment o lon commence fixer les bases de temps et larchitecture, on est
dans une phase o ltude des servomcanismes en simulation et la conception des programmes
deviennent fortement couples. Une tude Matlab/Simulink se prte bien cet exercice
puisque lon peut simuler de grosses structures de faon itrative. On ne montre pas ici les
fonctionnements transverses, notamment concernant lindexage moteur dont le fonctionnement
est diffrent au niveau des bases de temps, tel quil est montr dans larchitecture (Fig. 26).
Les boucles de courant sont chantillonnes 10 kHz pour le contrle des correcteurs de
courant qui poursuivent les composantes sinusodales basses frquences du contrle moteur. En
effet, la frquence de dcoupage 125 kHz nest pas lie au 10 kHz (on ne travaille pas au niveau
de la commutation). La frquence de dcoupage est filtre en sortie des onduleurs (avant les
moteurs) afin que les moteurs ne soient pas excits par des fronts, mais par des sinus purs. Ce
sont des filtres LC amortis, en srie avec les inductances des moteurs. Ces filtres seront lobjet
dune problmatique au dernier chapitre. Les moteurs et leurs connectiques sont situs juste
derrire le plateau hyperfrquence, ce qui ncessite une certaine matrise des effets C.E.M.
compte tenu de la trs forte proximit entre les moteurs et le plateau rayonnant. On est donc
contraint par la qualit des signaux, mais aussi par le contrle moteur. Cest partir des
simulations qui intgraient aussi les filtres que lon a obtenu toutes les bases de temps, relatives
aux dimensionnements des multiples rgulations.

- 50 -

Chapitre 2

III.Une approche sous Matlab/Simulink


Lide initiale au dbut du projet tait de mettre en uvre une architecture de simulation
sous Matlab/Simulink qui permettait daboutir une gnration complte du code, et qui
puisse tre rutilisable pour les projets similaires. Le but tait de pouvoir donner un outil de
gnration de programme des cibles DSP pour un ingnieur ntant pas expert en informatique
industrielle. Cela consistait dcrire et simuler un convertisseur statique sous Simulink (la
structure lectronique, les lois de contrles, les rgulations), puis de laisser Matlab crer le
programme pour le DSP. Plusieurs problmes ont t soulevs par cette tude, et il y a encore
une tape complexe franchir entre les perspectives de gnration de code certifi, et loutil
certifiable qui demande des connaissances approfondies dans plusieurs domaines.
Ainsi, on propose une solution alternative, o lon utilise Matlab/Simulink pour simuler
les implmentations de la fonction principale, o laspect automatique est prpondrant, avec
une importante tape de codage sous CCS. Les fonctionnalits transverses sont abordes
sparment avec dautres outils.
Dans un premier temps, on valide le systme avec une tude continue, puis on sintressera
la problmatique des formats de la cible en chantillonn. On terminera par lanalyse du code
automatique.

A. Ltude continue
1. Le principe gnral
La simulation (Fig. 28) permet de dimensionner et de tester le fonctionnement des
asservissements et du contrle moteur de chaque axe partir des modles de la mcanique, des
modles des moteurs et des onduleurs. Cest une simulation amont qui est en quelque sorte
ltude de faisabilit du projet partir des dimensionnements lectromcaniques [MAH07]. On
vrifie le dimensionnement des tages lectroniques et mcaniques, ce qui permet dvaluer la
complexit des correcteurs et lois de commande mettre en uvre. Cest bien l quest le
problme : il est trs difficile dvaluer la complexit des asservissements mettre en uvre,
puisquen simulation, tout est possible, et il est difficile de se rendre compte si les lois de contrle
proposes pourront tre implmentes. Cette difficult sera aborde dans ltude au format de la
cible.
- 51 -

Chapitre 2
La simulation permet aussi de grer les changements de repres qui permettent de donner
des consignes dans le repre terrestre alors que lavion volue dans son propre repre. On prend
donc en compte la fonction servomcanismes et les traitements associs dans un seul
ensemble.
Les modles mcaniques sont obtenus par les rsultats de simulation de CATIA raliss
par le bureau dtude qui a dvelopp une antenne ayant une rupture technologique dans son
architecture, soit une cinmatique novatrice. Cette nouvelle architecture dantenne donne des
dformations typiques de lantenne sous des acclrations instantanes, rsultat de la rigidit du
bras ; et on obtient des frquences de rsonances de la mcanique. Ces frquences de rsonance
voluent avec des gomtries diffrentes de lantenne (versions selon les avions). La prise en
compte de modles prcis directement issus des simulations est un trs gros avantage pour le
dimensionnement et la mise au point. Les rsultats sont transposs sous Matlab pour tre
exploits sous Simulink. La validation du systme est faite avec le modle continu.
Les blocs 1 et 2 (voir Fig. 28) reprsentent respectivement les axes circulaires et
lvations. Leurs entres proviennent du bloc changement de repre qui permet de donner les
coordonnes du mouvement dans le repre sphrique alors que les consignes initiales sont dans le
repre terrestre. Les sorties sont les visualisations des trajectoires et des tats de fonctionnements
(couples, courants). Les blocs 1 et 2 ont leurs propres asservissements et modles.

- 52 -

Chapitre 2

Fig. 28 : Systme complet sous Simulink


- 53 -

Chapitre 2

2. Le dtail des axes circulaire et lvation


Le schma Simulink (Fig. 29) montre le dtail de ces deux blocs principaux. Le schma
blocs de laxe permet de distinguer les diffrents blocs fonctionnels tels que les asservissements et
les modles. Les modles de la mcanique sont chargs par le bloc machine synchrone . Sur
lensemble des blocs, ceux qui posent des problmes vis--vis des dynamiques de calculs sont
ceux des asservissements. A partir de cette description du systme en continu, on peut intervenir
sur chaque bloc problmatique pour imposer des contraintes de conception localises, afin
davancer pas pas. On donne dans la suite un exemple simple de passage dun correcteur
continu (Fig. 31) vers un correcteur chantillonn (Fig. 32) avec les contraintes
dimplmentations.
Les contraintes dimplmentations des correcteurs chantillonns sont un moyen de tester
du code sans la cible. En effet, les outils Simulink permettent dintgrer des blocs Texas
Instruments qui sont des interfaces reprsentatives des librairies mathmatiques en assembleur,
des fonctions en C (ex : des structures de correcteurs) et des interfaces de la cible. Ainsi, la
simulation prend en compte des contraintes chantillonnes qui sont celles de la cible.
Lutilisation de ces blocs a aussi un autre avantage : on peut instrumenter les tapes de calcul au
niveau des oprations lmentaires, ce qui dans la cible demanderait de sintroduire dans
lexcution du code de lALU. On pourrait alors tre intrusif, perdre le temps rel, ou ne pas avoir
accs aux donnes au moment souhait. Lintgration des oprations mathmatiques est un rel
avantage. Les diverses configurations que lon trouve dans les blocs Simulink sont celles que
lon trouve aussi dans les librairies de la cible. Par exemple, les outils de virgule fixe permettent
dans le cas dune multiplication : soit de travailler directement avec le multiplieur, auquel cas le
rsultat est brut (rapide mais avec le risque de dpasser le format), soit dutiliser le multiplieur
avec un code ddi qui est un peu moins rapide, mais qui gre les dpassements et les
arrondissements. Sans recherche de performances, il suffit de mettre les options au maximum,
mais dans ce cas on pourra perdre inutilement beaucoup de cycles (coups dhorloge), alors
quavec ce genre de simulations, on pourra dceler les calculs pouvant tre acclrs.
Pour dceler les anomalies de fonctionnement des correcteurs chantillonns, on peut
lancer la simulation continue et hybride en parallle (complte ou partielle), comparer des
rsultats, ou suivre toutes les tapes. Cest assez flexible. Dans le cas expos au III.B, on
connaissait lallure de la sortie pralablement tudie en continue, et la simulation complte du
systme tait incohrente.

- 54 -

Chapitre 2

Fig. 29 : Bloc 1 ou 2
- 55 -

Chapitre 2

B. Etude chantillonne au format du DSP


Ainsi, on remplace le correcteur continu (Fig. 30-a) par son quivalent chantillonn avec les
blocs C2000 (Fig. 30-b) :
correcteur vi tesse echant i nstrum

correcteur vi tesse

In_ref _Vitesse

In_ref _Vitesse

Out_Vitesse

Out_Vitesse

In_f eedback_Vitesse

In_f eedback_Vitesse

Fig. 30 : Correcteurs continu (a) et chantillonn (b)

In_ref_Vitesse
1

Out_Vi tesse

T bvc.s+1

kbvc

PI

In_feedback_Vitesse
2

Fig. 31 : Dtail du correcteur continu (Fig. 30-a)


Coeffs a, b, c
Ut

coeff_vitesse_circulaire_UT

filtre anti repliement


In_ref_Vitesse
1

In_feedback_Vitesse
2

Mx=Ax.Bx
A

IQmath
Y
IQN

UT

Convert

1/(2*pi*1000)s+1

passage en
echantillonn

IQmath
Y
IQN

1
A

coeff_vitesse_circulaire_UT 1

Yt=a.Ut+b.Ut-1+c.Yt-1

IQmath

IQmath
Y

IQN to Float1

IQNmpy

limitation
consigne
couple

IQmath

IQN

YT 1

Out_Vitesse
Convert

IQNtoF

UT 1

coeff_vitesse_circulaire_YT 1

passage en
continu

IQNmpy
IQmath

z
IQmath
Y
IQN

IQmath

Y
IQNmpy

Fig. 32 : Dtail du correcteur chantillonn (Fig. 30-b)


Le schma (Fig. 33) intgre un bloc chantillonn avec les contraintes du DSP, puisque ce bloc
repose sur des librairies de Texas Instruments [TEX] pour le composant choisi. Les
correcteurs sont interchangeables car lenvironnement Simulink permet de grer des bases de
temps distinctes via des interfaces de transitions ddies, qui permettent le passage entre des pas
de calculs variables (pour le continu) et des pas fixes (pour lchantillonn). On notera cependant
que la simulation est beaucoup plus lourde grer pour le simulateur, et que les temps de calculs
sont significativement augments. De plus, les prcautions prendre sont nombreuses (en ce qui
concerne chaque transition et configuration de base temps et les changements de formats), et il
faut des tapes intermdiaires pour tester les bons fonctionnements. Cest donc une tape
dlicate : cest un point faible pour construire une simulation.

- 56 -

Chapitre 2

Fig. 33 : Correcteur de vitesse chantillonn dans la simulation continue


- 57 -

Chapitre 2
Le but dvoluer dune approche continue une approche chantillonne, au format souhait, est
de borner les dynamiques, choisir les rsolutions pour que les calculs soient ralisables dans la
cible. Cette tape peut tout fait remettre en question ltude continue, et la mise au point est
itrative entre le dimensionnement en continu pour la rapidit de simulation, et la vrification en
chantillonn pour confirmer ou infirmer limplmentation.
Le relev en Fig. 34 est le rsultat de linstrumentation du correcteur chantillonn
prcdemment voqu, dans une premire version issue de lanalyse continue. Le correcteur
comporte trois branches (Fig. 32), que sont les multiplications dune quation de rcurrence, qui
sont sommes pour obtenir la sortie. Lquation est de la forme : Yt = a.U t + b.U t 1 + c.Yt 1 (voir
Fig. 32)
Chaque branche de lquation est visible sur le relev en Fig. 34 (M1, M2, M3 o M1=a.Ut,
M2=a.Ut-1, M3=a.Yt-1,). Lentre (consigne) est excite par une forme donde simple pour
lanalyse. On ne le voit pas sur les schmas Simulink, mais par des fonctions de Matlab, on
peut drouler la simulation hybride avec les rsultats de la simulation continue en parallle. Cela
permet de voir les diffrences de comportement entre les correcteurs continus et chantillonns.
Ainsi, lors de la comparaison, la sortie du correcteur a montr une dfaillance (variation de la
sortie inattendue), cest pour cela que lon investigue lintrieur du correcteur pour identifier la
source derreur. On a M1 = a.Ut avec a>0, or M1<0 avec a>0 et Ut >0. Cest le mme problme
pour M2 et M3 qui conduit une sortie Yt errone.

Fig. 34 : Calculs intermdiaires du correcteur dans sa premire version


- 58 -

Chapitre 2
On remarque quavec les signaux forts (transition de lerreur lors de lchelon de consigne), on
assiste une incohrence entre lerreur qui augmente aprs le glitch et la sortie qui diminue dans
le ngatif alors quelle aurait du augmenter dans le positif (voir traits pleins). Cest la consquence
dun dpassement dun calcul intermdiaire Mx (voir traits pointills). Les dynamiques de calculs
des simulations continues ntaient pas bornes comme elles le sont ici. Dans tous les cas, le
correcteur en question naura pas les mmes performances entre une dynamique limite (16/32
bits) et illimite (au sens dun nombre de bits considr comme prcision infinie).
Ensuite, on modifie les paramtres des blocs Texas Instruments pour raliser cette mme
fonction asservissements en prenant en compte les cas ne pas atteindre. Concrtement, les
multiplications vont tre bornes dans le multiplieur , ce qui se traduit par un code
assembleur diffrent au niveau du temps dexcution car on va utiliser plus dinstructions. Il
faut bien remarquer que dans la simulation on gre des problmes dimplmentation qui sont
atomic , c'est--dire au niveau de lALU, les donnes manipules entre le multiplieur, les
accumulateurs via les instructions ddies. On donne en Fig. 35 le relev dans les mmes
conditions de test (quen Fig. 34) : On a bien pour M1 : M1>0 pour a>0 et Ut>0.

Fig. 35 : Calculs intermdiaires du correcteur dans sa seconde version


Dans cette nouvelle implmentation, les calculs intermdiaires Mx (voir traits en pointills) sont
saturs, et les calculs sont stables (voir traits pleins).
- 59 -

Chapitre 2
On peut alors voir directement sur la simulation systme limpact des calculs limits quant
aux performances gnrales. Dans le cas o on aurait justement un fonctionnement dgrad, on
intervient soit sur le rglage ou la structure des correcteurs, soit sur la manire de raliser les
calculs. Ces tapes ont t ralises mais ne sont pas reprsentes, on na ici que lillustration des
rsultats sur un cas simple.
On voit en Fig. 36 (par le cerclage et son zoom) la diffrence entre les correcteurs continus
et chantillonns de vitesse, avec la consigne et la rponse : la rponse nest pas tout fait la
mme entre la simulation continue et chantillonne.
poursuite vitesse circulaire rfrentiel terrestre
80

60

60

40

40

20

20

vitesse en /s

vitesse en /s

poursuite vitesse circulaire rfrentiel terrestre


80

0
-20

0
-20

-40

-40

-60

-60

-80

8
10
temps en s

12

14

16

18

-80

8
10
temps en s

12

14

16

18

Fig. 36 : Poursuite de vitesse en continu ( gauche) et en chantillonn ( droite)


Les mises au point itratives (ajustement des correcteurs) ont permis de converger vers une
solution numrise dont le rsultat correspond au cahier des charges, et qui sapproche du
rsultat en continu. Les limitations des calculs en chantillonn ont pour effet damortir un peu
plus les variations comme on peut le voir sur la zone cercle.

C. Lanalyse du code
Latout initial de Matlab que lon souhaitait exploiter tait la gnration de code par
Matlab du projet. Plusieurs aspects du projet taient dlicats implmenter, ce qui posait dj
quelques problmes. De plus, le code gnr ne devient efficace qu partir du moment o lon
connat trs bien la cible. Ce nest alors plus adapt puisquil faut tre expert dans les deux
domaines et il faut en plus travailler avec les contraintes de plusieurs outils.
Ainsi, on fait ici la synthse des points bloquants et/ou limitants sur la gnration de code
qui ne concernent que les implmentations des fonctions asservissements. Dans la gnration de
- 60 -

Chapitre 2
code, il y a plusieurs points aborder et respecter pour que le code final soit en adquation avec
les rgles de codages et les architectures logicielles. Pour la synthse de lanalyse et pour
diversifier les exemples, on ne parlera pas de la problmatique du code fonctionnel, mais de
larchitecture de conception dun schma Simulink et des rgles de codages aronautiques.
On parle ici directement du fonctionnement sous interruptions, o lon sapproche de la
philosophie de dveloppement avec le logiciel ddi la cible (en C et en assembleur) pour
excuter les fonctions dasservissements. Le but est de dclencher une routine contenant le code
des asservissements partir de lacquisition des grandeurs analogiques. Pour la lisibilit de
lexercice (et pour ne sintresser qu la structure), on utilise un code fonctionnel trs simple.
Lexemple choisi est donn en Fig. 37 :
(1)
(2)

(3)

Fig. 37 : Exemple Simulink pour la gnration de code


On excute une fonction (2) via le dclenchement dune interruption (1). La fonction est dtaille
en (3). Cette fonction est la routine, avec dans cet exemple un code fonctionnel qui est un gain
suivi dune saturation. Linterruption est celle qui concerne lADC (on ne le voit pas sur le
schma, cest un paramtre). On a bien un vnement hardware qui lance une routine, comme on
le ferait directement dans le logiciel de la cible. On examine le code gnr prsent en Fig. 38,
Fig. 40 et Fig. 41. Cette analyse met en relief la structuration du code, sa performance, sa
lisibilit : on montre les fonctions gnres, et ce que le code contient avec la gnration de code
des deux blocs Simulink (1) et (2), le (3) ntant que le contenu du (2).

- 61 -

Chapitre 2
I.T. du
scheduler

I.T. de
lADC

Fonction dpendante
de lIT ADC

I.T. utilises

Fig. 38 : Systme dinterruption du code gnr


Bien que sous lenvironnement de Simulink on ait configur linterruption de lADC seule et
directe, on se retrouve avec un squenceur sur TINT0, qui relve du fonctionnement sans
interruptions, comme illustr en Fig. 39.

OS temps rel
TINT0
Interruption
de priorit maximale
haute frquence

ADCINT_ISR
Interruption
De trs haute priorit
haute frquence

Scheduler

I.T. ADC

Int1_pie6_task :
asservissement

Rt_one_step

Fonction vide

Fig. 39 : Synoptique du systme dinterruption gnr


De plus, la fonction gre par le noyau fait appel un mcanisme de flag qui va complexifier la
dmarche danalyse et de certification, puisque le mcanisme est imbriqu avec le reste du
programme. Le code est plus complexe quun codage en C dans lenvironnement de la cible.

- 62 -

Chapitre 2

Fig. 40 : Fonction du scheduler


En ce qui concerne la gestion des interruptions, le rsultat attendu nest pas celui que lon aurait
cod. La stratgie nest dune part pas la mme, mais on a aussi un code trop gnrique qui va
limiter notre champ daction en terme de souplesse, mais aussi dvolution et de rserve de
puissance de calcul. Lanalyse se poursuit ensuite sur la routine dinterruption qui contient le code
fonctionnel, que lon peut voir en Fig. 41 :

Lecture de
lacquisition

gain
saturation
Affectation PWM
Fig. 41 : Routine dinterruption gnre

- 63 -

Chapitre 2
Dans la routine dinterruption gnre (voir Fig. 41), on a lavantage que le code soit plutt bien
lisible, et on fait trs vite le lien avec le schma Simulink malgr des lignes de code inutiles
(voies ADC non utilises). Par contre, la gestion de lADC nest pas celle souhaite, puisque le
Start Of Conversion est lanc par lactivation du Flag aprs que la routine ait t lanc au lieu
dtre gre par le timer ddi. De plus, un while est utilis pour atteindre la fin des
conversions, et en aronautique, daprs les normes dans ce type de programme, on ne peut pas
avoir dinstructions bloquantes. Ces limitations ont t signales, en plus dautre problme avec
les Timers, MathWorks pour les prochaines rvisions.
Dans le contexte actuel, il na pas t possible datteindre les objectifs avec le code automatique.

D. Lanalyse normative des vnements


1. La prise en compte des normes
Nous venons de voir la gnration automatique de code et ses actuelles limitations. Lorsque
lon intgre les contraintes apportes par les normes, le problme devient encore plus complexe.
Pour la conception du systme, on doit prendre en compte les contraintes dindustrialisation
avant mme de concevoir un prototype, sinon beaucoup de travail serait perdu.
On illustre ce travail amont par lanalyse de deux points importants de la norme
dAIRBUS [ABD100], directement lis la commande embarque que constitue le DSP. On
rappelle quici on ne dispose plus de calculateurs, mais dun DSP qui rassemble les fonctions
anciennement ralises en analogique avec un FPGA en tte (avec par exemple une stratgie de
triplication), et commandes par un calculateur dport. La norme dAIRBUS [ABD100] a
lavantage sur la norme DO178B dtre plus explicite sur les contraintes techniques, mais comme
cest une norme beaucoup plus complte, elle demande une tude plus approfondie pour la
satisfaire.
La principale proccupation pour le DSP est la mmoire RAM qui est unique et intgre, si
lon reste dans une configuration o on utilise le DSP seul. Dans le cas dune mmoire
externalise, la RAM est contrle par le DSP qui a une architecture unique et encore une fois
intgre. On na donc pas la souplesse du FPGA qui permet de construire des espaces mmoires
en fonction des besoins et des contraintes.

- 64 -

Chapitre 2
Extrait ABD100.1.10 au sujet du "non dterminisme" de la gestion de la mmoire cache :

Fig. 42 : Extrait ABD100.1.10


Tout dabord, il y a plusieurs faons dinterprter le terme cache . Au sens gnral, dans les
systmes informatiques, un systme dexploitation contrle les ressources matrielles :

processeurs,

bridges (interfaces lectroniques numriques),

mmoires RAM et ROM.

Toutes ces entits sont distinctes. Quand lon parle de mmoire cache, cest un type de
mmoire trs particulier du processeur, dont la caractristique principale est la trs grande vitesse
de fonctionnement compar au reste du systme, mais dont la taille est trs limite. Cette
mmoire est ddie aux calculs proximit dune ressource matrielle trs rapide sans passer par
les accs mmoires usuels. On utilise surtout cette mmoire lorsque lon fait de multiples accs
sur une variable pendant un calcul. Cela revient travailler localement sur une donne avant
de la stocker dans la mmoire tendue , plus lente. La mmoire cache est une mmoire
localise , la gestion de son utilisation impacte directement sur la stabilit du systme. Comme
elle est au cur du processus, on doit garantir sa robustesse.
Le facteur dchelle entre cette mmoire et les autres mmoires fait donc apparatre que
cette mmoire est plus sensible (plus vite, plus petit !). On trouve donc la mmoire cache dans la
norme, srement vue pour ce type de systme, o larchitecture hardware est trs clate.
Avant de transposer la norme sur le DSP, il semble ncessaire de poser le contexte de la
norme, base sur un systme microprocesseur et priphriques (DSP). Analysons chaque
terme au sens gnral :

- 65 -

Chapitre 2
-

S.E.U. : la RAM ultra rapide (localise prs des ressources critiques) est plus sensible
car elle est plus petite que la RAM de grande capacit ; elle est ce titre diffrente des
autres mmoires ;

Dterminisme : comme lutilisation de la mmoire cache dpend dun besoin de


traitement acclr, elle est par dfinition non dterministe. Cest le programme qui
oriente les donnes. Dune certaine manire, on peut choisir la mmoire, mais les
transferts sont acclrs temporairement. Ainsi, si deux traitements sont faits en
parallle, ou en pseudo-parallle, le passage dun calcul en mmoire cache va
engendrer lobtention dun rsultat plus rapide quun autre traitement, surtout si cela
concerne une ressource hardware ;

Variation of Execution Times : les temps dexcution en mmoire cache et en


RAM sont significativement diffrents, donc on a des niveaux de temps dexcution.
Les temps dpendent des ressources matrielles, donc a priori, cest difficile de rguler
ou contrler les flux de donnes si on souhaite parallliser ;

Cache modelling accuracy : la possibilit de modliser fidlement la mmoire cache


et son utilisation permet de simuler les comportements dynamiques. Cela implique de
modliser un comportement logiciel, sur un environnement matriel trs prcis ;

Real time operating system use of cache : la mmoire cache est une ressource
partage par lensemble du systme, toutes donnes confondues. En temps rel, on se
doit de contrler les flux, donc de bien contrler la mmoire cache pour viter les
engorgements, et que le bus (dentres/sorties) des donnes puisse vhiculer les
donnes traites rapidement en mmoire cache. Le traitement temps rel implique
donc une utilisation de la mmoire cache, mais aussi vis vis des autres ressources ;

Cache coherency : pour passer dun systme lent un systme rapide et vice-versa, il
faut une certaine cohrence entre les flux de donnes et dinstructions. Dans un
microprocesseur, le bus est commun, donc tout transite sur le mme canal (structure
Von Neuman). Un synchronisme et un mcanisme de fonctionnement sont
ncessaires ;

Cache jitter and partitionning : comme la mmoire cache est plus ou moins
indpendante, les accs en mmoire cache et en RAM sont du fait d-corrls. La
gigue entre les diffrences de timings est donc un point dlicat. Les frquences de
fonctionnement sont trs loignes, et le mcanisme daccs au bus est diffrent.
Normalement, cest matriel. Comme la mmoire cache est petite, (et gnralement
cest elle que lon veut augmenter en priorit sur la RAM pour les performances), on
- 66 -

Chapitre 2
ne peut pas stocker beaucoup de donnes. Faire du partitionnement, cest ajouter une
gestion de pile logicielle dans un mcanisme matriel, donc ncessairement, cest
ajouter des contraintes pour garantir lintgrit des donnes.
Voyons les diffrences vis vis du DSP :
Le DSP utilis (ddi llectronique de puissance ; famille C2000) nest pas un
microprocesseur avec un environnement matriel spar, mais cest un microcontrleur o tout
est intgr. Le composant intgre tous les priphriques dans une structure harvard (multibus : data, instructions, I/O) avec une seule et unique frquence de traitement des donnes. Par
contre, on trouve un pipeline typique pour le traitement des instructions qui consiste palier une
frquence de fonctionnement bien plus faible par rapport un microprocesseur, en paralllisant
les mcanismes matriels internes aux gestions des instructions. Et cest cela la puissance du
DSP : petit composant (faible frquence = faible consommation = bon rendement) et grosse
capacit de calcul : cest compltement diffrent sur le fond et sur la forme dun microprocesseur.
De ce fait, la gestion mmoire est diffrente. Dans le DSP, ladressage mmoire est direct
car lespace mmoire utilis est infrieur aux capacits dadressage maximales. Le noyau de
calcul exploite directement les donnes en RAM. On peut dire que la mmoire cache et la RAM
sont la mme chose, donc que tout est mmoire cache , ou que rien nest mmoire cache. Cest
bien l o linterprtation pour faire basculer la conception. La mmoire cache peut-tre aussi les
registres accumulateurs de lALU. Dans ce cas, tous les registres sont de la mmoire cache.
Afin de diffrencier les zones mmoires entre les donnes stockes, les paramtres, etcla
mmoire est sectorise pour borner la pile , et le reste. Sur le fond, cest radicalement diffrent
du microprocesseur (pour les registres).
Revoyons les diffrents points prcdents concernant le DSP :
-

S.E.U. : La RAM est commune. Tout est sensible de la mme manire ;

Dterminisme : avec un adressage direct du noyau, le dterminisme semble plus


simple comprendre et dmontrer. Les enchanements sont squentiels, donc un
ensemble dinstructions pour manipuler les donnes sera trait la chane, selon la
squence du programme prdfini. Ensuite, cest la gestion de la pile qui sera
vrifier pour le dterminisme. Cest le point dlicat ;

Variation of Execution Times : Les temps sont identiques compte tenu de lunique
frquence pour la RAM interne. Il y a cependant un bmol car la RAM interne o lon

- 67 -

Chapitre 2
manipule les donnes est un peu plus rapide que la Flash qui contient le code
excutable. De la mme manire, la RAM externe est plus lente. Dans ce cas, on
considre la RAM interne comme mmoire cache, sachant quelle peut tre seule (sans
RAM externe) ;
-

Cache modelling accuracy : Est-on capable de modliser un cur DSP : on peut


implmenter un cur DSP dans un FPGA, mais est-ce certifi pour une
comparaison ?

Real time operating system use of cache : le fonctionnement en interruption veut


aussi dire quil ny a pas de systme dexploitation. Lutilisation des ressources est
directe, via le code excutable applicatif. Tout est dtermin par conception ;

Cache coherency : l, il faut poser le problme (au sens dexercice) du pipeline. Les
bus sont parallliss, donc il y a une diffrence entre les donnes et les instructions.
Sachant que les instructions se suivent dans le mcanisme de pipeline, ce nest pas
trivial, mais cest un mcanisme qui fait la force du DSP, on peut donc penser que le
systme est robuste puisque cest la base de son fonctionnement ;

Cache jitter and partitionning : la gigue nest voquer qui si lon assimile la RAM
la mmoire cache avec la flash qui contient le code excutable, ou alors sil lon
utilise aussi la RAM externe.

Lusage du DSP prsente donc quelques inconvnients pour limplmentation puisque lon cre
un systme ddi, mais on a aussi des gros atouts qui vont dans le bon sens au vu de la
certification, de part son homognit.

- 68 -

Chapitre 2
Extrait ABD0100.1.10. 2 au sujet de la gestion des IT : gestion statique ?

Fig. 43 : Extrait ABD100.1.10.2


On est dans le cas typique du systme hors tagre, car chaque programme est ddi une
application spcifique. Il ny a pas de systme dexploitation, donc cest lapplication qui contrle
les ressources. Analysons chaque point :
-

minimise the number of interrupt : ceci nest pas dfini par notre volont, mais par
les priphriques que lon utilise sur le DSP (Convertisseur Analogique Numrique,
boucles dasservissements), donc on na pas des interruptions au sens du systme
microprocesseur qui donne du temps aux tches, mais au sens microcontrleur qui
provoque des interruptions logicielles suite un vnement matriel. Cest la
conception qui impose les choix des interruptions.

Minimise the interface between the RTS and the application software :
contrairement un systme avec microprocesseur, nous navons pas dinterface car il
ny a pas de RTS ; ou alors, on considre que lapplication et le RTS ne font quun,
auquel cas linterface est maximise puisquelle est complte !

Prioritise interrupts depending on the safety impact of the associated


function(s), i.e. the more critical the function is, the highter the interrupt
priority should be : cest le cas car on sest appuy sur la DO178B au dbut du
dveloppement pour faire les choix rglementaires. Tout ce qui touche au contrle
- 69 -

Chapitre 2
moteur, donc llectronique de puissance est en priorit matrielle maximale. On
sest interdit tout mcanisme de priorit logiciel : tout est matriel. Ensuite, les
priorits sont par niveaux dgressifs. On peut avoir une priorit identique pour la
communication normale et debug , mais on fonctionne avec une exclusion
mutuelle et des buffers , avec un temps de rponse infrieur au temps de cycle de
communication, pour garantir le temps rel.
The real time scheduler :
-

have a clear and visible scheduling mechanism : Il ny a pas de mcanisme


logiciel, et le mcanisme matriel est vraiment transparent. Cest un point qui va en
faveur du DSP et qui est tay dans les documentations du composant.

support the synchronisation between the different tasks : les synchronisations


sont dpendantes des vnements matriels, sachant que les tches synchrones sont
synchronises au niveau matriel. On garantit la synchronisation sur celles qui le
ncessitent, ainsi que le fonctionnement mme si les tches sont dsynchronises.
Dans un microcontrleur, lasynchronisme est cependant le type de fonctionnement
par dfaut. Un synchronisme est un cas particulier.

Monitor for the completion of each task in a given time : un des axes de codage a
t de faire du code non extensif. A ce titre, les temps dexcutions des tches sont
identiques quelles que soient les entres. On peut aussi contrler les dures sur un
oscilloscope via des sorties ddies (la norme demande des moyens de vrifications).
Seuls les passages en pile sont masqus. Pour le moment, on extrapole et on vrifie les
temps disponibles entre les tches pour vrifier les sauts entre les tches, (entre les
interruptions).

Have a well defined exception handling : il ny a pas de RTS, donc pas


dexceptions.

In case of severe software problem, a hardware device (e.g. watchdog) shall


force the system into a safe state : cest le principe mme du microcontrleur. Il y a
un watchdog interne pour contrler les donnes internes au DSP, et le CPLD intgre
aussi un watchdog qui surveille le fonctionnement macroscopique du DSP. Leurs
rles sont de rinitialiser le DSP. Dans notre cas, le safe mode est obtenu par
redondance du RTSU.

Les interruptions sont dfinies au dmarrage et elles sont verrouilles. Aucune interruption
nest rajoute dynamiquement car aucune tche nest rajoute pendant le fonctionnement. Les
- 70 -

Chapitre 2
tches fonctionnent toutes sans mcanismes de mise en sommeil. Les activations et
dsactivations des interruptions au dmarrage pour les squences dindexages ne sont pas
concernes par ces points puisque les interruptions manipules au dmarrage sont pilotes par
une machine tats finis, donc avec un fonctionnement dfini.

2. Lanalyse vnementielle

a) Les mcanismes
Dans notre architecture, on a trois interruptions pour les trois thmes suivants :
o Une interruption de communication : les messages entrants sont rceptionns par un
buffer matriel (avec une file dattente). Une interruption est gnre lorsquun
message complet est reu. Il faut venir le lire avant que la file dattente soit pleine
(contrainte matrielle) pour ne pas perdre de messages, et aussi pour que linformation
reue ne soit pas traite avec du retard6 (contrainte logicielle). La frquence des messages
dpend de lmetteur, donc on impose au DSP par lextrieur le flux de donnes qui luimme va imposer le nombre dinterruptions. Si le flux devient significatif vis--vis de la
charge CPU (autres interruptions), on peut craindre des dysfonctionnements. Une
rupture ou un ralentissement de la communication va/peut perturber les cycles de
balayages (non-conformit par rapport aux scnarios de balayages dfinis par le
calculateur).
o Une interruption de contrle des amplificateurs : cest linterruption de contrle
moteur, mais le DSP pilote directement les amplificateurs qui sont les premiers dispositifs
assujettis aux risques. La frquence est fixe car elle est dfinie en interne. Les mesures
sont rafrachies chaque interruption en ce qui concerne les entres. Les sorties sont les
signaux PWM. Les correcteurs de courants sont calculs et vrifis chaque interruption,
et les sorties PWM sont rafrachies. Le mcanisme de dcoupage (125 kHz) est matriel,
donc on na pas de risque de stopper son volution (en cas de court-circuit via
limpdance moteur), mais on a le risque de donner une consigne fige, qui peut tre forte
(courant maximal). Les scurits limitent le courant maximal au courant impos par le
couple maximal.

On parle du retard supplmentaire (non connu). Le retard fixe d la transmission (qui lui est incompressible)
est considr comme un retard connu et prvu.

- 71 -

Chapitre 2
o Une interruption dasservissements : cest une interruption qui na pas de
consquences sur un priphrique. En effet, cest pour crer une base de temps bien
spcifique pour les calculs des asservissements. Les entres proviennent malgr tout de
capteurs, mais cest une simple lecture. Les sorties sont des donnes exploites soit par
dautres fonctions, soit par linterruption de contrle moteur (qui a son propre
mcanisme de protection).
Ces trois interruptions ont chacune leur particularit, quant leurs priorits et leurs
fonctions, mais la particularit sans doute la plus importante pour lanalyse type RMA est leur
caractre temporel [ISO01]:
o linterruption des amplificateurs : cest une routine priodique fixe, priorit statique
premptive. Elle est dclenche par un EOS (End Of Conversion) dont un timer
priodique et constant cadence les conversions de lADC ;
o linterruption dasservissements : cest aussi une routine priodique fixe, priorit statique
premptive. Elle est cadence par un timer fixe et constant ;
o linterruption de communication : cest une routine sporadique, priorit fixe premptive
(premptive si on considre la tche de fond). Elle est dclenche par un vnement
extrieur non constant, mais avec un intervalle born.
On na pas la prsence dinterruptions apriodiques, donc une analyse temporelle est possible
(enfin rendue beaucoup plus simple). Comme les interruptions priodiques sont de plus hauts
niveaux, on a en plus un dterminisme assez fort, et la routine sporadique peut consommer le
temps restant, car elle reste une routine premptive sur la tche de fond (les NOP). Outre la
conception du logiciel Radar Mto, dans les applications de contrle-commande des
amplificateurs (lectronique de puissance), on aura une philosophie trs similaire quant aux
stratgies et interruptions utilises. Les interruptions apriodiques ne sont a priori pas des
interruptions courantes dans ce genre dapplications. On rappelle que le logiciel pilote deux
onduleurs triphass avec leurs moteurs, avec en plus des rgulations pour la mcanique, ce qui est
dans loptique dutilisation de ces DSP.
Voyons comment sont grs les mcanismes dinterruptions dans les DSP C2000. On
sappuie sur les documentations du TMS320F281x.

- 72 -

Chapitre 2
CPU

EVs
Interruptions

Fig. 44 : Architecture PIE, EV et CPU dans le F281x [TEX]


On voit ici (Fig. 44) que le DSP est intrinsquement constitu dorganes indpendants. On
y trouve le cur de calcul CPU, dont le moteur C28x est un cur de calcul en 32 bits virgule fixe
avec les instructions et les bus typiques aux DSP cadenc la frquence issue de la PLL. Les
events managers (EV) avec tous leurs priphriques disposent de leurs propres frquences et
mcanismes de contrles. On a enfin le PIE qui est le routeur dinterruptions, dont les
mcanismes hardware sont accessibles par le logiciel.
On peut voir que les accs (bus) permettent des interactions entre toutes les entits. On
comprend bien ici que le moteur de calcul est une ressource partage.
Le PIE dispose daccs directs des EV, concernant les vnements hardware tel que les
top des timers, ou dADC. Ceux-ci nont donc pas de temps de latence d lutilisation du
bus. Cest la mme chose avec les interruptions sur le coeur, reprsentes Fig. 45.

- 73 -

Chapitre 2
sans
RTOS

avec
RTOS

Fig. 45 : Interaction des mcanismes dinterruption dans le F281x [TEX]


Le DSP permet de travailler selon la manire RTOS pour les traitements base dun noyau
temps rel, ou bien de travailler avec les interruptions des priphriques pour du contrle moteur
par exemple. On voit bien (voir Fig. 45) que cest deux mcanismes physiquement diffrents, qui
ne sont pas dimensionns et structurs pour les mmes applications. On notera aussi la prsence
de NMI qui est une interruption apriodique, mais pour des usages trs particuliers avec la
priorit la plus leve. On a aussi le watchdog pour le monitoring qui est un priphrique distinct.
Le RTOS fonctionne directement avec des interruptions sur le CPU, avec un timer de
priorit maximale sur le systme, et deux timers auxiliaires.
Pour le fonctionnement type microcontrleur , on peut voir plusieurs botes pour les
systmes dinterruptions. La raison est simple, cest que sans RTOS ou un quivalent, les
interruptions sont gnres par les diffrents priphriques (bote peripherals) et sont gres de
manire matrielles (PIE) en ce qui concerne les dclenchements et les arrts, mais aussi en ce qui
concerne les premptions [LEE98], les priorits, et les mcanismes de gestion des routines
associes. Les autres entres du PIE sont des entres spciales (priphriques non lis aux
mcanismes des microcontrleurs embarqus sur la puce). Le code doit donc prendre en compte
- 74 -

Chapitre 2
toutes ces contraintes, ce qui conduit intgrer les drivers au code fonctionnel. Le dtail des
interruptions des priphriques est donn Fig. 46.

Fig. 46 : Mcanismes dinterruptions des priphriques, pour le F281x [TEX]


Ce schma de principe (Fig. 46) reprsente le routeur dinterruptions. Chacune des
interruptions possibles (prdtermines par conception de la puce ou par reconfiguration) est
valide ou non pour linitialisation, mais aussi masque/dmasque pendant le fonctionnement.
On associe ce schma lorganisation des interruptions selon le tableau Fig. 47:

Fig. 47 : Tableau de synthse des interruptions des priphriques du F281x [TEX]


Ce tableau donne les priorits (INTx) o la 1re est la plus forte dans le traitement du CPU. Pour
chaque priorit du CPU, plusieurs interruptions sont possibles et sont gres par le routeur en
exclusion mutuelle car elles remplissent des fonctions de priorits quivalentes. Cest ici que lon
identifie les interruptions priodiques, sporadiques et apriodiques.
- 75 -

Chapitre 2
WAKEINT, XINT1 et XINT2 sont apriodiques (watchdog notamment et interruptions
externes). TINT0 est plutt rserve au RTOS et aux squenceurs. Les timers (TxxxINT) sont
priodiques. Les captures (CAPINTx) sont sporadiques ou priodiques, comme les priphriques
SPI (pVIII), SCI, eCAN et McBSP. Cest donc a priori compatible avec une analyse type RMA.
On remarque que linterruption de lADC, celle qui sert au contrle de llectronique de
puissance, est linterruption la plus prioritaire dans le fonctionnement que lon a choisi (sauf
interruption apriodique PDP : Power Drive Protection).

b) Lanalyse temporelle
Par dfaut, dans le fonctionnement en interruptions directes, le DSP nest pas premptif.
En effet, toutes les interruptions du PIE sont en exclusions mutuelles, et la priorit prend effet
dans le cas dinterruptions mmorises (file dattente) ou synchrones. Ainsi, une routine qui est
commence ira jusqu son terme. La suivante sera celle de plus grande priorit. Dans ce cas,
pour la lisibilit des relevs, les interruptions (des figures suivantes) ont des dclenchements
dcals pour ne pas avoir de dclenchements synchrones. On peut alors dfinir la marge de
temps disponible pour chaque interruption ds la conception. Les temps sont alors borns par
linterruption la plus frquente, ce qui est pnalisant lorsquil y a une excursion significative entre
les diffrentes bases de temps. Voyons cette diffrence Fig. 48 (le rapport cyclique positif est
image du temps dexcution de la routine) :

ADC

ASV

Fig. 48 : Relevs avec I.T. dcales non premptives, cas temps rel (1) et cas surcharg (2)
Sur les deux relevs, les I.T. sont dcales pour garantir ds la conception une marge sur lI.T. la
plus rapide. Dans les deux cas, on fonctionne en interruptions directes, avec des priorits
statiques sans premption, ce quon rappelle tre le fonctionnement intrinsque du DSP. En
- 76 -

Chapitre 2
dcalant volontairement les dclenchements des routines, on ne fait pas apparatre les priorits,
peu importe ici. Le cas (1) reprsente le code actuel, avec les asservissements implments. Le cas
(2) reprsente ce que pourrait tre le code dans le futur avec une interruption dasservissements
plus longue d aux changements de repres, et des correcteurs dordres plus levs (plus
dquations de rcurrence). Dans le second cas, les routines de contrle moteur ne peuvent
sexcuter tant que linterruption en cours des asservissements (ASV) nest pas termine (non
premption). Il faut alors fonctionner dans le mode premptif pour pouvoir bnficier dun
temps pour les asservissements plus important (ici dcupl) si lon veut conserver le temps rel.
La conception du code doit maintenant prendre en compte un caractre premptif. Cette
dmarche va sans doute complexifier la certification. Voyons lvolution avec des routines
incorporant le mcanisme de premption gr par le concepteur :

ADC

Note : lI.T. ASV nest pas fractionne pour

ASV

des limitations dinstrumentation

Fig. 49 : Relev avec I.T. dcales avec premption


Le relev en Fig. 49 montre bien que lon est revenu un fonctionnement temps rel. Le DSP est
donc bien adapt aux reconfigurations. Bref, lI.T. des asservissements a t augment de 10000
itrations pour simuler du code (code ultrieur fictif). Pour la suite du projet, on travaille avec des
interruptions priorits statiques et dclenchements premptifs sans RTOS (ou sans squenceur).
On confirme les priorits statiques par un relev avec persistance qui met en avant les zones
dexcutions :

- 77 -

Chapitre 2

ADC

ASV
COM
Fig. 50 : Relevs des 3 I.T. priorits statiques avec premption, vue priode ASV (1), vue
priode ADC (2)
On voit nettement en Fig. 50 que lI.T. ADC est prioritaire et premptive sur les 2 autres, sur
ASV (voir 1) et sur la COM (voir 2). LI.T. dasservissement est quant elle prioritaire sur la
COM. Comme la communication est sporadique, la routine sexcute durant la tranche de temps
disponible aprs linterruption dasservissement. Lorsque lI.T. de COM apparat pendant que les
autres I.T. sont actives (notamment lI.T. dasservissement), celle-ci est mmorise et excute
juste aprs celle des asservissements (de plus les bases de temps sont diffrentes : 1ms / 20ms).
Sur le plan fonctionnel, les consignes des asservissements sont issues de la communication,
donc on respecte les enchanements. LI.T. ADC est indpendante et la mise jour rapide des
donnes est transparente pour les autres fonctions.
Maintenant, revenons lanalyse des vnements et des dfaillances associes. Si la
routine dinterruption est fige, il faut bien distinguer si cest logiciel ou matriel :
-

blocage logiciel : seules les donnes issues ou vers des priphriques sont fausses :
o communication : perturbations des cycles de balayages, perte de contrle de
lantenne. Elle continue comme la dernire consigne ;
o contrle des amplificateurs : maintien des consignes en couple. Lantenne va
forcer en bute ;
o asservissements : maintien des consignes en couple. Lantenne va forcer en bute.

blocage matriel : les ressources matrielles (priphriques) sont perturbes :


o communication : plus de transmission, plus de trames sortantes, trames entrantes
ignores. Leffet est le mme que pour le blocage logiciel ;
o contrle des amplificateurs : plus de signal PWM, surintensit (via impdance
moteur)

- 78 -

Chapitre 2
o asservissements : les calculs sont bloqus, il ny a plus de rafrachissement des
consignes en courant. Leffet est le mme que pour le blocage logiciel.
On voit donc que le blocage logiciel nest pas le pire cas, et cest celui qui est le plus
probable (dans lchelle des probabilits). Le blocage matriel nest possible que par un dfaut de
lhorloge principale qui est un dfaut matriel, ou par une configuration ou un arrt spcifique des
timers.
Linterruption la plus importante est donc celle qui contrle des ressources pouvant
engendrer un dommage. Ainsi, linterruption de contrle moteur doit fonctionner quels que
soient les alas. Son temps dexcution doit tre dtermin et doit tenir avec une certaine marge
dans le temps imparti. Comme les autres interruptions vont consommer des cycles processeur, il
faut que linterruption la plus critique bnficie des ressources processeur en priorit, do le
niveau de priorit de linterruption. Le temps non consomm est ainsi laiss aux autres
interruptions (mme systme de priorit), et le total de tous les temps dexcutions doit tre
infrieur au temps total disponible maximal. On doit tenir compte des variations de temps, qui
sont corrls aux diffrents calculs ou mcanismes excuter.
Inversement, linterruption la moins importante est linterruption de communication. Si
celle-ci se bloque, on perd certes le contrle de lantenne, mais le fonctionnement reste dans les
limites prvues des balayages (mcanique et lectrique). Si le blocage est d une surabondance
de donnes, la charge CPU va saturer, mais avec une priorit faible de la communication, les
interruptions importantes vont garder (ou reprendre) leurs temps dexcution.
On peut synthtiser cette analyse dans un tableau en Fig. 51 (sans code fictif) :

- 79 -

Chapitre 2

Fig. 51 : Synthse de lanalyse des interruptions


Linterruption de contrle des amplificateurs (moteurs) est la seule qui peut conduire un
dommage matriel suite un arrt matriel du priphrique. Lanalyse AMDEC permettra
dapporter une rponse ce problme. Un bogue logiciel ne peut que bloquer lantenne avec un
couple constant sur une bute : cest mcaniquement admis dans le dimensionnement. Avec la
priorit la plus leve, le contrle des amplificateurs est assur dtre excut en premier. Comme
la marge est suffisante (marge de conception + marge restante), on na pas le problme de
surcharge processeur. Le programme doit avoir un temps dexcution constant pour que lanalyse
soit pertinente, ou tre dans le pire cas de fonctionnement (toutes les I.T. en mme temps7 avec
lexcution la plus longue8 de chaque routine).

c) Lanalyse fonctionnelle
Lanalyse fonctionnelle mene en complment des mthodes temporelles, est comme
explicite au premier chapitre, un outil gnrique servant cibler les consquences de dfaillances
potentielles. On peut donc passer en revue chaque niveau fonctionnel du systme, tel que le
7

Obtenu par mesures (besoin dun bon dclenchement) ou par dduction.

Le temps dexcution le plus long est obtenu avec les statistiques de loscilloscope qui instrumente les points
tests dentre et de sortie des interruptions.

- 80 -

Chapitre 2
composant dans son environnement lectronique, le RTSU et ses interactions avec les diffrents
composants, les routines dinterruptions avec les I/O, les routines avec les autres codes logiciels.
Pour illustrer un exemple, on donne en Fig. 52 un extrait de lanalyse de linterruption des
amplificateurs.
On remarque dans cet extrait que la dfaillance redoute est le court-circuit. On compte
donc sur le PFC en tte pour limiter le courant si lon veut conserver lintgrit du premier
RTSU. En effet, si le fusible est altr, le RTSU sera dfinitivement hors service jusqu la
rparation. En cas dun SEU par exemple, on aurait alors la possibilit de rcuprer le 1er RTSU si
la limitation amont fonctionne (pour le moment, le scnario du SEU parait improbable sur un
temps long car les donnes sont crases chaque I.T.). Lerreur (dans le sens de drive) des
asservissements parat le scnario perturbateur le plus probable, car les marges des
asservissements sont des points non dfinitifs et volutifs (donc assujettis aux erreurs de
conception). A priori, les correcteurs sont stables, mais on a le problme de la dtection puisque
les correcteurs sont le dernier maillon de la chane, et la surveillance des correcteurs ne peut pas
tre aussi avance que les autres moyens de surveillance. Les autres erreurs possibles sont dans
limmdiat bien moins graves. Le risque majeur (en ce qui concerne cette I.T.), cest donc bien les
courants, et donc les composants. Dans tous les cas, le PFC en tte aura des protections, mais
elles ne protgeront que lui-mme et les dispositifs en amont, sauf si on prend en compte les
RTSU. Pour les moteurs, on bnficie de linertie. Si un dfaut survient, la constante de temps
des moteurs va jouer en notre faveur. On notera que beaucoup de dfauts possibles, ayant des
causes diffrentes, ont des consquences communes. Bien que ces consquences sont vues plus
ou moins loin de la cause, les constantes de temps de dtection sont assez faibles. On parle ici des
consquences telles que les erreurs des asservissements qui tmoignent dun dfaut amont.
Finalement, cette analyse fonctionnelle comme prsente nest quune synthse de haut
niveau, qui ne donne pas forcment des dtails quantitatifs. Cette analyse est mene au fur et
mesure de la conception de lensemble.

- 81 -

Chapitre 2

Fig. 52 : Extrait de lapplication de la mthode AMDEC sur lISR des amplificateurs


Lorsque lon soulve avec ce type de mthode des points dlicats, on adapte chaque type de
difficult une autre mthode qui va permettre de rpondre au point dur. Ce type danalyse a
justement permis de soulever des interrogations quant lchange des donnes entre les
diffrentes ISR (ou code non critique). Une tude des flux de donnes a donc t mene.

- 82 -

Chapitre 2

d) Lanalyse des flux de donne


Avec un fonctionnement vnementiel, on na pas la succession de fonctions qui
schangent des paramtres et des variables de manire formellement dtermines (mcanismes
de passage). Les routines rcuprent des variables ou en mettent jour indpendamment des
autres routines, donc il faut une certaine vigilance lors de la conception.
Les DSP ddis ont la particularit davoir des bus dadresses typiques, et pour maximiser
les performances, le bus dadresse permet en un seul coup dhorloge dadresser une case
mmoire ou registre. Ainsi, on a un bus dadresse de 22 bits. Le mode dadressage est ainsi fait
que chaque case mmoire est identifie par une adresse de 22 bits, que la variable soit locale ou
globale. La stratgie de programmation est donc optimise pour lutilisation de variables globales.
Les interruptions vont schanger et se partager ce type de variables avec les mcanismes de
priorits dfinis la conception.
Lanalyse en Fig. 53 permet didentifier qui manipule les variables, et comment.

Fig. 53 : Synthse de lanalyse des flux de donnes

- 83 -

Chapitre 2
Chaque interruption est conue pour ne pas tre dpendante dun enchanement entre une
donne (n) et une autre donne (n+1), c'est--dire quil ny a pas de lien temporel ou fonctionnel
entre les donnes ; chaque interruption fonctionne seule avec des entres interprtes comme
venant dun systme extrieur. Chaque donne nest accessible en criture que par une seule
fonction, et dans les cas particuliers (ex : initialisations), la justification est dtaille.
Lindpendance des interruptions et le caractre exclusif des accs permettent dtayer la scurit
du logiciel.
Lorsque les donnes manipules sont des structures, on fait la mme analyse en descendant
encore dun niveau (donn en Fig. 54) pour aboutir la donne mot comme on peut le voir
sur le cas suivant (donne N3 de la Fig. 53) :

Fig. 54 : Dtail de lanalyse des flux de donnes (exemple sur item n3)
Cette analyse est trs fastidieuse, mais elle permet de vrifier chaque accs de chaque
donne, donc on peut carter des mauvais fonctionnements de conception. Ici, on peut voir des
accs multiples en criture de now_position , mais on notera quil sagit en premier lieu dun
accs au dmarrage du systme pour avoir la position de lantenne, qui est remplac par un accs
en mode indexage moteur en interruption pour suivre le mouvement de lantenne, puis cette
interruption est remplace par linterruption du fonctionnement normal. A chaque tape, la

- 84 -

Chapitre 2
donne nest manipule en criture que par une seule fonction. Lanalyse est ainsi reproduite pour
les autres structures et ISR.

IV. La protection de la mcanique


Le dplacement de la tte qui supporte le plateau hyperfrquence est born par des butes
mcaniques intgres la structure pour les deux axes, puisque cest un radar balayage dans le
radme de lavion (voir Fig. 20). Ces butes ne sont prvues que pour la protection du plateau
hyperfrquence, comme dans le cas de lantenne hors tension. La cinmatique azimut est borne
90 et 45 pour llvation. Les moteurs et leurs commandes sont quant eux capables de
tourner sans limitation angulaire. Il est donc ncessaire que le logiciel prenne en compte ces
donnes. Le vritable problme apparat quand lavion est en vol et que le fuselage nest pas
align avec le sol (roulis, tangage et cap, voir Fig. 75). En effet, dans ce cas, le repre antenne
qui est fixe et align avec le fuselage nest plus confondu avec le repre terrestre. Il faut alors
prendre en compte les attitudes de lavion pour corriger les trajectoires de lantenne pour quelle
balaye toujours dans le repre terrestre duquel proviennent les consignes de balayages. Dans ce
cas, il existera un grand nombre de cas de figure o le balayage demand sera en dehors des zones
atteignables par lantenne (hors des butes mcaniques). Imaginons que le radar balaye la
piste comme illustr sur le cas dcole en Fig. 55 et que seul le cap change sans que les consignes
terrestres changent :
Visualisation de la piste ?

oui

oui

oui

non

Fig. 55 : Exemple dune trajectoire avion et de la zone de balayage radar


Il faut donc empcher lantenne de balayer contre les butes. On a le mme genre de problme
lorsque lantenne balaye pleine vitesse proche des extrmits, et que lavion bouge rapidement
suivant les trois axes avec en plus leffet de lacclration du porteur. Il faut donc calculer les
- 85 -

Chapitre 2
changements de repre, mais aussi anticiper les temps et angles avant les butes en fonction des
attitudes et des acclrations pour pouvoir limiter les mouvements de lantenne une zone de
marge avant les butes mcaniques (qui ne doivent jamais servir). Les mouvements du porteur
modifient les trajectoires (donc la position des butes) tandis que les acclrations limitent les
capacits des amplificateurs contrler les moteurs (en temps et en angle). On a donc une forte
corrlation entre cette problmatique et les puissances lectriques des moteurs. Les simulations
Matlab/Simulink intgrent les changements de repre, et un simulateur sous Visual Studio
permet de calculer les temps et les angles avec les limites que lon se fixe par un calcul trs rapide
au format du DSP compte tenu des dynamiques et pour limiter la charge de calcul du DSP. Des
environnements de simulations diffrents ont t prfrs pour rendre lensemble moins
complexe dvelopper et utiliser.

Fig. 56 : Simulateur des angles et des temps pour les trajectoires


Pour le fonctionnement en poursuite, la vitesse finale vaut 0 , la vitesse initiale est rafrachie
chaque calcul, la capacit dacclration des moteurs est fixe. Langle et le temps limites avant la
marge (avant les butes mcaniques) sont retourns la fonction de surveillance qui dcide de
piloter lantenne au lieu du gnrateur de consigne qui dfinit la trajectoire initiale.
- 86 -

Chapitre 2

V. Bilan de la simulation/conception
La simulation dun systme complexe sous un environnement unique construite par un
ingnieur gnraliste est encore une perspective assez utopiste. En effet, malgr les progrs
encourageant des simulateurs pluridisciplinaires tel que Matlab, il est encore difficile dintgrer
toutes les contraintes du systme simuler, et surtout den analyser les rsultats. Lefficacit du
code gnr est l aussi un problme majeur puisque la compacit et la rapidit dexcution du
code gnr sont primordiales dans limplmentation dun systme embarqu aux ressources
limites. Il nen reste pas moins que les rsultats attendus ont t obtenus avec des moyens
dploys certes plus importants. Les simulations Matlab/Simulink ont demand plusieurs
tapes, chacune tant itrative. Les simulations et bancs de tests sous Visual Studio ont t des
complments Matlab. Les rsultats dfinitifs ont t exploits sous CCS avec un codage
manuel en virgule fixe ncessitant plus de 2000 lignes de code en interruption (ISR critique)
parmi les 12000 lignes du projet suivant les normes et rfrentiels de dveloppement.

- 87 -

Chapitre 3

Chapitre 3 : indexage moteur


I.

Lindexage usuel.................................................................................................................................. 89
A.

La problmatique....................................................................................................................... 89

B.

Les contraintes........................................................................................................................... 91

C.

Les dmarrages des contrles-moteurs .................................................................................. 93

II.

Lindexage automatique................................................................................................................... 94

A.

Le phnomne recherch.........................................................................................................94

B.

La mthode des essais de courant par impulsions................................................................ 97

C.

Les limitations de la mthode................................................................................................103

D.

La phase statique .....................................................................................................................107

E.

Rsultats de dimensionnement de la procdure dindexage de la phase statique ..........110

F.

La phase lectromcanique ....................................................................................................114

G.

Lorganigramme fonctionnel .................................................................................................115

III.

1.

Machine tats finis de lindexage........................................................................................116

2.

Programme de la phase statique............................................................................................119

3.

Programme de la phase lectromcanique...........................................................................123


Bilan de lindexage automatique :..........................................................................................125

- 88 -

Chapitre 3

I. Lindexage usuel
A. La problmatique
Les actionneurs de lantenne sont des machines synchrones triphases aimants
permanents monts en surface (SPMSM : Surface Permanent Magnet Synchronous Motor). A ce
titre, cest une machine qui gnre un couple maximal si et seulement si le champ magntique
appliqu au stator par un onduleur de tension (voir Fig. 57) est en quadrature avec le champ fixe
et constant du rotor, dans son repre, obtenu par des aimants permanents (voir Fig. 58). Tout
cart avec cet angle de pilotage de la machine [BER02] se traduira par une baisse du couple avec
la mme commande lectrique, c'est--dire une baisse du rendement.

Fig. 57 : Onduleur du radar pour un axe, avec ses connexions au reste du systme

Fig. 58 : Angle de pilotage et couple


La structure onduleur (un pour chaque axe) est un pont triphas (T1 T6) sans neutre,
dont lalimentation de la puissance est active par un interrupteur principal (nomm MAIN par la
suite). Cette validation principale de lalimentation est commune aux deux onduleurs. Le PFC en
- 89 -

Chapitre 3
tte assure un bus continu constant. Sur un bras de pont, les interrupteurs sont complmentaires,
on ne peut pas laisser une phase dconnecte. Londuleur est charg par un filtre LC amorti
(simplifi sur le schma) sur chaque phase, suivi du moteur en toile. La ncessit des filtres est
justifie par le contrle moteur basse vitesse qui demande des signaux de commande sinusodaux,
avec une frquence de dcoupage qui ne doit pas se propager sur la connectique des moteurs, qui
est proximit du plateau rayonnant hyperfrquence. Cette structure permet une commande du
moteur basse vitesse avec un couple constant.
La commande en phase exacte , permettant un couple constant, est primordiale sur une
machine synchrone pour ce type de fonctionnement, cest pour cela quil faut un capteur
rotorique, ou alors sen passer avec une commande sans capteurs sensorless [BRU96] qui
fonctionne avec des algorithmes adquats, tel que des observateurs. Dans tous les cas, la
commande par un capteur reste la solution qui donne les meilleures performances, mais qui est
coteuse ; et il faut toujours une commande dun champ par rapport lautre. La rotation de la
machine est obtenue en maintenant un champ tournant au stator en avance de phase sur le
champ du rotor. La position des deux champs doit tre connue. Le champ du stator est
caractris dune part par la commande qui le dfinit, et par rapport la position des
enroulements statoriques sur le chssis. La position du rotor est dfinie par la position des
aimants sur laxe. Donc, pour synchroniser les deux champs, il faut connatre la phase de la
commande statorique, ce qui est a priori sans problme car elle est gnre par le DSP, mais il
faut surtout connatre les positions mcaniques du stator et du rotor. Le reprage de ces deux
positions est un indexage, peu importe la mthode pour y parvenir. La position mcanique du
stator est fixe et doit tre rfrence, la position du rotor volue avec la rotation, do le capteur
ou un autre moyen (estimation) qui soit rfrenc ou qui le permette. Dans notre cas, on a une
commande avec capteur, car on fonctionne basse vitesse, et lon dispose dj dun capteur pour
les fonctions dasservissements. On doit donc dterminer la position relative du capteur par
rapport laxe polaire dune paire de ples et du champ statorique.
En fonction du nombre de paires de ples, les angles lectriques de la machine varient,
ainsi, avec notre moteur de dix paires de ples, une priode lectrique correspond 36
mcaniques. Le rfrencement mcanique devient dautant plus prcis que langle lectrique
devient petit, car plus lincertitude du rfrencement augmente (pour une mme prcision
dassemblage), plus le couple disponible se disperse.

- 90 -

Chapitre 3

B. Les contraintes
Le contexte du radar aroport limite les choix techniques et technologiques, et notamment
pour rfrencer les positions initiales. En effet, le radar aroport est un systme bas cot
(laronautique est aussi concurrentielle), et lensemble des restrictions de sret et de fiabilit
sajoute aux contraintes de cot en ce qui concerne les stratgies de conception. Le matriel est
limitant dun point de vue lectromcanique puisque le fonctionnement du radar dans son
environnement, de surcrot en entranement direct, ne fait pas appel un fonctionnement
traditionnel des actionneurs. Les principales contraintes sont donnes ci-dessous :

Contraintes de conception :
Il ny a pas de mmorisation dans une mmoire embarque (ni dans le DSP, ni
dans lantenne, ni relie sur le RTSU). Les RTSU doivent tre interchangeables.
Une mmoire cote trop cher et nest pas fiable (il faut voir la mmoire avec tout
ce quelle implique, comme la connectique, le blindage, la gestion des articles,
etc.). Une simple mmoire auxiliaire engendre un rel surcot. Durant la vie de
lantenne (environ 25 ans), on peut changer de mcanique, donc lassemblage des
moteurs ne correspondra plus la version prcdente. On peut tout aussi bien
changer llectronique embarque, qui est indpendante dune quelconque
configuration (positions des moteurs par rapport aux codeurs). On ne peut
procder ni un indexage en usine (ex : intervention manuelle) qui est trop
coteux, ni un indexage au 1er dmarrage qui nest pas en adquation avec
linterchangeabilit (llectronique est indpendante des moteurs, des codeurs, de
lantenne en gnral).
Lalgorithme dindexage est soumis aux mmes contraintes que pour un
fonctionnement oprationnel : on nutilise que la mmoire interne, avec les rgles
de codages imposes.
La mmoire morte programme du DSP est fige, et na pas le droit dtre
modifie, par lui-mme (le programme du DSP se met jour par la modification
de paramtres pr initialiss), ou un autre mcanisme (contraintes de la DO-178).
Tout le programme doit tre conu lavance.
Lindexage a une dure fixe et limite. Il est compris dans le temps total de
dmarrage.

- 91 -

Chapitre 3
Le fonctionnement oprationnel ne doit pas tre perturb/dgrad. Le
fonctionnement oprationnel est le fonctionnement de lantenne avec toutes ses
squences de fonctionnement.

Contraintes lectromcaniques :
Lantenne peut tre soumise de fortes vibrations, ou acclrations pendant le vol
(de 3G 6.5G suivant laxe). Ces contraintes sont valables pour le rgime
fonctionnel, indexage compris.
Lantenne peut subir une rinitialisation en vol (redmarrage), par perte
dalimentation, ou suite un problme. Lantenne na pas de rserve dnergie,
donc il ny a pas de mmorisation de courte dure. Le mode oprationnel et
fonctionnel implique que lantenne soit performances nominales quel que soit le
cas de figure. Lindexage fait partie du mode oprationnel.
Les moteurs doivent tre indexs 5 lectriques, afin que le couple maximal
disponible soit constant. Les asservissements sont dterministes, et corrls avec
le faisceau hyperfrquence.
Lantenne ne doit pas percuter les butes. Elles ne sont prvues que pour la
scurit de la mcanique.
La procdure dindexage utilise les mmes composants matriels que pour le
fonctionnement en balayage (pas de composants supplmentaires). Cest la mme
chane de mesure (capteurs compris).
Lindexage respecte les conditions maximales de consommations : courants de
phases, et courant dalimentation. Le PFC en tte a un dimensionnement unique !
On doit aussi fonctionner avec une tension dalimentation tant au minimum du
gabarit (normes rseau).
Les paramtres moteurs ne sont ni constants en utilisation (variation avec la
temprature de -40C +70C), ni constants en fabrication (L est donne
30% et R 10%).
Les moteurs sont prcds de filtres (cellules LC) pour reconstituer des motifs de
courants sinusodaux de basse frquence, ncessaires pour prserver la qualit du
faisceau hyperfrquence, mais aussi pour le bon fonctionnement du contrle
moteur et des asservissements. Linductance srie a donc sa propre tolrance qui
sajoute pour chaque phase.

Le contrle moteur ne peut fonctionner que si lon peut synchroniser les champs. Lindexage est
donc une tape initiale au contrle moteur. Selon le type de commande, lindexage naura pas les
- 92 -

Chapitre 3
mmes contraintes. Les contraintes cites ci-dessus ne sont pas forcment valables dans chaque
stratgie de commande.

C. Les dmarrages des contrles-moteurs


Il existe de multiples manires de parvenir un rfrencement des champs, selon le type de
contrle moteur utilis. Notre crneau est particulier puisque lon veut utiliser des stratgies
utilises pour les problmatiques sans capteurs alors que nous avons un capteur, car nous ne
pouvons pas mmoriser les paramtres dindexage (dtaill au I.B prcdent). Dans le cas des
mthodes de contrles moteurs sans capteurs comme la dtection de la F.E.M. (pVIII), le
dmarrage est un problme car il nexiste encore pas ce moment l une mesure qui permette de
dterminer la position du rotor. Lindexage est donc une tape distincte souvent base sur des
essais prliminaires avec des courants qui ne sont pas directement lis la commande par retour
de F.E.M. Cette commande nest pas intressante pour notre application car cest une stratgie
qui fonctionne pour des vitesses de rotation significatives du moteur o la F.E.M. devient
mesurable (bon rapport signal/bruit). Les commandes par observateurs sont aussi des
commandes moteur sans capteur, dont les performances et les architectures sont assez disperses
[ZHE07] [ZOL96] selon laspect qui est privilgi (couple au dmarrage, ondulation de couple,
stabilit en vitesse, etc.). Le dmarrage est un transitoire dinitialisation, mme pour une
commande en couple. Les observateurs convergent partir de la vitesse nulle afin de se stabiliser
en un minimum de temps pour commencer bien contrler la machine. Ce temps dpend de
larchitecture de lobservateur. Lindexage nest pas ici une stratgie diffrente du contrle moteur
par observateurs, donc elle nest pas utilisable pour notre application.
Pour lapplication du radar mto, nous avons une commande autopilote par courants
sinusodaux qui permet davoir une commande du moteur trs basse vitesse, avec un couple
constant sans ondulation. Cependant, nous avons la contrainte de connatre la position des
champs avec une prcision de 5 lectriques pour satisfaire lobligation de dterminisme du
couple, exig pour les asservissements. Le rfrencement des axes doit tre connu lavance, car
le dmarrage du contrle moteur nest pas un transitoire comme le traitent les mthodes par
observateurs. Lindexage initial est une tape distincte.

- 93 -

Chapitre 3

II. Lindexage automatique


A. Le phnomne recherch
Les stratgies possibles pour indexer le moteur au dmarrage dans le cas du radar mto
sont celles qui sont distinctes du contrle moteur. Comme pour la commande par back-EMF
(F.E.M.), le rfrencement des axes par des essais en courant semble appropri.
On sappuie sur la mthode INFORM (INdirect Flux dtection by On-line Reactance
Measurement) [SCH88] [SCH90] [SCH97] [SCH02] [SCH07] qui est base sur la distribution du
flux dans la machine par les aimants permanents, ce qui provoque des diffrences sur les
inductances Xd et Xq suivant laxe direct et laxe en quadrature (transformation de Park) dues
des effets de saturation localiss. Xd et Xq sont fonction des inductances de fuites provoques
par les couplages entre les phases, et les couplages rotor/stator comme montr en Fig. 59.

Fig. 59 : Reprsentation des inductances couples [GOR88]


Les effets de saturations localises [PER07] sont mesurables travers des acquisitions de
courants et de tensions. La machine synchrone aimants permanents prsente une relation entre
la position du rotor et la valeur des inductances des enroulements variant avec le dplacement du
circuit magntique [CAR93]. La reprsentation des machines synchrones du radar mto, avec dix
paires de ples, est donne Fig. 60 :

- 94 -

Chapitre 3

Fig. 60 : Priode lectrique en fonction de la priode dinductance


La priode de linductance vue aux enroulements du stator est le double de celle de la
priode lectrique de la machine, donc en apparence on ne peut pas diffrencier les ples par des
mesures (courants faibles [KIE02]) puisquils sont symtriques. La variation sinusodale des
inductances (Fig. 61), mesures pour le relev avec un pont dimpdance aux frquences proches
de nos essais, permet par contre de trouver plus facilement les extremums par une rotation de la
machine. On voit quavec cette technologie de moteurs (aimants colls vraisemblablement avec
une faible saillance de montage), la variation nexcde pas 15% de la valeur moyenne. Cette faible
variation nous permet de faire des impulsions quivalentes quelle que soit la position initiale
(inconnue) du rotor, pour la suite prsente au II.B (donc sans exploiter leffet de saillance par
une rotation, mais seulement partir dune position statique qui nous indiffre).

inductances ph/ph moteur

650
600

jaune/marron
vert/jaune
marron/vert

550
500

3Pi/2

5Pi/4

Pi

3Pi/4

Pi/2

Pi/4

2Pi
0

450
7Pi/4

inductance en mH

700

angle rotor/stator (avec calage OK)

Fig. 61 : Relev inductance moteur ph/ph en fonction des positions


- 95 -

Chapitre 3
Les essais de courant sur les enroulements ont pour but de mettre en vidence, via les
mesures (non reprsentes), les variations des inductances statoriques par leffet dinduit, o une
impulsion aura un effet additif, et lautre soustractif par la cration de ples statoriques face aux
ples rotoriques dj prsents. Lide est de toujours raliser les mesures avec des conditions
initiales quivalentes. Le point de dpart, dfini par la polarisation initiale due aux aimants (Fig.
62), ne nous intresse pas, seule lamplitude finale avec les deux trajets possibles est la grandeur
que nous exploitons (Fig. 63).

Fig. 62 : Illustration du cycle i() et de la polarisation initiale des aimants


Suite un crneau de tension constant en amplitude et en temps appliqu entre deux
phases (dtaill en Fig. 70), on cre une variation de flux dans le moteur. Comme linductance
quivalente rsulte de la position des aimants du rotor dans le circuit statorique, on mesure la
rponse du courant (car =L.I.).

Fig. 63 : Illustration de linfluence de la position des aimants sur le cycle i() pour le courant
mesur
Dans notre problmatique dindexage, on exploite le phnomne de saturation,
apparaissant sur le cycle i(), mais avec des amplitudes assez peu diffrentes. Les mthodes de
type INFORM permettent de mesurer cette petite variation.

- 96 -

Chapitre 3

B. La mthode des essais de courant par impulsions


A larrt, des essais avec des I/t (mesure de la variation de lamplitude du courant
pendant un temps donn suite une impulsion de tension) permettent de borner les positions des
ples magntiques. Cest en exploitant la variation de linductance (par le phnomne de
saturation) que lon va pouvoir mesurer des amplitudes de courant diffrentes en fonction des
impulsions gnres. On retrouve les mthodes didentification des ples par la combinaison des
vecteurs (expliqu plus loin). La mthode INFORM permet de localiser les ples avant de
dmarrer, les rsultats tant rutiliss pour initialiser lobservateur faisant tourner la machine sans
capteurs [SCH90].
Pour le fonctionnement vitesse non nulle, une commande dans le repre de Park, avec un
estimateur de Kalman9 en plus des informations de bruit de la mthode INFORM, est mise en
uvre pour estimer la position. La mthode expose est mise en dfaut lors de variations de
couple. Il faut alors utiliser un procd du 1er ordre Gauss-Markov10. Lensemble de la mthode
manipule beaucoup dquations et de matrices, dont nombre de paramtres sont prdfinis via un
modle devant tre trs prcis. On notera des imprcisions sur la position. Cette mthode est
complexe en ce qui concerne les lois de commande, mais lindexage nest cette fois ci pas
seulement lobtention de conditions initiales pour aboutir la convergence de filtres, mais cest
une relle localisation de ples par des mesures physiques (courants). Les prcisons obtenues ne
sont pas spcifies, mais sont gnralement infrieures 30 lectriques avec ce type dessais.
On trouve principalement des prcisions dindexage de 30 lectriques ou moins [TAK96]
[JAK05] (avec aussi des mesures de tensions [HAS07]). Les travaux qui ont permis dobtenir de
meilleures rsolutions ont t faits avec des machines appropries dans des conditions adquates,
avec des commandes numriques [NAK00] [TUR03] [POP07]. Une grosse partie des travaux que
lon trouve sur les machines concernent celles de moyennes puissances [OST96] [WIS07] o le
cot du capteur est significatif et o lon a besoin dun rendement et/ou dun dmarrage en
charge bien suprieur aux petites machines dusage courant ou peu contraint.
Ces mthodes, telles quelles sont prsentes, sont limites des cas de fonctionnements
presque idaux ou avec trop de capteurs pour obtenir de meilleures rsolutions [NAI92] [STI99]
[ICH04] [HAR05a] [HAR05b] [RAU07]. Ces mthodes ont t testes pour lapplication du radar
9

Le filtre de Kalman permet de traiter des informations dans le bruit (ex : vitesse faible) o ici, le but est
dhomogniser la qualit des estimations sur toute la plage de fonctionnement.
10

Le procd de Gauss-Markov permet de mettre en uvre des estimateurs linaires non biaiss par la mthode
des moindres carrs. Ici, on traite les variables dtat non mesures de vitesse et de position dont lestimation
(via les filtres de Kalman) est moins bonne avec des variations de charges.

- 97 -

Chapitre 3
mto, mais sans succs car il na pas t possible de mesurer rapidement les variations de
linductance (via leffet de saturation, pas celui de la saillance lie la position) avec les essais en
courant, ou dutiliser plus de capteurs, ou aussi de faire des essais courants rduits. La
dispersion des phases est aussi un point limitant. Notre machine prsente une trop forte linarit
(dvelopp plus loin) compare la plupart des technologies de machines [NOG98] [MAT94]
[KIM03] (IPM et mme SPM, pVIII), et les capteurs de courants ne sont pas assez prcis pour
mesurer des petites grandeurs compte tenu de leurs grandes excursions.
Pour amliorer le fonctionnement dans les faibles vitesses, on trouve une volution
[SCH07] dont le synoptique Fig. 64 montre une commande combine EMF/observer avec un
dmarrage par INFORM, qui permet de faire un dmarrage ( vitesse nulle) avec un fort couple
de charge ; puis lorsque la vitesse augmente (apparition de back-EMF), une estimation des
positions rotoriques par observateurs sajoute au rfrencement initial.

Fig. 64 : Synoptique dune commande combine E.M.F./observer avec un dmarrage par la


mthode INFORM [SCH07]
On travaille toujours dans le repre de Park, donc avec des correcteurs sur (d,q) comme
dans la plupart des commandes numriques. Les commandes sans capteurs sont toujours
dlicates dans les faibles vitesses et les forts couples. La mthode INFORM est limite aux
dmarrages compte tenu des essais en courant, qui sont raliss de surcrot sans F.E.M. parasite.
La commande devient assez complexe avec un fonctionnement combinant les machines tats
finis, et des lois de commandes numriques. Le DSP se prte alors trs bien cet exercice. On
voit en Fig. 65 cette commande dans un DSP TMS320F2407, modle infrieur au F2812 utilis
- 98 -

Chapitre 3
pour le radar, o on commute entre la localisation des ples par INFORM et une commande par
observateurs selon la vitesse de rotation du moteur (on nest plus dans lexemple en Fig. 64 o il y
a une utilisation permanente de la valeur de rfrencement).

(b)

(c)

(a)
Fig. 65 : Synoptique dune commande combine EMF/observer avec dmarrage INFORM dans
un DSP TMS320 [SCH07]
La commutation (a) entre les 2 types dinformation de position (b) est assez bien visible,
^ donn par lestimateur de vitesse (c). Le reste de la
avec un passage par palier de la vitesse
commande a dj t vu, et est dcoupl de cet aspect novateur. On remarque que la task2 est
a priori linterruption rapide (si ralise en interruption videment), et cette tche est commune
pour les correcteurs de courant, les estimations de positions et tous les artifices intermdiaires.
On peut en dduire que le DSP est tout fait capable de raliser ces commandes rapides.
La mthode INFORM est adapte notre problmatique de dmarrage pour rfrencer le
systme pour toute la dure du fonctionnement. Cest bien un moyen de dmarrage distinct et
numrique qui peut tre combin nimporte quelle mthode de contrle moteur. Notre
application a la particularit davoir un capteur mcanique (voir Fig. 57) de forte rsolution sur
laxe de rotation (donc du rotor), qui nest pas justifie par le contrle moteur. En effet, pour les
asservissements de la tte radar, chaque axe a son propre codeur absolu dune rsolution
consquente, puisque lon asservit 0.25 (la rsolution du codeur est donc suprieure la
prcision de lasservissement, et notamment la rsolution ncessaire au contrle moteur), mais

- 99 -

Chapitre 3
le capteur est rfrenc au zro des asservissements (repre antenne). Lindexage initial que nous
allons utiliser va permettre de rfrencer le moteur au codeur, puis le contrle moteur trs basse
vitesse va se servir des informations du codeur et de sa rfrence pour son propre
fonctionnement. Il faut bien faire la distinction entre la procdure dindexage et lutilisation du
codeur absolu (qui nest pas exploitable directement au dmarrage), qui sera ensuite exploit par
lautopilotage.
Les travaux de [NAK00] sappuient sur la stratgie INFORM pour indexer une machine
synchrone aimants permanents monts en surface de 400W deux paires de ples, de tension
rseau 230V/400V. Le principe consiste exploiter les phnomnes de magntisations non
linaires du stator de la machine en fonction des aimants du rotor, via des vecteurs dtermins en
amplitude et en temps. Ces vecteurs sont obtenus par des impulsions gnres par les bras
donduleur (Fig. 66). On fait la diffrence entre les combinaisons complmentaires (en haut du
trait de sparation) qui sont toujours possibles avec des drivers classiques, et les combinaisons
ncessitant des drivers spars des composants de puissance (en bas de la figure).

Fig. 66 : Combinaisons possibles des interrupteurs


Ces vecteurs sont soit directs avec la commutation dun bras, soit issus dune combinaison
dimpulsions successives afin de gnrer un vecteur qui nest pas directement issu dune
commutation. Les vecteurs sont tous appliqus pendant une mme dure pour obtenir des
amplitudes comparables, dont la dure est dpendante des caractristiques du moteur. Cette
mthode permet de raliser un indexage sans mouvements de la machine, avec une prcision
infrieure 5 lectriques. La position fixe du rotor va tre sollicite par un panel de vecteurs, qui
ragiront diffremment selon ltat magntique du rotor (nord, sud, intermdiaire), ces vecteurs
crant des ples complmentaires au stator. A chaque vecteur appliqu (avec ou sans
combinaison dinterrupteurs), la mesure en amplitude du courant associe pendant le temps fixe
de lchelon de tension va permettre de dterminer le vecteur suivant le plus adquat ayant pour
- 100 -

Chapitre 3
but de se rapprocher du vecteur le plus compatible avec le ple nord du rotor. En dautres mots,
chaque vecteur qui se succde (ples au stator) sera de plus en plus proche du ple magntique
nord du rotor, ayant pour finalit de connatre la phase exacte du dernier vecteur pertinent. Ainsi,
le point de rfrencement pourra tre dduit. Cette mthode aboutit un rsultat au bout de
quelques dizaines de millisecondes.
Ce principe est rgi par lorganigramme en Fig. 67. Le repre (d,q) est utilis, mais on
travaille bien partir des mesures triphases du repre (a,b,c).

Fig. 67 : Organigramme de la mthode de localisation du ple nord [NAK00]


- 101 -

Chapitre 3
Lexemple donn avec les vecteurs cits est un cas dcole. La description faite ci-dessus est
donne pour le cas o le moteur est rfrenc 0 ds le dpart. Ainsi, dans la 1re phase du
processus, le vecteur 1 est trouv comme le plus proche du ple nord (I/t max) en sollicitant
le moteur avec les 12 vecteurs possibles (6 avec les 3 phases, et 6 avec 2 phases et lautre en lair).
La seconde phase du processus, itrative, va affiner cette localisation au travers de vecteurs
intermdiaires, issus de combinaisons des vecteurs obtenus avec le pont triphas. Le vecteur 14
est le vecteur 1 pour la phase suivante. La mesure de 13 et 15 rduit la fentre de recherche.
Comme cest un cas dcole, le 14 est nouveau retenu, puis est remplac par le 17 et ensuite par
le 20. Ainsi, la fin des itrations, la position 0 0.9375 est obtenue. Si lon navait pas t
exactement sur 0, on aurait pu trouver comme dernier vecteur le 19 ou le 21. Toutes ces tapes
ont lieu avec un rotor parfaitement immobile, sinon les mesures nauraient aucune signification.
Lamplitude et la dure dapplication de ces vecteurs sont donc dtermines, et lies la machine
sous test. Ce nest pas une mthode qui est transportable immdiatement sur une autre machine.
Il faut donc pralablement dterminer les vecteurs adquats par des essais, afin que lexcursion en
courant soit suffisante pour les mesures, sans que le rotor soit soumis un couple suprieur au
couple darrachement.
La premire phase est fiable puisque ce sont des vecteurs obtenus directement par une
seule combinaison des interrupteurs du pont triphas. En effet, dans la 1re phase, chaque paire
(ex : 1 et 2) rsulte dune mesure commune (mme capteur et chane de mesure, mme
enroulement) o seule la commande des interrupteurs dun mme bras est inverse pour changer
le signe du courant. Par contre, la seconde phase est dlicate car elle impose une somme des
courants de vecteurs, donc ncessitant une homognit des mesures des phases (offsets, gain,
bruit). De plus, les conditions dans lesquelles cette mthode est teste sont idales, dans le sens
o la machine prsente de fortes variations de ltat magntique malgr des ples monts en
surface. Les mesures sont trs peu bruites et sont de puissance suffisante.
Le relev en Fig. 68 montre la variation de courant dans une phase du moteur en fonction de
langle lectrique, avec la mesure des deux courants, respectivement obtenus avec limpulsion
ngative, puis positive dun chelon de tension. Le I reprsente 15% de la pleine chelle de
mesure. Le I mentionn nest pas celui du I/t. On parle bien ici de lexcursion de courant
caractrisant la diffrence qui existe entre les deux ples. On verra au II.C la diffrence avec
notre machine, qui prsente une allure du I quivalente, mais de moindre amplitude (non
reprsente).

- 102 -

Chapitre 3

Fig. 68 : Variation de courant dune phase en fonction de langle lectrique de vecteurs stimuli,
avec limpulsion positive, puis ngative [NAK00]

C. Les limitations de la mthode


Les taux derreur ne sont pas abords, tout comme la ncessit davoir une trs bonne
homognit des phases, donc par consquent un offset triphas nul (somme des courants).
Thoriquement, lensemble des tests est ralis en moins de quelques dizaines de millisecondes.
Cette mthode a t teste pour le radar mto : la premire phase se droule correctement, bien
quil soit difficile dobtenir le point de fonctionnement idal pour les conditions de tests. Il faut
un I/t suffisant, sans pour autant atteindre la saturation de la machine. Par contre, la seconde
phase itrative na pas pu tre mise en uvre avec une fiabilit et une reproductibilit suffisantes.
Les niveaux des amplitudes de courant mesurs sont trop faibles. De plus, les trois phases ne sont
pas quivalentes, ce qui conduit une somme des courants des phases lors des combinaisons de
vecteurs (voqus en Fig. 66) qui ne sont pas comparables entre lessai de limpulsion positive,
puis ngative. La somme des courants qui est errone, cumule la dispersion due aux erreurs de
mesures, donne un rsultat dont lexcursion est de mme chelle que la diffrence des amplitudes
attendues lors des essais avec les impulsions positives et ngatives. On nest donc pas capable de
traiter le rsultat de manire fiable. Pour avoir des niveaux de mesure plus levs, il faut une
machine prsentant une non linarit assez accentue.
Lorsque lon examine notre machine synchrone de plus prs, on peut qualifier et quantifier
les caractristiques limitantes :

Londulation de couple reprsente 0.2% du couple maximal. Le I nexcde pas 3% de la


valeur nominale du courant pour une commande pleine chelle, contrairement la
publication qui met en uvre une machine ayant plus de 15% de variation pour une
commande mi-chelle.

La dispersion des paramtres intrinsques : les inductances propres de chaque phase sont
30% (effets de saillances compris) et les rsistances sries 10%. Lessai de 2
- 103 -

Chapitre 3
vecteurs opposs ne pose aucun problme, puisque cest la mme phase qui est teste,
mais la somme est donc entache derreurs cumules par la disparit entre les phases. La
rsistance des enroulements est faible en ce qui concerne les essais de courant, donc une
variation na que peu dincidence sur lattnuation. On nen tient pas compte pour la suite.
Quand le test fonctionne, la prcision est effectivement prsente, mais le taux derreur est
trs important. Aucun moyen ce moment l na pu tre mis en uvre pour amliorer ou
garantir un bon fonctionnement. Voyons maintenant leffet recherch malgr les limitations
techniques :

Voie 3

Voie 2

Voie 3

Voie 2

(1)

Mme mesure avec 2


sondes inverses pour la
reprsentation en amplitude
(1) et (2)

(2)

Fig. 69 : Relev pour dterminer le point de fonctionnement pour les tests sur le moteur du radar
mto
Le relev en Fig. 69 reprsente la variation de courant observable sur une phase du moteur,
les deux autres tant relies via une configuration de londuleur. Cette phase est soumise deux
vecteurs de signes opposs (voir Fig. 70 dont la flche indique le courant mesur). Ces deux
vecteurs sont issus de deux impulsions (par une combinaison de bras) dont le sens du courant est
invers, comme reprsent en Fig. 70 avec les combinaisons (a) et (b) par exemple. Labsence de
neutre et la commande complmentaire des six interrupteurs ne donne la possibilit de gnrer
que trois paires dimpulsions (a-b, c-d et e-f) pour appliquer la tension du bus continu aux phases
du moteur.

- 104 -

Chapitre 3

Fig. 70 : Combinaisons des interrupteurs pour gnrer les impulsions


La voie 1 (de la Fig. 69) sert de rfrence temporelle (synchronisation de loscilloscope) ; les
fronts montants et descendants du crneau concident avec les instants de dbut et de fin de
lchantillonnage. Les voies 2 et 3 sont les mesures du mme courant de phase (du moteur), o
lon a sur chaque voie une sonde de courant distincte inverse lune de lautre : voie 2 = - voie 3.
Le but est de comparer avec un mme curseur la valeur maximale du signal pour chacun des deux
essais en (1) et en (2). Le test a t ralis de sorte montrer cette variation son maximum.
Ainsi, le 1er pic positif (1) correspond un champ soustractif entre le champ dinduit et le champ
des aimants (on sature moins vite) alors que lautre pic positif (2) correspond un champ additif
(qui sature plus vite). Sachant les ples que lon cre au stator, on peut reprer les ples au rotor,
donc localiser le ple nord et le sud du rotor. On voit nettement que ds que lon dpasse le
courant nominal, la saturation apparat. Pour obtenir une diffrence mesurable, il faut appliquer
de forts courants pour visualiser la variation entre deux vecteurs de signes opposs. Cet aspect est
dlicat, et il faut converger vers un compromis pour avoir un essai en courant suffisamment lev
pour la mesure, mais sans travailler dans une zone de saturation significative pour cette mme
mesure (attnuation des essais). On notera quil faudra tenir compte dun effet compensatoire sur
la dure des impulsions pour supporter des variations du bus continu si la tension nest pas
constante (gabarit sur la tension dalimentation).
Le compromis choisi impose aussi la dynamique de la commande (mesures comprises). En
rgime fonctionnel, lalimentation du moteur est dcoupe 125 kHz, avec un filtrage des
mesures adquat. Pour ltape dindexage, il faut oprer 2.5 kHz, avec des temps intermdiaires
entre les mesures pour laisser seffectuer la dmagntisation. On doit travailler avec deux
frquences bien diffrentes. La frquence de coupure est dans lintervalle 2.5kHz/125kHz. La
prsence des filtres nest donc pas adapte pour lindexage (filtres qui vont transformer les
fronts), mais est ncessaire pour le contrle moteur. On opte donc pour une stratgie o les
filtres sont dconnectables (Fig. 71). Les filtres sont donc dconnects lors de ltape dindexage
par louverture de la branche des capacits de la cellule LC. Chaque inductance des cellules reste
- 105 -

Chapitre 3
prsente et se cumule linductance de la phase qui lui est commune. Ici, comme on ne cherche
pas caractriser le moteur, linductance srie na pas dimpact significatif (mme avec sa
dispersion qui lui est propre) sur lessai en courant qui a pour but de mettre en avant une
variation, et non une valeur absolue.

Fig. 71 : branche capacitive dconnectable de la cellule LC,


La mthode expose dans la publication [NAK00] impose le fait quil est indispensable que
le rotor soit immobile ; cest dire quil ne doit pas bouger sous leffet du test, mais galement
sous leffet de lenvironnement.
Ce dernier point doit tre apprhend sous deux aspects :

Le cas de linitialisation au sol. Lantenne ne subit pas de mouvements provoqus par le


porteur, mais peut subir des vibrations avec la mise en marche des systmes (racteurs,
gnrateurs auxiliaires, etc.).

Le cas de linitialisation en vol. Cest le cas le plus critique car les mouvements porteurs
sont tout fait significatifs, et ont un impact direct sur les stimulations mcaniques de
lantenne (donc du rotor). Lenvironnement nest donc a priori pas adapt cette phase
dinitialisation. De plus, il nest pas possible daccepter une dgradation des performances
(prcision de lindexage) ou une augmentation du temps ncessaire cette initialisation. Si
lon utilisait sans modification la premire partie de la mthode prsente dans la
publication [NAK00], le rotor bougerait fortement. Pour un indexage durant 660ms (cest
le temps pour une opration russie dans notre cas, avec des moyennages, et avec un
retour lquilibre de lhystrsis magntique), lantenne pourrait se dplacer de bien plus
de 30 lectriques (bilan la Fig. 77) et donc les valeurs obtenues seraient incorrectes.

Comme les variations de courant sont assez faibles, il est ncessaire dutiliser une chane
dinstrumentation du courant qui permette des mesures trs prcises. Le radar tant un systme

- 106 -

Chapitre 3
bas cot, il ne nous est pas possible davoir cette chane de mesure. La dispersion des
inductances des phases est aussi un point contraignant qui remet en cause la somme des courants.
Pour parvenir un indexage initial dans lintervalle des 5 lectriques, on va procder dans
un premier temps une localisation vectorielle rduite des ples (avec les seules 6 combinaisons
usuelles donnes en Fig. 66) que lon appellera la phase statique, (en prenant en compte les points
bloquants dvelopps en II.C), puis dans un second temps en affinant langle par un
positionnement lectromcanique, que lon nommera la phase lectromcanique.

D. La phase statique
Tout dabord, le principe de la phase 1 [NAK00] est exploitable dans notre cas, hormis
pour lutilisation des 12 vecteurs que lon peut physiquement obtenir laide des combinaisons
des interrupteurs. Nous sommes limits 6 vecteurs, rsultat de la combinaison des 3 phases
(do localisation vectorielle rduite). En effet, il nous est impossible de laisser une phase en lair
du fait de lutilisation de drivers ayant une complmentarit intrinsque des commandes des
transistors de puissance sur un mme bras. En nous limitant 6 vecteurs, on obtient un intervalle
dans lequel le vecteur recherch est compris 30 maximum par rapport au vecteur trouv
aprs la 1re phase de test. Cette prcision de 30 lectriques donne un couple maximal
disponible (pour la commande moteur) de 85% au minimum comme montr en Fig. 72. Ainsi,
partir de la fin de cette phase, on est capable de piloter le moteur dans le bon sens, avec au moins
85% du couple maximal disponible. On rappelle que 85% nest pas suffisant pour lapplication de
contrle du radar puisque les moteurs sont dimensionns au plus juste, et que 15% dincertitude
sur le couple a une influence non ngligeable sur le dterminisme des asservissements, mais 85%
de couple disponible est suffisant pour contrler le moteur dans une phase dinitialisation
lectromcanique.

%unitaire de
couple

1
0,9
0,8
0,7
0,6
0,5
0,4
0,3
0,2
0,1
0

0 5 10 15 20 25 30 35 40 45 50 55 60 65 70 75 80 85 90
Angle en
Fig. 72 : Couple en fonction de langle dautopilotage
- 107 -

Chapitre 3
Pour excuter la phase 1 en entier avec les conditions cites ci-dessous, il faut 660 ms. Ce
temps est plus long que celui donn dans la publication [NAK00], puisque pour fiabiliser les
mesures, on procde des sries de moyennages. Un algorithme traite les rsultats de deux
manires diffrentes afin dextraire le vecteur le plus proche du ple nord. Ce temps est
volontairement long car les mesures ne bnficient pas dun rapport signal/bruit favorable, ce qui
est pnalisant. La frquence de lessai 2.5 kHz, voque au II.C, est li notre moteur. La
dure coule sexplique par les termes suivants :
-Tmesure = 200s (not T1) pour lessai 2.5 kHz (2x200s avec la monte/descente)
-Tdmagntisation = 1000s (not T2), marge sans dmagntisation force
-Tdmagntisation scurit = 1000s (not T3), marge confortable pour ne pas tenir compte des dispersions
-Nombre de moyennages par phase = 100, pour fiabiliser les mesures
-Nombre de phases tester = 3, cest triphas

T1

T2

T3

Fig. 73 : Situation des temps relatifs lindexage


On en dduit : Tindexage = (200 + 1000 + 1000) 100 3 = 660ms
Le temps de mesure (T1) est impos notamment par les caractristiques des inductances du
moteur (car il ne faut pas oublier les inductances du filtre dconnect), par le niveau de tension
du bus DC et par les courants maximaux admissibles par les amplificateurs, qui dfinissent la
rampe de courant. Le temps de dmagntisation est obtenu pour une dmagntisation naturelle,
en reliant les phases entre elles (activation de tous les interrupteurs du ct de la masse). Ce
temps peut tre rduit par une dmagntisation force, 250s (200s de temps de descente
force + 50s de temps de dmagntisation naturelle en cas de dissymtrie des fronts). Le temps
de scurit est un temps corrl la dmagntisation naturelle, afin de garder une marge pour
leffet de la drive en temprature des paramtres de la machine et des filtres, ainsi que leffet de
la dispersion des paramtres des moteurs (L 30%) ; mais il est vrai que 1000s est une marge
confortable. Le relev en Fig. 73 montre un rsultat pour une condition de test donne
temprature ambiante.

- 108 -

Chapitre 3
Le nombre dchantillons du moyennage pourrait tre rduit avec une meilleure qualit des
mesures. Ce sont donc l les degrs de libert disponibles pour rduire le temps de lindexage
statique. Durant cette phase, on peut tre confront une perturbation extrieure (cas du
redmarrage en vol). Il faut donc vrifier que la dure de lindexage statique ne soit pas trop
grande pour que le dplacement parasite ne soit pas pnalisant. Le document de calcul (voir Fig.
76) propose diffrents paramtres modifier (avec les contraintes exposes ci-dessous). Le but
est de voir leurs influences respectives sur langle balay durant lindexage statique, ou alors de
voir lesquels vont permettre de rduire langle balay. Si langle balay est trop grand, le prindexage (indexage statique) choue puisque les valeurs mesures nont plus de sens.
Langle balay nest contraignant que dans le cas dun redmarrage en vol, puisque lantenne
est excite par les mouvements du porteur. Les acclrations G sont nos principales
sources dennuis, puisquil faut pouvoir assurer un rgime fonctionnel de 3G en latral, de 6.5G
en vertical montant, et de 4.5G en vertical descendant. Ceux-ci crent une rotation de lantenne
par le bras de levier entre le centre de gravit et laxe de pivot, rsultant de la dissymtrie de
lantenne.

Fig. 74 : Acclrations maximales dues au porteur


Le tangage est corrl avec llvation, et le cap est corrl avec laxe circulaire, donc
on peut faire lhypothse que leffet du tangage et du cap est compris dans les acclrations
latrales et verticales. Le roulis est diffrent : sa prsence cre une rotation des axes moteurs
par rapport aux axes du repre terrestre, et par exemple une acclration verticale va avoir
un effet sur laxe circulaire. (Pour vrifier, on fait un test o un roulis de 90 donne une
acclration latrale de 6.5G et verticale de 3G en travaillant avec les projections des G
sur chaque axe).
Roulis (roll)

Tangage (pitch)

Cap (heading)

Fig. 75 : Roulis antenne et attitudes avion, roulis tangage cap


- 109 -

Chapitre 3
Le schma en Fig. 75 montre que le roulis cre une composante verticale et latrale sur
chaque axe. On peut avoir deux cas de figures, soit le roulis amplifie ou soit il diminue leffet des
acclrations sur chaque axe. La synthse lectromcanique (voir Fig. 76) permet de visualiser
limpact des diffrents paramtres sur langle lectrique balay durant le temps dindexage. Les
dplacements parasites crs par les mouvements du porteur sont pour nous issus de couples
de balourd. Ces couples sont le rsultat de la masse porte par chaque axe, dont le bras de levier
nest pas nul (marges de conception). En effet, la distance entre le centre de gravit et le centre de
laxe est faible, mais suffisant pour que le couple cr puisse avoir un impact significatif sur le
dplacement angulaire de lantenne. La distance maximale de 1mm est celle retenue pour les
simulations. Cest a priori une valeur qui restera maximale, rsultant aussi de lincertitude de
conception et de ralisation. On verra son influence au II.E. Chaque axe porte une masse
diffrente et laxe circulaire porte laxe lvation. Comme laxe lvation comporte un dcentrage,
il devrait avoir une influence sur laxe circulaire, du moins lorsque le pidestal est pench. Si on
sintresse aux matrices qui dcrivent la mcanique, on saperoit que ce dsaxage cre des termes
diagonaux. Cependant, ces termes sont trs faibles, et on peut les ngliger. Cela veut dire que les
axes sont d-corrls, donc du roulis ne va pas changer le poids de laxe circulaire (donc linertie)
en fonction des angles dinclinaison du porteur.

E. Rsultats de dimensionnement de la procdure dindexage


de la phase statique
Voyons lexemple en Fig. 76, avec les valeurs du cas expos en phase statique ; le but est de
visualiser les excursions maximales de positions compte tenu des critres (de fonctionnement)
que lon applique. Une variation de 3 mcanique est faible, mais cest aussi une variation de 30
lectriques qui devient pnalisante pour le processus dindexage. On donne le dtail des rsultats
pour les conditions maximales de chaque contrainte, et le dtail des rsultats avec des conditions
diffrentes, afin de visualiser les incidences de ces diffrentes variables, pour dtecter et comparer
les plus significatives. Les essais prliminaires sont issus dun ensemble de rsultats de la
caractrisation de lantenne prototype sur pot vibrant en chambre dessais. De ces diffrents
essais, notamment avec diffrentes tempratures, on a gard les valeurs les plus dfavorables.

- 110 -

Chapitre 3

(a)
(d)
(e)
(f)

(b)
(c)
(g)
(h)

(i)
(j)
(k)

Fig. 76 : Feuille de calcul de langle lectrique balay, dans le cas de paramtres non optimiss
Utilisation du document de calcul :
- (a) : on renseigne les temps utiliss dans notre algorithme, pour les essais de courants ;
- (b) : on choisit entre la somme des temps spcifis (>>1) ou un temps arbitraire (>>2) en (a),
pour pouvoir faire des comparaisons sur les rsultats intermdiaires et finaux ;
- (c) : on spcifie notre intervalle de prcision souhait ;
- (d) : on active ou non le roulis ;
- (e) : si oui, son angle (de roulis) ;
- (f) : on choisit les frottements secs, issus de la simulation, ou ceux mesurs (suivre la flche). On
peut mettre une marge sur ces frottements ;
- (g) : on indique les paramtres mcaniques ;
- (h) : on indique nos contraintes dacclrations ;
- (i) : on obtient le couple de balourd (avec et sans attitudes);
- (j) : on obtient les acclrations engendres, et les variations de positions pendant le temps
donn, en angles mcaniques ;
- (k) : on donne le rsultat de la variation de position sur chaque axe en degrs lectriques.

- 111 -

Chapitre 3
Avec un temps dindexage assez long (660ms), sans roulis, avec des conditions maximales
dacclrations (3G et 6.5G), on obtient un balayage de 410 lectriques sur laxe circulaire et
1800 sur laxe lvation. Le pr-indexage na donc aucune chance de fonctionner. Mme en
dgradant les acclrations maximales 2.5G et 3G, on nobtient pas mieux quun balayage de
110 et 144. Il est donc ncessaire, soit damliorer le pr-indexage, soit de dfinir un cahier des
charges diffrent entre le mode fonctionnel de balayage et dindexage du moteur. Le bilan (Fig.
77) rcapitule les diffrentes possibilits obtenues avec les degrs de liberts dont on disposait.
Ces valeurs (variations de positions) sont obtenues pour des acclrations maximales et
constantes. Une variation de 1800 lectriques, cest un demi-tour mcanique. On rappelle que
durant la phase dindexage, les moteurs ne sont pas aliments, donc aucun asservissement ne
stabilise lantenne.
On notera que les frottements sont une donne pnalisante. En effet, il faut les minimiser
pour les asservissements, mais sils sont trop faibles, le dplacement d une perturbation sera
plus important durant la phase dindexage, cest un compromis fixer. Cest pour cela que les
frottements les plus faibles sont ceux du pire cas (frottements mesurs sur le prototype non
termin, sans les couples de rappels de la connectique, et avec de faibles pr-charges des
roulements).
(a)
(b)
(c)
(d)
(e)
(f)
(g)
(h)

Fig. 77 : Bilan des essais des angles balays en fonction des paramtres limitants

- 112 -

Chapitre 3

Cette synthse (Fig. 77) montre diffrents rsultats en dmarrant (a) par le cas o le temps
dindexage est long. Cest un temps o lon prend des marges sur le fonctionnement, et qui est
ncessaire pour fiabiliser les mesures. Puis, pour rduire langle balay, on rduit limpact de
chaque contrainte (indiqu par le type dessais) pour valuer son incidence afin didentifier les
contraintes les plus pnalisantes, et ceux pour ventuellement soulever des points trop restrictifs
du cahier des charges fix en interne en avance de phase sur les demandes du client.
-

(a) : on commence par le cas simple, cela ne fonctionne pas ;

(b) : on rduit le balourd, on voit quil est significatif ;

(c) : on remet le balourd, mais on diminue le temps des tests. Cela commence
samliorer ;

(d) : on met du roulis. Cela a un impact significatif pnalisant;

(e) : on amliore le moyennage sans roulis. Lamlioration est visible ;

(f) : on remet du roulis, cela fonctionne avec des frottements secs forts ;

(g) : on recommence avec moins de frottements ;

(h) : on trouve une autre solution avec les pires contraintes.

Ainsi, pour retrouver les contraintes initialement imposes (roulis, balourd, frottements
secs, acclrations), on avance pas pas en rtablissant les contraintes une une et en diminuant
le temps dindexage avec les degrs de libert que nous avons (temps de dmagntisation, temps
de scurit aprs la dmagntisation, nombre de moyennages). Pour garder la fiabilit sur les
mesures, il est alors ncessaire damliorer la chane dacquisition, fait dmontr avec cette
dmarche. Il ne reste alors que peu de solutions si lon garde tous les paramtres au maximum
spcifi dans le cahier des charges. En loccurrence, il nous reste deux solutions viables, lune
avec les frottements secs retenus pour la simulation, lautre avec les frottements secs de
lexpertise (qui semblent trop faibles sur le prototype par rapport la version srie). Ainsi, on
peut fonctionner dans le pire cas si lon parvient effectuer un pr-indexage trs rapide. Pour
atteindre 75ms, il faut une dmagntisation force (avec un temps de scurit amoindri), et une
amlioration des mesures pour utiliser un minimum de points dans le moyennage. Le tableau de
synthse ne fait pas apparatre les essais sans roulis acclrations maximales, qui diminuent
leffet sur laxe circulaire, mais qui maximisent leffet sur laxe lvation. Dans le cas avec des
frottements secs trs faibles, on est la limite que lon sest fixe.
Dautres solutions peuvent apparatrent si lon remet en cause les conditions maximales
de fonctionnement, ou si lon parvient rduire le couple de balourd. Cependant, cela parat

- 113 -

Chapitre 3
difficile dobtenir une erreur <1mm entre le centre de gravit dun axe, et laxe rel, du moins, de
faon conomique.

F. La phase lectromcanique
Une fois que le pr-indexage est termin (indexage statique), le moteur est index avec une
erreur maximale de 30 lectriques. En effet, langle de dplacement de la dernire rotation est
de 10 lectriques dans le pire cas dans le test aux limites de la solution rapide. A chaque essai (de
180 lectriques dune paire de vecteurs), langle de rotation parasite est pris en compte. Si cest
une vibration, alors limpact est imperceptible, et si cest une rotation qui se cumule dans le mme
sens, alors chaque essai, cet angle est pris en compte dans la localisation intermdiaire. On
dispose alors dun couple minimal disponible de 85% (du couple maximal atteignable) pour le
contrle moteur, pour exploiter lide dun balayage de finition dans le but de crer une rotation
mcanique des moteurs. Le couple est suffisamment lev en amplitude pour donner lantenne
un mouvement de sens dfini grce lindexage statique prcdent. On va crer un dplacement
du rotor avec le contrle moteur qui vient dtre rfrenc 30 lectriques par lindexage
statique. Les conditions fonctionnelles imposent un couple lev pour tenir les performances des
asservissements, or, pendant la phase dindexage lectromcanique, 85% du couple nous suffit
pour contrer les perturbations dues aux mouvements du porteur afin de terminer lindexage en
deux tapes par un balayage de finition (post-positionnement lectromcanique). En effet, langle
mcanique restant balayer, pour se fixer sur la position de rfrence, est trs faible (<3
mcanique). Comme on connat le vecteur dquilibre dtermin par lindexage statique, la
position actuelle, le couple disponible minimal et le sens de rotation, on peut se positionner en
boucle ouverte sur la position de 0 de couple (voir Fig. 78) pour rduire lincertitude de langle
dindexage. Une fois stabilis, il suffit de relever la position, et den dduire la rfrence de
lindexage (<5 lectriques).
Le relev (Fig. 78) montre le courant dune phase du moteur. On dmarre ds la mise sous
tension. On a successivement :
-

(a) : mise sous tension, la commande numrique dmarre ;

(b) : auto-tests du systme lectronique, dfauts sur les composants ;

(c) : connexion des interfaces (commandes, communications, amplificateurs) ;

(d) : impulsions de courants de ltape dindexage statique ;

- 114 -

Chapitre 3
-

(e) : contrle moteur progressif, dplacement du moteur ;

(f) : contrle moteur en positionnement fixe ;

(g) : squence de c f pour lautre moteur, courant non instrument sur ce relev.

(h) : dbut du contrle moteur en mode balayage

(b)(d)
(a) (c) (e)

(f)

(g)

(h)

Fig. 78 : Relev du courant dune phase du moteur circulaire, visualisation des squences de
fonctionnement, notamment les phases statiques et lectromcaniques de lindexage automatique
Afin de garantir un temps fixe de post-positionnement, on va moyenner les ventuelles
oscillations mcaniques autour de la position finale (on ignore les positions transitoires). Un
time-out achve lindexage dans la phase de post-positionnement de maintien. Des
protections logicielles sont implmentes pour garantir le succs de lopration et vrifier que
loffset de la position soit dans lintervalle maximal de 30 lectriques par rapport au vecteur
dquilibre. Dans la stratgie systme , on pourrait vrifier les grandeurs en les comparant avec
les valeurs dtermines au sol et mmorises dans un calculateur dport.

G. Lorganigramme fonctionnel
Lensemble des commandes est gr par un DSP et son usage en aronautique dans le
domaine des alimentations est novateur. On ne sintresse ici qu la partie lie lindexage. Des
travaux existent sur des calculateurs [BEN03], mais pas sur un DSP qui reprsente lui seul le
systme embarqu (SETR). La dmarche dune forte intgration est dans la continuit des travaux
prsents dans le second chapitre. En effet, les contraintes du code sajoutent aux rgles des
algorithmes, mais on nen parlera pas ici.

- 115 -

Chapitre 3
Lindexage automatique au dmarrage est ralis en interruption pour lidentification du
ple Nord par I/t, et sans interruption pour le post-positionnement, et cela pour les 2 axes.
Un squenceur pour lindexage permet de passer dune fonction une autre, car il faut
reconfigurer des timers et des variables chaque tape. Lorganigramme en Fig. 79 est une
machine tats finis qui permet de raliser cette fonction. Seule linterruption dindexage est
utilise, les autres tant inhibes. Cette partie du programme est ralise aprs linitialisation du
systme et des autotests.

1. Machine tats finis de lindexage

Fig. 79 : Fonction de squencement de lindexage automatique


- 116 -

Chapitre 3

Explication des blocs :

Dsactivation des filtres moteurs : ds le dmarrage de lindexage, on inhibe les filtres


afin de pouvoir raliser les essais de I/t ;

Configuration des timers/PWM pour I/t : les essais de I/t sont raliss 2.5
kHz, (<<125 kHz qui est la frquence de dcoupage des onduleurs), les timers sont
synchroniss entre eux, et lADC est synchronis sur le timer de la PWM matre ;

Activation du MAIN (MOS principal) : on remet la puissance sur les onduleurs


(connexion au bus DC coupe la fin des autotests) pour dmarrer lindexage ;

Synchro ADC sur fronts des timers (en phases) : lADC et les PWM fonctionnant sur
des timers distincts puisque les frquences ne sont pas identiques en rgime fonctionnel
(10kHz et 125kHz), il faut quils fonctionnent en synchronisme pour que la mesure de
courant se fasse au moment de commuter le signal PWM en mode de dmagntisation ;

Initialisation des variables de lI.T. indexage (axe X) : cela permet de dmarrer


linterruption des essais en I/t avec les variables initialises pour laxe X (flag,
compteurs) ;

Autorisation de lI.T. dindexage : le vecteur dinterruption est valid ;

Aiguillage de fin dindexage axe X : un flag commut par lI.T. permet la machine
tats finis de continuer lindexage aprs la fin des essais en I/t ;

MAJ flag fin indexage axe : LI.T. est en attente pour le post-positionnement (on ne
garde que la lecture de position). Cela permettra aussi (pour les volutions de finalisation)
de faire un accs cyclique lEPLD ;

Configuration du timer X pour post-positionnement : on remet les PWM 125 kHz,


pour ne plus entendre le 2.5 kHz et pour limiter le stress des composants de puissance ;

Post-positionnement : cette fonction est dtaille plus loin ;

Arrt de lI.T. dindexage : laxe est index. Pour passer au suivant, il faut reconfigurer
lI.T., donc on la stoppe ;

Activation des filtres/PWM : quand les deux indexages sont termins, on ractive les
filtres pour le contrle moteur avant de remettre en fonctionnement les interruptions ;

Transmission des infos de calage : les valeurs sont envoyes au banc, et peuvent servir
pour le calculateur en cas de stratgie de redmarrage en vol sans indexage ;

- 117 -

Chapitre 3

Reconfiguration des timers en contrle moteur : on remet les PWM 125 kHz,
dphass de 180, et un dclenchement autonome de lADC sur son propre timer pour
permettre le fonctionnement en contrle moteur.

Note : le squencement traite chaque axe sparment pour bnficier du maximum de courant
possible pour chaque essai et indexage.

- 118 -

Chapitre 3

2. Programme de la phase statique

- 119 -

Chapitre 3

Fig. 80 : Interruption dindexage automatique

- 120 -

Chapitre 3
Explication des blocs :

Attente vnement de fin de conversion ADC : cest un mcanisme matriel qui


dclenche la commutation dun flag. Le top dun timer commute un flag qui est visible
depuis le systme dinterruptions (mme mcanisme que linterruption de contrle
moteur) ;

Action immdiate : priorit maximale de lI.T. comme celle du contrle moteur. Cette
I.T. nest jamais utilise en mme temps que son homologue ;

RAZ compteur des tapes de gnration des vecteurs : cela permet de crer une
machine tats finis via linterruption. Chaque interruption a donc une distinction
cyclique ;

Aiguillage du compteur dtape : quand on est au dbut de la machine tats finis, et


que lon a pas fait le test sur les trois paires, on gnre le vecteur de lessai ; sinon, il ny a
pas dactions sur les PWM ;

Calcul PWM du vecteur pour essai I/t : gnration du vecteur pour lessai ;

Arrt des PWM : pendant le droulement de la machine tats finis, cette tape permet
notamment la dmagntisation ;

Aiguillage de choix de laxe : comme les codes C sont communs (mme I.T.), le
main dfinit laxe prendre en compte pour lindexage (linterruption sera donc
utilise deux fois). Pendant toute la phase dindexage de laxe, ce paramtre est constant ;

Affectation PWM axe X : le vecteur prcdemment gnr est appliqu aux PWM ;

Lecture des courants : lecture du buffer dont le remplissage a t effectu en


synchronisation avec un timer ;

Lecture des positions : cela permet de mesurer les dplacements pour la mise au point
(voir pr-indexage) et pour le post-positionnement ;

Aiguillage du compteur dtapes : au niveau de la machine tats finis, on est au


moment de la fin de lacquisition de la mesure. Si la mesure est dj faite (ex : phase de
dmagntisation), on ne rafrachit pas les mesures qui ne veulent rien dire (lADC ne
sarrte pas !) ;

Mise jour des mesures axe X : on tient compte de la mesure correspondant au


maximum de I/t ;

Incrmentation compteur de moyennage ou RAZ : cela permet de gnrer un


compteur de moyennage pour les diffrentes moyennes imbriques ;

- 121 -

Chapitre 3

Aiguillage compteur moyennage : si la fin de la moyenne est atteinte, et que lon est
toujours dans le cadre des essais des trois paires, on peut procder au bilan de lessai ;

Aiguillage moyenne push et pull : selon le rsultat du I/t le plus important, on va


finaliser les rsultats avec la moyenne prpondrante ;

Mmorisation vecteur x.pair et I : on mmorise le numro du vecteur dont lessai est


majeur, avec son courant associ ;

Slection de la prochaine paire : lessai termin, on passe la paire suivante ;

Aiguillage de la squence en cours : si tous les essais sont termins, on passe dans un
autre mode, celui o lI.T. va laisser sa place au post-positionnement ;

Dtermination du vecteur le plus proche du Nord : avec les trois essais, on dtermine
le vecteur le plus proche du ple Nord ;

Prparation de lauto-dsactivation de lI.T. : un Flag est commut, celui-ci sera


dtect par le main (squence dindexage) qui va stopper lI.T. ; qui se termine alors
elle-mme ;

Logique de succession push/pull : permet dalterner des essais push , puis pull ,
puis push durant toute la phase de moyennage ;

Aiguillage pair/impair : selon lessai en cours, on va rafrachir la moyenne adquate ;

Calcul des offsets pairs et impairs : on distingue deux offsets triphass distincts selon
le sens du courant, car ils ne sont pas symtriques par rapport au zro ;

Calcul de loffset triphas : cest la combinaison des offsets prcdents pour obtenir un
offset moyen, afin de pouvoir comparer les essais par rapport au zro ;

Libration de linterruption et restauration du contexte : action software/hardware


pour le fonctionnement de linterruption.

- 122 -

Chapitre 3

3. Programme de la phase lectromcanique

Fig. 81 : Fonction de post-positionnement

- 123 -

Chapitre 3
Explication des blocs :

RAZ des PWM : on met les PWM en standby ;

Initialisation de la position moyenne : RAZ de la position ;

Initialisation de la PWM plancher : le post-positionnement commence avec une


PWM crant un couple darrachement suffisamment grand pour un mouvement
immdiat ;

Aiguillage PWM max : le post-positionnement est ralis avec une PWM croissante
pour crer un couple qui augmente linairement jusqu la position dquilibre (pour
limiter les oscillations). Quand la phase linaire est termine, on achve le postpositionnement ;

Incrment PWM / compteur : cela permet de crer un compteur pour lvolution


linaire de la PWM et pour le moyennage de la position jusquau courant max. admis ;

Calcul PWM du vecteur de post-positionnement : on dfinit les bras donduleur


commuter en fonction du vecteur le plus proche du nord gnrer ;

Aiguillage de laxe : comme cest une fonction commune, le squenceur dindexage


dfinit pour toute la dure dindexage laxe en cours dindexage;

Affectation PWM axe X : gnration du vecteur sur les PWM ;

Moyennage position (diffr par compteur) : pour saffranchir des ventuelles


oscillations autour du point dquilibre, on moyenne la position sans tenir compte de la
position initiale et du transitoire de dplacement pour minimiser le temps de moyennage ;

Tempo entre pas de PWM : comme cette fonction nest pas en interruption (pas de
cycle), la tempo permet de faire des temps dattente entre chaque volution de PWM pour
coller avec les inerties mcaniques ;

Tempo de maintien PWM : lorsque le post-positionnement est termin, on maintient la


position si on veut vrifier la stabilit de lantenne ;

RAZ PWM 0 : on relche les contraintes sur lantenne ;

Rsultat du moyennage : on en dduit la position dquilibre. Le calcul nest pas fait


avant pour ne pas arrondir les nombres ;

Calcul offset axe X : la position dquilibre permet de dterminer loffset avec la


position dassemblage (qui est modulo et dont le zro absolu est la rfrence) ;

MAJ des paramtres de calage : les offsets identifis seront utiliss pour le contrle
moteur.
- 124 -

Chapitre 3

III.Bilan de lindexage automatique :


Lindexage mis en uvre est ddi au fonctionnement du radar aroport ou un dispositif
prsentant un cycle robotique quivalent. En effet, on doit pouvoir faire des mouvements au
dmarrage, mme sils sont faibles. Lantenne se comporte comme une charge de masse et de
dimensions constantes, dont le couple dlivr par lensemble moteurs - amplificateurs pour crer
le mouvement dindexage ncessite dtre infrieur au couple maximal disponible. Il faut aussi se
rserver une marge (de couple) si lenvironnement est chahut. Cette mthode ne sapplique donc
pas au dmarrage pleine charge.
Les essais en laboratoire sur lantenne ont donn de bons rsultats, reproductibles et
constants. On indexe les deux axes avec une prcision infrieure 5 lectriques. Tous les tests
nont pas pu tre raliss concernant notamment les fortes vibrations car cela ncessite une mise
en place dun banc, impossible dans les dlais de la thse. Par contre, toute lapproche thorique a
t faite avec la mme rigueur que les simulations fonctionnelles et systmes. De la mme faon,
certains algorithmes mineurs de protection restent implmenter.
On peut considrer que les travaux prsents ici sont destins une niche dapplications.
Il existe nanmoins plusieurs aspects novateurs, au-del du caractre trs cibl pour lapplication.
En effet, les outils mis en uvre sont rutilisables. Lusage du DSP, vu sous laspect fonctionnel
de lindexage seul ou dans lensemble du projet, est une relle progression dans le domaine des
alimentations (ici extension aux servomcanismes). Pour des applications plus conventionnelles
des moteurs synchrones (hors des cycles radars), lindexage statique peut tre amlior si on
utilise des machines plus adaptes.
Les travaux raliss pour le radar font actuellement lobjet de dpose de Brevet dinvention.
Plusieurs aspects novateurs ont t dmontrs. Les dmarches entreprises pour le dpt de
Brevet sont plutt longues lchelle de la thse, elle-mme ne prsentant pas un avancement
assez rapide, donc les publications ne peuvent pas tre cites en ltat dans le contenu du
manuscrit.

- 125 -

Conclusion

Conclusion
De nos jours, llectronique de puissance est omniprsente dans la gestion et le traitement
de lnergie. Les convertisseurs statiques existent dans quasiment tous les endroits o se trouve
de lnergie lectrique. Les domaines dapplications couvrent toutes les gammes de puissance, et
chaque application dfinit les critres prpondrants : le MTBF, le cot, les performances, la
taille.
Cette thse traite des domaines dapplication de laronautique civile, mais pour laborer un
systme sur tagre visant galement les applications militaires, qui sont les crneaux de
THALES Systmes Aroports, quipementier des avions pour la navigation et les
servomcanismes. Les critres prpondrants sont nombreux, et sont les plus contraignants
parmi lensemble des domaines possibles. En effet, laronautique pousse lexigence dans les
extrmes, compte tenu des risques encourus et des budgets mis en jeu.
Le fond de la thse repose sur limplmentation, le design de convertisseurs statiques
lorsque lon remplace les systmes analogiques existants pour exploiter les performances et les
atouts de compacit des systmes numriques. Cette volution est rglemente par les normes
aronautiques, o les composants numriques sont vus comme de vritables lectrons libres. Les
normes sont donc l pour donner des rgles de dveloppements, de tests et de vrifications.
Cependant, la norme na pas pour rle de donner des directives aux dveloppeurs, et cest l
quinterviennent les mthodes proposes dans cette thse.
Cette thse a couvert un large ventail du domaine des sciences de lingnieur. Le but initial
ntait pas celui-ci, puisque la thse initiale se focalisait plus sur la commande dun simple
onduleur, et sur des points plus prcis. Le contexte industriel a fait voluer le cours de la thse
vers lapplication Radar de pointe , qui a boulevers le contenu et les objectifs de la thse.
Ctait la fois trs intressant pour ma formation et mes objectifs aprs la thse, mais cela a t
une contrainte sous-estime quant aux difficults vis--vis de mes comptences.
Certains points nont pas pu tre suffisamment approfondis dun point de vue acadmique,
pour tre rutiliss, notamment pour limpact des normes sur les mthodes de conception. De
plus, lindexage moteur aurait pu tre bien plus rapide dvelopper avec des experts du domaine.
Nanmoins, le projet est un succs puisque le prototype est oprationnel et conforme aux
attentes. Un gros travail documentaire a t de raliser en parallle de la thse, un document
(DCM) concernant tout le dveloppement du systme, et la thse ne montre pas les outils qui ont

- 126 -

Conclusion
t dvelopps uniquement pour le projet. Le travail avait ds le dbut t sous-estim, et le
dpart prmatur de mon encadrant industriel a t pnalisant.
Sur un plan plus technique, les espoirs placs dans la gnration automatique de code ne
sont pas totalement rcompenss, mais au moment de la thse, les outils qui taient encore tous
rcents (version bta) ntaient pas assez matures. En revenant dessus vers la fin de ma thse, bon
nombre de difficults ntaient pas encore rsolues. Pour que les outils voluent plus vite, il
faudrait mon sens un meilleur retour dexprience sur les outils vers Matlab : ces retours sont
plutt sommaires vu le caractre trs particulier des applications.
Le projet ainsi ralis est men au terme des objectifs initiaux, et la majorit du travail
devrait pouvoir tre reprise pour lindustrialisation. Par contre, pour le systme sur tagre , il
reste encore du travail puisque toute limplmentation repose sur un dimensionnement
spcifique, et ddi au fonctionnement du radar.
Finalement, on a soulev beaucoup de questions ; des difficults restent encore rsoudre.
Contrairement au dbut du projet, on a maintenant une vision assez prcise du travail fournir,
dans quels axes, que ce soit moyen ou long terme sur les projets intgrant un DSP ; ou que ce
soit sur les technologies venir et comment en tirer le meilleur parti : cot/performances/mise
en uvre. Mme si les technologies voluent encore beaucoup en terme dintgration, la
problmatique du code en lectronique de puissance sera toujours la mme.

- 127 -

Table des figures.


Fig. 1 : Arborescence de la sret de fonctionnement [TCHIN] ............................................................. 8
Fig. 2 : Arborescence des fautes de la sret de fonctionnement [TCHIN]............................................ 8
Fig. 3 : Synthse des fautes de la sret de fonctionnement [TCHIN] ................................................... 9
Fig. 4 : Thmes de la sret de fonctionnement [TCHIN]....................................................................... 9
Fig. 5 : Tableau de classification des risques, fonction de la gravit et de loccurrence [GUI03]......... 11
Fig. 6 : Reprsentation ALARP des risques [GUI03] ............................................................................ 12
Fig. 7 : Exemple de la mthode AMDEC sur une fonction [AMDEC].................................................... 15
Fig. 8 : Reprsentation de lindice de criticit pour un exemple dun maximum admis de 11 sur 64 ... 16
Fig. 9 : Densit de neutrons et altitude [ABD100] ................................................................................. 26
Fig. 10 : Energie des neutrons en fonction de laltitude [ABD100]........................................................ 27
Fig. 11 : Energie des neutrons en fonction de la latitude [ABD100] ..................................................... 27
Fig. 12 : Synthse des erreurs du DSP6701 en orbite dans lespace .................................................. 30
Fig. 13 : Systme logiciel gnrique monitorer [PET02].................................................................... 32
Fig. 14 : Monitoring logiciel [PET02] ..................................................................................................... 33
Fig. 15 : Monitoring systme [PET02] ................................................................................................... 33
Fig. 16 : Bornes optimistes et pessimistes du monitoring [PET02]....................................................... 34
Fig. 17 : Prcision des timings du monitoring [PET02] ......................................................................... 35
Fig. 18 : Monitoring gnral................................................................................................................... 36
Fig. 19 : Monitoring entrelac................................................................................................................ 37
Fig. 20 : Emplacement du radar aroport ........................................................................................... 44
Fig. 21 : Radar actuel (concurrent)........................................................................................................ 45
Fig. 22 : Cinmatique du direct-drive .............................................................................................. 45
Fig. 23 : Radar direct-drive (image de simulation) .......................................................................... 46
Fig. 24 : Fonction servomcanisme et I/O ............................................................................................ 47
Fig. 25 : RTSU et Servo ........................................................................................................................ 48
Fig. 26 : Organigramme du programme................................................................................................ 49
Fig. 27 : Boucles de la fonction principale............................................................................................. 49
Fig. 28 : Systme complet sous Simulink........................................................................................... 53
Fig. 29 : Bloc 1 ou 2 .................................................................................................................. 55
Fig. 30 : Correcteurs continu (a) et chantillonn (b)............................................................................ 56
Fig. 31 : Dtail du correcteur continu (Fig. 30-a)................................................................................... 56
Fig. 32 : Dtail du correcteur chantillonn (Fig. 30-b) ......................................................................... 56
Fig. 33 : Correcteur de vitesse chantillonn dans la simulation continue ........................................... 57
Fig. 34 : Calculs intermdiaires du correcteur dans sa premire version............................................. 58
Fig. 35 : Calculs intermdiaires du correcteur dans sa seconde version ............................................. 59
Fig. 36 : Poursuite de vitesse en continu ( gauche) et en chantillonn ( droite) ............................. 60

Fig. 37 : Exemple Simulink pour la gnration de code ..................................................................... 61


Fig. 38 : Systme dinterruption du code gnr .................................................................................. 62
Fig. 39 : Synoptique du systme dinterruption gnr......................................................................... 62
Fig. 40 : Fonction du scheduler ....................................................................................................... 63
Fig. 41 : Routine dinterruption gnre................................................................................................ 63
Fig. 42 : Extrait ABD100.1.10................................................................................................................ 65
Fig. 43 : Extrait ABD100.1.10.2........................................................................................................... 69
Fig. 44 : Architecture PIE, EV et CPU dans le F281x [TEX] ................................................................. 73
Fig. 45 : Interaction des mcanismes dinterruption dans le F281x [TEX]............................................ 74
Fig. 46 : Mcanismes dinterruptions des priphriques, pour le F281x [TEX] .................................... 75
Fig. 47 : Tableau de synthse des interruptions des priphriques du F281x [TEX] ........................... 75
Fig. 48 : Relevs avec I.T. dcales non premptives, cas temps rel (1) et cas surcharg (2) ......... 76
Fig. 49 : Relev avec I.T. dcales avec premption ........................................................................... 77
Fig. 50 : Relevs des 3 I.T. priorits statiques avec premption, vue priode ASV (1), vue priode
ADC (2).................................................................................................................................................. 78
Fig. 51 : Synthse de lanalyse des interruptions.................................................................................. 80
Fig. 52 : Extrait de lapplication de la mthode AMDEC sur lISR des amplificateurs .......................... 82
Fig. 53 : Synthse de lanalyse des flux de donnes ............................................................................ 83
Fig. 54 : Dtail de lanalyse des flux de donnes (exemple sur item n3) ............................................ 84
Fig. 55 : Exemple dune trajectoire avion et de la zone de balayage radar .......................................... 85
Fig. 56 : Simulateur des angles et des temps pour les trajectoires ...................................................... 86
Fig. 57 : Onduleur du radar pour un axe, avec ses connexions au reste du systme.......................... 89
Fig. 58 : Angle de pilotage et couple..................................................................................................... 89
Fig. 59 : Reprsentation des inductances couples [GOR88] .............................................................. 94
Fig. 60 : Priode lectrique en fonction de la priode dinductance ..................................................... 95
Fig. 61 : Relev inductance moteur ph/ph en fonction des positions.................................................... 95
Fig. 62 : Illustration du cycle i() et de la polarisation initiale des aimants .......................................... 96
Fig. 63 : Illustration de linfluence de la position des aimants sur le cycle i() pour le courant mesur96
Fig. 64 : Synoptique dune commande combine E.M.F./observer avec un dmarrage par la mthode
INFORM [SCH07].................................................................................................................................. 98
Fig. 65 : Synoptique dune commande combine EMF/observer avec dmarrage INFORM dans un
DSP TMS320 [SCH07].......................................................................................................................... 99
Fig. 66 : Combinaisons possibles des interrupteurs ........................................................................... 100
Fig. 67 : Organigramme de la mthode de localisation du ple nord [NAK00]................................... 101
Fig. 68 : Variation de courant dune phase en fonction de langle lectrique de vecteurs stimuli, avec
limpulsion positive, puis ngative [NAK00]......................................................................................... 103
Fig. 69 : Relev pour dterminer le point de fonctionnement pour les tests sur le moteur du radar
mto................................................................................................................................................... 104
Fig. 70 : Combinaisons des interrupteurs pour gnrer les impulsions .............................................. 105
Fig. 71 : branche capacitive dconnectable de la cellule LC, ............................................................. 106
Fig. 72 : Couple en fonction de langle dautopilotage ........................................................................ 107
Fig. 73 : Situation des temps relatifs lindexage............................................................................... 108

Fig. 74 : Acclrations maximales dues au porteur ............................................................................ 109


Fig. 75 : Roulis antenne et attitudes avion, roulis tangage cap .................................................... 109
Fig. 76 : Feuille de calcul de langle lectrique balay, dans le cas de paramtres non optimiss.... 111
Fig. 77 : Bilan des essais des angles balays en fonction des paramtres limitants ......................... 112
Fig. 78 : Relev du courant dune phase du moteur circulaire, visualisation des squences de
fonctionnement, notamment les phases statiques et lectromcaniques de lindexage automatique 115
Fig. 79 : Fonction de squencement de lindexage automatique........................................................ 116
Fig. 80 : Interruption dindexage automatique..................................................................................... 120
Fig. 81 : Fonction de post-positionnement .......................................................................................... 123

Bibliographie.
Chapitre 1 :
[ABD100] :Norme ABD0100.1.2 Part1 Chap2 AIRBUS Industrie, Environment
[AMDEC] :Outil AMDEC, Pascal Guesdon, Suplec, 1997
[AZZ04] : Abedenour Azzedine, UFR SSI, UBS (Bretagne Sud) ; Outil danalyse et de
partitionnement/ordonnancement pour les systmes temps rels embarqus , Thse,
2 juin 2004.
[BAB05] : Jean-Philippe Babau, L3i/CITI - INSA Lyon ; Formalisation et structuration des
architectures oprationnelles pour les systmes embarqus temps rel , HDR, 12
dcembre 2005.
[BON03] : Frdric Boniol, Grard Bel, Jrme Ermont ; Trois approches pour la modlisation
et la vrification de systmes embarqus ; techniques et sciences informatiques,
VOL.X, NX/2003, pages 1 X. (Chercheurs ONERA / ENSEIHT)
[RLAB] : http://www.boeing.com/assocproducts/radiationlab/index.htm
[DO178] : Norme DO-178B : Software Consideration in Airbone Systems and Equipment
Certification, RTCA, December 1, 1992
[DO254] : Norme DO-254 : Design Assurance Guidance for Airbone Electronic Hardware,
RTCA, April 19, 2000
[DOD03] : Paul E. Dodd, Lloyd W. Massengill ; Basic Mechanisms and Modeling of Single
Event Upset in Digital Microelectronics ; IEEE Trans on Nuclear Science, volume
50, n3, juin 2003
[FOR90] : Ray Ford, Monitoring Distributed Embedded Systems , DCS University, Kansas,
IEEE TH0307-9/90/0237, 1990
[GUI03] : Jrmie Guiochet ; Matrise de la scurit des systmes de la robotique de service,
approche UML base sur une analyse du risque systme ; Thse INSA Toulouse,
LESIA, N695, 9 juillet 2003
[HIE05] : David M. Hiemstra, Miladinovic B., Chayab F.

; Single Event Upset

Characterization of the SMJ320C6701 DSP using Proton Irradiation ; IEEE


Radiation effects Data Workshop, p42-45, 11-15 juillet 2005

[ISO01] : Damir Isovic, Gerhard Fohler, DCE Sude, Efficient Scheduling of Sporadic,
Aperiodic and Periodic Tasks with Complex Constraints , The 21st IEEE, Real-Time
Systems Symposium, p207-216, 27-30 novembre 2000, Orlando, FL, USA
[KAL04] : Hamoudi Kalla, Gnration automatique de distributions / ordonnancements
temps rel, fiables et tolrants aux fautes , thse INPG spcialit Informatique
Systmes et Logiciels , INRIA, 17 dcembre 2004
[LAP89] : Jean-Claude Laprie, LAAS-CNRS ; Sret de fonctionnement des systmes
informatiques et tolrance aux fautes , Techniques de lingnieur R7-595, paru en
octobre 1989
[LIU73] : C. L. Liu, James W. Layland, M.I.T. ; Scheduling Algorithms for Multiprogramming
in a Hard Real Time Environment , projet MAC, JACM, volume 20, issue1, p46-61,
janvier 1973, New York, USA.
[MAJ95] : Peter P. Majewski, Eugene Normand, Dennis L. Oberg ; A new Solar Flare Heavy
Ion Model and its Implementation througth MACREE, an improved Modeling Tool
to Calculate Single Event Effects rates in Space ; Boeing Defense and space group,
Seattle, WA 98124-2499, IEEE Trans. On Nuclear Science, volume 42, issue 6, part1,
p2043-2050, dcembre 1995, Madison, WI, USA, meeting : 17-21 juillet 1995.
[NOR93] : Eugene Normand, Taber A. ; Single Event Upset in Avionics ; Boeing Defense
and space group, IEEE Trans. On Nuclear Science, volume 40, issue 2, p120-126,
avril 1993
[NOR95] : Eugene Normand, J. L. Wert ; Single Event Upset and latchup Measurements in
avionics Devices using the WNR neutron Beam and a new neutron-induced latchup
Model ; Boeing Defense and space group, IEEE Radiation Effects Data Workshop,
NSREC 95 Workshop Record, p33-38, 19 juillet 1995, meeting : 17-21 juillet 1995,
Madison, WI, USA
[NOR96] : Eugene Normand ; Single Event Upset a ground level ; Boeing Defense and space
group, IEEE Trans. On Nuclear Science, volume 43, issue 6, Part 1, p2742-2750,
dcembre 1996, meeting 15-19 juillet 1996, Indian Wells, CA, USA
[NOR97] : Eugene Normand, Wert J. L., Oberg D. L., Majewski P. R., Voss P., Wender S.A. ;
Neutron-Induced Single Event Burnout in High Voltage Electronics ; Boeing
Defense and space group, IEEE TRANS. on Nuclear Science, volume 44, issue 6,
Part 1, p2358-2366, dcembre 1997, meeting : 21-25 juillet 1997, Snowmass Village,
CO, USA.

[NOR98] : Eugene Normand ; Extensions of the burst Generation rate Method for wider
Application to proton/neutron induced Single Event Effects ; Boeing Defense and
space group, IEEE Trans. On Nuclear Science, volume 45, issue 6, Part 1, p29042914, dcembre 1998, meeting : 20-24 juillet 1998, Newport Beach, CA, USA.
[OBE93] : Dennis L. Oberg, Jerry L. Wert, Eugene Normand ; Measurement of Single Events
Effects in the 87C51 Microcontroller ; Boeing Defense and space group, Seattle,
WA 98124-2499, IEEE Trans. On Radiation Effects Data Workshop, p43-50, 21
juillet 1993
[PET02] : Dennis K. Peters, David Lorge Parnas ; Requirements-based Monitors for RealTime Systems ; IEEE Trans. On Software Engineering, volume 28, issue 2, p146158, Feb.2002
[QIU00] : Xiaobing qiu, Wolfgang Wimmer ; Applying object-orientation and Component
Technology to Architecture Design of Power System Monitoring , ABB Power
Automation, Suisse, IEEE 0-7803-6338-8/00, Proceedings PowerCon 2000
International Conference, Power System Technology, volume 2, p589-594, 4-7
dcembre 2000, Perth, WA
[RIC03a] : P. Richard, M. Richard, F. Cottet ; Analyse holistique des systmes temps rel
distribues : principes et algorithmes ; LISI/ENSMA, Herms 2003
[RIC03b] : Pascal Richard, LISI-ENSMA ; Analyse du temps de rponse des systmes temps
rels , AETR., Actes de lEcole dt Temps Rel, 2003
[SPU96] : Marco Spuri, INRIA ; Analysis of deadline Scheduled Real-Time Systems , rapport
de recherche n2772, janvier 1996.
[TCHIN] : Techniques de lingnieur
[THI04] : Lothar Thiele, DITEE ETH Zrich ; Design for Timing Predictability , Revue
Real-time systems, volume 28, N2-3, p157-177, Kluwer Academics Publisher,
Springer Netherlands, collection Computer Science, novembre 2004, ISSN 15731383.
[TIN03] : Ken Tindell, Hermann Kopetz, Fabian Wolf ; Safe Automotive Software
Development , LivesDevices et Volkswagen, IEEE Procedings of the design,
automation and test in Europe Conference and Exhibition, p616-621, 2003.

Chapitre 2 :
[ABD01] : R. Ben Abdenour, P. Borne, M. Ksouri, F. MSahli ; Identification et commande
numrique de procds industriels, mthodes et pratiques de lingnieur , Technip,
Paris, 2001, INIST L27809
[DO160] : Norme DO-160E : Environmental Conditions and Test Procedures for Airbones
Equipment, December 4, 2004
[LEE98] : Chang-Gun Lee, DCE, Core ; Analysis of Cache Related pre-emption Delay in
Fixed Priority pre-empting Scheduling , IEEE TRANS. on Computer, volume 47,
issue 6, juin 1998.
[MAH07] : Arnaud Mahe ; Dimensionnement lectromcanique dune antenne aroporte ,
Thales A.S., Brest, 2007
[MAU03] : Rsonances mcaniques et servomcanismes, D. Maurel, TASFR00201972DOP.UI/BEP, Thales A.S. Brest, 11 avril 2003
[MAR06] : Corrections des attitudes avions par les servomcanismes de lantenne radar mto,
M. Marcant, TASFR00471698, Thales A.S., Brest, 11 mai 2006
[OZE06] : Damien Ozenne ; Etude des asservissements dune antenne aroporte , Thales
A.S., Brest, 2006
[RCM] :

DR.RCM n88/505 : Rfrentiels utiliss pour le radar aroport, Thales

[REFSA] : IRS, CIDS, PIDS, ICD THALES Systmes Aroports, 2006-2008


[SCS04] : Software Coding Standard, THALES Avionics J40894 issue AA-03, April 05, 2004
[TEX] :

Sprs174n, spru060, spru065, spru078, spru095, Texas Instruments, www.ti.com

Chapitre 3 :
[BEN03] : Benchaib Abdelkrim, Alacoque Jean-Claude, Poullain Serge, Thomas Jean-Luc ;
Initial Rotor Position Detection of Permanent Magnet Synchronous Motor ; EPE
topic 9a, Permanent Magnet Machines and Drives, 2-4 septembre 2003, Toulouse
Brevet dinvention Europen EP1398869A1: Benchaib Abdelkrim, Alacoque JeanClaude, Poullain Serge, Thomas Jean-Luc ; ALSTOM ; Procd et calculateur de
dtermination de la position angulaire larrt dun rotor, unit de commande et
systme incorporant le calculateur , INPI 2004
[BER02] : Nicolas Bernard ; Machine Synchrone : de la boucle ouverte lautopilotage ;
Revue 3EI pp24-39, n30, septembre 2002
[BRU96] : Cyrille Bruguier ; Commande dune machine synchrone aimants sans capteur
mcanique , L.E.G., Thse INPG, 28 octobre 1996
[CAR93] : Laurent Cardoletti ; Commande et rglage de moteurs synchrones auto-commuts
par capteurs indirects de position , EPFL, Thse n1118, 1993
[GOR88] : S.F. Gorman ; Determination of Permanent Magnet Synchronous Motor
Parameters for use in Brushless DC Motor Drive Analysis , IEEE TRANS. On
Energy Conversion, volume 3, issue 3, p674-681, septembre 1988
[HAR05a] : Michael C. Harke, Dejan Raca, Robert D. Lorenz ; Fast and Smooth Initial Position
and Magnet Polarity Estimation of Salient and near zero saliency PMSM ; IEEE
International Conference on Electric Machines and Drives, p1037-1044, 15 mai 2005
[HAR05b] :Michael C. Harke, Dejan Raca, Robert D. Lorenz ; Implementation issues for fast
Initial Position and Magnet Polarity Identification of PMSM with near Zero
Saliency ; Power Electronics and Applications, p10, EPE 2005 Dresde, Allemagne
[HAS07] : Chihiro Hasegawa, Shoji Nishikata ; A Simple starting Method for self controlled
Synchronous Motors in Electric Propulsion Systems for Ships ; Power Electronics
and Applications, EPE, 2-5 septembre 2007, Aalborg Danemark
[ICH04] : Shinji Ichikawa, Mutuwo Tomita, Shinji Doji, Shigeru Okuma ; Initial Position
Estimation and low speed Sensorless Control of Synchronous Motors in
Consideration of Magnetic Saturation based on System Identification Theory ;
IEEE 39th annual meeting conference Record, Industry Applications Conference,
volume 2, p971-976, IAS, 3-7 octobre 2004
[JAK05] : Piotr Jakubowski, Wlodzimierz Koczara, Nazar Al-Khayat ; Method of the Poles
Position Identification for Brushless Axial Flux Permanent Magnet Motor Drive

System ; European Conference on Power Electronics and Applications, ISBN 9075815-09-3, EPE, 2005, Dresde Allemagne
[KIE02] : Juergen Kiel, Stephan Beineke, Andreas Buente ; Sensorless Torque Control of
Permanent Magnet Synchronous Machines over the whole Operation Range ; EPEPEMC, T9-053, Dubrovnik & Cavtat, 9 septembre 2002
[KIM03] : Hyunbae Kim, Kum-Kang Huh, Michael Harke, Jackson Wai, Robert D. Lorenz,
Thomas M. Jahns ; Initial Rotor Position Estimation for an integrated starter
Alternator IPM Synchronous Machine ; EPE, 2003, Toulouse
[MAT94] : Nobuyuki Matsui, Takaharu Takeshita ; A novel starting Method of Sensorless
Salient Pole Brushless Motor ; IEEE Conference Record of the Industry
Applications Society annual Meeting, volume 1, p386-392, 2-6 octobre 1994, Denver,
CO, USA
[NAI92] : Malakondaiah Naidu, bimal K. Bose ; Rotor Position Estimation Scheme of
Permanent Magnet Synchronous Machine for high Performance Variable Speed
Drive ; IEEE Conference Record of the Inductry Applications Society Annual
Meeting, volume 1, p48-53, 4-9 octobre 1992, Houston, TX, USA
[NAK00] : Shin Nakashima, Yuya Inagaki, Ichiro Miki ; Sensorless Initial Rotor Position
Estimation of Surface Permanent Magnet Synchronous Motor ; IEEE Trans.
Industry Applications, volume 36, issue 6, p1598-1603, nov/dec 2000
[NOG98] : Toshihiko Noguchi, Kazunori Yamada, Seiji Kondo, Isao Takahashi ; Initial Rotor
Position Estimation Method of Sensorless PMSM with no Sensitivity to Armature
Resistance ; IEEE Trans. Industry Applications, volume.45, issue 1, p118-125,
fvrier 1998
[OST96] : Stefan stlund ; Sensorless Rotor Position Detection from Zero to rated speed for
an integrated PMSM Drive ; IEEE Trans. Industry Applications, volume 32, issue 5,
p1158-1165, Septembre/octobre 1996
[PER07] : Jan Persson, Miroslav Markovic, Yves Perriard ; A new standstill Position Detection
Technique for non salient PMSM using the Magnetic Anisotropy Method , Annual
Meeting Conference Record of the Industry Applications, volume 1, p238-244, 2-6
octobre 2005
[POP07] : Dumitru Daniel Popa, Liviu Mario Kreindler, Raducu Giuclea, Aurelian Sarca ; A
Novel Method for PMSM Rotor Position Detection ; EPE 12th European
Conference on Power Electronics and Applications, 2-5 septembre 2007, p1-10,
Aalborg Danemark

[RAU07] : Reiko Raute, Cedric Caruana, Joseph Cilia, Cyril Spiteri staines ; A Zero Speed
Operation Sensorless PMSM Drive without additional Test Signal Injection ; EPE,
2-5 septembre 2007, Aalborg Danemark
[SCH88] : M. Schroedl ; Detection of the Rotor Position of a Permanent Magnet Synchronous
Machine at Standstill ; ICEM, p195-197, 1988, Pise, Italie
[SCH90] : Manfred Schroedl, Operation of the Permanent Magnet Synchronous Machine
without a Mechanical Sensor , International Conference on Power Electronics and
Variable-speed Drives, p51-56, 17-19 juillet 1990, Londres, Angleterre
[SCH97] : Peter Schmidt, Michael Gasperi, Glen Ray, Ajith H. Wijenayake ; Initial Rotor Angle
Detection of a non Salient Pole Permanent Magnet Synchronous Machine , IEEE
Trans. Industry Applications Society Annual Meeting, IAS, volume 1, p459-463, New
Orleans, Louisiana, 5-9 octobre 1997
[SCH02] : Manfred Schroedl, Industrial Sensorless Permanent Magnet Synchronous Motor
Drives based on the INFORM Method for high Performance including Standstill ,
EPE-PEMC, Dubrovnik & Cavtat, Croatia, September 9-11, 2002.
[SCH07] : Manfred Schrdl, Matthias Hofer, Wolfgang Staffler ; Extended EMF and
Parameter Observer for Sensorless controlled PMSM Machines at low Speed ; EPE,
2-5 septembre 2007, Aalborg Danemark
[STI99] :

M. Stiebler, Y. Li ; Detection of the Rotor Position of a Permanent Magnet


Synchronous Motor at Standstill ; European Transactions on Electrical Power,
ETEP, volume 9, issue1, p43-47, janvier 1999

[TAK96] : Takaharu Takeshita, Nobuyuki Matsui ; Sensorless Control and Initial Position
Estimation of Salient Pole brushless DC Motor ; 4th International Workshop on
Advanced Motion control, volume 1, p18-23, AMC, 18-21 mars 1996
[TUR03] : Marco Tursini, Roberto Petrella, Francesco Parasiliti ; Initial Rotor Position
Estimation Method for PM Motors ; IEEE Trans. Industry Applications, volume
39, issue 6, p1630-1640, nov.dec 2003
[WIS07] : Janusz Wisniewski, Piotr Jakubowski, Wlodzimierz Koczara ; Poles Position
Identification of Permanent Magnet Axial Flux Motor using PIPCRM Sensorless
Method ; EPE, 2-5 septembre 2007, Aalborg Danemark

Vous aimerez peut-être aussi