Software
RTMAPS robot diagramAvec une interface graphique intuitive, le logiciel RTMaps est un outil de productivité par excellence des départements de R&D et des laboratoires qui s’intéressent aux applications capteurs avancées et à la fusion de données. Les domaines susceptibles de s'intéresser à cette technologie vont de l'automobile à la robotique, en permettant de prototyper n'importe quels algorithmes utilisant des données "capteurs" précisément datées et synchronisées.



Connecter, enregistrer et comparer tous types de capteurs et d’actionneurs


Si un appareil est connectable à un ordinateur, RTMaps permet de l’intégrer à une application. En amont, acquisition de données des capteurs ; en aval, traitement des données traitées et envoi vers les actionneurs ; entre les deux, l’espace est réservé à l’utilisateur. Grâce à une interface simple, les connexions entre les différents éléments se font graphiquement et sans difficulté. La substitution d’un capteur à un autre se fait donc rapidement. Il est immédiat de comparer les informations obtenues selon les types de capteurs ou de technologies : caméras vidéo, voies analogiques, numériques, bus CAN, GPS, radars, télémètres laser… Un « recorder » permet l’enregistrement simultané des diverses pistes d’informations. Elles sont stockées dans des BDDS (Bases de Données Datées Synchronisées). Lors de la relecture, la séquence est reproduite à l’identique grâce à la datation des données. Il est possible de faire défiler les informations à la vitesse désirée : accéléré, ralenti, pas à pas…


Image

Fusionner des données en temps réel et prototyper efficacement


La fusion des données de différents capteurs, qu'il s'agisse de caméras, sonars, infrarouge ou laser, accroît la fiabilité et la robustesse des résultats. Elle donne accès à des capteurs éventuellement moins coûteux. Grâce à une gestion fine des timecodes, RTMaps permet de "synchroniser" données et événements. Cette maîtrise des flux d’information permet de disposer rapidement et simplement de mesures fiables et réutilisables. RTMaps sait également envoyer des commandes vers différents types d’actionneurs ou déclencher des actions sur événements (voir par exemple l’application de contrôle latéral). Au cours de l’acquisition, les informations peuvent être affichées, enregistrées et traitées en temps réel. Le paramétrage des composants autorise notamment une gestion rigoureuse des flux de données. Plusieurs hypothèses peuvent être facilement testées afin de répondre aux besoins les plus complexes. En permettant d’explorer simplement des solutions différentes, il devient plus évident de valider rapidement les options choisies.


Application à la robotique


RTMaps se révèle est un outil très intéressant pour la conception d'algorithmes de robotique et d'intelligence artificielle.

Image

La programmation est orientée composant, et permet donc d'imposer une modularité au développeur. En effet, celui-ci va devoir se poser la question du choix des entrées et des sorties d'un algorithme, et du choix du découpage en un ou plusieurs composant d'un même algorithme. Ainsi, pour créer un robot doté de capacité de vision, on pourra isoler l'algorithme de reconnaissance de visage dans un seul composant. (C'est notamment le cas du diagramme ci-dessus utilisant OpenCv, the Open Source Computer Vision Library).

Image
Composant de Détection de Visage

Image
Composant de Détection de Couleur

Les composants peuvent ainsi être facilement interchangeables. Le développeur peut donc se concentrer sur l'aspect conception d'algorithme au lieu de se préoccuper des aspects logiciels de compatibilité des versions ou des briques logicielles.


L'autre aspect important de ce logiciel est sa capacité d'enregistrement/rejeu des données en temps-réel (ou accéléré ou ralenti d'ailleurs).
Votre robot bute sur un problème précis ? Pas de problème ! Grâce à RTMaps, vous pourrez enregistrer cette situation particulière, plutôt que d'essayer de la reproduire à chaque fois, et vous pourrez la rejouer et ainsi résoudre le problème "hors-ligne",  sans même avoir besoin du robot connecté.


Robot Playing
Exemple du rejeu

Quelques liens pour aller plus loin