Professional Documents
Culture Documents
es applications temps rel embarques sont des systmes installs sur des
L plates-formes mobiles (avions, automobiles, plates-formes robotiques
mobiles...) et fournissant ainsi certains services tels que la prsentation dinfor-
mations sur lenvironnement du vhicule (dtection dobstacles, cartographie),
le contrle de tout ou partie de ce vhicule (ractions en cas de danger, pilotes
automatiques) ou encore le relais pour lchange de donnes (satellites de
communications).
Ces applications existent ainsi depuis quelques dizaines dannes (systmes
dinstrumentations dans les avions, les fuses ou les satellites par exemple),
mais nont toutefois pas encore envahi notre quotidien, restant jusqu prsent
cantonnes des systmes de haute technologie. Cela fait relativement peu de
temps que le grand public voit apparatre des produits grand public ainsi
quips : ordinateurs de bord, contrle de la vitesse dune automobile, mtros
sans conducteur.... Il y a fort parier que la dcennie qui va suivre verra ce type
dapplications se multiplier dans notre environnement, notamment dans le
domaine de lassistance la conduite ou encore au niveau des systmes de
scurit.
Toute reproduction sans autorisation du Centre franais dexploitation du droit de copie est strictement interdite.
Techniques de lIngnieur S 8 192 1
PROTOTYPAGE DES APPLICATIONS TEMPS REL EMBARQUES _________________________________________________________________________________
1. Problmatique
du prototypage
dapplications embarques
Camra
stro
1.1 Objectifs recherchs
Camra ddie
lheure actuelle, les systmes embarqus tentent dexploiter au positionnement latral
au mieux les progrs de llectronique et de linformatique
(figure 1). On dveloppe ainsi des systmes de plus en plus perfor-
mants et exigeants en termes de puissance de calcul embarque, HP1 pour radar
de dbits de donnes grer, de capacit de stockage et de minia- courte porte
turisation. Laser
Les matriels utiliss sont trs divers. Il nest plus rare de voir
des camras vido sur des systmes embarqus, lesquelles seront HP1 pour radar HP2 pour radar
souvent associes dautres capteurs complmentaires. On longue porte courte porte
aboutit de plus en plus de cette faon des systmes capables
Radar longue porte
dexcuter des algorithmes de fusion de donnes. Les algorithmes
mis en uvre sont ainsi de complexit croissante : un systme
embarqu temps rel est dautant plus difficile dvelopper et
Figure 1 Le projet europen CARSENSE (www.carsense.org)
industrialiser. Il est aujourdhui inconcevable de dvelopper un
systme complexe sans passer par plusieurs tapes telles que la
ralisation dun ou plusieurs prototypes et leur mise au point, des
phases de tests exhaustifs, de portage de la plate-forme de proto-
typage vers des plates-formes de prsrie puis de srie... Quelles sont les spcificits de ces outils ? Quelles sont les
qualits requises ?
Face cette multiplication des tapes et donc aussi des cots,
les industriels vont avoir pour objectifs principaux : Tout dabord, le prototypage ncessite de pouvoir tudier, puis
essayer et tester un nombre important de solutions diffrentes :
la rduction du temps entre la dcision du dveloppement
essayer diffrents algorithmes, les comparer, les fusionner, essayer
dun premier prototype et la mise sur le march dun systme
alors diffrentes mthodes de fusion...
( time to market ) ;
la matrise des cots de recherche et dveloppement : il faut Pour cela, un bon outil de dveloppement doit tre souple et
savoir valuer le plus tt possible la faisabilit dun systme et le modulaire. La plupart des ateliers logiciels mettent ces qualits en
budget ncessaire son dveloppement ; uvre en proposant des ateliers de programmation graphique :
la recherche ventuelle, mais dsormais assez frquente, de lutilisateur dispose dune banque de botes fonctionnelles ,
partenaires de manire mutualiser les cots et mettre en chacune permettant deffectuer une opration bien prcise sur un
commun les connaissances ; type de donnes particulier, quil suffit de connecter entre elles pour
la capitalisation des savoirs, permettant autant que possible organiser les flux de donnes et les oprations successives qui leur
de rutiliser les briques existantes et robustes des systmes sont appliques. En bout de chane, une bote de contrle-
prcdents. commande, de visualisation ou denregistrement permet dexploiter
les donnes traites. Ces logiciels doivent alors pouvoir tre
complts volont de nouvelles botes, apportant de nouvelles
1.2 Outils mettre en uvre fonctionnalits et de plugins (extensions logicielles) leur permettant
de sadapter aux besoins divers des utilisateurs (banques de fonc-
Pour toutes ces raisons, il nest plus possible (ou tout au moins tions de traitement du signal, de traitement dimages, etc.).
plus raisonnable) denvisager le dveloppement ex nihilo dun La plupart proposent dailleurs la possibilit de programmer
systme embarqu. Les constructeurs, bureaux dtudes ou labo- leurs propres modules via des langages de programmation
ratoires doivent se doter doutils qui leur permettront deffectuer des standards ou propritaires, puis de les intgrer dans les applica-
dveloppements efficaces et robustes en un minimum de temps. tions en dveloppement.
Toute reproduction sans autorisation du Centre franais dexploitation du droit de copie est strictement interdite.
S 8 192 2 Techniques de lIngnieur
________________________________________________________________________________ PROTOTYPAGE DES APPLICATIONS TEMPS REL EMBARQUES
1.4 Matriel
2. Notions de temps
De manire tre la fois modulaire, souple et reproductible, un
environnement de prototypage doit tre constitu, autant que
et de temps rel
possible, de matriels standards. Les cots de conception et/ou de
dveloppement dun matriel spcifique sont incomparables avec 2.1 Notion de temps rel mou
ceux dun matriel standard produit en srie et cest sans parler des
dlais de mise en uvre... Dans le cas o aucun matriel standard ou traitement la vole
ne pourrait rpondre au besoin, il sera parfois beaucoup plus avan-
tageux davoir recours la simulation logicielle. On entend souvent quune application ralise une tche donne
en temps rel . Cela signifie souvent que lapplication est suffi-
Enfin, comme nous lavons dit, les structures de recherche et samment performante pour traiter la vole et sans perte dinfor-
dveloppement souhaitent bnficier de toutes les synergies mation toutes les donnes provenant dun ou plusieurs capteurs,
possibles. Elles visent changer non seulement des rsultats, sans atteindre la capacit maximale de calcul quelle a sa dispo-
mais aussi des donnes, des connaissances, des scnarios de sition. Ainsi, toutes les donnes en entre sont prises en compte par
tests, etc. Chaque brique utilise dans la chane de prototypage lacquisition et participent la tche ralise. Dans la plupart des
doit donc, idalement, pouvoir tre stocke, exporte et partage cas, les donnes sont traites suffisamment rapidement pour
entre diffrents centres de dveloppement. permettre lobtention des rsultats en un temps infrieur la
constante de temps rgissant lvolution du systme peru par les
capteurs. Ceci permet lapplication de ragir aux volutions de
lenvironnement.
Exemple : citons les applications denregistrement de vido sur PC
Base de scnarios ( partir dune carte Tuner/TV) avec compression logicielle (plus ou
thoriques moins performante selon la puissance du PC...).
Nanmoins, le terme temps rel au sens propre a une autre
Mise en uvre Modlisation
signification. Ainsi, les puristes soutiendront que Windows nest
Base de scnarios rels
pas un systme dexploitation temps rel . Pourtant, il est bel et
Base de scnarios bien possible de visionner un dvd sous Windows...
partir de donnes relles en
simuls
temps rel ou enrigistres
Toute reproduction sans autorisation du Centre franais dexploitation du droit de copie est strictement interdite.
Techniques de lIngnieur S 8 192 3
PROTOTYPAGE DES APPLICATIONS TEMPS REL EMBARQUES _________________________________________________________________________________
Toute reproduction sans autorisation du Centre franais dexploitation du droit de copie est strictement interdite.
S 8 192 4 Techniques de lIngnieur
________________________________________________________________________________ PROTOTYPAGE DES APPLICATIONS TEMPS REL EMBARQUES
On pourra alors de plus en plus sorienter vers des solutions clavier, ce qui ne sera pas forcment le cas sous dautres systmes
base de PC portables pour les applications ne ncessitant pas luti- dexploitation o linterface graphique se retrouverait entirement
lisation de capacits de stockage trop importantes, ou encore vers gele.
des plates-formes de type PC-104+, ETX, etc. Au final, lexprience montre nanmoins que, moyennant
Nous dtaillerons dans le paragraphe 3 les possibilits des diff- quelques rglages du systme, Windows propose des perfor-
rentes solutions matrielles. mances temps rel tout fait correctes tant que la charge pro-
cesseur nest pas trop leve (< 70 % environ) : les tches dont la
priorit est leve sexcutent alors dans leurs dlais impartis et la
2.3.1 Systmes dexploitations ractivit du systme est bonne (jitters faibles, de lordre de la milli-
seconde). De mme, les performances globales en termes de puis-
Ct systmes dexploitations, nous avons alors lembarras du
sance de calcul sont bonnes : les temps de commutation entre les
choix : Windows [2], Linux [3] [4], QNX [5], VxWorks... tudions les
tches sont plus rapides que sur beaucoup dautres systmes
avantages et inconvnients de quelques unes de ces solutions.
dexploitations.
QNX et VxWorks, pour ne citer queux, sont donc des systmes
dexploitations temps rel dterministes tel que nous lavons vu Quid de Linux ? [3]
dans le paragraphe 2.2 : le programmeur peut affecter aux tches Il est beaucoup plus difficile de parler de Linux au sujet des per-
logicielles de son choix les priorits les plus leves ou les plus fai- formances temps rel car il nexiste pas un seul systme Linux :
bles, le gestionnaire des tches du systme dexploitation respec- chaque distribution est diffrente, le systme dexploitation est trs
tera ces choix la lettre. modulaire. Le noyau du systme peut lui-mme tre recompil et
Le principal inconvnient de ces systmes dexploitations rside modifi volont laide de patchs en tous genres.
dans le fait quil nexiste que peu de drivers matriels pour ces OS Les noyaux 2.4 de Linux ntaient pas temps rel et les appels
(Operating System ). Le choix des capteurs et des matriels systmes ntaient pas rentrants (systmes dit non premptifs ).
utiliser est donc plus limit. Nanmoins, certains patchs justement permettaient de corriger tout
ou partie de ces faiblesses. Les nouvelles versions des noyaux Linux
Windows 2000 ou XP, en revanche, nest pas considr (v 2.6) intgrent ces amliorations, de mme quun planificateur de
comme tant un systme temps rel dterministe. Il peut nan- tches plus performant (temps de commutation de tches en O(n))
moins tout fait convenir, dans un grand nombre de cas pour le (voir le site http://www.kernel.org pour de plus amples informa-
prototypage rapide dune application : la plupart des capteurs ou tions).
des cartes dacquisitions pour PC sont fournis avec leurs drivers
pour Windows. Ainsi Linux, tout comme QNX et VxWorks, restent rservs des
programmeurs avertis, en matire de prototypage, et familiers de
Le choix des environnements de dveloppements et des langa- ces systmes dexploitations.
ges de programmation est large. Le dveloppement dinterfaces
graphiques est relativement simple. Pour des applications lgres, destines fonctionner sur des
Windows et le temps rel architectures aux performances limites (systmes enfouis, calcula-
teurs ddis), on utilise souvent des systmes dexploitations bass
Pourquoi Windows (dans ses versions NT, 2000 et XP) nest-il
sur une architecture micronoyau, trs modulaires et adaptables en
pas considr comme un systme temps rel dterministe ? [2]
fonction des ressources disponibles (Linux [4], QNX, VxWorks sont
Il est possible daffecter diffrentes priorits aux diffrentes tches souvent utiliss). Il convient de mentionner aussi les solutions
dune application sous Windows. Nanmoins, les priorits des Windows CE .NET et Windows XP Embedded. Windows CE,
tches logicielles dune application seront toujours infrieures aux contrairement ses grands frres technologie NT (Windows NT,
priorits des routines servant les interruptions matrielles. 2000 et XP), est bas sur un noyau temps rel. Il est largement
Cest--dire quune carte dacquisition recevant une donne va rpandu sur les PDAs (Personal Digital Assistant ) par exemple et
dclencher une interruption matrielle, laquelle va interrompre la Microsoft fournit un environnement de dveloppement complet
tche courante quelle que soit la priorit de celle-ci pour lancer pour cet OS.
lexcution de son ISR (interruption service routine).
De mme, il nest pas possible sous Windows de dfinir un ordre 2.3.2 Langages de programmation
de priorit parmi les diffrentes interruptions matrielles gres.
Celles-ci sont distribues par le systme dexploitation de faon Dans le domaine des langages de programmation utiliser, l
arbitraire. aussi, des choix doivent tre faits. Les langages les plus courants
seront C/C++, Java. Dautres langages spcifiques Windows sont
Cependant, la plupart des services associs ces interruptions aussi rpandus : C# (prononcer C Sharp ) et Visual Basic.
matrielles sont extrmement simples et se contentent de prendre
note de la prsence dune donne pour mettre en attente une tche C/C++ est bien sr le langage le plus courant dans le domaine,
de traitement de la donne en question avec une priorit inf- permettant loptimisation et la gestion fine de la mmoire utilise.
rieure. La tche interrompue initialement peut alors reprendre la Le langage est portable sur un grand nombre de plates-formes
main trs rapidement. (moyennant recompilation) tant quon nutilise pas de librairies sp-
Enfin, il est difficile de savoir exactement sous Windows quelles cifiques (comme par exemple les librairies fournies avec les mat-
sont les applications charges en mmoire, et quelles sont leurs riels dacquisition de donnes ou celles permettant de raliser des
priorits lexcution. Le planificateur des tches de Windows na interfaces graphiques).
pas non plus un comportement toujours dterministe : il donne Le C++, orient objet, permet de concevoir des applications
parfois la main des tches (ou threads ) de priorit infrieure qui complexes modulaires.
nont pas obtenu de temps dexcution depuis un certain temps, C et C++ sont des langages trs courants dans le domaine
mme sil doit bloquer pour cela dautres tches dont les priorits scientifique : de nombreuses librairies sont disponibles dans ce
sont plus importantes. Le but de ceci est principalement de langage, que ce soit pour le traitement dimages, le traitement du
conserver une interface graphique ractive. Ce dernier phnomne, signal, lacquisition de donnes. La plupart des SDK (Software
appel Priority Boost , peut dailleurs tre apprciable dans une Development Kits ) fournis avec les matriels spcifiques (cartes
phase de prototypage : si un algorithme de lapplication fonction- dacquisition de donnes, capteurs, etc.) sont disponibles en C++.
nant en priorit leve est trop gourmand et se met consommer
toute la puissance de calcul, il sera possible dans la plupart des cas Java, de son ct, bien que parfaitement portable sur plusieurs
sous Windows de terminer lapplication laide de la souris ou du plates-formes, possde des inconvnients dans le domaine du
Toute reproduction sans autorisation du Centre franais dexploitation du droit de copie est strictement interdite.
Techniques de lIngnieur S 8 192 5
PROTOTYPAGE DES APPLICATIONS TEMPS REL EMBARQUES _________________________________________________________________________________
dveloppement temps rel embarqu : une application Java la puissance lectrique disponible (prleve sur lalternateur) ne
consomme une quantit de mmoire importante, moins dutiliser dpassera pas 700 ou 800 W dans la plupart des cas (des batteries
des ditions spcifiques telles que J9 ou J2ME (pour Java 2 Micro supplmentaires permettant de faire fonctionner le systme moteur
Edition, plus limite en fonctionnalits), et les compilateurs sont teint sont souvent apprciables, ajoutant ainsi du volume de la mme
moins performants que ceux utiliss en C ou C++ (les fichiers Java faon) ;
tant compils en un code intermdiaire, dit byte code , indpen- dans des cas dutilisations en conditions extrmes (chemins,
dant de la plate-forme sur laquelle on linstalle, et qui sera interprt conduite sportive, situations durgence), des dispositifs damortis-
par la machine virtuelle du systme en phase dexcution). Enfin, le sement de chocs devront tre prvus (silent blocks, mousses, rsines
systme de libration de la mmoire en Java utilise un ramasse de fixation des cartes lectroniques, connecteurs visss).
miettes (Garbage collector ), une tche supplmentaire qui scanne Une configuration base sur un PC industriel en rack 4U peut tre
priodiquement la mmoire alloue pour librer les espaces non adapte ce type de situation. Un PC de bureau peut mme parfois
utiliss. La prsence de tches non contrles par le programmeur faire laffaire. Nous dtaillerons cela par la suite. Cette solution met
peut, dans certains cas, perturber le fonctionnement temps rel disposition de lquipe de projet une importante puissance de calcul,
dune application. une bonne modularit (possibilit dajout de capteurs, dvolutions du
Java propose cependant des alternatives permettant le dve- PC) pour des cots relativement faibles.
loppement dapplications temps rel laide de machines virtuelles 2. En revanche, dans le cas de drones, les contraintes dencombre-
spcifiques. Une spcification pour un langage Java temps rel ment et de poids feront choisir des systmes plus compacts, base
est dveloppe par le Real-Time Java Expert Group (voir par exemple de cartes PC-104, beaucoup plus petites et lgres, rsis-
http://rtsj.dev.java.net). tant bien aux chocs et aux vibrations. La puissance de calcul et les
interfaces dentres/sorties disponibles seront alors beaucoup plus
Visual Basic ou C# enfin, si lon travaille sous Windows, pourront limites.
tre adapts au dveloppement rapide dinterfaces graphiques ou
dapplications simples, mais restent inadapts pour raliser des Les capteurs utiliss sont trs divers suivant les applications. La
applications scientifiques complexes et optimises. technologie des capteurs volue extrmement rapidement,
exploitant lvolution des dbits disponibles sur les bus de don-
nes rcents, de mme que laugmentation considrable de la
En fonction des besoins en performance de lapplication envi- puissance de calcul des processeurs, des capacits de stockage des
sage, on optera pour une solution ou une autre, et il faut gar- donnes de plus en plus importantes (disques durs SCSI rapides,
der lesprit que tous ces langages peuvent communiquer systmes RAID, mmoires flash).
entre eux, soit au sein dune mme application, soit par linter-
Cest grce de tels gains en performance que lon se tourne
mdiaire de librairies partages (.dll ou .so). Nous parlerons
rsolument, ces dernires annes, vers des applications de fusion
aussi dans le paragraphe 3 de collaborations entre diffrents
de donnes, mettant en jeu de multiples capteurs.
logiciels pour raliser une tche complexe.
De mme, de plus en plus dapplications embarques utilisent
de la dtection par vido, entranant le besoin de grer des dbits
de donnes particulirement importants.
3. tapes du prototypage
3.2 Capteurs utiliss
3.1 Spcification, choix
Voici quelques exemples de capteurs utiliss en recherche et
et mise en place du matriel dveloppement pour raliser les prototypes des applications de
demain.
Une fois les besoins clairement dfinis et le cahier des charges
rdig et accept, on sera capable de spcifier le matriel dont on Camras vido, analogiques ou numriques (figure 4)
va avoir besoin (capteurs, matriel informatique, alimentations,
Les camras analogiques sont maintenant souvent dotes de
actionneurs).
capteurs CCD et dlivrent un signal analogique qui doit tre chan-
On procdera gnralement (et idalement) de lextrieur vers tillonn sur une carte dacquisition spcifique. Certaines cartes
lintrieur : cest--dire que lon commencera par dterminer les dacquisition sont capables deffectuer une compression en temps
lments dont on aura besoin pour interagir avec lenvironnement rel sur les images acquises, ce qui permet de diminuer les dbits
(capteurs et actionneurs), puis par dfinir les moyens informa- lenregistrement par exemple (compressions jpeg, mpeg, en
tiques qui devront tre mis en place pour acqurir et traiter les ondelettes, etc.).
donnes des capteurs et/ou gnrer et envoyer les commandes. Les camras numriques sont de plus en plus utilises : les bus
Il faudra bien entendu tenir compte dun certain nombre de de donnes numriques tant de plus en plus performants, on peut
contraintes, particulirement importantes dans le cas dapplica- les utiliser pour des acquisitions haute frquence, haute rsolution
tions embarques. Parmi les plus courantes, on trouvera celles-ci : par exemple. Leur connexion et dconnexion peuvent souvent
encombrement ; seffectuer chaud , elles peuvent de mme tre pilotes par
poids ; logiciel (rglages de formats vido, de frquences dacquisition, de
consommation lectrique (fonctionnement sur batteries, ou temps douverture, de gain, douverture, etc.).
au mieux sur alternateur) ;
rsistance aux chocs et vibrations.
Exemples
1. Prenons le cas reprsentatif dune application embarquer dans
une automobile :
le systme informatique associ aux convertisseurs de tension
ventuels, et aux diffrents botiers de conditionnement des donnes
capteurs devra souvent tenir dans le coffre du vhicule ;
on pourra embarquer un poids important, le poids nest pas ici
une contrainte ; Figure 4 Camras (standard analogique et strovision FireWire)
Toute reproduction sans autorisation du Centre franais dexploitation du droit de copie est strictement interdite.
S 8 192 6 Techniques de lIngnieur
________________________________________________________________________________ PROTOTYPAGE DES APPLICATIONS TEMPS REL EMBARQUES
Radars (figure 5)
Le radars embarqus permettent de dtecter des cibles, souvent
mobiles. Ils fonctionnent par effet Doppler et permettent notam-
ment dapporter des renseignements non seulement sur la dis-
tance des cibles, mais aussi sur leur vitesse relative par rapport au
vhicule prototype et donc sur leur vitesse par rapport au sol.
On distingue plusieurs types de radars, lesquels peuvent savrer
complmentaires au sein dune mme application :
Figure 5 Radar Autocruise les radars long range permettent la dtection de cibles
longue distance (plusieurs dizaines de mtres), mais sont trs
directionnels ;
les radars short range serviront la dtection de cibles
proches, mais sur un champ angulaire beaucoup plus large.
Le GPS (figure 7)
Le GPS (Global Positionning System ) est un capteur maintenant
Figure 6 Tlmtre laser IBEO
trs rpandu. Suivant le type de GPS utilis, la localisation sera
plus ou moins prcise :
GPS standard : 20 m ; la localisation est base sur les seu-
les informations reues par les satellites ;
GPS diffrentiel (DGPS) : 1 m ; la localisation est base sur
les informations reues par les satellites en collaboration avec une
station fixe dont la position est connue de faon exacte, et qui
reoit, elle aussi, les mmes signaux provenant des GPS. Lerreur
estime sur la station fixe est envoye au rcepteur GPS mobile
par radio pour soustraction ;
GPS RTK (Real Time Kinematic ) : 1 cm ; le GPS RTK est lui
aussi un GPS diffrentiel. Il est conu pour tirer parti dun second
type de signal mis par les satellites metteurs GPS : appel
carrier phase (par opposition au code phase des GPS clas-
siques). Les rcepteurs GPS RTK sont beaucoup plus onreux que
les GPS classiques.
Figure 7 Satellites GPS
Linfrastructure ne permettant pas toujours davoir recours aux
GPS diffrentiels ou RTK, il est possible de complter le systme de
localisation laide, notamment, de centrales inertielles (gyrosco-
pes, acclromtres) ou dodomtres.
Toute reproduction sans autorisation du Centre franais dexploitation du droit de copie est strictement interdite.
Techniques de lIngnieur S 8 192 7
PROTOTYPAGE DES APPLICATIONS TEMPS REL EMBARQUES _________________________________________________________________________________
Toute reproduction sans autorisation du Centre franais dexploitation du droit de copie est strictement interdite.
S 8 192 8 Techniques de lIngnieur
________________________________________________________________________________ PROTOTYPAGE DES APPLICATIONS TEMPS REL EMBARQUES
Toute reproduction sans autorisation du Centre franais dexploitation du droit de copie est strictement interdite.
Techniques de lIngnieur S 8 192 9
PROTOTYPAGE DES APPLICATIONS TEMPS REL EMBARQUES _________________________________________________________________________________
Figure 11 Prototypage dun systme avec contrle-commande 3.5 Utilisation de circuits intgrs
et sans avoir recours au matriel spcifique
spcifiques
Les ASICs (Application Specific Integrated Circuits ) sont des
circuits intgrs dvelopps pour raliser une tche particulire.
Le cot et le temps de dveloppement de tels systmes peuvent
varier normment suivant lapplication que lon souhaite raliser.
ventuels algorithmes Lutilisation de FPGAs (Field Programmable Gate Arrays ) permet
prototyper sur circuits
intgrs
de conserver la possibilit de reprogrammer lapplication sans
changer de circuit intgr.
Un FPGA est constitu de nombreuses cellules logiques iden-
tiques (parfois plusieurs milliers) qui peuvent tre considres
comme autant de composants standards capables de raliser des
oprations simples. Ces cellules sont cbles entre elles par une
Systme Algorithmes matrice de fils et dinterrupteurs. La programmation de lappli-
et capteurs prototyper sur cation consiste assigner, chaque cellule, une tche parmi celles
rels plate-forme logicielle Affichage
disponibles puis fermer intelligemment les interrupteurs de faon
obtenir les fonctions de traitement dsires.
Enregistrement La programmation de telles puces se fait laide de langages
particuliers : les HDL (Hardware Description Languages ) dont le
Contrle d'un plus connu est le VHDL (Very high speed integrated circuit Hard-
systme ware Description Language ). Les performances de lapplication
Commandes indpendant finale dpendront de la qualit de conception du code HDL.
Il faudra aussi concevoir la carte lectronique qui accueillera le
Contrle-commande sans simulateur (boucle ferme) : circuit intgr.
- rejeu partir de donnes enregistres - NON ;
- simulation - NON ; Dans le cas o lon prototype effectivement un systme sur deux
- temps virtuel possible - NON. couches (une couche haut niveau et une couche bas niveau), cette
carte peut tout fait prendre la forme dune carte PCI par exemple.
Les changes de donnes entre les deux couches se feront par
Figure 12 Prototypage dun systme avec contrle-commande, lintermdiaire de ce bus, interne au PC. Dautres modes de
sur matriel embarqu communication sont aussi envisageables : RS232, bus CAN...
Toute reproduction sans autorisation du Centre franais dexploitation du droit de copie est strictement interdite.
S 8 192 10 Techniques de lIngnieur
________________________________________________________________________________ PROTOTYPAGE DES APPLICATIONS TEMPS REL EMBARQUES
Rfrences bibliographiques
[1] STEUX (B.). RTMaps, un environnement [4] YAGHMOUR (K.). Building Embedded Linux [8] National Instruments/Solutions pour le test et
logiciel ddi la conception dapplications Systems. OReilly & Associates. la mesure (www.ni.com)
temps rel. Thse de lcole des Mines de [9] dSpace/Solutions for Control
[5] QNX Realtime Operating System. QNX
Paris soutenue le 20 dcembre 2001. (www.dspace.de)
Software Systems Ltd.
[2] SALOMON (D.A) et RUSSINOVICH (M.E.). [10] Mathworks/diteur des logiciels Matlab et
Inside Microsoft Windows 2000 Third Edi- [6] BARR (M.). Programming Embedded Sys-
Simulink pour le calcul scientifique et la simu-
tion. Microsoft Press. tems in C and C++. OReilly & Associates.
lation (www.mathworks.com)
[3] CESATI (M.) et BOVET (D.P.). Understanding [7] Intempora SA/diteur du logiciel RTMaps pour
the Linux kernel Second Edition. OReilly & le prototypage dapplications multi-capteurs
Associates. et la fusion de donnes (www.intempora.com)
Toute reproduction sans autorisation du Centre franais dexploitation du droit de copie est strictement interdite.
Techniques de lIngnieur S 8 192 11