Dans le prototype que nous avons créé, il n'a pas été question de validation. Or, c'est un point majeur dont il faut tenir compte, surtout lorsque les applications sont complexes. Par exemple, le programme ESTEREL pourra avoir un nombre d'états très importants à gérer et par conséquent deviendra très lourd à gérer pour le programmeur, du fait du grand nombre d'entités qui vont interagir.
Il paraît donc nécessaire de restreindre cette programmation en ESTEREL afin de pouvoir permettre une gestion moins lourde des programmes en permettant l'automatisation de la génération de code ESTEREL mais aussi une validation plus facile.
C'est pour cela qu'il nous est apparu intéressant d'utiliser une méthodologie qui paraît bien adaptée à ces objectifs et qui a fait ses preuves dans le domaines des applications robotiques : le système ORCCAD.Nous avons déjà fait référence à ce système, dans le chapitre 4. ORCCAD est un environnement de développement pour la spécification, la validation, par simulation et par des méthodes formelles et l'implémentation d'applications robotiques, et s'inscrit dans le cadre de systèmes réactifs synchrones. Comme nous l'avons déjà mentionné au chapitre 4, ORCCAD décompose la complexité d'une application robot en deux niveaux d'abstraction:
Une TR est la spécification complète et paramétrée :
Le langage ESTEREL est utilisé comme moyen de spécification et d'implémentation de la partie comportementale de la TR.
Pour la partie spécification des TRS, ORCCAD utilise des événements et des traitements typés pour faciliter et automatiser cette spécification du comportement de la TR. A ce niveau, on distingue 3 classes de signaux :
La partie implémentation des TRS est faite à travers les Tâches Modules ou TMS. Ces TMS sont des tâches temps réel qui implémentent de manière optimale les fonctions élémentaires qui interviennent dans les TRS. Les PRS représentent la spécification au niveau de la structure d'un arrangement de plusieurs TRS au niveau logique et temporel, dans le but de réaliser un objectif global. Les PRS prennent en compte l'évolution de l'environnement et ses différents types de dysfonctionnement. Ainsi, ils assurent la gestion des TRS à travers le comportement logique qui résulte de la spécification des PRS.
La traduction du comportement des PRS se fait en langage ESTEREL. Cette présentation faite, il nous paraît intéressant de pouvoir utiliser ce système en l'adaptant aux besoins des applications de vision. Par exemple, et en reprenant le formalisme introduit dans le chapitre 3, on pourra concevoir les TR comme des mso, et les TMS comme les straight-line programs.
Dans cette perspective, une coopération entre les projets RobotVis et Icare est en cours pour permettre d'introduire dans le cadre du prototype ArGiMoGe ces spécifications "à la ORCCAD", et ainsi montrer la faisabilité de l'adaptation du système ORCCAD aux applications de vision.Cette possibilité d'adapter ORCCAD aux applications de vision ouvre des perspectives tout-à-fait intéressantes quand à la définition d'un environnement qui pourrait tout comme ORCCAD spécifier, valider et implémenter des applications de vision dans un contexte temps-réel et ouvre donc de riches perspectives à un travail pour un futur travail de thèse.