Proposition de projet/stage (3) : Re-engineering autour du logiciel Orccad (Outil de conception pour les systèmes robotiques temps-réel réparti)
Mots-Clés
spécification, architecture logicielle, contrôle-commande, robotique
Niveau Requis
BAC + 5
Maîtres de stage
Soraya Arias (SED),
Roger Pissard-Gibollet (SED),
Daniel Simon (Pop-Art)
Description du stage
Durée
4 à 6 mois
Contexte
Le stage se déroulera autour du logiciel Orccad (https://sed.inrialpes.fr/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.
Ce logiciel permet de faire des expérimentations pour les robots du
service SED (http://www.inrialpes.fr)
dont le rôle est la mise en oeuvre des outils matériels et logiciels pour les
expérimentations robotiques des projets de recherche du site. Il sert
également de plate-forme de recherche pour le projet Pop-Art (http://pop-art.inrialpes.fr/) qui
traite du problème de la conception sûre de systèmes de contrôle-commande
temps-réel. Le projet travaille avec Orccad sur la génération de code
temps-réel réparti.
Depuis quelques années, le logiciel n'a pas évolué et ce stage s'inscrit
dans la refonte du logiciel qui est en cours.
Objectifs du projet/stage
L'objectif du stage est de participer à la refonte du logiciel Orccad.
Pour cela, il se déroulera en 3 grandes parties:
- Apprendre de la méthodologie et des outils liés à l'outil Orccad.
- Participer à la définition et écrire les spécifications de la nouvelle
architecture Orccad. Les lignes directrices de cette refonte sont de
disposer d'un logiciel ouvert: il doit être utilisable simplement mais
doit s'adapter également aux besoins et contraintes d'utilisateurs "experts"
(ajout de caractéristiques du contrôleur, ajout de générateurs de
code,...) à travers un système de "plugs-in".
- Coder cette architecture en Java qui consistera à :
- écrire le noyau du logiciel qui va gérer la modélisation des
contrôleurs (structure des données en XML)
- intégrer ou ré-écrire en Java des composants existants (interface
graphique, générateurs de codes)
- Tester et Valider
Quelques liens utiles