19.01.2015 Views

fusion multisensorielle et teleoperation application un robot mobile ...

fusion multisensorielle et teleoperation application un robot mobile ...

fusion multisensorielle et teleoperation application un robot mobile ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

4th International Conference on Computer Integrated Manufacturing CIP’2007<br />

03-04 November 2007<br />

Fusion Multi-sensorielles <strong>et</strong> Téléopération :<br />

Application à <strong>un</strong> Robot Mobile Manipulateur<br />

A.Rahiche, B.Bouzouia<br />

Division Productique <strong>et</strong> Robotique, Centre de développement des technologies avancées,<br />

CDTA, Baba Hassan, Alger, Algérie.<br />

a_rahiche@yahoo.fr, bbouzouia@cdta.dz<br />

Résumé. C<strong>et</strong> article présente les résultats de l’implémentation<br />

<strong>et</strong> la mise en oeuvre expérimentale du système de téléopération<br />

du Robot <strong>mobile</strong> Manipulateur ROBUTER_ULM. Ce système<br />

perm<strong>et</strong> à <strong>un</strong> opérateur se trouvant éloigné physiquement du site<br />

d’opération, <strong>et</strong> qui n’est pas forcément <strong>un</strong> expert, de manipuler à<br />

distance le <strong>robot</strong>, tout en envoyant des consignes <strong>et</strong> en recevant<br />

les images vidéos du site d’opération issues d’<strong>un</strong>e caméra<br />

installée sur la pince du <strong>robot</strong> <strong>et</strong> les informations concernant<br />

l’état du <strong>robot</strong> proviennent des différents capteurs extéroceptifs<br />

<strong>et</strong> proprioceptifs installés sur ce dernier.<br />

Mots clefs : Téléopération, <strong>fusion</strong> multi sensorielle, vision<br />

artificielle, calibration de caméra, traitement d`image.<br />

I. INTRODUCTION<br />

Le terme téléopération est composé de deux mots, « télé »<br />

de racine grecque signifie à distance, <strong>et</strong> le mot latin<br />

« opération » qui désigne l’exécution d’<strong>un</strong>e certaine tâche. La<br />

téléopération désigne donc <strong>un</strong>e mode d’exécution d’<strong>un</strong>e tâche,<br />

d’<strong>un</strong>e action, d’<strong>un</strong> mouvement ou d’<strong>un</strong> travail à distance [1].<br />

En <strong>robot</strong>ique, la téléopération, appelée aussi télé<strong>robot</strong>ique,<br />

désigne les principes <strong>et</strong> les techniques qui perm<strong>et</strong>tent à <strong>un</strong><br />

opérateur humain d’accomplir <strong>un</strong>e tâche à distance, à l’aide<br />

d’<strong>un</strong> système <strong>robot</strong>ique d’intervention, commandé à partir<br />

d’<strong>un</strong>e station de contrôle, par l’intermédiaire d’<strong>un</strong> canal de<br />

transmission (Fig.1).<br />

Opérateur<br />

humain<br />

Visualisation<br />

Consignes<br />

Canal de<br />

Transmission<br />

Mesures<br />

Commande<br />

Robot<br />

téléopéré<br />

Fig. 1. Structure du système de téléopération.<br />

nucléaire [4][5], le domaine militaire, le domaine spatial<br />

[6][7], le domaine médical [8][9].<br />

Dans c<strong>et</strong> article on va présenter le travail qu’on a fait. Dans<br />

le premier paragraphe (vue précédemment) on a donné <strong>un</strong>e<br />

introduction avec quelques définitions, dans le deuxième<br />

paragraphe nous présentons l’architecture de notre système de<br />

téléopération établi en détaille. Le troisième paragraphe sera<br />

consacré à la modélisation du <strong>robot</strong> <strong>mobile</strong> manipulateur. Un<br />

quatrième paragraphe éclaire la modélisation <strong>et</strong> la calibration<br />

de la caméra CCD utilisée, <strong>un</strong> cinquième paragraphe sera<br />

consacré aux résultats obtenus, <strong>et</strong> on terminera par <strong>un</strong>e<br />

conclusion résumant le travail effectué.<br />

II. ARCHITECTURE DU SYSTEME DE ELEOPERATION<br />

L’architecture de notre système de téléopération vis-à-vis<br />

du matériel disposé <strong>et</strong> exigences imposées est la suivante :<br />

Utilisateur<br />

Visualisation<br />

Consigne<br />

Transmission<br />

HF<br />

Caméra<br />

Interface<br />

homme<br />

machine<br />

Récolte des mesures<br />

Comm<strong>un</strong>ication<br />

TCP/IP<br />

PC Client<br />

Wireless LAN (Liaison Client<br />

Serveur)<br />

Comm<strong>un</strong>ication<br />

TCP/IP<br />

La téléopération est <strong>un</strong> axe de recherche actuel, elle suscite<br />

beaucoup d’intérêts <strong>et</strong> trouve son <strong>application</strong> dans diverses<br />

disciplines <strong>et</strong> activités de la vie moderne. Elle concerne la<br />

réalisation de travaux dépassant les capacités physiques de<br />

l'homme tels que la manipulation d'obj<strong>et</strong>s lourds, ou<br />

présentant <strong>un</strong> danger (cas de <strong>robot</strong>s industriels), ou bien des<br />

travaux qui sont réalisés sur des sites inconnues ou hostiles à<br />

l'homme (tels que: les <strong>robot</strong>s d’exploration martiens [2],<br />

<strong>robot</strong>s industriels, les <strong>robot</strong>s sous marins [3], les <strong>robot</strong>s<br />

perm<strong>et</strong>tant la détection <strong>et</strong> la réparation de fissures dans des<br />

conduits radioactifs, les <strong>robot</strong>s chirurgiens, les <strong>robot</strong>s destinés<br />

à l’exploration de l’<strong>un</strong>ivers, <strong>et</strong>c...). On peut citer les grands<br />

domaines d’<strong>application</strong> de la téléopération : le domaine<br />

ROBUTER-ULM<br />

Commande bas<br />

niveau<br />

PC embarqué<br />

Serveur<br />

Fig. 2. Structure détaillée du système de téléopération.<br />

Notre système de téléopération est composé d’<strong>un</strong> PC hôte<br />

distant <strong>et</strong> d’<strong>un</strong> <strong>robot</strong> <strong>mobile</strong> manipulateur équipé d’<strong>un</strong> PC<br />

embarqué comm<strong>un</strong>iquant entre eux par <strong>un</strong>e liaison réseau sans<br />

fil de type client serveur en utilisant le protocole de<br />

comm<strong>un</strong>ication Intern<strong>et</strong> TCP/IP. L’opérateur via <strong>un</strong>e interface<br />

graphique de comm<strong>un</strong>ication homme machine contrôle à<br />

distance les mouvements du <strong>robot</strong> par l’intermédiaire d’<strong>un</strong> PC<br />

client, tout en ayant la possibilité de voir la scène grâce à la<br />

caméra <strong>et</strong> de recevoir les informations issues des capteurs sur


4th International Conference on Computer Integrated Manufacturing CIP’2007<br />

03-04 November 2007<br />

l’état du <strong>robot</strong> qui sont accumulées au niveau du PC embarqué<br />

<strong>et</strong> transmises via le canal de transmission. Par la suite nous<br />

donnons <strong>un</strong>e explication de chaque module.<br />

A. Le <strong>robot</strong> téléopéré<br />

Le laboratoire de recherche productique <strong>et</strong> <strong>robot</strong>ique du<br />

CDTA dispose d'<strong>un</strong> <strong>robot</strong> <strong>mobile</strong> manipulateur appelé<br />

ROBUTER-ULM, développé par la société française<br />

ROBOSOFT, il est constitué (Fig.3) d'<strong>un</strong>e plate forme <strong>mobile</strong><br />

sur laquelle est installée <strong>un</strong> bras manipulateur ultra léger à six<br />

degrés de liberté le tout est contrôlé <strong>et</strong> commandé par <strong>un</strong> PC<br />

embarqué <strong>et</strong> trois cartes électroniques de commande à base de<br />

µcMPC555.<br />

Le <strong>robot</strong> <strong>mobile</strong> ROBUTER, <strong>et</strong> <strong>un</strong>e plate forme à quatre<br />

roues, deux roues motrices fixes en avant assurant sa mobilité<br />

<strong>et</strong> deux roues foules en arrière pour maintenir l’équilibre <strong>et</strong> la<br />

stabilité du <strong>robot</strong>. Ce <strong>robot</strong> est doté d’<strong>un</strong> système sensoriel<br />

varié qui comporte plusieurs capteurs proprioceptifs <strong>et</strong><br />

extéroceptifs. il a <strong>un</strong>e ceinture à ultrasons composée de 24<br />

capteurs à ultrasons placés autour de la plate forme, <strong>un</strong><br />

système télémètre Laser (le LMS SICK200), <strong>un</strong>e odométrie <strong>et</strong><br />

<strong>un</strong> capteur indicateur de niveau de charge pour les batteries.<br />

Le bras manipulateur ULM est <strong>un</strong> bras ultra léger articulé à<br />

six liaisons rotoîdes (6 degrés de liberté), avec <strong>un</strong>e pince en<br />

buté, il est équipé par des capteurs de position pour chaque<br />

articulation <strong>et</strong> d’<strong>un</strong> capteur d'effort intégré au niveau de la<br />

pince qui perm<strong>et</strong> à l’opérateur de connaître les efforts exercés<br />

par le bras sur son environnement <strong>et</strong> l’inverse afin de bien<br />

contrôler le mouvement du bras. Le bras dispose aussi d’<strong>un</strong>e<br />

caméra CCD monochrome embarquée sur la pince du bras <strong>et</strong><br />

d’<strong>un</strong> système de transmission HF.<br />

- La gestion de la comm<strong>un</strong>ication depuis <strong>et</strong> vers le pc<br />

distant, par l’envoi des informations sur l’état du <strong>robot</strong><br />

<strong>et</strong> la réception des consignes de l’utilisateur.<br />

- Le contrôle du mouvement du <strong>robot</strong>.<br />

- La gestion des capteurs du <strong>robot</strong>.<br />

C. Le client<br />

L’<strong>application</strong> client est installée sur le PC hôte, elle assure à<br />

son tour les fonctions suivantes :<br />

- La gestion d’<strong>un</strong>e interface de comm<strong>un</strong>ication<br />

graphique homme machine.<br />

- La gestion de la comm<strong>un</strong>ication depuis <strong>et</strong> vers le<br />

<strong>robot</strong>, par l’envoie des consignes de l’utilisateur <strong>et</strong> la<br />

réception des informations capturés.<br />

- La réception, l’affichage, le traitement <strong>et</strong> l'analyse des<br />

images vidéo issues de la caméra.<br />

- La réception <strong>et</strong> le traitement des différentes<br />

informations issues des capteurs du <strong>robot</strong>.<br />

- La <strong>fusion</strong> <strong>multisensorielle</strong> des différentes informations<br />

reçus (images vidéo, informations des capteurs).<br />

- La prise en charge <strong>et</strong> l’interprétation des commandes<br />

données par l’utilisateur.<br />

D. L’interface de comm<strong>un</strong>ication homme machine<br />

C’est l’espace par lequel l’opérateur dialogue avec le <strong>robot</strong>.<br />

Ce module assure pour l’opérateur trois tâches essentielles, il<br />

prends en charge les commandes de l’utilisateur, affiche <strong>et</strong><br />

traite les images vidéo acquises en temps réel <strong>et</strong> gère le<br />

simulateur virtuel du <strong>robot</strong> pour perm<strong>et</strong>tre à l’utilisateur de<br />

voir les tâches que le <strong>robot</strong> doit exécuter. La figure ci-dessous<br />

illustre bien la fenêtre principale de l’interface développée.<br />

Barre de menu<br />

Barre d’outils<br />

Liste des commandes<br />

Fig.3. Photo du <strong>robot</strong> ROBUTER-ULM.<br />

Notre système <strong>robot</strong>ique est contrôlé <strong>et</strong> commandé par <strong>un</strong><br />

système informatique <strong>et</strong> électronique aussi varié. Les capteurs<br />

<strong>et</strong> les actionneurs sont contrôlés directement par trois cartes<br />

électronique de commande basées sur le microprocesseur<br />

MPC555 type Motorola, tandis qu’<strong>un</strong> PC embarqué sous linux<br />

gère tous les modules <strong>et</strong> exploite tous les ressources<br />

matérielles du système <strong>robot</strong>ique.<br />

B. Le serveur<br />

C<strong>et</strong>te <strong>application</strong> est installée sur le PC embarqué, elle<br />

assure les fonctions suivantes :<br />

Affichage <strong>et</strong> traitement de l’image<br />

Traitement des données des<br />

capteurs <strong>et</strong> commandes.<br />

Fig.4. Présentation de l’interface graphique Homme machine.<br />

B. Le système imageur<br />

Ce module réalise les trois tâches suivantes:<br />

- L’acquisition des images video par la caméra CCD<br />

(Charge Coupled Device).<br />

- La transmission des images vers le PC distant via <strong>un</strong><br />

système de transmission HF, pour y subir le traitement<br />

nécessaire.


4th International Conference on Computer Integrated Manufacturing CIP’2007<br />

03-04 November 2007<br />

- La réception des images vidéo. Le module récepteur HF<br />

récupère l'image vidéo envoyée, il est connecté à <strong>un</strong>e carte<br />

d'acquisition vidéo pour numériser l'image pour que c<strong>et</strong>te<br />

dernière soit manipulable par PC.<br />

1) Traitement de l'image vidéo:<br />

La caméra délivre en permanence des images vidéo de la<br />

scène. L'image fournie par la caméra vidéo n'est pas<br />

directement utilisable après numérisation, mais elle doit subir<br />

plusieurs opérations pour extraire l'information souhaitée. Le<br />

traitement comporte donc quatre phases essentielles :<br />

acquisition, prétraitement, segmentation <strong>et</strong> caractérisation.<br />

Pour l’affichage on a attribué pour chaque étiqu<strong>et</strong>te <strong>un</strong>e<br />

couleur pour que dans l’affichage chaque forme apparaisse<br />

avec <strong>un</strong>e couleur donnée.<br />

1.d) Caractérisation<br />

Dans c<strong>et</strong>te phase on analyse les résultats de l’étape<br />

précédente. On compte le nombre de pixels de chaque obj<strong>et</strong> <strong>et</strong><br />

on calcul leurs coordonnées de centre de gravité.<br />

On peut donner à titre explicatif la séquence de traitement<br />

suivante :<br />

1.1) Acquisition d’image<br />

Les prises de vue sont acquises par la caméra CCD installée<br />

sur la pince du <strong>robot</strong>, puis elles sont transmises vers le PC<br />

hôte, ensuite elles seront numérisées <strong>et</strong> stockées en mémoire<br />

tampon du bus PCI.<br />

Image originale<br />

Filtrage <strong>et</strong> binarisation<br />

Segmentation<br />

1.2) Prétraitement de l’image<br />

Dans le processus d'acquisition d'image, des dégradations<br />

peuvent apparaître (bruit, problèmes lors la de transmission de<br />

l'image, éclairage, <strong>et</strong>c...).<br />

Le rôle du prétraitement dans sa définition la plus générale<br />

est de remédier aux dégradations ayant affecté l’image <strong>et</strong>/ou<br />

de rendre c<strong>et</strong>te image mieux adaptée à <strong>un</strong>e <strong>application</strong><br />

particulière [10].<br />

Dans c<strong>et</strong>te étape nous avons utilisé deux traitement : <strong>un</strong><br />

filtrage suit par <strong>un</strong>e binarisation.<br />

a) Filtrage de l'image : Pour éliminer les incidences du<br />

bruit contenu dans l'image on a appliqué deux filtres passe<br />

bas: <strong>un</strong> filtre moyen <strong>et</strong> <strong>un</strong> filtre médian qui ont donnés des<br />

meilleurs résultats (voir fig.5).<br />

b) Binarisation de l'image : Après l'élimination du bruit on<br />

a subit l'image à <strong>un</strong>e étape dite de binarisation qui consiste à<br />

transformer l'image en niveau de gris à <strong>un</strong>e autre à deux<br />

niveaux, 0 pour le fond <strong>et</strong> 1 pour les obj<strong>et</strong>s.<br />

1.3) segmentation d’image<br />

C<strong>et</strong>te étape consiste à extraire les différentes formes<br />

correspondant aux obj<strong>et</strong>s qui constituent la scène.<br />

Dans notre travail on a utilisé <strong>un</strong>e méthode de segmentation<br />

basée région pour séparer les obj<strong>et</strong>s du fond de l’image <strong>et</strong><br />

entre eux. L'algorithme de segmentation utilisé est celui de la<br />

croissance de région. Nous avons choisi <strong>un</strong>e telle approche<br />

pour réduire le temps de calcul <strong>et</strong> pour répondre au besoin de<br />

traitement en temps réel.<br />

Le déroulement de c<strong>et</strong>te étape est : pour tous les pixels<br />

image si <strong>un</strong> pixel n’appartient pas au font on lui affecte <strong>un</strong>e<br />

étiqu<strong>et</strong>te suivant que si les pixels connexes voisins n’ont pas<br />

été déjà étiqu<strong>et</strong>és on lui donne <strong>un</strong>e nouvelle étiqu<strong>et</strong>te si non il<br />

prenne l’étiqu<strong>et</strong>te de ses voisins.<br />

Caractérisation<br />

Fig.5 : Etapes <strong>et</strong> résultats du traitement de l’image vidéo.<br />

Après avoir extraire les obj<strong>et</strong>s dans l'image acquise <strong>et</strong><br />

définir leurs paramètres (coordonnées du centre de gravité,<br />

surface) on a besoin de connaître les coordonnées réelles de<br />

ces obj<strong>et</strong>s dans la scène, donc il nous faut <strong>un</strong>e transformation<br />

de repère pour passer des coordonnées image 2D aux<br />

coordonnées espace 3D pour le même obj<strong>et</strong>. C<strong>et</strong>te démarche<br />

concerne la calibration de la caméra qui sera décrite plus loin.<br />

2) La simulation du <strong>robot</strong> (SIMROBUTER)<br />

Nous avons développé <strong>un</strong> simulateur graphique (fig.6) de<br />

notre système <strong>robot</strong>ique, que l’on a appelé SimRobuter<br />

(Simulateur du <strong>robot</strong> manipulateur <strong>mobile</strong> ROBUTER-ULM).<br />

Ce simulateur a été développé, avec la bibliothèque de<br />

programmation graphique GLscene[11].<br />

On a conçu ce simulateur dans le but de pouvoir tester les<br />

différentes stratégies possibles dans les conditions réelles<br />

d'utilisation. Le <strong>robot</strong> virtuel reproduit fidèlement le<br />

comportement réel du <strong>robot</strong> (Fig.6).<br />

Fig.6: Test des configurations possibles.


4th International Conference on Computer Integrated Manufacturing CIP’2007<br />

03-04 November 2007<br />

3) La <strong>fusion</strong> <strong>multisensorielle</strong><br />

C<strong>et</strong>te tâche consiste à prendre en charge toutes les<br />

informations sensorielles issues des différents capteurs<br />

(capteur d’effort, odométrie, capteurs ultrasoniques, télémètre<br />

Laser, caméra) <strong>et</strong> <strong>fusion</strong>ner entre eux pour l’exploiter dans<br />

l’élaboration des commandes.<br />

TABLE 1 :<br />

PARAMETRES DE D&H DU BRAS ULM<br />

Axe α i-1 a i-1 d i θ i<br />

1 0 0 d 1 θ 1<br />

2 π/2 0 d 2 θ 2<br />

3 0 a 3 0 θ 3<br />

4 π/2 0 d 4 θ 4<br />

5 - π/2 0 0 θ 5<br />

6 π/2 0 0 θ 6<br />

La matrice de passage homogène d’<strong>un</strong> repère à <strong>un</strong> autre a<br />

la forme suivante :<br />

Fig.7. Représentation graphique des données du Ultrasons <strong>et</strong> Laser.<br />

T<br />

i<br />

i−1<br />

⎡ cosθ<br />

i<br />

−sinθi<br />

0 ai−<br />

1 ⎤<br />

⎢<br />

⎥<br />

⎢<br />

cosα<br />

i.sinθi<br />

cosα<br />

i.cosθ<br />

i<br />

−sinαi<br />

− di.sinαi<br />

=<br />

⎥<br />

⎢sinα<br />

.sin sin .cos cos .cos ⎥<br />

i<br />

θi<br />

αi<br />

θi<br />

αi<br />

di<br />

αi<br />

⎢<br />

⎥<br />

⎣ 0 0 0 1 ⎦<br />

(1)<br />

III. MODELISATION DU ROBUTER-ULM<br />

Pour commander le <strong>robot</strong> <strong>mobile</strong> manipulateur, <strong>un</strong>e<br />

modélisation géométrique du système s’avère indispensable.<br />

Notre <strong>robot</strong> est <strong>un</strong> ensemble de deux systèmes mécaniques, <strong>un</strong><br />

bras manipulateur à six axes <strong>et</strong> <strong>un</strong>e plate forme <strong>mobile</strong> à<br />

quatre roues. Pour décrire le modèle mathématique de<br />

l’ensemble on a modélisé chaque système à part.<br />

A. Modélisation géométrique du bras manipulateur<br />

L’approche la plus répandue pour pouvoir décrire la<br />

géométrie du bras manipulateur ULM est celle de Denavit-<br />

Hartenberg modifié [12] [13][14].<br />

L'implémentation de c<strong>et</strong>te approche, nous a perm<strong>et</strong> de<br />

définir les repères <strong>et</strong> les paramètres illustrés sur la figure cidessous.<br />

Z 2 Y2<br />

Z 1<br />

Y 3<br />

X 2<br />

O 2<br />

d 2<br />

O 2<br />

X 3<br />

Z 3<br />

Y 1<br />

O 1<br />

X 1<br />

a 3 X4 X 6 X 5<br />

X e<br />

Z 5<br />

O 4<br />

O6<br />

Z e<br />

O 5 Y 5 Z 4 Z 6<br />

Y<br />

O e<br />

Fig.8 : Paramètres de D&H modifiés du bras ULM<br />

Y e<br />

ff<br />

ff<br />

Le modèle géométrique direct MGD du bras s'obtient en<br />

multipliant les six matrices élémentaires entre eux :<br />

6 1 2 3 4 5 6<br />

T<br />

0<br />

= T0<br />

. T1<br />

. T2<br />

. T3<br />

. T4<br />

. T5<br />

(2)<br />

Le modèle géométrique inverse MGI représente le<br />

problème inverse du modèle géométrique direct. Donc il<br />

consiste à calculer les coordonnées articulaires qui amènent<br />

l’organe terminal dans <strong>un</strong>e situation désirée.<br />

Nous avons utilisé l’approche analytique décrite en [15]<br />

pour pouvoir tirer les expressions des angles en fonction de la<br />

position cartésienne de l’organe terminal du bras, qui nous a<br />

donné des résultats satisfaisants.<br />

B. Modélisation cinématique de la base <strong>mobile</strong><br />

Notre <strong>robot</strong> <strong>mobile</strong> est <strong>un</strong> <strong>robot</strong> à quatre roues, il se<br />

déplace grâce à deux roues motrices conductrices coaxiales<br />

de type conventionnel fixe en arrière <strong>et</strong> deux roues décentrées<br />

folles en l’avant pour assurer la stabilité <strong>et</strong> l’équilibre du<br />

point de vue mécanique, ou le rayon de braquage impose <strong>un</strong><br />

mouvement tangent à sa direction en <strong>un</strong> point donné (Fig.9).<br />

Y 0<br />

d 4 d eff<br />

ff<br />

Y1<br />

d 1<br />

Z 0<br />

Y p<br />

θ<br />

X1<br />

P<br />

Y 0<br />

O 0 X 0<br />

O 0 X p X 0<br />

Fig.9 : Illustration géométrique du <strong>robot</strong> <strong>mobile</strong>.<br />

Après avoir placé les repères <strong>et</strong> désigné les déférents<br />

paramètres du système on peut écrire le tableau des<br />

paramètres D&H modifiés ci-dessous:<br />

Les équations décrivant son mouvement sont:<br />

• Vd<br />

p =<br />

X<br />

+ V<br />

2<br />

g<br />

.cosθ<br />

(3)


4th International Conference on Computer Integrated Manufacturing CIP’2007<br />

03-04 November 2007<br />

• Vd<br />

+ Vg<br />

Y p =<br />

2<br />

• Vd −Vg<br />

=<br />

2.<br />

L1<br />

.sinθ<br />

(4)<br />

θ (5)<br />

OU :<br />

V d <strong>et</strong> V g sont les vitesses linéaires des roues droite <strong>et</strong><br />

gauche respectivement.<br />

La vitesse linéaire du point P (vitesse moyenne à ce point)<br />

est donnée par :<br />

V<br />

moy<br />

V<br />

d<br />

+ V<br />

2<br />

g<br />

= (6)<br />

Et la vitesse angulaire du <strong>robot</strong> est donnée par:<br />

• Vd −Vg<br />

=<br />

2.<br />

L1<br />

θ (7)<br />

IV. CALIBRATION DE LA CAMERA<br />

C<strong>et</strong>te étape nous perm<strong>et</strong> de déterminer la matrice de<br />

passage homogène entre les cordonnées 2D images <strong>et</strong> ceux 3D<br />

réelles des obj<strong>et</strong>s. La détermination de la relation 3D/2D passe<br />

par deux étapes : <strong>un</strong>e modélisation mathématique de la caméra<br />

suivit par <strong>un</strong>e calibration.<br />

La modélisation mathématiques des caméras consiste à<br />

obtenir les paramètres correspondant à la transformation<br />

directe <strong>et</strong> inverse effectuée pour passer des points d’<strong>un</strong> obj<strong>et</strong><br />

3D dans l’espace aux points de sa projection 2D dans le plan<br />

image <strong>et</strong> vice-versa.<br />

Pour notre caméra nous avons utilisé le modèle sténopé, ce<br />

modèle consiste à simplifier l'ensemble des lentilles que<br />

composent le système optique par <strong>un</strong> point où convergent tous<br />

les rayons lumineux pour aller se proj<strong>et</strong>er sur le plan image<br />

par des droites sécantes en O c (origine du repère de la caméra)<br />

(Fig.10). L'image d'<strong>un</strong> obj<strong>et</strong> est obtenue par sa projection<br />

perspective sur le plan image.<br />

La calibration de la caméra consiste à calculer les valeurs<br />

des paramètres du modèle choisi. Pour ce faire, il existe<br />

plusieurs approches [16], [17], [18], la régression linéaire<br />

(moindres carrés), l’optimisation non linéaire, les points de<br />

fuite sont quelques exemples de méthodes utilisées.<br />

Le modèle sténopé est <strong>un</strong>e représentation linéaire de la<br />

projection perspective [18] Fig.10.<br />

Le but cherché est de trouver <strong>un</strong>e relation entre les<br />

coordonnées (u, v) du point p dans le plan image <strong>et</strong> ses<br />

coordonnées (xo, yo, zo) dans le plan obj<strong>et</strong> (plan de l’espace).<br />

Soit en ecriture matricielle suivant :<br />

⎡xo<br />

⎤<br />

⎡u⎤<br />

⎢ ⎥<br />

⎢ ⎥ = M .<br />

⎢<br />

y<br />

(8)<br />

o<br />

⎥<br />

⎣v⎦<br />

⎢⎣<br />

z ⎥<br />

o ⎦<br />

La matrice M est le résultat du produit des deux matrices, la<br />

matrice de paramètres intrinsèques <strong>et</strong> la matrice de paramètres<br />

extrinsèques, M=Mint.Mext<br />

La calibration de caméra consiste à estimer la matrice de<br />

projection M en connaissant les coordonnées réelles 3D de<br />

plusieurs points dans l’espace (mire ou grille de calibration) <strong>et</strong><br />

les coordonnées de leurs projections sur l’image. Pour les<br />

besoins de c<strong>et</strong>te étape nous avons construit le système de<br />

calibration suivant :<br />

Caméra CCD<br />

Mire de calibration<br />

Raie<br />

Fig.11. Le système de calibration de la caméra CCD<br />

Après avoir fait les tests <strong>et</strong> les mesures nécessaires, la<br />

matrice jacobéenne obtenue est la suivante:<br />

⎡−6.9574<br />

1.1795 −1.5166<br />

107.9428⎤<br />

M =<br />

⎢<br />

⎥<br />

⎢<br />

0.1783 8.0028 −1.1218<br />

433.8669<br />

⎥<br />

⎢⎣<br />

0.0128 0.0300 −0.0313<br />

1 ⎥⎦<br />

V. RESULTATS EXPERIMENTAUX<br />

L’implémentation des algorithmes <strong>et</strong> approches cités<br />

auparavant a pour eff<strong>et</strong> l’obtention des résultas qui répondent<br />

bien au cahier des charges.<br />

Le tableau suivant nous donne <strong>un</strong> exemple des résultats<br />

obtenus par l’implémentation de la matrice jacobéenne avec<br />

<strong>un</strong>e précision de 2mm pour les coordonnées 3D (Xr, Yr, Zr) <strong>et</strong><br />

de 1 pixel pour les coordonnées 2D (U, V).<br />

Avec: L’indice m : désigne la valeur mesurée en mm.<br />

L’indice r : désigne la valeur réelle en mm.<br />

TABLE 2:<br />

RESULTATS DE LA CALIBRATION DE LA CAMERA<br />

Fig.10. Le modèle sténopé de la caméra<br />

U V Xm Ym Zm X r Y r Z r<br />

80 80 -78.39 -9.75 795.584 -80 -10 800<br />

10 200 -159.6 -134.2 893.3588 -160 -130 900<br />

0 2 -208.8 104.67 1005.9 -210 100 1000


4th International Conference on Computer Integrated Manufacturing CIP’2007<br />

03-04 November 2007<br />

Les illustrations suivantes nous montrent <strong>un</strong> test fait durant<br />

les manipulations effectuées.<br />

Fig.12. La cible.<br />

Fig.14.Mouvement du bras.<br />

Fig.13. Le <strong>robot</strong> rapproche de la cible.<br />

Fig.15. Le <strong>robot</strong> atteint la cible.<br />

VI. CONCLUSION<br />

Les résultats obtenus répondent bien à nos attentes <strong>et</strong> au<br />

cahier des charges fixés au départ.<br />

Dans <strong>un</strong> premier temps nous avons établit <strong>un</strong>e<br />

comm<strong>un</strong>ication réseau entre le pc hôte <strong>et</strong> le <strong>robot</strong> ROBUTER-<br />

ULM. Le flux d’information circule fidèlement entre les deux<br />

PC sans auc<strong>un</strong> problème, ROBUTER-ULM est parfaitement<br />

contrôlable à distance.<br />

Le système imageur nous a garantie la transmission de<br />

l’image dans <strong>un</strong>e portée peut aller jusqu’à 1600m, <strong>et</strong> l’image<br />

vidéo est fidèlement récupérée par le pc distant. Le traitement<br />

d’image s’effectue en temps réel avec quelque décalage<br />

temporelle du au système de transmission.<br />

Le simulateur développé SIMROBUTER est <strong>un</strong> banc<br />

d’essai virtuel, il suscite pour nous beaucoup d’intérêt, il nous<br />

à perm<strong>et</strong> de voir la configuration du <strong>robot</strong> avant <strong>et</strong> après <strong>et</strong><br />

lors l’exécution d’<strong>un</strong>e tâche. L’opérateur donc aura <strong>un</strong>e<br />

imagination complète de l’action à faire par le <strong>robot</strong>.<br />

Les résultats de calibration ont été validés directement par<br />

des missions exercées par le Robuter_ULM. Ces résultats<br />

nous perm<strong>et</strong>tent de conclure que l’approche envisagée pour la<br />

localisation des obj<strong>et</strong>s est applicable si l’on s’est fixées bien<br />

en terme de précision.<br />

VII. REFERENCES<br />

[1] P. Coiff<strong>et</strong>, “Télé<strong>robot</strong>ique <strong>et</strong> téléopération”, Edition<br />

Hermès Science Publication, Paris, France: 2002, p. 19.<br />

[2] R. Volpe, T. Ohm, R. P<strong>et</strong>ras, R. Welch, J. Balaram &<br />

R. Ivlev, “A Prototype Manipulation System for Mars<br />

Rover Science Operations”, Proceeding of International<br />

Conference on Intellegent Robots and Systems, IROS'97,<br />

Grenoble, France, Sept1997, vol.3, pp. 1486-1492.<br />

[3] M. Benallal, “Système de calibration de Caméra,<br />

localisation de forme polyédrique par vision<br />

monoculaire”, thèse de doctorat de l'école des mines de<br />

paris, France, 2002, pp. 32-46.<br />

[4] C. Melchiorri, “Robotic Robotic Telemanipulation<br />

Telemanipulation: An Introduction”, EURON Winter,<br />

School on Telesurgery Benidorm, University of<br />

Bologna, Spain, 26 – 31 March 2006, p.19.<br />

[5] Rapport d’activité, LSC FRE 2494 CNRS, Laboratoire<br />

Systèmes Complexes, France, 2004, p. 86.<br />

[6] S. Otmane, “Télétravail Robotisé <strong>et</strong> Réalité Augmentée:<br />

Application à la Téléopération via Intern<strong>et</strong>”, Thèse de<br />

Doctorat, Université d’Evry-Val d’Essonne, Déc2000,<br />

p. 10.<br />

[7] S. Otmane, N. Khezami & M. Mallem, “La Réalité<br />

Augmentée via Intern<strong>et</strong> : Méthodes <strong>et</strong> Architecture Pour<br />

La Téléopération Collaborative”.<br />

[8] Y. Rybarczyk, d. Mestre, p. Hoppenot <strong>et</strong> e. Colle,<br />

“Implémentation télé<strong>robot</strong>ique de l’anticipation<br />

sensorimotrice pour optimiser la Coopération Homme-<br />

Machine”, Le Travail humain, Janvier 2003, p.10.<br />

[9] Y. Rybarczyk, O. Ait Aider, P. Hoppenot & E. Colle,<br />

“Commande d'<strong>un</strong> système d'assistance <strong>robot</strong>ique aux<br />

personnes handicapées”, Handicap'2002, Paris, France,<br />

13-14 juin 2002, p.1.<br />

[10]. Moudache. S, Charfa.Y, Charfa.A, “Prétraitement <strong>et</strong><br />

Segmentation en image couleur : <strong>application</strong> en<br />

microscopie cellulaire”, Proceding JETIM : Journées<br />

d’Etude Algéro française en Imagerie Médicale, Alger,<br />

Algérie, 21-22 Novembre 2006, P.179.<br />

[11] http://glscene.sourceforge.n<strong>et</strong>/ date de consultation : 10<br />

Novembre 2006.<br />

[12] B. Goodwine, “Inverse Kinematics, Robotics and<br />

Automation Handbook”, Université de Notre Dame,<br />

CRC Presse LLC, 2005, p.5.<br />

[13] Bernard BAYLE, “Cours de <strong>robot</strong>ique”, DESS<br />

Technologies <strong>et</strong> Stratégies Industrielles, Université Louis<br />

Pasteur de Strasbourg, page 17, année 2004/2005.<br />

[14] P<strong>et</strong>er I. Corke, “Robotics Toolbox For MATLAB<br />

(Release6)”, CSIRO, Manufacturing Science and<br />

Technology, Pinjarra Hills, Australia, avril 2001, p.7.<br />

[15] Renaud. M & Gorla. B, “Modèles des <strong>robot</strong>s<br />

manipulateurs en vue de leur commande”, IBID, S.E.E.<br />

(Société des électriciens <strong>et</strong> des radioélectriciens), 1984.<br />

[16] A. Krupa, “Commande par vision d’<strong>un</strong> <strong>robot</strong> de chirurgie<br />

laparoscopique”, thèse de doctorat de l’Institut National<br />

Polytechnique de Lorraine, Ecole doctorale IAEM<br />

Lorraine, France, 2003, pp.26-40.<br />

[17] Z. Zhang, “A flexible new technique for camera<br />

calibration”. IEEE Trans Pattern Anal. Mach. Intell, vol.<br />

11, 2000, pp.1330-1334.<br />

[18] F. Chaum<strong>et</strong>te & P.Rives, “réalisation <strong>et</strong> calibration d’<strong>un</strong><br />

système expérimental de vision composé d’<strong>un</strong>e caméra<br />

<strong>mobile</strong> embarquée sur <strong>un</strong> <strong>robot</strong> manipulateur”, Rapport<br />

de recherche N°994, IRISA, France, 1989, p.6.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!