Tout simplement JRobot
Etudiant :
Vladimir Calder´
on
CYBERN´
ETIQUE APPLIQU´
EE
2002
Table des mati`
eres
1 But du Projet et Introduction 1
2 Cam´
eras et Protocole RTP 1
2.1 Serveur RTP ....................................... 2
3 Robot RVM1 Virtuel 2
3.1 Les objets ........................................ 3
3.2 L’aire de travail du robot ................................ 4
4 Manipulation du RVM1 avec un Joystick 5
5 En parlant de l’avenir de JRobot 7
6 Disponibilit´
e de JRobot 7
7 Conclusion 7
A Diagramme de classes pour le module cam´
era 8
B Diagramme de classes pour le robot virtuel 9
C Diagramme de classes pour la manipulation avec Joystick 11
i
1 BUT DU PROJET ET INTRODUCTION 1
JRobot
1 But du Projet et Introduction
Le but du projet ´
etait de compl´
eter un logiciel (une interface graphique) pour manipuler le robot
RVM1 avec plusieurs possibilit´
es. Les objectifs de base ´
etaient les suivants :
Utilisation de librairies standard.
Facil, convivial et tr`
es intuitif `
a utiliser.
Logiciel complet, c.a.d. tous les boutons servent `
a quelque chose, les menus aussi, etc.
Installation facile, le but est d’avoir la suite : download,compile et run.
Une fois ces objectifs en tˆ
ete, voici le travail qui devait ˆ
etre fait. Mais d’abord un ´
etat du logiciel
au d´
ebut du travail :
1. Tr`
es souple interface graphique faite en Java, utilisant des composants Swing et les librairies :
RVM11et une librairie pour la connection du robot avec le port s´
erie COM2.
2. Possibilit´
e de manipuler le robot avec des ’sliders’.
3. Programmation possible avec un ´
editeur complet de programmes. Ensuite ces programmes
peuvent ˆ
etre facilement ex´
ecut´
es.
4. Une petite f´
enˆ
etre avec une aide.
Enfin, voici le travail qui devait ˆ
etre fait pour compl´
eter ce logiciel, que dor´
enavant on appellera
JRobot :
1. Possibilit´
e de voir l’ex´
ecution des commandes en temps r´
eel via une cam´
era point´
ee sur le
robot. La f´
enˆ
etre doit ˆ
etre dans le logiciel disponible `
a tout moment.
2. Une repr´
esentation 3D virtuelle du robot, le plus proche de la r´
ealit´
e pour pouvoir faire de la
programmation avec un RVM1 virtuelle.
3. A part la manipulation avec les ’sliders’, pr´
evoir la possiblit´
e de manipuler le robot avec un
joystick.
On a donc trois grandes tˆ
aches `
a accomplir. Les descriptions et les choix pour la programmation
de chaqu’une d’elles seront expos´
ees dans les sections suivantes.
On a voulu donner le plus de descriptions graphiques pour les nouvelles capacit´
es de JRobot.
On expliquera juste le choix de programmation, librairies, etc et une tr`
es br`
eve description de la
programmation en soi, pour le d´
eveloppeur on donne `
a la fin les diagrammes de classe expliquant les
trois parties du travail.
A la fin on pr´
esente une section avec des possibles am´
eliorations du logiciel. Le produit est main-
tenant tr`
es puissant mais, comme toujours, on peut mieux faire.
Pour finaliser l’introduction on voudrait remercier Patrick Roth pour les conseils qui font la ma-
nipulation de JRobot tr`
es intuitive.
2 Cam´
eras et Protocole RTP
Java s’am´
eliore d’ann´
ee en ann´
ee, ou devrait-on dire qu’il s’agrandit d’ann´
ee en ann´
ee. Tout soit
pour dire que la librairie standard de Java pour des composants multimedia JMF est maintenant dans
sa version 2.1.1 et elle est tr`
es compl`
ete et assez puissante.
1Excellente librairie faite `
a l’universit´
e pour la manipulation de base du robot
3 ROBOT RVM1 VIRTUEL 2
C’est pour cette raison que l’on a choisit de travailler avec cette librairie qui se trouve disponible
gratuitement dans la site de Java.
Cette librairie va nous permettred’afficher une petite fenˆ
etre avec l’image capt´
ee par notre cam´
era.
De plus, cette librairie nous a fait connaˆ
ıtre le protocole RTP qui nous a permis de nous connecter
`
a une cam´
era `
a distance. Ceci en vue d’utiliser le robot `
a distance.
FIG. 1 – Choix du device
FIG. 2 – Remote capture via RTP
Pour le logiciel on a donc d´
evelopp´
e l’option de la fac¸on suivante :
Paneau avec toutes les fonctions de cam´
era.
Bouton pour se connecter `
a une cam´
era branch´
e sur l’ordinateur. La f´
enˆ
etre de dialogue cherche
tous les devices qui ont une cam´
era. De plus on peut choisir le format de sortie, voir image 1.
Bouton pour se connecter `
a une cam´
era `
a distance, on a juste besoin de savoir le num´
ero IP du
serveur qui tient la cam´
era et le num´
ero de port sur lequel se trouve ce service, voir image 2.
Des boutons pour afficher et enlever l’image de notre logiciel.
2.1 Serveur RTP
Puisque l’on avait dev´
elopp´
e le client pour une connection RTP, il nous a fallu aussi dev´
elopper
la partie serveur. Heureusement, dans la documentation de JMF il existe des exemples assez d´
etaill´
es
qui nous ont facilit´
e la tˆ
ache.
Le serveur deev´
elopp´
e d´
eploit une petite f´
enˆ
etre qui donne `
a l’utilisateur le choix du device `
a
exporter, la plage d’adresses qui peuvent y acc´
eder et le port de service.
3 Robot RVM1 Virtuel
Le probl`
eme maintenant est de pouvoir afficher une repr´
esentation 3D le plus r´
ealiste possible de
notre robot RVM1. Pour ce faire on a donc d´
ecide d’utiliser la librairie standard de Sun : Java3D.
3 ROBOT RVM1 VIRTUEL 3
Cette librairie utilise soit OpenGL, soit DirectX, pour les op´
erations de base en 3D. Ceci permet
`
a l’application d’ˆ
etre tr`
es rapide avec ces calculs. On dira donc que Java3D est en fait une interface
pour ces fonctions.
Le grand plus de cette interface est qu’elle a ´
et´
e conc¸ue avec des objets. On a donc partout la
facilit´
e de la programmation objet (merci Java). D’autre part le dev´
eloppeurs de Java3D ont opt´
e
pour une repr´
esentation hi´
erarchical pour toute sc`
ene que l’on veuille rendre.
Pour donner l’exemple de notre projet et nous mettre tout de suite dans JRobot, voici le graphe
responsable du rendu de l’image virtuelle d’un robot RVM1 :
FIG. 3 – Graphe pour la sc`
ene avec robot RVM1
3.1 Les objets
Comme on peut s’imaginer, les objets qui composent le robot devaient ˆ
etre le plus r´
ealiste pos-
sible, ou du moins, les mesures des extremit´
es devaient ˆ
etre proches de la r´
ealit´
e.
Pour bien accomplir la tˆ
ache, on a proc´
ed´
e comme suit :
Des mesures `
a la milim`
etre pr`
es d’apr`
es une fiche technique du robot RVM1.
– D´
ecomposition des diff´
erentes parties du robot en essayant de simplifier les formes tout en
gardant un certain d´
etail sur les pi`
eces.
Implantation des objets dans JRobot par leur nom. Il faut donc juste changer une ligne pour
remplacer une pi`
ece pour une autre implantation, peut-ˆ
etre avec plus de d´
etails.
Dans la figure 4on peut voir le r´
esultat que l’on a obtenu. On a limit´
e le rendu des objets `
a un
maillage pour pouvoir apprecier les d´
etails des polygones et arˆ
etes qui forment les parties du robot.
1 / 13 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !