Présentation Il ya un besoin croissant dans l'ensemble de l'interaction homme-machine (IHM) intuitives et efficaces pour les environnements interactifs. De nombreuses industries continuent à dépendre plus fortement des IHM, tels que: la robotique de réhabilitation, l'industrie automobile, la fabrication des métaux, des machines d'emballage, les produits pharmaceutiques, alimentaires, de boissons, et les utilitaires. Technologies employées dans ces industries incluent: terminaux d'affichage, des ordinateurs personnels et logiciels IHM. Ces technologies peuvent être combinés ensemble pour exécuter des fonctions illimitées. Les robots peuvent être utilisés pour faciliter l'interaction directe avec les utilisateurs, tels que de servir comme un professeur de musique. Par exemple, des chercheurs à l'Université Waseda ont créé un robot qui joue du saxophone pour enseigner aux gens comment jouer et à comprendre l'interaction entre l'élève et l'enseignant 1. Autres chercheurs en robotique ont fait un robot basé sur la vision voler afin de déterminer comment l'intelligence artificielle peut évoluer vers des interactions intelligentes avec l'environnement 2. La concentration particulière de cet article réside dans la robotique de réhabilitation. Dans le domaine de la recherche et l'industrie, le rythme rapide de changement pour les nouveaux produits et les exigences des utilisateurs continue de croître. Ces exigences imposent plus de difficultés à l'évolutivité. Ainsi la conception de code est devenu essentiel dans la satisfaction des besoins de ces entités dans les meilleurs délais. Ainsi, la qualité d'un candidat solide architecture comprendrait facilement interchangeables graphiques-robot des systèmes qui incluent le soutien du conducteur. L'architecture H3DAPI répond à ces besoins et donc une classe wrapper a été créé. Par ailleurs, H3D est conçu pour les environnements de réalité virtuelle, tels que ceux qui sont nécessaires dans la robotique de réhabilitation. Neural rééducation robotique cherche à utiliser des robots dans le but d'aider les professionnels de la réadaptation. L'aide que fournissent ces robots se présente sous la forme d'un champ de force. Passé chercheurs commande moteur tels que Shadmehr et Mussa-Ivaldi, utilisé des champs de force pour favoriser l'adaptation du moteur, et avons trouvé 1) l'adaptation à un champ de force externe appliquée se produit avec différentes classes de mouvements, y compris mais non limité à des mouvements atteignant, et 2) l'adaptation généralise à travers les différents mouvements qui visitent les mêmes régions des 3 champ externe. Recherche d'ingénieurs en biomécanique de la performance basée sur Progressive thérapie assistée par robot montre que répétitives, les tâches spécifiques, orientés vers un but, robot-assistée thérapie est efficace dans la réduction des déficiences moteur dans le bras affecté après un AVC 4, mais les effets exacts thérapeutiques et des paramètres continuera d'être un domaine de recherche. Rétroaction sensorielle affecte l'apprentissage et d'adaptation. Donc la question logique suivante serait de demander si oui ou non augmenter artificiellement l'ampleur de ces réactions seraient promotion plus rapide ou plus complet d'apprentissage / adaptation. Certains chercheurs ont constaté que l'application de forces plus grandes réactions sensorielles ou des indices visuels pour améliorer erreurs peuvent fournir un stimulus neurologique adéquat pour promouvoir des niveaux plus élevés d'adaptation / apprentissage 5,6. Ceci est connu comme "l'augmentation d'erreur". Ce phénomène peut être dû au fait que les résultats une fois d'une action de contrôle moteur s'écarter de l'idéal, notre modèle interne d'auto-ajuste en fonction de l'ampleur de l'erreur. En conséquence, comme notre modèle interne des approches de l'environnement externe, erreur dans l'exécution d'une tâche diminue. La recherche continue de soutenir la pratique prolongée de fonctionnellement les activités pertinentes pour la restauration de la fonction, bien que de nombreux courants politiques de soins de santé limiter la quantité de temps que les patients peuvent passer du temps avec les thérapeutes. La question est de savoir si convaincant ces nouvelles applications de la technologie peut aller plus loin que de simplement donner une dose plus élevée de l'état actuel des soins. Des études d'interaction homme-machine ont révélé de nouvelles perspectives dans les domaines de l'apprentissage moteur, et peut dans certains cas, offrir une valeur ajoutée au processus thérapeutique. Spécialisé dispositifs robotiques combiné avec l'ordinateur affiche peut augmenter rétroaction d'erreur dans le but d'accélérer, améliorer, ou de déclencher le réapprentissage moteur. Ce document présente une méthodologie d'utilisation d'un système développé pour une intervention clinique comme un exemple de telles de l'application de cette technologie. 1. L'établissement classe wrapper HAPI pour un robot Créer un wrapper pour HAPI la bibliothèque haptique en créant votre propre. Cpp et fichier d'entête. Par exemple nous allons utiliser le nom et HAPIWAM.cpp HAPIWAM.h. HAPIWAM.cpp placer dans le répertoire source: HAPI / src HAPIWAM.h placer dans le répertoire du fichier en-tête: HAPI / include / HAPI Au sommet de HAPIWAM.h, inclure le fichier d'entête principale (s) de votre robot, dans le cas de la MAO Barrett, qui serait: <em> extern "C" { # Include <include/btwam.h> } # Include <HAPI/HAPIHapticsDevice.h> Remarque: extern "C" est nécessaire pour résoudre mangling compilateur, parce que la bibliothèque incluse est écrit dans 'C' et l'H3DAPI est écrit en C + +. En HAPIWAM.h, créez votre classe et comprennent les 4 fonctions suivantes bool initHapticsDevice (int); bool releaseHapticsDevice (); updateDeviceValues void (DeviceValues & DV, HAPITime dt); nulle sendOutput (HAPIHapticsDevice:: DeviceOutput & D, HAPITime t); Assurez-vous que votre classe hérite publiquement de la classe HAPIhapticsdevice. Créer un garde-tête pour votre classe. Créer DeviceOutput statique et attributs HapticsDeviceRegistration statique sous la classe HAPIWAM. Créez vos fonctions de membre statique pour les rappels. Définissez votre constructeur et destructeur de HAPIWAM.cpp. Enregistrez votre appareil dans HAPIWAM.cpp. Définissez vos 4 fonctions héritées et les rappels dans HAPIWAM.cpp. 2. HAPI bibliothèque de la création Maintenant que nous avons créé la classe wrapper HAPI, nous avons besoin pour construire votre enveloppe dans la bibliothèque HAPI. Le WAM dépend de certaines bibliothèques qui H3DAPI ne dépend pas dans sa forme brute, par conséquent, ces bibliothèques devront être ajoutés à HAPI. Aller à la HAPI / HAPI / construire et modifier CMakeLists.txt. Ajoutez les bibliothèques dépendantes, après la ligne qui indique "SET (OptionalLibs). Ouvrez une console de commande et accédez à: HAPI / HAPI / construire et tapez les 3 commandes suivantes dans cet ordre: cmake. sudo make sudo make install 3. Classe wrapper H3D Pour créer la classe wrapper pour la bibliothèque H3D avec votre HAPIWAM, créez d'abord WAMDevice.cpp dans le répertoire source: H3DAPI/src WAMDevice.h placer dans le répertoire du fichier en-tête: H3DAPI/include/H3D WAMDevice.h doit contenir le fichier d'entête standard pour tous les appareils H3DAPI, avec le nom remplacé à ce que vous voulez. WAMDevice.cpp devrait mentionner la source standard pour tous les appareils H3DAPI, avec le nom remplacé à ce que vous voulez. Maintenant que la classe wrapper a été créé, de reconstruire la bibliothèque H3DAPI. Faites cela en éditant CMakeLists.txt de la même manière qui a été effectuée à l'étape 2.1, que sous le répertoire: H3DAPI/build. Reconstruire la bibliothèque H3DAPI sous le répertoire H3DAPI/build cmake. sudo make sudo make install 4. Machine à états finis Chaque programme ciblé d'atteindre nécessite la création d'une machine à états finis pour contrôler le protocole expérimental ou d'un régime pratique. Machines d'état typiques incluent: Début du procès, Lancement, contacter la cible, et fin du procès. Un exemple de la fonction de chaque Etat, et les critères de transfert entre les Etats est ci-dessous. Le début du procès nécessite l'attribution d'une cible. Endroits objectifs peuvent être fixés de façon aléatoire pour chaque essai ou peut être réglée à partir d'un fichier. Le début du procès se termine une fois que l'utilisateur a lancé vers la cible au dessus du seuil de vitesse, généralement 0,06 mètres par seconde. L'Etat de lancement a lieu après le début du procès. Cet état se termine soit lorsque l'utilisateur touche la cible ou le reste à l'intérieur de la cible pour une période de temps. Une fois que la cible est touchée, cela permet à l'Etat de contact cible. Contactez-cible se produit pendant l'état de lancement. Il peut prendre fin dès que la cible est touchée ou après que le sujet réside dans la cible pour une période de temps spécifique. Une fois ce temps écoulé, la fin de l'état de première instance est activé. La fin de l'état du signal d'essai doit le logiciel de collecte de données pour marquer le fichier de données, quelle qu'en soit l'analyse du développeur de logiciels a utilisé, pour délimiter la fin de l'essai chacun. Moins que l'essai final a été terminé, la fin de la fin de l'état d'essai permet à l'Etat Début du procès. 5. Application: la réhabilitation du patient course L'interface robotique a été conçu pour faire participer l'expertise thérapeute tout en utilisant le robot pour permettre à quelque chose qui ne pourraient autrement être fait. L'application de la technologie a permis (décrits plus en détail ci-dessous) de l'augmentation d'erreur, ce qui a amplifié les erreurs perçues par le patient, qui pour plusieurs raisons bien connues améliore le processus de réapprentissage (fig 1). Un haptique en trois dimensions / système graphique appelé la Réalité Virtuelle robotique et optique machine Opérations (VRROOM). Ce système, présenté précédemment 6, une chaîne stéréo combinée projetée, chef-rendu suivi sur un écran semi-argenté miroir de superposition avec un système robotique qui a enregistré la position du poignet et a généré un vecteur de force (figure 2). A di qualité cinématographiquegital projecteur (Christie Mirage 3000 DLP) s'affichent les images qui s'étend sur un écran de cinq pieds de large pixels 1280×1024, résultant en un angle de vision 110 ° de large. Émetteurs infrarouges synchronisées images distinctes œil gauche et à droite par Liquid Crystal Display (LCD) lunettes à obturation (stéréographique, Inc). Ascension Flock of Birds éléments magnétiques ont suivi le mouvement de la tête de sorte que l'affichage visuel a été rendu à la tête appropriée perspective centrée. Lors de qualification pour l'étude, la capacité fonctionnelle de chaque participant a été évaluée par un évaluateur aveugle au départ et l'arrivée de chaque paradigme de traitement avec une semaine de suivi après chaque et un ensemble de 45 jours de suivi évaluation. Chaque évaluation se composait d'une amplitude de mouvement (ROM) l'évaluation réalisée dans le VRROOM ainsi que des mesures cliniques, notamment: l'évaluation Box et de blocs, Wolf Motor Function Test (WMFT), la section du moteur du bras de l'Fugl-Meyer (AMFM), et Évaluation de la portée fonctionnelle simple (TFA). Un gant de exotendon avec une attelle au poignet a été utilisé pour aider à neutre du poignet et de l'alignement à la main. Le centre de la poignée de robot a été attaché à l'avant-bras a été placé postérieure de l'articulation radiocarpienne sorte que ses forces ont agi au niveau du poignet, mais a accueilli la requête à la main. Poids du bras du patient a été amoindri par un ressort-alimenté Wilmington robotique exosquelette (WREX) gravité équilibré orthèse. Objectif chargé le patient était de chasser un curseur présenté devant eux en transitant par un dispositif de surveillance dans la main du thérapeute (téléopération thérapeute). Les patients la pratique de trois jours par semaine pendant environ 40-60 minutes, avec le patient, le thérapeute, et le robot de travailler ensemble dans un trio. Objet et thérapeute assis côte à côte, et le sujet a été connecté au robot au niveau du poignet. Chaque session a commencé avec cinq minutes de la plage de passif d'exercices de mouvement (PROM) avec le thérapeute, suivie par environ dix minutes pour situer le patient dans la machine. Le sujet a ensuite complété six blocs de formation le mouvement a duré cinq minutes chacune avec des périodes de repos de deux minutes entre chaque bloc. Pendant la formation, les participants ont vu deux curseurs sur l'écran stéréo. Le thérapeute traitant manipulé un curseur tout en participant contrôlée de l'autre. Les patients ont été invités à suivre le chemin exact du curseur du thérapeute pendant qu'il se déplaçait à travers l'espace de travail. Augmentation erreur a été fournie à la fois visuellement et par les forces générées par le robot. Lorsque les participants dévié à partir du curseur thérapeute, une erreur e instantanée vecteur a été établi comme la différence de position entre le curseur du thérapeute et de la main du participant. Erreur était visuellement magnifié par un facteur de 1,5 E (M) dans le cadre de l'augmentation d'erreur. De plus, une force d'erreur augmentant de 100 e (N / m) a également été appliquée, ce qui a été programmé pour saturer à un maximum de 4 N pour des raisons de sécurité. Chaque bloc de traitement était constitué de particuliers, des mouvements normalisés qui ont été les mêmes pour chaque session. Les autres blocs a permis au thérapeute de personnaliser la formation à des domaines spécifiques de la faiblesse repose sur l'expertise thérapeute et leurs observations. Le protocole de traitement inclus la pratique de mouvements spécifiques pour tous les participants, y compris avant et latéraux atteignant, à l'épaule-coude d'accouplement, et en diagonale pour atteindre à travers le corps. Tout en pratiquant, au jour le jour erreur médiane a été mesurée comme un résultat de la pratique. Une attention particulière a été donnée à des blocs de mouvements normalisés qui ont été les mêmes pour chaque session. Ils ont été comparés aux jours précédents pour déterminer si des améliorations supplémentaires pourraient être observées sur une base de jour en jour, qui peuvent être communiqués au patient, le thérapeute et les soignants (figure 3). Les mesures primaires de résultats ont été mesurés par semaine, 1 semaine après la fin du traitement, et 45 jours après pour déterminer la conservation des avantages. Les principaux résultats ont été le score de Fugl-Meyer capacité de moteur et de notre test personnalisé portée de main qui a mesuré l'amplitude de mouvement. 6. Les résultats représentatifs: Lorsque le protocole est fait correctement, puis une fois le nœud <AnyDevice> est chargé dans le H3DViewer ou H3DLoad, le dispositif de WAM devrait être reconnu et lancé. Si le WAM ont été remplacés par un autre robot, le code lui-même n'aurait pas besoin d'être changé. Figure 1. Sujet assis à l'haptique / appareil graphique. Figure 2. Sujet assis à l'haptique / appareil graphique avec un physiothérapeute. Figure 3. Configuration pour la réhabilitation of le patient d'AVC. A) sous réserve et thérapeute travaillent ensemble, assis et en utilisant l'haptique grande espace de travail / affichage graphique pour la pratique du mouvement. Le thérapeute fournit un repère pour le sujet, et peut conditionné l'adapter aux besoins du patient. Le robot donne des forces qui poussent les membres de la cible et le système de feedback visuel améliore l'erreur du curseur. B) typiques d'amélioration des patients chroniques course au jour le jour. Chaque point représente l'erreur médiane mesurée pour un bloc de 2 minutes de mouvement fonctionnelle stéréotypées. Alors que le patient montre des progrès à travers la période de 2 semaines et de bénéficier d'ensemble, cette personne n'a pas toujours d'améliorer chaque jour.