Architecture d’un environnement avec rendu haptique en admittance

Télécharger le fichier pdf d’un mémoire de fin d’études

Modèle de contact pour des objets rigides parfaits

Le mouvement des objets est régi par une équation d’évolution, il est en même temps contraint par les contacts entre objets. Les deux modèles classiquement utilisés sont la loi de Signorini pour la non-interpénétration au contact et la loi de Coulomb pour les frottements entre les objets rigides. Non-interpénétration Dans un univers virtuel, les objets rigides parfait peuvent se dé-placer librement mais ne doivent pas s’interpénétrer. La loi de Signorini permet d’établir ce lien par les contraintes suivantes [Sig33] : 0 ≤ d d.≤fn = 0 0 fn (1.4).
A chaque point d’un objet une distance d le séparant d’un autre objet peut être associée. Elle est positive si les objets ne s’interpénètrent pas, négative dans le cas contraire. A ce point, une composante normale fn d’une force de contact fc peut être exprimée. fn est portée par la normale n au contact. La loi de Signorini exprime, d’une part, le fait que la composante normale fn de la force de contact est positive ou nulle (la contrainte est unilatérale) et, d’autre part, que la distance de contact d est positive ou nulle (condition de non-interpénétration). L’orthogonalité de fn et d impose, au contact, une distance nulle et une force normale de contact positive ou nulle. En l’absence de contact, cette force est nulle et la distance est positive.

Approche impulsionnelle

Cette approche a été proposée par Mirtich et Canny [MC95], elle permet d’intégrer diffé-rentes contraintes (comme l’impact, le glissement) d’une manière unifiée, sous forme d’impul-sions. Dans le cas de l’impact, lorsque deux objets rigides entrent en collision, ils sont soumis à une impulsion de valeur opposée les repoussant, permettant d’éviter une interpénétration. Le modèle de collision est basé sur un modèle d’impact Newtonien. Cette méthode introduit un certain nombre d’approximation afin de traiter comme impulsion des phénomènes qui ne sont pas impulsionnels, comme l’adhérence. Dans ce dernier cas, les objets physiques n’au-ront pas forcément un comportement réaliste. Mirtich et Canny [MC95] ont donc proposé d’utiliser des approches hybrides basées sur les approches par contraintes et impulsionnelle.

Schéma d’intégration

Les lois d’évolution présentées précédemment sont souvent décrites sous la forme d’équa-tions différentielles, notamment temporelle du type Fd(t, X (t), X˙(t), …, X(n)(t)) où X(t) est l’état du système à l’instant t. Les méthodes d’intégration couramment utilisées étant dis-crètes, les solutions calculées sont par nature une approximation des solutions théoriques. Le choix du pas d’intégration est généralement soumis à un compromis entre le temps de calcul nécessaire à sa résolution numérique et la précision des solutions. Deux familles d’intégra-teur numérique peuvent être distinguées : les schémas d’intégration implicites et les schémas d’intégration explicites. Nous détaillons par la suite les méthodes les plus courantes rencon-trées pour la simulation d’objets rigides. Une synthèse beaucoup plus complète est disponible dans [DR84].
Les schémas explicites utilisent l’état du système calculé au pas de temps précédent X(t− ΔT ). Elles sont de la forme X(t) = f(X(t − ΔT )) où ΔT est le pas de temps d’intégration. Dans le cas des équations différentielles du premier ordre en fonction du temps, de la forme X˙(t) = F (t, X(t)), les méthodes explicites les plus courantes sont :
– Schéma d’Euler explicite : X(t) = X(t − ΔT ) + ΔT F (t − ΔT, X(t − ΔT )).
– Méthodes de Runge-Kunta, habituellement d’ordre 2 ou 4.
Les schémas implicites utilisent à la fois l’état du système calculé au pas de temps précé-dent et l’état du système du pas de temps courant. Ce dernier n’étant pas encore déterminé, il est définit implicitement par X(t) = g(X(t − Δt), X(t)). g est généralement obtenu en reformulant la fonction f. Le schéma implicite le plus courant est :
– Schéma d’Euler implicite : X(t) = X(t − ΔT ) + ΔT F (t, X(t))).
Les méthodes explicites sont généralement plus rapides que les méthodes implicites mais tendent à être moins stables. Elles nécessitent généralement un pas de temps plus petit que les méthodes implicites. Les schémas implicites ont, en outre, tendance à être plus stables lorsque les lois d’évolutions ne sont pas continues, comme les lois de contacts.
Le choix d’un schéma d’intégration est donc soumis à un compromis entre une stabilité nécessaire de l’intégration numérique, le pas de temps retenu le temps alloué à l’intégration et de la méthode de résolution des contacts abordés dans la partie suivante.

Moteur physique

