Otmane00
Otmane00
Otmane00
THÈSE
pour l’obtention du titre de
Docteur de l’Université d’Evry-Val d’Essonne
Spécialité :
SCIENCES DE L’INGENIEUR
Samir OTMANE
Soutenance le : 13 décembre 2000
JURY
Je remercie également toutes les personnes qui ont pris part à l’établissement des
données :
– A Monsieur Dave LAVERY, le webmaster du site de la NASA et son équipe qui ont
testé le système ARITI et accepté de le rajouter sur leur site web.
– Aux trente sujets novices (étudiants IUP, stagiaires et thésards) qui ont accepté de
se prêter aux différentes expériences, je suis redevable du temps qu’ils ont bien voulu
me consacrer.
– Aux sujets télé-présents du monde entier qui ont utilisé notre système et téléopéré
notre robot.
Je tiens tout particulièrement à remercier Messieurs Nicolas BRODU, Stéphane MA-
VEL, Sylvain LENESTOUR, Jean François VINCENT et Anthony JOBIN de l’Institut
REMERCIEMENTS
d’Informatique d’Entreprise (IIE-CNAM) lors de leur stage au CEMIF, pour leurs contri-
butions à cette thèse.
Enfin, que toute ma famille, trouve ici le témoignage de ma reconnaissance pour leurs
encouragements et leur soutien.
Rabelais 1532
Table des matières
Remerciements
Introduction 1
1.4.5 RHINO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
1.4.6 PumaPaint project . . . . . . . . . . . . . . . . . . . . . . . . . . 28
1.5 Bilan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
4 Applications 95
4.1 Télétravail avec un robot à 4 ddl . . . . . . . . . . . . . . . . . . . . . . 95
4.1.1 Description du site esclave . . . . . . . . . . . . . . . . . . . . . . 95
4.1.2 Description du site client . . . . . . . . . . . . . . . . . . . . . . . 97
4.1.2.1 IHM administrateur . . . . . . . . . . . . . . . . . . . . 97
4.1.2.2 IHM utilisateur . . . . . . . . . . . . . . . . . . . . . . . 100
4.1.2.3 Description de l’outil de création et de manipulation des
guides virtuels . . . . . . . . . . . . . . . . . . . . . . . 100
4.1.3 Mode Téléopération . . . . . . . . . . . . . . . . . . . . . . . . . 102
TABLE DES MATIERES
Conclusions 151
Bibliographie 159
Annexes i
A Les méthodes de compression Gzip et Huffman . . . . . . . . . . . . . . . i
A.1 Codage de Huffman . . . . . . . . . . . . . . . . . . . . . . . . . . i
A.1.1 Avantage de la compression d’Huffman . . . . . . . . . . ii
A.1.2 Exemple de compression . . . . . . . . . . . . . . . . . . ii
A.2 Codage de Gzip . . . . . . . . . . . . . . . . . . . . . . . . . . . . ii
A.2.1 Avantage de la compression GZip . . . . . . . . . . . . . iii
B Schémas de fonctionnement des tâches de téléprogrammation . . . . . . . v
B.1 Atteindre un point cible . . . . . . . . . . . . . . . . . . . . . . . v
B.2 Atteindre une cible mobile . . . . . . . . . . . . . . . . . . . . . . v
B.3 Suivre le contour du cylindre 1 . . . . . . . . . . . . . . . . . . . v
B.4 Prendre/déposer un objet . . . . . . . . . . . . . . . . . . . . . . v
B.5 Tour de Hanoı̈ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vii
C Les sites clients ayant utilisé ARITI . . . . . . . . . . . . . . . . . . . . . ix
C.1 En Europe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ix
C.2 Dans le monde . . . . . . . . . . . . . . . . . . . . . . . . . . . . x
D Les différents systèmes utilisant Internet comme moyen de contrôle . . . xiii
TABLE DES MATIERES
Introduction
Amorcée dans les années 1970, l’informatisation professionnelle a récemment élargi son
empire du poste de travail isolé à la prise en charge des tâches communicant par réseau.
Les instruments de communication asynchrones tels que les messageries, le transfert de
fichiers, les forums de discussions ou les serveurs de données ont aujourd’hui conquis une
place de plus en plus importante dans les organisations. Cependant, la diffusion de ces ou-
tils reste pour l’heure très inégale et l’appréciation de leurs effets sociaux et économiques
est sujette à controverse.
Le chapitre 1 est dédié à une analyse bibliographique sur le télétravail et une synthèse
des problématiques auxquelles nous nous attacherons dans cette thèse. En effet, nous
présentons au début de ce chapitre, un petit historique qui résume les origines du télétravail
et comment cette nouvelle forme de travail est perçue dans le monde. Dans la seconde
partie, nous présentons quelques tendances technologiques qui ont contribué à l’évolution
du télétravail et du travail coopératif, en décrivant les principes et les concepts des nou-
velles générations d’interfaces homme-machine avancées. Dans la troisième partie, nous
présentons une autre forme de télétravail, celle liée au contrôle à distance de systèmes
robotisés, nous parlerons alors de la télérobotique et de la téléopération et nous verrons
comment les techniques de la réalité virtuelle et augmentée ont contribué à percer certains
INTRODUCTION
verrous liés généralement à la distance qui sépare l’opérateur du robot à contrôler. Dans la
quatrième partie, nous présentons brièvement quelques systèmes robotiques qui utilisent
Internet comme moyen de communication et nous présentons aussi les performances et
les limites de ces sytèmes. Nous terminons ce chapitre, par un bilan à partir duquel nous
dégagerons quelques problématiques, essentiellement pour la téléopération de robots sur
Internet.
Dans le chapitre 2 nous présentons quelques solutions apportées aux problèmes d’assis-
tance à l’opérateur pour le télétravail, en particulier d’assistance graphique à la téléopérati-
on d’un robot. En effet, dans la première partie, nous présentons un bref état de l’art sur
les métaphores graphiques. Nous verrons comment elles sont utilisées suivant les auteurs
et suivant les champs d’application, bien qu’elles soient issues d’une même technologie, à
savoir la réalité virtuelle. Dans la seconde partie, nous présentons les différentes méthodes,
géométriques et analytiques utilisées pour la construction, la représentation et la mani-
pulation des objets virtuels en général. D’autre part, nous verrons comment ces objets
virtuels sont transformés en de véritables outils d’assistance pour la téléopération. Afin
de rendre ces outils facilement configurables par un opérateur, un formalisme est proposé
et implanté. La structure générale de ce formalisme est représentée à la fin de ce chapitre.
Le chapitre 3 présente une étude à la mise en œuvre d’un système de télétravail. Nous
présentons les outils logiciels et matériels nécessaires à la réalisation d’un système de
télétravail, comment intégrer les nouveaux concepts et les solutions déjà apportées aux
problèmes liés à la télérobotique, sur une plate-forme universelle et à moindre coût. Nous
verrons, comment rendre l’utilisation des systèmes de télétravail suffisamment souple et
intuitive pour l’opérateur, comment les outils d’assistance présentés dans le chapitre 2
peuvent être utilisés pour améliorer les performances de l’opérateur lors du télétravail.
Dans la première partie de ce chapitre, nous présentons les caractéristiques d’un système
de télétravail idéal. Ensuite, nous présentons les méthodes nécessaires pour le contrôle en
réalité augmentée. Il s’agit des méthodes de modélisation géométrique de l’environnement,
de calibration de la caméra et du robot. Dans la troisième partie, nous présentons notre
système expérimental de télétravail, baptisé ARITI “Augmented Reality Interface for tele-
robotic applications via Internet”. Il s’agit d’un système de télétravail dont la conception
et la mise en œuvre sont basées d’un côté sur des techniques de la réalité virtuelle et
augmentée et de l’autre coté sur l’exploitation des techniques de développement réseaux
et en particulier sur Internet. Dans la quatrième partie, nous présentons l’architecture
réseau et les différents protocoles de communication de l’architecture client/serveur du
système ARITI.
2
INTRODUCTION
3
INTRODUCTION
4
Chapitre 1
Le Télétravail : Etat de l’art
5
CHAPITRE 1. LE TELETRAVAIL : ETAT DE L ART
La période de crise, entre la fin des années 80 et le début des années 90, n’a guère aidé
l’évolution du télétravail. Aux Etats-Unis comme au Royaume-Uni, des prédictions ambi-
tieuses avaient été avancées très tôt sur le potentiel du télétravail, prédictions qui se sont
avérées erronées. Par exemple, en 1985, le “Institute for the future” de Palo Alto avait
prédit que 40% (Béréziat et al., 2000) des employés américains seraient des télétravailleurs
en l’an 2000.
Le rapport Telefutures1 de 1996 résume l’histoire : “Malgré un démarrage assez lent,
l’Union Européenne (UE) a placé, en 1994, l’adoption du télétravail au sommet de la
liste d’actions du rapport Bangemann pour rendre l’Europe plus compétitive.” L’UE s’est
même donnée comme objectif d’atteindre les 10 millions de télétravailleurs en Europe pour
l’an 2000. Le rapport Telework 99 de la Commission Européenne présente deux chiffres
de sources différentes qui estiment le nombre de télétravailleurs en Europe entre 6 et 9
millions à ce jour.
Des études récentes suggèrent que vue les nombreux changements induits par la “société de
l’information”, l’Amérique du Nord a pris une longueur d’avance sur l’Europe et connaı̂t
aujourd’hui une évolution rapide du nombre de ses télétravailleurs. Jack Nilles2 (Nilles,
1998) pense qu’il y avait peut être 2000 télétravailleurs en 1970, qui seraient passés à une
centaine de milliers en 1980, bien qu’il reconnaisse qu’aucune enquête adéquate n’était
faite à l’époque. Ses estimations pour 1990 étaient de 2.4 millions. En 1994 elles s’élevaient
à 7.8 millions et 12.7 millions pour 1996. Nilles prédit que ce chiffre doublera presque pour
atteindre 24.7 million en l’an 2000.
6
TRAVAIL COOPÉRATIF
Nbr. télétrav.(∗1000) % télétrav. % Progres.97 − 98
Allemagne 1 800 5.1 +53
Autriche 67 2.0 +33
Belgique et Luxembourg 250 6.2 +25
Danemark 300 11.6 +20
Espagne 120 0.9 +50
Finlande 220 10.0 +59
France 420 1.8 +67
Grèce 50 1.3 +160
Irlande 58 7.1 +16
Italie 350 1.7 +40
Pays-Bas 1 200 18.2 +100
Portugal 100 2.2 +67
R.U 1 455 5.5 +13
Suède 300 9.0 +67
seulement de tracer les grandes tendances, et de donner une idée sur la manière dont
des conditions sociales et/ou légales différentes favorisent ou non le développement du
télétravail.
Les lignes RNIS4 (ou Numéris, nom commercial du service proposé par France Télécom)
offrent aux télétravailleurs la possibilité de transférer des fichiers très rapidement et d’avoir
accès à des outils de travail coopératifs synchrones comme les visioconférences. La diffu-
sion du RNIS permet aux télétravailleurs d’échanger voix, images et données avec un débit
élevé. Il est probable que la technologie RNIS sera fortement concurrencée par la nouvelle
technologie ADSL (Asymmetric Digital Subscriber Line), fournissant des débits encore
plus élevés que le RNIS et ceci sur une simple ligne téléphonique.
D’autres technologies liées aux réseaux câblés et à la diffusion par satellite, peuvent cha-
4
RNIS : Réseaux Numérique à Intégration de service
7
CHAPITRE 1. LE TELETRAVAIL : ETAT DE L ART
8
TRAVAIL COOPÉRATIF
Un autre verrou d’utilisabilité des outils CSCW réside dans leur manque d’intégration.
Alors que les activités de groupes sont “à géométrie variable”, les outils existants ne
couvrent en général qu’un mode de coopération : synchrone/asynchrone (ou bien temps
réel/temps différé). La réalisation de tels environnements CSCW remet en question une
bonne partie des infrastructures logicielles existantes (systèmes d’exploitation, protocoles
réseau, etc.).
Une autre difficulté du même ordre réside dans la disponibilité d’outils qui s’exécutent
de façon transparente dans des environnements hétérogènes en adoptant le “look and
feel” de chaque plate-forme. La question est donc de simplifier les tâches cognitives de
l’utilisateur en déléguant le plus possible de celles-ci aux applications. Il s’agira donc ici
de rendre cette hétérogénéité transparente aux utilisateurs tout en exploitant au mieux
les capacités de chaque plate-forme (i.e. sans s’en remettre au plus grand dénominateur
commun, comme le fait par exemple JAVA5 ).
Il convient aussi de réaliser des systèmes de communication plus naturels, ce qui en-
traı̂ne bien sûr une plus grande complexité dans leur fonctionnement. Combien de per-
sonnes n’utilisent qu’une faible partie des fonctions de leur traitement de texte ou de leur
téléphone d’entreprise ? Combien de personnes sont également hermétiques aux concepts
du monde informatique, principalement ceux du PC ? Il faut donc arriver à des interfaces
d’apparence simples, permettant au plus grand nombre de communiquer en utilisant les
nouvelles technologies disponibles, mais l’effort pour y arriver ne saurait être sous-estimé.
La communication homme-machine qui faisait apparaı̂tre ces deux acteurs face à face
évolue à présent vers un partenariat homme-machine qui les place côte à côte pour résoudre
ensemble, et en coopération, un problème commun. Les domaines couverts par ce thème
concernent les différentes modalités nouvelles de communication : langages (le vocal ou
l’écrit), visuelles et graphiques, gestuelles (dans les aspects d’analyse et de synthèse/retour
d’efforts), ainsi que leur combinaison dans des systèmes de communication multimodales,
ou dans des systèmes de réalité virtuelle ou augmentée. Dans tous ces cas, les aspects
télématiques et communication à distance doivent être présents, voir essentiels.
5
Un langage de programmation objet de chez “Sun Microsystems”, il génère un code exécutable
universel
9
CHAPITRE 1. LE TELETRAVAIL : ETAT DE L ART
Bref historique
Vers l’année 1770, la construction de machines simples, ainsi que leur mécanisation a
marqué le départ de la révolution industrielle. Au début du 20ème siècle, les machines
automatiques fixes et les chaı̂nes de montage permettent le développement de la produc-
tion de masse. Le travail à la chaı̂ne favorise l’accroissement des taux de production en
réduisant les temps de fabrication. Les cycles d’usinage et de montage sont simples et
répétitifs, à cadence fixe. Apparaissent alors des machines-outils munies de commandes
automatiques rudimentaires, telles que les matrices de programmation par fiches qui per-
mettent d’effectuer des séquences d’opérations prédéterminées. Les machines à copier
permettent d’usiner des pièces par copie des déplacements d’un palpeur sur un gabarit
modèle au moyen de moteurs asservis qui commandent les mouvements de l’outil d’usi-
nage sur l’ébauche (Koren, 1985). En 1953, des recherches menées au MIT conduisent
au développement d’une nouvelle technologie de machines numériques adaptées à des
opérations précises et répétées. Le concept du robot industriel est breveté en 1954 (bre-
vet US n˚ 2988237). Ce brevet décrit la réalisation d’un bras mécanique asservi capable
d’effectuer des tâches à caractère industriel. En 1958, Planet Corporation (USA) com-
bine avec succès cette technologie avec la technologie des télémanipulateurs développée
pour l’industrie nucléaire américaine et crée le premier robot manipulateur industriel. La
société Unimation voit le jour peu après, et livre le premier Unimate à General Motors en
1961. Vers la fin des années 70, ces robots dits “de première génération” se généralisent
à l’ensemble de la production industrielle. Pendant que se développe ce nouveau concept
“d’usine automatique”, la robotique aborde d’autres domaines. Ainsi, l’Union Soviétique
réussit à téléopérer un robot mobile sur la Lune en 1971. En 1976, la sonde Viking I de
la NASA6 se pose sur la planète Mars, équipée d’un bras manipulateur téléopéré depuis
la terre afin de prélever des échantillons de sol et de rochers (Freedman, 1993) ou encore
la mission du robot sojourner en 1997.
1.3.1 La Téléopération
Dans cette partie, nous présentons quelques concepts de base et quelques problèmes
de fond liés à la téléopération. Pour un état de l’art sur la technologie de la téléopération
nous conseillons les références suivantes, (Vertut et Coiffet, 1984) et (Sheridan, 1992).
La Téléopération désigne les principes et les techniques qui permettent à l’opérateur
humain d’accomplir une tâche à distance, à l’aide d’un système robotique d’intervention
(dispositif esclave), commandé à partir d’une station de contrôle (dispositif maı̂tre) (figure
1.1), par l’intermédiaire d’un canal de télécommunication. Elle a pris ses origines dans le
6
National Aeronautics and Space Agency
10
1.3. TELETRAVAIL : TELEOPERATION ET TELEROBOTIQUE
De nos jours, la téléopération s’applique aussi bien aux bras redondants, aux préhenseu-
rs mécaniques polyarticulés, et à diverses sortes de robot mobiles à roues (Clement et al.,
1988), (Causse et Crowley, 1993), et à pattes (Kheddar et al., 1996) . Cependant, un
certain nombre de problèmes de fond et complexes existent encore. Nous citerons par
exemple, l’inévitable problème de délai dû au canal de transmission entre les deux sites,
maı̂tre et esclave qui implique un retard de transmission d’informations sensorielles utiles à
l’opérateur. En effet tout retard de transmission entraı̂ne des instabilités difficilement com-
pensables (Ferell, 1965), (Ferell, 1966), (Bejczy et al., 1990) et (Sheridan, 1993). d’Autres
problèmes qui ne cessent de préoccuper l’esprit de nombreux chercheurs dans ce do-
maine concernent le choix d’un système de commande universel (Bejczy, 1992) ainsi que
la compréhension de nos propres sous-systèmes sensoriels (Brooks, 1990) et (Lederman et
Klatzky, 1994).
11
CHAPITRE 1. LE TELETRAVAIL : ETAT DE L ART
lyser ce problème (Kheddar, 1997). La première est basée sur l’automatique classique et
la seconde est basée sur la théorie des lignes et de la passivité.
La première approche, est de nature compensatoire, l’idée était d’introduire des cor-
recteurs dans la boucle d’asservissement afin de compenser les systèmes à retards (De-
Larminat, 1993).
La seconde approche, considère le retard comme subi, c’est à dire comme partie intégrante
du système (Niemeyer et Slotine, 1991), (Leung et Francis, 1992), (Spong, 1993) et (Law-
rence, 1993) et (Andriot, 1997).
Malheureusement, ces deux approches exigent que le délai de transmission soit connu,
alors que la majorité des protocoles publiques actuels de transmission de données informa-
tique ne garantissent pas la constance des délais de transmission. En effet indépendamment
de la taille des données transmises, le délai peut varier d’une manière très aléatoire pour
certains protocoles de transmission (par exemple Internet). Les travaux de Kosuge et son
équipe ont montré (Kosuge et al., 1996) que ce problème entraı̂ne une instabilité même si
les variations de délai sont relativement petites.
La TAO (Vertut et Coiffet, 1984), est vue comme une voie intermédiaire entre la
téléopération originelle bas niveau et la supervision. L’objectif de la TAO est de
réaliser à chaque instant et pour toute étape de la tâche, une exploitation optimale
des ressources d’un ordinateur. Tout se fait dans la partie maı̂tre, le robot reste
12
1.3. TELETRAVAIL : TELEOPERATION ET TELEROBOTIQUE
esclave des actions de l’opérateur aidé par des programmes informatiques. La TAO
s’oriente de plus en plus vers le développement des interfaces homme-machines pour
la programmation hors ligne, l’entraı̂nement de l’opérateur à la désignation de mis-
sions téléopérées etc. Depuis peu, la TAO bénéficie d’un atout nouveau qui est la
Réalité Virtuelle (RV) (Burdea et al., 1992). Un paragraphe concernant l’utilisation
de cette technologie est présenté dans la suite de ce chapitre.
TAO TDO
TSA
Fig. 1.3 – Classement de la TAO, TDO et TSA selon le degré d’autonomie du dispositif
esclave.
1.3.2 La Télérobotique
La télérobotique est une forme de téléopération lorsque l’opérateur réalise des tâches
à distance en utilisant un robot. Ce dernier peut fonctionner d’une façon autonome.
13
CHAPITRE 1. LE TELETRAVAIL : ETAT DE L ART
Le domaine nucléaire
Le nucléaire a été le premier domaine à stimuler le développement de systèmes de
télérobotique. L’industrie nucléaire s’intéresse généralement aux applications sui-
vantes :
Æ La manipulation de produits radioactifs : Elle se fait en cellule spécialisée,
dans laquelle des télémanipulateurs mécaniques sont utilisés pour amener et
retirer le produit. L’opérateur travaille en vision directe et il n’y a pas de
problèmes d’éloignement (figure 1.4). L’introduction de la télérobotique n’est
pas encore envisagée dans ce type d’application.
Æ La maintenance des installations : Ce type de tâche est essentiellement
réalisée par des machines spécialisées. Ces dernières offrent l’avantage d’être
parfaitement adaptées à la tâche. Par contre leur mise en oeuvre est longue
et elles ne sont pas adaptées aux changements de situation et ne peuvent être
réutilisées dans d’autres tâches. La télérobotique est en train de trouver sa
place suite aux recherches menées ces dernières années.
Æ Le démantèlement d’installation et l’intervention suite à un incident :
L’utilisation des systèmes télérobotiques est une voie en cours de recherche
concernant ces deux domaines. L’exploitation des nouvelles technologies comme
la Réalité Virtuelle / Augmentée est un atout favorable pour la poursuite de
ces recherches.
14
1.3. TELETRAVAIL : TELEOPERATION ET TELEROBOTIQUE
Fig. 1.4 – Exemple du système Poste de Travail Mobile (PTM) du CEA piloté par un
contrôleur TAO 2000
Le domaine spatial
Les principales applications de la télérobotique dans ce domaine sont l’exploration
et la maintenance de satellites (figure 1.5). L’éloignement du site de travail et l’im-
portant temps de transmission des informations, impliquent l’utilisation de robots
ayant une grande autonomie (basée sur une architecture complexe et intégrant de
nombreux capteurs) sans pour autant exclure la possibilité de les téléopérer (la mis-
sion du sojourner en 1997 sur la planète mars en est un exemple).
Fig. 1.5 – Exemples de robots : A gauche, l’exploration de Mars par “sojourner”, à droite
, la maintenance de satellites
Le domaine sous-marin
A l’exception des applications militaires, les applications civiles sont principale-
ment liées à l’industrie de l’offshore, l’inspection, la construction et la maintenance
de conduites, structures, câbles sous-marins voire aussi des investigations scienti-
fiques (épaves, espèces marines, etc.). Des bras manipulateurs embarqués à bord de
véhicules peuvent être autonomes ou même téléopérés (figure 1.6). Ce domaine conti-
nue à être le principal domaine d’activité en nombre de systèmes de télérobotique.
Le domaine militaire
La télérobotique intervient pour la désactivation de mines, l’observation de terri-
toires ennemis ainsi que la télécommande d’engins tels que les chars, les avions et
les hélicoptèrs.
15
CHAPITRE 1. LE TELETRAVAIL : ETAT DE L ART
Fig. 1.6 – Exemple d’utilisation d’un robot embarqué sur un véhicule sous marin JASON
((Sayers et al., 1995))
Le domaine médical
Les médecins et les chirurgiens, utilisent de plus en plus de robots afin de les assister
ou même de les remplacer dans certaines tâches. La téléchirurgie (figure 1.7) semble
avoir un avenir prometteur, en particulier dans la chirurgie oculaire, qui réclame une
grande précision et une sécurité extrême (Grace et al., 1993) (Hunter et al., 1994).
D’autres applications peuvent être trouvées en chirurgie mini invasive (Laparoscopie
et coelioscopie).
Nous noterons que l’évolution des systèmes de téléopération est étroitement liée à
l’évolution des technologies d’interactions homme-machine. Nous nous intéressons tout
particulièrement aux technologies de la Réalité Virtuelle (RV) et de la Réalité Augmentée
(RA) qui ont été rapidement adoptées au profit de la téléopération. Bien que le terme de
RA est considéré comme une méthode de la RV, nous avons préféré les séparer afin de
montrer les similitudes et les différences qui existent entre ces deux concepts. Ce sont des
techniques qui ont permis d’une part, de faire face au problème de délai de transmission,
et d’autre part de fournir une meilleure interaction homme-machine.
Bien que ce mot ne soit à la mode que depuis quelques années, la réalité virtuelle
est née de recherches qui ont débuté dans les années cinquante dans des milieux aussi
divers que les laboratoires de la NASA ou les studios d’Hollywood. Les pionniers de ce
16
1.3. TELETRAVAIL : TELEOPERATION ET TELEROBOTIQUE
monde artificiel furent des visionnaires qui empruntèrent des techniques aussi variées que
le cinéma, l’informatique, l’automatique et l’électronique, les briques de ce qui fût appelé
la Réalité Virtuelle (RV).
Il existe autant de définitions qu’il y a de champs d’application à cette technologie, en
plus, cette technologie est plutôt vue comme quelque chose de magique, aux possibilités
quasi illimitées, la réalité étant tout autre chose. Les contraintes auxquelles doit faire
face cette technologie sont nombreuses. Ce qui a provoqué de multiples définitions de
la RV. Nous avons retenu deux définitions qui à nos yeux semblent plus explicites. La
première est donnée par Burdea et Coiffet (Burdea, 1993) concernant le terme RV et la
deuxième est plus générale, elle introduit la notion d’Environnement Virtuel (EV) retenu
notamment par Thibout (Thibout, 1996) et dont la RV constitue une partie. Pour ce qui
est des interfaces de la réalité virtuelle, nous recommandons la référence (Fuchs, 1996).
Définition de la RV :
Un système de réalité virtuelle est une interface qui implique la simulation en temps
réel et des interactions via de multiples canaux sensoriels. Ces canaux sensoriels sont
ceux de l’homme, vision, audition, toucher odorat et le goût.
17
CHAPITRE 1. LE TELETRAVAIL : ETAT DE L ART
Définition de l’EV :
L’environnement virtuel est constitué d’un ensemble de techniques permettant de
reproduire le plus fidèlement, par calcul, le comportement d’entités 3D. Ces techniques
se décomposent en deux classes :
L’interface homme-machine (interaction avec l’EV)
Perception visuelle, sonore, tactile.
Acquisition de données (gant, souris 6D, etc.)
Communication accrue entre l’homme et la machine (multimodalité)
Le comportement des entités de l’EV
Modèles cinématique, dynamique
Gestion des collisions
Modèles d’éclairement
etc...
Si l’on regarde les types d’applications utilisant la réalité virtuelle, on se rend compte
que le divertissement, les arts et l’éducation dominent ce marché. L’autre secteur impor-
tant concerne la haute technologie comme l’aérospatial, la robotique, la médecine , les
sciences ou le domaine militaire. On peut considérer que tous les domaines de la vie cou-
rante peuvent et pourront un jour être touché par la RV.
Heslsel et Doherty7 , ont classé les domaines en fonction du nombre possible d’applications.
7
http ://brahma.imag.fr/Multimedia/DESSGI/Realite-Virtuelle/html/applications.html
18
1.3. TELETRAVAIL : TELEOPERATION ET TELEROBOTIQUE
Le divertissement : C’est sans doute dans ce secteur que la RV est la plus exploitée
à son état pur. Des jeux très réels dans un monde imaginaire où tout est permis. Les
rêves les plus fous y sont autorisés. La majorité des jeux virtuels qui existent sont
basés sur le principe de la simulation. Être dans un véhicule et le diriger au travers
de différents environnements, en ressentir toutes les secousses. Les jeux virtuels font
de plus en plus fureur.
La télérobotique : Utilisée pour des interventions dans des milieux hostiles tels
que : l’intérieur d’une centrale nucléaire, les fonds sous-marin, l’intérieur d’un vol-
can... c’est d’ailleurs ce principe qui a été utilisé lors des récentes missions spatiales
sur la planète Mars. Grâce à la RV les techniciens peuvent s’entraı̂ner à manipuler
le robot, améliorer leurs réflexes en causant des fausses situations d’urgence ou de
faux problèmes techniques. Ils peuvent aussi enregistrer une série de mouvements
ou de tâches, que le robot devra faire, avant de les faire faire par le robot dans
une situation réelle. Dans une opération de télérobotique la plupart des actions du
robot sont préprogrammées. Lorsque le robot effectue ces phases préprogrammées,
l’opérateur ne croise pas les doigts. Il doit superviser le robot durant l’accomplis-
sement de sa tâche ou, dans certains cas, il doit assister le robot (téléassistance).
Les techniques de RV en robotique sont susceptibles de remplir deux fonctions. La
19
CHAPITRE 1. LE TELETRAVAIL : ETAT DE L ART
La Réalité Augmentée (RA) peut être définie comme une combinaison de la vraie
scène visualisée par l’utilisateur et d’une scène virtuelle produite par l’ordinateur. D’une
manière générale cette technique consiste à augmenter la scène réelle avec des informations
virtuelles supplémentaires. Cette augmentation peut prendre différentes formes selon les
20
1.3. TELETRAVAIL : TELEOPERATION ET TELEROBOTIQUE
domaines d’application comme nous allons le voir par la suite. Par exemple dans le do-
maine de la télérobotique, généralement cette opération consiste à superposer un modèle
virtuel sur une image réelle grâce à un mécanisme appelé la calibration (cf. § 3.2.2). On
parlera alors de la visualisation prédictive ou encore des prédicteurs graphiques utilisés
généralement en téléopération soit pour pallier le problème de délai (Noyes et Sheridan,
1984), (Bejczy et al., 1990) et (Bejczy et Kim, 1990), soit pour rehausser l’image vidéo
pour compenser ses défauts ( (Mallem et al., 1992), figure 1.8) et (Oyama et al., 1992).
Des exemples de systèmes à base de cette technologie sont présentés à la fin de cette
partie.
Superposition par un modèle fil de fer
Fig. 1.8 – Rehaussement d’images vidéo dégradées par superposition d’une image
synthétique “fil de fer” à une image caméra
Formation militaire : Les militaires utilisent aussi des systèmes de RA où des
informations s’affichent sur leur écran de pilotage, ou bien un viseur indiquant la
21
CHAPITRE 1. LE TELETRAVAIL : ETAT DE L ART
22
1.3. TELETRAVAIL : TELEOPERATION ET TELEROBOTIQUE
23
CHAPITRE 1. LE TELETRAVAIL : ETAT DE L ART
l’exécution.
24
DE L’ART
Cependant la télérobotique basée sur Internet, permet une délocalisation facile des
opérateurs à faible coût, et ne dépend pas de l’endroit où se trouve le matériel qui permet
de contrôler le robot qui, lui, se trouve sur le site esclave généralement distant. Cette
idée a été exploitée par la NASA lors de la préparation de la mission sojourner sur Mars.
Initialement les scientifiques étaient obligés de se déplacer jusqu’au centre de contrôle
en Californie afin de travailler et de contrôler le robot, sachant que la communication
Terre-Mars se fait avec une bande passante très limitée. Le développement d’une inter-
25
CHAPITRE 1. LE TELETRAVAIL : ETAT DE L ART
Les premiers sites Internet de la télérobotique sur le Web ont été crées en 1994 par
l’américain Goldberg (Goldberg et al., 1995) et l’Australien Telerobot on the Web (Taylor
et Trevelyan, 1995). Depuis de nombreux sites Internet pour la robotique sur le web ont vu
le jour, et actuellement le site de la NASA (NASA Space Telerobotics Program)8 regroupe
23 sites web y compris le nôtre (système ARITI)9 . Dans ce qui suit, nous allons décrire
brièvement quelques systèmes utilisant Internet comme moyen de contrôler des robots.
26
DE L’ART
1.4.3 KhepOnTheWeb
Lieu et auteurs : EPFL - Suisse, (Saucy et Mondala, 1998)
Type de robot : Un robot mobile miniature, type Khepera .
Applications : Navigation avec évitement d’obstacles.
Performances :
– l’utilisateur spécifie la position et la vitesse du robot et les envoie ensuite pour
l’exécution.
– Le système utilise deux caméras vidéo (une externe et l’autre embarquée sur le
robot).
– L’utilisateur peut contrôler la caméra externe (orientation et zoom).
– Les images vidéo envoyées sont de type JPEG.
Limites :
– Le serveur d’images utilise une technique de compression qui est supporté unique-
ment par le navigateur ” Netscape ”.
– Un seul retour vidéo est possible à un instant donné (caméra externe ou embarquée).
– Le système tourne sous un système d’exploitation Windows 95 qui n’est pas stable
(n’est pas fait pour ce genre d’application), ce qui oblige à redémarrer le serveur à
chaque fois.
– Pas d’autres superviseurs possibles lorsque le système est en cours d’utilisation.
1.4.4 Xavier
Lieu et auteurs : USA - Pittsburgh, (Simmons, 1998)
Type de robot : Un robot mobile.
Applications : Navigation avec évitement d’obstacles.
Performances :
– Le robot est autonome et capable de recevoir des commandes vocales.
– Une caméra embarquée sur le robot permet de visualiser ce que voit le robot.
– L’utilisateur choisi des tâches de haut niveau prédéfinies par le système.
Limites :
– Le système retourne des informations de position et d’orientation toutes les 5 à 10
secondes ainsi qu’une image vidéo (de type GIF) toutes les 20 secondes.
– Le système supporte un seul client (utilisateur) à chaque fois.
1.4.5 RHINO
Lieu et auteurs : Allemagne, (Schulz et al., 1998)
Type de robot : Un robot mobile.
Applications : Navigation avec évitement d’obstacles.
Performances :
– Le robot est autonome.
– L’interface du système utilise la réalité virtuelle (le robot est modélisé et l’environ-
nement est semi-modélisé).
– Deux caméras réelles sont utilisées, une embarquée sur le robot permettant de vi-
sualiser ce que voit le robot et une autre caméra fixe qui visualise le robot dans son
environnement.
27
CHAPITRE 1. LE TELETRAVAIL : ETAT DE L ART
– Deux caméras virtuelles sont utilisées de la même façon que les réelles. Elles per-
mettent à l’utilisateur d’observer le déplacement du robot virtuel comme résultat
de l’exécution de la tâche.
Limites :
– Pas de retour vidéo pendant le déplacement du robot.
– L’interface utilisateur (simulation virtuelle) est basé sur des librairies ”OpenGL”
qui ne sont pas supportées par défaut par les navigateur Internet.
– Le système supporte un seul utilisateur à chaque fois.
1.5 Bilan
Ce premier chapitre nous a permis d’une part, de présenter les différents aspects
du télétravail ainsi que les méthodes et les tendances technologiques qui contribuent
énormément à son évolution. D’autre part, nous avons identifié les grandes lignes de
notre problématique, à savoir :
Quels sont les outils logiciels et matériels nécessaires pour la mise œuvre d’un
système de télétravail ?
Comment intégrer les nouveaux concepts et les solutions déjà apportées aux problèmes
liés à la télérobotique, sur une plate-forme universelle et à moindre coût ?
Comment rendre l’utilisation des systèmes de télétravail suffisamment souple et
intuitive pour l’opérateur, et quels types d’assistances peut on lui apporter afin
d’améliorer ses performances ?
Peut on construire une architecture client/serveur supportant un travail coopératif
et sous quelles contraintes ?
Quels sont les avantages que peut fournir les systèmes de télétravail en particulier
en utilisant le réseau Internet comme moyen de communication ?
28
1.5. BILAN
D’une manière précise, ce premier chapitre nous a permis, d’analyser les systèmes de
téléopération et de téléprogrammation de robots existants, les méthodes et les techniques
utilisées pour pallier les problèmes liés à la télérobotique en général et enfin d’analyser
les récents travaux concernant le contrôle de systèmes robotiques via Internet.
Après ces nombreux précédents efforts, certains peuvent se demander, quelle est l’ori-
ginalité du travail que nous proposons ? Quelles sont les contributions scientifiques et
techniques apportées à l’issue de ce travail ?
Dans les chapitres qui vont suivre, nous tentons de répondre à ces deux inévitables
questions ainsi qu’aux différentes problématiques posées.
Dans le chapitre suivant, nous proposons quelques outils d’assistance pour le télétravail.
Ces outils sont basés sur une approche d’assistance graphique et bénéficient de l’avantage
d’être paramétrables. Ils sont généralement destinés pour l’assistance à la téléopération
de robots.
29
CHAPITRE 1. LE TELETRAVAIL : ETAT DE L ART
30
Chapitre 2
L’assistance graphique pour le Télétravail
Dans ce chapitre, nous proposons des solutions aux problèmes d’assistance à l’opérateur
pour le télétravail, en particulier l’assistance à la téléopération d’un robot.
Dans la première section de ce chapitre, nous présentons un bref état de l’art sur les
métaphores graphiques. Nous verrons comment elles sont utilisées suivant les auteurs et
suivant les champs d’application.
Afin de rendre ces outils facilement configurables par un opérateur un formalisme est
proposé et implanté. La structure générale de ce formalisme est présentée à la fin de ce
chapitre.
31
CHAPITRE 2. L ASSISTANCE GRAPHIQUE POUR LE TELETRAVAIL
1992) voir aussi (Fraisse, 1994) (Joly et Andriot, 1995) (Kosuge et al., 1995) pour la
commande en force d’un robot. Ces accessoires virtuels facilitent les déplacements ou
les saisies d’objets dans les phases de modélisation ou de génération de trajectoires qui
s’appliqueront ensuite au robot.
Fig. 2.1 – les mécanismes virtuels pour la télémanipulation : A gauche, la structure avec
les coordonnées cylindriques (x, r, θ1 ) et l’impédance mécanique attachée au bout de l’outil
(θ2 , θ3 , θ4 ) qui permet le suivi de surface. A droite, un mécanisme virtuel associé à la tâche
d’assemblage de la boı̂te saisie par le robot.
Dans (Joly et Andriot, 1995), le principe des mécanismes virtuels est appliqué à la
fois au dispositif maı̂tre et au robot. Ainsi, le retour d’effort vers le dispositif maı̂tre et la
commande du robot se font à partir du mécanisme virtuel (voir figure Figure 2.2).
32
2.1. LES METAPHORES GRAPHIQUES : BREF ETAT DE L ART
Fig. 2.2 – Téléopération basée sur le concept de mécanismes virtuels (d’après Joly et
Andriot 95
Dans une philosophie voisine des mécanismes virtuels, un nouveau paradigme est pro-
posé dans [Backes et al. 96]. L’opérateur téléopère une trajectoire au lieu de téléopérer un
robot. Le robot esclave sera alors contraint de suivre cette trajectoire durant ou après son
établissement. Ces trajectoires sont nommées “chemins guides” (“motion guides”). Elles
sont modifiables en ligne (durant la téléopération) ou hors ligne (durant la programmation
de la trajectoire). Pendant que le robot suit une trajectoire, les commandes de l’opérateur
sont du type : avant, arrière ou arrêt. Sur la trajectoire définie, des flèches visualisent le
sens de déplacement du robot. Sur la trajectoire, on peut placer des tâches (“task lines”)
qui sont un traitement particulier à effectuer à un endroit précis du chemin guide. Le tout
est implanté dans un environnement complètement virtuel. Les prédicteurs graphiques et
la téléprogrammation intègrent aussi cet aspect dans l’interface homme - machine.
Dans (Thibout, 1996), la notion de mécanisme virtuel est utilisée pour définir des outils
virtuels (Figure 2.3) utilisés dans un atelier virtuel. On parlera alors de la métaphore
de la boı̂te à outils virtuels (Figure 2.4).
Le concept est très intéressant pour l’assistance en téléopération. Toutefois, il n’existe
pas encore une méthodologie uniforme pour l’intégration de ce concept dans une interface
de téléopération. La mise en œuvre paraı̂t assez complexe, car les mécanismes virtuels
sont conçus pour des tâches spécifiques.
33
CHAPITRE 2. L ASSISTANCE GRAPHIQUE POUR LE TELETRAVAIL
Fig. 2.3 – Exemple d’outils virtuels : en haut, des champs de force répulsifs pour
l’évitement de zones dangereuses ; en bas, des mécanismes virtuels à placer sur l’effec-
teur du robot pour guider ses mouvements (ici la rotule pour le blocage des translations,
la glissière pour le suivi de droite et de pivot)
34
2.1. LES METAPHORES GRAPHIQUES : BREF ETAT DE L ART
Fig. 2.5 – le système de téléprésence utilisé pour tester les performances de l’opérateur
lors des tâches d’insertion avec ou sans l’aide des guides virtuels
Fig. 2.6 – Exemples de guides virtuels projetés dans la zone de manipulation pour assister
l’opérateur dans des tâches d’insertion d’après Rosenberg
35
CHAPITRE 2. L ASSISTANCE GRAPHIQUE POUR LE TELETRAVAIL
D’autres recherches ont été effectuées dans le laboratoire GRASP (General Robo-
tics and Active Sensory Perception) de l’université de Pennsylvanie (Sayers et Paul,
1994). L’opérateur travaille avec une représentation virtuelle du robot distant. Les actions
réalisées dans ce monde virtuel sont observées ensuite envoyées sous forme de séquences
d’instructions au robot réel. L’opérateur utilise un petit bras maı̂tre Puma 250 comme
dispositif d’entrée/sortie (envoi des ordres au robot virtuel ou réception des retours d’ef-
forts). Le retour visuel est fourni par la simulation virtuelle qui dans ce cas utilise le
modèle virtuel du bras esclave Puma 560 (figure 2.7).
Fig. 2.7 – Le système de téléprogrammation utilisé par Sayers : A gauche, le site maı̂tre ;
A droite le site esclave.
La figure 2.8 montre quelques guides virtuels utilisés par ce système lors de l’expérim-
entation.
Une autre utilisation des guides virtuels pour une assistance à l’opérateur est donnée
par Kheddar (Kheddar, 1997), voir la figure 2.9 ou encore la figure 2.10.
La notion de guides virtuels initialement introduite par Rosenberg pour assister l’opéra-
teur, peut être décomposée en trois classes dont la classification est représentée par la
figure 2.11 :
Les guides virtuels dédiés exclusivement à l’assistance de l’opérateur :
On y regroupera toutes les métaphores graphiques dont la fonction n’a pas de lien
direct avec le robot esclave. A titre d’exemple des marqueurs de position, les divers
substituts visuels ou autres dont le rôle sera orienté vers une assistance à l’accom-
plissement de la tâche virtuelle sans effet direct sur le robot.
Les guides virtuels dédiés exclusivement à la commande du robot : On
y regroupera les mécanismes virtuels ou tout autre artifice nécessaire à la stricte
exécution d’une tâche.
Les guides virtuels partagés dédiés à la fois à l’assistance de l’opérateur
et à une exploitation de l’autonomie des robots : C’est une extension des
virtual fixtures introduites par Rosenberg. Bien que le concept dans l’esprit de cet
auteur s’applique à la téléopération pour faciliter le pilotage du robot esclave et qu’il
soit déjà largement utilisé dans les systèmes de téléopération assistée par ordinateur
(Coiffet et Gravez, 1991). Burdea et Coiffet (Burdea et Coiffet, 1994) proposent
de l’exploiter sous une forme voisine pour le robot autonome. On peut répartir ces
guides en trois sous classes :
Les guides virtuels partagés à fonctions autonomes : Cette catégorie
de guides engendre une exécution autonome de la tâche virtuelle à la fois pour
36
2.1. LES METAPHORES GRAPHIQUES : BREF ETAT DE L ART
Fig. 2.8 – exemple de guides virtuels d’assistance à l’opérateur proposés par Sayers en
1994 : Première ligne, guide virtuel point-point pour déplacer la pointe de l’effecteur
jusqu’à un point dans l’espace et ensuite effectuer des rotations ; Deuxième ligne, pour le
suivi de zones circulaires ; Troisième ligne, pour effectuer un contact surface-surface.
MAIN VIRTUELLE
Guide virtuel
Guide virtuel
Fig. 2.9 – Guides virtuels dédiés exclusivement à l’assistance de l’opérateur. Une projec-
tion du repère du pouce sur le sol permet un guidage plus précis pour saisir ou manipuler
les objets virtuels.
37
CHAPITRE 2. L ASSISTANCE GRAPHIQUE POUR LE TELETRAVAIL
1 2 3 4
Main virtuelle
Manche
Guides virtuels
d’assistance à l’opérateur
Pièce A
Guide virtuel à
assistance partagée Robot plan
Table
Manipulation
Ajustement
Saisie
Prehenseur autonome
a 2 doigts des axes
Fig. 2.10 – Exemple d’application des guides virtuels. Ajustement d’un préhenseur limité
en capacité d’ouverture monté sur un robot plan de type SCARA. Cette figure illustre
aussi les transformations entre l’action de l’opérateur et le robot intermédiaire de trans-
formation.
38
INTERNET
l’opérateur et pour le robot. L’exécution autonome est une aide à l’opérateur
dans le sens où la tâche virtuelle se fait toute seule. Elle constitue en même
temps une exploitation de l’autonomie du robot.
Les guides virtuels partagés à fonctions semi autonomes : Dans ce
cas l’opérateur effectue la tâche virtuelle sans assistance implicite. Le résultat
de cette exécution engendre un fonctionnement autonome du côté du robot
seulement.
Les guides virtuels partagés à fonctions de collaboration : C’est une
autre version des guides à fonctions semi autonomes. Dans ce cas l’interprétation
de la métaphore donne lieu à un fonctionnement robotique issu d’une combi-
naison d’une fonction autonome exécutée par un robot virtuel et d’une fonction
représentant l’action de l’opérateur.
39
CHAPITRE 2. L ASSISTANCE GRAPHIQUE POUR LE TELETRAVAIL
Les coniques sont une famille de courbes 2D dont l’équation générale peut se mettre
sous la forme :
x2 (1 − e2 ) + y 2 − 2px + p2 = 0 (2.4)
Elles se regroupent en trois sous-familles :
1. Si e = 1 L’équation devient
y 2 − 2px + p2 = 0 (2.5)
la courbe est nommée parabole Figure 2.12.
Fig. 2.12 – Exemple d’une parabole générée par la famille des coniques
2. Si e = 1 L’équation devient
p p
y 2 = (e2 − 1)(x − )(x − ) (2.6)
1+e 1−e
(a) Si e > 1, la courbe est nommée hyperbole (Figure 2.13 a)
(b) Si e < 1, la courbe est nommée ellipse (Figure 2.13 b)
40
INTERNET
(a) (b)
Fig. 2.13 – Exemple d’hyperboles et d’ellipse générées par la famille des coniques
Une superconique est obtenue en appliquant une fonction de poids aux termes trigo-
nométriques de l’équation polaire d’une conique. Notons fp cette fonction de poids. Elle
est définie par :
∀t ∈ [−1, 1], fp (t) = sign(t)|t|p (2.7)
où p ∈ R+
L’équation paramètrique polaire d’une ellipse est :
x = a cos(θ)
∀θ ∈ [−π, π], (2.8)
y = b sin(θ)
x = afp (cos(θ))
∀θ ∈ [−π, π], (2.9)
y = bfp (sin(θ))
La Figure 2.14 montre quelques exemples obtenues par une superconique.
Fig. 2.14 – Exemple de superellipses, de haut en bas et de gauche à droite avec p=0.38,
0.78, 1, 1.78, 2, 3 et 6
41
CHAPITRE 2. L ASSISTANCE GRAPHIQUE POUR LE TELETRAVAIL
42
INTERNET
⎛ ⎞
x
a4 + cos(η)ε1 a1 cos(ω)ε2
T (η, ω) = ⎝ y ⎠ = ⊗ (2.13)
a3 sin(η)ε1 a2 sin(ω)ε2
z
Soit : ⎛ ⎞ ⎛ ⎞
x a1 (a4 + cos(η)ε1 ) cos(ω)ε2
T (η, ω) = ⎝ y ⎠ = ⎝ a2 (a4 + cos(η)ε1 ) sin(ω)ε2 ⎠ (2.14)
z a3 sin(η)ε1
On remarque que le domaine de définition d’un supertoroı̈de est le même que celui
d’une superellipsoı̈de, car en prenant a4 = 0 dans l’équation paramétrique d’un super-
toroı̈de, on obtient l’équation paramétrique d’une superellipsoı̈de.
Les figures 2.18 et 2.19 montrent quelques exemples de guides virtuels que l’on peut
obtenir avec des supertoroı̈des.
43
CHAPITRE 2. L ASSISTANCE GRAPHIQUE POUR LE TELETRAVAIL
Les superhyperboloı̈des sont une autre famille de superquadrique. Elles n’ont pas été
implémentées dans l’application en raison de leur difficulté de représentation et du peu de
type de figure qu’elles génèrent. Voici, à titre indicatif, les équations paramétriques des
superhyperboloı̈des à une et deux nappes.
– Les superhyperboloı̈des à une nappe :
⎛ ⎞ ⎛ 1 ε1 ⎞
x a1 cos(η) cos(ω)ε2
H1 (η, ω) = ⎝ y ⎠ = ⎝ a2 cos(η) 1 ε1
sin(ω)ε2 ⎠ (2.15)
z a3 tan(η) ε 1
Si on note (Pi )i∈[0,d] les points de contrôle, la courbe de Bézier associée à ces points
est définie par :
d
P (t) = Pi Bi,d (t) (2.17)
i=0
où :
d!
Bi,d (t) = Cid ti (1 − t)d−i avec Cid = (2.18)
i!(d − i)!
44
INTERNET
Voici un exemple de courbe de Bézier :
P
p 3
P
p 2
P
p 1
Les surfaces de Bézier peuvent se définir à partir des courbes de Bézier : si on note
(Pi,j )i∈[0,n],j∈[0,m] les points de contrôle, alors la surface de Bézier est définie par :
n m
P (s, t) = Pi,j Bi,n (s)Bj,m(t) (2.19)
i=0 j=0
où :
– Ni,1 (u) = 1 si ti ≤ u ≤ ti+1
– Ni,1 (u) = 0 sinon
ti+k −u
– Et pour k = 0, Ni,k (u) = ti+k−1u−ti
N
−ti i,k−1
(u) + ti+k N
−ti+1 i+1,k−1
(u)
Les (ti )i∈[0,d+k] étant des réels quelconques. Ici, nous avons pris :
– ti = 0 si i < k
– ti = i − k + 1 si k ≤ i ≤ d
– ti = d − k + 1 si i ≤ d + k
De manière analogue aux surfaces de Bézier, on définit une surface B-Spline ayant pour
points de contrôle les (Pi,j )i∈[0,n],j∈[0,m] par :
n m
P (s, t) = Pi,j Ni,k (s)Nj,l (t) (2.21)
i=0 j=0
45
CHAPITRE 2. L ASSISTANCE GRAPHIQUE POUR LE TELETRAVAIL
avec k et l les degrés des deux courbes B-Splines asociées à leurs points de contrôle.
En fixant le nombre de points contrôle de la surface à 16 points, on peut expliciter
matriciellement l’équation de la surface B-Spline :
⎧
⎨ x(s, t) = S.MBs .GBsx .MBs
t
.T t
t
y(s, t) = S.MBs .GBsy .MBs .T t (2.22)
⎩
z(s, t) = S.MBs .GBsz .MBs .T t
t
Avec :
T = t3 t2 t 1 (2.23)
S= s3 s2 s 1 (2.24)
⎛ ⎞
−1 3 −3 1
1⎜ 3 −6 3 0 ⎟
MBs = ⎜ ⎟ (2.25)
6 ⎝ −3 0 3 0 ⎠
1 4 1 0
et ⎛ ⎞
P11 P12 P13 P14
⎜ P21 P22 P23 P24 ⎟
GBs =⎜
⎝ P31
⎟ (2.26)
P32 P33 P34 ⎠
P41 P42 P43 P44
Dans le cas où l’on ne possède pas d’équation paramétrée du guide que l’on veut
créer, on n’a pas de méthode générale et nous avons implanté des méthodes au cas par
cas. Par exemple, pour un cylindre, nous discrétisons les deux extrémités (ouvertures)
du cylindre par la méthode vue ci-dessus, puis nous relions les points qui se font face à
chaque extrémité.
La figure 2.20 montre des exemples de guides virtuels obtenus par ces méthodes :
46
INTERNET
souris. Nous présentons le modèle de projection des données 3D sur écran, nécessaire aux
méthodes d’extraction de la 3D à partir de points 2D et celles de détection de collision
entre le robot et son environnement, que nous décrivons par la suite.
Le modèle de la caméra graphique est une matrice M qui permet de transformer les
coordonnées (xo , yo, zo ) d’un point dans le repère objet (Ro ) (figure 2.21) en coordonnées
u et v d’un point de l’écran. Ce modèle résulte du produit de plusieurs matrices : mise à
l’échelle et translation d’origine, projection perspective et matrice de passage du repère
(Ro ) au repère (Rc ) (cf. § 3.2.2 pour une description détaillée concernant la modélisation
de la caméra). Cette matrice est de la forme :
⎡ ⎤
c11 c12 c13 c14
M = ⎣ c21 c22 c23 c24 ⎦ (2.27)
c31 c32 c33 c34
V
B
vo
U
Xo
Zo
uo
O O Yo
b (Ro)
f
Ecran
X Z
C Y
(Rc)
Ainsi, un point (x0 , y0, z0 ) de l’espace est représenté sur l’écran par le point de coor-
données (u, v) telles que :
⎡ ⎤
x0 ⎡ ⎤
⎢ y0 ⎥ s × u
M ×⎢ ⎥ ⎣
⎣ z0 ⎦ = s × v
⎦ (2.28)
s
1
L’utilisateur doit avoir la possibilité de manipuler ces objets virtuels (pour les placer
convenablement, par exemple), il est nécessaire qu’il puisse les sélectionner en les désignant
sur écran. Cette désignation (clic avec la souris par exemple) se traduit en coordonnées
(u, v) du point de l’écran où ce clic a eu lieu. Il faut donc déterminer quel objet l’utili-
sateur à voulu désigner par ce clic. Les coordonnées (u, v) correspondent à une droite D,
47
CHAPITRE 2. L ASSISTANCE GRAPHIQUE POUR LE TELETRAVAIL
d’équation : ⎡⎤
x ⎡ ⎤
⎢ y ⎥ s×u
(x, y, z) ∈ D ⇐⇒ ∃s, M × ⎢ ⎥ ⎣
⎣ z ⎦= s×v
⎦ (2.29)
s
1
Ensuite, il ne reste qu’à calculer quel objet possède le point qui est à la plus petite distance
de cette droite. Par exemple dans la figure 2.22, c’est l’objet 3 qui a été sélectionné (le
modèle 3D de cet objet étant connu).
Objet
V 1
(D)
U Objet
2
Objet
3
point séléctionné Xo
Zo
f
Ecran
(Ro) Yo
X Z O
C Y
(Rc)
On peut représenter un objet par une liste ordonnée de ses sommets et une liste des
couples de sommets qui forment une arête. Ainsi, ce cube de côté 1 mètre (figure 2.23)
peut être representé par :
(0, 0, 0), (0, 1, 0), (1, 1, 0), (1, 0, 0), (0, 0, 1), (0, 1, 1), (1, 1, 1), (1, 0, 1)
et
(1, 2), (2, 3), (3, 4), (4, 1), (5, 6), (6, 7), (7, 8), (8, 5), (1, 5), (2, 6), (3, 7), (4, 8)
Ainsi, on peut associer à un objet un graphe G = (X, U) où X est un ensemble dont
les éléments sont appelés sommets et U ⊂ X × X est un ensemble dont les éléments
sont appelés arcs. On peut alors définir l’application V qui à tout sommet x de X associe
l’ensemble de ses voisins, c’est à dire :
48
INTERNET
6
7
3 2
5
8
1
4
∆(2) = ∆(4) = ∆(5) = (1, 0, 0) ; ∆(3) = ∆(6) = ∆(8) = (0.5, 0, 0) et ∆(7) = (0.25, 0, 0)
On obtient donc :
7 6
8 5
2
3
1
4
Pour effectuer la déformation, nous avons vu que nous avons besoin d’un point ini-
tial (x0 ), d’une déformation initiale (∆0 ), du facteur de propagation initial et du facteur
de dégradation de la propagation. Les deux derniers facteurs peuvent être demandés à
l’utilisateur à l’aide d’une interface. Mais, pour faciliter l’utilisation des déformations,
nous souhaitons que l’utilisateur sélectionne avec la souris le point de l’objet à considérer
comme initial, puis qu’il indique (sans relâcher le bouton de la souris) l’endroit où le point
49
CHAPITRE 2. L ASSISTANCE GRAPHIQUE POUR LE TELETRAVAIL
La sélection du point se faisant sur écran, et donc sur un plan, il faut dans un premier
temps chercher quel point de l’objet a pour image le point sélectionné par l’utilisateur
(cf. § 2.2.2). De plus, on ne peut pas établir une bijection entre un déplacement dans le
plan de l’écran et un déplacement dans l’espace, sauf si l’on impose une condition sur les
degrés de liberté de l’objet. Ainsi, si on décide de fixer la composante en z de ∆0 à 0, tout
déplacement sur l’écran pourra être traduit en un déplacement dans l’espace. En outre,
lorsque l’objet a beaucoup de points, la valeur de la déformation pour les points éloignés
du point initial est très petite. Pour diminuer le temps de calcul, nous avons donc permis
à l’utilisateur d’imposer un seuil à partir duquel les déformations ne sont plus prises en
compte.
La figure 2.25 montre quelques exemples de déformation :
Fig. 2.25 – Plan, Cube ouvert et Cylindre : En haut, avant déformation ; En bas après
déformation avec p = 0.99 et f = 0.9
2.2.2.3.a Définition :
Pour que les guides puissent jouer un rôle autre que celui d’un simple indicateur visuel,
il faut qu’ils aient une consistance. En effet, il ne faut pas laisser l’utilisateur traverser
ces guides si par exemple ils sont supposés limiter le champ d’action. Ainsi, à chaque fois
que l’utilisateur rentrera en contact avec le guide, il faudra lui indiquer qu’il ne peut plus
avancer dans cette direction. C’est ce contact que l’on nomme “collision” (figure 2.26).
Nous avons développé deux méthodes de détection de collisions. La première est ana-
lytique, la seconde est géométrique.
50
INTERNET
Guide virtuel
Fig. 2.26 – Collision entre l’effecteur du robot et un objet guide sous forme d’une demi-
sphère
Tab. 2.1 – Les paramètres des guides virtuels pour la détection des collisions.
51
CHAPITRE 2. L ASSISTANCE GRAPHIQUE POUR LE TELETRAVAIL
ε2 ε2 εε21 ε2
2
Superellipsoı̈de x
a1
+ ay2 2 + az3 1 = 1
ε2
ε2 ε2 εε21 1 ε2
2 2 1
Supertoroı̈de x
a1
+ y
a2
− a4 + z
a3
=1
Tab. 2.2 – Les équations des guides virtuels pour la détection des collisions
b1 a1 b1 a1
H H
a b2 b2
a2 a2
c
R
a
Fig. 2.27 – La géométrie des guides : de gauche à droite : Cube, (cylindre ou cône ou
tube), (cône ou tube droits), plan, disque.
52
INTERNET
Il faut donc à tout moment calculer la distance entre le robot et les arêtes du guide. On
définit la distance entre un point M et un segment [AB] comme étant :
−−→
d(M, [AB]) = min{ MN , N ∈ [AB]} (2.32)
Ainsi, si un point “E” représente l’extrémité de l’effecteur du robot, alors, nous dirons
qu’il y a collision, si la distance du point “E” aux arêtes définissant l’objet est inférieure
à un certain seuil “d” (figure 2.28).
d d
A B
Fig. 2.28 – Zone de collision de seuil “d” autour d’un segment [AB]
Pour un seuil fixé, l’efficacité de cette méthode grandit avec le nombre d’arêtes définiss-
ant l’objet. Comme nous l’avons représenté dans la figure 2.29, si les arêtes de l’objet
sont trop espacées, il apparaı̂t des trous dans lesquels l’effecteur du robot pourra passer.
Ainsi, il faudrait augmenter le nombre d’arêtes pour avoir de meilleurs résultats, mais
cela réduirait la visibilité à l’écran (certaines parties de l’environnement seraient cachées
par le guide).
Trou
Zone de collision C
A
Arete
B
53
CHAPITRE 2. L ASSISTANCE GRAPHIQUE POUR LE TELETRAVAIL
Fig. 2.30 – Modèle utilisé à l’écran (en haut) et modèle utilisé pour les calculs (en bas)
est effectué pour créer une nouvelle sphère de sécurité. Cette méthode permet de réduire
considérablement le temps de calcul des détections de collision.
sphère de sécurité
54
2.3. LES PROPRIETES DES GUIDES VIRTUELS
Un guide virtuel simple est représenté par une simple primitive géométrique. Elle peut
être un segment de droite, un plan ou bien un volume défini par l’une des équations du
paragraphe cf. § 2.2.2. Ces guides canoniques sont généralement utilisés pour réaliser
des tâches simples telles que le suivi d’une ligne droite, évitement d’obstacles (des guides
virtuels actifs avec un champ répulsif) ou bien atteindre un objet dans l’environnement
virtuel (des guides virtuels actifs avec champ attractif). La figure 2.32 montre un exemple
de guide virtuel simple (primitive cône) qui peut être utilisé pour aider l’opérateur à
déplacer l’effecteur du robot jusqu’à la cible.
Un guide virtuel composé est constitué de plusieurs guides virtuels simples (un en-
semble de segments définissant une trajectoire, un ensemble de plans ou bien un ensemble
55
CHAPITRE 2. L ASSISTANCE GRAPHIQUE POUR LE TELETRAVAIL
Cible
Fig. 2.32 – Exemple de “guide virtuel simple”, pour assister l’opérateur et/ou le robot à
atteindre une cible
d’objets de forme quelconque). L’opérateur peut créer différents types de guides cano-
niques et peut lier ces guides simples entre eux pour former un guide composé. Ces types
de guides sont généralement utilisés pour réaliser des tâches de téléopération complexes
tel que suivre une trajectoire quelconque ou bien assembler et désassembler des objets.
La figure 2.33 montre un guide virtuel composé, utilisé pour décrocher un objet depuis
son support métallique (cf. § 4.1). Il s’agit d’une combinaison de 3 guides simples (sous
forme de cylindres). Un autre exemple de guide virtuel composé est donné par la figure
2.34. Il est constitué par 2 guides simples (2 plans parallèles). Ce guide composé permet
d’aider l’opérateur et/ou un robot mobile à traverser une porte.
Cylindre 3 Cylindre 2
Cylindre 1
Fig. 2.33 – Exemple de “guide virtuel composé”, pour assister l’opérateur et/ou l’effecteur
du robot à suivre une trajectoire et manipuler un objet
Un guide virtuel (simple ou composé) est dit passif lorsque son utilisation est limitée
à l’assistance à la perception de l’opérateur (il n’a pas d’effet direct sur le robot ni sur
son environnement).
Un guide virtuel (simple ou composé) est dit actif lorsque son utilisation a un effet
direct sur le robot ou sur son environnement. Les guides actifs peuvent se décomposer en
deux catégories :
56
2.3. LES PROPRIETES DES GUIDES VIRTUELS
Porte
Fig. 2.34 – Exemple de “guide virtuel composé”, pour assister l’opérateur et/ou un robot
mobile à traverser un porte
Ob jet
Fig. 2.35 – Exemple de “guide virtuel répulsif”, à gauche, une barrière et à droite, un
volume englobant répulsif
57
CHAPITRE 2. L ASSISTANCE GRAPHIQUE POUR LE TELETRAVAIL
Entrée
de l’outil
Objet à atteindre
Fig. 2.36 – Exemple de “guide virtuel attractif”, pour atteindre un objet de l’environne-
ment avec un outil porté par le robot
Cinq types de données ont été définis pour représenter un guide virtuel. Chaque type
de donnée est représenté dans un fichier. Ces fichiers sont générés au moment de la création
d’un guide virtuel comme le montre la figure 2.37.
Soit par exemple “nom guide”, le nom associé à un guide virtuel donné, le fichier
contenant le modèle de ce guide sera donc “nom guide.obj”, un modèle filaire faible-
ment discrétisé (avec peu de points et d’arêtes). Ce fichier est utilisé généralement pour
l’affichage sur écran et la détection de collisions si nous possédons l’équation de ce guide.
Dans le cas où nous ne disposons pas de l’équation du guide virtuel (si le guide a subi une
déformation par exemple), alors le fichier “nom guide.obj” est utilisé seulement pour
l’affichage et un autre fichier “nom guide.obj2”, un modèle fortement discrétisé (avec
beaucoup de points et d’arêtes) est utilisé pour la détection de collisions.
Les paramètres de l’équation du guide virtuel sont stockés dans un fichier “nom guide.ob-
j.equ”. Ces paramètres sont chargés en mémoire et utilisés pour le calcul des tests d’ap-
partenance d’un point 3D au guide virtuel et aussi lors de la détection de collisions entre
l’effecteur du robot et le guide en question.
Une matrice homogène contenant la position et l’orientation du guide virtuel par rap-
port au référentiel de travail, est stockée dans le fichier “nom guide.obj.mat”, elle est
58
2.3. LES PROPRIETES DES GUIDES VIRTUELS
Paramètres de Modéle géométrique
l’équation du guide pour l’affichage
.obj.equ .obj
Propriètés du guide
.obj.guide
.obj.mat .obj2
Création du guide
X Y : Y utilise X
Crée un fichier
Fig. 2.37 – Représentation des différents types de données générés lors de la création d’un
guide virtuel
Les propriétés du guide virtuel sont regroupées dans un fichier “nom guide.obj.guide”.
Il contient une structure de données correspondant au formalisme que nous avons utilisé et
implanté. Cette structure de données (figure 2.38) contient un certain nombre de champs
que nous avons jugé utiles pour définir les propriétés d’un guide virtuel.
– Nom guide : Permet l’identification d’un guide virtuel
– Type guide : Définit le type du guide virtuel (simple, composé, passif, actif). Si
le guide est “composé” alors il contient des liens vers le guide précédent et le sui-
vant. Dans le cas où le guide est “actif”, alors il nous informe s’il est “répulsif” ou
“attractif”.
59
CHAPITRE 2. L ASSISTANCE GRAPHIQUE POUR LE TELETRAVAIL
Exemples :
guide_saisie
^
guide_dépot
guide_navigation, etc ...
Nom_guide
Nom_guide_précédent
Simple Nom_guide_suivant
Composé
Type_guide Passif
Actif Répulsif
Attractif
Tx, Ty, Tz
Réferentiel Rx, Ry, Rz
Nom_objet_environnement
Statique Coordonnées du point de passage
Attachement Dynamique
Null
Nom_guide_math
Zone d’influence Paramètres
Fig. 2.38 – Schéma général de la structure des propriétés d’un guide virtuel
Une fois le guide activé, il reste à déterminer les actions ou les opérations à réaliser
en présence de ce guide virtuel, c’est ce que nous appelons la “Fonction” du guide.
Généralement cette fonction est issue d’une combinaison des actions que réalise l’opérateur
avec le robot virtuel et des fonctions définissant le type du guide. Si le guide est “pas-
sif” alors il est appelé “guide d’assistance libre”, s’il est “actif” (répulsif ou attractif)
alors il est appelé “guide d’assistance partagée ou semi-autonome”. La fonction
du guide peut aussi se limiter à l’exécution d’une fonction définie par le guide permettant
une exécution automatique de la tâche par le robot virtuel. Dans ce cas ce guide devient
“autonome” et est appelé “guide d’assistance autonome”.
La fonction du guide n’a plus d’effet sur le robot et sur l’opérateur, lorsque le robot
a atteint un état final désiré (dans le cas d’un guide d’assistance à l’opérateur et d’un
guide d’assistance partagée), ou encore la fin de l’exécution automatique de la tâche par
le robot (dans le cas d’un guide d’assistance autonome). Il s’agit de désactiver la fonction
du guide, ce qui définit la “Post-condition”.
Dans la méthodologie UML l’étude des cas d’utilisation a pour objectif de déterminer
ce que chaque acteur (intervenant) attend du système. En effet dans notre cas, les acteurs
potentiels sont au nombre de trois :
– Utilisateur de guide.
– Superviseur.
– Administrateur de guide.
Le fait que l’utilisation des guides virtuels peut se faire par Internet, et par n’importe
quel client (opérateur) connecté au réseau, il est nécessaire de déterminer le statut de cet
opérateur (utilisateur, superviseur ou administrateur). Le tableau 2.3 résume ces différents
60
2.4. BILAN
cas d’utilisation. Des applications mettant en œuvre des acteurs et des guides virtuels,
sont données dans le chapitre 4.
Tab. 2.3 – Les différents cas d’utilisation des guides virtuels associés à chaque acteur.
2.4 Bilan
Dans ce chapitre, les notions de mécanisme et de guide virtuel indispensables à un
système de réalité augmentée basé sur un retour prédictif sont présentées. Nous avons aussi
présenté les méthodes analytiques et géométriques de création, de représentation et de ma-
nipulation des objets virtuels en général et en particulier des guides virtuels. Nous avons
proposé un nouveau formalisme pour les guides virtuels afin de les rendre paramétrables,
évolutifs et utilisables comme de véritables outils d’assistance à la téléopération (ce for-
malisme est implanté, des exemples sont donnés dans le chapitre 4).
Cependant, pour télétravailler sur Internet, il est nécessaire que ces outils d’assistance
soient portables et partageables (lors d’un travail coopératif par exemple). Il est aussi
nécessaire, que l’environnement virtuel (robot, objet, etc.) soit portable ainsi que tous
les autres modules utiles à la réalisation d’un système de télétravail (IHM, retour vidéo,
contrôle des robots réel et virtuel, etc.). Cette partie est présentée dans le chapitre suivant.
61
CHAPITRE 2. L ASSISTANCE GRAPHIQUE POUR LE TELETRAVAIL
62
Chapitre 3
Le système expérimental de télétravail
proposé
Dans ce chapitre, nous étudions l’ensemble des problématiques posées dans le pre-
mier chapitre à savoir, les outils logiciels et matériels nécessaires pour la mise œuvre d’un
système de télétravail, l’intégration des nouveaux concepts et des solutions déjà apportées
aux problèmes liés à la télérobotique, sur une plate-forme universelle et à moindre coût.
Nous verrons, comment rendre l’utilisation des systèmes de télétravail suffisamment souple
et intuitive pour l’opérateur, et comment les outils d’assistance présentés dans le chapitre
précédent peuvent être utilisés pour améliorer les performances de l’opérateur lors du
télétravail.
Nous commençons ce chapitre par une présentation des caractéristiques d’un système
de télétravail idéal. Ensuite, nous présentons les méthodes nécessaires pour le contrôle en
réalité augmentée. Il s’agit des méthodes de modélisation géométrique de l’environnement
et de calibration de la caméra et du robot.
Dans la quatrième section, nous présentons l’architecture réseau et les différents pro-
tocoles de communication de l’architecture client/serveur du système ARITI.
63
CHAPITRE 3. LE SYSTEME EXPERIMENTAL DE TELETRAVAIL PROPOSE
64
CONTRÔLE EN RÉALITÉE AUGMENTÉE
sont les entités de la scène tels que le robot, les objets de l’environnement ainsi que les
guides virtuels. Les données Topologiques quant à elles définissent les relations entre ces
entités et les constituants d’une même entité. Il ne s’agit pas ici de faire un état de
l’art complet sur les méthodes de représentations d’objets 3D. Mais nous allons décrire
brièvement les plus connues et ensuite nous allons présenter celles que nous avons choisi
pour télétravailler sur Internet.
Il existe trois catégories de représentation : filaire, surfacique et volumique.
Dans le cas le plus fréquent des polyèdres, les limites de l’objet sont des plans. Il
est alors défini par ses faces, ses arêtes et ses sommets ; d’où l’appellation de modèle
Face-Arête-Sommet (figure3.1). Deux façons permettent de construire le modèle :
– la première repose sur la définition d’un modèle fil de fer auquel sont associées les
surfaces correspondantes.
– la seconde consiste à balayer un contour de base le long d’un parcours linéaire ou
non linéaire pour créer le solide correspondant.
65
CHAPITRE 3. LE SYSTEME EXPERIMENTAL DE TELETRAVAIL PROPOSE
Sommets
^
Aretes
Polyèdre
Faces
feuilles sont des solides de base et les nœuds sont des opérations comme : l’union, l’inter-
section, la différence, les transformations géométriques composées de translations ou de
rotations.
66
CONTRÔLE EN RÉALITÉE AUGMENTÉE
Les volumes peuvent être représentés par Enumération Spatiale. Celle-ci contenant plu-
sieurs sous catégories (Pampagnin, 1990), nous présentons quelque unes :
– décomposition primaire de la scène en Voxels. Dans ce cas les éléments de volume
sont des cubes de taille fixée auxquels sont attribuées des valeurs de vérité concernant
la présence ou non de la matière. La méthode est simple mais l’espace mémoire
occupé est prohibitif.
– décomposition optimisée de la scène en Octrees. L’espace 3D est discrétisé de manière
récursive. Si un cube n’est pas homogène (plein ou vide), il est décomposé en huit
cubes plus petits et ainsi de suite. On obtient une description arborescente dont les
feuilles sont des cubes “homogènes”. Un exemple de l’utilisation de l’octree est la
représentation de l’espace libre dans l’espace de configuration d’un robot manipu-
lateur. Les deux décompositions nécessitent trop de place mémoire.
Nous rappelons que notre objectif n’est pas seulement de représenter le robot et les
objets, mais surtout de les représenter pour qu’ils puissent être utilisés pour le télétravail
via Internet. Par conséquent, ils ne doivent pas dépendre d’une certaine plate forme ou de
librairies graphiques particulières qui empêcheraient leurs mobilités (utilisation à distance
via le réseau Internet). De plus, ces objets ne doivent pas être lourds à l’affichage et à la
manipulation et surtout ne doivent pas trop encombrer l’interface de télétravail fournie
à l’utilisateur. Nous avons donc choisi le modèle fil de fer pour représenter le robot, les
objets et les guides virtuels.
Le premier niveau de représentation du modèle se situe au niveau des fichiers. Chaque
fichier est au format wavefront 1 dont quelques éléments principaux sont décrits comme
suit :
v x y z : Introduit un nouveau point de coordonnées (x, y, z) dans le modèle.
f p1 p2 p3 p4 ... : Décrit un polygone formé des points p1 p2 p3 p4 ...
l p1 p2 : Crée un lien (une arête) entre les points p1 et p2 .
Un modèle “fil de fer” d’un objet est constitué de l’ensemble des points du modèle (appelés
sommets) et de l’ensemble des arêtes de l’objet.
Ainsi, nous définissons un objet par :
• Le tableau des coordonnées des sommets de l’objet.
• Le tableau des couples des sommets qui forment une arête.
La figure 3.3 illustre un exemple de représentation d’un triangle avec ce format.
1
format standard et stable utilisé pour la représentation physique des objets sous Java. Il est supporté
par la plupart des navigateurs Internet
67
CHAPITRE 3. LE SYSTEME EXPERIMENTAL DE TELETRAVAIL PROPOSE
2
(1, 1, 0)
1 3
(0, 0, 0) (3, 0, 0)
0 0 0 1 1 0 3 0 0
1 2 3
68
CONTRÔLE EN RÉALITÉE AUGMENTÉE
V
Zo
Mext : Tco Mint : Tic
Xc /Zc = x /f
(3.1)
Yc /Zc = y /f
Projection dans le plan image :
C’est la transformation qui fait passer du repère (Rc ) au repère (Ri ). Cette trans-
formation est une homothétie suivant les deux axes Xc et Yc ; puis un changement
d’origine.
On obtient le modèle suivant :
u = ki · x + u0 = ku · Xc
Zc
+ u 0 , ku = ki · f
(3.2)
v = kj · y + v0 = kv · Zc + v0 , kv = kj · f
Yc
Mint(3×4) est le modèle interne, matrice de passage de (Rc ) à (Ri ) et les paramètres
f, ki , kj , u0, v0 s’appellent les paramètres internes de la caméra (u0 , v0 représentent
l’intersection entre l’axe optique et le plan image, ki , kj sont les facteurs d’échelle
exprimant l’homothétie entre plan caméra et plan image et f la distance focale de
l’objectif)
69
CHAPITRE 3. LE SYSTEME EXPERIMENTAL DE TELETRAVAIL PROPOSE
C’est la transformation qui permet de passer du repère (R0 ) au repère (Rc ). Un point
de la scène ne peut être connu que par rapport à un repère lié à celle-ci, appelé repère de
travail (R0 ). Trois rotations sont possibles suivant les angles (θx , θy , θz ) et trois translations
sont possibles suivant le vecteur (ta , tb , tc )t permettant de définir la situation de (Rc ) par
rapport à (R0 ). Un point P , de coordonnées X, Y, Z connues dans le repère (R0 ), est
représenté dans le repère (Rc ) par :
⎛ ⎞ ⎛ ⎞ ⎛ ⎞
Xc X X
⎜ Yc ⎟ R3×3 T3×1 ⎜ Y ⎟ ⎜ Y ⎟
⎜ ⎟ ·⎜ ⎟ = Mext (4 × 4) · ⎜ ⎟
⎝ Zc ⎠ = 0 1 ⎝ Z ⎠ ⎝ Z ⎠
(3.4)
1 1 1
où ⎛ ⎞ ⎛ ⎞
r11 r12 r13 ta
R3×3 = ⎝ r21 r22 r23 ⎠ et T3×1 = ⎝ tb ⎠
r31 r32 r33 tc
Mext (4 × 4) est le modèle externe, exprimant la situation (position et orientation) de
la caméra par rapport au repère objet (R0 ).
Les paramètres (ta , tb , tc , θx , θy , θz ), qui sont déterminés à partir de Mext (4 × 4), sont
appelés les paramètres externes de la caméra.
La matrice qui permet de passer directement du repère de travail (R0 ) au repère (Ri )
lié au plan d’affichage, permet de déterminer le modèle global de la caméra en composant
les modèles interne et externe :
⎛ ⎞
⎛ ⎞ ⎛ ⎞ Xc
Zc · u ki · f 0 u0 0 ⎜ Yc ⎟
⎝ Zc · v ⎠ = ⎝ 0 kj · f v0 0 ⎠ · ⎜⎝ Zc ⎠
⎟
Zc 0 0 1 0
1
⎛ ⎞
⎛ ⎞ X
ki · f 0 u0 0 ⎜ Y ⎟
R3×3 T3×1
=⎝ 0 kj · f v0 0 ⎠ · ·⎜ ⎟
⎝ Z ⎠
0 1
0 0 1 0
1
⎛ ⎞
X
⎜ Y ⎟
= Mint · Mext · ⎜ ⎟
⎝ Z ⎠
1
qui s’écrit :
⎛
⎞
⎛ ⎞ X
s·u ⎜ ⎟
⎝ s · v ⎠ = C3×4 · ⎜ Y ⎟ (3.5)
⎝ Z ⎠
s
1
70
CONTRÔLE EN RÉALITÉE AUGMENTÉE
avec ⎛ ⎞
c11 c12 c13 c14
C3×4 = ⎝ c21 c22 c23 c24 ⎠ et s = Zc
c31 c32 c33 c34
la coordonée s = Zc est appelé la coordonnée homogène.
C3×4 représente le modèle global de la caméra, qui exprime la relation entre le repère
objet (R0 ) et le repère image (Ri ). Les paramètres cij (i = 1..3, j = 1..4) sont appelés les
paramètres globaux de la caméra.
Ce modèle exprime l’équation du rayon optique passant par le point image p des coor-
données (u, v). La relation (Éq. (3.6)) donne deux équations indépendantes caractérisant
le modèle inverse de la caméra qui peut se mettre sous la forme :
pt · −
→ + au = 0
nu
pt · −
→ + av = 0 (3.9)
nv
où
⎛ ⎞ ⎛ ⎞
c11 − u · c31 c21 − v · c31
−
→ = ⎝ c21 − u · c32 ⎠ ,
nu −
→ = ⎝ c22 − v · c32 ⎠
nv
c13 − u · c33 c23 − v · c33
71
CHAPITRE 3. LE SYSTEME EXPERIMENTAL DE TELETRAVAIL PROPOSE
et
au = (c14 − u · c34 ), av = (c24 − v · c34 )
La relation (Éq. (3.9)) représente deux équations de plans, où −
→ et −
nu → sont les nor-
nv
males à ceux-ci. Le rayon optique, contenant le point P et son image p, est fourni par
l’intersection de ces deux plans. Le vecteur directeur du rayon optique définissant le modèle
géométrique inverse de la caméra est donné par :
−
→
r =−
→∧−
nu →
nv (3.10)
72
CONTRÔLE EN RÉALITÉE AUGMENTÉE
Tige
Tourelle
Effecteur du robot
Support
Grande base
pointe de la tige
o Zo (Ro)
Oy
Ox
Xo
a
b Ym
Xm
Zm (Rm)
Yt
dx dz
(Rt) Xt
Zt
73
CHAPITRE 3. LE SYSTEME EXPERIMENTAL DE TELETRAVAIL PROPOSE
⎛ ⎞ ⎛ ⎞ ⎛ ⎞ ⎛ ⎞
xm Cθy Sθx · Sθy Cθx · Sθy 0 1 0 0 a 0
⎜ ym ⎟ ⎜ 0 Cθx −Sθx ⎟ ⎜
0 ⎟ ⎜ 0 1 ⎟
0 b ⎟ ⎜ 0⎜ ⎟
⎜ ⎟ ⎜ · · ⎟
⎝ zm ⎠ = ⎝ −Sθy Sθx · Cθy Cθx · Cθy 0 ⎠ ⎝ 0 0 1 −ρ ⎠ ⎝ 0 ⎠ (3.13)
1 0 0 0 1 0 0 0 1 1
Soit finalement le MGD qui exprime les coordonnées dans le repère objet en fonction
des autres paramètres :
⎧
⎨ xo = tox + dx + a · Cθy + b · Sθx · Sθy − ρ · Cθx · Sθy
yo = toy + b · Cθx + ρ · Sθx (3.14)
⎩
zo = toz + dz − a · Sθy + b · Sθx · Cθy − ρ · Cθx · Cθy
avec
Cθ = cos θ et Sθ = sin θ
74
CONTRÔLE EN RÉALITÉE AUGMENTÉE
⎧ √
⎪
⎨ θx = 2 · arctan(
ρ∓ ρ2 −(yo −toy )2 +b2
)
yo −tyo +b
d = xo − tox − a · Cθy − b · Sθy · Sθx + ρ · Sθy · Cθx (3.15)
⎪
⎩ x
dz = zo − toz + a · Sθy − b · Cθy · Sθx + ρ · Cθy · Cθx
√
ρ− ρ2 −(yo −toy )2 +b2
La solution retenue est θx = 2 · arctan( yo −tyo +b
)
⎡ ⎤
ρ
⎡ ⎤ ⎢ a ⎥ ⎡ ⎤
−Cθx · Sθy Cθy Sθx · Sθy 1 0 0 ⎢ ⎥ xo − dx
⎢ b ⎥
⎣ Sθx 0 Cθx 0 1 0 ·⎢
⎦
⎢
⎥=⎣
⎥ yo ⎦ (3.16)
⎢ tox ⎥
−Cθx · Cθy −Sθy Sθx · Cθy 0 0 1 ⎣ ⎦ zo − dz
toy
toz
Donc la connaissance d’un point 3D dans le repère objet ainsi que les consignes moteurs
correspondantes (xo , yo , zo , dx , dz , θx , θy ) donne 3 équations à 6 inconnues. Il faut donc 2
points au moins pour pouvoir estimer les 6 inconnues. Nous avons utilisé 4 points et
la méthode des moindres carrés linéaire pour estimer ces paramètres, bien que d’autres
méthodes d’optimisation peuvent être utilisées, par exemple la méthode de Levenberg-
Marquardt (Shaheen, 1999). Mais les résultats que nous avons obtenus sont satisfaisants
par rapport à l’objectif que nous nous sommes fixé (une précision inférieure au mm) Le
tableau 3.1 montre les valeurs des paramètres obtenues par cette méthode.
75
CHAPITRE 3. LE SYSTEME EXPERIMENTAL DE TELETRAVAIL PROPOSE
76
3.3. DESCRIPTION DU SYSTEME ARITI
Site maitre
^
Liaison RS 232
Site esclave
Dans ce site se trouve un robot et une caméra vidéo ainsi que le module de commu-
nication serveur3 . Ce dernier est constitué de deux serveurs, un pour les images vidéo et
un autre pour les consignes robot. Le premier serveur se charge de capturer des images
via la carte d’acquisition vidéo, de les compresser (voir les méthodes de compression en
annexe A) et ensuite les envoie directement aux différents clients connectés. Le deuxième
serveur quant à lui est chargé de récupérer les ordres envoyés par le client et les transmet
directement au robot pour l’exécution (il peut se charger éventuellement de transférer des
informations depuis le robot vers le client).
Le module d’IHM quant à lui permet à l’opérateur de spécifier le mode de travail désiré
en rentrant en interaction avec un des trois modules : Téléopération, Téléprogrammation
3
L’implantation logicielle de ce serveur est faite en C++
4
L’implantation logicielle de ce site est faite entièrement en JAVA afin de satisfaire le critère de
portabilité.
77
CHAPITRE 3. LE SYSTEME EXPERIMENTAL DE TELETRAVAIL PROPOSE
Opérateur
Télésupervision
Téléopération + Téléprogrammation
Télécoopération
Site opérateur
Réalité Mixée
(IHM) (RM)
Interface Homme Machine - RV & RA -
Client Client
Images Commandes
Module communication client
Communication
Internet / Intranet
Serveur Serveur
Site distant
Images Module communication serveur Commandes
Caméra Robot
78
3.3. DESCRIPTION DU SYSTEME ARITI
TéléRéalité
Il s’agit des données des environnements réel et virtuel. Les données de l’environnement
réel sont généralement perçues par des capteurs se trouvant sur le site réel. Dans notre cas
il s’agit des données 2D images vidéo (du robot et de son environnement) et des données
articulaires du robot (position et orientation). L’environnement virtuel est constitué de
données 3D pour la représentation graphique du robot et de son environnement (robot
virtuel, objets virtuels) et contient aussi un certain nombre d’outils virtuels d’assistance
tels que les guides virtuels. Ces deux types de données, réelles et virtuelles, sont combinés
pour former un Environnement Mixte (EM) avec lequel l’opérateur travaillera (figure
3.10).
Fig. 3.10 – Représentation des données réelles et virtuelles dans un environnement mixte
79
CHAPITRE 3. LE SYSTEME EXPERIMENTAL DE TELETRAVAIL PROPOSE
Afin d’aider l’opérateur à télétravailler, il est utile de lui fournir trois types d’assistance,
pour la perception de l’environnement, pour la commande du robot et pour la supervision
de tâches. La figure 3.11 illustre les trois types d’assistance fournis à l’opérateur humain
lors du télétravail.
Serveur Image
Serveur Commande
o
~
Assistance à la commande :
80
3.3. DESCRIPTION DU SYSTEME ARITI
Internet
Robot virtuel
+
Guides Virtuels
Etat du robot Robot réel
Joystick
Assistance à la supervision :
Il s’agit d’aider l’opérateur à vérifier le bon déroulement des tâches réalisées c’est-
à-dire, vérifier si les tâches réalisées par le robot virtuel ont correctement été faites
par le robot réel. En effet, la superposition permanente du monde virtuel sur le
monde réel permet une confirmation de la bonne exécution d’une tâche. La présence
d’un écart entre le monde virtuel et le monde réel, se traduit par des erreurs dues à
l’exécution de la tâche par le robot réel. Dans ce cas l’opérateur doit désactiver la
commande du robot réel et procéder au recalage du modèle virtuel sur l’image réelle
(afin que les deux mondes virtuel et réel soient superposés à nouveau) et ensuite
il activera la commande du robot réel (figure 3.14). Des informations textuelles
telles que “Cible atteinte “, “Objet saisi”, “Collision détectée”, ..., sont retournées
à l’opérateur pour l’informer de l’état des opérations réalisées.
réception
d’images
Image
réelle
Superposition OUI Mise à jour
OK ? image virtuelle
virtuelle / réelle
NON
Image Désactiver la
virtuelle commande réelle
81
CHAPITRE 3. LE SYSTEME EXPERIMENTAL DE TELETRAVAIL PROPOSE
les actions réalisées par le robot virtuel et les transmet directement au robot réel via le mo-
dule de communication. En effet l’opérateur travaille en temps réel avec une représentation
intermédiaire qui est l’environnement virtuel (robot virtuel, objets virtuels , etc.).
Dans ce mode de travail, l’opérateur peut être assisté par des guides virtuels (cf. § 2.1.2)
pour réaliser une tâche. Ces guides virtuels ont un rôle important en téléopération du fait
qu’ils permettent d’une part d’éviter au robot réel toute mauvaise manipulation de la
part de l’opérateur (erreurs involontaires dues à la fatigue ou tout simplement des erreurs
d’inattention) et d’autre part de travailler vite avec moins d’imprécision.
Selon les tâches à réaliser, l’opérateur peut utiliser des guides virtuels déjà existants
dans la base de données des guides, les modifier (changer leurs propriétés, les déformer,
etc.), ou bien il peut créer ses propres guides virtuels grâce au module “Création guides”.
Les figures 3.15 et 3.16 illustrent respectivement la téléopération sans et avec assistance
à la commande.
Opérateur
Robot virtuel
Opérateur +
Une autre tâche consistant à désigner une cible à l’écran et la faire suivre par les ro-
bots virtuel et réel est aussi gérée par ce module. Cette dernière tâche consiste à atteindre
un point 3D de l’espace obtenu à partir de deux points 2D écran (figure 3.17). Afin de
réaliser cette tâche, deux points de vue virtuels différents (deux fenêtres) sont utilisés.
Nous décrivons dans ce qui suit le principe et la méthode utilisée pour déterminer un
point 3D à partir de deux points 2D.
Soit (u1 , v1 ) les coordonnées 2D du premier point obtenu par la désignation sur la première
fenêtre et M(4 × 4) le modèle de la caméra graphique associé à cette fenêtre.
Soit (u2 , v2 ) les coordonnées 2D du deuxième point obtenu par la désignation sur la
82
3.3. DESCRIPTION DU SYSTEME ARITI
avec
A = x11 × u1 + x12 × v1 + x13
B = x21 × u1 + x22 × v1 + x23
A = x11 × u2 + x12 × v2 + x13
B = x21 × u1 + x22 × v2 + x23
En réalité, ce point 3D représente le centre d’une sphère virtuelle mobile appelée cible
mobile (peut être déplacée dans l’environnement virtuel). Ce concept peut être utilisé
pour le suivi d’objets en mouvement. En effet le robot peut suivre cet objet si une cible
mobile (guide virtuel) lui est attachée (voir le chapitre application cf. § 4.1).
83
CHAPITRE 3. LE SYSTEME EXPERIMENTAL DE TELETRAVAIL PROPOSE
Point 2D Cible 3D
Désignation
Opérateur
Ecran Objet
Point 2D
Taches
^ de + +
Opérateur de haut -
-
niveau Robot virtuel Robot Réel
Communication
84
3.3. DESCRIPTION DU SYSTEME ARITI
Superviseur
supervision
supervision supervision
supervision
commande
Superviseur Superviseur
Images réelles
et virtuelles
Client maitre
la Tâche Ti ”. Soit tpi le temps de préparation de chaque tâche Ti (pour i = 1..4) et tei le
temps d’exécution de cette tâche. Considérons les cas ou la mission peut être réalisée soit
par un seul opérateur (figure 3.20 (A) ) soit par plusieurs opérateurs en télécoopération
(figure 3.20 (B) ). Pour des raisons de bonne lisibilité, prenons tp1 = tp2 = tp3 = tp4 et
te1 = te2 = te3 = te4 .
Il existe deux possibilités pour réaliser cette mission, la première consiste à préparer
toute la mission et ensuite l’exécuter (préparer les tâches Ti (pour i = 1..4) et ensuite les
exécuter dans l’ordre). La deuxième possibilité consiste en une préparation et exécution
simultané des tâches Ti (pour i = 1..4) (P T1 , ET1 ensuite P T2 , ET2 , etc). Le temps total
de l’exécution de la mission est donné par
4 4
tm = tpi + tei (3.22)
i=1 i=1
85
CHAPITRE 3. LE SYSTEME EXPERIMENTAL DE TELETRAVAIL PROPOSE
4 4
tmc = ( tpi )/4 + tei (3.23)
i=1 i=1
Cette exemple illustre l’avantage que peut offrir un travail coopératif pour la réalisation
des missions complexes. En effet, la charge de travail induite par la complexité de la
mission est partagée entre plusieurs opérateurs et le temps de réalisation de la mission est
nettement réduit.
86
3.4. ARCHITECTURE RESEAU DU SYSTEME ARITI
INTERNET
Serveur ARITI
Serveur Web Commandes Images
PC Linux PC Linux
Le serveur image permet d’enregistrer une image capturée par la caméra, puis de l’en-
voyer, via le protocole TCP/IP, dans un format compressé. Il se peut aussi que le serveur
envoie les modifications de l’image (différence par rapport à l’image précédente) pour di-
minuer la taille du fichier compressé par exemple. Le serveur de commande quant à lui
permet de récupérer des commandes envoyées par le client et les transmet au robot réel
pour exécution.
Pour pouvoir effectuer une requête au serveur (réception d’images, envoi de com-
mandes), le client doit avant tout être identifié par un numéro qu’il obtient en faisant une
demande au serveur (images ou commandes) (en envoyant un caractère “0 par exemple)
(figure 3.22). Le nombre de clients maximum est 255 (car ce numéro de client est codé
sur un octet allant de 1 à 255, il peut être augmenté si le besoin se fait sentir).
87
CHAPITRE 3. LE SYSTEME EXPERIMENTAL DE TELETRAVAIL PROPOSE
Dès que le client a récupéré son numéro, il le renvoie au serveur pour obtenir une image
ou les modifications de l’image en format compressé (figure 3.23). En effet l’image vidéo
capturée par le serveur peut subir des pré-traitements et des compressions différentes. Le
client est informé du type du pré-traitement et/ou de la compression réalisée sur l’image
afin de la décompresser correctement. Nous appelons pré-traitement la différence entre
deux images I et I−1 (I−1 étant l’image déjà envoyée au client et I représente l’image
capturée). Avant d’envoyer une image au client, le serveur envoie en premier un octet
représentant le type de compression de l’image.
Nous présentons ici le codage des différents types de compression d’images envoyés au
client :
– “0” : Erreur : Aucune image n’est envoyée, dans le cas où on ne désire pas l’envoyer
à un client donné par exemple.
– “1” : Image Brut : L’image est envoyée sans compression.
– “2” : Compression Gzip : Un format de compression qui utilise la librairie “Zlib”
supportée par la plupart des navigateurs Internet. Ce type de compression est
généralement utilisé pour envoyer la première image aux clients. (voir annexe A
pour plus d’information sur cette méthode).
– “3” : Compression Gzip avec pré-traitement : L’image subit un pré-traitement
avant d’être compressée par Gzip. Ce format est utilisé généralement lorsqu’il y a
beaucoup de mouvements dans l’image (voir chapitre résultat pour plus de détails).
– “4” : Compression Huffman : C’est un algorithme de compression rapide et qui
fourni une bonne compression dans le cas où il y a peu de mouvements dans l’image.
– “5” : Compression Huffman avec pré-traitement : L’image subit un pré-
traitement avant d’être compressée avec Huffman. Ce format permet d’avoir un
taux de compression de l’image meilleur que le format Gzip avec pré-traitement. Il
est utilisé dans le cas où il y a peu de mouvements dans l’image.
Si le numéro vaut “0”, dans ce cas, le serveur cherche un numéro de libre (entre 1 et
255 par exemple). Si un numéro de libre est trouvé alors il est envoyé au client, sinon le
serveur renvoi le numéro “0” pour informer le client qu’il ne peut pas recevoir d’images
88
3.4. ARCHITECTURE RESEAU DU SYSTEME ARITI
89
CHAPITRE 3. LE SYSTEME EXPERIMENTAL DE TELETRAVAIL PROPOSE
Si le numéro et supérieur à “0” (le client dans ce cas est autorisé à recevoir des images),
alors le serveur prend l’image en cours, la compresse et l’envoi au client (figure 3.25 partie
3-B).
Dans la figure 3.25, est présenté le schéma de fonctionnement du serveur image, avec
en caractères gras, les fonctions réseaux C/C++ utilisées.
Pour pouvoir contrôler le robot, il faut qu’aucun autre client ne l’utilise. Si le robot
n’est pas libre, le serveur envoie le caractère “U” (pour dire que le robot est en cours
90
3.4. ARCHITECTURE RESEAU DU SYSTEME ARITI
De la même façon que le serveur image, le serveur commande peut être décomposé en
3 modules : “initialisation”, “attente d’une commande” et “gestion de la com-
mande avec le client” voir la figure 3.24.
Le module “initialisation” est le même que celui du serveur image et il est représenté
dans la figure 3.28 partie 1.
91
CHAPITRE 3. LE SYSTEME EXPERIMENTAL DE TELETRAVAIL PROPOSE
Fig. 3.27 – Protocole de communication entre le serveur de commande et les autres clients
superviseurs : le caractère “F désigne la demande de l’état final du robot
– Le sous module B : Enregistre les consignes envoyées par le client et les envoie
ensuite au robot réel pour exécution (figure 3.28 partie 3-B).
– Le sous module C : Vérifie si le robot est libre (n’est pas pris par un autre client),
dans ce cas, il procède à la vérification du mot de passe. Si le mot de passe est correct
alors il envoie au client une autorisation pour contrôler le robot (et la connexion
avec le robot est établie) sinon il informe le client que le mot de passe est mauvais.
Dans le cas où le robot est en cours d’utilisation par un autre client, il informe le
92
3.5. BILAN
client que le robot est déjà pris (figure 3.28 partie 3-C).
Chaque numéro de client est lié à une adresse IP, donc un client ne peut pas perturber
un autre client qui se trouve sur une autre machine (au cas où un client défaillant utilise
un No de client déjà pris par un autre !).
Le mot de passe est crypté pour éviter qu’il soit facilement lu sur le réseau. Le cryptage
ne garantit pas à cent pour cent la confidentialité du mot de passe.
3.5 Bilan
Dans ce chapitre, nous avons présenté les méthodes et les outils nécessaires pour un
contrôle en réalité augmentée, à savoir la modélisation de l’environnement et la calibra-
tion de la caméra et du robot. Nous avons aussi présenté le système expérimental de
télétravail baptisé ARITI. L’interface de ce système est implantée en langage JAVA dans
le but de la rendre portable et indépendante des systèmes d’exploitation sur lesquels elle
va s’exécuter. Nous avons insisté sur des détails de l’architecture client/serveur réalisée
afin de montrer d’un côté, sa complexité et de l’autre côté, la faisabilité conceptuelle et
technique d’une architecture destinée à supporter un télétravail d’une part et un travail
coopératif d’autre part.
Par ailleurs, nous avons présenté les trois modes de télétravail, à savoir la téléopération,
la téléprogrammation de tâches et la télécoopération/télésupervision. Ce dernier mode uti-
lise un retour prédictif distribué, afin de permettre aux différents opérateurs de percevoir
à la fois, les images vidéo de l’environnement réel distant et la mise à jour 3D de l’envi-
ronnement virtuel au niveau de chaque client superviseur.
93
CHAPITRE 3. LE SYSTEME EXPERIMENTAL DE TELETRAVAIL PROPOSE
D
C
94
Chapitre 4
Applications
Nous présentons ensuite une application d’un projet en cours de réalisation pour l’assis-
tance aux personnes handicapées (un projet en collaboration avec l’Association Française
contre la Miopathie (AFM)) utilisant un robot mobile.
95
CHAPITRE 4. APPLICATIONS
Effecteur du robot
Zone de manipulation
Tourelle Cylindres en
(2 rotations) polystyrène
1
2 Support
3 Métallique
Z Y
Support
(commandé en Z ) X
Grande base
(commandée en X)
Le robot utilisé est un banc d’essai à 4 ddl, il peut effectuer deux translations parallèles
au sol et deux rotations en site et azimut. Chaque composante du robot est commandée
par un moteur pas à pas via une armoire de commande (figure 4.2 (a)), le robot peut
aussi être commandé par une liaison série RS232 en positionnant l’aiguilleur (“switch”)
en mode réseau.
La zone de manipulation est constituée de 3 cylindres en polystyrène numérotés (1,2 et
3) de 20 cm de diamètre accrochés sur des supports métalliques (figure 4.1). La figure
4.3 montre les caractéristiques de l’objet et de son support. Ces supports sont fixés à une
mire métallique située à 1 mètre environ de l’effecteur du robot.
La visualisation du robot et de son environnement est réalisée par une caméra noir et
blanc (focale de 8,5 mm) montée sur une tourelle (figure 4.2 (b)).
(a) (b)
Armoire de commande Tourelle
Fig. 4.2 – Image de l’armoire de commande (a) et de la caméra montée sur une tourelle
(b)
96
4.1. TELETRAVAIL AVEC UN ROBOT A 4 DDL
2 cms
4 cms
20 cms
Support
métallique
22 cms
Cette version est destinée à l’opérateur (client) dit “administrateur” qui a pour rôle
la mise à jour éventuelle et l’administration du système ARITI. En effet, l’administrateur
peut créer des guides virtuels d’assistance à la téléopération, les tester et mettre à jour la
base de données des guides (comme indiqué dans les cas d’utilisation des guides virtuels
au chapitre cf. § 2.3 et le tableau 2.3). Il peut aussi interdire complètement l’accés au
système, ou partiellement, comme par exemple limiter le contrôle du robot réel à certains
97
CHAPITRE 4. APPLICATIONS
Clients
utilisateurs
Internet / Intranet
ARITI
Utiliser utilisateurs
Mise à jour
Guides
virtuels
Utiliser
Créer ARITI
administrateur
IHM administrateur
Client
administrateur
clients autorisés.
L’administrateur, peut aussi créer de nouvelles tâches de téléprogrammation et les mettre
ensuite à la disposition des autres clients utilisateurs du système. En d’autres termes,
L’IHM administrateur peut être considérée comme une version expérimentale avec laquelle
l’opérateur peut créer de nouveaux modèles (robots, objets et guides virtuels) et les tester
avant de les mettre à la diposition des utilisateurs.
La figure 4.5 montre l’interface destinée au client administrateur.
Nous décrivons dans le paragraphe qui suit l’interface du système ARITI. Cette des-
cription est commune aux deux versions de l’interface “administrateur” et “utilisateur”.
L’interface du système ARITI est constituée de quatre parties. La première, en haut à
gauche de la figure 4.5, permet le contrôle en réalité augmentée du site esclave (l’opérateur
perçoit d’un coté l’environnement distant grâce au retour vidéo ainsi que la superposition
du monde virtuel sur le réel et de l’autre coté, il perçoit une horloge lui indiquant le
délai de transmission vidéo et le décalage horaire si le client se trouve à l’extérieur de la
France).
La deuxième partie de l’interface (en haut à droite de la figure 4.5) est complètement
virtuelle, elle permet de visualiser l’environnement virtuel grâce à une caméra virtuelle
que l’on peut déplacer ou tourner suivant les 3 axes X, Y et Z.
La troisième partie (en bas à gauche de la figure 4.5) permet à l’opérateur de voir ce que
voit une caméra virtuelle fixée sur l’effecteur du robot (eye-in-hand).
La quatrième partie (en bas à droite de la figure 4.5) représente le tableau de bord de
l’interface de ARITI. En effet, elle permet à l’opérateur de choisir son mode de télétravail
(téléopération, téléprogrammation de tâche ou encore télésupervision et télécoopération).
Elle permet aussi à l’opérateur de changer de point de vue de la caméra virtuelle, de
98
4.1. TELETRAVAIL AVEC UN ROBOT A 4 DDL
l’administrateur
Réservés à
Fig. 4.5 – l’IHM destinée au client administrateur, avec en haut à gauche, une image
vidéo de résolution 288 × 384, en bas à droite la partie réservée à l’administrateur pour
créer des guides virtuels.
99
CHAPITRE 4. APPLICATIONS
Cette deuxième version de l’interface, est destinée à tous les autres opérateurs (clients)
appelés “utilisateurs” du système ARITI. Elle est accessible sur le site web de notre labora-
toire au http : //lsc.cemif.univ−evry.f r : 8080/ ou encore sur le site de la NASA “NASA
Space Telerobotics Program” au http : //ranier.oact.hq.nasa.gov/telerobotics page/realro-
bots.html).
Fig. 4.6 – l’IHM destinée au client utilisateur, avec en haut à gauche, une image vidéo
de résolution 192 × 256, et l’utilisateur ne peut pas créer de guides virtuels.
Les différences principales entre cette version et la précédente, sont situées au niveau
de la taille de l’image vidéo et de la possibilité de créer des guides virtuels. Dans la version
administrateur (figure 4.5), l’image vidéo est de 288×384 (110592 octets = 108 KO), alors
que dans la version utilisateur (figure 4.6) la taille est de 2/3 (192 × 256=49152 octets =
48 KO).
Comme nous l’avons décrit dans le second chapitre, l’opérateur peut être assisté par
des guides virtuels lors de la téléopération. Il peut utiliser des guides virtuels existants
dans la base de données des guides (figure 4.7-(B)). La description de ces guides sera
donnée avec la description des tâches de téléopération dans la section suivante.
Dans le cas où l’opérateur désire créer de nouveaux guides virtuels correspondant à
une nouvelle tâche, un outil de création et de manipulation de guides virtuels apparaı̂t en
100
4.1. TELETRAVAIL AVEC UN ROBOT A 4 DDL
(C) (B)
(A)
(D)
Fig. 4.7 – (A) : Tableau de bord de l’interface de ARITI. (B) : mode téléopération, (C) :
mode téléprogrammation de tâche, (D) : contrôle du robot réel et le mode télésupervision
ou télécoopération
101
CHAPITRE 4. APPLICATIONS
activant le bouton “Guides” (voir la figure 4.7-(A)). Il s’agit d’un modeleur 3D (figure 4.8)
permettant à l’opérateur de générer des objets virtuels en trois dimensions. Les méthodes
utilisées sont celles décrites dans le second chapitre (surfaces, volumes ouverts, volumes
fermés, etc.) et représentées par le générateur de guides virtuels dans la figure 4.9.
Tourner
A chaque guide virtuel est associé des propriétés permettant à l’opérateur et au système
de l’identifier afin que ce guide puisse accomplir le rôle qui lui a été réservé. Les figures
4.10 et 4.11 montrent respectivement, un exemple d’un guide virtuel simple et de ses
propriétés pour la tâche d’atteinte d’une cible. Un autre exemple de propriétés d’un guide
virtuel (figure 4.14) pour la tâche de suivi de contour est donnée dans la figure B.42.
Nous verrons plus loin les propriétés des guides virtuels composés.
102
4.1. TELETRAVAIL AVEC UN ROBOT A 4 DDL
Fig. 4.9 – Générateur de guides virtuels : Exemple d’un plan généré à partir de deux
paramètres, la longueur et la largeur.
– Atteinte de cible.
– Atteinte de cible mobile.
– Suivi de contour d’un objet.
– Saisie et dépôt d’un objet.
Pour chacune d’elles, nous décrivons le(les) guide(s) associé(s).
La cible en question est généralement un point 3D dans l’espace. Ce point peut être
attaché à un objet de l’environnement à saisir par exemple. Le guide virtuel utilisé est un
cône tronqué ouvert (entonnoir).
L’extrémité de ce guide est attachée à la périphérie d’un objet cylindre, dans ce cas le
point 3D cible est le centre de cette extrémité représenté par le point P 1 dans la figure
4.10.
Guide virtuel Objet Cylindre
Cible
P2
E
R P1 2 mm
r1 A l
X2 L X1 r
Crochet
Y
X Z
Fig. 4.10 – Guide virtuel utilisé pour atteindre une cible : ici la cible est un point 3D se
trouvant sur la périphérie de l’objet cylindre
103
CHAPITRE 4. APPLICATIONS
Type du guide
Réferentiel
Première ouverture
horizontale/verticale
Deuxième ouverture
horizontale/verticale
Hauteur
Fig. 4.11 – Propriétés du guide virtuel d’assistance à la téléopération pour atteindre une
cible. La cible dans ce cas est l’objet cylindre numéro 3 (figure 4.1)
Nous décrivons ici les propriétés données par la figure 4.11 et le formalisme de ce guide :
– Nom du guide : L’identification de ce guide se fait par son nom (“Atteindre cibl-
e3.obj” dans figure 4.11). Ceci permet à l’opérateur de retrouver ce guide, de changer
ses propriétés pour saisir un autre objet par exemple. En effet ce guide peut être
utilisé pour toutes les tâches de saisie.
– Type du guide : Ce guide virtuel est dit “simple” et “actif en attraction” (comme
indiqué dans la figure 4.11). Il s’agit d’un guide d’assistance “semi-autonome”. Ce
type est utilisé pour définir la fonction du guide.
– Référentiel : Donne la position et l’orientation de ce guide par rapport au repère
de l’environnement virtuel.
– Attachement : L’attachement de ce guide à un objet virtuel, se fait en précisant
le nom de cet objet dans le champ “Attachement” représenté dans la figure 4.11.
Ici, ce champ contient “Objet cylindre 3.obj” qui représente bien l’objet cylindre de
numéro 3 appartenant à l’environnement virtuel.
– Zone d’influence : Constitue un volume de travail en dehors duquel l’extrémité
de l’effecteur du robot E ne peut pas sortir (sauf si l’opérateur recule suffisam-
104
4.1. TELETRAVAIL AVEC UN ROBOT A 4 DDL
ment pour faire disparaı̂tre le guide). Le nom de l’équation du guide (“tube”) et ses
paramètres sont mémorisés afin de les utiliser pour définir la condition d’activation
de ce guide (pré-condition).
– Pré-condition : Le guide virtuel est activé dès que l’effecteur du robot se rapproche
suffisamment du support métallique (atteinte de la zone d’influence). Ceci se traduit
par l’appartenance de l’extrémité de l’effecteur du robot “E au volume de ce guide
en vérifiant les contraintes suivantes :
X1 < Xe <= X2
(4.1)
(Ye − Ya )2 + (Ze − Za )2 <= r12
avec r1 = l × (R − r)/L + r et “L” représente la hauteur du guide virtuel, “l” la
hauteur du sous cône dont l’extrémité est le disque contenant le point “A” (voir
figure 4.10)
– Fonction : Elle est représentée par une combinaison des actions réalisées par
l’opérateur (dans ce cas, “Déplacer le robot”) et d’une fonction de projection
de l’extrémité de l’effecteur du robot “E” sur le point “A”. Cette projection peut
s’écrire sous la forme suivante :
⎧
⎨ Xe = Xa
Ye = Ya (4.2)
⎩
Ze = Za
avec ⎧
⎨ X a = Xe
Y a = Y 1 + r1 − r (4.3)
⎩
Za = Z1
– Post-condition : Elle constitue la négation de la pré-condition. En effet, le guide
est désactivé si par exemple l’opérateur fait reculer le robot suffisamment pour sortir
du guide ou si la cible est atteinte. Ces deux conditions peuvent s’écrire sous la forme
suivante :
⎧
⎨ Xe <= X1
ou (4.4)
⎩
Xe > X2
Cette tâche permet au robot de suivre une cible virtuelle, que l’opérateur peut déplacer
dans son environnement, ou encore suivre un objet virtuel en mouvement lorsque la cible
mobile est attachée à cet objet. La figure 4.12 illustre le principe de suivi d’objet en
mouvement.
En effet le déplacement de l’objet virtuel entraı̂ne avec lui la cible qui lui est attachée.
Cet objet se déplace suivant une trajectoire que réalise l’objet en passant par les points P1 ,
P2 , P3 et P4 par exemple. Dans ce cas les coordonnées de la cible mobile sont déterminées
en fonction des coordonnées de l’objet virtuel en mouvement.
105
CHAPITRE 4. APPLICATIONS
X
Etat initial
Cible mobile Objet virtuel Trajectoire de la cible mobile
P1
P2 Etat final
P3
P4
Z
Effecteur durobot
Fig. 4.12 – Illustration du principe de suivi de cible mobile par l’effecteur du robot.
La première étape consiste à désigner sur écran la cible mobile, et à activer un guide
virtuel pour atteindre cette cible. L’opérateur peut utiliser le même type de guide virtuel
que pour la tâche précédente, sauf que ce guide (sous forme d’une sphère) sera attaché
à un objet virtuel en mouvement. La méthode de désignation d’un point 3D à partir de
deux points 2D est décrite dans cf. § 3.3, voir aussi la figure 3.17.
Dans cette tâche, l’opérateur téléopère le robot pour atteindre le contour d’un objet
cylindre et réalise ensuite le suivi de son contour.
Le guide virtuel utilisé pour assister l’opérateur à réaliser cette tâche est un cône de
révolution. Une extrémité de ce guide est attachée au contour d’un objet cylindre et l’autre
est destinée à recevoir l’extrémité de l’effecteur du robot (figure 4.14).
Les propriétés de ce guide sont données par la figure B.42, et ci-dessous nous présentons
essentiellement la pré-condition, la fonction et la post-condition de ce guide.
– Pré-condition : Le guide virtuel est activé dès que l’effecteur du robot se rapproche
suffisamment du support métallique (atteinte de la zone d’influence cône). Ceci se
traduit par l’appartenance de l’extrémité de l’effecteur du robot “E au volume de
ce guide en vérifiant les contraintes suivantes :
106
4.1. TELETRAVAIL AVEC UN ROBOT A 4 DDL
(A) (B)
(C) (D)
Fig. 4.13 – Exemple de suivi de cible mobile par le robot. La cible est atteinte par le
robot (A), a effectué une translation par rapport à l’axe X (B), ensuite une rotation par
rapport à l’axe Z (C) et enfin une translation par rapport à l’axe Z (D)
Objet Cylindre
Guide virtuel
A
E
R
Crochet
Disques de passage
de l’effecteur du robot Y
Centre X Z
Fig. 4.14 – Le guide virtuel utilisé pour le suivi de contour. Le point “E” désigne
l’extrémité de l’effecteur du robot et le point “A” appartient au contour du disque de
passage de “E”.
107
CHAPITRE 4. APPLICATIONS
Fig. 4.15 – Propriètés du guide virtuel utilisé pour le suivi de contour. Dans ce cas ce
guide permet de suivre le contour du cylindre numéro 1
Xe >= Xcentre
(4.5)
(Ye − Ycentre )2 + (Ze − Zcentre )2 <= R2
– Fonction : Elle est représentée par une combinaison des actions réalisées par
l’opérateur (dans ce cas, “Déplacer le robot”) et par une fonction de projection
de l’extrémité de l’effecteur du robot “E sur le point “A qui appartient au contour
du disque contenant “E . Cette projection peut s’écrire sous la forme suivante :
⎧
⎨ Xe = Xa
Ye = Ya (4.6)
⎩
Ze = Za
– Post-condition : Dans ce cas, le guide est désactivé seulement si l’opérateur recule
le robot suffisamment pour sortir du guide.
Cette tâche consiste à décrocher un objet cylindre depuis son support métallique (tâche
de saisie) et l’accrocher ensuite sur un autre support (tâche de dépôt).
L’opérateur peut être assisté par des guides virtuels pour réaliser cette tâche. Nous
décrivons ici, les guides virtuels utilisés pour chacune des tâches.
108
4.1. TELETRAVAIL AVEC UN ROBOT A 4 DDL
La figure 4.16 décrit le guide virtuel utilisé pour saisir un objet cylindre. Ce guide est
composé de trois guides simples sous forme de cylindres appelés “Guide 1”, “Guide 2” et
“Guide 3”. Ces trois guides sont disposés de telle sorte que la tâche de saisie d’objet ne
provoque pas la détérioration du robot ou de l’objet lui même.
Le “Guide 1”, est positionné à l’intérieur de l’objet à saisir (formant ainsi une zone de
prise de l’objet). En effet, pour prendre l’objet, l’effecteur du robot doit piquer l’objet en
faisant une translation en profondeur de 2 cm.
Guide virtuel composé
Guide 1
Zone de prise de l’objet
Guide 2
Guide 3
P4 r2 2 cm
E
P6 A P5
r3 A
E mire métallique
P2 r1 P1
P3
Crochet
Centre de la cible
X Z
Objet Cylindre
Fig. 4.16 – Le guide virtuel utilisé pour la saisie d’un objet cylindre. Le point E désigne
l’extrémité de l’effecteur du robot et le point A désigne le centre du disque passant par
le point E .
Les propriétés de ce guide sont données par la figure 4.17, et nous présentons ensuite
la pré-condition, la fonction et la post-condition de ces guides.
Dans ce qui suit, le point Pi (figure 4.17) a pour coordonnées (Xi , Yi , Zi) pour i = 1..6
– Pré-condition : Les guides virtuels sont activés dès que le premier guide “Guide
1” est activé. En effet, ce guide est attaché à l’objet à saisir (figure 4.17-(C)), alors
que le “Guide 2” est attaché au “Guide 1” (figure 4.17-(B)) et le “Guide 3” est
attaché au “Guide 2” (figure 4.17-(A)). Ceci forme une chaı̂ne de guides virtuels
permettant ainsi l’activation de toute cette chaı̂ne dès que le premier guide est ac-
tivé.
109
CHAPITRE 4. APPLICATIONS
Fig. 4.17 – Les propriétés des guides virtuels utilisés pour la saisie de l’objet cylindre
numéro 3.
Dans “Guide 1” :
X1 <= Xe <= X2
(4.7)
(Ye − Ya )2 + (Ze − Za )2 <= r12
avec A(Xa , Ya , Za ) le centre du disque de rayon r1 contenant “E” et
⎧
⎨ Xa = X e
Ya = Y1 (4.8)
⎩
Za = Z1
Dans “Guide 2” :
Y3 <= Ye <= Y4
(4.9)
(Xe − Xa )2 + (Ze − Za )2 <= r22
avec A(Xa , Ya , Za ) le centre du disque de rayon r2 contenant “E” et
⎧
⎨ Xa = X 3
Ya = Ye (4.10)
⎩
Za = Z3
Dans “Guide 3” :
X5 <= Xe <= X6
(4.11)
(Ye − Ya )2 + (Ze − Za )2 <= r32
avec A(Xa , Ya , Za ) le centre du disque de rayon r3 contenant “E” et
⎧
⎨ Xa = X e
Ya = Y5 (4.12)
⎩
Za = Z5
110
4.1. TELETRAVAIL AVEC UN ROBOT A 4 DDL
Xe > X6 (4.14)
Ces quatre guides sont disposés de telle sorte que l’effecteur du robot et l’objet saisi
puissent se déplacer sans provoquer des collisions avec le support métallique.
R Guide 3 P4 r2
E rc
P6 r3 P5
P7 A E
P1 r1 P2 Y
P3 X Z
Guide 1 Crochet
Fig. 4.18 – Le guide virtuel utilisé pour le dépôt d’un objet cylindre. (A) : Positionnement
des différents guides, avec le point E qui désigne l’extrémité de l’effecteur du robot et
le point A le centre du disque passant par le point E ; (B) : Exemple d’influence des
guides sur les trajectoires réalisées par les robots virtuel et réel.
111
CHAPITRE 4. APPLICATIONS
Les propriétés de ces guides sont données par la figure 4.19, et nous présentons ensuite
la pré-condition, la fonction et la post-condition de ces guides.
Dans ce qui suit, le point Pi (figure 4.18-(A)) a pour coordonnées (Xi , Yi , Zi) pour
i = 1..7.
– Pré-condition : La chaı̂ne de guides virtuels est activée dès que le quatrième
guide “Guide 4” est activé. En effet, ce guide est attaché à un autre guide “Guide
3” (figure 4.19-(D)), le “Guide 3” est attaché au “Guide 2” (figure 4.19-(C)) et le
“Guide 2” est attaché au “Guide 1” (figure 4.19-(B)). L’assistance à l’opérateur
prend son effet à la fin du parcours du guide “Guide 1”, c’est pour cette raison que
le champ “Attachement” des propriétés de ce guide contient “Guide libre” (figure
4.19-(A)).
De la même façon que les précédentes tâches, les contraintes qui déterminent la
pré-condition sont données par l’appartenance de l’extrémité de l’effecteur du robot
“E” au volume de chaque guide virtuel par exemple :
Dans “Guide 4” :
X6 <= Xe <= X7
(4.15)
(Ye − Ya )2 + (Ze − Za )2 <= rc2
112
4.1. TELETRAVAIL AVEC UN ROBOT A 4 DDL
Fig. 4.19 – Les propriétés des guides virtuels utilisés pour le dépôt de l’objet cylindre
numéro 3 sur le support numéro 1.
Aprés avoir choisi une tâche, l’opérateur lance l’exécution en activant le bouton “Déma-
rrer téléprog” (figure4.7-(A)). Le rôle de l’opérateur consiste donc à superviser l’exécution
de cette tâche par les deux robots virtuel et réel. Il peut aussi intervenir pour arrêter cette
exécution s’il le désire, en activant le bouton “Arrêter téléprog” dans le tableau de bord
de l’interface du système ARITI (figure4.7-(A))
Les schémas de fonctionnement des différentes tâches de téléprogrammation sont
données dans l’annexe B
113
CHAPITRE 4. APPLICATIONS
L’opérateur OPi réalise la tâche Ti pour i = 1..4. Il est appelé “Maı̂tre” s’il a le
contrôle du robot réel, sinon il est appelé “Superviseur”. Le tableau suivant illustre
l’exécution de cette mission avec ce mode de télétravail.
Opérateur/Tâche T1 T2 T3 T4
Op1 Maı̂tre Superviseur Superviseur Superviseur
Op2 Superviseur Maı̂tre Superviseur Superviseur
Op3 Superviseur Superviseur Maı̂tre Superviseur
Op4 Superviseur Superviseur Superviseur Maı̂tre
Tab. 4.1 – Exemple d’organisation d’une équipe pour la réalisation d’une mission de
téléopération en coopération
Internet / Intranet / HF
Serveur commande
Serveur commande Serveur image
Fig. 4.20 – Mise à jour de l’architecture du système ARITI pour le contrôle d’un robot
mobile
Cette application nous permet d’un côté, d’étudier le comportement du système ARITI
vis à vis d’un robot mobile téléopérable et pouvant être autonome (dans ce cas le contrôle
114
4.2. TELETRAVAIL AVEC UN ROBOT MOBILE
devient semi-autonome). De l’autre coté, elle permet d’étudier comment une IHM basée
sur des techniques de la réalité virtuelle/augmentée peut contribuer à l’amélioration des
performances des personnes handicapées (Otmane et al., 2000d).
Dans cette section, nous décrivons deux robots mobiles avec lesquelles nous travaillons
ainsi que l’interface homme machine permettant le contrôle du robot mobile utilisé avec
ARITI. Nous présentons ensuite quelques guides virtuels utilisés afin d’assister l’opérateur
à téléopérer le robot mobile pour traverser une porte.
Caméra
(A) (B)
Fig. 4.21 – Les images des deux robots mobiles utilisés. (A) : le robot utilisé avec le
système ARITI, (B) : le robot destiné au projet d’assistance aux personnes handicapées
115
CHAPITRE 4. APPLICATIONS
Une partie pour la réception d’images vidéos (pas de superposition du modèle virtuel
sur l’image réelle), deux parties pour représenter le robot mobile et son environnement
dans un mode virtuel et la quatrième partie constitue le tableau de bord de l’interface.
Ce dernier, permet à l’opérateur de :
– Choisir l’un des deux modes de contrôle, manuel (téléopération) ou navigation (semi-
autonome).
– Changer de points de vue de la caméra virtuelle.
– Créer et utiliser des guides virtuels.
La figure 4.22 montre L’IHM utilisée pour le contrôle et la supervision du robot mobile.
La fenêtre en haut à gauche, réceptionne des images vidéo envoyées par une caméra qui
visualise le robot réel et son environnement (cette caméra peut être remplacée par celle
embarquée sur le robot mobile). La fenêtre en haut à droite (figure 4.22), représente un
point de vue virtuel de la scène obtenue par une caméra virtuelle placée en hauteur (cette
caméra peut être déplacée ou tournée suivant les trois axes X, Y, Z).
La fenêtre en bas à gauche (figure 4.22), représente un point de vue virtuel donné par une
caméra embarquée sur le robot mobile (nous permet de voir ce que voit le robot mobile
virtuel).
116
4.2. TELETRAVAIL AVEC UN ROBOT MOBILE
une porte. Le deuxième type de guide est dit attractif, représenté sous forme d’une tra-
jectoire générée par une B-Spline.
Dans cette tâche, l’opérateur téléopère le robot réel via le robot virtuel. Il déplace le
robot virtuel jusqu’au couloir formé par les deux guides virtuels et tente de traverser la
porte. En effet, ce couloir virtuel permet au robot de se déplacer uniquement suivant des
trajectoires qui sont possibles à l’intérieur. Les deux plans répulsifs qui forment ce couloir
n’autorisent pas le robot virtuel à les traverser.
La figure 4.23 montre l’intervention des deux guides virtuels lorsque le robot mobile
tente de traverser une porte.
(A) (B)
Fig. 4.23 – Illustration de la téléopération d’un robot mobile avec assistance de deux
guides virtuels répulsifs sous forme de plans. (A) : Le robot mobile subit l’influence des
deux guides, (B) : le robot traverse la porte.
Les propriétés des deux guides virtuels sont données par la figure 4.24-(A) et 4.24-(B)
Dans ce cas, l’opérateur téléopére le robot en lui faisant suivre une seule et unique
trajectoire. Cette trajectoire est générée initialement par une B-Spline (présentée dans la
section 2.2.1.3) et ensuite elle est modifiée (déformée) à la convenance de l’opérateur.
Ce type de guide virtuel, contraint le robot mobile à suivre une trajectoire précise que
l’opérateur a choisi. Cette trajectoire peut être modifiée en ligne par l’opérateur s’il le
désire.
La figure 4.25 montre une simulation du parcours réalisé par le robot mobile le long
de ce guide virtuel. Nous présentons ici les captures d’écran de la fenêtre en haut à droite
de l’interface (figure 4.22).
Les propriétés de ce guide sont données par la figure 4.26.
117
CHAPITRE 4. APPLICATIONS
(A) (B)
Fig. 4.24 – Propriétés des deux guides virtuels utilisés pour traverser une porte par le
robot mobile.
(A) (B)
(C) (D)
Fig. 4.25 – Simulation du parcours d’une B-Spline par le robot mobile virtuel. (A) : l’état
initial, (B) : pendant le parcours, (C) : le robot traverse la porte, (D) : l’état final
118
4.3. AUTRES APPLICATIONS POTENTIELLES
4.3.1 Nucléaire
Sur les sites nucléaires, les robots et les systèmes téléopérés sont utilisés pour diminuer
les doses de rayonnement, les contraintes physiques et/ou les risques pour les intervenants.
La plupart des machines utilisées (pour l’IHM, Client/Serveurs, etc.) sont trop onéreuses
du fait que les outils de développement et de simulation en réalité virtuelle sont fiables
et stables sur ces machines. Par conséquent, les IHMs ne sont pas portables et donc la
supervision et le contôle d’un système (robot esclave par exemple) ne peut se faire que sur
la même machine cliente (machine maı̂tre). Si cette dernière tombe en panne lors d’une
mission de téléopération, il devient très difficile et encore très coûteux de reprendre à
nouveau la mission surtout si la mission est vraiment urgente. Par ailleurs, il est difficile
et très coûteux d’envisager un télétravail coopératif sachant que le système maı̂tre ne
fonctionne que sur le même type de machine.
De nos jours, il existe des ordinateurs personnels plus performants (avec une puissance
qui ne cesse d’augmenter), sous des environnements multi-tâches et multi-utilisateurs (tels
que Linux ou encore Linux temps réel). De même, la maturité des outils de simulation
sur PC (OpenGL, VRML, etc) et la stabilité des outils développement sur Internet en
particulier le Langage Java offre la possibilité d’étendre les techniques de téléopération
vers le télétravail coopératif.
119
CHAPITRE 4. APPLICATIONS
4.3.2 Médical
L’utilisation des systèmes de télétravail, peut être intéressante dans différents niveaux
d’applications médicales. En effet, la Télésupervision par exemple permettra aux étudiants
en médecine (se trouvant dans le même établissement ou encore dans le monde entier)
d’assister en direct à une opération chirurgicale sans pour avoir à se déplacer en salle
d’opération.
Un autre exemple est celui d’assister le chirurgien par d’autres chirurgiens plus expérim-
entés ne se trouvant pas au même endroit (leurs conseils peuvent être utiles dans le cas
d’une opération délicate).
La téléchirurgie semble avoir un avenir prometteur, bien que l’idée de remplacer un chi-
rurgien par un robot n’est pas la priorité de tout le monde. Mais ce domaine en cours
de maturité peut trouver rapidement sa place en mettant le système expérimental à la
disposition des autres chercheurs dans le but d’un télétravail coopératif.
4.3.3 Enseignement
En plus de l’enseignement théorique donné aux étudiants (formation aux méthodes
et aux techniques de la robotique, réseau et informatique, etc.), des Travaux Pratiques
(TPs) moins coûteux peuvent être réalisés en utilisant de tels systèmes.
Prenons par exemple un cours de robotique sur la calibration de caméras, après avoir
étudié les différentes méthodes, les étudiants peuvent expérimenter leurs méthodes et les
tester en temps réel pendant une séance de TP. En effet, les étudiants ne sont pas obligés
d’avoir une caméra réelle à disposition, puisque une image réelle capturée suffit.
Il ne peut pas y avoir de défaillance du système original du moment que les étudiants
tarvailleront sur des processus clones (une copie du système original, figure 4.27 ) et
éventuellement un clone par étudiant afin d’éviter d’un côté, les mélanges et les conflits
d’accés aux ressources du système et de l’autre côté un travail individuel sécurisé.
1
http ://www-dta.cea.fr/CEREM/UK/Pages/teleoper.htm
120
4.4. BILAN
CL
Intranet / Internet
SR
4.4 Bilan
Dans ce chapitre, nous avons présenté quelques applications pouvant bénéficier d’un
système de télétravail via Internet. Nous avons cependant souligné la nécessité d’avoir
d’un côté, une interface administrateur pour la maintenance et la mise à jour d’un tel
système et de l’autre côté une interface destinée aux utilisateurs du système.
Nous avons décrit certaines tâches réalisées suivant le mode de télétravail choisi, d’un
côté, les tâches de téléopération (saisie/dépôt d’objets, etc.) où l’opérateur s’il le désire
peut être assisté par des guides virtuels. D’un autre côté, l’opérateur peut télétravailler
à niveau plus haut, pour cela, il spécifie seulement la tâche à faire exécuter par les ro-
bots virtuel et réel simultanément (il s’agit dans ce cas des tâches pré-programmées).
Enfin, si une mission nécessite l’intervention de plusieurs opérateurs simultanément dans
le but d’un travail coopératif par exemple, un opérateur prend le contrôle du robot réel
pendant que les autres supervisent en virtuel et en réel les actions de celui-ci. Dans ce
dernier cas, le contrôle des robots virtuel et réel est partagé entre les différents opérateurs.
Nous avons montré la flexibilité et l’ouverture du système ARITI pour d’autres appli-
cations, en utilisant un robot mobile. En effet, une application sur un robot mobile a été
réalisée en s’inspirant de l’existant et en rajoutant essentiellement le module contenant
les nouveaux modèles virtuels (environnement et robot mobile) ainsi que le module de
client/serveur commande (pour gérer les interactions avec le robot mobile réel).
Nous avons cité d’autres domaines d’application dans lesquels un système de télétravail
ou de travail coopératif via Internet peut être intéressant, mais cette liste n’est pas ex-
haustive.
Par ailleurs, il est nécessaire d’une part, d’évaluer les performances des tâches réalisées
avec ce système ainsi que les différents algorithmes de compression d’images utilisés.
D’autre part, d’analyser le comportement de ce système et les performances de l’archi-
tecture client/serveur du système ARITI à la fois, en fonction de la distance séparant
le site maı̂tre (client) du site esclave et en fonction du nombre d’opérateurs utilisant si-
multanément le système pour un travail coopératif. Cette partie est présentée et discutée
dans le chapitre suivant.
121
CHAPITRE 4. APPLICATIONS
122
Chapitre 5
Evaluation et Expérimentation
Dans ce chapitre, nous présentons les expérimentations réalisées avec le système ARITI
utilisant un robot esclave à 4 ddl (site expérimental se trouvant dans notre laboratoire).
Les modes de télétravail utilisés pour ces expérimentations sont la téléopération et la
télécoopération/télésupervision.
123
CHAPITRE 5. EVALUATION ET EXPERIMENTATION
Effecteur
du robot
Support (crochet)
métallique
Fig. 5.1 – Vue rapprochée de l’effecteur du robot et des trois cylindres en polystyrène.
L’expérimentation est réalisée avec trois missions qui consistent à réaliser les tâches
suivantes :
– Atteindre le cylindre numéro 1.
– Saisir le cylindre numéro 1 depuis son support.
– Déposer le cylindre numéro 1 sur le support numéro 3.
Le déroulement de chaque mission se fait généralement en deux étapes, préparation
de la mission par le robot virtuel, ensuite l’exécution par le robot réel.
124
DE ARITI
Soit Tp , le temps nécessaire à l’opérateur pour préparer une mission avec le robot
virtuel, et Te , le temps nécessaire pour exécuter la mission par le robot réel. Le temps de
la réalisation de la mission est donné alors par le temps total de la mission Tm :
Tm = Tp + Te (5.1)
Les vitesses de déplacement et de rotation des différentes composantes du robot réel
sont constantes (16.6 cm/s pour les translations et 16.6 degrés/s pour les rotations, voir
le tableau 5.1).
Etant donné que la cible à atteindre est un point 3D situé à une distance d (constante)
par rapport à la position de l’effecteur du robot. Alors le temps d’exécution Te est iden-
tique pour chaque mission consistant à atteindre le cylindre numéro 1. Cependant, le
temps de réalisation de la mission (Tm ) pour atteindre le cylindre numéro 1 par exemple,
dépend complètement du temps de la préparation de cette mission avec le robot virtuel
(Tp ).
125
CHAPITRE 5. EVALUATION ET EXPERIMENTATION
Cible virtuel Objet cylindre 1
Effecteur du robot virtuel
E Mire
Crochet virtuel
(support virtuel)
X Z
P2 P3
Pour permettre à l’opérateur de voir où se trouve la cible, un signal visuel est affiché
(petit cercle autour de la cible) à la périphérie du cylindre numéro 1 (voir la figure 5.3).
Pendant ces tests, les éventuelles collisions de l’effecteur du robot avec le support
métallique (où se trouve l’objet à atteindre) ont été gérées. Le nombre de collisions est
calculé pour chaque opérateur et pour chaque test (figure 5.4-(B)). Dès qu’une collision
se produit, le message “collision” apparaı̂t sur l’écran ainsi qu’une flèche à l’endroit de la
collision (figure 5.4-(A)). Ces informations permettent à l’opérateur de corriger ses mou-
vements.
La figure 5.4-(B), montre qu’il y a en moyenne 14.9 collisions pour les dix tests soit
une collision par test.
Nous avons aussi mesuré les imprécisions avec lesquelles la cible a été atteinte par l’ef-
fecteur du robot, ainsi que le temps mis par chaque opérateur pour atteindre la cible. La
126
DE ARITI
Signal visuel
autour de la cible
Repère
Fig. 5.3 – Illustration du signal visuel utilisé pour atteindre le cylindre numéro 1
(A) (B)
Fig. 5.4 – Gestion des collisions pendant que l’opérateur essaie d’atteindre le cylindre
numéro 1. (A) : détection des collisions, (B) : le nombre total de collisions réalisé par
chaque opérateur.
127
CHAPITRE 5. EVALUATION ET EXPERIMENTATION
figure 5.5-(A), montre la moyenne des imprécisions (en mm) sur les dix tests pour chaque
opérateur par rapport à X, Y et Z. L’imprécision moyenne de tous les opérateurs est
donnée par la figure 5.5-(B).
(A) (B)
Fig. 5.5 – Les imprécisions obtenues lorsque la cible est atteinte. (A) : la moyenne des dix
tests pour chaque opérateur suivant X, Y et Z, (B) : la moyenne sur les dix opérateurs
suivant X, Y et Z.
Nous remarquons que les imprécisions sur l’axe “Y” sont plus importantes, elles cor-
respondent aux erreurs de rotation en site de l’effecteur du robot. En effet, pour éviter de
prendre le risque de provoquer des collisions entre l’effecteur du robot et le support où se
trouve l’objet à atteindre, les différents sujets (opérateurs) préfèrent maintenir l’effecteur
éloigné du support.
Nous avons mesuré les temps moyens et l’écart type (en secondes) de réalisation de
la tâche d’atteinte d’une cible. La figure 5.6 donne la moyenne des temps obtenus par les
dix opérateurs à chaque essai ainsi que l’écart type.
22.21
9.92
Fig. 5.6 – Le temps moyen pour atteindre la cible (cylindre numéro 1) à chaque essai.
La figure 5.6, montre que, pendant les trois premiers tests les temps moyen sur les dix
opérateurs sont plus important (35 , 23 et 25 sec). Ce temps à tendance à diminué dans la
suite des autres tests, ce qui montre en effet, l’adaptation des opérateurs à l’interface de
128
DE ARITI
commande ainsi que leur apprentissage. Cependant, le temps moyen sur les dix opérateurs
et sur les dix tests pour atteindre le cylindre numéro 1, est de 22.21 sec.
Le guide virtuel utilisé est un cône (appelé “tube” dans la librairie des guides virtuels)
attaché à l’objet cylindre numéro 1. Ce guide virtuel est activé en répulsion, cependant,
lorsque l’effecteur du robot virtuel se trouve à l’intérieur du guide, ses degrés de libertés
sont limités au volume de ce guide qui défini l’espace de travail (l’effecteur du robot ne
peut pas traverser le guide).
La figure 5.7 montre ce guide virtuel attaché au cylindre numéro 1.
Guide virtuel Cylindre numéro 1
Effecteur
du robot
Fig. 5.7 – Utilisation d’un guide virtuel pour atteindre le cylindre numéro 1
Les imprécisions obtenues avec ce guide virtuel sont représentées dans la figure 5.8.
(A) (B)
Fig. 5.8 – Les imprécisions obtenues lorsque la cible est atteinte en utilisant un guide
virtuel repulsif. (A) : la moyenne des dix tests pour chaque opérateur suivant X, Y et Z,
(B) : la moyenne sur les dix opérateurs suivant X, Y et Z
Contrairement aux tests réalisés précédemment (sans assistance d’un guide virtuel),
les risques de collisions sont exclus. Par ailleurs, les imprécisions pour atteindre la cible
avec assistance d’un guide virtuel répulsif, sont nettement inférieures par rapport à l’axe
“Y” si nous les comparons aux tests réalisés sans guide virtuel. En effet, la moyenne des
129
CHAPITRE 5. EVALUATION ET EXPERIMENTATION
imprécisions avec guide répulsif est de 0.48 mm contre 2.44 mm sans guide virtuel. Cette
diminution s’explique par le fait que les opérateurs ont tendance à rapprocher davantage
l’effecteur du robot vers le support virtuel, sachant que le guide les empêcherait de rentrer
en collision avec ce support.
Nous remarquons aussi que les imprécisions sur l’axe des “X” est de 1 mm pour tous
les opérateurs (la cible est atteinte de la même façon pour tous). Ceci est une conséquence
directe sur le comportement identique concernant le positionnement de l’effecteur du ro-
bot à l’intérieur du guide virtuel. En effet, comme l’effecteur du robot est souvent po-
sitionné juste au dessus du support virtuel (mais toujours à l’intérieur du guide), pour
déplacer l’effecteur vers la cible, une translation en “X” suffit. Cependant, comme le pas
de déplacement est le même dans cette zone, alors ils y arrivent tous de la même façon.
Par contre, le temps nécessaire pour atteindre le cylindre numéro 1 avec un guide
virtuel répulsif est nettement plus important que sans guide virtuel. Le temps moyen sur
les dix opérateurs et sur les dix tests est de 31.48 sec (figure 5.9) contre 22.21 sec lorsque
l’opérateur n’est pas assisté par un guide virtuel répulsif. Cette perte de temps, est tout
simplement provoquée par des différentes collisions entre l’effecteur du robot et le guide
virtuel répulsif. En effet, ce dernier à tendance à repousser l’effecteur du robot à chaque
fois que l’opérateur tente de le traverser involontairement.
Par ailleurs, bien que ce type de guide (répulsif), fournit une sécurité pour l’effecteur
du robot (pas de collisions avec le support), son utilisation rend l’apprentissage difficile
(voir la courbe de la figure 5.9).
31.48
19.23
Fig. 5.9 – Le temps moyen pour atteindre la cible (cylindre numéro 1) à chaque essai en
utilisant un guide virtuel répulsif
Dans cette série de tests, les opérateurs utilisent un guide virtuel attractif. Il s’agit du
même guide virtuel utilisé dans la série de tests précédente, sauf que dans ce cas le guide
devient actif en attraction. En effet, dès que l’effecteur du robot se trouve à l’intérieur
de ce guide, les actions de l’opérateur sont combinées avec une fonction d’attraction vers
l’axe central du guide.
130
DE ARITI
Les imprécisions obtenues avec ce guide virtuel sont représentées dans la figure 5.10.
Fig. 5.10 – Les imprécisions obtenues suivant X, Y et Z, lorsque la cible est atteinte en
utilisant un guide virtuel attractif
La figure 5.10, montre que les imprécisions pour atteindre le cylindre numéro 1 avec
un guide virtuel attractif, sont très petites sur les axes “X” , “Y” (0.25 mm et 0.2 mm res-
pectivement) et sont nulles sur l’axe “Z”. En effet, le fait d’avoir un guide virtuel attractif
dont la fonction consiste à projeter l’extrémité de l’effecteur du robot sur l’axe central de
ce guide et le fait, que cet axe passe par le point cible en question, alors la composante
en “Z” de l’extrémité de l’effecteur du robot ne peut être que zéro. Par ailleurs, la cible
est atteinte (en “X” et “Y”) de la même façon par tous les opérateurs, du moment qu’ils
subissent tous la même fonction du guide.
D’un autre côté, ce guide attractif, fourni un très bon apprentissage comme le montre
la figure 5.11.
Dès que le cylindre numéro 1 est atteint (tâche atteinte d’une cible), un guide virtuel
composé de trois guides simples apparaı̂t pour assister l’opérateur à prendre l’objet cy-
lindre et le sortir de son support métallique.
Ce guide virtuel et son formalisme sont décrits dans le chapitre précédent, voir aussi la
figure 4.16 dans la section 4.1.
131
CHAPITRE 5. EVALUATION ET EXPERIMENTATION
7.7
2.7
Fig. 5.11 – Le temps moyen pour atteindre la cible (cylindre numéro 1) à chaque essai
en utilisant un guide virtuel attractif
La figure 5.12 montre ce guide virtuel attaché à l’objet cylindre numéro 1, permettant de
prendre ce cylindre et de le sortir de son support métallique.
Guide de saisie Cylindre 1
Effecteur
du robot
Support
numéro 1
Fig. 5.12 – Utilisation d’un guide virtuel pour saisir et sortir le cylindre numéro 1 depuis
son support métallique.
La moyenne des temps sur dix opérateurs et à chaque essai pour réaliser cette tâche
est représentée par la figure 5.13. Avec un guide virtuel répulsif le temps moyen sur les
dix essais est de 12.78 sec alors que avec un guide virtuel attractif ce temps est diminué
(9.5 sec).
Afin de déposer l’objet saisi (cylindre numéro 1) sur un support métallique (numéro
3), l’opérateur dirige l’effecteur du robot (contenant l’objet) vers ce support. Un guide
virtuel composé de quatre guides simples apparaı̂t pour l’aider à déposer l’objet déjà saisi.
Cette opération consiste donc à décrocher le cylindre de l’effecteur du robot en utilisant
le support métallique numéro 3.
132
DE ARITI
12.8
9.5
8.01
4.23
(A) (B)
Fig. 5.13 – Le temps moyen pour saisir le cylindre numéro 1 à chaque essai : (A) en
utilisant un guide virtuel répulsif, (B) avec un guide virtuel attractif. En pointillé sont
représentées les moyennes pour les dix opérateurs.
Fig. 5.14 – Utilisation d’un guide virtuel pour déposer le cylindre numéro 1 sur le support
métallique numéro 3.
La moyenne des temps sur dix opérateurs et à chaque essai pour réaliser cette tâche est
représentée par la figure 5.15. Avec un guide virtuel répulsif le temps moyen sur les dix es-
sais est de 37.96 sec alors que avec un guide virtuel attractif ce temps est réduit à 16.86 sec.
133
CHAPITRE 5. EVALUATION ET EXPERIMENTATION
37.9
26.5
16.8
(A) (B)
Fig. 5.15 – Le temps moyen pour déposer le cylindre numéro 1 sur le support numéro 3 à
chaque essai : (A) en utilisant un guide virtuel répulsif, (B) avec un guide virtuel attractif.
En pointillé sont représentées les moyennes sur les dix opérateurs
D’une manière générale, nous avons évalué l’interface et les outils d’assistance virtuels
pour la préparation et l’exécution des missions de téléopération. Nous allons maintenant
nous intéresser au retour d’images vidéo et essentiellement à l’évaluation des algorithmes
de compression d’images utilisés. Cette partie est présentée dans la section suivante.
134
5.2. EVALUATION DES ALGORITHMES DE COMPRESSION D IMAGES VIDEO
Il s’agit ici de voir quelle méthode offre un meilleur taux de compression d’images.
Nous avons testé trois types de compression, “Gzip”, “Pré-traitement + Gzip” et “Pré-
traitement + Huffman”.
Des tests ont été réalisés suivant la dynamique de l’image (quantité de mouvements
dans l’image) c’est à dire, lorsque l’image présente peu de mouvements ou beaucoup de
mouvements.
Les résultats de compression donnés dans la figure 5.16, représente la taille moyenne
des dix premières images compressées par chaque méthode et suivant la dynamique de
l’image.
Nous remarquons que l’algorithme de Huffman n’est utile que si les images à com-
presser ne contiennent pas beaucoup d’éléments différents (il est souvent précédé par un
pré-traitement comme le fait JPEG, MPEG par exemple).
Les résultats obtenus montre que lorsque l’image vidéo présente peu de mouvements la
méthode de compression “Pré-traitement + Huffman” donne un meilleur taux de compres-
sion, la taille de l’image est diminuée de 71%. Par contre, lorsque l’image présente beau-
coup de mouvements, c’est la méthode “Pré-traitement + Gzip” qui fournit le meilleur
taux de compression (44%).
Nous allons maintenant évaluer les temps de compression pour chaque méthode.
Le temps que met chaque méthode pour compresser l’image est évalué sur les dix
premières images capturées. Cette évaluation fait intervenir les trois méthodes de com-
135
CHAPITRE 5. EVALUATION ET EXPERIMENTATION
pression dans le cas où l’image présente peu de mouvements. Par contre lorsque l’image
présente beaucoup de mouvements, seulement deux méthodes sont utilisées (“Gzip”, “pré-
traitement + Gzip”). En effet, dans ce dernier cas la méthode “pré-traitement + Huffman”
ne présente pas d’interêt étant donné que son utilisation fournit un taux de compression
largement supérieur à la taille originale de l’image (300%).
Les figures 5.17 et 5.18, montrent respectivement les temps de compression necéssaires
pour chaque méthode avec peu de mouvements et beaucoup de mouvements dans les
images.
Fig. 5.17 – Les temps de compression lorsqu’il y a peu de mouvements dans l’image.
Fig. 5.18 – Les temps de compression lorsqu’il y a beaucoup de mouvements dans l’image.
L’analyse des résultats obtenus nous a permis d’implanter un algorithme de choix au-
tomatique de la méthode de compression à utiliser. En effet, il suffit de déterminer un seuil
qui permet de départager l’appartenance de l’image à une des catégories peu ou beaucoup
de mouvements. Si l’image présente peu de mouvements alors la méthode “pré-traitement
136
CLIENT/SERVEUR DE ARITI
+ Huffman” est choisie, sinon c’est la méthode “pré-traitement + Gzip” qui sera utilisée.
Pour une image à 256 niveaux de gris ce seuil est “128”, si NTE est supérieur à 128 alors
l’image est considérée dans la catégorie des images présentant beaucoup de mouvements,
sinon elle est dans celles présentant peu de mouvements.
L’organigramme de choix automatique de la méthode de compression est donné par la
figure 5.19. Avec I désigne l’image brut, Ip l’image après pré-traitement, Iz image après
Gzip, Ipz image après pré-traitement et Gzip, Iph image après pré-traitement et Huffman.
Les codes “2”, “3” et “5”, représentent respectivement les types de compression “Gzip”,
“Pré-traitement + Gzip” et “Pré-traitement + huffman”.
Capure Image
Pre-traitement
I Ip
Gzip Huffman
Iz / Ipz Iph
137
CHAPITRE 5. EVALUATION ET EXPERIMENTATION
(Ts ) et le temps de réponse du processus client (Tr ). Nous considérons que le temps total
effectif (Tt ) est compris entre le temps de la réception d’une demande du client et le temps
de la réception d’une nouvelle demande de ce client, ce qui donne :
Tt = Ts + Tr (5.3)
Dans le cas du serveur d’image vidéo, le temps serveur est donné par :
Ts = Ti + Tc + Te (5.4)
avec
– Ti : temps de capture de l’image.
– Tc : temps de compression de l’image.
– Te : temps de l’envoi de l’image dans le buffer (zone mémoire) de la socket TCP/IP.
90
Fig. 5.20 – Evaluation du temps de capture d’images vidéo Ti avec dix images successives.
138
CLIENT/SERVEUR DE ARITI
Le temps de réponse du processus client est donné par :
Tr = δT + Td + δt (5.5)
avec
– δT : temps de transfert de l’image, il s’agit du délai Internet/Intranet et dépend
complètement de la bande passante.
– Td : temps de décompression de l’image du côté client.
– δt : temps d’envoi d’une nouvelle demande d’images au serveur. Il s’agit du temps
nécessaire pour le transfert du numéro de client (1 octet) vers le serveur.
Dans un premier temps nous présentons les résultats obtenus lorsque le système ARITI
est utilisé par un seul opérateur se connectant en local depuis une autre machine interne
au laboratoire. Par la suite, nous présentons les résultats obtenus lorsque l’opérateur se
trouve à moyenne (France, Italie, Espagne, etc.) et à longue distance (Canada, Washing-
ton, Argentine, Brésil, etc.).
Dans le but d’un télétravail coopératif, des tests avec plusieurs opérateurs connectés
simultanément au système, ont été réalisés en locale, moyenne et longue distance.
L’objectif de ces tests est d’un côté, d’analyser le comportement et les performances du
serveur image de ARITI, lorsque les sites clients se trouvent à des endroits différents dans
le monde, et pour cela, nous avons évalué le temps serveur (Ts ) et le temps de réponse
des clients (Tr ). De l’autre côté, nous avons mesuré les temps moyens necéssaires pour la
mise à jour, des images vidéo et des environnements virtuels par rapport aux différents
site clients.
Dans ce type de connexion (locale), nous constatons que le fait d’utiliser des images
avec peu ou beaucoup de mouvements, avec des méthodes de compression différentes, ne
présentent pas un écart important sur le temps total Tt (Éq. (5.3)). En effet, pour des
images brutes (sans compression), le temps total moyen est de 576 ms (0.104 sec + 0.472
sec, voir la figure 5.22-(A)).
Pour des images avec peu de mouvements, ce temps avec une compression “Gzip” est
de 536 ms (0.173 sec + 0.363 sec voir la figure 5.22-(B)) alors qu’il est de 446 ms (0.153
sec + 0.293 sec, voir la figure 5.23-(A)) lorsque “Gzip” est précédée d’un pré-traitement.
Par contre ce temps est de 591 ms (0.138 sec +0.453 sec, dans la figure 5.23-(B)) lorsque
la méthode de Huffman précédée d’un pré-traitement est utilisée sachant qu’elle fournit
139
CHAPITRE 5. EVALUATION ET EXPERIMENTATION
0.472
0.363
0.104 0.173
(A) (B)
Fig. 5.22 – Evaluation des temps serveur et réponse du client lorsqu’il y a peu de mou-
vements dans l’image. (A) : Pour des images brutes, (B) : Pour des images compressées
avec Gzip.
0.453
0.293
0.153 0.138
(A) (B)
Fig. 5.23 – Evaluation des temps serveur et réponse du client lorsqu’il y a peu de mouve-
ments dans l’image. (A) : Pour des images prétraitées ensuite compressées en Gzip, (B) :
Pour des images prétraitées en compressées avec Huffman.
Pour des images avec beaucoup de mouvements, le temps total moyen est de 535 ms
pour une compression “Gzip” (figure 5.24-(A)) et vaut 531 ms (figure 5.24-(B)) lorsque
la compression “Gzip” est précédée d’un pré-traitement.
Dans cette expérimentation, les faibles variations du temps total moyen, quelque soit la
méthode de compression d’image, est une conséquence directe du fait que le site opérateur
n’est pas éloigné du site esclave. En effet, en connexion locale, les délais de communications
sont très faibles malgré leurs instabilités (par exemple ce délai augmente brusquement lors
de l’expérimentation avec la méthode de Huffman précédée d’un pré-traitement représenté
par la figure 5.23-(B)).
Expérimentalement, les images qui résultent des déplacements réalisés par le robot,
sont considérées comme étant des images présentant peu de mouvements. Dans la majo-
140
CLIENT/SERVEUR DE ARITI
0.362
0.365
0.17 0.169
(A) (B)
Fig. 5.24 – Evaluation des temps serveur et réponse du client lorsqu’il y a beaucoup de
mouvements dans l’image. (A) : Pour des images compressées avec Gzip, (B) : Pour des
images prétraitées et ensuite compressées avec Gzip.
rité des cas, c’est la méthode de Huffman précédée d’un pré-traitement qui est utilisée.
Nous présentons maintenant, les résultats obtenus lorsque le site opérateur se trouve
à moyenne distance.
De nombreux opérateurs en Europe ont utilisé le système ARITI et réalisé des tâches.
Nous présentons ci-dessous, quelques résultats de connexion lorsque le site opérateur se
trouve en France, en Italie, en Espagne et au Royaume-Uni.
La figure 5.25, montre le résultat d’une connexion d’un opérateur se trouvant à “Tou-
louse”. Le temps moyen serveur est de 127 ms et le temps moyen de réception d’une
nouvelle demande du client est de 2.49 sec, ce qui donne un temps total (Tt ) moyen de
2.617 sec.
2.49
0.127
Fig. 5.25 – Evaluation des temps serveur et réponse du client à moyenne distance.
L’adresse Internet du site client est “Toulouse-17-133.abo.wanadoo.fr”.
141
CHAPITRE 5. EVALUATION ET EXPERIMENTATION
3.07
0.108
Fig. 5.26 – Evaluation des temps serveur et réponse du client à moyenne distance.
L’adresse Internet du site client est “pc-41-13.inrets.fr”.
Un autre type de connexion est celui où le site opérateur est relié à Internet par un
modem, il s’agit d’une connexion dont le débit réel est inférieur à 6 KO/s. Le temps total
moyen est de 5.312 sec (0.112 sec + 5.2 sec voir la figure 5.27).
5.2
0.112
Fig. 5.27 – Evaluation des temps serveur et réponse du client à moyenne distance.
L’adresse du site client est “dyn-213-36-102-192.ppp.libertysurf.fr”.
Une connexion depuis l’Italie a permit d’avoir un temps total moyen intéressant de
l’ordre de 1.085 sec, avec Tr = 0.95 sec et Ts = 0.135 sec (figure 5.28). Dans ce cas, le
débit du côté du site client est de 1 GB/s (Giga Bits par seconde).
Il est évident que le temps total Tt dépend essentiellement de la bande passante des
deux sites maı̂tre et esclave, et aussi suivant le nombre de personnes connectées au réseau
Internet à un instant donné. Nous constatons aussi que le temps serveur (Ts ) moyen subit
une faible variation (de 108 ms à 135 ms suivant les expérimentations présentées par les
figures 5.25, 5.26, 5.27 et 5.28).
142
CLIENT/SERVEUR DE ARITI
0.95
0.135
Fig. 5.28 – Evaluation des temps serveur et réponse du client à moyenne distance.
L’adresse Internet du site client est “pc.area.ba.cnr.it”.
Dans le tableau 5.3, nous présentons les résultats pour d’autres connexions réalisées à
moyenne distance. La première ligne représente les résultats de connexion depuis l’IRISA1
de Rennes (avec une bande passante de 1 GB/s). La deuxième et la troisième ligne, pour
une connexion de l’Espagne et la dernière du Royaume-Uni.
Les résultats représentés dans ce tableau sont obtenus sur une série d’envoi de 30 images
vidéo. avec
– MTs : Moyenne du Temps serveur.
– MTr : Moyenne du Temps de réponse du client (réception d’une nouvelle demande
du client)
– T MI : Taille Moyenne de l’image vidéo
– HC : Heure de Connexion (heure locale)
Nous présentons dans ce qui suit, les résultats de connexion lorsque le site opérateur
se trouve à une longue distance.
La télépération du robot à aussi été réalisée par des opérateurs se trouvant dans
d’autres continents, tels que l’Amérique, l’Asie et l’Océanie. Nous présentons ici quelques
résultats de connexion depuis “San Francisco”, “Washington”, “Canada”, “Brésil”, “Ar-
gentine”.
La figure 5.29, montre les résultats de connexion d’un opérateur se trouvant a “San
Francisco”. Le temps total Tt moyen est de 5.9 sec (0.12 sec + 5.78 sec)
1
Institut de Recherche en Informatique et Systèmes Aléatoires
143
CHAPITRE 5. EVALUATION ET EXPERIMENTATION
5.78
0.12
Fig. 5.29 – Evaluation des temps serveur et réponse du client à longue distance. L’adresse
du site client est “1Cust161.tnt1.san-francisco3.ca.da.uu.net”
5.48
0.144
Fig. 5.30 – Evaluation des temps serveur et réponse du client à longue distance. L’adresse
Internet du site client est “internet-pub2.biblio.polymtl.ca”
144
CLIENT/SERVEUR DE ARITI
Adresse du site distant MTs (ms) MTr (sec) T MI (KO) HC
Washington 2 111.78 1.46 12.584 18 :25 :32
host052199.arnet.net.ar 109.26 5.69 14.348 16 :54 :20
line181.comsat.net.ar 119.41 7.45 16.581 19 :08 :27
maverick.furb.rct-sc.br 107.94 5.37 15.570 13 :30 :25
nc2608-50.cudenver.edu 111.78 1.27 13.696 20 :08 :03
141-211-31-173.bus.umich.edu 114.92 1.42 14.356 21 :01 :13
Une expérimentation a été réalisée en locale au sein même de notre laboratoire Systèmes
Complexes du CEMIF (Centre d’Etude de Mécanique d’Ils de France). Cinq opérateurs
se sont connectés au système ARITI dans le but d’un télétravail coopératif (une mission
partagée par cinq opérateurs).
Les machines maı̂tres sont des Pentiums, dont la vitesse du processeur est de 350
Mhz pour le maı̂tre et 500 Mhz pour les autres. Pour cette expérience, les connexions au
système ARITI sont faites d’une manière séquentielle. En effet, le deuxième opérateur,
attend environ 1 mn après la connexion du premier, etc. Ce temps d’attente nous l’avons
imposé afin de pouvoir récupérer suffisamment de données nécessaires pour évaluer les
performances du client/serveur en fonction du nombre de clients connectés au système.
Nous présentons ici essentiellement l’expérimentation lorsque le premier opérateur contrôle
le robot réel et les quatre autres supervisent en virtuel et en réel les actions réalisées par
cet opérateur maı̂tre.
Nous avons mesuré les moyennes des temps, serveur et réponse du client, sur une série
de 10 images vidéo envoyées. Cette évaluation est faite dans un premier temps avec un
seul opérateur connecté, ensuite avec 2, 3, 4 et 5 opérateurs simultanément.
avec :
– MT s désigne la Moyenne du Temps serveur en fonction du nombre de connexions
simultanées.
– MT r désigne la Moyenne du Temps de réponse du client (ou reprise du serveur) en
fonction du nombre de connexions simultanées.
Des résultats avec les différentes méthodes de compression d’images sont représentés
dans les figure 5.31, 5.32 pour des images avec peu de mouvements et la figure 5.33 pour
des images avec beaucoup de mouvements.
145
CHAPITRE 5. EVALUATION ET EXPERIMENTATION
(A) (B)
Fig. 5.31 – Les temps moyens, serveur et reprise du serveur, pour une connexion de 1 à 5
clients lorsqu’il y a peu de mouvements dans l’image. (A) : Pour des images brutes, (B) :
Pour des images compressées avec Gzip.
(A) (B)
Fig. 5.32 – Les temps moyens, serveur et reprise du serveur, pour une connexion de 1 à
5 clients lorsqu’il y a peu de mouvements dans l’image. (A) : Pour des images prétraitées
ensuite compressées en Gzip, (B) : Pour des images prétraitées et compressées avec Huff-
man.
146
CLIENT/SERVEUR DE ARITI
(A) (B)
Fig. 5.33 – Les temps serveur, et reprise du serveur, pour une connexion de 1 à 5 clients
lorsqu’il y a beaucoup de mouvements dans l’image. (A) : Pour des images compressées
avec Gzip, (B) : Pour des images prétraitées et ensuite compressées avec Gzip.
Nous présentons maintenant les résultats obtenus lors de la télésupervision avec re-
tour prédictif distribué. Pour cela, nous avons mesuré les temps moyens nécessaires pour
la mise à jour des images réelles et des environnements réels, en fonction du nombre de
clients connectés au système ARITI (voir le tableau 5.5).
Soit :
– MR ER : Moyenne du temps de Réponse du client pour la mise à jours des images
Réelles
– MR EV : Moyenne du temps de Réponse du client pour la mise à jours de l’envi-
ronnement virtuel.
Ces résultats, montrent le gain de temps que peut fournir un retour prédictif lors d’un
télétravail ou encore lors d’un télétravail coopératif. En effet, les actions réalisées par
l’opérateur maı̂tre avec le robot virtuel dans son environnement virtuel, sont récupérées
par le serveur de commande et envoyées aux différents superviseurs. Pour la mise à jours
de l’environnement virtuel du côté de chaque client, le serveur de commande informe
chaque client superviseur, de l’état actuel du robot et des tâches en cours. Dans cette
147
CHAPITRE 5. EVALUATION ET EXPERIMENTATION
Tab. 5.5 – La moyenne des temps pour la mise à jour des images réelles et des environne-
ments virtuels lors d’un télétravail coopératif avec plusieurs opérateurs. Dans ce cas, les
opérateurs se trouvent dans le même laboratoire.
expérimentation, les données necéssaires sont les coordonnées des quatre moteurs du ro-
bot (24 octets) et une chaı̂ne de caractères représentant le codage de l’état des tâches
réalisées (9 octets). Il est cependant évident que la taille totale des données nécessaires
pour la mise à jour des environnements virtuels est très petite par rapport à la taille des
images à envoyer pour la mise à jour de l’affichage réel (33 octets << 12584 octets dans
le meilleur des cas).
Par contre, le temps moyen pour la mise à jour des environnements virtuels augmente
en fonction du nombre d’opérateurs utilisant le système ARITI simultanément. Cette
augmentation se justifie par le fait que le serveur envoie les données (pour la mise à jour
de l’environnement virtuel) dans l’ordre de passage en mode “télésupervision”. La figure
5.34 montre les deux courbes représentant les temps moyen de mise à jour des images
réelles et des environnements virtuels.
Fig. 5.34 – Temps de mise à jour des images réelles et des environnements virtuels en
fonction du nombre d’opérateur utilisant le système ARITI en connexion locale.
Nous allons maintenant voir les résultats de connexion à moyenne et longue distance.
Deux expérimentations ont été réalisées en faisant participer seulement deux opérateurs
à chaque fois.
148
5.4. BILAN
Tab. 5.6 – La moyenne des temps pour la mise à jour des images réelles et des environ-
nements virtuels lors d’un travail coopératif avec deux opérateurs distants. Dans ce cas,
les opérateurs se trouvent en Espagne.
Tab. 5.7 – La moyenne des temps pour la mise à jour des images réelles et des environ-
nements virtuels lors d’un travail coopératif avec deux opérateurs distants. Dans ce cas,
le premier se trouve en Italie et le deuxième au Canada.
5.4 Bilan
Les expérimentations présentées dans ce chapitre, nous ont permis d’évaluer notre
système de télétravail ARITI. En effet, dans la première section, nous avons montré que
l’interface de ARITI permet un apprentissage des tâches et que l’utilisation des guides
virtuels fournit une sécurité pour le robot et son environnement. De même, l’utilisation
des guides virtuels attractifs permet d’améliorer les performances des opérateurs vis à vis
des tâches de téléopération, en fournissant une meilleure précision d’approche des objets
à manipuler (inférieure au mm) et un meilleur temps de réalisation des missions (7.7 sec
pour une tâche d’atteinte d’une cible avec un guide virtuel attractif contre 22.21 sec sans
guide virtuel).
Par ailleurs, l’évaluation des méthodes de compression d’images étudiées, nous a per-
mis de déterminer un algorithme de choix automatique de la compression à réaliser en
fonction de la dynamique de l’image. En effet, le choix s’est porté sur un “pré-traitement”
suivi de la méthode de “Huffman” lorsque les images vidéo présentent peu de mouvements
(avec un taux de compression de 71%). Par contre, lorsque les images présentent beau-
coup de mouvements, le “pré-traitement” suivi de la méthode “Gzip” est choisie pour
149
CHAPITRE 5. EVALUATION ET EXPERIMENTATION
D’autres expérimentations ont été réalisées pour évaluer les performances du système
ARITI et essentiellement l’architecture client/serveur. Nous avons montré la stabilité du
serveur vis à vis de nombreuses connexions, locales, moyennes et grandes distances. En
effet, la téléopération en utilisant le système ARITI, essentiellement à moyenne et longue
distance, est devenue possible grâce au retour prédictif permettant aux opérateurs d’une
part, de contrôler le robot réel via sa représentation virtuelle et d’autre part, de superviser
l’exécution des tâches en réalité augmentée. Bien que les délais de transmissions d’images
vidéo en particulier, dépendent complètement de la distance et de la bande passante des
deux sites et essentiellement des sites clients. Par exemple pour une téléopération en local
avec un débit réseau inférieur à 700 KO/s, nous obtenons un peu plus de deux images
par seconde. Pour une téléopération depuis “Toulouse” le délai moyen est de 2.5 sec pour
une image, depuis l’IRISA de Rennes et l’Italie avec un débit de 1 Gbits/s, ce délai est
autour d’une seconde (une image par seconde).
Pour une téléopération à longue distance, le même phénomène a été constaté, par
exemple depuis “San-francisco”, “Montréal” et “Argentine”, ce délai est entre 5 et 7 se-
condes alors que depuis “Washington” le retour d’une images vidéo se fait toutes les 1.5
sec en moyenne.
150
Conclusions
Tout au long de cette thèse, nous avons essayé d’atteindre nos objectifs. En effet, des
réponses aux problématiques posées ont été apportées et présentent ainsi notre contribu-
tion, à savoir :
Les outils logiciels et matériels nécessaires pour la mise en œuvre d’un système de
télétravail ont été proposés et utilisés pour la réalisation du système ARITI (ce
problème est traité dans le chapitre 3).
Les nouveaux concepts et les solutions déjà apportées aux problèmes liés à la
télérobotique, ont été intégrés sur une plate-forme universelle et à moindre coût,
puisque l’interface du système ARITI a été développée sur un simple PC (ce problème
est traité dans les chapitres 3 et 4).
L’utilisation d’un système de télétravail est devenue souple et fournit un bon ap-
prentissage pour l’opérateur. Les expérimentations réalisées avec le système ARITI
l’ont montré dans le chapitre 5.
Les types d’assistances nécessaires à l’opérateur afin d’améliorer ses performances,
sont présentés dans le chapitre 3, il s’agit d’assistance à la perception de l’environ-
nement, à la commande du robot et à la supervision des tâches. Pour l’assistance à
la commande du robot, des guides virtuels sont utilisés, ces derniers sont présentés
dans les chapitres 2 et 4, et leurs performances sont discutées dans le chapitre 5.
Une architecture client/serveur supportant un travail coopératif est réalisée et est
présentée dans le chapitre 3 et ses performances sont discutées dans le chapitre 5.
Quelques avantages que peuvent offrir les systèmes de télétravail en particulier en
utilisant le réseau Internet, ont été fournis dans le chapitre 4.
Le premier chapitre nous a permis d’un côté, de présenter les différents aspects du
télétravail ainsi que les méthodes et les tendances technologiques qui contribuent énormém-
ent à son évolution. D’un autre côté, il nous a permis d’analyser les systèmes de téléopérati-
on et de téléprogrammation de robots existants, les méthodes et les techniques utilisées
pour pallier les problèmes liés à la télérobotique en général et enfin d’analyser les récents
travaux concernant le contrôle de systèmes robotique via Internet. A l’issu de ce chapitre,
des problématiques ont été dégagées est ont fait objet d’études et de discussions dans les
autres chapitres.
Dans le troisième chapitre, nous avons présenté les méthodes et les outils nécessaires
pour un contrôle en réalité augmentée à savoir, la modélisation de l’environnement et la
calibration de la caméra et du robot. Nous avons aussi présenté le système expérimental de
télétravail baptisé ARITI. L’interface de ce système est implantée en langage JAVA dans
le but de la rendre portable et indépendante des systèmes d’exploitation sur lesquels elle
va s’exécuter. Nous avons insisté sur des détails de l’architecture client/serveur réalisée
afin de montrer d’un côté, sa complexité et de l’autre côté, la faisabilité conceptuelle et
technique d’une architecture destinée à supporter un télétravail d’une part et un travail
coopératif d’autre part.
Par ailleurs, nous avons présenté les trois modes de télétravail utilisés qui sont la téléopéra-
tion, la téléprogrammation de tâches et la télécoopération/télésupervision. Ce dernier
mode utilise un retour prédictif distribué, afin de permettre aux différents opérateurs de
percevoir à la fois, les images vidéo de l’environnement réel distant et la mise à jour 3D
de l’environnement virtuel au niveau de chaque client superviseur.
Dans le quatrième chapitre, nous avons présenté quelques applications pouvant bénéfic-
ier d’un système de télétravail via Internet. Nous avons cependant souligné la nécessité
d’avoir d’un côté, une interface administrateur pour la maintenance et la mise à jour d’un
tel système et de l’autre côté une interface destinée aux utilisateurs du système.
Nous avons décrit certaines tâches réalisées suivant le mode de télétravail choisi, d’un
côté, les tâches de téléopération (saisie/dépôt d’objets, etc.) où l’opérateur s’il le désire
peut être assisté par des guides virtuels. D’un autre côté, l’opérateur peut télétravailler à
un haut niveau (superviseur). Pour cela, il spécifie seulement la tâche à faire exécuter par
les robots virtuel et réel simultanément. Enfin, si une mission nécessite l’intervention de
plusieurs opérateurs simultanément dans le but d’un travail coopératif par exemple, un
opérateur prend le contrôle du robot réel pendant que les autres supervisent en virtuel et
en réel les actions de celui-ci. Dans ce dernier cas, le contrôle des robots virtuel et réel est
partagé entre les différents opérateurs.
Nous avons montré la flexibilité et l’ouverture du système ARITI pour d’autres appli-
cations, en utilisant un robot mobile. En effet, une application sur un robot mobile a été
réalisée en s’inspirant de l’existant et en rajoutant essentiellement le module contenant les
nouveaux modèles virtuels ainsi que le module de client/serveur commande. Nous avons
cité d’autres domaines d’application où un système de télétravail ou de travail coopératif
via Internet peut être intéressant. La liste fournie n’est bien entendu pas exhaustive.
Dans le dernier chapitre, nous avons réalisé des expérimentations afin d’évaluer notre
système de télétravail ARITI. En effet, nous avons montré que l’interface de ARITI per-
met un apprentissage des tâches et que l’utilisation des guides virtuels fournit une sécurité
pour le robot et son environnement. Nous avons montré que l’utilisation des guides vir-
tuels attractifs permet d’améliorer les performances des opérateurs vis à vis des tâches de
téléopération, en fournissant une meilleure précision d’approche des objets à manipuler
et un meilleur temps de réalisation des missions (7.7 sec pour une tâche d’atteinte d’une
cible avec un guide virtuel attractif contre 22.21 sec sans guide virtuel).
Par ailleurs, l’évaluation des méthodes de compression d’images étudiées, nous a permis
de déterminer un algorithme de choix automatique de la compression à réaliser en fonction
de la dynamique de l’image. En effet, le choix s’est porté sur un “pré-traitement” suivi de
la méthode de “Huffman” lorsque les images vidéo présentent peu de mouvements (avec
un taux de compression de 71%). Par contre, lorsque les images présentent beaucoup de
152
CONCLUSIONS
Les autres expérimentations présentées dans ce dernier chapitre, ont permis d’évaluer
les performances du système ARITI et essentiellement l’architecture client/serveur. Nous
avons montré la stabilité du serveur vis à vis de nombreuses connexions, locales, moyennes
et grandes distances. En effet, le télétravail et le travail coopératif en utilisant le système
ARITI (essentiellement à moyenne et longue distance) sont devenus possibles grâce au
retour prédictif distribué. Ce dernier, permet aux opérateurs d’un côté, de contrôler le
robot réel via sa représentation virtuelle et d’un autre côté, de superviser l’exécution des
tâches en réalité augmentée.
153
CONCLUSIONS
Perspectives
Processus Processus
Son Son
Tactile Tactile
Force Force
Fig. 5.35 – Illustration des transferts d’informations multimodales via Internet entre le
site maı̂tre (client) et le site esclave (serveur).
Il faut remarquer que dans l’état actuel du système ARITI, nous ne pouvons travailler
qu’avec des environnements modélisés (robot, objets, etc.). En effet, pour permettre une
modélisation interactive de l’environnement nous pouvons faire appel à d’autres systèmes
dédiés sans pour autant reprendre les travaux et tous les efforts réalisés à ce sujet.
154
CONCLUSIONS
le système ARITI, mais une communication avec le système MCIT (Mutimédia Control
Interface in Teleoperation) existant sur une station Silicon Graphics (SG) au sein de notre
laboratoire pourrait très bien apporter cette solution. En effet, du moment que le transfert
de l’image vidéo de ARITI vers MCIT suffit pour que ce dernier traite l’image et ensuite
envoie les informations nécessaires pour recaler l’objet virtuel sur le réel(Mallem et al.,
1996) et (Moreau et al., 1997).
PC Linux
Station
Envoi images SG
Serveur
Réception résultats
Fig. 5.36 – Illustration de la communication entre le système ARITI et MCIT pour faire
du recalage d’objets virtuels sur les objets réels.
Télécalibration de la caméra
155
CONCLUSIONS
La figure 5.37 illustre un exemple de deux opérateurs distants qui désirent réaliser une
mission qui nécessite l’intervention de deux robots, chaque opérateur contrôle un robot et
voit ce que fait l’autre en virtuel et en réel. Ici, les caractéristiques et les fonctionalités de
chaque robot sont gérées par un serveur dédié. L’extension du système ARITI ne servira
que d’intermédiaire pour le contrôle des deux robots via Internet.
Serveur Site client 1
robot 1
Extention du
Robot 1 serveur
ARITI
Site client 2
Serveur
robot 2
Robot 2
Fig. 5.37 – Illustration de la téléopération de deux robots par deux clients distants en
utilisant une extension du système ARITI.
Les méthodes étudiées et les outils utilisés pour réaliser le système de télétravail ARITI,
peuvent très bien être utilisées et améliorées pour la conception d’un langage de haut ni-
veau pour la télémanipulation d’objets via Internet. En effet, les méthodes de désignation
et de manipulation sur écran d’objets virtuels (décrites dans le chapitre 2), ainsi que
l’existence des outils virtuels paramétrables et portables (comme les guides virtuels par
exemple) peuvent être utilisés pour créer un langage de télémanipulation de haut niveau.
Par exemple l’opérateur peut saisir et déposer un objet virtuel avec la souris (2D ou
encore 3D ou 6D), et les robots virtuel et réel exécutent la tâche sans que l’opérateur
agisse sur le robot virtuel. Ceci nécessite l’utilisation des guides virtuels complètement
autonomes qui seront associés à chaque sous tâche (saisie, dépôt, etc.). Pour cela, une
analyse sur les interactions de l’opérateur avec l’environnement virtuel est nécessaire (as-
socier un sens aux différentes actions de l’opérateur vis à vis de l’environnement virtuel),
156
CONCLUSIONS
ainsi qu’une grammaire prenant en compte des outils d’assistance qui vont provoquer
l’auto-commande du robot.
Cette analyse est rendu possible grâce à une connaissance plus approfondie de l’envi-
ronnement. En effet, il faut en plus du modèle géométrique utilisé actuellement, prendre
en compte les modèles cinématiques, dynamiques et physiques (liaisons ou dépendances
entre les objets de l’environnement).
Serveur Client
Client
HF
Client
HF
Robot
Client
mobile
Client
Client
Fig. 5.38 – Illustration de l’utilisation d’un seul robot par plusieurs personnes handi-
capées.
157
CONCLUSIONS
158
Bibliographie
Allongue, S. et M.Soto (1997). Paradigmes sur les comportements dans le cadre de l’in-
teropérabilité en réalité virtuelle. In 1ere conf. francophone de Modélisation et Simu-
lation des systèmes de production et logistique MOSIM’97.
Andriot, C. Automatique des Systèmes Téléopérés avec Retour d’Effort. Limitation des
Performances. Thèse de doctorat, Université Pièrre et Marie Curie (1997).
Backes, P. G., Tao, K. S., et Tharp, G. K. (1998). Mars pathfinder mission internet-
based operations using wits. In IEEE, International Conference on Robotics and
Automation, pages 284–291.
Backes, P. G. (WWW). Pathfinder sojourner rover simulation web page.
http ://mars.graham.com/wits/.
Bannon, L. et Schmidt, K. (1989). Cscw : Four characters in search of a context. In In
Proceedings of the European Community Conference on CSCW (EC-CSCW), pages
358–372, London.
Bejczy, A. (1992). Teleoperation : The language of the human hand. In The IEEE Int.
Workshop on Robot and Human Communication, ROMAN’92, pages 32–43, Septem-
ber 1-3, Tokyo, Japan.
Bejczy, A. et Kim, W. (1990). Predictive displays and shared compliance control for time-
delayed telemanipulation. In IEEE Int. Workshop on Intelligent Robots and Systems,
IROS’90, pages 407–412, Tsuchiura, Japan, July.
Bejczy, A., Kim, W., et Venema, S. (1990). The phantom robot : Predictive displays
for teleoperation with time delay. In IEEE Int. Conf. on Robotics and Automation,
pages 546–551.
Binstock, A. et Rex, J. (1995). Practical Algorithms for Programmers. Reading, MA :
Addison-Wesley.
Blanc, C. et Schlick, C. (1996). Ratioquadrics : an alternative model for superquadrics.
Bonneau, P. et Even, P. (1993). Man-machine cooperation for 3d objects pose estimation.
In IEEE SMC conf., volume 2, pages 294–299, Le Touquet, december.
Brooks, T. (1990). Telerobotic response requierements. In IEEE Int. Conf. on Systems
Man and Cybernetics, pages 113–120, Nice, France, May.
Brooks, T. et Ince (1992). Operator vision aids for telerobotic assembly and servicing in
space. In IEEE Int. Conf. on Robotics and Automation, ICRA’92, pages 886–891,
Nice, France, May.
Béréziat, A., Lagorce, J., et Turbé-Suetens, N. (2000). Travail et activités à distance.
Editions d’Organisation.
159
BIBLIOGRAPHIE
Burdea, G. (1993). Virtual Reality systems and Applications. Edison, NJ, USA.
Burdea, G. et Coiffet, P. (1994). Virtual Reality Technology. John Wiley et Sons, Inc Eds,
New York.
Burdea, G., Zhuang, G., Roskos, J., et E. Silver, K. L. (1992). A portable dextrous master
with force feedback. In Presence, volume 1, No. 1, pages 18–28.
Cammoun, Detriche, Lauture, et Lesigne (1994). Telerobotics in the service of disabled
persons. In ORIA’94 de la téléprésence vers la réalité virtuelle, 5éme colloque inter-
national et convention d’affaires, pages 249–254, Marseilles, Decembre.
Caudell, T. P. (1994). Introduction to augmented reality. In SPIE Proceedings :Telema-
nipulator and Telepresence Technologies, volume 2351, pages 66–70.
Causse, O. et Crowley, J. (1993). A man-machine interface for a mobile robot. In
IEEE/RSJ Int. Conf. on Intelligent Robots and Systems, IROS’93, pages 1487–1494,
Yokohama, Japan, July 26-30.
Chekhar, Y. Saisie et Traitement d’images télémétriques. Application à la Téléopération.
Doctorat de robotique, Université d’Evry Val d’Essonne (1994).
Clement, G., Fournier, Gravez, P., et Morillon, J. (1988). Computer aided teleopera-
tion : From arm to vehicle control. In IEEE Int. Conf. on Robotics and Automation,
ICRA’88, volume 1, pages 590–592,, Philadelphia, PA, April 24-29.
Coiffet, P. et Gravez, P. (1991). Human-Robot Cooperation : Toward an Advanced Teleo-
peration Mode. Tzafestas editor, Marcel Dekker Inc.
Conway, L., Volz, R., et Walker, M. (1990). Teleautonomous systems : Projection and
coordinating intelligent action at a distance. In IEEE Tran. on Robotics and Auto-
mation, volume 6, pages 146–158, April.
Crespin, R. (1999). Surfaces implicites. http ://dept-info.labri.u-
bordeaux.fr/∼crespin/Implicite/index.html.
DeLarminat, P. (1993). Automatique – commande des systèmes linèaires. Edition Hermès,
Paris.
Devy, M., Garric, V., et Orteu, J. (1997). Camera calibration from multiple views of
a 2d object, using a global non linear minimization method. In IEEE Int. Conf.
on Intelligent Robots and Systems, IROS’97, volume 3, pages 1583–1589, Grenoble,
septembre.
Feiner, S., MacIntyre, B., et al (1993). Windows on the world : 2d windows for 3d
augmented reality. In Proceedings of ACM Symposium on User Interface Software
and Technology, pages 145–155, Atlanta, GA, Association for Computing Machinery.
Ferell, W. R. (1965). Remote manipulation with transmission delay. In IEEE Transactions
on Human Factors in Electronics, volume 6, pages 24–32, september.
Ferell, W. R. (1966). Delayed force feedback. In IEEE Transactions on Human Factors
in Electronics, pages 445–449, octobre.
Fiorini, A., Bejczy, A. K., et Schenker, S. (1992). Integrated interface for advanced teleo-
peration. In IEEE SMC Conf, pages 18–21, October.
Foley, van Dam, Feiner, et Hughes (1990). Computer Graphics - principles and practice.
Addison-Wesley publishing company.
Fraisse, P. Contribution à la Commande Robuste Position/Force des Robots Manipulateurs
à Architecture Complexe Application à un Robot à Deux Bras. Thèse de doctorat,
l’Université Montpellier II (17 Fevrier, 1994).
160
BIBLIOGRAPHIE
161
BIBLIOGRAPHIE
Kosuge, K., Itoh, T., Fukuda, T., et Otsuba, M. (1995). Tele-manipulation system ba-
sed on task-oriented virtual tool. In IEEE Int. Conf. on Robotic and Automation,
ICRA’95, pages 351–356, Nagoya, Japan.
Kosuge, K., Murayama, H., et Takeo, T. (1996). Bilateral feedback control of telemani-
pulators via computer network. In IEEE/RSJ Int. Conf. on Intelligent Robots and
Systems, IROS’96, volume 3, pages 1380–1385, Osaka, Japan.
Lawrence, D. (1993). Stability and transparency in bilateral teleoperation. In The IEEE
Transactions on Robotics and Automation, volume 9, No. 5, pages 624–637, October.
Lederman, S. et Klatzky, R. (1994). The intelligent hand : An experimental approach to
human object recognition and implications for robotics and ai. AI Magazine.
Leung, G. et Francis, B. (1992). Channel”. In 30th Annual Allerton Conf. on Com-
munication, Control and Computing, pages 629–701, Monticello, IL, Sept. 30 - Oct.
2.
Loukil, A. Interface Homme-machine de Contrôle Commande en Robotique téléopérée.
Doctorat de robotique, Université d’Evry Val d’Essonne (1993).
Mallem, M., Chavand, F., et Colle, E. (1992). Computer-assisted visual perception in
teleoperated robotics. In Robotica Journal, volume 10, pages 93–103, Cambridge
Univ. Press, England.
Mallem, M., Rougeaux, et Mellanger, H. (1993). A trajectory generation module for 2d
and 1/2 environment. In IEEE Computers in design, manufacturing and production,
7th Annual European Computer conference, pages 24–27, May.
Mallem, M., M. Shaheen, X., Dourille, et Chavand, F. (1996). A matching method between
an image and its 3d-model using a geometric constraint aproach based on contact.
In CESA’96 IMACS Multiconfèrence, pages 565–569.
Mallem, M., Shaheen, M., et Chavand, F. (1999). Automatic camera calibration based on
robot calibration. In the 16t h IEEE Instrumentation and Measurement Technology
Conference, Venice, Italy, 24-26 mai.
Michelman, P. et Allen, P. (1994). Shared autonomy in a robot hand teleoperation system.
In IEEE/RSJ Int. Conf. on Intelligent Robots and Systems IROS’94, volume 1, pages
253–259, Munich, Germany, Sept. 12-16.
Milgram, P. et Kishino, F. (Dec. 1994). A taxonomy of mixed reality visual displays. In
IEICE Trans. on Information Systems, special issue on Networked Reality, volume
E77-D, N˚. 12, pages 1321–1329.
Milgram, P., Rastogi, A., et grodski, J. (July. 5-7. 1995). Telerobotic control using augmen-
ted reality. In Proceedings 4t h IEEE International Workshop on Robot and Human
Communication (RO-MAN’95), Tokyo.
Moreau, G., Mallem, M., Chavand, F., et N’Zi, E. (1997). Two 3d recovering methods for
robot control. In IFAC’97, SYROCO, pages 531–537.
Nelson, M. et Gailly, J.-L. (1996). The Data Compression Book. New York, NY : M&T
Books.
Niemeyer, G. et Slotine, J. (1991). Stable adaptive teleoperation. In The IEEE Journal
of Oceanic Engineering, volume 16, No. 1, pages 152–162, January.
Nilles, J. (1998). Managing telework : Strategies for managing the virtual Workforce. John
Wiley & Sons.
162
BIBLIOGRAPHIE
163
BIBLIOGRAPHIE
Rastogi, A., Milgram, P., Drasic, D., et Grodski, J. J. (1996). SPIE Volume 2653 :
Stereoscopic Displays and Virtual Reality Systems III. Mark T. Boalas and Scott S.
Fisher and John O. Merritt, San Jose, California, USA.
Rosenberg, L. (1992). The use of virtual fixtures as perceptual overlays to enhance ope-
rator performance in remote environments. In Technical Report, No. AL-TR-1992-
XXX, USAF Amstrong Laboratory, WPAFB OH.
Rosenberg, L. (1993). The use of virtual fixtures to enhance telemanipulation with time
delay. In Proceedings, ASME Winter Anual Meeting on Haptic Interfaces for Virtual
environment and Teleoperator Systems, New Orleans, Loisiana.
Saucy, P. et Mondala, F. (Oct. 12-17, 1998). Khepontheweb : One year of access to a
mobile robot on the internet. In IEEE/RSJ International Conference on Intelligent
Robots and Systems IROS’98, pages 23–30, Victoria, B.C. Canada.
Sayers, C. et Paul, R. (1994). An operator interface for teleprogramming employing
synthetic fixtures. In Presence, volume 3, No. 4.
Sayers, C., Lai, A., et Paul, R. (May, 1995). Visual imagery for subsea teleprogramming.
In IEEE Robotics and Automation Conference.
Schal, T. et Zeller, B. (1990). A methodological approach to computer-supported coope-
rative work. In Fifth European Conference on Cognitive Ergonomics, pages 3–6.
Schulz, D., Burgard, W., et Cremers, A. (Oct. 12-17, 1998). Predictive simulation of au-
tonomous robots for tele-operation systems using the world wide web. In IEEE/RSJ
International Conference on Intelligent Robots and Systems IROS’98, pages 31–36,
Victoria, B.C. Canada.
Shaheen, M. Reconnaissance d’objets polyèdriques à partir d’une image vidéo pour la
téléopération. Doctorat de robotique, Université d’Evry Val d’Essonne (9 avril 1999).
Sheridan, T. B. (1992). Telerobotics, Automation and Human Supervisory Control. The
MIT Press, Cambridge, USA.
Sheridan, T. (1993). Space teleoperation through time delay : Review and prognosis. The
IEEE Trans. on Robotics and Automation, 9 :592–606.
Simmons, R. (Oct. 12-17, 1998). Xavier : An autonomous mobile robot on the web.
In IEEE/RSJ International Conference on Intelligent Robots and Systems IROS’98,
pages 43–48, Victoria, B.C. Canada.
Spenny, C. et Schneider, D. (1997). Object resolved teleoperation. In IEEE Int. Conf. on
Robotics and Automation, ICRA’97, Albuquerque, NM, USA, April 20-25.
Spong, M. (1993). Communication delay and control in telerobotics. In Journal of the
Robotics Society of Japan, volume 11, No. 6, pages 803–810.
Stein, M. (Oct. 12-17, 1998). Painting on the world wode web : The pumapaint project.
In IEEE/RSJ International Conference on Intelligent Robots and Systems IROS’98,
pages 37–42, Victoria, B.C. Canada.
Tarn, T. J., Xi, N., Guo, C., et Bejczy, A. (1995). Function-based control sharing for ro-
botic systems. In IEEE/RSJ Int. Conf. on Intelligent Robots and Systems, IROS’95,
volume 3, pages 1–6, Pittsburgh, PA, August 5-9.
Taylor, K. et Trevelyan, J. (Oct. 1995). Australia’s telerobot on the web. In 26t h Inter-
national Symposium On Idustrial Robots, Singapore.
Thibout, C. Réalité Virtuelle et Langages Graphiques : une application pour la
téléopération. Doctorat de mention informatique, Université de Rennes 1 (07 no-
vembre 1996).
164
BIBLIOGRAPHIE
165
BIBLIOGRAPHIE
166
Table des figures
4.16 Le guide virtuel utilisé pour la saisie d’un objet cylindre. Le point E
désigne l’extrémité de l’effecteur du robot et le point A désigne le
centre du disque passant par le point E . . . . . . . . . . . . . . . . 109
4.17 Les propriétés des guides virtuels utilisés pour la saisie de l’objet cy-
lindre numéro 3. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
4.18 Le guide virtuel utilisé pour le dépôt d’un objet cylindre. (A) : Position-
nement des différents guides, avec le point E qui désigne l’extrémité
de l’effecteur du robot et le point A le centre du disque passant par
le point E ; (B) : Exemple d’influence des guides sur les trajectoires
réalisées par les robots virtuel et réel. . . . . . . . . . . . . . . . . . . 111
4.19 Les propriétés des guides virtuels utilisés pour le dépôt de l’objet cy-
lindre numéro 3 sur le support numéro 1. . . . . . . . . . . . . . . . . 113
4.20 Mise à jour de l’architecture du système ARITI pour le contrôle d’un
robot mobile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
4.21 Les images des deux robots mobiles utilisés. (A) : le robot utilisé avec
le système ARITI, (B) : le robot destiné au projet d’assistance aux
personnes handicapées . . . . . . . . . . . . . . . . . . . . . . . . . . 115
4.22 L’IHM utilisée pour le contrôle et la supervision du robot mobile. . . 116
4.23 Illustration de la téléopération d’un robot mobile avec assistance de
deux guides virtuels répulsifs sous forme de plans. (A) : Le robot mobile
subit l’influence des deux guides, (B) : le robot traverse la porte. . . 117
4.24 Propriétés des deux guides virtuels utilisés pour traverser une porte
par le robot mobile. . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
4.25 Simulation du parcours d’une B-Spline par le robot mobile virtuel.
(A) : l’état initial, (B) : pendant le parcours, (C) : le robot traverse la
porte, (D) : l’état final . . . . . . . . . . . . . . . . . . . . . . . . . . 118
4.26 Propriétés du guide virtuel généré par une B-Spline . . . . . . . . . . 119
4.27 Illustration du télé-enseignement . . . . . . . . . . . . . . . . . . . . 121
2.1 Les paramètres des guides virtuels pour la détection des collisions. . . . 51
2.2 Les équations des guides virtuels pour la détection des collisions . . . . 52
2.3 Les différents cas d’utilisation des guides virtuels associés à chaque acteur. 61
Pour le cas du serveur image, nous avons choisi un cas particulier de l’arbre de Huff-
man : les branches de gauche (qui ont une valeur de 1) n’ont pas de branches filles.
L’avantage avec cet arbre, c’est que son codage reste simple : on a juste à donner le
nombre d’éléments suivi des éléments puis du codage.
ii
A. GZIP ET HUFFMAN
[L = 18] veut dire que le mot sera répété jusqu’à obtenir une longueur de 18 caractères. La
compression Gzip utilise la compression LZ77 en premier, puis la compression de Huffman.
iii
ANNEXES
iv
B. FONCTIONNEMENT DES TACHES DE TELEPROGRAMMATION
Validation Fonction
Demarrer Teleprogrammation
oui
Arret ? non Automate pour Atteindre un cible
Synchronisation
robot virtuel / robot réel
oui non
Type_tache="" Fin de tache
v
ANNEXES
légende:
Calcul du point 3D
correspondant
Démarrer téléprogrammation
Calcul du point 3D
correspondant
vi
B. FONCTIONNEMENT DES TACHES DE TELEPROGRAMMATION
Etat
Demarrer Teleprogrammation
Fonction
Création et lancement d’une
thread pour synchronisation
oui
Arret ? non
Synchronisation
robot virtuel / robot réel
vii
ANNEXES
Demarrer Teleprogrammation
mise à jour de
l’état des supports
Type_tache=""
viii
C. ADRESSE INTERNET DES SITES CLIENTS
C.1 En Europe
— Espagne — — Espagne —
62.36.142.66 usuario1-36-142-66.dialup.uni2.es
62.36.131.230 usuario1-36-131-230.dialup.uni2.es
62.36.133.138 usuario1-36-133-138.dialup.uni2.es
— Italie — — Italie —
194.119.205.166 ba.cnr.it
139.191.160.68 pcrt28.jrc.it
– Gréce – – Gréce –
143.233.3.18 iris.iit.demokritos.GR
195.242.129.18 borealis.compulink.gr
- Finlande - - Finlande -
212.38.227.18 free-1-18.dyn.nic.fi
Tab. C.8 – Quelques adresses Internet des sites clients en Europe ayant utilisé ARITI
ix
ANNEXES
– Brésil – – Brésil –
200.135.24.31 maverick.furb.rct-sc.br
- Australie - - Australie -
203.12.148.119 as1-p119.ncle.hunterlink.net.au
- Mexique - - Mexique -
148.233.186.36 du-148-233-186-36.prodigy.net.mx
- Canada - - Canada -
132.207.88.24 internet-pub2.biblio.polymtl.ca
Tab. C.9 – Quelques adresses Internet des sites clients dans le monde ayant utilisé ARITI
x
C. ADRESSE INTERNET DES SITES CLIENTS
- .edu - - .edu -
141.211.31.173 141-211-31-173.bus.umich.edu
132.194.22.50 nc2608-50.cudenver.edu
35.9.38.30 walther.egr.msu.edu
128.2.179.206 MARYSMACHINE.SPEECH.CS.CMU.EDU
- .com - - .com -
199.174.226.92 user-33qtois.dialup.mindspring.com
199.174.227.69 user-33qtoq5.dialup.mindspring.com
4.54.14.160 PPPa35-ResaleGastonia1-2R7135.saturn.bbn.com
24.93.38.185 cs9338-185.austin.rr.com
204.210.133.137 roc-204-210-133-137.rochester.rr.com
24.93.38.185 338-185.austin.rr.com
63.64.166.69 minnow019.mapletronics.com
209.79.29.29 209-79-29-29.max-tnt-01.simi.ca.us.cnmnetwork.com
207.226.216.177 stpm3-4-177.olg.com
- autres - - autres -
130.240.35.111 xi111.sm.luth.se
130.240.35.94 xi094.sm.luth.se
193.10.62.197 unnamed.kmh.se
193.231.207.101 ppp96.dnttm.ro
193.193.217.132 murka.kot.poltava.ua
Tab. C.10 – suite : Quelques adresses Internet des sites clients dans le monde ayant utilisé
ARITI
xi
ANNEXES
xii
D. DES ROBOTS REELS SUR INTERNET
xiii
ANNEXES
PumaPaint - use a Puma robot to paint with brushes, paint and easel - create real
art !
Rhino - let your robotic tourguide show you the Deutsches Museum Bonn (only
active for short periods)
Robotic Garden - robotic plant tending and maintenance over the Internet. If you
water the robot, will it grow up to be a big robot ?
RoboToy - control a 5-DOF manipulator at the University of Wollongong to pick up
pieces of Australian styrofoam ! In a very neat twist, you can control either the real robot,
or a JAVA simulation !
Schoolnet - Robotics Centre WebCam with web-driven remote pan and tilt poin-
ting
UC Santa Barbara Remotely Operated Telescope - the Remote Access As-
tronomy Project invites you to access their Remotely Operated Telescope and submit
requests
University of Ballarat Telerobot - internet operation of a robot manipulator
V-Car - remotely drive R/C cars via the web, with a very interesting interface
Xavier - an Internet-guided mobile robot currently wandering around Carnegie Mel-
lon University
xiv
Résumé :
La téléprésence, ou la présence virtuelle, devient de plus en plus courante grâce à l’évolution
technologique, impliquant une ouverture du potentiel du télétravail. Ce dernier est fortement lié
à la virtualité et à la téléprésence, donc aussi à la robotique et à l’informatique, autant qu’aux
communications. Cette thèse étudie les méthodes et les outils nécessaires à la réalisation d’un
système de télétravail via Internet.
Dans un premier temps, nous présentons les tendances technologiques qui ont contribué à
l’évolution du télétravail. Ensuite, nous nous intéressons à la téléopération et la télérobotique,
nous verrons comment les techniques de la réalité virtuelle et augmentée ont contribué à per-
cer certains verrous, liés généralement à la distance qui sépare les deux sites maı̂tre et esclave.
Dans un deuxième temps, nous nous intéressons à l’assistance au télétravail via Internet. Nous
étudions les méthodes et les outils nécessaires à la réalisation des guides virtuels portables et
paramétrables en proposant ainsi le formalisme implanté.
Dans un troisième temps, nous étudions les méthodes utiles pour un contrôle en réalité aug-
mentée (modélisation d’environnement et calibration de la caméra et du robot). Nous présentons
la méthode retenue pour le télétravail via Internet. Ensuite, nous présentons notre système
expérimental de télétravail baptisé ARITI (Augmented Reality Interface for Telerobotic appli-
cations via Internet). Dans un quatrième temps, nous présentons deux applications, une pour la
télémanipulation et l’autre, pour la téléopération d’un robot mobile.
Enfin, dans un cinquième temps, Nous évaluons quelques tâches de téléopération ainsi que les
méthodes de compression d’image vidéo utilisées. Nous montrons d’une part, la stabilité du ser-
veur du système ARITI vis à vis des différentes connexions, locale, moyenne et grande distance.
D’autre part, comment le retour prédictif distribué facilite à plusieurs opérateurs de télétravailler
en coopération.
Mots-clé : télétravail, travail coopératif, télérobotique, réalité virtuelle, réalité augmentée, In-
ternet
Abstract :
Telepresence or virtual presence has became more and more commonplace thanks to evolution
of technology which implies an opening to the telework capacities. Telework is essentially linked
to virtuality and telepresence and consequently linked to robotics and computing as well as
communications. This work deals with the methods and the tools necessary to the achievement
of a telework system via Internet.
We have first presented, the technologies which has contributed to the advance of the telework.
We will then focus on teleoperation and telerobotics and we will realize how virtual reality tech-
nologies contribute to cope with some problems due to the distance between the master and the
slave sites. Secondly, our interest will focus on telework assistance via Internet. The methods
and tools necessary to the achievement of transportable and configurable virtual fixtures are
studied and a formalism is proposed.
Thirdly, the useful methods for augmented reality control are studied (environment modeling,
camera an robot calibration), then the selected method for the telework via Internet is pre-
sented. Then, the description of the experimental telework system namely ARITI (Augmented
Reality Interface for Telerobotic applications via Internet) is given. Fourthly, Two applications
are presented, one is about telemanipulation tasks, the other one is about teleoperation of the
mobile robot.
Finally, we will estimate the efficiency of some teleoperation tasks and video images compression
methods. On the one hand, we will see the efficiency of the ARITI system with multiple connec-
tions, locale, medium and high distance. On the other hand, we will see how the distributed
predictive display makes it easy for different operators to work together in cooperative mode.
Keywords : telework, cooperative work, telerobotic, virtual reality, augmented reality, Internet