Vous êtes sur la page 1sur 10

1.

Introduction

2 Plateforme d'expérimentation de robots virtuels

Comparé aux robots il y a quelques années, les robots emploient maintenant très complexe
méthodes de contrôle. Pratiquement ceux-ci sont mis en œuvre de manière distribuée dans
afin de simplifier le développement et le global contrôle la complexité de la tâche. Tout
comme réseau de communication distribué et protocoles permettent un plug-and-play be-
havior [3], une approche de contrôle distribuéh est nécessaire pour robsimulation otique. Dans
Outre la robustesse et le parallélisme (similaire au matériel distribué),
permet à un simulateur robotique d'o ff rer un copy-and-paste fonctionnalité non seulement
pour
objets ou models, mais aussi pour leurs méthodes de contrôle associés: robots ou robot
éléments peuvent être placés et combinés dans une scène sans avoir à ajuster uny
code de contrôle.
Le document est organisé en trois parties. La première partie de ce documentcuses sur
L'architecture de V-REP; basé sur various fonctionnalités wrapped dans la scène objects
ou des modules de calcul, il permet à l'utilisateur de choisir parmi eux selon les besoins, ou
mieux
pour une simulation donnée. Moreover un soin particulier a bensuite donné pour développer
ces fonctionnalités d'une manière équilibrée, en donnant à chacun la même quantité de
attention comme on le ferait dans un vrai système robotique. La deuxième partie de cet article
se concentre sur la méthodologie de contrôle de V-REP; en V-REP, control est distribué et
basé sur un nombre illimité de scripts directement associés ou attachés
à obje de scènects . Enfin, afin de clarifier davantage elements introduit dans le
première et deuxième partie de ce document, la troisième partie décrit une V-REP typique
configuration de simulation.

2 Architecture de V-REP

V-REP est conçu autour d'une architecture polyvalente. Il n'y a pas de main ou cen-
fonction tral dans V-REP. Plutôt, V-REP possède divers indépendant relativement
indépendant
fonctions, qui peuvent être activées ou désactivées selon les besoins.
Imaginez un scénario de simulation où un robot industriel doit ramasser des boîtes
et déplacez-les vers un autre endroit; V-REP calcule la dynamique de la préhension
et tenant les boîtes et effectue une simulation cinématique pour les autres parties
du cycle lorsque les e ff ets dynamiques sont négligeables. Cette approche rend possible
pour calculer le mouvement du robot industrielkly et précisément, qui would
ce ne serait pas le cas s'il avait été simulé entièrement à l'aide de bibliothèques dynamiques
complexes.
Ce type de simulation hybride est justi fi é dans cette situation, si le robot est stiff
et fi xe et non autrement in fl uence par son environnementt.
En plus de l'activation adaptative various de ses fonctionnalités dans un
manière, V-REP peut également les utiliser d'une manière symbiotique, en ayant un coopérer
avec un autre. Dans le cas d'un robot humanoïde, par exemple, les poignées V-REP
mouvements de jambe(a) le premier calcul de la cinématique inverse pour chaque jambe (c.-à-
d.
la position et l'orientation souhaitées du pied, toutes les positions des articulations des jambes
sont calculées);
puis (b) attribue les positions d'articulation calculées à utiliser comme joint cible
positions par le module de dynamique. Cela permet de spécifier le mouvement humanoïde
dans un w très polyvalentoui, puisqueh foot aurait simplement have à affecter à suivre
un chemin en 6 dimensions: le reste des calculs est automatiquement pris en charge.
Plateforme d'expérimentation de robots virtuels 3

2.1 Scène Objects

Une scène de simulation V-REP contient sieurs objets de la scène ou des objets élémentaires
qui sont assemblés dans un hiérarchie arborescentehy. Le suivantLes objets de scène d' aile
sont sup-
porté dans V-REP:

- Joints : les articulations sont cinématiques basseser paires pour ce lien deux ou plusieurs
scène ob-
jects avec un à trois degrés de liberté (par exemple, prismatique, révolutionnaire,
vis-like, etc.).

- Chemins : pLes aths permettent des dé fi nitions de mouvements complexes dans l'espace
(succession de
traductions, rotations et / ou pauses librement combinables), et sont utilisées pour
guider la torche d'un robot de soudage le long d'une trajectoire prédéfinie, ouaile
transmettreou belt movements par exemple. Les enfants d'un chemin object peut être
contraint de se déplacer le long de la trajectoire du trajet à une vitesse donnée.