Il existe donc de nombreuses approches pour traiter les différents points d’une simulation numérique. Le compromis est à trouver entre le temps de calcul, la stabilité et la précision de la simulation physique. De plus, certaines approches sont plus naturelles à associer. No-tamment, les méthodes de résolutions de contacts par contraintes peuvent utiliser facilement les informations de contacts fournies par une méthode de collision continue. La méthode par pénalité peut s’associer facilement avec un algorithme de détection de collision du type VPS. Ces deux méthodes étant relativement rapides, le temps de calcul requis est faible. Un univers virtuel d’autant plus complexe peut être simulé.
Dans le cadre de l’utilisation d’un environnement virtuel avec un rendu haptique, les deux contraintes les plus importantes sont le respect du temps de rafraîchissement de l’interface haptique et la garantie de la stabilité du système. Ainsi, pour des univers virtuels relativement petits, une approche par contrainte associé à un schéma d’intégration numérique implicite sera préférée. Si cet univers doit pouvoir simuler des tâches d’insertion ou respecter strictement des contraintes de non pénétrations, le détecteur de collision de type LMD ou détecteur de collision continue seront choisi.
Afin de réduire le temps de calcul pris par le moteur physique, des approches multi-fréquentielles s’avèrent intéressantes. Otaduy et Lin [OL06] ont adopté une approche où la détection de collision n’est pas réalisée à chaque pas de temps. La résolution de contact, qui est réalisée à chaque pas de temps, se base sur un modèle linéarisé des contacts construit à partir des informations fournies par le détecteur de collision. La simulation physique utilise dans ce cas un modèle linéarisé pendant un certain nombre de pas temps jusqu’à ce que le moteur de collision réactualise ce modèle. Otaduy et Lin ont proposé aussi un détecteur de collision basé sur les niveaux de détails (LODs : Level of Details) [OL03]. Cette approche utilisant plusieurs fréquences spatiales permet de diminuer le temps requis par la détection de collision.

Retour haptique

La quasi-totalité des univers virtuels fournit un retour visuel. Moins souvent, un retour sonore est également proposé afin d’enrichir l’interaction entre l’environnement virtuel et les utilisateurs. De la même manière, associer un dispositif haptique 2 à un environnement virtuel permet de solliciter une modalité supplémentaire de l’être humain, le sens du toucher.
L’adjectif haptique recouvre deux aspects du sens du toucher. La perception tactile qui désigne la perception à la surface de la peau, et la perception kinesthésique qui désigne la perception des efforts et des positions. La première est permise par la fusion des informations fournies par les récepteurs (thermorécepteurs, mécanorécepteurs et nocirecepteurs) présent dans le derme, la seconde par la fusion des informations provenant des récepteurs répartis dans les muscles, les tendons et la peau [LL88].
De la même manière qu’il existe deux aspects au retour haptique, les interfaces suivent une classification en deux familles, interfaces tactiles d’une part et interface kinesthésiques ou à retour d’effort d’autre part. Cette classification n’est pas stricte car certaines interfaces proposent un rendu tactile et kinesthésique en employant plusieurs types d’actionneurs dédiés.
Les interfaces kinesthésiques sont aussi des interfaces d’entrée d’information. À la diffé-rence des autres modalités, le toucher permet à la fois de ressentir et d’agir sur l’environne-ment. Ce fonctionnement bilatéral introduit un couplage entre les utilisateurs et l’environne-ment virtuel qui pose des problèmes spécifiques de stabilité quand à l’utilisation d’interfaces kinesthésiques.
La suite de ce chapitre présente les interfaces à retour d’effort ainsi que les méthodes permettant de lier de telles interfaces à un univers virtuel. Les problèmes de stabilité sont particulièrement soulignés.

Système à retour d’effort

Les interfaces à retour d’effort se présentent en général sous la forme de mécanismes robotisés séries ou parallèles. Ils sont constitués d’un ensemble d’actionneurs (souvent des moteurs pas à pas) et de capteurs de position et/ou d’effort. Ces interfaces peuvent être encore différenciées en fonction des architectures retenues, série ou parallèle. Nous décrirons brièvement dans les deux paragraphes suivants, les interfaces à retour d’effort couramment utilisées en réalité virtuelle.

Interfaces séries

Les interfaces séries se présentent sous la forme d’actionneurs montés en série sur un robot ressemblant généralement à un bras. Cette famille est la plus représentée. La gamme PHANTOM® de Sensable ou Virtuose6D d’Haption rentrent dans cette catégorie. Tous les degrés de liberté ne sont pas forcément actifs. Ainsi, sur l’interface PHANTOM OMNI® les degrés de libertés en rotation ne sont pas actifs, le rendu haptique ne peut se faire qu’en translation.
Il existe aussi des interfaces se présentant sous la forme d’exosquelette. Ces interfaces se basent sur un mécanisme venant envelopper l’utilisateur afin d’appliquer des efforts sur les différentes parties du corps humain (bras, jambes, mains, etc.). Ce type d’interface haptique, initialement développé pour la rééducation fonctionnelle est utilisé dans les environnements virtuels pour pouvoir effectuer des préhensions. En effet, à la différence des interfaces précé-demment présentées qui utilisent souvent une poignée, ce type d’interfaces peut agir sur les doigts indépendamment. Le CyberGrasp™ d’Immersion ou le Rutgers Master II [BBPB02] sont des exemples de tels exosquelettes.

Stabilité du retour d’effort

L’asservissement de systèmes robotisés présenté dans la partie précédente à un univers virtuel pose un problème de stabilité qui peut être étudié principalement de deux manières : en utilisant la théorie de la passivité ou en découplant l’interface haptique de l’environnement virtuel à l’aide d’un couplage virtuel.
Dans cette section nous explicitons les principaux résultats en manière de stabilité pour les univers virtuels à retour d’effort. Á la suite de ces parties, les méthodes permettant d’étendre l’impédance transmise (Z-width) ou perçue sont présentées. Nous introduisons également, dans cette section, les notations que nous utiliserons dans la suite du manuscrit.

Théorie de la passivité

La théorie de la passivité [Pop73, DV75] est un outil puissant permettant de démontrer la stabilité d’un système. La passivité s’énonce de manière simple : un système passif est stable. Il suffit alors de démontrer qu’un système ne génère par d’énergie pour prouver sa stabilité. Cependant un système rendu passif sera moins performant (temps de réponse, suivi, …) qu’un système stable mais non passif.
Dans d’un système échangeant des positions et des vitesses avec un élément extérieur, soit   et x˙ les efforts et les vitesses à l’interface du système considéré, Es est l’énergie emmagasinée dans le système, Pdiss est la puissance dissipée par le système. Le système est considéré comme passif si l’énergie extraite de ce système au cours du temps ne dépasse pas l’énergie initialement stockée dans le système : ∀t ≥ 0, Z t f(τ)x˙(τ)dτ = Es(t) − Es(0) + Z t Pdiss(t)dτ ≥ −Es(0) (1.9).
Un système à un port est passif si l’énergie extraite de ce système ne dépasse pas l’énergie initiale du système.
Dans le cas de systèmes à plusieurs entrées et sorties, un des résultats immédiat de ce théorème, est qu’un ensemble de systèmes passifs est passif et donc stable, quelque soit l’agencement des blocs (parallèle ou série) [DV75]. Si les blocs S1 et S2 de la Figure 1.5 sont passifs alors le système S est passif. Ce résultat s’étend immédiatement à un système à n blocs. Ainsi l’analyse d’un système peut se simplifier en le découpant en sous-systèmes. Prouver la passivité de ces sous-systèmes suffi à prouver la passivité du système global. Cette théorie s’applique à des systèmes linéaires ou non-linéaires ainsi qu’à des systèmes discrets ou continus.

Rendu haptique événementiel

Les différentes méthodes permettant d’interfacer de manière stable un environnement virtuel et une interface haptique, ont tous comme point commun de limiter d’une manière ou d’une autre l’impédance de l’environnement virtuel, afin de garantir la stabilité de du système. L’impédance perçue par les utilisateurs d’un tel système peut donc être diminuée.
Une des manières d’augmenter l’impédance transmise ou d’élargir le Z-width est de mo-difier l’interface haptique, en modifiant sa viscosité b par exemple (voir Section 1.2.2.1.a). Cette viscosité peut être rajoutée au niveau électrique de l’interface haptique sous la forme d’une résistance et d’une capacité en parallèle de l’actionneur électrique comme proposé par Melhing et al. [MCP05]. Sans modifier le système, il est possible d’augmenter la raideur perçue de l’environnement virtuel par l’utilisateur en appliquant des illusions psychophysiques, en particulier au moment du contact. Dans le cadre d’un rendu haptique direct, Salcudean et al. [SV97] ont utilisé une force de freinage afin d’immobiliser l’interface haptique le plus rapidement possible lors d’un contact. Idéalement, cette force est appliquée pendant un pas de temps. Cette force est alors une impulsion de freinage. Elle correspond à une viscosité qui est transitoire et ne compromet donc pas la stabilité du système.
D’une manière similaire, c’est à dire en ajoutant à la force calculée une seconde force, Okamura et al. [ODH98] ont suggéré d’améliorer la perception d’un objet rigide au moment du contact. Cette seconde force est calculée à partir d’une sinusoïde décroissante (modèle empirique proposé par Wellman et Howe [WH95]). fh = fve + A(x˙h)e−Bt sin(ωt) (1.18).
Les différents paramètres de cette force (amplitude A, atténuation B et fréquence w) sont fonction du matériau caractérisant l’objet virtuel. Pour les déterminer, des mesures ont été réalisées avec différents matériaux. Un utilisateur a tapé de manière répété un objet rigide à l’aide d’un stylet. Les profils de l’accélération ont permis d’identifier les paramètres précédents pour différents matériaux. L’atténuation varie de 300 s−1 pour du bois à 1300 s−1 pour de l’acier. En outre, ce phénomène est transitoire, il est donc similaire à l’approche de Salcudean et al. . Cette méthode est appelée haptique événementielle.
Cette approche peut entraîner des instabilités dans le système, car de l’énergie est in-troduite dans la boucle d’asservissement. Hwang et al. [HWN04] ont introduit le principe d’haptique en boucle ouverte. L’information de l’utilisateur vers l’environnement virtuel a une fréquence plutôt faible (quelques Hz). La partie du signal introduite par l’Equation 1.18 peut donc être filtrée, l’énergie ne boucle plus dans le système asservi. Le système demeure ainsi stable. Cette méthode peut donc s’appliquer à des interfaces à retour d’effort, tant que leur bande passante n’est pas trop atténuée dans les hautes fréquences.
Cette information haute fréquence peut être calculée à chaque pas de temps à partir d’un modèle prédéterminé empiriquement [OHDC00]. Hwang et al. [HWN04] ont utilisé des trames pré-calculées à partir de contacts réels. Kuchenbercker et al. [KFN06] ont introduit plusieurs modèles en fonction de la vitesse de l’outil ou de la partie de l’objet touché.

