Brevet FR3092984A1 — publié le 20200828

Description Titre de l'invention : Procédé et dispositif d'assistance à la manipulation d'un instrument médical par un utilisateur Domaine technique de l'invention [0001] La présente invention concerne de manière générale le domaine technique de la robotique médicale. [0002] Elle concerne en particulier un procédé et un dispositif d'assistance à la manipulation d'un instrument médical manipulé par un utilisateur, cet instrument médical étant couplé à un bras robotisé. Il est alors fait mention de co-manipulation. Etat de la technique [0003] Il a été proposé d'assister un utilisateur au cours d'un acte médical. Un membre du corps médical, appelé utilisateur ou opérateur dans la suite du texte, peut être assisté par un robot lors d'un acte médical. Plus précisément, l'invention se place dans le cadre de la co-manipulation. [0004] La co-manipulation désigne les situations où le robot fournit une assistance pour la manipulation d'un instrument médical avec lequel l'utilisateur est en contact direct. Elle a pour vocation d'augmenter les performances de manipulation de l'opérateur. En particulier le robot peut être est un bras robotisé à retours haptiques qui sollicite la perception kinesthésique de l'utilisateur, en modulant une raideur de mouvement selon un ou plusieurs degrés de liberté. [0005] Il a été proposé dans le document M. Wartenberg et al., « Closed-Loop Active Com- pensation for Needle Deflection and Target Shift During Cooperatively Controlled Robotic Needle Insertion », Annals of Biomedical engineering, vol. 46, n° 10, p. 1582-1594, oct. 2018, un robot permettant de co-manipuler une aiguille selon une trajectoire à l'intérieur de tissus corporels, depuis un point d'entrée à la surface de la peau. Au préalable, l'aiguille est positionnée au niveau du point d'entrée par le robot, de façon autonome, sans co-manipulation par un utilisateur. [0006] Ce positionnement préalable, réalisé sans contrôle est perturbant pour l'opérateur qui n'est pas maître d' une partie de l'acte médical. [0007] L'invention a pour but. notamment de remédier au problème précité. Présentation de l'invention [0008] Dans cc contexte l'invention propose un procédé d'assistance à la manipulation d'un instrument médical par un utilisateur, ledit instrument médical étant couplé via l'une de ses extrémités à un bras robotisé haptique apte à retourner un effort à l'utilisateur manipulant ledit instrument médical, de façon à diriger l'instrument médical vers une cible à atteindre, positionnée à la surface de tissus corporels. Le procédé comprend les 2 étapes suivantes : [0009] une obtention de paramètres représentatifs d'au moins une pose de l'instrument médical comprenant au moins l'orientation ou la position de l'instrument médical, ou la cible à atteindre par ledit instrument médical, [0010] une détermination d'une consigne d'effort en fonction desdits paramètres obtenus, pour générer l'effort à retourner à l'utilisateur suivant au moins un degré de liberté, et [0011] une assistance à la manipulation de l'instrument médical en retournant l'effort à un point de référence. [0012] En d'autres termes, l'invention propose un procédé de co-manipulation d'un instrument médical afin d'aider l'utilisateur à le placer le plus précisément et rapidement possible sur la cible à atteindre. Du fait de la co-manipulation, l'utilisateur peut rester maître du placement de l'instrument médical sur la cible à atteindre, tout en conservant un degré de précision proche de celui atteint par un positionnement automatique, grâce à l'assistance fournie par le dispositif selon l'invention. La rapidité du placement de l'instrument médical sur sa cible minimise l'anxiété et améliore le confort du patient sur qui est réalisé l'acte médical. Par exemple, l'intensité de l'effort retourné peut varier entre deux valeurs prédéterminées avec une progressivité fonction d'un paramètre dit de progressivité, choisi. Ce paramètre de progressivité permet d'assurer une fluidité dans la co-manipulation, sans variation brusque dans l'assistance fournie. De préférence, l'intensité de l'effort retourné est fonction d'une intensité maximale prédéterminée. En instaurant une intensité maximale de l'effort retourné, l'invention permet de limiter la fatigue que l'assistance peut générer chez l'utilisateur, en particulier au niveau du bras ou de l'épaule. De préférence, l'étape d'obtention des paramètres comprend en outre une obtention de paramètres représentatifs d'au moins [0013] une orientation souhaitée de l'instrument médical par rapport à au moins un axe de rotation, lorsque l'instrument médical est à la position de la cible à atteindre, ou [0014] un suivi d'une trajectoire par l'instrument médical, ladite trajectoire étant fonction de la cible à atteindre, l'effort retourné permettant d'obtenir au moins l'orientation souhaitée de l'instrument médical ou un suivi de la trajectoire par l'instrument médical. L'obtention d'au moins l'un de ces paramètres supplémentaires permet d'assister l'utilisateur en lui faisant suivre une trajectoire optimisée ou orienter l'instrument médical selon une orientation plus particulièrement adaptée à l'opération devant être réalisée une fois l'instrument positionné sur la cible à atteindre. 3 Par exemple la détermination de la consigne d'effort peut comprendre un calcul d'une erreur représentative d'un angle entre l'orientation de l'instrument médical obtenue et une orientation souhaitée de l'instrument médical, de façon que la consigne d'effort transmette une intensité à l'effort retourné, fonction de ladite erreur calculée. Selon un autre exemple, la détermination de la consigne d'effort peut comprendre en outre ou à la place du calcul précédemment mentionné, un calcul d'une erreur représentative d'une distance entre la position de l'instrument médical obtenue et ladite trajectoire à suivre, de façon que la consigne d'effort transmette une intensité à l'effort retourné, fonction de ladite erreur calculée. La prise en compte d'une erreur fonction d'une distance ou d'un angle entre l'instrument médical et la cible à atteindre permet d'adapter la consigne d'effort à la distance à parcourir ou à l'angle à obtenir, et de mettre à jour cette consigne tout au long du déplacement de l'instrument médical par l'utilisateur. L'effort retourné peut être représenté par un vecteur à six composantes, chacune correspondant à l'un desdits degrés de liberté. L'utilisateur peut donc contrôler tous les degrés de liberté de l'aiguille, tout en ayant la possibilité de recevoir, sur certains d'entre eux, des indications non-bloquantes de la part du bras robotisé haptique, quant à la position et l'orientation à donner à l'instrument médical. Par exemple, le au moins un point de référence est localisé sur [0015] l'une des extrémités de l'instrument médical, ou [0016] le bras robotisé haptique. Le procédé peut ainsi être implémenté sur différents dispositifs, aptes à retourner un effort à un point de référence particulier. L'invention propose également un dispositif d'assistance à la manipulation d'un instrument médical par un utilisateur, ledit instrument médical étant couplé via l'une de ses extrémités à un bras robotisé haptique apte à retourner un effort à l'utilisateur manipulant ledit instrument médical, de façon à diriger l'instrument médical vers une cible à atteindre, positionnée à la surface de tissus corporels. Le dispositif est configuré pour mettre en oeuvre les étapes suivantes : [0017] une obtention de paramètres représentatifs d'au moins une pose de l'instrument médical comprenant au moins l'orientation ou la position de l'instrument médical, ou la cible à atteindre par ledit instrument médical, [0018] une détermination d'une consigne d'effort en fonction desdits paramètres obtenus, pour générer l'effort à retourner à l'utilisateur suivant au moins un degré de liberté, et [0019] une assistance à la manipulation de l'instrument médical en retournant l'effort à un point de référence. L'invention propose également un système à retour d'efforts comprenant : [0020] un bras robotisé haptiquc apte à communiquer un retour d'effort à un utilisateur ma- nipulant un instrument médical couplé audit bras, [0021] un instrument médical couplé au bras robotisé par l'intermédiaire d'un moyen de couplage, et [0022] un dispositif tel que décrit ci-avant. L'invention propose également un support d'enregistrement lisible par un ordinateur, sur lequel est enregistré un programme d'ordinateur comprenant des instructions de code de programme pour l'exécution des étapes du procédé tel que décrit ci-avant. [0023] Bien entendu, les différentes caractéristiques, variantes et formes de réalisation de l'invention peuvent être associées les unes avec les autres selon diverses combinaisons dans la mesure où elles ne sont pas incompatibles ou exclusives les unes des autres. Description détaillée de l'invention [0024] De plus, diverses autres caractéristiques de l'invention ressortent de la description effectuée en référence aux dessins qui illustrent des formes, non limitatives, de réalisation de l'invention et où : [0025] [fig.1] représente un système à retours d'effort, comprenant un dispositif d'assistance à la manipulation d'un instrument médical, selon un mode de réalisation de l' invention ; [0026] [fig.2] représente un diagramme illustrant un exemple de mise en oeuvre d'un procédé d'assistance à la manipulation d'un instrument médical selon l'invention ; [0027] [fig.3] représente un exemple d'un retour d'effort dont la représentation vectorielle ne comprend que des composantes d'un vecteur dit résultante d'un torseur statique caractérisant l'effort, selon un mode de mise en oeuvre de l'invention ; [0028] [fig.4] représente un exemple d'un autre retour d'effort dont la représentation vec- torielle ne comprend que des composantes d'un vecteur dit résultante d'un torseur statique caractérisant l'effort, selon un mode de mise en oeuvre de l'invention ; [0029] [fig.51 représente un exemple d'un autre retour d'effort dont la représentation vec- torielle ne comprend que des composantes d'un vecteur dit résultante d'un torseur statique caractérisant le retour d'effort, selon un mode de mise en oeuvre de l'invention; [0030] [fig.6] représente un exemple d'un autre retour d'effort dont la représentation vec- torielle ne comprend que des composantes d'un vecteur dit moment d'un torseur statique caractérisant l'effort, selon un mode de mise en oeuvre de l'invention ; [0031] [fig.7] représente un exemple d'un autre retour d'effort dont la représentation vec- torielle comprend des composantes d'un vecteur dit moment d'un torseur statique et d'un vecteur appelé résultante, caractérisant l'effort, selon un mode de mise en oeuvre de l'invention ; et [0032] [fig.8] illustre une manière particulière de réaliser un dispositif d'assistance selon l' invention. [0033] Bien entendu, diverses autres modifications peuvent être apportées à l'invention dans le cadre des revendications annexées. [0034] [0035] La Fig 1 décrit un exemple de système 100 à retour d'efforts incorporant un dispositif 101 d'assistance à la manipulation d'un instrument médical 102 selon un mode de réalisation de l'invention. L'instrument médical 102 peut par exemple être une aiguille pour réaliser une biopsie comme illustré sur la Figure 1, mais également tout autre instrument médical tel qu'un trocart ou un laparoscopc. L'invention n'est pas limitée à un type d'instrument médical, mais est particulièrement adaptée à un instrument de de forme tubulaire ou conique. [0036] L'instrument médical 102 est couplé à une interface haptique 103 via un porte aiguille 104. Le porte aiguille 104 sert à accueillir et maintenir la base de 102, tout en permettant à un utilisateur 110 de la manipuler avec l'assistance de l'interface haptique. [0037] L'interface haptique comprend un robot 105 reposant sur un socle 107. Le robot est capable, via son effecteur 106, d'exercer sur un instrument des efforts venant s'ajouter à ceux produits par l'opérateur. Le robot 105 et l'effecteur 106 de l'interface haptique forment ensemble un bras robotisé. Les mouvements effectués par le robot 105 sont imprimés par des moteurs symbolisés par le module 108. Ce module 108 est ici couplé au dispositif d'assistance 101 via des moyens de transmissions 109. Le fonctionnement d'un bras robotisé est connu de l'homme de métier et décrit par exemple dans cet article : C. Poquet, « Conception et commande d'un robot de comanipulation pour l'assistance à la biopsie de prostate. », Université Pierre et Marie Curie-Paris VI, 2014». [0038] [0039] Plus précisément, l'interface haptique 103 est ici un bras haptique dont la raideur peut être modulée pour solliciter la perception kinesthétique de l'utilisateur 110, par exemple via l'application d'efforts communiqués par le moteur 108. [0040] Avec l'assistance de l'interface haptique 103, l'utilisateur 110 cherche à atteindre une cible 111 placée à la surface de tissus corporels symbolisés par un rectangle 112. La cible 111 peut être par exemple un point d'insertion dans le cas où l'instrument médical est une aiguille. L'utilisateur peut en outre chercher à positionner l'instrument médical 102 de façon que celui-ci ait une orientation choisie à la position de la cible 111. Cette orientation choisie peut correspondre à un angle d'insertion si la cible à atteindre est un point d'insertion. 6 [0041] Selon un mode de réalisation de l'invention, le dispositif d'assistance 101 reçoit des paramètres d'entrée représentatifs d'au moins : [0042] o une pose 113 de l'instrument médical 102 comprenant au moins l'orientation ou la position de l'instrument médical si la pose de l'instrument médical est dégradée (comme défini ci-après) ou l'orientation et la position de l'instrument médical dans le cas normal, ou [0043] o la cible 114 à atteindre 111 par ledit instrument médical 102. [0044] Classiquement une pose en trois dimensions est définie par un vecteur à six com- posantes (x y z ç r,, rz) contenant la position (x, y, z) et l'orientation (r, r,, rz) d'un objet. Elle est exprimée par rapport à un repère de référence. L'invention définit la notion de pose dégradée, qui considère soit la position seule, soit l'orientation seule. Les paramètres d'entrée peuvent être représentatifs à la fois de la pose de l'instrument médical dans un repère choisi et de la cible à atteindre. Des paramètres représentatifs de la cible à atteindre 111 sont par exemple la position de celle-ci dans un repère choisi ou bien l'angle d'incidence désiré pour l'aiguille sur la cible, défini par rapport aux axes d'un repère choisi. [0045] Le dispositif 101 peut également recevoir des paramètres supplémentaires (non re- présentés à des fins de simplification), tel que des paramètres caractérisant les tissus (par exemple le module de Young), les dimensions de l'instrument médical (longueur, diamètre..) ou encore la configuration de la pointe de l'instrument médical dans le cas d'une aiguille (biseautée, symétrique). [0046] Le dispositif 101 peut également recevoir des paramètres représentatifs d'au moins [0047] - une orientation souhaitée 115 de l'instrument chirurgical par rapport à un repère choisi, ou [0048] - un suivi d'une trajectoire souhaitée 116 par l'instrument chirurgical, ladite tra- jectoire étant fonction de la cible à atteindre, [0049] le « ou » n'étant pas exclusif. [0050] En variante, ces paramètres peuvent être définis par défaut, directement inférés ou calculés à partir d'autres paramètres reçus. Par exemple l'orientation souhaitée 115 peut être inférée, au moins partiellement, de paramètres caractérisant les tissus. La trajectoire souhaitée peut quant à elle être déterminée à partir de la position de la cible 114 et de la pose de l'instrument médical 113. [0051] Une consigne Cs 120 est déterminée par le dispositif d'assistance 101 à partir des différents ou d'une partie des différents paramètres reçus. Cette consigne est délivrée aux moteurs 108 par l'intermédiaire du canal de transmission 109. La consigne Cs 120 permet de commander le moteur 108 pour que le bras robotisé retourne un effort à l'utilisateur. La forme de la consigne Cs 120 est fonction des caractéristiques du bras robotisé 105 et du moteur 108. 7 [0052] Le système 100 peut comprendre également un dispositif d'affichage 117 fournissant un retour visuel de la scène à l'utilisateur 110. Le dispositif d'affichage 117 peut être un écran d'ordinateur par exemple. Les éléments visuels affichés par ce dispositif 117 peuvent être de plusieurs natures et remplir différentes fonctions. Par exemple un retour visuel peut être une représentation schématique de l'aiguille, de la cible et/ou de la trajectoire à suivre. Le retour visuel peut également comprendre un affichage des repères en trois dimensions associés à des éléments-clés de la scène (par exemple le repère de l'effecteur 106 de l'interface haptique 103, de la pointe de l'aiguille 102, de la cible...). [0053] Pour ce faire, le dispositif d'affichage 117 peut recevoir des données d'entrée telles que la trajectoire souhaitée 116, soit prédéterminée, soit calculée par le dispositif d'assistance 101, à partir des données de position de la cible et de la pose de l'instrument médical 113. Le dispositif d'affichage 117 peut également recevoir des images d'une caméra 118 (non représentée à des fins de simplifications), ces images pouvant permettre l'extraction d'informations de suivi de la pose de l'instrument médical 102. Les données transmises au dispositif d'affichage 117 peuvent être pré-traitées par un module de traitement 119 avant de lui être transmises. [0054] Le retour visuel grâce au dispositif d'affichage 117 peut permettre de faciliter la na- vigation dans l'espace pour l'utilisateur en proposant plusieurs angles de vue, en affichant des instructions, en représentant la trajectoire à suivre et/ou l'erreur de pose de l'aiguille par rapport à la trajectoire et/ou à la cible en superposition d'une image filmée. [0055] [0056] La Fig. 2 décrit un mode de mise en oeuvre d'un procédé d'assistance à la mani- pulation d'un instrument médical par l'utilisateur (cas de la co-manipulation). [0057] Une première étape E200 comprend une obtention des paramètres R205 repré- sentatifs de la pose de l'instrument médical et de la position de la cible à atteindre. Ces paramètres peuvent être fournis par l'opérateur, ou mesurés par des capteurs aptes à délivrer des informations de pose en trois dimensions. [0058] Selon le mode de mise en oeuvre de la Fig. 2, une étape E207 comprend l'obtention, par exemple par le calcul, d'une trajectoire souhaitée ou d'un angle d'incidence de l'instrument médical R209. L'angle d'incidence de l'instrument médical est par exemple relatif à un repère choisi. Ce repère peut être celui associé à la cible, par exemple. Au cours de cette étape, les deux paramètres R209, à savoir la trajectoire souhaitée et l'angle d'incidence souhaité, peuvent être calculés à partir des paramètres R205 représentatifs de la pose de l'instrument médical comme illustré sur la Fig. 2. [0059] En variante, les paramètres R207 peuvent être prédéterminés ou partiellement contraints. Par exemple, l'angle d'incidence peut être une valeur fournie par défaut. 8 L'aiguille peut être contrainte à une certaine direction ou à un certain type de trajectoire. L'obtention de ces paramètres souhaités R209 permet d'améliorer la précision du positionnement et de l'orientation de l'instrument médical notamment au niveau de la cible à atteindre. [0060] Une étape E210 porte sur une détermination de la consigne d'effort Cs R215 à partir d'au moins l'un des paramètres suivants : [0061] l'orientation de l'instrument médical (autrement dit l'orientation courante), [0062] la position de la cible à atteindre, [0063] une orientation souhaitée de l'instrument médical, ou [0064] une trajectoire souhaitée pour être suivie par l'instrument médical. [0065] Des exemples ci-dessous proposent différentes alternatives (non limitatives) pour la détermination de la consigne Cs R215, qui permet, en commandant le moteur de l'interface haptiquc, de transmettre le retour d'un effort à l'utilisateur. [0066] Par exemple, la détermination de la consigne d'effort Cs R215 comprend un calcul d'une erreur r représentative d'une distance entre la position de l'instrument médical obtenue et une position de la cible à atteindre et/ou d'un angle entre l'orientation de l'instrument médical et une orientation souhaitée, de façon que la consigne d'effort Cs R215 transmette une intensité à l'effort retourné, fonction de cette erreur s calculée. [0067] L'effort est appliqué par exemple sur l'effecteur ou l'une des extrémités de l'instrument médical, et ressenti par l'utilisateur via le porte-aiguille. [0068] Cette consigne Cs R215 permet de retourner au cours de l'étape E220 un effort à l'utilisateur de façon à fournir une assistance à la manipulation de l'instrument médical R225. [0069] Un effort e A , exprimé dans un repère A, et résultant de la consigne Cs R215, est un torseur statique représenté par un vecteur ayant jusqu'à six composantes, chacune correspondant à un degré de liberté : [0070] [Math. I] f, fy f, Tx T,, Tz [0071] Dans ce vecteur, f, Ç. et f, sont les composantes du vecteur appelé résultante du 9 torscur statique e A , tandis que t, r, et L. sont les composantes du vecteur moment de ce même torscur e ,t selon un formalisme bien connu de l'homme du métier. Selon la convention utilisée dans la suite du texte, un vecteur est représenté par une suite de caractères en gras. [0072] En variante, le vecteur représentant l'effort peut avoir uniquement les composantes de la résultante ou à l'inverse du vecteur moment. [0073] Connaissant l'expression de l'effort e A dans le repère A, on peut transposer ce vecteur dans un autre repère B (lié au point d'application de l'effort), par exemple l'effecteur de l'interface haptique décrite en référence à la Fig. 1) à l'aide d'une matrice de transformation M A B de dimension 6x6 (appelée « force-torque twist matrix » en anglais), dont l'expression est la suivante : [0074] [Math.2] M'- R 0^ - [tBA x RA R_A B B 100751 où R A B et t A B corresponden , respectivement à la matrice de rotation et au vecteur translation du repère B vers le repère A. Et A B ] ' est la matrice de pré-produit vectoriel associée au vecteur translation t A B 100761 La transposition de l'effort e A dans le repère B conduit à l'obtention d'un effort e B, exprimé dans le repère B (par exemple lié à l'effecteur), dont l'expression est obtenue par le calcul suivant : [0077] [Math.3] B eB , eA 100781 Par ailleurs, les matrices de transformation permettant de transposer l'effort retourné d'un repère dans un autre repère D (par exemple lié à l'instrument médical) peuvent être composées, comme illustré ci-dessous : 100791 1Math.41 = nippe% [0080] Le point d'application des efforts retournés peut être par exemple l'effecteur de l'interface haptique (référence 106 de la Fig. 1). En revanche, la représentation vectorielle de l'effort, va être de préférence calculée par rapport au repère associé à la base (référence 107 de la Fie. 1) de l'interface haptique, puisque dans cet exemple les moteurs (référence 108 de la Fig. 1) de l'interface haptique sont situés au niveau de la base de celle-ci. Plus généralement, la représentation vectorielle choisie est dépendante de l'interface de programmation de l'interface haptique. Les conditions du calcul de la représentation vectorielle de l'effort retourné sont généralement fixées par l'interface de programmation de l'interface haptique. [0081] Selon un mode de mise en oeuvre d'un procédé selon l'invention, les représentations vectorielles des efforts retournés à l'utilisateur à des fins d'assistance seront transposées dans le repère de l'effecteur de l'interface haptiquc, puis une matrice de rotation [0082] [Math.5] ri effecteur 'base 100831 (rotation du repère de l'effecteur par rapport au repère de la base de l'interface haptique) leur sera appliquée afin de les exprimer par rapport aux axes du repère de la base de l'interface haptique. 100841 100851 La Fig.3 illustre un premier exemple d'un effort etransiatimpoin' retourné selon deux degrés de liberté, les composantes du vecteur moment sont nulles. L'interface haptique 103 est ici vue de profil. 100861 Dans cet exemple, une trajectoire T souhaitée optimale a été obtenue. L'assistance fournie par un mode de mise en oeuvre de l'invention a pour but d'indiquer à l'utilisateur où se trouve cette trajectoire optimale T. Dans ce mode de mise en oeuvre, la trajectoire optimale T correspond à une droite normale aux tissus 112 passant par la cible à atteindre 111. A mesure que la pointe de l'aiguille 102 s'éloigne de cette trajectoire T, l'utilisateur sent la raideur de l'interface haptique 103 augmenter et l'attirer vers la trajectoire T. La composante f, n'est ici pas contrainte (donc nulle) car, dans le repère de la pointe de l'aiguille, l'axe z correspond à l'axe d'insertion. [0087] Un but de cette assistance étant d'aligner la pointe de l'aiguille avec la trajectoire T, seuls les axes permettant des déplacements latéraux sont contraints, soit x et y. La translation axiale selon l'axe de l'aiguille et les trois rotations possibles de l'aiguille 112 sont donc libres. Il vient : [0088] [Math.6] fx o o o o translation, poinLe pointe 100891 De préférence, l'intensité des efforts retournés est une fonction d'une erreur en position de la pointe de l'aiguille 102. Cette erreur correspond au vecteur u, obtenu par projection orthogonale de la pointe de l'aiguille sur la trajectoire. Le vecteur u est 11 orienté de la pointe de l'aiguille 102 vers la trajectoire T et son expression est la suivante : [0090] [Math.7] d Xpoinic - irajectoirc U = d pointe - trajectoire d zpointe - trajectoire.' pointe [0091] où dx,'i',_,,,,ioetni', et d,,,,,i',_''ic'ni' correspondent aux composantes du vecteur u et sont exprimées dans le repère de la pointe de l'aiguille. [0092] Dans l'exemple de la Fig. 3, seulement deux des composantes de l'effort sont non- nulles, f, et 4. Elles correspondent à l'intensité appliquée dans chacune des directions selon les axes x et y du repère associé à la pointe de l'aiguille. Elles sont respectivement calculées à l'aide d'une fonction de type sigmoïde centrée. Leurs expressions sont les suivantes : [0093] [Math.8] - [3f d 'pointe - trajectoire 1 - e Irmax d e xpointe rajectoire [0094] [Math.9[ -Of cl 1 - e pointe - trajectoire nia -[if d 1 + e in pote trajectoire [0095] [0096] fa' est ici l'intensité maximale autorisée (d'expression générale Intensité') pour l'intensité des retours d'effort sur les translations, [0097] Pr est un paramètre de forme de la sigmoïde, associé aux translations, [0098] L'introduction d'une intensité maximale fm',, permet de limiter l'intensité des efforts retournés par l'interface haptique 103. De cette façon, si l'utilisateur souhaite se libérer de la contrainte exercée par l'interface haptique, il peut très facilement le faire en exerçant un effort supérieur. Par ailleurs, la limitation de la contrainte permet également d'éviter une fatigue chez l'utilisateur, notamment au niveau des mains, des bras ou des épaules. [0099] Le paramètre de forme pen général, et en particulier celui associé aux translations I3f, f, 12 permet de contrôler dans ce cas la courbure et plus généralement la pente de la sigmoïde centrée. Autrement dit, la pente de la courbe croît ou décroît en fonction de la valeur de ce paramètre de forme. Une forte valeur de ri mène à des retours d'effort arrivant rapidement à saturation (correspondant à la valeur d'intensité maximale Intensité',a,), et cela pour de faibles valeurs de la déviation de l'aiguille par rapport à la cible, la trajectoire ou l'angle d'incidence désiré. Par exemple, des que l'utilisateur déviera légèrement de la trajectoire obtenue, les retours d'effort arriveront rapidement au maximum de leur intensité. [0100] Dans cet exemple, (ainsi que pour d'autres exemples décrits ci-après) la fonction utilisée pour calculer l'intensité Intensité des retours d'effort est une sigmoïde centrée. Son expression générale est la suivante : [0101] [Math.10] Intensité = Intensité [-max.' - e- 1+e [0102] où e correspond à l'erreur calculée lors de l'étape 210 de la Fig. 2, erreur soit de position (entre la pointe de l'instrument médical et la cible à atteindre par exemple), soit angulaire (entre l'axe de l'aiguille et l'angle d'incidence désiré). Bien entendu, ces exemples pour le calcul de l'erreur ne sont pas limitatifs. [0103] La fonction sigmoïdale centrée a pour avantage d'être continue sur la plage des mouvements possibles pour l'instrument médical, impliquant donc une variation continue du retour d'effort. 101041 Alternativement, une autre fonction, continue par morceaux, peut également être utilisée pour calculer l'intensité des retours (l'effort. Son expression est la suivante, dans laquelle s correspond soit à l'erreur de position, soit à l'erreur angulaire et fi est le paramètre de forme préalablement défini, contrôlant la pente de la fonction sur sa partie linéaire: 101051 IMath.111 Intensitém', -+ si 13x > Inten.sitéITMX Intensité si 3x s. Intensitém' - Intensitéma' -3 si ex - Intensitél', [0106] Cette fonction continue par morceaux est peu coûteuse à implémenter. En effet, le passage d'un « morceau » à l'autre de la fonction peut être réalisé simplement, au moyen de structures conditionnelles «Si ». Par ailleurs, chaque morceau de la fonction est simple puisqu'il est soit linéaire soit constant. [0107] Le paramètre p peut être une valeur prédéterminée ou alors par exemple calculée en fonction de l'erreur e et de l'intensité : [0108] 13 [Math .12] Int en si té',' + Intensité = ln ( Intensitéma, - Intensité [0109] [Math.13] avec c 0 et Intensité e J - [0110] Dans la pratique, le procédé d'assistance à la manipulation permet dc maintenir la pointe de l'aiguille sur la trajectoire, et l'utilisateur peut tourner l'aiguille librement autour de celle-ci. [0111] [0112] La Fig. 4 illustre un autre effort retourné à l'utilisateur. Il s'agit d'une contrainte de type translationnel mais attractif e a'ra',' c'est-à-dire qu'elle est déterminée de façon que l'utilisateur ressente un retour d'effort l'attirant vers la cible à atteindre. Le retour d'effort attractif est calculé dans le repère de la pointe de l'aiguille 102 et orienté vers la cible à atteindre 111, selon le vecteur unitaire y. [0113] 11 vient : [0114] [Math.14] eattractive, pointe f attractive_ x fattractive, y f 'attrac[ive, z O O o pointe 10115] Plus précisément, l'intensité de l'effort dit attractif e attractive ,poir,' est ici une fonction d'une erreur r correspondant à la distance de entre la pointe de l'aiguille 102 et la cible à atteindre 111. L'utilisateur est ainsi amené à suivre une trajectoire dynamique reliant la pointe de l'aiguille à la cible à atteindre. Lorsque cette distance di, est supérieure à une valeur maximale prédéterminée r, la norme de l'effort est constante, égale à une fraction de la force maximale f'',,, Lorsque cette distance d, est inférieure à la distance maximale r, la norme de l'effort décroît selon une loi en racine carrée. La décroissance permet d'éviter des instabilités dans les retours d'effort à l'approche de la cible à atteindre Ill. 10116] L'intensité de l'effort orienté selon le vecteur unitaire y est décrite par la relation suivante : Intensitémax; IIntensité[. [0117] 14 [Math.1.5] fal tractive, x f attractive, y , attractive, z e, LUC si d -- - Kitnax v r pointe [0118] 1Math.161 attractive, x fattractive, y fattractive, z otrma,.. , si d pointe [0119] f est ici l'intensité maximale autorisée (d'expression générale Intensité) pour l'intensité des retours d'effort sur les translations, [0120] a C [0,1] est un ratio prédéterminé permettant de moduler l'intensité maximale f d , désigne la distance entre la pointe de l'aiguille 102 et la cible à atteindre 111, et [0121] r correspond à un seuil de distance, au-delà duquel la norme de l'effort de type attractif est constante. [0122] [0123] La Fig. 5 illustre selon deux angles de vue différents, un autre type d'assistance, qui a pour but d'indiquer à l'utilisateur l'angle que l'on souhaite donner à l'axe de l'aiguille 102. On considère dans cet exemple que seules les rotations autour des axes de tangage et de lacet sont contraintes. A mesure que la déviation angulaire en lacet et/ ou en tangage augmente, l'utilisateur sent la raideur de l'interface haptique 103 augmenter, du fait de l'effort retourné eT,''m',mmi,. La composante r, n'est pas contrainte. Elle correspond à la rotation autour de l'axe de roulis de l'aiguille. Il vient : 101241 1Math.171 erotation, pointe = o pointe [0125] L'intensité des retours haptiqucs est donc ici une fonction de l'erreur angulaire de lacet et de tangage. [0126] L'erreur angulaire de lacet Omcm (vue de dessus) correspond à angle entre l'axe z du repère de la pointe de l'aiguille et l'axe Z du repère de la cible, mais dans le plan de lacet (autrement dit plan yz du repère de la pointe). L'axe Z du repère de la cible représente l'angle d'incidence désiré pour l'aiguille. [0127] L'erreur angulaire de tangage (vue de profil) correspond à l'angle entre l'axe z du repère de la pointe et l'axe Z du repère de la cible, mais dans le plan de tangage (autrement dit le plan xz du repère de la pointe de l'aiguille). [0128] L'effort est orienté de sorte à minimiser une erreur angulaire en lacet et en tangage par rapport aux angles 01',' et 0,,,'', par application de moments sur l'axe de lacet et de tangage, et 0aflgage.poi.LL.respectivement orientés selon l'axe x et y du repère de la pointe de l'aiguille. [0129] Dans l'exemple de la Fig. 5, deux des composantes de l'effort sont non-nulles, (lacet) et T (tangage). Elles peuvent être calculées de la façon suivante : [0130] [Math.18] -0 ()Wei - e Tmax 1-13- 6 acet e [0131] [Math.19] - e-13i langage T '= Tm, Y 1 + etangage [0132] T', est ici l'intensité maximale autorisée (d'expression générale Intensité, ) pour l'intensité des retours d'effort pour les rotations et [0133] [3, est un paramètre de forme de la sigmoïde, associé aux rotations. [0134] L'effort à retourner est ensuite transposé dans le repère de l'effecteur de l'interface haptique, comme expliqué ci-avant. Puis, une matrice de rotation lui est appliquée, afin de l'orienter selon les axes du repère de la base. [0135] [0136] La Fig. 6 illustre le même type d'assistance ayant pour but d'indiquer à l'utilisateur l'orientation à donner à l'axe de l'aiguille 102. Cet angle est cette fois considéré au niveau de l'effecteur 106 et non plus de l'aiguille 102, de façon à déterminer une consigne apte à générer un effort e rotation,effecteur calculé pour êtreappliqué au niveau de l'effecteur du bras haptique. Cette assistance a pour but d'aligner l'axe de l'aiguille et la cible. A mesure que la déviation angulaire en lacet et/ou en tangage augmente, l'utilisateur sent la raideur de l'interface haptique augmenter. Dans ce nouvel exemple, la composante r, n'est pas contrainte, ce cas de figure n'étant nullement limitatif r, correspond à la rotation autour de l'axe de roulis de l'aiguille. Seules les rotations autour des axes de tangage et. de lacet du repère effecteur sont donc contraintes. L'effort généré par cette assistance est orienté de sorte à minimiser la déviation angulaire considérée au niveau de l'effecteur du bras, par rapport à l'orientation Tx souhaitée. 16 [0137] Il vient : [0138] [Math .20] erotation, effecteur effecteur [0139] L'intensité des efforts retournée par l'interface haptiquc 103 est donc ici une fonction de l'erreur angulaire de lacet Oljce et de tangage [0140] L'erreur angulaire de lacet correspond à l'angle entre le vecteur EP, reliant le centre E du repère associé à l'effecteur à la pointe de l'aiguille P et le vecteur EC, reliant le centre E du repère associé à l'effecteur à la cible à atteindre C, mais dans le plan de lacet (autrement dit plan yz du repère de l'effecteur). [0141] L'erreur angulaire de tangage 0,',', correspond à l'angle entre le vecteur EP, reliant le centre E du repère associé à l'effecteur à la pointe de Pet le vecteur EC, reliant le centre E du repère de l'effecteur à la cible C, mais dans le plan de tangage (plan xz du repère de l'effecteur). [0142] Autrement dit il vient : [0143] [Math.21] A elacet - (EP, EC ) :t7 [0144] [Ma th.221 etangage = (EP, EC ) [0145] La représentation vectorielle de l'effort est calculée dans le repère de l'effecteur 106 de l'interface haptique 103. Dans cet exemple, seulement deux des composantes du vecteur force sont non-nulles, T' (lacet) et T' (tangage). Il vient : [0146] [Math.23] e-ri-t- Olacet Trriax Hlacet e [0147] [Ma th.241 1 + e-rt °tangage [0148] T. est ici l'intensité maximale autorisée (d'expression générale Intensitém') pour 1x 1 - e-PT °tangage 17 l'intensité des retours d'effort pour les rotations, et fit est un paramètre de forme de la sigmoïde, associé aux rotations. [0149] Une matrice de rotation peut ensuite être appliquée à l'effort afin de l'orienter selon les axes du repère associé à la base, comme expliqué ci-avant. [0150] En variante, il serait possible de calculer une consigne apte à générer un effort calculé pour être retourné à l'extrémité de l'aiguille couplée à l'effecteur, dite base de l'aiguille. L'invention n'est pas limitée à l'application d'un effort à un point de référence unique. [0151] [0152] La Fig. 7 illustre une assistance permettant de combiner des retours d'efforts pour aider l'utilisateur à simultanément positionner la pointe de l'aiguille sur la trajectoire et à donner à son axe la bonne orientation. Dans ce cas, l'utilisateur n'a plus qu'à pousser l'aiguille pour la mener vers le point d'insertion que représente la cible à atteindre 111. Les retours d'effort assurent le maintien dc la position et de l'orientation de durant le reste de la manipulation. [0153] Les seuils d'intensité, notés intensité,'; assurent à l'utilisateur une libération possible des contraintes à tout moment. [0154] L'effort etoral,,,Oin' combine l'ensemble des composantes déterminées dans les exemples précédents calculées dans un même repère. Cet effort eto',,, point, permet donc d'associer une assistance permettant d'indiquer à l'utilisateur l'angle O. à donner à l'axe de l'aiguille 102 et de le diriger vers une trajectoire souhaitée. L'effort ente point, peut également permettre une assistance supplémentaire pour que l'utilisateur ressente également le retour effort l'attirant vers la cible à atteindre, dans la direction du vecteur y comme illustré sur la Fig. 7. [0155] Dans le cas où l'effort er',,,,'i',n' intègre pas l'assistance supplémentaire dite at- tractive, il vient, exprimé dans le repère de la pointe de l'aiguille 102 : [0156] [Math.25] etotal, pointe - etranslation, pointe ± erç,tttion, pointe [0157] [0158] Dans le cas où l'effort ei',',.''i',, intègre l'assistance supplémentaire dite attractive, il vient, exprimé dans le repère de la pointe de l'aiguille 102: [0159] [Math.26] etotal, pointe etranslation pointe + eatn-active, pointe + erotation, pointe [0160] L'effort peut être ensuite transposé dans lc repère dc l'effecteur dc l'interface haptique, comme expliqué ci-avant. Puis, une matrice de rotation peut lui être 18 appliquée, afin de l'orienter selon les axes du repère de la base, comme expliqué ci-avant. [0161] [0162] La Fig. 8 illustre une manière particulière, parmi plusieurs possibles, de réaliser le dispositif 101 configure pour mettre en oeuvre un mode de réalisation d'un procédé d'assistance selon l'invention. Le dispositif 101 comprend une mémoire vive 830 (par exemple une mémoire RAM), une unité de traitement 810 équipée par exemple d'un processeur, et pilotée par un programme d'ordinateur stocké dans une mémoire morte 820 (par exemple une mémoire ROM ou un disque dur). A l'initialisation, les instructions de code du programme d'ordinateur sont par exemple chargées dans la mémoire vive 830 avant d'être exécutées par le processeur de l'unité de traitement 810. [0163] La Fig. 8 illustre seulement une manière particulière, parmi plusieurs possibles, de réaliser le dispositif 101 afin qu'il effectue certaines étapes du procédé selon l'invention. En effet, ces étapes peuvent être réalisées indifféremment sur une machine de calcul reprogrammablc (un ordinateur PC, un processeur DSP ou un micro-contrôleur) exécutant un programme comprenant une séquence d'instructions, ou sur une machine de calcul dédiée (par exemple un ensemble de portes logiques comme un FPGA ou un ASIC, ou tout autre module matériel). [0164] Dans le cas où le moyen de traitement est réalisé avec une machine de calcul repro- grammable, le programme correspondant (c'est-à-dire la séquence d'instructions) pourra être stocké dans un médium de stockage amovible ou non, ce médium de stockage étant lisible partiellement ou totalement par un ordinateur ou un processeur. [0165] L'invention porte donc également sur le programme d'ordinateur comportant des ins- tructions pour la mise en oeuvre du procédé selon l'un des modes de mise en oeuvre ci-avant, lorsque ledit programme est exécuté par un processeur. [0166] 11 va de soi que les modes de mise en oeuvre et de réalisation qui ont été déciits ci- dessus ont été donnés à titre purement indicatif et nullement limitatif, et que de nombreuses modifications peuvent être facilement apportées par l'homme de l'art sans pour autant sortir du cache de l'invention. 19 [Revendication 1]