- Formes : les formes sont des maillages triangulaires, utilisés pour la visualisation de corps
rigide.
Autre scène objects ou modules de calcul s'appuient sur des formes pour leur calcul
tions (détection de collision, calcul de distance minimale, etc.).

- Caméras et lumières : camercomme et les lumières sont utilisées pour la visualisation de la


scène
fins principalement, mais peut aussi have e ff ects sur d'autres scènescts (par exemple les
lumières
capteurs de rendu d' in fl uence directe ).

- Les nuls : les mannequins sont des "points d'orientation", ou des cadres de référence, qui
peut être utilisé pour diverses tâches, et sont principalement utilisés en conjonction avec
d'autres
objet de scènects , et en tant que tels peuvent être considérés comme des "aides".

- Capteurs de proximité : le probjets de capteurs d'oximité p erformer un min-


calcul de distance imum dans une détection donnée volume [4] (voir Fig. 1)
par opposition à simplement effectuer une détection de collision between certains sélectionnés
détecter les rayons et l'environnement; donc alloaile pour refléter les e ff ets dus
aux angles de capteur / surface.
- Capteurs de rendu : les capteurs de rendu dans V-REP sont des capteurs de type caméra,
permettant d'extraire des informations d'images complexes d'une scène de simulation
ors, tailles d'objets, cartes de profondeur, etc.) (voir Fig. 1). Le filtrage intégré et
traitement d'image permettent la composition de comme blocks d'éléments filtrants (avec
éléments filtrants supplémentaires via des plugins). RLes capteurs d'activation utilisent des
accélérer l'acquisition de l'image brute (OpenGL).

- Capteurs de force : pourCes capteurs sont des liens rigides entre les formes , qui peuvent
enregistrer
forces appliquées et les couples, et qui peuvent conditionnellement saturer.

- Mills : les moulins sont des volumes convexes personnalisables qui peuvent être utilisés
pour simuler
opérations de coupe de surface sur des formes (par exemple, fraisage, découpe au laser, etc.).

- Graphs : les graphiques sont scdes objets qui peuvent enregistrer une grande variété de di-
flux de données multivalents. Les flux de données peuvent être affichés directement
(graphique chronologique
d'un type de données donné), ou combiné avech autre pour afficher les graphes X / Y,
ou des courbes 3D.

4 Plateforme d'expérimentation de robots virtuels

Fig. 1. Robot mobile (à droite) équipé de 5 capteurs de proximité et d'un rendu

capteur . Le capteur de rendu n'est pas utilisé pour la détection est ce cas, mais pour la texture
génération pour le panneau LCD. (Le modèle de robot de gauche est une gracieuseté de K-
Team Corp., le
modèle de robot droit est une gracieuseté de Cubictek Corp. et NT Research Corp).

2.2 Modules de calcul

Scène objeLes cts sont rarement utilisés seuls, ils opèrent plutôt (ou en
jonction avec) autre scène objects (par exemple, un capteur de proximité détectera des formes
ou des mannequins qui se croisent avec son volume de détection). En outre, V-REP a
plusieurs modules de calcul pouvant fonctionner directement sur une ou plusieurs scènes
objets . FLes principaux modules de calcul de V-REP sont:

- Forwmodule de cinématique inverse et inverse : permet des calculs de cinématique

pour tout type de mécanisme (branched, fermé, redondant, contenant imbriqué


boucles, etc.). Le module est basé sur le calcul de l'humiditéEd moindres carrés
pseudo-inverse [7]. Il prend en charge la résolution conditionnelle, la résolution amortie et
pondérée
solution, et l'évitement d'obstacle basé surles entraînements.

- Module de dynamique ou de physique : permet de gérer des dynamiques de corps rigides


culation et interaction (réponse collision, préhension, etc.) via le Bullet
Bibliothèque de physique [1].
- Module de planification de chemin : permet des tâches de planification de chemin holonome
et non
tâches de planification de trajectoires holonomes (pour les véhicules de type voiture) via une
approcheh dérivé
du T aléatoire au hasard de l'explorationrée algorithme (RRT) [6].
Plateforme d'expérimentation de robots virtuels 5

- Détection de collision module : permet une interférence rapide checking entre


tout shape ou collection de formes . En option, le contour de collision peut aussi
être calculé. Le module utilise des structures de données basées sur un arbre binaire de
Boîtes de délimitation orientées [5] pour les accélérations. L'optimisation supplémentaire est
réalisé avec une mise en cache de cohérence temporelle technique.

- Module de calcul de distance minimale : permet une distance minimale rapide


calculs entre tout shape (convexe, concave, open, fermé, etc.) ou col-
lection de formes . Le module utilise les mêmes structures de données que la collision
module de détection. Une optimisation supplémentaire est également réalisée avec un
technique de mise en cache de cohérence.
Sauf pour les modules de dynamique ou de physique qui fonctionnent directement sur tous les
objectivement activé scènects , d'autres modules de calcul nécessitent la dé fi nition
d'une tâche de calcul ou d'un objet de calcul, spéci fi es sur lesquels scobjets ene
le module devrait fonctionner et comment. Si par exemple l'utilisateur souhaite avoir le
distance minimale entre shape A et la forme B calculés automatiquement et
peut-être aussi enregistré, un objet de distance minimale doit être défini,
comme paramètres forme A et shape B . La Fig. 2 montre la simulation typique de V-REP
boucle, y compris les objets de la scène principale et les modules de calcul.

Fig. 2. Boucle de simulation dans V-REP .

2.3 Évolutivité

Destruction d'un ou plusieurs scobjets peuvent impliquer la destruction automatique de


un calcul associé object. D'une manière similaire, duplication d'un ou de plusieurs
objet de scèneLes cts peuvent impliquer la duplication automatique des objets de calcul
associés.
Cela inclut également la duplication automatique des scripts de contrôle associés (voir la suite
section). Le résultat de ceci est que l' objet de scène dupliquécts sera automatiquement
entièrement fonctionnel, permettant un comportement fl exible plug-and-play .

6 Plateforme d'expérimentation de robots virtuels

3 Méthodologie de contrôle de V-REP

V-REP offre différents moyens de consimulations à la traîne ou même à la personnalisation


le simulateur lui-même (voir Fig. 3). V-REP est enveloppé dans une bibliothèque de
fonctions, et
nécessite une application client pour s'exécuter. L'application client par défaut V-REP est
assez
simple et prend en charge le chargement des modules d'extension, enregistre l'événement
callbacks (ou
rappels de messages), les relaie aux modules d'extension chargés, initialise le
simulateur, et gère la boucle d'application et de simulation. En outre, personnalisé
Des fonctions de simulation peuvent être ajoutées via:

- Scripts en langue Lua . Lua [2] est un programme d'extension léger


langage linguistique conçu pour soutenir la programmation procédurale. Le script Lua
interprète est intégré dans V-REPet étendu avec plusieurs centaines de V-
Commandes spéci fi ques REP. Les scripts dans V-REP sont le principal mécanisme de
contrôle
pour une simulation.

- Modules d'extension à V-REP (plugins) . Extension modules permettent


enregistrer et gérer des commandes personnalisées. Une commande de script de haut niveau
(par exemple, robotMoveAndAvoidObstacles (duration) ) peut être alors un mod
ule peut gérer cette commande de haut niveau en exécutant la logique correspondante
et les appels de fonctions API de bas niveau d'une manière rapide et cachée.

Fig. 3. Architecture de contrôle dans V-REP. GrisLes zones éditées peuvent être
personnalisées par l'utilisateur. (1)
Appels d'API C / C ++ vers V-REP à partir de l'application cliente ou des modules
d'extension.
(2) Appels de traitement de script. Généralement simHandleChildScript (sim gérer al l) .
Exécute tout
premiers scripts enfants rencontrés dans le current hiérarchie. (3) appels Lua API à V-REP
à partir de scripts. (4) Appels de rappel aux modules d'extension. Provient quand un script
appelle un
fonction personnalisée, précédemment enregistrée par un module d'extension. (5) Callbac
événementk appels
à l'application client. (6) Relaisappels d'événements ed aux modules d'extension.
Plateforme d'expérimentation de robots virtuels 7

3.1 Méthodologie d'appel de script


Une simulation est gérée lorsque l'application client appelle un script principal ,h
à son tour peut appeler des scripts enfants .
Chaque scène de simulation a exactement un script principal qui gère tous les défauts
comportement d'une simulation, permettant sim simpletions à exécuter sans même
une seule ligne de code. Le script principal est appelé à chaque passe de simulation et
est non-threadé.
D' autre part, les scripts enfants ne sont pas limités en nombre, et sont associés
avec (ou attaché à) scobjets ene . En tant que tels, ils sont automatiquement dupliqués si
l' objet de scène associé est dupliqué. En plus de cela, des scripts dupliqués
ne nécessite aucun ajustement de code et récupère automatiquement l'objet correct
poignées lors de leur accès. Les scripts enfants peuvent be non-fileté ou fileté
(c'est-à-dire lancer un nouveau thread).
Le script enfant par défaut appelant methola dologie est hiérarchique; chaque script est en
charge d'appeler tous les premiers scripts enfants rencontrés dans le hiérarchie en coursy
(depuis
objet de scènects sont construits dans un hiérarchie arborescente y, les scripts héritent
automatiquement de la
même hiérarchie). Ceci est achieved avec un seul appel de fonction: simHandleChild-
Script (sim gérer all) .
Ten suivant l'exemple de la figure 4, lorsque le script principal appelle simHandleChild-
Script (sim gérer all) , puis les scripts enfants assoavec les objets 3, 4 et 7
être exécuté. Uniquement lorsque le script enfant associé à l'objet 3 appelle à son tour
simHandleChildScript (main simle tout) , script enfant associé à ob ject 6
aussi être exécuté.

Fig. 4. Script principal et scripts enfants dans une scène.


Le script principal par défaut appellera toujours simHandleChildScript (sim handle tout) ,
et les scripts enfants devraient faire de même.
8 Plateforme d'expérimentation de robots virtuels

3.2 Exemple de script enfant non thread


FLe code suivant illustre un script enfant non-threadé vide dans V-REP:
if (simGetScriptExecutionCount () == 0) alors
- Le code d'initialisation vient ici
fin
simHandleChildScript (sim_handle_all) - Gère les scripts enfants
- Le code principal vient ici
if (simGetSimulationState () == sim_simulation_advancing_lastbeforestop) alors
- Le code de restauration vient ici
fin
Les scripts enfants non threadés sont "pass-through", ce qui signifie qu'à chaque
Ils passent, et retournent directement le contrôle à l'appelant. L'appelant
peut fournir des paramètres d'entrée (arguments d'entrée). Lorsqu'un script enfant est appelé
explicitement (ie simHandleChildScript ("childScriptID") au lieu de simHandleChild-
Script (sim gérer all) ), alors il peut aussi renvoyer des paramètres de sortie (retour
ues).
3.3 Exemple de script enfant fileté
Les scripts fils enfilés nécessitent une gestion légèrement différente, car d'autres enfants
les scripts construits au-dessus d'eux devraient également être garantis à exécuter à chaque
passe de simulation. FLe code suivant illustre un vide, script enfant enfilé dans
V-REP:
simDelegateChildScriptExecution () - Délègue l'exécution du script enfant
simSetThreadSwitchTiming (100) - facultatif
- Le code d'initialisation vient ici
while (simGetSimulationState () ~ = sim_simulation_advancing_abouttostop)
- Le code principal vient ici
simSwitchThread () - facultatif
fin
- Le code de restauration vient ici
Comme le montre le code ci-dessus, les scripts enfants threadés doivent déléguer leur
l' exécution du script enfant au script principal pour s'assurer qu'ils seront appelés à chaque
passe de simulation. Le code montre également une particularité des threads de V-REP: V-
REP
n'utilise pas de threads réguliers , mais plutôt des coroutines. L'avantage de ceci est un
une plus grande fl exibilité dans le timing d'exécution du thread, avec possibilité de
synchronisation
avec le script principal . En effet, simSetThreadSwitchTiming définit le temps après
que le thread devrait automatiquement passer à un autre thread. L'interrupteurhing
peut également être explicitement exécuté avec simSwitchThread . Control est rendu
threads chaque fois que le script principal est sur le point d'être exécuté.
Plateforme d'expérimentation de robot virtuel 9
3.4 Évolutivité
Cette exécution de script distributive, hiérarchique mecle hanisme rend la manipulation de
nouvellement ajouté (par exemple copier / coller) scene objets ou models très facile, puisque
associé
Les scripts enfants seront automatiquement be exécutée, sans avoir à ajuster ou
modifier n'importe quel code. De plus, les scripts enfants ajoutés ne seront pas exécutés dans
un
ordre aléatoire, mais en fonction de leur position dans la hiérarchie des scènes.
Les modules d'extension de V-REP s'intègrent de façon transparente dans ce
Approche trol: étendre V-REP avec un langage de robot spécifique devient aussi facile
comme enveloppant l'interpréteur de langage robot dans un module d'extension V-REP. UNE
approche similaire peut être prise pour intégrer émulateurs (par exemple microcontrôleur
emula-
torsions) en V-REP, afin de contrôler nativement une simulation par exemple.
finalement, V-REP offre des mécanismes de messagerie aussi précis. En particulier pour
communications inter-scripts; les messages peuvent être globaux (ie peuvent être reçus par
tous
scripts enfants), local (ie ne peut être reçu que par des scripts enfants dans le
hiérarchie), ou directe (ie ne peut être reçu que bya un seul spscript enfant eci fi c).
4 Exemple de configuration de simulation
FLa scène suivante dans V-REP (voir Fig. 5) illustre plusieurs
aspects du simulateur.
Fig. 5. Exemple de scène V-REP. La partie gauche montre la hiérarchie des scènes , la bonne
partie
montre la scène 3D content.
La scène contient un robot marcheur hexapode (défini par l'arbre de hiérarchie
à partir de la scène object "hexapo d "), et un petit jouet scobjet ("Bee-
Toy "). L'hexapod lui-même est mis en place avec 6 jambes identiques tournées de 60 degrés
10 Plateforme d'expérimentation de robots virtuels
par rapport aux autres. Fou chaque jambe, un inverse cinématique object a été défini
cela résout les positions correctes de l'articulation de la jambe pour une position de pied
donnée donnée;
contrainte cinématique inversets sont indiqués dans la hiérarchie des scènes avec des ar-
les lignes (par exemple "hexa footTarget" est la position du pied souhaitée pour "hexa
footTip").
Les positions communes, calculées par l'avant et enmodule de cinématique de vers,
sont ensuite appliqués en tant que positions cibles par le module de dynamique ou de
physique. Alors qu'un
script enfant assoassocié à "hexapode" est chargé de générer un mouvement de pied
séquence, chaque jambe a son propre script enfant qui appliquera le pied généré
Séquence de mouvement avec un retard différent. Sauf pour ce retard, l' enfant de 6 pattes
les scripts sont identiques et le premier est reproduit ici:
baseHandle = ... - Gestion de l'objet de base ("hexapod")
if (simGetScriptExecutionCount () == 0) alors
- Voici le retard de mouvement pour cette étape:
modulePos = 0
- Récupérer les différentes poignées et préparer les valeurs initiales:
tip = simGetObjectHandle ('hexa_footTip')
target = simGetObjectHandle ('hexa_footTarget')
j1 = simGetObjectHandle ('hexa_joint1')
j2 = simGetObjectHandle ('hexa_joint2')
j3 = simGetObjectHandle ('hexa_joint3')
simSetJointPosition (j1,0)
simSetJointPosition (j2, -30 * math.pi / 180)
simSetJointPosition (j3,120 * math.pi / 180)
footOriginalPos = simGetObjectPosition (tip, baseHandle)
isf = simGetObjectSizeFactor (baseHandle)
fin
- Lire les données de mouvement:
data = simReceiveData (0, 'HEXA_x')
xMovementTable = simUnpackFloats (données)
data = simReceiveData (0, 'HEXA_y')
yMovementTable = simUnpackFloats (données)
data = simReceiveData (0, 'HEXA_z')
zMovementTable = simUnpackFloats (données)
data = simReceiveData (0, 'HEXA_imd')
interModuleDelay = simUnpackInts (données) [1]
- Assurez-vous que la mise à l'échelle pendant la simulation fonctionnera parfaitement:
sf = simGetObjectSizeFactor (baseHandle)
af = sf / isf
- Appliquer les données de mouvement (avec le délai approprié):
targetNewPos = {
footOriginalPos [1] * af + xMouvementTable [1 + modulePos * interModuleDelay] * sf,
footOriginalPos [2] * af + yMouvementTable [1 + modulePos * interModuleDelay] * sf,
footOriginalPos [3] * af + zMovementTable [1 + modulePos * interModuleDelay] * sf}
- Le module IK aura automatiquement la pointe du pied suivant la "cible",
- nous avons juste besoin de définir la position de l'objet "cible":
simSetObjectPosition (target, baseHandle, targetNewPos)
- Assurez-vous que tout script enfant attaché sera également exécuté:
simHandleChildScript (sim_handle_all_except_explicit)
Plateforme d'expérimentation de robots virtuels 11
Un objet de distance minimale entre tous les objets de scènects composant l'hexa-
pod et tous les autres objets de la scène ont été dé fi nis de sorte que la clairance des
hexapodes
suivi. Une douleurt bus model a été attaché à l'hexapode et permet le marquage
le sol avec la couleur. Le modèle de buse de peinture fonctionne indépendammentsans cesse
de la
hexapod robot et est géré par son propre script enfant . Le scobjets "hexa
pod "et" PaintNozzle "sont associés à 2 boîtes de dialogue personnalisées qui permettent aux
utilisateurs
interagir avec le comportement d'un script. Cela représente une autre powcaractéristique erful
dans V-REP: un nombre illimité de dialogues personnalisés peut être défini et associé
Até avec obje de scènects . Ils sont détruits ou dupliqués dans un wa similairey comme
objets de calcul (se reporter à la section 2.3).
5. Conclusion
V-REP démontre une architecture de simulation modulaire combinée à un
mécanisme de contrôle tributé. Cela résulte en avcadre ersatile et évolutif
qui répond aux besoins de simulation de systèmes robotiques complexes avec plusieurs
formes de
interaction asynchrone.
V-REP fournit une fonctionnalité équilibrée à travers amultitude de supplémentaire
modules de calcul, o ff rant un réel avantage en termes de simfi délité et
complétude de la simulation (voir Fig. 6).
Fig. 6. Capture d'écran de la fenêtre principale de l'application de V-REP (les modèles de
robot sont courtoisie
de Lyall Randell, de Cubictek Corp., de NT Research Corp. et d'ABB Corp. Il n'y a pas de
lien
de toute sorte entre V-REP et ABB Corp.)
12 Plateforme d'expérimentation de robots virtuels
Un aspect central permettant de plus la polyvalence et la scalabilité de V-REPy est
son approche de contrôle distribué; il est possible de tester les configurations avec 2, 3,
ou jusqu'à plusieurs centaines de (identiques ou di ff érents) (p. ex. dans un essaim
con fi guration), par simple glisser-déposer ou copier-coller. Il n'y a pas
besoin d'ajustement du code, pas même un programme de superviseur est nécessaire. V-REP
polyvalence et évolutivitéy permet ce comportement plug-and-play .
finalement, L'extensibilité de V-REP à travers des modules d'extension (plugins)
l'utilisateur un moyen facile et rapide de personnaliser une simou le simulateur lui-même.
Les références
1. Bibliothèque de physique des balles, http://www.bulletphysics.org
2. Lua, http://www.lua.org
3. Ando, N., Suehiro, T., Kitagaki, K., Kotoku, T., Yoon, W .: RT-composant object
modèle en RT-middlewsont - comp distribuésmiddleware onent pour RT (technologie de
robot
nologie). Dans: 2005 Symposium international de l'IEEE sur l'intelligence computationnelle
Robotique et automatisation (CIRA2005). pp. 457-462. Espoo, Finlande (juin 2005)
4. Freese, M., Ozaki, F., Matsuhira, N .: détection de collision, calcul de distance et
capteur de proximité simulation en utilisant la limite orientée bles bœufs. Dans: 4th
International
Conférence sur Advanced Mechatronics. pp. 13-18. Asahikawa, Japon (octobre 2004)
5. Gottschalk, S., Lin, MC, Manocha, D .: arbre OBB: une structure hiérarchique pour
détection rapide d'interférences. Dans: ACM SIGGRAPH. pp. 171-180. Nouvelle-Orléans,
États-Unis
(Octobre 1996)
6. Ku ff ner Jr., JJ: RRT-connect: une approche e ffi caceh à la planification de chemin à
requête unique.
In: Conférence internationale de l'IEEE sur la robotique et l'automatisation. pp. 995-1001. San
Fransisco, États-Unis (avril 2000)
7. Wampler, CW: Manipulateur invsolutions cinématiques d'erse basées sur la formulation
vectorielle
méthodes d'amortissement et de moindres carrés. IEEE Trans. Syst., Homme, Cybern. 16 (1),
93-101 (1986)

Plate-forme d'expérimentation de robot virtuel ... (PDF Download Available). Available


from:
https://www.researchgate.net/publication/220850179_Virtual_Robot_Experimentation_Platfo
rm_V-REP_A_Versatile_3D_Robot_Simulator [accessed Apr 26 2018].