Interactions haptiques distantes

Pour réaliser une tâche collaborative distante avec du retour d’effort, les différentes inter-faces haptiques doivent être reliées entre elles afin de permettre aux utilisateurs d’agir sur le même univers virtuel. Les informations échangées entre ces interfaces haptiques subissent un retard dû au temps de transmission des données. Ce temps de transmission dépend du réseau utilisé par la plateforme collaborative pour simuler l’univers virtuel. Dans le meilleur des cas, les informations se déplacent à la vitesse de la lumière entre chacune des interfaces hap-tiques. Ainsi, lors d’une transmission transatlantique les informations subiraient idéalement un retard de 20 ms. En pratique, les informations sont traitées par un ensemble d’éléments électroniques ou opto-électroniques qui augmentent ce retard et peut le rendre variable. C’est ce qui se passe pour un réseau informatique ATM ou Ethernet. Dans ce cas, le retard lors d’une connexion transatlantique est variable et est légèrement supérieur à 100 ms [KKT+04].
Comme nous l’avons vu dans la section précédente, la stabilité d’un système à retour d’effort est primordiale. Or, le retard sur la transmission d’information est un facteur bien connu d’instabilité des systèmes en boucle fermée.
L’étude de la stabilité de système à retour d’effort soumis à des retards de transmissions est au cœur du domaine de la téléopération. Un système de téléopération classique est constitué d’un robot maître (une interface haptique) et d’un robot esclave (voir Figure 1.12), chacun des deux étant associé à un contrôleur. Une analogie peut être réalisée avec un univers virtuel avec retour d’effort (Figure 1.6) ou le robot maître correspond à l’interface à retour d’effort et le robot esclave et son environnement correspondent à l’univers virtuel. D’ailleurs, de nombreuses méthodes décrites dans la Section 1.2 sont également appliquées voir empruntées du domaine de la téléopération comme les couplages virtuels ou la méthode OP/CP.

Collaboration et coopération distantes

Le retard introduit dans une manipulation distante à donc une très forte influence sur la stabilité d’un système à retour d’effort. Ces retards ont également une influence sur la per-ception qu’ont les utilisateurs d’un événement. Dans le cas d’une plateforme de collaboration, le choix de la topologie de l’application peut également modifier le comportement du système en modifiant le lieu où se situent les retards. Certaines architectures peuvent mener à l’exis-tence de plusieurs simulations physiques. Les méthodes précédemment décrites peuvent être utilisées afin de lier entre elles les simulations physiques. Des couplages virtuels peuvent être ainsi mis en œuvre dans un cas sans retard [MABA02] ou des transformations en variables d’onde en présence de retard [SNF05]. Dans cette partie nous présentons tout d’abord les différentes architectures utilisées pour permettre une interaction distante avec retour d’effort puis l’influence de l’haptique sur des tâches collaboratives en enfin l’influence du retard sur ces tâches collaboratives avec retour d’effort.
En premier lieu, il convient de définir les termes collaboration et coopération qui sont souvent rencontrés lorsque plusieurs personnes réalisent une même tâche ou participent à une même tâche. Ainsi d’après la définition qu’en donne Broll [Bro95] pour un univers virtuel :
– la coopération est l’édition jointe d’un objet ou élément partagé.
– la collaboration est l’édition jointe et simultanée d’un objet ou élément partagé. La contrainte se simultanéité implique que l’environnement virtuel soit capable de gérer plusieurs accès à une ressource partagée tout en garantissant la cohérence de l’univers virtuel. A contrario permettre la coopération est plus simple, des mécanismes d’exclusions mutuelles associés à des stratégies de manipulations tour par tour permettent parfaitement de réaliser la coopération.

Architecture réseau des plateformes collaboratives

