• Aucun résultat trouvé

2.3 Architectures en robotique

2.3.3 CLARATY

CLARATy (Coupled Layer ARchitecture for Robotic Autonomy) [29] [30] est un mo- dèle d'architecture mixte proposé par le NASA Jet Propulsion Laboratory et l'université Canergie Mellon de Pittsburg. CLARATy est vue comme la proposition du futur pour le développement de contrôleurs de robots à la NASA. Dans le modèle CLARATy, la décom- position d'une architecture de contrôle se fait en deux couches : la couche fonctionnelle et la couche décisionnelle.

La description de la couche fonctionnelle repose sur une approche objet, qui permet une forte réutilisabilité du code et l'extension facilitée des fonctionnalités d'un contrôleur. L'approche objet permet, à travers une décomposition modulaire et hiérarchique, de re- présenter un système robotique à diérents niveaux d'abstraction. Les classes abstraites servent à représenter des concepts génériques, comme par exemple le concept de locomotor qui encapsule les fonctions de locomotion d'un robot. Ces classes peuvent être alors spé- cialisées en fonction du matériel physique utilisé (roues, capteurs, bras mécanique etc.). Cela favorise l'optimisation des traitements en fonction de ce matériel et cela permet, dans une certaine mesure, de découpler les procédures génériques des capacités spéciques d'un système. Trois catégories de classes d'objets sont dénies dans CLARATy :

 les Data Structure Classes permettent de représenter, manipuler et stocker les don- nées sous une forme standard, base nécessaire à une réutilisation ecace. Ces classes peuvent être génériques ou spéciques à un domaine d'application. Les bits, les vec- teurs, les matrices, les images, les messages, les quaternions, sont des exemples de tels objets.

2.3 Architectures en robotique

Figure 2.9  Modèle d'organisation de l'architecture CLARATy [31]

 les Generic Physical Classes permettent de représenter des entités physiques, par exemple le locomoteur, la caméra, la roue, le manipulateur. Chacune de ces classes possède une interface qui dénit les fonctionnalités de l'élément matériel physique correspondant. Par exemple, l'interface de la classe locomoteur contient des opéra- tions permettant de déplacer le véhicule en spéciant le chemin à suivre et sa vitesse. La spécialisation de ces classes permet classiquement de leur ajouter des fonction- nalités, d'autre part elle permet d'adapter les concepts physiques abstraits à un système robotique particulier, permettant ainsi de gérer spéciquement le matériel utilisés dans le robot (les auteurs parlent alors de Specialized Physical Classes).  les Generic Functional Classes sont des classes qui représentent un algorithme gé-

nérique. Une telle classe utilise, pour dénir son contenu, un ensemble de Generic Physical Classes. Par exemple, la classe navigateur permet de contrôler le déplace- ment d'un robot dans une zone (évaluation du terrain, calcul du chemin, sélection des actions à entreprendre, etc.). La description détaillée du navigateur peut être trouvée dans [32]. Ces classes peuvent être spécialisées an d'adapter un algorithme à un système robotique particulier, ce qui sert essentiellement à optimiser des algo- rithmes en fonction du matériel considéré.

La couche décisionnelle est en charge de la gestion de l'"intelligence" du robot ; elle est spécique à chaque robot. Elle est utile à la planication et à l'exécution de plans. Elle permet de transformer les objectifs de haut niveau d'abstraction, reçus par le robot, en une série d'objectifs ordonnés suivant un ensemble de contraintes connues et selon l'état du système. An de réaliser des objectifs, la couche décisionnelle interagit avec les objets de la couche fonctionnelle, à travers un protocole client/serveur lui permettant : de connaître l'état des ressources physiques du robot à un moment donné, de contrôler

Chapitre 2 : Les architectures logicielles de contrôle les asservissements du robot, de demander l'exécution de traitements spéciques (e.g. calcul de trajectoire). Cette couche est décrite suivant un Goal Net, qui représente la décomposition des buts de haut niveau d'abstraction en sous-buts. Chaque but ou sous- but peut être décomposé jusqu'à arriver aux buts feuilles qui accèdent directement à la couche fonctionnelle. Cette décomposition du niveau décisionnel sous forme d'un Goal Net reste conceptuelle, diérents outils pouvant servir à sa mise en ÷uvre.

L'utilisation de l'approche objet permet aux auteurs de CLARATy de dénir un en- semble de Frameworks orientés objets dédiés à la construction d'applications robotiques (par exemple, un framework de Generic Physical Classes[31]). CLARATy a pour prin- cipal atout la réutilisation des classes de la couche fonctionnelle, les auteurs annonçant un taux de réutilisation du code de l'ordre de 80% à travers les diérents projets de la NASA utilisant CLARATy. L'apport de CLARATy vient de la possibilité de représenter explicitement les éléments matériels constituant le robot, et les fonctionnalités qui y sont rattachées, sous forme d'objets. L'approche objet est une solution intuitive pour représen- ter la partie physique d'un robot. Elle permet de décrire ou programmer le contrôle d'un robot à diérents niveaux d'abstraction, du plus générique au plus spécialisé en fonction du matériel. Elle permet la mise en ÷uvre progressive de Frameworks spécialisés (locomo- tion, manipulation, vision, etc.) assurant une très forte réutilisation. D'un autre côté, la description du contenu du niveau décisionnel demeure, à notre connaissance, relativement oue, les auteurs n'imposant pas de formalisme ou d'outil spéciques. La proposition reste néanmoins intéressante, car les auteurs suggèrent que la couche décisionnelle peut elle-même être décomposée en sous-mécanismes de prise de décision, suivant une organisa- tion récursive. En conclusion, le modèle d'organisation de CLARATy peut être qualié de mixte, puisqu'il décompose les architectures en deux couches en interaction directe : l'information transite directement d'une couche à l'autre et n'a donc pas plusieurs couches intermédiaires à franchir, ce qui permet d'optimiser la réactivité. Notons, pour conclure, que, tout comme l'approche du LAAS (présentée précédemment), CLARATy reste essen- tiellement inspirée des architectures délibératives classiques.

2.3.4 Architecture de l'Institut Supérieur Technique de Lisbonne