- Robot-Caméra type pan-tiltt.
Le robot-caméra est relié à une station SUN par une liaison série (type RS232). La carte d'aquisition de la caméra est pilotée par l'API xil de SUN.- Station de travail de type SPARC SUN ULTRA-1, SunOS 5.6, non dédiée à la gestion du robot-caméra.
- La figure ci-dessous représente la suite de traitements à mettre en oeuvre pour réaliser un suivi de mouvement.
Cette suite de traitements doit se faire périodiquement suivant la cadence imposée par la dynamique de la scène (i.e. vitesse de la cible).
Les traitements sont fortement paramétrés. Ces paramètres peuvent être fournis:La caméra est fixe.
- par une valeur fixée à l'avance
- par un traitement particulier d'évaluation/adaptation sur le résultat d'un traitement particulier de la chaîne
- par des processus extérieurs à la chaîne de calcul (ex. une IHM)
- Détails des traitements:
- Acquisition d'image par le robot caméra. Cette image est accessible via l'API xil de SUN.
- Lissage de l'image en utilisant un filtre de Sobel. Ce lissage est fait directement au niveau de la xil en appelant la routine de la bibliothèque xil correspondante au lissage de Sobel.
Ce traitement est paramétré par w, la taille de la fenêtre de lissage.- Différence d'image. Cette différence se fait entre l'image à t et l'image à t-1
- Pondération de l'image au niveau de la fovea. Cette pondération va permettre de privilégier le centre de l'image par rapport aux bords.
Ce traitement est paramétré par a, la taille de la zone autour de la fovea.- Détection des zones en mouvement. Cette détection se fait par un algorithme à balayage qui fournit la taille et la position des zones qui ont bougé.
Ce traitement est paramétré par g, l'ecart minimal entre deux zones.- Analyse des zones en mouvement. On choisira la zone qui correspond le plus à la cible recherchée.
Ce traitement est paramétré par s, la taille minimale d'une région.- Interaction avec des processus extérieurs:
Le processus extérieur envisagé ici est une IHM qui se connecte à l'application et qui va lui fournir des paramètres ou encore des événements logiques. L'application en retour peut donner des informations à l'IHM.
Cette IHM a été réalisée en Java
- Correspondance Application -> Orccad
Orccad est un environnement logiciel permettant de concevoir et de mettre en oeuvre le contrôle et la commande d'un système robotique complexe. Il permet également la spécification et la validation des missions à réaliser par ce système.
Terminologie Orccad Entité en Vision Ressource Physique Argès Tâche Robot (TR) chaîne de traitements périodique
Ex: suivi de mouvementProcédure Robot (PR) arrangement logique de chaînes de traitements périodiques
Ex: une application est spécifiée par une PRModule traitement algorithmique qui est composé d'une phase d'initialisation, de calcul nominal et de terminaison.
Ex: Analyse des zones en mouvementAutomate de la TR Comportement logique associé à la chaîne de traitement.
Ce comportement correspond à des informations logiques de type préconditions, postconditions ou encore exceptions. Ces informations ou "événements" conditionnent respectivement le démarrage de la chaîne, sa terminaison ou encore signalent les dysfonctionnements éventuels pendant le traitementMaestRo
Langage de programmation de mission robotiquelangage spécialisé qui permet de spécifier l'application comme un arrangement logique de TRs et de PRs - Spécification des algorithmes
Spécification d'une TR pour le suivi de mouvement
Spécification et Implantation d'un module Spécification de l'application avec MaestRo - Vérification de l'Application
La vérification d'une application se fait à deux niveaux: de la TR et de la PR. Cette vérification ne porte que sur la partie logique, ou comportementale de ces deux entités. Ce comportement est formalisé de manière sous-jacente en langage Esterel.
On peut alors:
- soit observé l'automate résultant de cette partie comportement (pour une TR ou à une PR) exprimé en Esterel:
Automate de la TR de suivi - soit utilisé l'outil XES qui permet de simuler interactivement la partie Esterel
Simulation interactive de programme Esterel avec XES - Génération de l'Exécutable
Panel pour générer le code Panel pour tracer des données, des paramètres et les événements
- Une Demo de l'exécutable généré par Orccad