Les différents sites entre lesquels se déroulent la collaboration doivent s’échanger des in-formations au sujet de la manipulation afin de permettre de réaliser des tâches collaboratives. Les différents ordinateurs reliés entre eux s’échangent deux types d’information.
– Des Messages sont des données qui ne sont pas échangées de manière régulière. Ils sont généralement associés à un événement comme un impact par exemple.
– Les flux sont des données qui sont échangées de manière régulière (à chaque pas de simulation par exemple), comme la position d’un objet virtuel. Malgré la nature dis-crète de l’échange de données, le terme « continu »peuvent être appliqué à ce genre de données.
Ces données sont échangées par un réseau informatique qui peut être un réseau local comme pour les expérimentations précédentes jusqu’à l’Internet ou des réseaux satellitaires. Ces médiums de communication introduisent des retards, la vitesse de transmissions de don-nées est soumis à des limites physiques et d’autre part par les éléments (répéteur, commu-tateur, routeur, etc.) constitutifs des ces réseaux. Dans le cas d’un réseau local, les retards induits par les réseaux sont très faibles (inférieur à la milliseconde). Alors que pour le cas d’une liaison transatlantique utilisant l’Internet, ce retard peut avoisiner 120 ms dans des conditions correctes [GJF+07]. Dans le cas de retard faible, l’architecture réseau retenue pour une plateforme collaborative a peu d’effet. Dans le cas de retard plus importants, sui-vant l’architecture retenue, les retards ne se situeront pas entre les mêmes éléments de la plateforme collaborative ce qui provoque des comportements différents de l’univers virtuel.
La section suivante aborde les architectures utilisées dans les applications utilisant du retour d’effort. Ces univers virtuels sont généralement de petite taille et donc un certains nombres de problèmes liés à l’architecture rencontrés dans les grand environnements virtuels (tel NSPNET [MZP+95], MASSIVE [GB95], DIVE [CH93] ou plus récemment ceux issus de jeux de rôle en ligne massivement multi-joueurs MMORPG) ne sont pas abordés. Des précisions sur ces éléments peuvent être trouvées dans [ZS99]
Les principales plateformes permettant de réaliser des tâches collaboratives ou coopéra-tives sont basées sur deux architectures principales, l’architecture client-serveur et l’architec-ture distribuée.

Contrôle de la cohérence par verrous

Afin de limiter les incohérences, les interactions des utilisateurs peuvent être limitées. Takemura et Kishino [TK92] ont proposés une architecture utilisant des verrous gérés par un unique serveur. Dans le cas où les objets ne sont pas rigides des verrous régionalisés sur une partie de l’objet peuvent être employés, Bogsanyi et Miller [BM02] ont proposé une architecture distribuée pour une application de sculpture virtuelle utilisant ce principe. Ces plateformes ne permettent plus d’interactions collaboratives mais uniquement coopératives. L’utilisation de tels verrous délègue à un nœud une partie de l’environnement virtuel. Il ne peut y avoir d’incohérence car les autres nœuds ne peuvent agir dans cette partie.
Hespanha et al. [HMS+00] ont proposé un compromis entre collaboration et coopération en fonction de la grandeur des retards entre les différents nœuds. Ce système est basé sur un système de verrous de sous-région de l’environnement virtuel. Deux nœuds peuvent collaborer si le retard et la variation du retard (ou gigue) entre les deux sont faibles. Ces retards faibles diminuent les risques d’occurrence d’une incohérence. Entre deux groupes, les utilisateurs ne peuvent que coopérer.
L’utilisation de verrous tend généralement à limiter voir interdire la collaboration au profit d’une coopération. D’autres méthodes doivent donc être mise en œuvre.

Contrôle de la cohérence intrinsèque

Une des techniques pour diminuer les incohérences dans une simulation est d’utili-ser des algorithmes de prédictions. En utilisant une information extrapolée des données reçues, ces algorithmes permettent de compenser partiellement les effets du retard. Hiki-chi et al. [HMF+ 01] ont présenté une telle plateforme utilisant une architecture distribuée. En utilisant des algorithmes se basant sur une prédiction plus complexe des gestes des utilisateurs, Shen et al. [SBNG03] ont proposé une plateforme distribuée similaire. Bou-kerche et al. [BSH05] ont choisi également d’extrapoler la position des objets manipulés associé à de la qualité de service.
La prédiction ne permet pas de garantir la cohérence d’un univers ni de corriger un univers incohérent. Pour corriger la cohérence d’un univers, des algorithmes plus complexes doivent être mis en œuvre. Une autre approche vise à garantir que chacun des nœuds traitent les mêmes informations dans le même ordre. Pour ce faire il faut que les différents nœuds puissent se synchroniser. Lamport [Lam78] a proposé une horloge logique permettant d’établir un ordre partiel dans une application distribuée. Le principe est d’associer un entier ou estampille
à chaque événement échangé entre les nœuds de l’application. Chaque nœud possède une horloge qui est incrémentée avant chaque événement. Lorsqu’un nœud reçoit un événement d’un autre nœud, il synchronise son horloge sur l’estampille de l’événement si celle ci est plus grande que l’horloge. Les horloges logiques permettent donc de synchroniser les différents nœuds ensemble.
En utilisant ce principe, Mauve et al. [MVHE04] ont proposé deux algorithmes complé-mentaires permettant de garantir la cohérence d’un univers virtuel. Le premier Local Lag est un retard supplémentaire entre la réception des données et leur application à la simulation. Il permet d’attendre que les données qui subissent un retard variable, arrivent. Comme ce retard supplémentaire est borné et fixe il ne peut compenser que les incohérences intervenant sur un intervalle de temps court. Les auteurs lui ont donc associé un algorithme appelé Timewrap. Le principe est de recalculé un état cohérent au moment où les données manquantes sont reçues. Sur chaque nœud, les états précédents de la simulation et les données reçues sont conservés en mémoire et associés à une estampille. De la même manière les données échangées sont chacune associés à une estampille. Lorsqu’un nœud reçoit une donnée qui a subit un retard trop important, la simulation est recalculée à partir de l’état de l’univers virtuel antérieur à l’émission de la donnée reçue et de toutes les données reçues dans l’intervalle jusqu’au pas de temps courant. Ce nouvel état devient alors l’état courant.
En se basant sur le principe du timewrap, Glencross et al. [GJF+07] ont réalisé une plateforme de collaboration avec retour d’effort permettant de manipuler des objets rigides issus de la CAO sur trois degrés de liberté entre l’University of Manchester en Angleterre et l’University of North Carolina at Chapter Hill aux États-Unis. De plus, afin de limiter la charge de calcul lorsque des données sont retardées, les auteurs ont utilisé des algorithmes de prédiction. La simulation est recalculée que si la prédiction s’avère fausse. Ces algorithmes sont inspirés de ceux utilisés pour les bases de données relationnelles. La plupart des bases de données peuvent en effet effectuer des rollback, c’est à dire annuler une succession d’action suite à une incohérence pour ensuite réappliquer une suite d’instruction (ou transaction) et obtenir un état cohérent.
Deux autres approches permettant de lier des simulations physiques sans retour d’effort peuvent être aussi détaillées :
Afin de d’obtenir la convergence des états des différents moteurs physiques, De-quidt et al. [DGC05] ont proposé de calculer l’état de chaque objet sur un nœud comme une somme pondérée des états des instances de ces objets partagés sur les autres nœuds. Le choix de la fonction de pondération permet d’obtenir un comportement client-serveur ou de privilégier les états des nœuds les plus proches, c’est à dire pour lesquels le retard de communication est le plus faible.
Enfin, Cheong et al. [CPN09] ont suggéré de lier les différents nœuds suivant un anneau. Chaque nœuds est donc lié à seulement deux autres nœuds (voir Figure 1.24). Chacun des nœuds envoie l’état (positions et vitesses) des objets qu’il simule au nœud suivant sur l’anneau. Ces données reçues permettent, à l’aide d’un prédicteur de Smith, d’obtenir une convergence des états des différents nœuds.

Retour haptique sur une tâche collaborative

L’ajout de rendu haptique pour des tâches collaboratives doit permettre aux utilisateurs une meilleure immersion dans l’univers virtuel et une interaction plus efficace avec ce dernier.
En effet, Basdogan et al. [BHSS00] ont montré que l’haptique permet d’améliorer les performances lors d’une tâche collaborative. Dans cette étude, deux utilisateurs, un sujet et un expert, déplacent un anneau le long d’un fil d’un point de départ à un point d’arrivé. L’anneau ne peut se déplacer que si les deux utilisateurs exercent chacun simultanément un effort de direction opposée. Avec du retour d’effort, les deux personnes sont plus précises et l’anneau entre un contact moins souvent avec le fil. Ils ont, également, plus de facilité à maintenir l’anneau en mouvement, c’est à dire à maitriser l’effort qu’ils appliquent chacun à l’anneau. Sallnäs et al. [SRGS00] ont étudié une tâche relativement similaire où des sujets doivent empiler des cubes. Comme l’étude précédente, les sujets devaient pincer un des cubes pour le déplacer. Lorsque cette tâche est effectuée avec un retour d’effort via un PHANTOM OMNI, les temps de réalisation sont moins longs que sans retour d’effort. En outre, le retour d’effort permet aux utilisateurs de plus facilement coordonner leurs actions quand ils soulèvent un cube. Shen et al. [SBNG03] ont également constaté une diminution du temps de réalisation d’une tâche avec l’ajout d’un retour d’effort. Dans leur cas il s’agissait de déplacer un cube au travers d’un labyrinthe.
Hubbold [Hub02] a étudié le cas d’un déplacement d’un brancard dans une usine (environ-nement moyennement encombré). Il a aussi observé une amélioration de la coordination des mouvements des utilisateurs lors du déplacement du brancard. Il a également noté que l’utili-sation d’interface haptique ayant des espaces de travail différent (en l’occurrence PHANTOM OMNI et un Argonn Arm) peut tendre à déséquilibré les utilisateurs.
L’ajout de retour d’effort dans une tâche collaborative n’améliore cependant pas systé-matiquement les temps de réalisation de la tâche, ainsi Sallnäs et Zhai [SZ03] ont testé une tâche de pointage basée sur la loi de Fitts [Fit54] avec deux sujets. Les essais avec un retour d’effort ne se caractérisent pas par un temps d’exécution plus rapide contrairement aux deux expériences précédentes. Par contre, les personnes ont laissé tomber le cube moins souvent lorsqu’ils se l’échangeaient. Ainsi, comme pour les deux expériences précédentes les sujets coordonnent mieux leurs mouvements avec un retour d’effort.
Enfin, Sallnäs et al. [SRGS00] ont observé que l’ajout d’un retour d’effort n’améliore pas le temps de réalisation ni la précision d’une tâche si les sujets peuvent communiquer entre eux via un canal audio.
L’ajout d’un retour haptique dans une tâche collaborative au sein d’un environnement virtuel n’influence donc pas la tâche de la même façon. Dans certains cas, la tâche est effectuée plus rapidement, dans d’autres cas il n’y a pas de différence de temps mais les sujets sont plus précis. Ces résultats sont concordants avec les expériences menées sur des tâches non collaboratives ([GWZ97, LMB+02, DHM+06]) où le retour d’effort permet tantôt d’effectuer des tâches plus rapidement, tantôt d’être plus précis. Néanmoins, Edwards [Edw00] a montré un cas ou le retour d’effort augmente le temps de la tâche et diminue la précision et les performances des sujets.

