Prototypage des systèmes embarqués
                         Nicolas   Dulac 1, Sébastien Boisgérault 2, Bruno Steux 2
                                                         1 Intempora
                          2, place Jules Gévelot  92130 Issy-Les-Moulineaux, France
                                  2 CAOR,Centre de Robotique, Mines ParisTech,
                           60, boulevard Saint Michel  75272 Paris Cedex 06, France

          Nicolas.Dulac@intempora.com  Sebastien.Boisgerault@mines-paristech.fr  Bruno.Steux@mines-paristech.fr


  Depuis plus de dix ans, le pôle Architecture Logicielle et Systèmes Embarqués du CAOR développe des plate-formes
logicielles répondant aux besoins des concepteurs de systèmes robotiques mobiles et de systèmes de transport intelligents.
  Ces activités ont donné lieu en 1998 et 1999 au développement de la technologie
                                                                                           RT Maps[3]    pour Real-Time
Multi-sensor Advanced Prototyping Software  suivi en octobre 2000, de la création de la société Intempora[7]. Ce
développement technologique se prolonge aujourd'hui au travers du projet AROS[1] du CAOR.
  Récemment, le CAOR a également initié une activité pour la conception d'interfaces homme-machine dédiées aux
systèmes automobiles[5]. Cette activité répond à l'utilisation accrue d'écrans embarqués  notamment sur les véhicules
haut de gamme et les prototypes  qui viennent compléter ou se substituer aux systèmes d'informations et de contrôle
classiques.


                            I.
                                 RT Maps, histoire d'un transfert technologique réussi
  En 1997, Bruno Steux (aujourd'hui enseignant-chercheur au CAOR) et Pierre Coulombeau entament leur thèse au
Centre de Robotique sur des systèmes embarqués de perception par fusion de données (détection de lignes blanches,
détection d'obstacles par fusion vision + radar, . . . ). Par souci d'ecacité, et pour pouvoir se consacrer aux recherches
scientiques plutôt qu'aux problèmes communs de programmation, ils consacrent une année au développement d'une
technologie modulaire pour le prototypage rapide d'applications temps-réel multi-capteurs : la technologie
                                                                                                                RT Maps. En
2000, le projet européen CarSense dirigé par FIAT est à la recherche d'un outil permettant l'enregistrement simultané
et synchronisé des données de multpiles capteurs (caméras, lidars, radars, GPS, sonars, . . . ).
                                                                                                   RT Maps   est retenu, et la
société Intempora est créée an de poursuivre le développement de l'outil et d'en assurer sa commercialisation, ceci
avec le soutien de l'ANVAR (devenu OSEO) et de ses premiers clients. Aujourd'hui, Intempora compte bon nombre de
références industrielles prestigieuses en France et à l'étranger, telles que VALEO, RENAULT, PSA, THALES, ICHIKOH
(Japon) mais aussi dans le domaine académique l'INRIA, l'INRETS, le LCPC, le SwRI (USA), Q.U.T. (Australie), etc.

  Le partenariat fort liant Intempora et le Centre Robotique s'est poursuivi dans le cadre de projets de recherche
nationaux et européens tels que PUVAME, REACT et COM2REACT. Aujourd'hui encore, forts de cette expérience,
nous travaillons ensemble dans le cadre des projets Edona[4] orienté vers la conception d'IHM embarquées, et AROS[1]
(Agile Robust Operating Service)  un projet auquel collaborent également VALEO et l'INRIA  visant au développement
d'une nouvelle plateforme de développement pour l'embarqué et les systèmes distribués.


                                                     II. L'outil
                                                                   RT Maps
  Dans les domaines de la perception et du contrôle embarqués, que
ce soit en robotique, automobile, ou surveillance, la diversité des tech-
nologies à mettre en oeuvre, en terme d'interfaces matérielles et d'al-
gorithmes, nécessite l'utilisation d'outils performants et hautement
modulaires.
RT Maps   permet la mise en oeuvre rapide et l'intégration facile de
capteurs hétérogènes et asynchrones (caméras, bus CAN, GPS, li-
dars, radars, centrales inertielles, capteurs IP, série, etc.)
Le modèle de développement par composants permet d'assurer l'évo-
lutivité des applications ainsi que la capitalisation des travaux eec-
tués. Un SDK (Software Development Kit) en C/C++ permet au
développeur d'écrire lui-même ses propres composants et d'y intégrer
ses algorithmes.
Les fonctionnalités de datation précise de chaque échantillon de don-
née entrant dans le système, associées à un moteur d'exécution multi-threads, permettent de gérer ecacement les
problématiques de la fusion de données.
Les fonctions d'enregistrement et de rejeu temps-réel des ux de données capteurs permettent d'une part de travailler
sur table à l'aide de scénarios de données réelles préalablement enregistrées en se replaçant dans le conditions de fonc-
tionnement, et d'autre part la comparaison et la validation des capteurs et algorithmes mis en oeuvre.
L'échange de composants (i.e. de briques fonctionnelles) compilés ou non, ainsi que d'enregistrements de données cap-
teurs facilite grandement la coopération entre diérentes équipes en protégeant si nécessaire la propriété intellectuelle
des développements.
Depuis la version 3,
                       RT Maps dispose de fonctionnalités de distribution multipostes permettant de répartir les applications
sur plusieurs calculateurs, distants ou non.


                         III. Conception d'Interfaces Homme-Machine pour Automobiles


      Notre activité dans la conception d'interfaces homme-machine (IHM) pour automobiles prend sa source dans les besoins
des systèmes de transport intelligents (STI). Ces systèmes  innovants, variés et porteurs d'informations complexes 
doivent pouvoir s'appuyer sur des interfaces homme-machine riches et spéciques. Leur processus de conception doit
également se prêter au prototypage rapide. Enn, à ces besoins viennent s'ajouter des problématiques industrielles,
notamment d'interopérabilité et de sécurité.
                                                                      L'eort du CAOR dans ce domaine s'inscrit dans Edona[4],
                                                                   un projet issu de Numatech Automotive, groupe théma-
                                                                   tique du pôle de compétitivité System@atic. Edona/hmi
                                                                   est la déclinaison de cet ensemble  dédié à la production
                                                                   d'environnements de développement pour les métiers de l'au-
                                                                   tomobile  aux interfaces hommes-machines. Le CAOR y col-
                                                                   labore avec des fournisseurs de technologies  dont Intempora
                                                                    sous la direction de Visteon.
                                                                      Les contributions du CAOR concernent la modélisation des
                                                                   IHMs, le développement d'outils de conception ainsi que d'une
                                                                   architecture d'exécution favorisant le prototypage rapide.
                                                                      Edona/hmi a adopté un processus de conception dirigé par
                                                                   les modèles et basé sur des standards existants qui favorise
                                                                   l'interopérabilité. Les modèles d'IHMs sont structurés en trois
                                                                   couches : graphique, composant et fonctionel.
                                                                      La couche graphique repose sur un graphe de scène 2D, une
                                                                   collection hiérarchique de noeuds graphiques. Ce modèle est
                                                                   incarné dans un sous-ensemble du format SVG[2], [9] (pour
Scalable Vector Graphics) un standard du W3C très utilisé par les plate-formes mobiles. Ce format est ensuite étendu
pour que les données graphiques telles que les propriétés géométriques, le contenu en texte, les couleurs ou encore la
visibilité des éléments puissent être désignées comme des signaux dynamiques. L'encapsulation est ensuite assurée par la
couche de composants : seuls les signaux explicitement exposés dans l'interface d'un composant sont visibles en dehors
de sa portée. La hiérarchie des composants est par construction compatible avec la hiérarchie du document graphique.
Ce modèle de composant serait toutefois condamné à exposer directement les données graphiques brutes, une stratégie
qui ne permettrait pas une modélisation de haut-niveau et une réutilisation satisfaisante des composants. Le modèle
complet inclut donc également une couche fonctionnelle sous la forme d'un langage synchrone de type ux de données,
un formalisme classique dans les systèmes embarqués et qui se prête à l'analyse par des méthodes formelles.
      Le support logiciel est crucial pour assurer le succès du modèle Edona/hmi. La plate-forme de prototypage du CAOR
inclut un ensemble d'outils de modélisation, un générateur de composants HMIs ainsi qu'une architecture d'exécution
associée basée sur Java. Cette plate-forme est spécialisée dans la simulation, le test de composant et le déploiement
dans des véhicules prototypes, en particulier dédiés aux systèmes de transports intelligents. La gure ci-dessus expose
un example de ces applications à travers une interface dédiée au projet LOVe[6], [8] de détection des vulnérables :
vitesse et angle de lacet du véhicule, risque de collisions, données de la télémétrie sont representées dans une interface
Edona/hmi. Cet exemple fait également la démonstration de contrôles (niveau de zoom, achage de la détection des
piétons) ainsi que de l'intégration de l'interface à un ux vidéo.


                                                             Références

[1] AROS : Agile Robust Operating Service. http://aros.intempora.com.
[2] S. Boisgérault, M. O. Abdallah, and J.-M. Temmos. SVG for automotive user interfaces. In SVG Open, Nuremberg, Germany, 2008.
[3] RT Maps a Software Environment for Real-Time Applications Development. PhD thesis, December 2001. Ecole des Mines de Paris.
[4] EDONA : Environnements de développement ouverts aux normes de l'automobile. http://www.edona.fr.
[5] Contributions du CAOR à Edona/hmi . http://code.google.com/p/edona-hmi/.
[6] G. Gate, A. Breheret, and F. Nashashibi. Centralized fusion based algorithm for fast people detection in dense environment. In Proc.   of
    the IEEE International Conference on Robotics and Automation, Kobe, Japan, May 2009.
[7] Intempora. http://www.intempora.com/.
[8] LOVe : Logiciel d'Observation des Vulnérables, project website. http://love.univ-bpclermont.fr.
[9] Scalable Vector Graphics (SVG) 1.1 specication. W3C recommendation, W3C, January 2003. http://www.w3.org/TR/SVG.

Prototypage de Systèmes Embarqués

  • 1.
    Prototypage des systèmesembarqués Nicolas Dulac 1, Sébastien Boisgérault 2, Bruno Steux 2 1 Intempora 2, place Jules Gévelot 92130 Issy-Les-Moulineaux, France 2 CAOR,Centre de Robotique, Mines ParisTech, 60, boulevard Saint Michel 75272 Paris Cedex 06, France Nicolas.Dulac@intempora.com Sebastien.Boisgerault@mines-paristech.fr Bruno.Steux@mines-paristech.fr Depuis plus de dix ans, le pôle Architecture Logicielle et Systèmes Embarqués du CAOR développe des plate-formes logicielles répondant aux besoins des concepteurs de systèmes robotiques mobiles et de systèmes de transport intelligents. Ces activités ont donné lieu en 1998 et 1999 au développement de la technologie RT Maps[3] pour Real-Time Multi-sensor Advanced Prototyping Software suivi en octobre 2000, de la création de la société Intempora[7]. Ce développement technologique se prolonge aujourd'hui au travers du projet AROS[1] du CAOR. Récemment, le CAOR a également initié une activité pour la conception d'interfaces homme-machine dédiées aux systèmes automobiles[5]. Cette activité répond à l'utilisation accrue d'écrans embarqués notamment sur les véhicules haut de gamme et les prototypes qui viennent compléter ou se substituer aux systèmes d'informations et de contrôle classiques. I. RT Maps, histoire d'un transfert technologique réussi En 1997, Bruno Steux (aujourd'hui enseignant-chercheur au CAOR) et Pierre Coulombeau entament leur thèse au Centre de Robotique sur des systèmes embarqués de perception par fusion de données (détection de lignes blanches, détection d'obstacles par fusion vision + radar, . . . ). Par souci d'ecacité, et pour pouvoir se consacrer aux recherches scientiques plutôt qu'aux problèmes communs de programmation, ils consacrent une année au développement d'une technologie modulaire pour le prototypage rapide d'applications temps-réel multi-capteurs : la technologie RT Maps. En 2000, le projet européen CarSense dirigé par FIAT est à la recherche d'un outil permettant l'enregistrement simultané et synchronisé des données de multpiles capteurs (caméras, lidars, radars, GPS, sonars, . . . ). RT Maps est retenu, et la société Intempora est créée an de poursuivre le développement de l'outil et d'en assurer sa commercialisation, ceci avec le soutien de l'ANVAR (devenu OSEO) et de ses premiers clients. Aujourd'hui, Intempora compte bon nombre de références industrielles prestigieuses en France et à l'étranger, telles que VALEO, RENAULT, PSA, THALES, ICHIKOH (Japon) mais aussi dans le domaine académique l'INRIA, l'INRETS, le LCPC, le SwRI (USA), Q.U.T. (Australie), etc. Le partenariat fort liant Intempora et le Centre Robotique s'est poursuivi dans le cadre de projets de recherche nationaux et européens tels que PUVAME, REACT et COM2REACT. Aujourd'hui encore, forts de cette expérience, nous travaillons ensemble dans le cadre des projets Edona[4] orienté vers la conception d'IHM embarquées, et AROS[1] (Agile Robust Operating Service) un projet auquel collaborent également VALEO et l'INRIA visant au développement d'une nouvelle plateforme de développement pour l'embarqué et les systèmes distribués. II. L'outil RT Maps Dans les domaines de la perception et du contrôle embarqués, que ce soit en robotique, automobile, ou surveillance, la diversité des tech- nologies à mettre en oeuvre, en terme d'interfaces matérielles et d'al- gorithmes, nécessite l'utilisation d'outils performants et hautement modulaires. RT Maps permet la mise en oeuvre rapide et l'intégration facile de capteurs hétérogènes et asynchrones (caméras, bus CAN, GPS, li- dars, radars, centrales inertielles, capteurs IP, série, etc.) Le modèle de développement par composants permet d'assurer l'évo- lutivité des applications ainsi que la capitalisation des travaux eec- tués. Un SDK (Software Development Kit) en C/C++ permet au développeur d'écrire lui-même ses propres composants et d'y intégrer ses algorithmes. Les fonctionnalités de datation précise de chaque échantillon de don- née entrant dans le système, associées à un moteur d'exécution multi-threads, permettent de gérer ecacement les problématiques de la fusion de données.
  • 2.
    Les fonctions d'enregistrementet de rejeu temps-réel des ux de données capteurs permettent d'une part de travailler sur table à l'aide de scénarios de données réelles préalablement enregistrées en se replaçant dans le conditions de fonc- tionnement, et d'autre part la comparaison et la validation des capteurs et algorithmes mis en oeuvre. L'échange de composants (i.e. de briques fonctionnelles) compilés ou non, ainsi que d'enregistrements de données cap- teurs facilite grandement la coopération entre diérentes équipes en protégeant si nécessaire la propriété intellectuelle des développements. Depuis la version 3, RT Maps dispose de fonctionnalités de distribution multipostes permettant de répartir les applications sur plusieurs calculateurs, distants ou non. III. Conception d'Interfaces Homme-Machine pour Automobiles Notre activité dans la conception d'interfaces homme-machine (IHM) pour automobiles prend sa source dans les besoins des systèmes de transport intelligents (STI). Ces systèmes innovants, variés et porteurs d'informations complexes doivent pouvoir s'appuyer sur des interfaces homme-machine riches et spéciques. Leur processus de conception doit également se prêter au prototypage rapide. Enn, à ces besoins viennent s'ajouter des problématiques industrielles, notamment d'interopérabilité et de sécurité. L'eort du CAOR dans ce domaine s'inscrit dans Edona[4], un projet issu de Numatech Automotive, groupe théma- tique du pôle de compétitivité System@atic. Edona/hmi est la déclinaison de cet ensemble dédié à la production d'environnements de développement pour les métiers de l'au- tomobile aux interfaces hommes-machines. Le CAOR y col- labore avec des fournisseurs de technologies dont Intempora sous la direction de Visteon. Les contributions du CAOR concernent la modélisation des IHMs, le développement d'outils de conception ainsi que d'une architecture d'exécution favorisant le prototypage rapide. Edona/hmi a adopté un processus de conception dirigé par les modèles et basé sur des standards existants qui favorise l'interopérabilité. Les modèles d'IHMs sont structurés en trois couches : graphique, composant et fonctionel. La couche graphique repose sur un graphe de scène 2D, une collection hiérarchique de noeuds graphiques. Ce modèle est incarné dans un sous-ensemble du format SVG[2], [9] (pour Scalable Vector Graphics) un standard du W3C très utilisé par les plate-formes mobiles. Ce format est ensuite étendu pour que les données graphiques telles que les propriétés géométriques, le contenu en texte, les couleurs ou encore la visibilité des éléments puissent être désignées comme des signaux dynamiques. L'encapsulation est ensuite assurée par la couche de composants : seuls les signaux explicitement exposés dans l'interface d'un composant sont visibles en dehors de sa portée. La hiérarchie des composants est par construction compatible avec la hiérarchie du document graphique. Ce modèle de composant serait toutefois condamné à exposer directement les données graphiques brutes, une stratégie qui ne permettrait pas une modélisation de haut-niveau et une réutilisation satisfaisante des composants. Le modèle complet inclut donc également une couche fonctionnelle sous la forme d'un langage synchrone de type ux de données, un formalisme classique dans les systèmes embarqués et qui se prête à l'analyse par des méthodes formelles. Le support logiciel est crucial pour assurer le succès du modèle Edona/hmi. La plate-forme de prototypage du CAOR inclut un ensemble d'outils de modélisation, un générateur de composants HMIs ainsi qu'une architecture d'exécution associée basée sur Java. Cette plate-forme est spécialisée dans la simulation, le test de composant et le déploiement dans des véhicules prototypes, en particulier dédiés aux systèmes de transports intelligents. La gure ci-dessus expose un example de ces applications à travers une interface dédiée au projet LOVe[6], [8] de détection des vulnérables : vitesse et angle de lacet du véhicule, risque de collisions, données de la télémétrie sont representées dans une interface Edona/hmi. Cet exemple fait également la démonstration de contrôles (niveau de zoom, achage de la détection des piétons) ainsi que de l'intégration de l'interface à un ux vidéo. Références [1] AROS : Agile Robust Operating Service. http://aros.intempora.com. [2] S. Boisgérault, M. O. Abdallah, and J.-M. Temmos. SVG for automotive user interfaces. In SVG Open, Nuremberg, Germany, 2008. [3] RT Maps a Software Environment for Real-Time Applications Development. PhD thesis, December 2001. Ecole des Mines de Paris. [4] EDONA : Environnements de développement ouverts aux normes de l'automobile. http://www.edona.fr. [5] Contributions du CAOR à Edona/hmi . http://code.google.com/p/edona-hmi/. [6] G. Gate, A. Breheret, and F. Nashashibi. Centralized fusion based algorithm for fast people detection in dense environment. In Proc. of the IEEE International Conference on Robotics and Automation, Kobe, Japan, May 2009. [7] Intempora. http://www.intempora.com/. [8] LOVe : Logiciel d'Observation des Vulnérables, project website. http://love.univ-bpclermont.fr. [9] Scalable Vector Graphics (SVG) 1.1 specication. W3C recommendation, W3C, January 2003. http://www.w3.org/TR/SVG.