Home

documentation de l`API du bras haptique

image

Contents

1. Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 56 NOM virtSetSpeedFactor fixe le facteur dhomoth tie en d placement SYNOPTIQUE include virtuoseAPI h int virtSetSpeedFactor VirtContext VC float factor DESCRIPTION La fonction virtSetSpeedFactor permet de changer le facteur d homoth tie en d placement qui correspond un changement d chelle entre les d placements du ViRTUOSE et ceux de la simulation PARAM TRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen Le param tre factor contient le facteur dhomoth tie appliquer Un facteur plus grand que l unit correspond une dilatation de l espace de travail du Virtuose VALEUR DE RETOUR En cas de succ s la fonction virtSetSpeedFactor renvoie 0 Dans le cas contraire elle renvoie 1 et la fonction virtGetErrorCode permet d acc der au code d erreur ERREURS VIRT E INVALID CONTEXT Le param tre VC ne correspond pas un objet Vi rtContext valide VIRT E INCORRECT VALUE La valeur du param tre factor est incorrecte Cette erreur est g n r e dans les cas suivants facteur dhomoth tie n gatif ou nul facteur d homoth tie trop grand ou trop faible pour garantir la stabilit du syst me VOIR AUSSI virtGetSpeedFactor virtSetForceFactor Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006
2. ERREURS VIRT E INVALID CONTEXT Le param tre VC ne correspond pas un objet VirtContext valide VOIR AUSSI virtSetPosition virtSetSpeed virtAttachVO Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 36 NOM virtGetForceFactor renvoie le facteur dhomoth tie en effort SYNOPTIQUE include virtuoseAPI h int virtGetForceFactor VirtContext VC float factor DESCRIPTION La fonction virtGetForceFactor permet de lire le facteur d homoth tie en effort qui correspond un changement d chelle entre les efforts exerc s au niveau du VIRTUOSE et ceux de la simulation PARAM TRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen Le param tre factor est rempli par la fonction virtGetForceFactor Un facteur plus petit que l unit correspond une amplification des efforts depuis le VIRTUOSE vers la simulation VALEUR DE RETOUR En cas de succ s la fonction virtGetForceFactor renvoie 0 Dans le cas contraire elle renvoie 1 et la fonction virtGetErrorCode permet d acc der au code d erreur ERREURS VIRT E INVALID CONTEXT Le param tre VC ne correspond pas un objet VirtContext valide VOIR AUSSI virtSetForceFactor virtGetSpeedFactor Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 37 NOM virtGetlndexingMode acc s au mode cour
3. VIRT E INVALID CONTEXT Le param tre VC ne correspond pas un objet VirtContext valide VIRT E INCORRECT VALUE La valeur du param tre type est incorrecte VOIR AUSSI virtVmSetBaseFrame Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 60 NOM virtVmActivate activation du m canisme virtuel SYNOPTIQUE include virtuoseAPI h int virtVmActivate VirtContext VC DESCRIPTION La fonction virtVmActivate permet d activer le m canisme virtuel une fois le VIRTUOSE positionn PARAM TRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen VALEUR DE RETOUR En cas de succ s la fonction virtVmActivate renvoie 0 Dans le cas contraire elle renvoie 1 et la fonction virtGetErrorCode permet d acc der au code d erreur ERREURS VIRT E INVALID CONTEXT Le param tre VC ne correspond pas un objet VirtContext valide VOIR AUSSI virtVmDeactivate Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 61 NOM virtVmDeactivate d sactivation du m canisme virtuel SYNOPTIQUE include virtuoseAPI h int virtVmDeactivate VirtContext VC DESCRIPTION La fonction virtVmDeactivate permet de d sactiver le m canisme virtuel pr c demment activ PARAM TRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen
4. API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 9 Cas 2 Homoth tie de 5 en vitesse Pour un d placement horizontal de 10 cm de l interface haptigue le d placement du cube virtuel est 5 fois plus grand au sein du monde virtuel 50 cm 2 Le facteur d chelle en efforts fonction virtSetForceFactor L int r t d un facteur d homoth tie en effort est la possibilit de jouer sur l intensit des efforts fournir par l op rateur durant les manipulations gr ce une diminution des efforts restitu s par l interface haptique Cette fonctionnalit est tr s appr ciable dans le cadre des simulations n cessitant la manipulation d objets de grande masse 3 Le mode d indexation fonction virtSetIndexingMode Lorsque l op rateur arrive proche d une but e il a la possibilit de remettre dans une position confortable en agissant sur le bouton de d calage Il existe trois types de d calage le type INDEXING ALL autorisant un d calage sur les translations et sur les rotations le type INDEXING TRANS autorisant un d calage uniquement sur les translations le type INDEXING NONE n autorisant aucun d calage l action sur le bouton de d calage n a aucun effet 4 Le pas d int gration du simulateur fonction virtSetTimeStep La position du rep re de base par rapport au rep re d observation fonction virtSetBaseFrame 6 La position du r
5. au VIRTUOSE si un couplage est actif PARAM TRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen Le param tre speed p env r ps est renseign par la fonction virtGetSpeed Elles est exprim e sous la forme d un torseur 6 composantes projet dans le rep re d environnement et r duit au centre de l avatar ou de l objet coupl au ViRTUOSE selon le cas VALEUR DE RETOUR En cas de succ s la fonction virtGetSpeed renvoie 0 Dans le cas contraire elle renvoie 1 et la fonction virtGetErrorCode permet d acc der au code d erreur ERREURS VIRT E INVALID CONTEXT Le param tre VC ne correspond pas un objet VirtContext valide VOIR AUSSI virtSetSpeed virtAttachVO Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 42 NOM virtGetSpeedFactor renvoie le facteur d homoth tie en d placement SYNOPTIQUE include virtuoseAPI h int virtGetSpeedFactor VirtContext VC float factor DESCRIPTION La fonction virtGetSpeedFactor permet de lire la valeur du facteur d homoth tie en d placement qui correspond un changement d chelle entre les d placements du ViRTUOSE et ceux de la simulation PARAM TRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen Le param tre factor est renseign par la fonction virtGetSpeedFactor Un facteur plus grand que l unit correspond
6. include virtuoseAPI h int virtSetObservationFrame VirtContext VC float pos DESCRIPTION La fonction virtSetObservationFrame permet de modifier la position du rep re d observation par rapport au rep re d environnement Elle doit tre appel e avant la s lection du type de commande PARAM TRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen Le param tre pos correspond au d placement du rep re d observation par rapport au rep re d environnement VALEUR DE RETOUR En cas de succ s la fonction virtSetObservationFrame renvoie 0 Dans le cas contraire elle renvoie 1 et la fonction virtGetErrorCode permet d acc der au code d erreur ERREURS VIRT E INVALID CONTEXT Le param tre VC ne correspond pas un objet VirtContext valide VIRT E INCORRECT VALUE Le param tre pos n est pas un d placement valide VIRT E CALL TIME La fonction est appel e apr s la s lection du type de commande VOIR AUSSI VirtGetObservationFrame VirtSetObservationFrameSpeed Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 53 NOM virtSetObservationFrameSpeed modification de la vitesse du rep re d observation SYNOPTIQUE include virtuoseAPI h int virtSetObservationFrameSpeed VirtContext VC float speed DESCRIPTION La fonction virtSetObservationFrameSpeed permet de modifier la vitesse du rep re d obser
7. une dilatation de l espace de travail du Virtuose VALEUR DE RETOUR En cas de succ s la fonction virtGetSpeedFactor renvoie 0 Dans le cas contraire elle renvoie 1 et la fonction virtGetErrorCode permet d acc der au code d erreur ERREURS VIRT E INVALID CONTEXT Le param tre VC ne correspond pas un objet VirtContext valide VOIR AUSSI virtSetSpeedFactor virtGetForceFactor Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 43 NOM virtGetTimeLastU pdate acc s la valeur du d lai d attente SYNOPTIQUE include virtuoseAPI h int virtGetTimeLastUpdate VirtContext unsigned int tout DESCRIPTION La fonction virtGetTimeLastUpdate renvoie le temps depuis la derni re acquisition PARAM TRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen Le param tre tout est rempli par la fonction avec la valeur en ticks du temps coul depuis la derni re acquisition VALEUR DE RETOUR En cas de succ s la fonction virtGetTimeLastUpdate renvoie 0 Dans le cas contraire elle renvoie 1 et la fonction virtGetErrorCode permet d acc der au code d erreur ERREURS VIRT E INVALID CONTEXT Le param tre VC ne correspond pas un objet VirtContext valide VOIR AUSSI Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION sd NOM virtGetTimeoutValue ac
8. DOCUMENTATION page 4 2 MANUEL D INSTALLATION Comme il l a t pr c demment expliqu l API Virtuose est une librairie C Ainsi son installation consiste simplement inclure les fichiers qui la constituent au sein de l environnement de d veloppement Ces fichiers header et binaires diff rent en fonction du syst me d exploitation utilis Ainsi les fichiers inclure l environnement de d veloppement sont Sous Microsoft Windows 98 NT 2000 o virtuoseAPI h o virtuoseAP lib o virtuoseAP dll Sous Linux 2 4 xet IRIX 6 partir de leur r pertoire respectif sur le CD d installation o virtuoseAPI h o virtuoseAPIl so o libvirtuose a Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 5 3 MANUEL UTILISATEUR 3 1 Contenu de VAPI ViRTuUosE L API VIRTUOSE se compose des l ments suivants Un fichier d en t te C et C inclure dans votre projet VirtuoseAPI h Une librairie statique au format Windows Linux ELF ou Irix VirtuoseAP I lib Une librairie dynamigue au format Windows DLL 3 2 Conventions 3 2 1 Programmation Les fonctions de l API Virruose respectent les conventions suivantes Les noms de fonctions sont en langue anglaise ils commencent toujours par virt et ne comportent aucun caract re soulign underscore la s paration entre mots tant mat rialis e par des majuscules ex virtGetPosition l except
9. rester sur ce plan apr s activation du m canisme Deuxi me guide virtuel le m canisme manivelle Le bras de levier est d termin au moment de l activation par la position du bras par rapport l axe Ox du rep re de base du m canisme virtuel En cours de simulation il est possible de modifier dynamiquement le coefficient de d placement ou facteur d chelle et de travailler diff rentes chelles dans une sc ne virtuelle On peut imaginer d effectuer en m me temps un zoom de la cam ra Le rep re d observation est lui aussi modifiable dynamiquement II se peut apr s couplage qu il existe un petit effet d inertie si le rep re d observation subit un fort changement d orientation Un objet virtuel peut maintenant tre saisi non plus au centre de gravit mais une position pr cis e par la simulation par exemple la saisie d un marteau par son manche On aurra donc un effet de levier du marteau sur les rotarions Auparavant l op ration ne commandait un objet virtuel qu en position Actuellement l op rateur peut commander l objet en vitesse L op rateur doit d finir le rayon d une sph re dont le centre est le centre de l espace de travail du p riph rique Lorsque la poign e est l int rieure la commande reste en position Quand elle est l ext rieure l op ration contr le la vitesse de l objet virtuel norme et direction II existe un autre type d indexation INDEXING ALL FORCE FEEDBACK
10. Dans le cas contraire elle renvoie 1 et la fonction virtGetErrorCode permet d acc der au code d erreur ERREURS VIRT E INVALID CONTEXT Le param tre VC ne correspond pas un objet VirtContext valide VIRT E INCORRECT VALUE La valeur du param tre pos p env est incorrecte Cette erreur est g n r e dans les cas suivants guaternion non norm VOIR AUSSI VirtAttachVO virtSetSpeed Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 55 NOM virtSetSpeed envoie au contr leur embarqu la vitesse de l objet coupl SYNOPTIQUE include virtuoseAPI h int virtSetSpeed VirtContext VC float speed p env r ps DESCRIPTION La fonction virtSetSpeed envoie au contr leur du Virruose la vitesse de l objet auquel il est coupl PARAM TRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen Le param tre speed p env r ps correspond la vitesse du centre de l objet exprim e sous forme d un torseur 6 composantes projet dans le rep re d environnement et r duit au centre de l objet VALEUR DE RETOUR En cas de succ s la fonction virtSetSpeed renvoie 0 Dans le cas contraire elle renvoie 1 et la fonction virtGetErrorCode permet d acc der au code d erreur ERREURS VIRT E INVALID CONTEXT Le param tre VC ne correspond pas un objet VirtContext valide VOIR AUSSI virtAttachVO virtSetPosition
11. TRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen ou NULL dans le cas d un chec de la fonction virtOpen VALEUR DE RETOUR Par d finition la fonction virtGetErrorCode renvoie toujours un code d erreur voir ci dessous ERREURS Les erreurs ci dessous ont une signification g n rique Dans certains cas le diagnostic d pend de la fonction qui a signal l erreur Se reporter alors la description de la fonction en cause VIRT E NO ERROR Aucune erreur signal e VIRT E OUT OF MEMORY Erreur d allocation m moire VIRT E INVALID CONTEXT Un parameter de type VirtContext erron a t transmis VAPI VIRT E COMMUNICATION FAILURE Une erreur a t signal e sur la communication avec Ie contr leur du Virtuose VIRT E FILE NOT FOUND Le nom donn en param tre ne correspond amp aucun fichier VIRT E WRONG FORMAT Une erreur a t d tect e dans un format de donn es VIRT E TIME OUT Le d lai maximum d attente de r ponse a t d pass VIRT E NOT IMPLEMENTED La function n est pas impl ment e dans cette version de l API VIRT E VARIABLE NOT AVAILABLE La variable demand e n est pas disponible sur ce mod le de Virtuose VIRT E INCORRECT VALUE Une valeur transmise a VAPI a une valeur incorrecte ou en dehors des limites autoris es Copyright 200
12. VALEUR DE RETOUR En cas de succ s la fonction virtVmDeactivate renvoie 0 Dans le cas contraire elle renvoie 1 et la fonction virtGetErrorCode permet d acc der au code d erreur ERREURS VIRT E INVALID CONTEXT Le param tre VC ne correspond pas un objet VirtContext valide VOIR AUSSI virtVmActivate Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 62 NOM virtVmSetSamplingTimeStep fixe la valeur du pas d chantillonnage de l enregistrement SYNOPTIQUE include virtuoseAPI h int virtVmSetSamplingTimeStep VirtContext VC float timeStep unsigned int recordTime DESCRIPTION La fonction VirtVmSetSamplingTimeStep permet de fixer le pas d chantillonnage de l enregistrement de la trajectoire PARAM TRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen Le param tre timeStep correspond au pas d chantillonnage exprim en secondes Le param tre recordTime correspond au temps maximum d enregistrement exprim en secondes VALEUR DE RETOUR En cas de succ s la fonction VirtVmSetSamplingTimeStep renvoie 0 Dans le cas contraire elle renvoie 1 et la fonction virtGetErrorCode permet d acc der au code d erreur ERREURS VIRT E INVALID CONTEXT Le param tre VC ne correspond pas un objet VirtContext valide VIRT E INCORRECT VALUE Le param tre du param tre timeStep est
13. m trique savoir Dur es en secondes s Dimensions en m tres m Angles en radians rad Vitesses lin aires en m tres par seconde m s Vitesses angulaires en radians par seconde rad s Efforts en Newtons N Couples en Newtons m tres N m Masses en kilogrammes kg Inerties en kg m 3 2 5 Expression des grandeurs g om triques L API utilise diff rentes grandeurs g om triques qui sont exprim es de la fa on suivante Les positions sont exprim es sous la forme de vecteur d placement qui regroupe sept composantes savoir un terme de translation x y z suivi d un terme de rotation sous forme de quaternion normalis qx qy qz qw cf glossaire Les vitesses sont exprim es sous forme de torseur cin matique VX Vy VZ WX WY wz cf glossaire Les efforts sont exprim s sous forme de torseur fx fy fz cx cy cz cf glossaire Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 8 3 3 Mise en uvre de l API ViRTUOSE 3 3 1 Initialisation La premi re tape dans la mise en uvre de l API Virruose consiste tablir la communication avec le p riph rique La fonction virtOpen r alise cette op ration et elle cr e en m me temps toutes les variables internes n cessaires au fonctionnement de l API en renvoyant un pointeur de type VirtContext Ce pointeur doit ensuite tre utilis pour chaque appel de fonction de l API il ser
14. vortexPos 0 virtPosEnv 1 vortexPos 2 virtPosEnv 2 vortexPos 1 virtPosEnv 3 vortexOuat 1 virtPosEnv 4 vortexOuat 3 virtPosEnv 5 vortexOuat 2 virtPosEnv 6 vortexOuat 0 void transformVirtPosEnvToVortexPosQuat float virtPosEnv float vortexPos float vortexOuat vortexPos 0 virtPosEnv 0 vortexPos 1 virtPosEnv 2 vortexPos 2 virtPosEnv 1 vortexOuat 0 virtPosEnv 6 vortexOuat 1 virtPosEnv 3 vortexOuat 2 virtPosEnv 5 vortexOuat 3 virtPosEnv 4 Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 17 void transformVortexLinAngVelToVirtSpeedEnv float vortexLinVel virtSpeed virtSpeed virtSpeed virtSpeed D D D dd Ft E EE EI 5 virtSpeedEnv 4 virtSpeedEnvl5 float vortexAngVel float virtSpeedEnv T vortexLinVell vortexLinVell vortexLinVell vortexAngVvel D 0 2 1 0 l vort vort xAngVel 2 xAngVel 1 void transformVirtTorsToVortexForceTorgue float virtTors vortexForce 0 vortexForce 1 vortexForce 2 vortexTorgue 0 vortexTorgue 1 vortexTorgue 2 float vortexForce float vortexTorgue r virtTors 0 virtTors 2 virtTors 1 virtTors 3 virtTors 5 virtTors 4 void transformVortexInertiaTensorToVirtlnertiaTensor float vortexTensor float virt
15. DOCUMENTATION page 57 NOM virtSetTimeoutValue modification de la valeur du d lai d attente SYNOPTIQUE include virtuoseAPI h int virtSetTimeoutValue VirtContext VC float tout DESCRIPTION La fonction virtSetTimeoutValue permet de modifier la valeur du d lai d attente avant abandon utilis dans la communication avec le contr leur embarqu PARAM TRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen Le param tre tout contient la valeur du nouveau d lai d attente utiliser VALEUR DE RETOUR En cas de succ s la fonction virtSetTimeoutValue renvoie 0 Dans le cas contraire elle renvoie 1 et la fonction virtGetErrorCode permet d acc der au code d erreur ERREURS VIRT E INVALID CONTEXT Le param tre VC ne correspond pas un objet VirtContext valide VIRT E INCORRECT VALUE La valeur du param tre tout est incorrecte VOIR AUSSI virtGetTimeoutValue Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 58 NOM virtSetTimeStep fixe la valeur du pas d chantillonnage de la simulation SYNOPTIQUE include virtuoseAPI h int virtSetTimeStep VirtContext VC float timeStep DESCRIPTION La fonction virtSetTimeStep permet de communiquer au contr leur embarqu la valeur du pas d chantillonnage de la simulation Cette valeur est utilis e par celui ci afin de garantir la stabili
16. LEFT AXE 1 correspond la but e gauche sur l axe 1 e lebit VIRT BOUND RIGHT AXE 1 correspond la but e droite sur l axe 1 e lebitVIRT BOUND SUP AXE 2 correspond la but e sup rieure sur l axe 2 e lebit VIRT BOUND INF AXE 2 correspond la but e inf rieure sur l axe 2 e lebitVIRT BOUND SUP AXE 3 correspond la but e sup rieure sur l axe 3 e lebitVIRT BOUND INF AXE 3 correspond la but e inf rieure sur l axe 3 e lebit VIRT BOUND LEFT AXE 4 correspond la but e gauche sur l axe 4 e lebitVIRT BOUND RIGHT AXE 4 correspond la but e droite sur l axe 4 e lebitVIRT BOUND SUP AXE 5 correspond la but e sup rieure sur l axe 5 e lebitVIRT BOUND INF AXE 5 correspond la but e inf rieure sur l axe 5 e lebit VIRT BOUND LEFT AXE 6 correspond la but e gauche sur l axe 6 e lebitVIRT BOUND RIGHT AXE 6 correspond la but e droite sur l axe 6 VALEUR DE RETOUR En cas de succ s la fonction virtStopLoop renvoie 0 Dans le cas contraire elle renvoie 1 et la fonction virtGetErrorCode permet d acc der au code d erreur ERREURS VIRT E INVALID CONTEXT Le param tre VC ne correspond pas un objet VirtContext valide Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 82 NOM virtGetAlarm r cup re les alarmes en cours SYNOPTIQUE include virtuoseAPI h int virtGetAlarm VirtContext VC unsigned int alarm DESCRIPTION La fonction V
17. commande est incorrecte VIRT E CALL TIME L appel de la fonction est effectu e avant activation du m canisme VOIR AUSSI virtVmSetType virtVmActivate virtVmDeactivate Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 77 NOM virtDisableControlConnexion d sactivation du contr le de connexion entre la virtuoseAP et le contr leur SYNOPTIOUE include virtuoseAPI h int virtDisableControlConnexion VirtContext VC int disable DESCRIPTION La fonction VirtDisableControlConnexion d sactive ou r active le m canisme de surveillance de la connexion entre la librairie virtuoseAPl et le logiciel int gr dans le contr leur Ce contr le a t mis en place pour palier un plantage de la simulation et remettre le contr leur dans un tat d termin II consid re la simulation plant lorsque celle ci n envoit pas d information au bout de 2 secondes Cette fonction permet ainsi le debugage de la simulation et de positionner des points d arr t sans interrompre le contr leur Par contre apr s l utilisation de cette fonction puis plantage de la simulation nous ne garantissons pas l tat du contr leur II est aussi imp rati d utiliser la fonction virtClose la fin de la simulation PARAM TRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen Le param tre disable d sactive le m canis
18. d un bouton SYNOPTIQUE include virtuoseAPI h int virtGetButton VirtContext VC int button int state DESCRIPTION La fonction virtGetButton renvoie l tat d un des boutons plac s sur l outil mont l extr mit du Virtuose PARAM TRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen Le param tre button correspond au num ro de bouton Le param tre state est renseign par la fonction 0 bouton rel ch 1 bouton enfonc VALEUR DE RETOUR En cas de succ s la fonction virtGetButton renvoie 0 Dans le cas contraire elle renvoie 1 et la fonction virtGetErrorCode permet d acc der au code d erreur ERREURS VIRT E INVALID CONTEXT Le param tre VC ne correspond pas un objet VirtContext valide VOIR AUSSI VirtGetDeadMan virtGetEmergencyStop Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 26 NOM virtGetCommandType tat du mode de couplage SYNOPTIQUE include virtuoseAPI h int virtGetCommandType VirtContext VC VirtCommandType type DESCRIPTION La fonction virtGetCommandType renvoie le mode de couplage actif PARAM TRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen Le param tre type est rempli par la fonction Les valeurs possibles sont COMMAND TYPE IMPEDANCE Couplage force position COMMAND TYPE ADMITTANCE Couplage p
19. de contact mal d finies qui cr ent des r actions haute fr quence que l on peut interpr ter comme une instabilit 3 4 4 Collage intempestif Ce ph nom ne est caract ristique d une perte de performances de la liaison avec le Virtuose C est particuli rement le cas lorsque le bras est branch sur une branche r seau Copyright 2004 by HAPTION S A API ViRTUOsE V2 25 HAP 02 RT 006 DOCUMENTATION page 15 partag e avec de nombreuses stations de travail ou encore lorsque le bras et le simulateur ne se trouvent pas sur la m me branche r seau Dans ce cas il est n cessaire de modifier la topologie du r seau la meilleure solution tant de consacrer une carte r seau la seule communication avec le VIRTUOSE 3 4 5 Raideur trop faible Ce ph nom ne appara t lorsqu on manipule des objets de grande taille ou bien lorsque le facteur d chelle en d placement est inadapt II se traduit par une difficult ma triser le d placement de l objet coupl qui a trop d inertie par rapport aux efforts exerc s par le VIRTUOSE Dans ce cas il est bon de diminuer l inertie et la masse de l objet coupl soit en jouant sur sa taille facteur d chelle global pour toute la sc ne soit en diminuant sa densit On peut galement dans une certaine mesure r duire le facteur d chelle en effort ce qui a pour effet de d cupler les efforts exerc s par le Virruose voir ci dessous 3 4 6 Retour d effort
20. le cas d un couplage en effort PARAM TRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen Le param tre force p env r ps contient la force appliquer sous la forme d un torseur 6 composantes projet dans le rep re d environnement et r duit au centre du rep re outil Cette fonction n est accessible qu en mode de commande COMMAND TYPE SIMPLE VALEUR DE RETOUR En cas de succ s la fonction virtSetForce renvoie 0 Dans le cas contraire elle renvoie 1 et la fonction virtGetErrorCode permet d acc der au code d erreur ERREURS VIRT E INVALID CONTEXT Le param tre VC ne correspond pas un objet VirtContext valide VOIR AUSSI virtSetCommandType Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 50 NOM virtSetForceFactor fixe le facteur d homoth tie en effort SYNOPTIOUE include virtuoseAPI h int virtSetForceFactor VirtContext VC float factor DESCRIPTION La fonction virtSetForceFactor permet de changer le facteur d homoth tie en effort qui correspond un changement d chelle entre les efforts exerc s au niveau du ViRTUOSE et ceux de la simulation La fonction doit tre appel e avant la s lection du type de commande PARAM TRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen Le param tre factor contient le facteur dhomoth tie appliq
21. tre VC ne correspond pas un objet VirtContext valide VOIR AUSSI virtSetPosition virtAttachVO Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 40 NOM virtGetPowerOn tat de l alimentation des moteurs SYNOPTIQUE include virtuoseAPI h int virtGetPowerOn VirtContext VC int poweron DESCRIPTION La fonction virtGetPowerOn renvoie l tat de l alimentation des moteurs PARAM TRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen Le param tre poweron est rempli par la fonction La valeur 1 signifie que les moteurs sont aliment s la valeur 0 qu ils ne le sont pas VALEUR DE RETOUR En cas de succ s la fonction virtGetPowerOn renvoie 0 Dans le cas contraire elle renvoie 1 et la fonction virtGetErrorCode permet d acc der au code d erreur ERREURS VIRT E INVALID CONTEXT Le param tre VC ne correspond pas un objet VirtContext valide VOIR AUSSI virtSetPowerOn virtGetEmergencyStop virtGetDeadMan Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 41 NOM virtGetSpeed renvoie la vitesse de l avatar ou de l objet coupl au ViRTUOSE SYNOPTIQUE include virtuoseAPI h int virtGetSpeed VirtContext VC float speed p env r ps DESCRIPTION La fonction virtGetSpeed renvoie la vitesse de l avatar ou bien de l objet coupl
22. trop faible Ce ph nom ne est observ lorsque le facteur d chelle en effort est trop faible II peut aussi se produire avec certaines combinaisons de masse d inertie et de facteur d chelle en d placement Dans tous les cas il est souhaitable de remonter la valeur du facteur d chelle en effort ou d faut de se rapprocher d un cas nominal objet de 10 cm et 300 g chelle 1 Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 16 4 CHANGEMENT DE CONVENTIONS Un probl me classigue est le passage entre une convention graphigue rep res indirects axe Z vers le fond de l cran et une convention robotique rep res directs axe Z vertical Nous proposons ci dessous un sch ma simple de conversion entre ces deux conventions illustr par l exemple du moteur physique Vortex distribu par la soci t Critical Mass Labs 4 1 Exemple de conversion Nous d finissons les fonctions suivantes qui ont pour effet de permuter les axes Y et Z de fa on passer d un rep re graphique un rep re robotique et inversement Y Z Z Y EX bk A Convention Vortex Convention Virtuose Les d placements Vortex sont d finies sous la forme de position quaternion Les vitesses Vortex sont d finies sous la forme de vitesse lin aire vitesse angulaire void transformVortexPosQuatToVirtPosEnv float vortexPos float vortexQuat float virtPosEnv virtPosEnv 0
23. 4 by HAPTION S A API ViRTUOsE V2 25 HAP 02 RT 006 DOCUMENTATION page 31 VIRT E INVALID CONTEXT Le param tre VC ne correspond pas un objet VirtContext valide VIRT E HARDWARE ERROR Probl me de fonctionnement d un des composants mat riels du virtuose VOIR AUSSI virtOpen virtGetErrorMsg Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 32 NOM virtGetErrorMessage message explicatif d un code d erreur SYNOPTIOUE include virtuoseAPI h const char virtGetErrorMessage int code DESCRIPTION La fonction virtGetErrorMessage renvoie un message explicatif du code d erreur donn en param tre PARAM TRES Le param tre code contient le code d erreur dont on veut obtenir une explication VALEUR DE RETOUR Dans tous les cas la fonction virtGetErrorMessage renvoie un message d erreur ERREURS Aucune VOIR AUSSI virtGetErrorCode Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 33 NOM virtSetTimeStep fixe la valeur du pas d chantillonnage de la simulation SYNOPTIQUE include virtuoseAPI h int virtSetTimeStep VirtContext VC float timeStep DESCRIPTION La fonction virtSetTimeStep permet de communiquer au contr leur embarqu la valeur du pas d chantillonnage de la simulation Cette valeur est utilis e par celui ci afin de garantir la stabilit du sy
24. ALEUR DE RETOUR En cas de succ s la fonction VirtTrajRecordStop renvoie 0 Dans le cas contraire elle renvoie 1 et la fonction virtGetErrorCode permet d acc der au code d erreur ERREURS VIRT E INVALID CONTEXT Le param tre VC ne correspond pas un objet VirtContext valide VOIR AUSSI virtTrajRecordStart Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 65 NOM virtVmStartTrajSampling effectue une demande de lecture de la trajectoire SYNOPTIQUE include virtuoseAPI h int virtVmStartTrajSampling VirtContext VC unsigned int nbSamples DESCRIPTION La fonction VirtVmStartTrajSampling permet de lancer une lecture d une partie des points de trajectoire pr c demment enregistr s PARAM TRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen Le param tre nbSamples correspond au nombre de points VALEUR DE RETOUR En cas de succ s la fonction VirtVmStartTrajSampling renvoie 0 Dans le cas contraire elle renvoie 1 et la fonction virtGetErrorCode permet d acc der au code d erreur ERREURS VIRT E INVALID CONTEXT Le param tre VC ne correspond pas un objet VirtContext valide VIRT E INCORRECT VALUE Le param tre nbSamples est n gatif ou sup rieur 3000 points VOIR AUSSI virtVmGetTrajSamples Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DO
25. BaseFrame vitConvertRGBToGrayscale virtSetTextureForce virtSetTexture virtVmWaitUpperBound virtDisableControlConnexion virtSetPeriodicFunction virtStartLoop virtStopLoop virtisinBounds virtGetAlarm virtActiveSpeedControl virtDeactiveSpeedControl virtSetCatchFrame virtGetCatchFrame Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 20 NOM virtAttachVO couple un objet avec le VIRTUOSE SYNOPTIQUE include virtuoseAPI h int virtAttachVO VirtContext VC float mass float inertia DESCRIPTION La fonction virtAttachvo r alise le couplage de l objet d sign avec le VIRTuOSE et calcule des gains d asservissement optimaux et garantissant la stabilit globale du syst me L objet est d fini par la position de son centre point de r duction du torseur d efforts qui doit imp rativement tre envoy e laide de la fonction virtSetPosition avant l appel de virtAttachvVo Cette fonction n est accessible que dans les modes de commande COMMAND TYPE ADMITTANCE et COMMAND TYPE IMPEDANCE PARAM TRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen Le param tre mass correspond la masse de l objet exprim e en kg Le param tre inertia correspond la matrice d inertie de l objet stock e en lignes sous forme d un vecteur 9 composantes VALEUR DE RETOUR En cas de succ s la fonction virtAttachVo renvoie 0 Dans l
26. CUMENTATION page 66 NOM virtVmGetTrajSamples r cup re les points de trajectoire SYNOPTIOUE include virtuoseAPI h int virtVmGetTrajSamples VirtContext VC float samples DESCRIPTION La fonction VirtVmGetTrajSamples permet de r cup rer les points de trajectoire pr c demment enregistr s Cette fonction est bloquante jusqu la fin de la r ception des points depuis le contr leur PARAM TRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen Le param tre samples correspond un tableau de points VALEUR DE RETOUR En cas de succ s la fonction VirtVmGetTrajiSamples renvoie 0 Dans le cas contraire elle renvoie 1 et la fonction virtGetErrorCode permet d acc der au code d erreur ERREURS VIRT E INVALID CONTEXT Le param tre VC ne correspond pas un objet VirtContext valide VOIR AUSSI virtVmStartTrajSampling Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 67 NOM virtGetPhysicalPosition r cup re la position du bras Virtuose SYNOPTIOUE include virtuoseAPI h int virtGetPhysicalPosition VirtContext VC float pos DESCRIPTION La fonction VirtGetPhysicalPosition permet de r cup rer la position de la poignet du Virtuose par rapport sa base PARAM TRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen Le param tre pos correspond
27. HAPTION 1 bis rue Pierre et Marie Curie 92140 Clamart API ViRTuosE V2 25 DOCUMENTATION Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 2 TABLE DES MATIERES LINTRODUC N LO DE 3 IIOU EST CE GUE L APT VIRTUOSE Pis ee boks se Gee i usnis a Se EE ee ee SR Gegee Ge a ee ee Bed a a des ee ech 3 I 2 COMPOSITION DU oe OS AE EE EE EE ec 3 2MANUEL D INSTALLATION ese see see see see soe soe sesse ees ee EE GE EE GE ee GE GE Boe Bee BOE Bee Bee BOE EE Ee Ge GE EE GE Ge Ee ee Ee See See ee 4 SMANUEL UTILISATEUR 6 ie ese ee Gee sea ses o ks nan e o o o i a a a a a a o aa ee ee tie 5 ST CONTENU MR VIRTUOSE L sakes iai ss a ss sa ge ede o o io e a a a a a a a i o i ee Bek eb geed 5 DZ CONVENTIONS L ss ias IR EE RE EE RE aka E d ab ia a 5 SEET Eesen Eege EE E E 2 3 2 2Modes NEE 5 3 2 3D inition d s r epereS snie EE sti p EE e a EE OE a i iaip 6 3 2 4Unit s physiques utile 7 3 2 5Expression des grandeurs g om triques sense 7 3 3MISE EN UVRE DEL APL VIRIUOSE ees ree de ese i a a o i o ia i i te Gegee ennui eed Vie n es 8 EE 8 3 3 2Utilisation comme Dofier 10 EE SE EE RE EE EE N EE 11 3 ATOMPONSAION EE OE OE AE en eus 12 3 3 5Evolution logicielle de la version 2 25 eee 13 KE ELE 14 3 4 1Compatibilit avec les versions Je 14 EE 14 Steen Eege i ai i a i i a i E i Re I a i a i L a DE 14 3 4 4Goll g intempestif ER esse ees EA EN dee RE DO ees RUG ee a a i a
28. INHIBITION permettant d inhiber le retour d effort lorsque vous effectuez un d calage appui sur le bouton de d calage Si l objet coupl est en collision avec une autre pi ce de la sc ne ce moment le retour d effort dispara t en peu peu II r apparait aussi peu peu lorsque l op ration de d calage est termin Le contr le de la connexion est activ une fois la boucle haptique lanc Ainsi la boucle haptique peut ne pas suivre imm diatement la phase d initialisation du virtuose II est possible de travailler sans aucun d calage ce qu on appelle le mode colocalis En cons quence le bouton de d calage est inop rant un d placement du bras sans puissance d place l objet virtuel auquel on est attach D autre part le retour de la puissance impose l op rateur d effectuer un segment le bras est contraint sur un segment pour faire revenir le bras la position au moment de l arr t de la puissance Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 14 3 4 R solution de probl mes Nous citons ci dessous quelques probl mes classiques qui peuvent survenir lors des premiers couplages avec un objet virtuel Pour chacun d entre eux nous donnons des r gles simples adopter 3 4 1 Compatibilit avec les versions 1 x L API Virruose est modifi sur les points suivants 1 Les types de commande COMMAND TYPE FORCE et COMMAND TYPE POSITION sont remplac s
29. Tensor d virtTensor virtTensor virtTensor virtTensor virtTensor virtTensor virtTensor virtTensor virtTensor JOU 0 PRO GGG Fe vortexTensor vortexTensor vortexTensor vortexTensor vortexTensor vortexTensor vortexTensor vortexTensor vortexTensor DU LW HOOHBNDO Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 DOCUMENTATION HAP 02 RT 006 page 18 5 MANUEL DE R F RENCE virtAttachVO virtClose virtDetachVO virtDisplayHardwareStatus virtGetBaseFrame virtGetButton virtGetCommandType virtGetDeadMan virtGetEmergencyStop virtGetError virtGetErrorCode virtGetErrorMessage virtGetForce virtGetForceFactor virtGetlndexingMode virtGetObservationFrame virtGetPosition virtGetSpeed virtGetSpeedFactor virtGetTimeLastUpdate virtGetTimeoutValue virtOpen virtSetBaseFrame virtSetCommandType virtSetForce virtSetForceFactor virtSetlndexingMode virtSetObservationFrame virtSetObservationFrameSpeed virtSetPosition virtSetSpeed virtSetSpeedFactor virtSetTimeoutValue Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 DOCUMENTATION HAP 02 RT 006 page 19 virtSetTimeStep virtGetTimeStep virtVmSetType virtVmActivate virtVmDeactivate virtVmSetSamplingTimeStep virtTrajRecordStart virtTrajRecordStop virtVmStartTrajSampling virtVmGetTrajSamples virtPhysicalPosition virtAvatarPosition virtVmSetDefaultToTranparentMode virtVmSetDefaultToCartesianPosition virtVmGet
30. ait Les valeurs possibles sont INDEXING ALL L indexation agit sur les translations et les rotations Le d calage s effectue lors de l appui du bouton de d calage ou lorsqu il n y a pas de puissance bouton de facade ou rel chement du bouton homme mort INDEXING TRANS L indexation agit sur les translations seulement A la remise sous puissance le bras est contraint sur un segment en rotation pour revenir l orientation au moment de l arr t de la puissance NDEXING NONE L indexation est inop rante m me hors puissance A la remise sous puissance le bras est contraint sur un segment pour revenir la position au moment de l arr t de la puissance Les autres modes correspondent aux modes ci dessus la diff rence que le retour de d effort est inhib pendant le d calage VALEUR DE RETOUR En cas de succ s la fonction virtSetIndexingMode renvoie 0 Dans le cas contraire elle renvoie 1 et la fonction virtGetErrorCode permet d acc der au code d erreur ERREURS VIRT E INVALID CONTEXT Le param tre VC ne correspond pas un objet VirtContext valide VIRT E INCORRECT VALUE La valeur du param tre mode ne correspond par un mode valide VOIR AUSSI virtGetlndexingMode Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 52 NOM virtSetObservationFrame modification du rep re d observation SYNOPTIQUE
31. ant d indexation SYNOPTIQUE include virtuoseAPI h int virt VirtContext VC VirtlndexingMode mode DESCRIPTION La fonction virtGetIndexingMode permet d acc der au mode d indexation aussi appel mode de d calage PARAM TRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen Le param tre mode est rempli par la fonction Les valeurs possibles sont INDEXING ALL L indexation agit sur les translations et les rotations INDEXING TRANS L indexation agit sur les translations seulement INDEXING NONE L indexation est inop rante VALEUR DE RETOUR En cas de succ s la fonction virtGetIndexingMode renvoie 0 Dans le cas contraire elle renvoie 1 et la fonction virtGetErrorCode permet d acc der au code d erreur ERREURS VIRT E INVALID CONTEXT Le param tre VC ne correspond pas un objet VirtContext valide VOIR AUSSI virtSetlndexingMode Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 38 NOM virtGetObservationFrame position courante du rep re d observation SYNOPTIQUE include virtuoseAPI h int virtGetObservationFrame VirtContext VC float pos DESCRIPTION La fonction virtGetObservationFrame renvoie la position courante du rep re d observation par rapport au rep re d environnement PARAM TRES Le param tre VC correspond l objet VirtContext
32. argument pass lors de l appel VALEUR DE RETOUR En cas de succ s la fonction VirtSetPeriodicFunction renvoie 0 Dans le cas contraire elle renvoie 1 et la fonction virtGetErrorCode permet d acc der au code d erreur ERREURS VIRT E INVALID CONTEXT Le param tre VC ne correspond pas un objet VirtContext valide VOIR AUSSI virtStartLoop virtStopLoop virtSetTimeStep Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 79 NOM virtStartLoop d marrage du m canisme d appel de fonction p riodique SYNOPTIQUE include virtuoseAPI h int virtStartLoop VirtContext VC DESCRIPTION La fonction VirtStartLoop permet de lancer le m canisme d appel de fonction p riodique d finit pr c demment lors de l appel la fonction VirtSetPeriodicFunction PARAM TRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen VALEUR DE RETOUR En cas de succ s la fonction VirtStartLoop renvoie 0 Dans le cas contraire elle renvoie 1 et la fonction virtGetErrorCode permet d acc der au code d erreur ERREURS VIRT E INVALID CONTEXT Le param tre VC ne correspond pas un objet VirtContext valide VOIR AUSSI virtSetPeriodicFunction virtStopLoop Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 80 NOM virtStopLoop arr t du m canisme d appel d
33. bouton d indexation lorsque ce dernier est enfonc l avatar ne suit plus les mouvements du bras 3 3 3 Couplage un objet En mode coupl COMMAND TYPE ADMITTANCE on peut attacher le Virruose directement un objet et le bras devient alors une contrainte dynamique int grer dans la simulation de la sc ne Le couplage un objet est effectu selon la proc dure suivante 1 L appel de la fonction virtAttachVO r alise le couplage en calculant les param tres optimaux et en garantissant la stabilit pour cela elle a besoin de conna tre le pas d int gration du simulateur ainsi que la masse et le tenseur d inertie de l objet 2 La position et la vitesse du point de r f rence de l objet sont envoy s comme consignes fonction virtSetPosition et virtSetSpeed Le code suivant r alise le couplage avec un objet de masse m d inertie mxmymz et dont le centre d inertie est d fini par la position P et la vitesse V virtAttachVO VC m mxmymz virtSetPosition VC P virtSetSpeed VC S Afin de faire voluer l objet on d finit une fonction de mise jour appel e p riodiquement par Vapplication par exemple sous forme de callback int update object VC float P float S float torseur effort virtSetPosition VC P virtSetSpeed VC S virtGetForce VC torseur effort return 0 Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 12 3 3 4 Tempo
34. c s la valeur du d lai d attente SYNOPTIQUE include virtuoseAPI h int virtGetTimeoutValue VirtContext VC float tout DESCRIPTION La fonction virtGetTimeoutValue renvoie la valeur courante du d lai d attente avant abandon utilis pour la communication avec le contr leur embarqu PARAM TRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen Le param tre tout est rempli par la fonction avec la valeur en secondes du d lai d attente VALEUR DE RETOUR En cas de succ s la fonction virtGetTimeoutValue renvoie 0 Dans le cas contraire elle renvoie 1 et la fonction virtGetErrorCode permet d acc der au code d erreur ERREURS VIRT E INVALID CONTEXT Le param tre VC ne correspond pas un objet VirtContext valide VOIR AUSSI virtSetTimeoutValue Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 45 NOM virtOpen connexion de l API au contr leur du Virtuose SYNOPTIQUE include virtuoseAPI h VirtContext virtOpen const char host DESCRIPTION La fonction virtOpen r alise la connexion de l API au contr leur du Virtuose PARAM TRES Le param tre host contient l URL Uniform Ressource Locator du contr leur ViRTUOSE auquel l API doit se connecter Dans la version courante de l API un seul type de protocole est support l URL est donc de la forme suivante udpxdr identification nu
35. d a ai as 14 3 4 3Raideur trop faiblesse ie sa i a i k a a i a i o i A a Gee 15 3 4 0Retour EE 15 4CHANGEMENT DE CONVENTIONS ee see sesse se sesse see see sesse ese ese see see see see bee Ke ese e See bee ee ee ee Ee e EE Ge ee ee ee ee 16 d Jar DE CONVERSION ee EE EA NE OR EE aes 16 MANUEL DE R F RENCES EE 18 EI ER KR UE 87 Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 3 1 INTRODUCTION 1 1 Gu est ce que VAPI VirTuosE L API Virruose est une biblioth que de fonctions C permettant de s interfacer avec un syst me retour d effort de la gamme VIRTUOSE L API VIRTUOSE supporte les produits suivants ViRTUOSE 6D35 45 ViRTUOSE 6D35 40 ViRTUOsSE 3D35 40 ViRTUOSE 6D 10 20 VIRTuosE 3D 10 20 Elle permet de piloter simultan ment plusieurs produits de la gamme ainsi due le simulateur VIRTUOSE Elle est disponible pour diff rentes architectures et syst mes d exploitation Architecture PC sous Microsoft Windows 98 NT 2000 Architecture PC sous Linux noyau 2 4 Architecture SGI sous Irix 6 Selon les cas elle se pr sente sous forme d une librairie statigue et ou dynamigue dll sous Windows 1 2 Composition du document Ce document regroupe les chapitres suivants 1 Introduction ce chapitre Manuel d Installation Manuel Utilisateur Manuel de R f rence p n N Glossaire Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006
36. de VOIR AUSSI virtGetCommandType Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 48 NOM virtSetDebugFlags activation d un ou plusieurs niveaux de diagnostic SYNOPTIQUE include virtuoseAPI h int virtSetDebugFlags VirtContext VC unsigned short flags DESCRIPTION La fonction virtSetDebugFlags permet d activer les diff rents niveaux de diagnostic disponibles dans l API VIRTUOSE PARAM TRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen Le param tre flags est un champ de bits correspondant aux diff rents niveaux de diagnostic activer DEBUG SERVO informations relatives la stabilit du syt me DEBUG LOOP informations relatives l ex cution VALEUR DE RETOUR En cas de succ s la fonction virtSetDebugFlags renvoie 0 Dans le cas contraire elle renvoie 1 et la fonction virtGetErrorCode permet d acc der au code d erreur ERREURS VIRT E INVALID CONTEXT Le param tre VC ne correspond pas un objet VirtContext valide VOIR AUSSI Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 49 NOM virtSetForce envoie l effort appliquer au VIRTUOSE SYNOPTIQUE include virtuoseAPI h int virtSetForce VirtContext VC float force p env r ps DESCRIPTION La fonction virtSetForce envoie la force appliquer au ViRTuosE dans
37. de apr s d sactivation PARAM TRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen VALEUR DE RETOUR En cas de succ s la fonction VirtVmDefaultToTransparentMode renvoie 0 Dans le cas contraire elle renvoie 1 et la fonction virtGetErrorCode permet d acc der au code d erreur ERREURS VIRT E INVALID CONTEXT Le param tre VC ne correspond pas un objet Vi rtContext valide VOIR AUSSI virtSetDefaultToCartesianMode virtVmActivate virtVmDeactivate Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 71 NOM virtVmSetBaseFrame positionnement de la base du m canisme virtuel SYNOPTIQUE include virtuoseAPI h int virtVmSetBaseFrame VirtContext VC float base DESCRIPTION La fonction VirtVmSetBaseFrame permet de positionner le rep re de base du m canisme virtuel PARAM TRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen Le param tre base correspond au rep re de base II est exprim par rapport au rep re d environnement VALEUR DE RETOUR En cas de succ s la fonction VirtVmSetBaseFrame renvoie 0 Dans le cas contraire elle renvoie 1 et la fonction virtGetErrorCode permet d acc der au code d erreur ERREURS VIRT E INVALID CONTEXT Le param tre VC ne correspond pas un objet VirtContext valide VOIR AUSSI virtVmType vi
38. e cas contraire elle renvoie 1 et la fonction virtGetErrorCode permet d acc der au code d erreur ERREURS VIRT E INVALID CONTEXT Le param tre VC ne correspond pas un objet VirtContext valide VOIR AUSSI virtDetachVO virtSetPosition virtSetSpeed virtGetForce Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 21 NOM virtClose fermeture de la connexion au contr leur du Virtuose SYNOPTIQUE include virtuoseAPI h int virtClose VirtContext VC DESCRIPTION La fonction virtClose ferme la connexion au contr leur du Virtuose PARAM TRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen VALEUR DE RETOUR En cas de succ s la fonction virtClose renvoie 0 Dans le cas contraire elle renvoie 1 et la fonction virtGetErrorCode permet d acc der au code d erreur ERREURS VIRT E INVALID CONTEXT Le param tre VC ne correspond pas un objet VirtContext valide VOIR AUSSI virtOpen virtGetErrorCode Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 22 NOM virtDetachVO d couple un objet de la liaison avec le VIRTUOSE SYNOPTIQUE include virtuoseAPI h int virtDetachVO VirtContext VC DESCRIPTION La fonction virtDetachVO annule le couplage en cours d un objet avec le VIRTUOSE et remet z ro les gains d asser
39. e fonction p riodique SYNOPTIQUE include virtuoseAPI h int virtStopLoop VirtContext VC DESCRIPTION La fonction VirtStopLoop permet d arr ter le m canisme d appel de fonction p riodique d finit pr c demment lors de l appel la fonction VirtSetPeriodicFunction PARAM TRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen VALEUR DE RETOUR En cas de succ s la fonction virtStopLoop renvoie 0 Dans le cas contraire elle renvoie 1 et la fonction virtGetErrorCode permet d acc der au code d erreur ERREURS VIRT E INVALID CONTEXT Le param tre VC ne correspond pas un objet VirtContext valide VOIR AUSSI virtSetPeriodicFunction virtStartLoop Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 81 NOM virtislnBounds indique si l op rateur se situe en but e sur le bras VIRTUOSE SYNOPTIOUE include virtuoseAPI h int virtlsInBounds VirtContext VC unsigned int bounds DESCRIPTION La fonction VirtIsInBounds permet de savoir si l op rateur se situe en but e sur le bras VIRTUOSE PARAMETRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen Le param tre bounds est rempli par la fonction II repr sente un ensemble de bit dont voici la signification e lebit VIRT BOUND
40. ep re d observation par rapport au rep re d environnement fonction virtSetObservationFrame 7 La vitesse du rep re d observation par rapport au rep re d environnement fonction virtSetObservationFrameSpeed 8 Le type de couplage fonction virtSetCommandType Le code suivant correspond une configuration d usage fr quent float identity 7 0 0f 0 0f 0 0f 0 0f 0 0f 0 0f 1 0f virtSetIndexingMode VC INDEXING ALL virtSetForceFactor VC 1 0f virtSetSpeedFactor VC 1 0f virtSetTimeStep VC 0 003 virtSetBaseFrame VC identity virtSetObservationFrame VC identity virtSetObservationFrameSpeed VC identity Copyright 2004 by HAPTION S A API ViRTUOsE V2 25 HAP 02 RT 006 DOCUMENTATION page 10 virtSetCommandType VC COMMAND TYPE ADMITTANCE Enfin l initialisation doit se terminer par Vautorisation de mise sous puissance fonction virtSetPowerOn Cette fonction active le bouton poussoir MARCHE du VIRTUOSE qui permet l utilisateur de mettre les moteurs sous tension virtSetPowerOn VC 1 3 3 2 Utilisation comme pointeur Dans de nombreuses applications il est n cessaire de disposer d un mode pointeur dans lequel la position du ViRTUos est repr sent e l cran par un objet purement graphique l avatar sur lequel ne s exerce aucun effort Ce mode est utile pour d signer un objet sur lequel on veut se coupler ou encore pour appeler une f
41. g n ration de texture au niveau du contr leur II doit tre positionner 1 lors d une nouvelle collision 0 pour la prise en compte de texture VALEUR DE RETOUR Dans tous les cas la fonction VirtSetTexture renvoie 0 ERREURS VIRT E INVALID CONTEXT Le param tre VC ne correspond pas un objet VirtContext valide VIRT E INCORRECT VALUE Le param tre intensit n est pas compris entre 0 et 1 VOIR AUSSI virtConvertRGBToGrayscale Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 75 NOM virtSetTextureForce application d une force li e une texture SYNOPTIQUE include virtuoseAPI h int virtSetTextureForce VirtContext VC float W texture p env r ps DESCRIPTION La fonction VirtSetTextureForce permet d appliquer directement une force PARAM TRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen Le param tre W texture p env r ps correspond la force appliquer sous la forme d un torseur 6 composantes projet dans le rep re d environnement et r duit au centre du rep re outil VALEUR DE RETOUR En cas de succ s la fonction VirtSetTextureForce renvoie 0 Dans le cas contraire elle renvoie 1 et la fonction virtGetErrorCode permet d acc der au code d erreur ERREURS VIRT E INVALID CONTEXT Le param tre VC ne correspond pas un objet VirtContext valide Co
42. gue dans le calcul de la vitesse on suppose les dO 7 7 i vecteurs de base de R0 constants On note A V Xo FV Vo FV Zu R Le vecteur rotation de S dans RO est le vecteur Q tel que si OAR di Jr d ES z 2 EO di 5 SORP di Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 88 II est ind pendant du choix du rep re R1 li S On note O2 0 x TO Foz On peut en d duire la relation suivante VMeSiR VO R OAOM Le champ des vitesses de S est celui du champ de moment d un torseur appel torseur cin matigue dont les l ments de r duction sont KO s in v Ps VO OO o O S R x Fun 29 gety sg Dans ce document on parlera du torseur cin matigue de S r duit en O1 et projet dans RO VS R Copyright 2004 by HAPTION S A
43. incorrect Cette erreur est g n r e dans les cas suivants valeur n gative ou nulle valeur inf rieure au pas d chantillonnage utilis par le contr leur embarqu VOIR AUSSI VirtTrajRecordStart virtTrajRecordStop Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 63 NOM virtTrajRecordStart d marre Venregistrement SYNOPTIOUE include virtuoseAPI h int virtTrajRecordStart VirtContext VC DESCRIPTION La fonction VirtTrajRecordStart permet de lancer l enregistrement de la trajectoire PARAM TRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen VALEUR DE RETOUR En cas de succ s la fonction VirtTrajRecordStart renvoie 0 Dans le cas contraire elle renvoie 1 et la fonction virtGetErrorCode permet d acc der au code d erreur ERREURS VIRT E INVALID CONTEXT Le param tre VC ne correspond pas un objet VirtContext valide VOIR AUSSI virtTrajRecordStop Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 64 NOM virtTrajRecordStop arr te Venregistrement SYNOPTIOUE include virtuoseAPI h int virtTrajRecordStop VirtContext VC DESCRIPTION La fonction VirtTrajRecordStop permet d arr ter l enregistrement de la trajectoire PARAM TRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen V
44. ion de la fonction a virtOpen toutes les fonctions prennent comme premier argument un objet de type VirtContext cet objet est cr par la fonction virtOpen et d truit par virtClose l exception des fonctions a virtOpen virtGetErrorCode et a virtGetError Message toutes les fonctions de API renvoie 0 en cas de succ s et 1 en cas d chec Les fonctions de l API ont toutes un prototype unique en C lorsqu elles sont utilis es dans une application C leur prototype est sp cifi comme extern C de fa on viter toute surcharge 3 2 2 Modes d interaction L API Virtuose comporte plusieurs modes d interaction avec le syst me retour d effort Selon le type d application envisag le mode choisi sera diff rent 1 Couplage force position dans ce mode tr s basique l application transmet au syst me les valeurs d effort appliquer au rep re courant et re oit en retour la position et la vitesse du rep re courant Couplage position force ce mode volu permet le couplage direct avec un objet virtuel dans ce cas l application transmet au syst me la position et la vitesse du centre de l objet et re oit en retour le torseur d efforts appliquer au centre de l objet lors de l int gration de la dynamique Les gains optimaux d asservissement sont calcul s par le contr leur embarqu partir de la masse et du torseur d inertie de l objet coupl Couplage po
45. ion ind pendamment de l API 2 Le rep re d observation qui repr sente en g n ral le rep re cran il est positionn par rapport au rep re d environnement 3 Le rep re de base qui repr sente le centre du syst me retour d effort il est positionn par rapport au rep re d observation 4 Le rep re outil qui correspond la base de l outil fix l extr mit du Virtuose il est positionn par rapport au rep re d environnement 5 Le rep re avatar qui correspond la position de la main de l utilisateur par rapport au syst me haptigue et qui permet de prendre en compte la g om trie de l outil fix son extr mit il est positionn par rapport au rep re outil La position des rep res suivants peut tre modifi e l initialisation par l API Rep re d observation par rapport au rep re d environnement Rep re de base par rapport au rep re d observation Rep re avatar par rapport au rep re outil La position du rep re suivant peut tre modifi e tout moment par l API Rep re d observation par rapport au rep re d environnement La position du rep re suivant ne peut jamais tre modifi e Rep re outil par rapport au rep re d environnement Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 7 3 2 4 Unit s physiques utilis es Toutes les valeurs utilis es dans l API sont exprim es en unit s physiques et en convention
46. ion n est disponible que dans le mode COMMAND TYPE VIRTMECH PARAM TRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen Le param tre frame correpond au rep re de prise de l objet exprim dans le rep re du centre de gravit de l objet virtuel VALEUR DE RETOUR En cas de succ s la fonction virtGetCatchFrame renvoie 0 Dans le cas contraire elle renvoie 1 et la fonction virtGetErrorCode permet d acc der au code d erreur ERREURS VIRT E INVALID CONTEXT Le param tre VC ne correspond pas un objet VirtContext valide VOIR AUSSI virtAttachVO virtDettachVO virtSetCatchFrame Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 87 6 GLOSSAIRE Quaternion On peut passer d une rotation angulaire d angle 0 autour d un vecteur a b c un quaternion par la formule suivante x asin l S 2 8 gy bsin H qz esin S 2 qw cos 2 On peut ensuite normaliser le guaternion en divisant chacune de ses guatre composantes par sa norme calcul e ainsi n qx qy qgz gw Torseur cin matique Soit un solide S attach un rep re R1 01 x1 y1 z1 en mouvement dans un rep re RO O x0 y0 z0 La vitesse d un point M quelconque de S par rapport RO est not e VM S R dOM 400 ki dE 1 e g dt d j dt Jr di Ja dt Ja L indice RO de la d rivation temps signifie
47. irtGetAlarm permet de r cup rer les alarmes en cours PARAM TRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen Le param tre alarm est rempli par la fonction II repr sente un ensemble de bit dont voici la signification e le bit VIRT ALARM OVERHEAT indique qu un des moteurs est en chauffe Le retour d effort est alors r duit pour maintenir une temp rateur acceptable e le bit VIRT ALARM SATURATE indique une saturation des moteurs par d faut le retour d effort est au maximum de 35 Newton en force instantan e et de 3 1 Nm en couple sur les ViRTuosE 6D e lebit VIRT ALARM CALLBACK OVERRUN indique que le temps d ex cution de la fonction p riodique d finie lors de l appel de virtSetPeriodicFunction d passe le temps fourni en param tre Aucun traitement n est r alis en cas de d passement II est indispensable que le temps d ex cution de la callback soit inf rieure au temps pr cis VALEUR DE RETOUR En cas de succ s la fonction virtStopLoop renvoie 0 Dans le cas contraire elle renvoie 1 et la fonction virtGetErrorCode permet d acc der au code d erreur ERREURS VIRT E INVALID CONTEXT Le param tre VC ne correspond pas un objet VirtContext valide VOIR AUSSI virtSaturateTorque virtSetPeriodicFunction virtSetTimeStep Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 83 NOM virtAc
48. jet Vi rtContext valide VOIR AUSSI virtGetEmergencyStop virtGetPowerOn Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 28 NOM virtGetEmergencyStop tat de la cha ne d arr t d urgence SYNOPTIQUE include virtuoseAPI h int virtGetEmergencyStop VirtContext VC int stop DESCRIPTION La fonction virtGetEmergencyStop renvoie l tat de la cha ne d arr t d urgence PARAM TRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen Le param tre stop est rempli par la fonction La valeur 1 signifie que la cha ne est ferm e le syst me est op rationnel la valeur 0 qu elle est ouverte le syst me est arr t VALEUR DE RETOUR En cas de succ s la fonction virtGetEmergencyStop renvoie 0 Dans le cas contraire elle renvoie 1 et la fonction virtGetErrorCode permet d acc der au code d erreur ERREURS VIRT E INVALID CONTEXT Le param tre VC ne correspond pas un objet VirtContext valide VOIR AUSSI virtGetDeadMan virtGetPowerOn Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 29 NOM virtGetError acc s l tat de fonctionnement du virtuose SYNOPTIQUE include virtuoseAPI h int virtGetError VirtContext VC int error DESCRIPTION La fonction virtGetError permet de tester l tat de fonctionnement du virtuose que ce soit en
49. la position Elle est exprim e par rapport au rep re de base du Virtuose VALEUR DE RETOUR En cas de succ s la fonction VirtGetPhysicalPosition renvoie 0 Dans le cas contraire elle renvoie 1 et la fonction virtGetErrorCode permet d acc der au code d erreur ERREURS VIRT E INVALID CONTEXT Le param tre VC ne correspond pas un objet VirtContext valide VOIR AUSSI virtSetBaseFrame Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 68 NOM virtGetAvatarPosition r cup re la position du bras Virtuose avec d calage SYNOPTIQUE include virtuoseAPI h int virtGetAvatarPosition VirtContext VC float pos DESCRIPTION La fonction VirtGetAvatarPosition permet de r cup rer la position du poignet du Virtuose par rapport au rep re d environnement Cette position tient compte du coefficient de d placement PARAM TRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen Le param tre pos correspond la position Elle est exprim e par rapport au rep re d environnement VALEUR DE RETOUR En cas de succ s la fonction VirtGetPhysicalPosition renvoie 0 Dans le cas contraire elle renvoie 1 et la fonction virtGetErrorCode permet d acc der au code d erreur ERREURS VIRT E INVALID CONTEXT Le param tre VC ne correspond pas un objet VirtContext valide VOIR AUSSI virtSetSpeedFactor C
50. le retourne z ro si celle ci n est pas d finie PARAMETRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen Le param tre step correspond au pas d chantillonnage de la simulation exprim en secondes VALEUR DE RETOUR La fonction virtGetTimeStep renvoie 0 dans tous les cas ERREURS VIRT E INVALID CONTEXT Le param tre VC ne correspond pas un objet VirtContext valide VOIR AUSSI virtSetTimeStep Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 35 NOM virtGetForce renvoie le torseur d efforts appliquer l objet coupl SYNOPTIQUE include virtuoseAPI h int virtGetForce VirtContext VC float force p env r ps DESCRIPTION La fonction virtGetForce renvoie le torseur d efforts appliquer l objet auquel est coupl le ViRTuosE permettant la simulation dynamique de la sc ne PARAM TRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen Le param tre force p env r ps est renseign par la fonction virtGetForce II correspond aux efforts appliquer l objet sous forme d un torseur 6 composantes projet dans le rep re d environnement et r duit au centre de l objet VALEUR DE RETOUR En cas de succ s la fonction virtGetForce renvoie 0 Dans le cas contraire elle renvoie 1 et la fonction virtGetErrorCode permet d acc der au code d erreur
51. m tre VC correspond l objet VirtContext renvoy par la fonction virtOpen Le param tre rgb est un tableau de trois composants dont le premier correspond la couleur rouge le second la couleur verte et le troisi me la couleur bleu VALEUR DE RETOUR Dans tous les cas la fonction VirtConvertRGBToGrayscale renvoie 0 ERREURS VIRT E INVALID CONTEXT Le param tre VC ne correspond pas un objet Vi rtContext valide VOIR AUSSI virtVmSetTexture Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 74 NOM virtSetTexture application d une texture en un point de contact SYNOPTIQUE include virtuoseAPI h int virtSetTexture VirtContext VC float H texture p env float intensite int reinit DESCRIPTION La fonction VirtSetTexture permet d appliquer une texture en un point de contact suivant le niveau de gris ou plut t de la variation des niveaux de gris en diff rents points Elle permet de cr er des sensations de reliefs les bosses sont associ es au blanc et les creux associ s au noir PARAM TRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen Le param tre H texture p env est un vecteur d placement 7 composants correspondant la position du point de contact Le param tre intensite est un flottant correspondant un niveau de gris entre O et 1 Le param tre reinit r initialise le module de
52. me s il est positionn 1 et permet de le r activer s il est positionn 0 VALEUR DE RETOUR En cas de succ s la fonction virtDisableControlConnexion renvoie 0 Dans le cas contraire elle renvoie 1 et la fonction virtGetErrorCode permet d acc der au code d erreur ERREURS VIRT E INVALID CONTEXT Le param tre VC ne correspond pas un objet Vi rtContext valide VOIR AUSSI virtClose Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 78 NOM virtSetPeriodicFunction initialisation du m canisme d appel de fonction p riodique SYNOPTIQUE include virtuoseAPI h int virtSetPeriodicFunction VirtContext VC void fn VirtContext void float period void arg DESCRIPTION La fonction VirtSetPeriodicFunction permet de fournir un pointeur sur la fonction qui sera appel cycliquement la p riode fournit en param tre L appel de fonction est synchronis sur la r ception de trame en provenance du controleur ce m canisme fournit de bonne performance temps r el PARAM TRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen Le param tre fn est un pointeur de fonction Le param tre period correpond la p riode d appel de la fonction exprim en secondes Celle ci doit correspondre la p riode fournie lors de l appel la fonction virtSetTimeStep Le param tre arg correspond l
53. mero d _ port interface udpxdr d signe le protocole utiliser identification contient le nom du contr leur ViRTuose s il peut tre r solu par un serveur DNS ou d faut son adresse IP sous forme de quatre entiers d cimaux s par s par des point ex 192 168 0 1 numero de_port est un entier d cimal sp cifiant le port utiliser Par d faut il vaut 0 et dans ce cas l API cherche un port libre en partant de 3131 interface correspond au lien physique utiliser ignor dans le cas du protocole udpxdr Dans le cas o seul nom ou adresse ip est renseign l URL est compl t de la fa on suivante udpxdr nom ou adresse ip 0 Attention cette compl tion automatique est limit e au seul protocole udpxdr Le pr pr fixe standard url d fini par la norme est support mais ignor VALEUR DE RETOUR En cas de succ s la fonction virtOpen renvoie un pointeur de type VirtContext pointeur sur une structure de donn es masqu e Sinon elle renvoie NULL et la fonction virtGetErrorCode permet d acc der au code d erreur ERREURS VIRT E SYNTAX ERROR Le param tre host ne correspond pas un URL valide VIRT E COMMUNICATION FAILURE La fonction virtOpen n a pas r ussi communiquer avec le contr leur du Virtuose VIRT E OUT OF MEMORY Copyright 2004 by HAPTION S A API ViRTUOsE V2 25 HAP 02 RT 006 DOCUMENTATION page 46 La fonction virtOpen na
54. ntre doit tre fix avant la demande de couplage effectu e par la fonction virtAttachvo II est remis z ro chaque appel de la fonction virtDettachVoO La partie orientation du rep re de prise n a aucune influence La fonction n est disponible que dans le mode COMMAND TYPE VIRTMECH PARAM TRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen Le param tre frame correpond au rep re de prise de l objet exprim dans le rep re du centre de gravit de l objet virtuel VALEUR DE RETOUR En cas de succ s la fonction virtSetCatchFrame renvoie 0 Dans le cas contraire elle renvoie 1 et la fonction virtGetErrorCode permet d acc der au code d erreur ERREURS VIRT E INVALID CONTEXT Le param tre VC ne correspond pas un objet VirtContext valide VIRT E INCORRECT VALUE Les valeurs du param tre frame est incorrect guaternion non norm VOIR AUSSI virtAttachVO virtDettachVO virtGetCatchFrame Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 86 NOM virtGetCatchFrame lecture du rep re de prise d un objet virtuel SYNOPTIOUE include virtuoseAPI h int virtGetCatchFrame VirtContext VC float frame DESCRIPTION La fonction virtGetCatchFrame permet de r cup rer le rep re de prise par rapport au rep re du centre de l objet pr alablement fixer par la fonction virtSetCatchFrame La fonct
55. onction l aide d un menu contextuel Afin d impl menter ce mode de fonctionnement on d finit une fonction appel e p riodiquement qui va servir mettre jour les consignes du p riph rique haptique et r cup rer sa position Cette fonction est appel e par l application par exemple sous la forme d un callback En mode simple COMMAND TYPE IMPEDANCE cette fonction doit forcer O la consigne d effort et renvoyer la position du bras Elle peut prendre la forme suivante int update avatar VirtContext VC float position float null 6 0 0f 0 0f 0 0f 0 0f 0 0f 0 0f virtSetForce VC null virtGetPosition VC position return 0 Copyright 2004 by HAPTION S A API ViRTUOsE V2 25 HAP 02 RT 006 DOCUMENTATION page 11 En mode coupl COMMAND TYPE ADMITTANCE la fonction lit la position et la vitesse du bras la renvoie celui ci comme consigne ainsi l erreur de position et de vitesse est nulle et donc aucun effort n est g n r int update avatar VirtContext VC float position float speed 6 virtGetPosition VC position virtGetSpeed VC speed virtSetPosition VC position virtSetSpeed VC speed return 0 Dans les deux cas la fonction renvoie dans la variable position la position courante de l avatar en translation et en rotation Cette position est affect e par le choix des rep res de base et d observation ainsi que par le bouton de d calage ou
56. ond pas un objet VirtContext valide VIRT E INCORRECT VALUE Le rayon ou le coefficient multiplicatif ne sont pas positifs VOIR AUSSI virtDeactiveSpeedControl Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 84 NOM virtDeactiveSpeedControl d sactive la commande en vitesse SYNOPTIQUE include virtuoseAPI h int virtDeactiveSpeedControl VirtContext VC DESCRIPTION La fonction virtDeactiveSpeedControl permet de d sactiver la commande en vitesse L op rateur contr le l objet en position sur tout l espace de travail PARAM TRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen VALEUR DE RETOUR En cas de succ s la fonction virtDeactiveSpeedControl renvoie 0 Dans le cas contraire elle renvoie 1 et la fonction virtGetErrorCode permet d acc der au code d erreur ERREURS VIRT E INVALID CONTEXT Le param tre VC ne correspond pas un objet Vi rtContext valide Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 85 NOM virtSetCatchFrame position du rep re de prise d un objet virtuel SYNOPTIQUE include virtuoseAPI h int virtSetCatchFrame VirtContext VC float frame DESCRIPTION La fonction virtSetCatchFrame permet de position le rep re de prise par rapport au rep re du centre de l objet Ce d calage par rapport au ce
57. opyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 69 NOM virtVmSetDefaultToCartesianPosition bloque le bras avant l activation du guide virtuel SYNOPTIQUE include virtuoseAPI h int virtVmDefaultToCartesienPosition VirtContext VC DESCRIPTION La fonction VirtVmDefaultToCartesienPosition permet de bloquer le bras du virtuose avant activation du m canisme virtuel Le bras sera de nouveau bloqu apr s d sactivation PARAM TRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen VALEUR DE RETOUR En cas de succ s la fonction VirtVmDefaultToCartesianPosition renvoie 0 Dans le cas contraire elle renvoie 1 et la fonction virtGetErrorCode permet d acc der au code d erreur ERREURS VIRT E INVALID CONTEXT Le param tre VC ne correspond pas un objet Vi rtContext valide VOIR AUSSI virtSetDefaultToTransparentMode virtVmActivate virtVmDeactivate Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 70 NOM virtVmSetDefaultToTransparentMode lib re le bras avant l activation du guide virtuel SYNOPTIQUE include virtuoseAPI h int virtVmDefaultToTransparentMode VirtContext VC DESCRIPTION La fonction VirtVmDefaultToCartesienPosition permet de mettre le bras du virtuose en mode transparent avant activation du m canisme virtuel Le bras sera de nouveau dans ce mo
58. osition force simple COMMAND TYPE VIRTMECH Couplage position force avec m canisme virtuel VALEUR DE RETOUR En cas de succ s la fonction virtGetCommandType renvoie 0 Dans le cas contraire elle renvoie 1 et la fonction virtGetErrorCode permet d acc der au code d erreur ERREURS VIRT E INVALID CONTEXT Le param tre VC ne correspond pas un objet VirtContext valide VOIR AUSSI virtSetCommandType Copyright 2004 by HAPTION S A NOM API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 27 virtGetDeadMan tat du capteur de s curit SYNOPTIQUE include yirtuoseAPI h int virtGetDeadMan VirtContext VC int deadman DESCRIPTION La fonction virtGetDeadMan renvoie l tat du capteur de s curit plac l extr mit du bras aussi appel capteur d homme mort PARAM TRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen Le param tre deadman est rempli par la fonction La valeur 1 signifie que le capteur de s curit est enclench utilisateur pr sent la valeur 0 que le capteur est d clench utilisateur absent VALEUR DE RETOUR En cas de succ s la fonction virtGetDeadMan renvoie 0 Dans le cas contraire elle renvoie 1 et la fonction virtGetErrorCode permet d acc der au code d erreur ERREURS V IRT E INVAL D CONTEXT Le param tre VC ne correspond pas un ob
59. ou stdout par d faut VALEUR DE RETOUR En cas de succ s la fonction virtDisplayHardwareStatus renvoie 0 Dans le cas contraire elle renvoie 1 et la fonction virtGetErrorCode permet d acc der au code d erreur ERREURS VIRT E INVALID CONTEXT Le param tre VC ne correspond pas un objet VirtContext valide VOIR AUSSI VirtSetOutputFile Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 24 NOM virtGetBaseFrame position courante du rep re de base SYNOPTIQUE include virtuoseAPI h int virtGetBaseFrame VirtContext VC float pos DESCRIPTION La fonction virtGetBaseFrame renvoie la position courante du rep re de base par rapport au rep re d observation PARAM TRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen Le param tre pos correspond au d placement du rep re de base par rapport au rep re d observation VALEUR DE RETOUR En cas de succ s la fonction virtGetBaseFrame renvoie 0 Dans le cas contraire elle renvoie 1 et la fonction virtGetErrorCode permet d acc der au code d erreur ERREURS VIRT E INVALID CONTEXT Le param tre VC ne correspond pas un objet VirtContext valide VOIR AUSSI virtSetBaseFrame Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 25 NOM virtGetButton tat
60. par COMMAND TYPE IMPEDANCE et COMMAND TYPE ADMITTANCE La lecture de l tat des boutons se r alise par l interm diaire d une seule fonction Certaines param tres notamment la position du vecteur de base et d observation ne peuvent tre positionn qu avant la s lection du type de commande 3 4 2 Fonctions obsol tes Les fonctions virtSetLimitTorque et virtGetLimitTorque sont obsol tes La saturation des efforts est maintenant impl ment e dans la fonction virtSaturateTorgue elle a t nettement am lior e 3 4 3 Instabilit L API VirTuosE calcule les param tres de couplage en respectant deux crit res 1 Stabilit du syst me coupl simulateur objet virtuel bras 2 Optimalit raideur maximale Si une instabilit survient n anmoins lors d un couplage il est bon de faire certaines v rifications e Le pas d int gration donn e l API par la fonction virtSetTimeStep est il vraiment identique celui dui est utilis par le simulateur e Le simulateur ne prend il pas du retard par rapport ce pas d int gration c est dire le temps r el est il vraiment synchrone avec le temps simul e Les param tres de masse et d inertie utilis s par le simulateur pour son int gration sont ils les m mes que ceux transmis au Virtuose Les unit s sont elles respect es Par ailleurs certains moteurs de d tection de collision peuvent renvoyer des informations tr s bruit es avec des normales
61. pas r ussi allouer la m moire n cessaire pour l objet VirtContext VIRT E INCOMPATIBLE VERSION La version de l API et celle du contr leur sont incompatibles VOIR AUSSI virtClose virtGetErrorCode Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 47 NOM virtSetCommandType changement du mode de couplage SYNOPTIQUE include virtuoseAPI h int virtSetCommandType VirtContext VC VirtCommandType type DESCRIPTION La fonction virtSetCommandType permet de modifier le mode de couplage PARAM TRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen Le param tre type correspond au mode de couplage souhait Les valeurs possibles sont COMMAND TYPE NONE Aucun mouvement possible COMMAND TYPE IMPEDANCE Couplage force position COMMAND TYPE ADMITTANCE Couplage position force simple COMMAND TYPE VIRTMECH Couplage position force avec m canisme virtuel VALEUR DE RETOUR En cas de succ s la fonction virtSetCommandType renvoie 0 Dans le cas contraire elle renvoie 1 et la fonction virtGetErrorCode permet d acc der au code d erreur ERREURS VIRT E INVAL D CONTEXT Le param tre VC ne correspond pas un objet Vi rtContext valide VIRT E INCORRECT VALUE La valeur du param tre type ne correspond par un mode vali
62. pyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 76 NOM virtVmWaitUpperBound attente d une but e sup rieure d un m canisme virtuel SYNOPTIQUE include virtuoseAPI h int virtVmWaitUpperBound VirtContext VC DESCRIPTION La fonction VirtVmWaitUpperBound n est disponible qu en mode COMMAND TYPE VIRTMECH et pour les m canismes d placement cart sien et splines Avant activation la fonction est non bloguante et retourne un code d erreur Apr s activation la fonction est bloguante En m canisme d placement cart sien elle est d blogu e lorsgue la but e sup rieure du segment rejoignant Ie point final est atteint En m canisme Spline elle est d blogu e lorsque la but e sup rieure de la spline est atteinte Dans tous les cas la fonction est d bloqu e sur d sactivation du m canisme Cette fonction est souvent utilis e en mode robot et permet d enchainer les m canismes virtuels PARAM TRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen VALEUR DE RETOUR En cas de succ s la fonction VirtVmWaitUpperBound renvoie 0 Dans le cas contraire elle renvoie 1 et la fonction virtGetErrorCode permet d acc der au code d erreur ERREURS VIRT E INVALID CONTEXT Le param tre VC ne correspond pas un objet VirtContext valide VIRT E INCORRECT VM TYPE Le type de m canisme est incorrecte VIRT E WRONG MODE Le type de
63. renvoy par la fonction virtOpen Le param tre pos correspond au d placement du rep re d observation par rapport au rep re d environnement VALEUR DE RETOUR En cas de succ s la fonction virtGetObservationFrame renvoie 0 Dans le cas contraire elle renvoie 1 et la fonction virtGetErrorCode permet d acc der au code d erreur ERREURS VIRT E INVALID CONTEXT Le param tre VC ne correspond pas un objet VirtContext valide VOIR AUSSI virtSetObservationFrame Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 39 NOM virtGetPosition renvoie la position courante de avatar ou de l objet coupl au VIRTUOSE SYNOPTIOUE include virtuoseAPI h int virtGetPosition VirtContext VC float pos p env DESCRIPTION La fonction virtGetPosition renvoie la position courante de l avatar ou de l objet coupl au VIRTUOSE si un couplage est en cours PARAM TRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen Le param tre pos p env est renseign par la fonction virtGetPosition Elle est exprim e sous forme d un vecteur d placement 6 composantes projet dans le rep re d environnement VALEUR DE RETOUR En cas de succ s la fonction virtGetPosition renvoie 0 Dans le cas contraire elle renvoie 1 et la fonction virtGetErrorCode permet d acc der au code d erreur ERREURS VIRT E INVALID CONTEXT Le param
64. risation Certaines temporisations logicielles sont n cessaire entre le positionnement d un param tre et sa lecture Ie temps au contr leur de prendre en compte ce nouveau param trage Cela concerne le type d indexation les r p res de base avatar observation et base du m canisme virtuel les coefficients de d placement et d effort les enchainements de m canismes virtuels Exemples type d indexation VirtlndexingType type indexation virtSetIndexingMode VC INDEXING TRANS Sleep 10 virtGetIlndexingMode VC amp type rep re de base du m canisme virtuel float virtVmBaseFrame 7 virtVmSetBaseFrameToCurrentFrame VC Sleep 10 virtGetVmBaseFrame VC virtVmBaseFrame encha nement de deux m canismes virtuels d placement vers un point situ 20 cm sur l axe x et enchainement d un ll m canisme rotation suivant le m me axe virtVmSetType VC VM TYPE CartMotion virtVmSetBaseFrameToCurrentFrame VC virtVmActivate VC virtVmWaitUpperBound VC virtVmDeactivate VC Sleep 10 virtVmSetType VC VM TYPE Rx virtVmActivate VC Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 13 3 3 5 Evolution logicielle de la version 2 25 1 II existe maintenant un guide virtuel plan d fini par les axes Ox et Oy du rep re de base du m canisme virtuel L op rateur et l objet virtuel sont contraints
65. rtOpen Le param tre type correspond au type de m canisme virtuel Les types disponibles sont VM TYPE CartMotion guide virtuel z ro degr de libert correpondant un point d fini par l origine du rep re de base du m canisme virtuel VM TYPE SPLINE guide virtuel un degr de libert bas sur une courbe spline VM TYPE Rx guide virtuel un degr de libert correpondant une liaison de type pivot d axe Ox du rep re de base du m canisme virtuel VM TYPE TX guide virtuel un degr de libert correpondant une liaison de type glissi re d axe Ox du rep re de base du m canime virtuel VM TYPE TxTy guide virtuel deux degr de libert correpondant deux liaisons de type glissi re d axe Ox et Oy du rep re de base du m canime virtuel VM TYPE TxRx guide virtuel deux degr de libert correspondant une liaison de type pivot glissant d axe Ox du rep re de base du m canime virtuel VM TYPE RxRyRz guide virtuel trois degr de libert correspondant une liaison de type rotule par rapport au rep re de base du m canime virtuel VM TYPE Crank guide virtuel deux degr de libert correspond un mouvement d une manivelle autour de l axe Ox du rep re de base du m canisme virtuel VALEUR DE RETOUR En cas de succ s la fonction virtVmSetType renvoie 0 Dans le cas contraire elle renvoie 1 et la fonction virtGetErrorCode permet d acc der au code d erreur ERREURS
66. rtVmGetBaseFrame Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 72 NOM virtVmGetBaseFrame lecture de la base du m canisme virtuel SYNOPTIOUE include virtuoseAPI h int virtVmGetBaseFrame VirtContext VC float base DESCRIPTION La fonction VirtVmGetBaseFrame permet de lire le rep re de base du m canisme virtuel PARAM TRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen Le param tre base correspond au rep re de base II est exprim par rapport au rep re d environnement VALEUR DE RETOUR En cas de succ s la fonction VirtVmGetBaseFrame renvoie 0 Dans le cas contraire elle renvoie 1 et la fonction virtGetErrorCode permet d acc der au code d erreur ERREURS VIRT E INVALID CONTEXT Le param tre VC ne correspond pas un objet VirtContext valide VOIR AUSSI virtVmSetBaseFrame Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 73 NOM virtConvertRGBToGrayscale conversion RGB en niveau de gris SYNOPTIQUE include virtuoseAPI h int virtConvertRGBToGrayscale VirtContext VC float rgb float gray DESCRIPTION La fonction VirtConvertRGBToGrayscale permet de convertir une couleur d finie en RGB en niveau de gris Les proportions r alis es sont 29 9 de rouge 58 7 de vert 11 4 de bleu PARAM TRES Le para
67. sition force avec guidage virtuel ce mode ajoute au mode pr c dent un guidage virtuel de diff rent type translation rotation Copyright 2004 by HAPTION S A API ViRTUOsE V2 25 HAP 02 RT 006 DOCUMENTATION page 6 3 2 3 D finition des rep res Les conventions d orientation sont mat rialis es par la notion de rep re Toute grandeur g om trigue position vitesse effort inertie etc est d finie par rapport amp un rep re particulier Par d finition tous les rep res utilis s dans VAPI ViRTUosE sont directs Cela constitue une diff rence fondamentale par rapport aux conventions traditionnellement utilis es en informatique graphique Nous proposons plus loin un sch ma de conversion permettant de faire cohabiter les deux types de conventions Par d faut et Vinitialisation de l API tous les rep res sont confondus et d finis comme suit Origine au centre du syst me retour d effort c est dire au point d intersection entre laxe 1 rotation de la base et laxe 2 premier mouvement vertical Axe X horizontal align selon la position m diane de l axe 1 rotation de la base et orient vers l utilisateur Axe Y horizontal perpendiculaire laxe X et orient vers la droite de l utilisateur Axe Z vertical et orient vers le haut L API d finit les rep res suivants 1 Le rep re d environnement qui correspond l origine de la sc ne il est fix par l applicat
68. st me coupl La fonction doit tre appel e avant la s lection du type de commande PARAM TRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen Le param tre timeStep correspond au pas d chantillonnage de la simulation exprim en secondes VALEUR DE RETOUR En cas de succ s la fonction virtSetTimeStep renvoie 0 Dans le cas contraire elle renvoie 1 et la fonction virtGetErrorCode permet d acc der au code d erreur ERREURS VIRT E INVALID CONTEXT Le param tre VC ne correspond pas un objet Vi rtContext valide VIRT E INCORRECT VALUE La valeur du param tre timeStep est incorrecte Cette erreur est g n r e dans les cas suivants Valeur n gative ou nulle valeur inf rieure au pas d chantillonnage utilis par le contr leur embarqu valeur trop grande pour assurer la stabilit du syst me VIRT E CALL TIME La fonction est appel e apr s la s lection du type de commande VOIR AUSSI virtGetTimeStep Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 34 NOM virtGetTimeStep lecture du pas d chantillonnage de la simulation SYNOPTIQUE include virtuoseAPI h int virtGetTimeStep VirtContext VC float step DESCRIPTION La fonction virtGetTimeStep permet de lire la valeur du pas d chantillonnage de la simulation pr alablement fix e par la fonction virtGetTimeStep El
69. t du syst me coupl Elle doit tre appel e avant la s lection du type de commande PARAM TRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen Le param tre timeStep correspond au pas d chantillonnage de la simulation exprim en secondes VALEUR DE RETOUR En cas de succ s la fonction virtSetTimeStep renvoie 0 Dans le cas contraire elle renvoie 1 et la fonction virtGetErrorCode permet d acc der au code d erreur ERREURS VIRT E INVALID CONTEXT Le param tre VC ne correspond pas un objet VirtContext valide VIRT E INCORRECT VALUE La valeur du param tre timeStep est incorrecte Cette erreur est g n r e dans les cas suivants Valeur n gative ou nulle valeur inf rieure au pas d chantillonnage utilis par le contr leur embarqu valeur trop grande pour assurer la stabilit du syst me VIRT E CALL TIME La fonction est appel e apr s la s lection du type de commande VOIR AUSSI Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 59 NOM virtVmSetType s lection du type de m canisme virtuel SYNOPTIQUE include virtuoseAPI h int virtVmSetType VirtContext VC virtVmType type DESCRIPTION La fonction virtVmSetType permet de s lectionner le type de m canisme virtuel PARAM TRES Le param tre VC correspond l objet VirtContext renvoy par la fonction vi
70. t d une part acc der l tat courant de la communication et d autre part identifier le Virruose auquel est adress e la requ te dans le cas d une application plusieurs interfaces haptiques Il est indispensable de tester la valeur de retour de la fonction virtOpen car le fonctionnement de toute l API est subordonn au succ s de la connexion VirtContext VC VC virtOpen 192 168 1 1 if VC NULL fprintf stderr Erreur dans virtOpen s n virtGetErrorMessage virtGetErrorCode NULL return 1 Ensuite il est conseill de r aliser explicitement la configuration du couplage dans la mesure ou la configuration par d faut n est pas forc ment conforme l utilisation qu on veut faire du bras 1 Le facteur d chelle en d placement fonction virtSetSpeedFactor L int r t d un facteur d homoth tie en vitesse est l augmentation de l amplitude des translations effectu es durant les simulations Cette fonctionnalit est tr s appr ciable dans le cadre des simulations n cessitant la manipulation d objets dans un sc ne de grandes dimensions Le sch ma suivant illustre l effet d un facteur d homoth tie en vitesse sur les d placements en translation de l objet virtuel manipul Cas 1 Pas dhomoth tie en vitesse 10 cm Pour un d placement horizontal de 10 cm de l interface haptique le d placement du cube virtuel est quivalente Copyright 2004 by HAPTION S A
71. termes de pannes ou de simples erreurs au niveau de chacun des composants mat riels Les composants test s sont les variateurs les capteurs de position et le capteur d effort PARAM TRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen Le param tre error est rempli par la fonction avec la valeur d tat de fonctionnement du Virtuose La valeur 0 signifie que le virtuose est en bon tat de fonctionnement La valeur 1 signifie une panne ou une erreur de fonctionnement VALEUR DE RETOUR En cas de succ s la fonction virtGetError renvoie 0 Dans le cas contraire elle renvoie 1 et la fonction virtGetErrorCode permet d acc der au code d erreur ERREURS VIRT E INVALID CONTEXT Le param tre VC ne correspond pas un objet VirtContext valide VIRT E HARDWARE ERROR Ce message d erreur signifie la pr sence d une ou plusieurs pannes ou erreurs au niveau de l interface haptigue VOIR AUSSI virtDisplayHardwareStatus Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 30 NOM virtGetErrorCode acc s au code de la derni re erreur signal e SYNOPTIQUE include virtuoseAPI h int virtGetErrorCode VirtContext VC DESCRIPTION La fonction virtGetErrorCode renvoie le code de la derni re erreur signal e sur la liaison avec le contr leur Virtuose correspondant au param tre vC PARAM
72. tiveSpeedControl active la commande en vitesse SYNOPTIQUE include virtuoseAPI h int virtActiveSpeedControl VirtContext VC float radius float speedFactor DESCRIPTION La fonction virtActiveSpeedControl permet d activer la commande en vitesse On d finie une sph re dont le centre correspond au centre de l espace de travail du p riph rique haptique et de rayon celui fournit en param tre A l int rieure de la sph re l op rateur contr le l objet en position A l ext rieure de la sph re l op rateur contr le l objet en vitesse Plus la position du poign e s carte de la sph re plus la vitesse de l objet augmente A l intersection la vitesse est nulle La valeur du rayon pouvant tre utilis e pour un virtuose 3D 15 25 est de 0 1 Pour un virtuose 6D 35 45 est de 02 La valeur du coeficient d pend essentiellement des dimensions de la sc ne virtuelle 1 0 par exemple PARAM TRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen Le param tre radius correspond au rayon de la sph re pr c demment d crite Le param tre speedFactor est un coefficient multiplicatif sur la vitesse de l objet virtuel VALEUR DE RETOUR En cas de succ s la fonction virtActiveSpeedControl renvoie 0 Dans le cas contraire elle renvoie 1 et la fonction virtGetErrorCode permet d acc der au code d erreur ERREURS VIRT E INVALID CONTEXT Le param tre VC ne corresp
73. uer Un facteur plus petit que l unit correspond une amplification des efforts depuis le Virruose vers la simulation La fonction doit tre appel e avant la s lection du type de commande VALEUR DE RETOUR En cas de succ s la fonction virtSetForceFactor renvoie 0 Dans le cas contraire elle renvoie 1 et la fonction virtGetErrorCode permet d acc der au code d erreur ERREURS VIRT E INVALID CONTEXT Le param tre VC ne correspond pas un objet Vi rtContext valide VIRT E INCORRECT VALUE La valeur du param tre factor est incorrecte Cette erreur est g n r e dans les cas suivants facteur dhomoth tie n gatif ou nul facteur d homoth tie trop grand ou trop faible pour garantir la stabilit du syst me VIRT E CALL TIME La fonction est appel e apr s la s lection du type de commande VOIR AUSSI virtGetForceFactor virtSetSpeedFactor Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 51 NOM virtSetlndexingMode modification du mode d indexation SYNOPTIQUE include virtuoseAPI h int virtSetlndexingMode VirtContext VC VirtlndexingType mode DESCRIPTION La fonction virtSetIndexingMode permet de modifier le mode d indexation aussi appel mode de d calage PARAM TRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen Le param tre mode correspond au mode d indexation souh
74. vation par rapport au rep re d environnement Elle doit tre appel e avant la s lection du type de commande PARAM TRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen Le param tre speed correspond la vitesse de d placement du rep re d observation par rapport au rep re d environnement VALEUR DE RETOUR En cas de succ s la fonction virtSetObservationFrameSpeed renvoie 0 Dans le cas contraire elle renvoie 1 et la fonction virtGetErrorCode permet d acc der au code d erreur ERREURS VIRT E INVALID CONTEXT Le param tre VC ne correspond pas un objet VirtContext valide VIRT E CALL TIME La fonction est appel e apr s la s lection du type de commande VOIR AUSSI virtGetObservationFrame Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 54 NOM virtSetPosition envoie au contr leur la position de l objet coupl SYNOPTIOUE include virtuoseAPI h int virtSetPosition VirtContext VC float pos p env DESCRIPTION La fonction virtSetPosition envoie au contr leur la position de l objet auquel le ViRTUOSE est coupl PARAM TRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen Le param tre pos p env est un vecteur d placement 7 composantes cf glossaire VALEUR DE RETOUR En cas de succ s la fonction virtSetPosition renvoie 0
75. vissement Cette fonction n est accessible que dans les modes de commande COMMAND TYPE ADMITTANCE et COMMAND TYPE IMPEDANCE PARAM TRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen VALEUR DE RETOUR En cas de succ s la fonction virtDetachVo renvoie 0 Dans le cas contraire elle renvoie 1 et la fonction virtGetErrorCode permet d acc der au code d erreur ERREURS VIRT E INVALID CONTEXT Le param tre VC ne correspond pas un objet VirtContext valide VOIR AUSSI virtAttachVO Copyright 2004 by HAPTION S A API VIRTUOSE V2 25 HAP 02 RT 006 DOCUMENTATION page 23 NOM virtDisplayHardwareStatus Permet d effectuer un bilan du fonctionnement du Virtuose niveau hardware SYNOPTIQUE include virtuoseAPI h int virtDisplayHardwareStatus VirtContext VC FILE file DESCRIPTION La fonction virtDisplayHardwareStatus permet d effectuer un bilan du fonctionnement du Virtuose niveau hardware en termes de pannes et d erreurs au niveau de chacun des composants mat riels Les composants consid r s sont les variateurs les capteurs de position et le capteur d effort fonctionnement et saturation pour ce dernier PARAM TRES Le param tre VC correspond l objet VirtContext renvoy par la fonction virtOpen Le param tre file n est pas utilis Le flux de sortie est celui d fini par la fonction virtSetOutputFile

Download Pdf Manuals

image

Related Search

Related Contents

Philips ThumbCam DMVC1300K User's Manual    study of sms security as part of an electronic voting system  How to maintain Jet Towel  HP Officejet 4632 e-All-in-One Printer Setup Poster  NIKE 21 Iono Maior NIKE 21 Pilota Maior  Capitolato speciale d`appalto  Motion Computing Tablet M1400 User's Manual  HMI User Manual  Woxter Onyx Pro 7 Xdiv II  

Copyright © All rights reserved.
Failed to retrieve file