Influence du retard sur la coopération

Il y a deux éléments à considérer dans le retard que subissent les informations, une partie fixe et une partie variable, la gigue. Ces deux éléments n’influence pas de la même manière la perception et les comportements des utilisateurs lors d’une tâche collaborative avec retour d’effort. En effet, un retard variable déforme l’information transmise en plus de la retarder.
Lorsque qu’une information (audio, visuelle, haptique, etc.) est retardée, cela influe sur la perception de l’action observée. La causalité entre deux événements est perçue par l’être hu-main si le temps qui s’écoule entre deux événements est en dessous d’un certain seuil [Mic63]. En plus d’influencer la perception, ce retard peut aussi influencer de manière consciente ou non le comportement et les performances des utilisateurs.
Sheridan et Farell [SF63] ont testé l’influence du retard dans une tâche de positionnement en téléopération. La durée de la tâche croît avec le retard entre le maître et l’esclave. De plus, avec un retard élevé les temps de positionnement sont plus importants. D’une manière similaire, MacKenzie et Ware [MW93] ont montré que l’ajout d’un retard dans une tâche de Fitts entraîne un temps de réalisation plus long et augmente le nombre d’erreurs (le sujet manque la cible). Les auteurs proposent un modèle similaire à la loi de Fitts où l’ajout de retard est équivalent augmenter l’indice de difficulté de la tâche.
Lors de l’exécution d’une tâche collaborative, les différentes personnes interagissant doivent coordonner leurs actions. Afin d’être plus efficace, ils se basent sur les mouvements des autres personnes pour prédire les actions des autres utilisateurs et mieux adapter les leurs. Gutwin [Gut01] a étudié l’influence du retard et de la gigue sur des tâches de prédiction et de coordination. Comme pour les études précédentes il a constaté un allongement du temps de réalisation et une augmentation du nombre d’erreur lors de tâche préhension.
Jordan et al. [JMO+ 02] ont étendu les travaux de Basdogan et al. [BHSS00] dans le cas où les sujets sont sur des sites distants. L’ajout de l’haptique permet dans ce cas d’augmenter le sentiment de présence, les performances des utilisateurs n’ont pas été évaluées.
Les données peuvent être désynchronisées. Si les données haptiques et visuelles concernant un pas de temps sont émises dans des paquets de donnée différents, rien ne garantit qu’elles subissent le même retard. De plus, les dispositifs visuels et haptiques peuvent ajouter des retards supplémentaires.

Le rapport de stage ou le pfe est un document d’analyse, de synthèse et d’évaluation de votre apprentissage, c’est pour cela chatpfe.com propose le téléchargement des modèles complet de projet de fin d’étude, rapport de stage, mémoire, pfe, thèse, pour connaître la méthodologie à avoir et savoir comment construire les parties d’un projet de fin d’étude.

Table des matières

1 Exemple de tâche de prototypage virtuel avec retour d’effort
1.1 Exemple d’application permettant une interaction collaborative distante
1.2 Algorithme VPS
1.3 Algorithme LMD
1.4 Exemples d’interface haptique
1.5 Théorème de la passivité
1.6 Architecture d’un environnement avec rendu haptique en admittance
1.7 Architecture du rendu direct
1.8 Système à un port avec contrôleur de passivité en parallèle
1.9 Schéma bloc de rendu haptique avec un couplage virtuel en impédance
1.10 Schéma bloc de rendu haptique avec un couplage virtuel
1.11 Effet passe-muraille avec un rendu direct. Lorsque l’objet à atteint la position de droite, l’utilisateur à l’impression d’avoir traversé l’objet gris
1.12 Schéma bloc d’asservissement en téléopération
1.13 Représentation mécanique d’un asservissement position-position pour un cas de téléopération
1.14 Extension de schéma OP/CP au cas d’un système à deux ports
1.15 Quadripôle
1.16 Transformation en variable d’ondes
1.17 Transformation en variable d’onde avec filtre à horizon fini (issu de [TN05]
1.18 Variable d’onde déformée
1.19 Architecture client-serveur
1.20 Architecture clients-serveur avec retour d’effort
1.21 Architecture pair-à-pair
1.22 Cas d’incohérence entre deux noeuds
1.23 Architecture pair-à-pair avec retour d’effort
1.24 Organisation des moteurs physiques suivant un anneau
1.25 Décorateurs révélant le retard
2.1 Simulation physique : cas d’une collaboration
2.2 Cas d’une légère incohérence
2.3 Architecture de la plateforme collaborative
2.4 Transformation en architecture hybride
2.5 Architecture logicielle
2.6 Architecture logicielle : cas à deux noeuds
2.7 aide visuelle : fantôme
2.8 Exemple d’incohérence
2.9 [Position des points de couplage pour une force
2.10 Mesure de la divergence tel-00813368, version 1 – 15 Apr 2013
2.11 Position des points de couplage pour une rotation
2.12 Exemple de deux couplages en A, A0 et B,B0
2.13 Exemple de comanipulation d’un objet
2.14 Exemple de trajectoire de deux instances d’un objet répliqué
2.15 Exemple de discrétisation de la trajectoire et de détection d’incohérence
2.16 Implémentation de la détection d’incohérence
3.1 Asservissements proportionnel-dérivés
3.2 Manipulation d’un objet entre deux noeuds
3.3 Manipulation à deux personnes d’un objet répliqué
3.4 Cas de manipulation
3.5 Schéma bloc de la manipulation par deux personnes d’un objet répliqué
3.6 Manipulation par un seul manipulateur
3.7 Cas d’un contact local
3.8 Domaine de stabilité pour un retard minimal pour kc = kh et bc = bh
3.9 Domaine de stabilité en fonction de retards croissants
3.10 Efforts de traînée lors d’un mouvement libre
3.11 Trajectoire de test, position de l’objet
3.12 Schéma bloc d’une manipulation libre, sans l’interface haptique
3.13 Schéma bloc avec compensation
3.14 Effet de la compensation sur les marges de stabilité
3.15 Effet de la compensation sur un mouvement libre
3.16 Effet d’une compensation de 0.75 sur les translations
3.17 Effet d’une compensation de 0.25 sur les rotations
3.18 Effet de la compensation lors d’un contact distant
3.19 Effet de la compensation lors du contact
4.1 Divergence induit par la transformation en variables d’onde
4.2 Exemple d’un asservissement articulaire pour deux robots redondants identiques .
4.3 Plateforme collaborative à 6 DDLS utilisant les variables d’onde
4.4 Variables d’onde dans l’espace articulaire
4.5 Variables d’onde avec suivi en position
4.6 Effets du filtrage des variables d’onde
4.7 Deux utilisateurs manipulent chacun une pince à souder
4.8 Suivi en position selon l’axe x pour le cas des pinces à souder
4.9 Couples sur chacune des interfaces haptiques selon l’axe le plus actif
4.10 Un utilisateur maintient son bouton en position pendant que le second essaie de le pousser
4.11 Divergence et effort pour un retard de 100ms
4.12 Divergence et effort pour un retard de 200ms
4.13 Divergence et effort pour un retard de 400ms
4.14 Divergence et effort pour un retard de 600ms
4.15 Divergence et effort pour un retard de 50ms avec variables d’onde
4.16 Divergence et effort pour un retard de 50ms avec un couplage ressort amortisseur et la compensation activée
5.1 Surévaluation de l’impact
5.2 Effets des méthodes de réalité virtuel et de téléopération
5.3 Dispositif technique
5.4 Labyrinthe utilisé pour l’évaluation tel-00813368, version 1 – 15 Apr 2013
5.5 Le parcours effectivement vu par le sujet
5.6 Moyennes et boite à moustaches pour les efforts maximum le long de l’axe x .
5.7 Moyennes et boites à moustache pour les efforts maximum le long de l’axe y
5.8 Moyennes et boites à moustache pour le temps de réalisation
5.9 Différences significatives pour le temps, les efforts et les erreurs
5.10 Effet du retour haptique événementiel
A.1 Schéma bloc détaillé
A.2 Schéma bloc détaillé du cas collaboratif avec boucle de compensation (Figure 3.13)
A.3 Schéma bloc détaillé du cas collaboratif avec boucle de compensation (Figure 3.13)

Télécharger le rapport complet

Télécharger aussi :

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *