ES3014079T3 - Method for moving an exoskeleton - Google Patents

Method for moving an exoskeleton Download PDF

Info

Publication number
ES3014079T3
ES3014079T3 ES21851677T ES21851677T ES3014079T3 ES 3014079 T3 ES3014079 T3 ES 3014079T3 ES 21851677 T ES21851677 T ES 21851677T ES 21851677 T ES21851677 T ES 21851677T ES 3014079 T3 ES3014079 T3 ES 3014079T3
Authority
ES
Spain
Prior art keywords
exoskeleton
trajectory
cop
expected
theoretical
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
ES21851677T
Other languages
English (en)
Inventor
Fanny Risbourg
Gabriele Buondonno
Roch Mollero
Stanislas Brossette
Guilhem Boeris
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wandercraft SAS
Original Assignee
Wandercraft SAS
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Wandercraft SAS filed Critical Wandercraft SAS
Application granted granted Critical
Publication of ES3014079T3 publication Critical patent/ES3014079T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61HPHYSICAL THERAPY APPARATUS, e.g. DEVICES FOR LOCATING OR STIMULATING REFLEX POINTS IN THE BODY; ARTIFICIAL RESPIRATION; MASSAGE; BATHING DEVICES FOR SPECIAL THERAPEUTIC OR HYGIENIC PURPOSES OR SPECIFIC PARTS OF THE BODY
    • A61H1/00Apparatus for passive exercising; Vibrating apparatus; Chiropractic devices, e.g. body impacting devices, external devices for briefly extending or aligning unbroken bones
    • A61H1/02Stretching or bending or torsioning apparatus for exercising
    • A61H1/0237Stretching or bending or torsioning apparatus for exercising for the lower limbs
    • A61H1/0255Both knee and hip of a patient, e.g. in supine or sitting position, the feet being moved together in a plane substantially parallel to the body-symmetrical plane
    • A61H1/0262Walking movement; Appliances for aiding disabled persons to walk
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61HPHYSICAL THERAPY APPARATUS, e.g. DEVICES FOR LOCATING OR STIMULATING REFLEX POINTS IN THE BODY; ARTIFICIAL RESPIRATION; MASSAGE; BATHING DEVICES FOR SPECIAL THERAPEUTIC OR HYGIENIC PURPOSES OR SPECIFIC PARTS OF THE BODY
    • A61H3/00Appliances for aiding patients or disabled persons to walk about
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Program-controlled manipulators
    • B25J9/0006Exoskeletons, i.e. resembling a human figure
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Program-controlled manipulators
    • B25J9/16Program controls
    • B25J9/1615Program controls characterised by special kind of manipulator, e.g. planar, scara, gantry, cantilever, space, closed chain, passive/active joints and tendon driven manipulators
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61HPHYSICAL THERAPY APPARATUS, e.g. DEVICES FOR LOCATING OR STIMULATING REFLEX POINTS IN THE BODY; ARTIFICIAL RESPIRATION; MASSAGE; BATHING DEVICES FOR SPECIAL THERAPEUTIC OR HYGIENIC PURPOSES OR SPECIFIC PARTS OF THE BODY
    • A61H2201/00Characteristics of apparatus not provided for in the preceding codes
    • A61H2201/01Constructive details
    • A61H2201/0157Constructive details portable
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61HPHYSICAL THERAPY APPARATUS, e.g. DEVICES FOR LOCATING OR STIMULATING REFLEX POINTS IN THE BODY; ARTIFICIAL RESPIRATION; MASSAGE; BATHING DEVICES FOR SPECIAL THERAPEUTIC OR HYGIENIC PURPOSES OR SPECIFIC PARTS OF THE BODY
    • A61H2201/00Characteristics of apparatus not provided for in the preceding codes
    • A61H2201/01Constructive details
    • A61H2201/0173Means for preventing injuries
    • A61H2201/0176By stopping operation
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61HPHYSICAL THERAPY APPARATUS, e.g. DEVICES FOR LOCATING OR STIMULATING REFLEX POINTS IN THE BODY; ARTIFICIAL RESPIRATION; MASSAGE; BATHING DEVICES FOR SPECIAL THERAPEUTIC OR HYGIENIC PURPOSES OR SPECIFIC PARTS OF THE BODY
    • A61H2201/00Characteristics of apparatus not provided for in the preceding codes
    • A61H2201/01Constructive details
    • A61H2201/0173Means for preventing injuries
    • A61H2201/018By limiting the applied torque or force
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61HPHYSICAL THERAPY APPARATUS, e.g. DEVICES FOR LOCATING OR STIMULATING REFLEX POINTS IN THE BODY; ARTIFICIAL RESPIRATION; MASSAGE; BATHING DEVICES FOR SPECIAL THERAPEUTIC OR HYGIENIC PURPOSES OR SPECIFIC PARTS OF THE BODY
    • A61H2201/00Characteristics of apparatus not provided for in the preceding codes
    • A61H2201/12Driving means
    • A61H2201/1207Driving means with electric or magnetic drive
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61HPHYSICAL THERAPY APPARATUS, e.g. DEVICES FOR LOCATING OR STIMULATING REFLEX POINTS IN THE BODY; ARTIFICIAL RESPIRATION; MASSAGE; BATHING DEVICES FOR SPECIAL THERAPEUTIC OR HYGIENIC PURPOSES OR SPECIFIC PARTS OF THE BODY
    • A61H2201/00Characteristics of apparatus not provided for in the preceding codes
    • A61H2201/12Driving means
    • A61H2201/1238Driving means with hydraulic or pneumatic drive
    • A61H2201/1246Driving means with hydraulic or pneumatic drive by piston-cylinder systems
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61HPHYSICAL THERAPY APPARATUS, e.g. DEVICES FOR LOCATING OR STIMULATING REFLEX POINTS IN THE BODY; ARTIFICIAL RESPIRATION; MASSAGE; BATHING DEVICES FOR SPECIAL THERAPEUTIC OR HYGIENIC PURPOSES OR SPECIFIC PARTS OF THE BODY
    • A61H2201/00Characteristics of apparatus not provided for in the preceding codes
    • A61H2201/14Special force transmission means, i.e. between the driving means and the interface with the user
    • A61H2201/1409Hydraulic or pneumatic means
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61HPHYSICAL THERAPY APPARATUS, e.g. DEVICES FOR LOCATING OR STIMULATING REFLEX POINTS IN THE BODY; ARTIFICIAL RESPIRATION; MASSAGE; BATHING DEVICES FOR SPECIAL THERAPEUTIC OR HYGIENIC PURPOSES OR SPECIFIC PARTS OF THE BODY
    • A61H2201/00Characteristics of apparatus not provided for in the preceding codes
    • A61H2201/14Special force transmission means, i.e. between the driving means and the interface with the user
    • A61H2201/1481Special movement conversion means
    • A61H2201/149Special movement conversion means rotation-linear or vice versa
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61HPHYSICAL THERAPY APPARATUS, e.g. DEVICES FOR LOCATING OR STIMULATING REFLEX POINTS IN THE BODY; ARTIFICIAL RESPIRATION; MASSAGE; BATHING DEVICES FOR SPECIAL THERAPEUTIC OR HYGIENIC PURPOSES OR SPECIFIC PARTS OF THE BODY
    • A61H2201/00Characteristics of apparatus not provided for in the preceding codes
    • A61H2201/16Physical interface with patient
    • A61H2201/1602Physical interface with patient kind of interface, e.g. head rest, knee support or lumbar support
    • A61H2201/164Feet or leg, e.g. pedal
    • A61H2201/1642Holding means therefor
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61HPHYSICAL THERAPY APPARATUS, e.g. DEVICES FOR LOCATING OR STIMULATING REFLEX POINTS IN THE BODY; ARTIFICIAL RESPIRATION; MASSAGE; BATHING DEVICES FOR SPECIAL THERAPEUTIC OR HYGIENIC PURPOSES OR SPECIFIC PARTS OF THE BODY
    • A61H2201/00Characteristics of apparatus not provided for in the preceding codes
    • A61H2201/50Control means thereof
    • A61H2201/5007Control means thereof computer controlled
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61HPHYSICAL THERAPY APPARATUS, e.g. DEVICES FOR LOCATING OR STIMULATING REFLEX POINTS IN THE BODY; ARTIFICIAL RESPIRATION; MASSAGE; BATHING DEVICES FOR SPECIAL THERAPEUTIC OR HYGIENIC PURPOSES OR SPECIFIC PARTS OF THE BODY
    • A61H2201/00Characteristics of apparatus not provided for in the preceding codes
    • A61H2201/50Control means thereof
    • A61H2201/5007Control means thereof computer controlled
    • A61H2201/501Control means thereof computer controlled connected to external computer devices or networks
    • A61H2201/5012Control means thereof computer controlled connected to external computer devices or networks using the internet
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61HPHYSICAL THERAPY APPARATUS, e.g. DEVICES FOR LOCATING OR STIMULATING REFLEX POINTS IN THE BODY; ARTIFICIAL RESPIRATION; MASSAGE; BATHING DEVICES FOR SPECIAL THERAPEUTIC OR HYGIENIC PURPOSES OR SPECIFIC PARTS OF THE BODY
    • A61H2201/00Characteristics of apparatus not provided for in the preceding codes
    • A61H2201/50Control means thereof
    • A61H2201/5023Interfaces to the user
    • A61H2201/5025Activation means
    • A61H2201/5028Contact activation, i.e. activated at contact with a surface of the user to be treated
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61HPHYSICAL THERAPY APPARATUS, e.g. DEVICES FOR LOCATING OR STIMULATING REFLEX POINTS IN THE BODY; ARTIFICIAL RESPIRATION; MASSAGE; BATHING DEVICES FOR SPECIAL THERAPEUTIC OR HYGIENIC PURPOSES OR SPECIFIC PARTS OF THE BODY
    • A61H2201/00Characteristics of apparatus not provided for in the preceding codes
    • A61H2201/50Control means thereof
    • A61H2201/5058Sensors or detectors
    • A61H2201/5064Position sensors
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61HPHYSICAL THERAPY APPARATUS, e.g. DEVICES FOR LOCATING OR STIMULATING REFLEX POINTS IN THE BODY; ARTIFICIAL RESPIRATION; MASSAGE; BATHING DEVICES FOR SPECIAL THERAPEUTIC OR HYGIENIC PURPOSES OR SPECIFIC PARTS OF THE BODY
    • A61H2201/00Characteristics of apparatus not provided for in the preceding codes
    • A61H2201/50Control means thereof
    • A61H2201/5058Sensors or detectors
    • A61H2201/5071Pressure sensors
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61HPHYSICAL THERAPY APPARATUS, e.g. DEVICES FOR LOCATING OR STIMULATING REFLEX POINTS IN THE BODY; ARTIFICIAL RESPIRATION; MASSAGE; BATHING DEVICES FOR SPECIAL THERAPEUTIC OR HYGIENIC PURPOSES OR SPECIFIC PARTS OF THE BODY
    • A61H2205/00Devices for specific parts of the body
    • A61H2205/10Leg
    • A61H2205/106Leg for the lower legs
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61HPHYSICAL THERAPY APPARATUS, e.g. DEVICES FOR LOCATING OR STIMULATING REFLEX POINTS IN THE BODY; ARTIFICIAL RESPIRATION; MASSAGE; BATHING DEVICES FOR SPECIAL THERAPEUTIC OR HYGIENIC PURPOSES OR SPECIFIC PARTS OF THE BODY
    • A61H2205/00Devices for specific parts of the body
    • A61H2205/12Feet
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40305Exoskeleton, human robot interaction, extenders

Landscapes

  • Health & Medical Sciences (AREA)
  • Engineering & Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Rehabilitation Therapy (AREA)
  • Pain & Pain Management (AREA)
  • Physical Education & Sports Medicine (AREA)
  • Epidemiology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Animal Behavior & Ethology (AREA)
  • Orthopedic Medicine & Surgery (AREA)
  • Public Health (AREA)
  • Veterinary Medicine (AREA)
  • Manipulator (AREA)
  • Rehabilitation Tools (AREA)

Abstract

La presente invención se refiere a un método para mover un exoesqueleto bípedo (1) que acomoda a un operador humano, comprendiendo el método la implementación, mediante medios de procesamiento de datos (11c) del exoesqueleto (1), de los pasos de (a) obtener una trayectoria elemental teórica del exoesqueleto (1); (b) ejecutar un bucle de control que define el cambio en una posición real del exoesqueleto (1) para implementar una trayectoria elemental real cercana a dicha trayectoria elemental teórica, comprendiendo, en cada iteración del bucle: - estimar un estado actual del exoesqueleto (1) como una función de dicha posición real; - determinar una fuerza torsor que se aplicará al exoesqueleto (1) en la siguiente iteración del bucle para compensar una desviación entre dicho estado actual estimado del exoesqueleto (1) y un estado esperado del exoesqueleto (1) de acuerdo con dicha trayectoria elemental teórica; la determinación de la fuerza torsor y/o su aplicación al exoesqueleto (1) teniendo en cuenta un modelo de la flexibilidad del exoesqueleto (1) con respecto a un robot rígido. (Traducción automática con Google Translate, sin valor legal)

Description

DESCRIPCIÓN
Procedimiento para poner en movimiento un exoesqueleto
Campo técnico general
La presente invención se refiere al campo de los robots bípedos, tales como robots humanoides y exoesqueletos.
Más específicamente, se refiere a un procedimiento de puesta en movimiento de un exoesqueleto con un controlador de admitancia.
Estado de la técnica
Recientemente, para personas con grandes problemas de movilidad como los parapléjicos, han aparecido unos dispositivos de marcha asistida llamados exoesqueletos, que son dispositivos robóticos externos que el operador (el usuario humano) llega a "ponerse" gracias a un sistema de enganches que vinculan los movimientos del exoesqueleto a sus propios movimientos. Los exoesqueletos de extremidades inferiores tienen varias articulaciones, normalmente al menos en las rodillas y las caderas, para reproducir el movimiento de la marcha. Estas articulaciones son movidas por accionadores, que a su vez mueven al operador. Un sistema de interfaz permite al operador dar órdenes al exoesqueleto, y un sistema de control transforma estas órdenes en comandos para los accionadores. Los sensores suelen completar el sistema.
Estos exoesqueletos suponen un avance respecto a las sillas de ruedas, ya que permiten a los operadores volver a ponerse de pie y caminar. Los exoesqueletos ya no están limitados por sus ruedas y teóricamente pueden evolucionar en la mayoría de los entornos no planos: las ruedas, a diferencia de las piernas, no permiten salvar obstáculos importantes como escalones, escaleras, obstáculos excesivamente altos, etc. Los procedimientos conocidos de control de los exoesqueletos permiten caminar de forma estable y autónoma sobre un terreno "normal", es decir, plano (impropiamente denominado terreno llano, pero que significa un terreno sin irregularidades, por ejemplo en interiores o en una cinta de correr) y soportar pequeñas perturbaciones externas. Se pueden citar por ejemplo los documentos Towards Restoring Locomotion for Paraplegics: Realizing Dynamically Stable Walking on Exoskeletons, T Gurrietet al,o Feedback Control of an Exoskeleton for Paraplegics: Toward Robustly Stable, Hands-Free Dynamic Walking, O. Haribet al;EP 2497610 A1; CARON STEPHANE ET AL: " Stair Climbing Stabilization of the HRP-4 Humanoid Robot using Whole-body Admittance Control"; Ll ZHIJUN ET AL: " Physical Human-Robot Interaction of a Robotic Exoskeleton By Admittance Control".
Sin embargo, esto no le permite soportar fuertes perturbaciones ni caminar por terrenos irregulares como los que podría encontrar en un entorno urbano con calles adoquinadas, por ejemplo. En tales circunstancias, el exoesqueleto podría caerse y lesionar al usuario.
Para poder moverse en este tipo de entornos, es necesario utilizar procedimientos de control activo que reaccionen ante las perturbaciones para mantener el equilibrio del exoesqueleto sin dejar de caminar, pero hasta ahora no se ha propuesto nada satisfactorio y seguimos viéndonos obligados a utilizar un pórtico para sujetar el exoesqueleto en caso de que se caiga.
Sería deseable disponer de una nueva solución para poner en movimiento cualquier exoesqueleto, que permita de forma fiable y ergonómica que el exoesqueleto camine sobre cualquier terreno, incluyendo terrenos irregulares.
Descripción de la invención
La presente invención se refiere así según un primer aspecto a un procedimiento de puesta en movimiento de un exoesqueleto bípedo que recibe a un operador humano, comprendiendo el procedimiento la realización por medios de procesamiento de datos del exoesqueleto, de etapas de:
(a) Obtención de una trayectoria elemental teórica del exoesqueleto;
(b) ejecución de un bucle de control que defina la evolución de una posición real del exoesqueleto con el fin de realizar una trayectoria elemental real próxima a dicha trayectoria elemental teórica, que comprenda en cada iteración del bucle:
o Estimación de un estado actual del exoesqueleto en función de dicha posición real; o Determinación de un torsor de fuerza a aplicar al exoesqueleto en la siguiente iteración del bucle para compensar una desviación entre dicho estado actual estimado del exoesqueleto y un estado esperado del exoesqueleto de acuerdo con dicha trayectoria elemental teórica;
determinación del torsor de fuerza y/o su aplicación al exoesqueleto, teniendo en cuenta un modelo de flexibilidad del exoesqueleto en relación con un robot rígido.
Según características ventajosas y no limitativas.
El procedimiento comprende repetir las etapas (a) y (b) de manera que el exoesqueleto camine mediante una sucesión de trayectorias elementales reales, cada una de las cuales corresponde a un paso.
La trayectoria elemental teórica obtenida en la etapa (a) parte de una posición inicial, comprendiendo la etapa (b) determinar una posición final del exoesqueleto al final de dicha trayectoria elemental real, utilizándose dicha posición final como posición inicial en la siguiente ocurrencia de la etapa (a).
La etapa b) comprende, al inicio de cada iteración del bucle, aplicar al exoesqueleto dicho torsor de fuerza determinado en la iteración anterior mediante un controlador de admitancia.
Determinar un torsor de fuerza a aplicar al exoesqueleto para compensar la desviación entre dicho estado actual estimado del exoesqueleto y un estado esperado del exoesqueleto de acuerdo con dicha trayectoria elemental teórica comprende implementar un control de realimentación sobre al menos un parámetro que define el estado del exoesqueleto.
La posición del exoesqueleto se define por un vector de las posiciones articulares de los grados de libertad accionadas del exoesqueleto, definiéndose el estado del exoesqueleto por al menos un parámetro seleccionado entre posiciones, velocidades y aceleraciones de grados accionados, posiciones de velocidad de un centro de masa, CoM, de una componente divergente del movimiento, DCM, la posición de un centro de presión, CoP, y la posición de un punto de momento cero, ZMP; en particular definido por las posiciones del Centro de Masa, CoM, de la componente divergente del movimiento DCM y del Centro de Presión CoP
Dicho control de realimentación se implementa sobre la posición DCM.
Dicho torsor de fuerza a aplicar al exoesqueleto 1 se define por una posición del CoP
Dicho torsor de fuerza a aplicar al exoesqueleto 1 se determina añadiendo a la posición esperada del CoP de acuerdo con dicha trayectoria elemental teórica al menos un término sobre el error entre las posiciones actual estimada y esperada del CoP, y un término sobre el error entre las posiciones actual estimada y esperada de la DCM, en particular z =zd -(1 —) er -uerdo con la fórmula v sKi fe? —
de ac s "ez, donde Zd es la posición esperada del CoP según dicha trayectoria elemental teórica,e$yezlos errores entre las posiciones actual estimada y esperada del CoP y la DCM respectivamente, yKp, KiyKdganancias.
Dicho modelo de flexibilidad define una modificación de la posición CoP esperada utilizada para determinar el torsor de fuerza.
El exoesqueleto tiene al menos un grado de libertad flexible accionado, dicho modelo de flexibilidad define un desplazamiento a aplicar a una posición objetivo y/o velocidad de dicho grado de libertad flexible accionado determinado como resultado de la aplicación del torsor de fuerza.
Dicho modelo de flexibilidad define al menos un parámetro del estado del exoesqueleto para ser sustituido por un valor medio observado en marchas estables reales.
Dicho modelo de flexibilidad se predetermina experimentalmente, a partir de marchas estables reales y/o simulaciones. Según un segundo aspecto, la invención se refiere a un exoesqueleto que comprende medios de procesamiento de datos configurados para implementar un procedimiento según el primer aspecto de puesta en movimiento del exoesqueleto.
Según un tercer aspecto, la invención se refiere a un sistema que comprende un servidor y el exoesqueleto según el segundo aspecto, comprendiendo el servidor medios de procesamiento de datos configurados para generar dicha trayectoria elemental teórica y suministrarla al exoesqueleto en la etapa (a).
Según un cuarto y un quinto aspecto, la invención se refiere a un producto de programa de ordenador que comprende instrucciones de código para ejecutar un procedimiento según el primer aspecto de poner en movimiento un exoesqueleto; y medios de almacenamiento legibles por un equipo informático en el que un producto de programa de ordenador comprende instrucciones de código para ejecutar un procedimiento según el primer aspecto de poner en movimiento un exoesqueleto.
Descripción de las figuras
Otras características y ventajas de la presente invención se harán evidentes a partir de la siguiente descripción de una realización preferente. Esta descripción se hará con referencia a los dibujos anexos en los que:
• La figura 1 es un esquema de un exoesqueleto utilizado por los procedimientos según la invención;
• La figura 2 es un esquema de una arquitectura para implementar los procedimientos según la invención; • La figura 3 es un diagrama que ilustra una realización preferente del procedimiento según la invención; • La figura 4 es una representación esquemática del bucle de control utilizado en una realización preferente del procedimiento según la invención.
Descripción detallada
Arquitectura
La presente invención proporciona un procedimiento para poner en movimiento un exoesqueleto 1.
Con referencia a laFigura 1,dicho exoesqueleto 1 es un sistema mecánico articulado del tipo de dispositivo robótico bípedo, accionado y controlado, provisto de dos piernas, acomodando más precisamente a un operador humano que presenta sus extremidades inferiores cada una integral con una pierna del exoesqueleto 1 (en particular por medio de correas). Por tanto, puede ser un robot más o menos humanoide. En la práctica, "poner en movimiento" significa apoyarse alternativamente en las piernas, en posición de pie, para producir un movimiento. En la mayoría de los casos se trata de caminar, sobre todo hacia delante, pero en la práctica puede ser cualquier movimiento, incluso hacia atrás, hacia los lados, darse la vuelta, sentarse, levantarse, etc.
Como se verá más adelante, se supone que un movimiento del exoesqueleto se compone de una secuencia de trayectorias elementales tales como pasos, en cada paso un pie se levanta del suelo y luego descansa, antes de que se inviertan los papeles (es decir, una alternancia de pasos del pie izquierdo y del pie derecho). Un paso es cualquier movimiento de un pie.
El exoesqueleto 1 tiene una pluralidad de grados de libertad, es decir, articulaciones movibles (generalmente mediante rotación) unas con respecto a otras, que son cada una "accionada" o "no accionada".
Un grado de libertad accionado se refiere a una articulación provista de un accionador controlado por los medios de procesamiento de datos 11c, es decir, este grado de libertad está controlado y se puede actuar sobre él. Por el contrario, un grado de libertad no accionado se refiere a una articulación sin accionador, es decir, este grado de libertad sigue su propia dinámica y los medios de procesamiento de datos 11 no tienen ningún control directo sobre él (pero sí un control indirecto a priori a través de los demás grados de libertad accionados).
El presente exoesqueleto comprende naturalmente al menos dos grados de libertad accionados, preferiblemente una pluralidad. Como veremos, algunos de estos grados de libertad pueden ser "flexibles".
Los medios de procesamiento de datos 11c se refieren a un equipo informático (típicamente un procesador, ya sea externo si el exoesqueleto 1 se "controla a distancia", pero preferiblemente a bordo del exoesqueleto 1, véase más adelante) adaptado para procesar instrucciones y generar órdenes para los diversos accionadores. Pueden ser eléctricos, hidráulicos, etc.
La presente solicitud no se limitará a cualquier arquitectura de exoesqueleto 1, y se tomará el ejemplo descrito en los documentos WO2015140352 y WO2015140353.
Así, preferentemente y de acuerdo con estas reivindicaciones, el exoesqueleto 1 comprende en cada pierna una estructura de pie que comprende un plano de apoyo sobre el que puede llegar a apoyarse un pie de una pierna de la persona que lleva el exoesqueleto.
Este plano de apoyo comprende, por ejemplo, una plataforma delantera y una plataforma trasera, de tal manera que un eslabón pivotante de pie conecta la plataforma delantera con la plataforma trasera, constituyendo un grado de libertad no accionado.
No obstante, el experto sabrá adaptar el presente procedimiento a cualquier otra arquitectura mecánica.
De acuerdo con una realización preferente, el presente procedimiento de generación de trayectoria y marcha puede comprender un primer o incluso un segundo servidor 10a, 10b dentro de una arquitectura como la representada por laFigura 2.
El primer servidor 10a es un servidor de generación de trayectorias, y el segundo servidor 10b es un servidor de posible aprendizaje.
En efecto, la generación de una trayectoria del exoesqueleto 1 puede utilizar una red neuronal, en particular del tipo " propagación hacia adelante" (FNN, "Feedforward Neural Network"), tal como se propone en la solicitud FR1910649. El segundo servidor 10b es entonces un servidor para implementar un procedimiento de aprendizaje de los parámetros de dicha red neuronal. Cabe señalar que este procedimiento no se limita al uso de una red neuronal, y que puede utilizarse cualquier técnica conocida para generar la trayectoria en su totalidad, o incluso más.
En cualquier caso, es muy posible que estos dos servidores se confundan, pero en la práctica lo más frecuente es que el segundo servidor 10b sea un servidor remoto, mientras que el primer servidor 10a puede estar a bordo del exoesqueleto 1 para su funcionamiento en tiempo real, como se muestra en la figura 2. En una realización preferente, el primer servidor 10a implementa el procedimiento de generación de una trayectoria para el exoesqueleto 1 utilizando una red neuronal basada en parámetros recuperados del segundo servidor 10b, y el exoesqueleto 1 normalmente aplica directamente dicha trayectoria generada in situ para ponerse en movimiento.
Cada uno de estos servidores 10a, 10b es típicamente un equipo informático conectado a una red de área extensa 20 tal como la red de Internet para el intercambio de datos, aunque en la práctica una vez que la red neuronal ha sido aprendida e incrustada en el segundo servidor 10b la comunicación puede interrumpirse, al menos intermitentemente. Cada uno de ellos comprende medios de procesamiento de datos de tipo procesador 11a, 11b (en particular, los medios de procesamiento de datos 11b del segundo servidor tienen una gran potencia de cálculo, ya que el aprendizaje es largo y complejo en comparación con el simple uso de la red neuronal aprendida), y, si es necesario, medios de almacenamiento de datos 12a, 12b tales como una memoria de ordenador, por ejemplo, un disco duro. En el caso de generación de trayectorias por red neuronal, la memoria 12b del segundo servidor 10b puede almacenar una base de datos de aprendizaje.
Se entenderá que puede haber una pluralidad de exoesqueletos 1 embarcados cada uno en su primer servidor 10a (que puede entonces ser de potencia y espacio limitados, en la medida en que genera trayectorias sólo para el exoesqueleto 1 al que está dedicado), o una pluralidad de exoesqueletos 1 conectados cada uno a un primer servidor 10a más potente, que puede estar fusionado con el segundo servidor 10b (y tener la capacidad de generar trayectorias sobre la marcha para todos los exoesqueletos 1).
Trayectoria
Como se ha explicado, por "trayectoria" del exoesqueleto se entienden clásicamente las evoluciones de cada grado de libertad (en particular accionado, pero los grados no accionados pueden intervenir en los algoritmos de control de los demás grados de libertad) expresadas en función del tiempo o de una variable de fase. En el resto de esta descripción, por "posición" del exoesqueleto 1 se entienden las posiciones articulares de los grados de libertad accionados, que ventajosamente son seis por pata, es decir, una posición definida por un vector de dimensión 12, incluso si se pudiera, por ejemplo, tomar la posición cartesiana de un punto característico del exoesqueleto, por ejemplo su Centro de Masa (CdM - tenemos entonces un vector de dimensión 3 correspondiente a las 3 posiciones según los 3 ejes).
Además, sabemos definir un movimiento "complejo" como una secuencia de trayectorias llamadas "elementales" eventualmente intercaladas con transiciones. Por trayectoria elemental se entiende generalmente una trayectoria correspondiente a un paso, es decir, aplicada a lo largo de la duración del paso, de manera que partiendo de un estado inicial del exoesqueleto 1 al principio de un paso (momento de contacto del pie), se llega al principio del paso siguiente. Hay que tener en cuenta que tenemos una alternancia de pasos a la izquierda y a la derecha, y que por ejemplo para caminar se necesitan técnicamente dos pasos para volver exactamente al mismo estado (el mismo pie delante). El término trayectoria periódica se refiere a una sucesión estable de trayectorias elementales que permiten caminar, pero como se ha explicado, este procedimiento se aplica a cualquier movimiento.
Esto incluye cualquier marcha sobre un plano, pero también en una rampa, un ascenso o descenso de una escalera, pasos laterales, pasos de giro, etc.
Una trayectoria elemental está asociada a una marcha dada del exoesqueleto 1 (estando definida una marcha por una tupla de parámetros de marcha), y permite mantener esta marcha de manera estable y factible (es decir, como veremos respeta todas las restricciones de un problema de optimización y minimiza una función de coste en la medida de lo posible). Como se ha explicado, dichos parámetros de la marcha corresponden a "características" de la forma de andar, como la longitud de los pasos, la frecuencia de la marcha y la inclinación del torso, pero también la altura de los escalones en el caso de subir escaleras, el ángulo instantáneo de rotación para los movimientos curvos, etc.; y también a las características morfológicas del operador (un subgrupo de los parámetros de la marcha denominado parámetros del paciente), como su estatura, su peso, la longitud del muslo o de la espinilla, la posición del centro de masa (valor del desplazamiento hacia delante) y el movimiento lateral del torso en el contexto de las actividades de rehabilitación.
Las mencionadas "restricciones" de una marcha pueden ser variadas y depender del tipo de marcha deseada, por ejemplo, una marcha de "pie en plano", o una marcha de "desarrollo", etc. El presente procedimiento no se limitará a ningún tipo de marcha deseada.
Toda transición corresponde a cambios en la marcha, es decir, a variaciones en los valores de dichos parámetros de la marcha (por ejemplo, un aumento de la longitud del paso): conociendo un conjunto inicial de parámetros de la marcha y un conjunto final de parámetros de la marcha, y por tanto una trayectoria periódica inicial (asociada al conjunto inicial de parámetros de la marcha) y una trayectoria periódica final (asociada al conjunto final de parámetros de la marcha), dicha transición es un fragmento de trayectoria que permite pasar de la trayectoria periódica inicial a la trayectoria final. Tenga en cuenta que debe haber transiciones "inicial" y "final", correspondientes al inicio y al final del movimiento.
Control de admitancia
Para poder caminar con seguridad incluso en terrenos irregulares, el exoesqueleto necesita un "estabilizador", es decir, un controlador dinámico que aplique la trayectoria garantizando al mismo tiempo el equilibrio del exoesqueleto 1.
Un procedimiento conocido como "control de admitancia" ha demostrado ser eficaz para estabilizar la marcha de robots humanoides, como se ilustra por ejemplo en el documento de Stéphane Caron, Abderrahmane Kheddar y Olivier Tempier, Stair Climbing Stabilization of the HRP-4 Humanoid Robot using Whole-body Admittance Control.
El control de admitancia consiste en estimar el estado del robot en cada momento, medir su desviación respecto a la trayectoria de referencia, calcular un torsor de fuerza estabilizadora y aplicar esta fuerza al sistema mediante el control de las posiciones de las articulaciones, en forma de bucle de estabilización.
En particular, dicha desviación de la trayectoria de referencia se evalúa a partir de una cantidad denominada Componente Divergente del Movimiento, DCM) o punto de captura, definida por la ecuación £ = ccIoj,donde c es laO)—J q/h
posición del Centro de Masa (CdM) y v la frecuencia del modelo de péndulo lineal invertido (LIPM), siendo g la constante de gravedad y h la altura del CdM, que puede suponerse constante.
Esta DCM descompone la ecuación de segundo orden c = w2(c -z)del LIPM (en la que sólo se consideran las 2 componentes horizontales), donde z es la posición de la ZMP, en dos sistemas acoplados de 1er orden:
c = wOf - c)
La 1' ecuación muestra que DCM diverge naturalmente de ZMP (de ahí el nombre de "divergente") mientras que la 2' ecuación muestra que CoM converge a DCM.
Un control de realimentación en la DCM (DCM control feedback) permite así calcular dicha fuerza estabilizadora torso a aplicar, y diversas estrategias denominadas "whole-body admittance" (el documento de Stéphane Caron, Abderrahmane Kheddar and Olivier Tempier, Stair Climbing Stabilization of the HRP-4 Humanoid Robot using Wholebody Admittance Control da ejemplos de la admitancia del tobillo, la admitancia del CoM o la diferencia de fuerza entre los pies) pueden utilizarse para determinar las instrucciones cinemáticas a realizar para que se aplique el esfuerzo deseado (generalmente utilizando cinemática inversa).
Este potencial de mejora de la estabilidad de la marcha tenía el potencial de hacer la marcha de los exoesqueletos más estable sobre terreno uniforme y permitirles caminar y moverse en entornos con terreno irregular, pero la aplicación del control de la admitancia a los exoesqueletos resultó decepcionante.
En efecto, en su forma, en su forma inicial descrita en el documento de Stéphane Caron, Abderrahmane Kheddar y Olivier Tempier, Stair Climbing Stabilization of the HRP-4 Humanoid Robot using Whole-body Admittance Control, el procedimiento de control de admitancia no es muy robusto. Más concretamente, el exoesqueleto da pasos más pequeños de lo esperado, arrastra los pies, incluso vibra, y la aproximación no es cómoda para el operador ni está libre de peligros.
Esto se debe a que el exoesqueleto 1 no puede considerarse un "robot rígido" en el mismo sentido que el HRP-4 del documento mencionado, es decir, un sistema articulado cuya dinámica puede describirse suficientemente bien mediante las ecuaciones clásicas de la robótica rígida.
Esto es lo que se conoce como "brecha de realidad" en los exoesqueletos, y se reduce a dos puntos principales:
• El propio operador del exoesqueleto 1 es una fuente de perturbaciones potencialmente importantes;
• Algunas partes del exoesqueleto son deformables (especialmente el tobillo y/o la cadera), lo que significa que el pie en el aire (conocido como pie de balanceo) suele estar más bajo de lo esperado y, por tanto, toca el suelo anormalmente pronto.
El presente procedimiento resuelve muy ingeniosamente estas dificultades proporcionando un control de admitancia modificado que tiene en cuenta un modelo de flexibilidad del exoesqueleto 1 con respecto a un robot rígido, y se superaron con éxito las siguientes pruebas:
• Marcha autónoma del exoesqueleto 1 recibiendo un maniquí pasivo y resistente a fuertes perturbaciones externas (empujes laterales, etc.);
• Marcha autónoma del exoesqueleto 1 que recibe a un operador humano sobre una superficie irregular, como una calle adoquinada de perfil curvo;
• Marcha autónoma del exoesqueleto 1 recibiendo a un maniquí pasivo en una cinta rodante durante un tiempo prolongado (1000 pasos).
Procedimiento
Con referencia a laFigura 3,dicho procedimiento de puesta en movimiento del exoesqueleto 1, implementado por los medios de procesamiento de datos embarcados 11c, comienza con una etapa (a) de obtención de una trayectoria elemental teórica del exoesqueleto, correspondiente por ejemplo a un paso. Esta etapa puede consistir en obtener en primer lugar al menos una tupla de parámetros de la marcha que defina una marcha dada del exoesqueleto 1, o incluso una secuencia de tuplas de parámetros de la marcha modificadas progresivamente (por ejemplo, como resultado de nuevas órdenes del operador del exoesqueleto, en particular si cambia la naturaleza del terreno).
Nótese que la obtención puede, como se ha explicado, implicar directamente la generación de la trayectoria por el exoesqueleto 1 (si, por ejemplo, incorpora el servidor 10a) o simplemente la recepción de la trayectoria por la red 20. Para ello, los medios 11c pueden suministrar al servidor externo 10a los parámetros de marcha, y recuperar a cambio la trayectoria.
Como se ha explicado, el operador puede estar equipado con un chaleco con sensores 15 para detectar la configuración de su torso (orientación del mismo). La dirección en la que el operador apunta su torso es la dirección en la que desea caminar y la velocidad puede venir dada por la intensidad con la que mueve su torso hacia delante (cuánto se inclina). La solicitud de puesta en marcha puede corresponder a que el operador pulse un botón (o una postura determinada) para manifestar su intención de ponerse en marcha y, por tanto, ordenar a los medios de procesamiento de datos que determinen dichos parámetros. Ciertos parámetros, como el ángulo instantáneo de rotación o la altura de los peldaños en el caso de subir escaleras, pueden predeterminarse u obtenerse mediante otros sensores 13, 14.
Para la generación de trayectorias propiamente dicha, no nos limitaremos a ninguna técnica conocida. Como se ha explicado, se conocen herramientas de optimización capaces de generar una trayectoria determinada en función de las restricciones y de los parámetros de marcha seleccionados. Por ejemplo, en el caso de las trayectorias HZD, el problema de generación de trayectorias se formula como un problema de control óptimo que puede resolverse preferentemente mediante un algoritmo denominado de colocación directa, véase el documento de Omar Harib et al, Feedback Control of an Exoskeleton for Paraplegics Toward Robustly Stable Hands-free Dynamic Walking..
Alternativamente, como también se ha explicado, puede utilizarse una red neuronal entrenada en una base de datos de trayectorias de aprendizaje.
En todos los casos, se supondrá definida una posición inicial del exoesqueleto 1 correspondiente a su posición al inicio del paso.
Se dice que la trayectoria elemental generada es "teórica", por oposición a una trayectoria "real". En un mundo libre de cualquier perturbación, podríamos simplemente aplicar la trayectoria teórica y el exoesqueleto caminaría automáticamente de acuerdo con esa trayectoria.
Aquí se supone que son posibles perturbaciones, tanto debidas a la naturaleza irregular del terreno como al comportamiento del operador o a acciones externas, de modo que la trayectoria que en la práctica realiza el exoesqueleto 1 (la trayectoria real) nunca se corresponde exactamente con la trayectoria teórica prevista, aunque como veremos el presente procedimiento hace que se mantengan próximas.
A continuación, en una etapa principal (b), el procedimiento comprende ejecutar un bucle de control que define la evolución de una posición real del exoesqueleto 1 para implementar dicha trayectoria elemental real próxima a dicha trayectoria elemental teórica, es decir, para que el exoesqueleto 1 camine.
Como se ha explicado, se trata de un control de admitancia, que adopta la forma de un bucle iterado, por lo que una realización particularmente preferente está representada por laFigura 4.
La ejecución del bucle de control de admitancia comprende de manera conocida en cada iteración del bucle:
• estimar (mediante un estimador de estado) un estado actual del exoesqueleto 1 en función de dicha posición real;
• determinar (típicamente mediante un controlador de DCM) un torsor de fuerza a aplicar al exoesqueleto 1 en la siguiente iteración del bucle para compensar una desviación entre dicho estado actual estimado del exoesqueleto 1 y un estado esperado del exoesqueleto 1 de acuerdo con dicha trayectoria elemental teórica;
• Y ventajosamente la aplicación (por un controlador de admitancia) al exoesqueleto 1 en la siguiente iteración del bucle de dicho torsor de fuerza determinado por la monitorización de las posiciones articulares;
pero la determinación del torsor de fuerza y/o su aplicación al exoesqueleto 1 tiene en cuenta un modelo de flexibilidad del exoesqueleto 1 en relación con un robot rígido.
Por estado (actual o esperado) del exoesqueleto 1 se entiende al menos un parámetro seleccionado entre las posiciones, velocidades y aceleraciones de los grados accionados, posición y velocidad del Centro de Masa (CdM), de la componente divergente del movimiento (DCM), posición del Centro de Presión (CoP), posición del Punto de Momento Cero (ZMP); en particular, los tres parámetros: las posiciones del Centro de Masa (CdM), de la componente divergente del movimiento (DCM) y del Centro de Presión (CoP). Obsérvese que en la práctica se supone que el COP y la ZMP coinciden (lo que ocurre cuando el suelo es sustancialmente horizontal, aunque sea irregular). Por lo tanto, en el resto de esta descripción, la notación z se utilizará para designar uno u otro, y el término CoP se utilizará por conveniencia. Si tenemos un estado actual estimado y un estado esperado, tenemos una versión actual y una versión esperada para cada parámetro.
El estado actual es el estado real "medible" del exoesqueleto 1 correspondiente a la trayectoria real realizada. En este caso, cada uno de estos parámetros se mide directamente (en particular, las posiciones de los grados accionados y CoP), o se estima mediante el bloque "estimador de estado" de la figura 4 a partir de los parámetros medidos directamente (en particular, CoM y d Cm ). Las posiciones estimadas de CoM, DCM y CoP se anotan respectivamente como cm, £m, y zm, como se ha explicado DCM se calcula en la práctica directamente a partir de CoM.
El estado esperado es el estado teórico "deseado" que debería tomar el exoesqueleto 1 si se aplicara la trayectoria teórica tal cual, determinada por el bloque "generador de patrones" de la figura 4. Las posiciones esperadas de CoM, DCM y CoP se indican como cd, d^ y Zd, respectivamente.
De manera particularmente preferente, la DCM actual ^m no se estima únicamente con el CoM actual cm, sino con respecto a la velocidad del CoM, con su valor objetivo, es decir, el aplicado a la iteración anteriorCt.En otras palabras, no tenemos =Cm+Cm/wpero =Cm+Ctlw.En efecto, el valor objetivo es más suave aunque tenga la misma media, y actúa como un filtro para mejorar el resultado.
A continuación, la determinación del torsor de fuerza a aplicar al exoesqueleto 1 en la siguiente iteración del bucle para compensar la desviación entre dichos estados actual y esperado del exoesqueleto 1 comprende ventajosamente la implementación de un control de realimentación ("feedback", ventajosamente de tipo PID) sobre al menos uno de dichos parámetros que definen el estado del exoesqueleto, en particular la DCM, es decir constituye un controlador de DCM (DCM control feedback" en la figura 4).
Preferentemente, dicho torsor de fuerza a aplicar al exoesqueleto 1 se define como una posición del Centro de Presión (CoP) y/o del Punto de Momento Cero (ZMP). Una vez más, en la práctica se supone que el COP y el ZMP coinciden. Entendemos que existen potencialmente tres ocurrencias del CoP: como parámetro del estado actual estimado (conocido como CoP actual), como parámetro del estado esperado (conocido como CoP esperado), y como parámetro que define dicho torsor de fuerza a aplicar (conocido como CoP de referencia).
De manera particularmente preferente, dicho torsor de fuerza a aplicar al exoesqueleto 1 se determina mediante la fórmula:
Donde zd es la posición esperada del CoP de acuerdo con dicha trayectoria elemental teórica (calculada por el bloque "Generador de patrones" y suministrada directamente al controlador de admitancia (el bloque "Admitancia de cuerpo entero") que aplicará este esfuerzo), e^ y ez los errores entre el CoP y la DCM actuales estimados y esperados, y Kp, Ki y Kd las ganancias (ajustables).
Esta fórmula funciona muy bien para los exoesqueletos 1 que reciben a un operador humano.
En la práctica, el controlador de DCM (bloque de controlador de realimentación DCM) suministra los dos últimos términos de "compensación de desviación" al controlador de admitancia (bloque de admitancia de cuerpo entero), constituyendo el CoP de referencia anotado zr en la Figura 4.
Cada iteración del bucle comprende ventajosamente como se ha explicado la aplicación de dicho torsor de fuerza al exoesqueleto 1 (al inicio del bucle), mediante el propio controlador de admitancia (el bloque Whole-Body Admittance), que genera, en particular, las llamadas consignas cinemáticas de referencia (en contraste con las consignas cinemáticas esperadas generadas a partir de la trayectoria teórica), que pueden convertirse, si es necesario, en posiciones/velocidades a aplicar (conocidas como objetivos) de los grados accionados utilizando, por ejemplo, cinemática inversa e integración (si la cinemática inversa proporciona las aceleraciones). Obsérvese que cualquier cinemática inversa puede incluir diferentes tareas jerárquicas (por ejemplo, pies, CdM, pelvis y, a continuación, postura), en función del procedimiento de admisión utilizado.
El controlador de admitancia implementa de hecho un procedimiento ad-hoc como la admitancia del tobillo (cambiando la posición articular del tobillo para aplicar la fuerza), la admitancia del CoM (solicitando un desplazamiento del centro de masa), la diferencia de fuerza entre los pies (cuando se está en doble apoyo, subir o bajar los pies, utilizando sensores de fuerza bajo los pies), o cualquier otra estrategia de cambio de consigna en la posición para controlar las fuerzas.
Por ejemplo la estrategia CoM consiste en calcular la cinemática inversa en bucle abierto (feed-forward) mediante la
<f- i - - - * ) =>cd<+>Ac (zm - zd<+ (>\<l>e(+ Kt f ef - ^ ez)
formula c =Cd y w / wdonde zm es el CoP actual estimado (es decir, el del estado actual, potencialmente medido directamente) y Ac la ganancia de control de admitancia.
En general, el experto en la materia podrá consultar el documento de Stéphane Caron, Abderrahmane Kheddar y Olivier Tempier, Stair Climbing Stabilization of the HRP-4 Humanoid Robot using Whole-body Admittance Control para implementar este bucle de control.
Compensación de flexibilidad
Como se ha explicado, la determinación del torsor de fuerza y/o su aplicación al exoesqueleto 1 tiene en cuenta un modelo de flexibilidad del exoesqueleto 1 con respecto a un robot rígido, es decir, aquí un robot bípedo convencional que no recibe a un operador humano, y que por lo tanto puede ser considerado como un sistema aislado. La oposición entre robótica rígida y flexible (o "blanda") es bien conocida por los expertos en la materia, y estos términos tienen significados bien definidos.
La idea es considerar el exoesqueleto 1 como "flexible", modelarlo mediante un modelo, y aplicar este modelo bien al determinar el torsor de fuerza a aplicar al exoesqueleto, bien durante dicha aplicación del torsor de fuerza al exoesqueleto. Se trata de una corrección en bucle abierto (feed-forward): los valores de los parámetros (instrucciones conjuntas) simplemente se modifican, es decir, se corrigen (se tiene en cuenta su valor inicial) o directamente se sustituyen.
Cabe señalar que se intentó controlar retroactivamente la posición de los pies para tener en cuenta las flexibilidades, pero resultó contraproducente y a pesar de la precisión del observador creó más inestabilidad que otra cosa. Aplicar el modelo directamente en feed-forward antes o después del control de admitancia resuelve todas las dificultades.
Discutiremos ahora varias estrategias posibles para aplicar el modelo de flexibilidades, que pueden implementarse de forma aislada o combinada. Más concretamente, el modelo de flexibilidades puede tener varias repercusiones en el bucle de control
1 -Aplicación de offsets sobre las posiciones/velocidades objetivo (es decir, las generadas por la cinemática inversa) de al menos un grado accionado denominado flexible (por estar sujeto a flexibilidad), en particular tobillo y/o cadera, como se muestra en la figura 4.
Como puede verse, un módulo " Flexibility compensator " genera los desfases y los añade a los valores objetivo para corregirlos antes de enviarlos a los accionadores.
Dicho modelo que permite determinar los desplazamientos está ventajosamente predeterminado experimentalmente, a partir de marchas reales estables y/o simulaciones (por ejemplo utilizando el simulador Jiminy). Por ejemplo, se comienza simulando marchas estables y luego se perfecciona el modelo en marchas reales en las que se ha demostrado la estabilidad.
En particular, dicho modelo de flexibilidad modela por ejemplo un grado accionado flexible tal como un resorte, cuya rigidez ha sido determinada experimentalmente.
La ventaja de este procedimiento es que es transparente para el propio controlador (ya que se aplica a la salida del control de admitancia).
Obsérvese que este procedimiento también puede incluir (o no), como se muestra en la figura 4, la eliminación de desplazamientos de las posiciones medidas para anular la compensación de flexibilidades.
2- Cambios en el CdP
En esta estrategia, dicho modelo de flexibilidad se aplica para modificar la posición esperada del CoP Zd, utilizado tanto por el controlador de DCM como por el controlador de admitancia.
De hecho, se encontró que CoP no necesita ser totalmente consistente dinámicamente con otros parámetros incluyendo CoM.
Esto se puede hacer de varias maneras, filtrando el CoP esperado según lo que se observa en marchas reales, o incluso tomando directamente la media del CoP esperado (en posición, velocidad o aceleración) observado en marchas reales, véase el procedimiento 3 inmediatamente después. El modelo de flexibilidad es, pues, un modelo de comportamiento "flexible" del CoP
En particular, la compensación de la flexibilidad puede realizarse al cambiar el pie de contacto (véase más adelante), especialmente si el pie de contacto se cambia antes de lo esperado debido a un contacto inesperado con el suelo (una consecuencia típica de las flexibilidades). Para una mayor estabilidad y rapidez de cálculo, puede calcularse un CoP modificado independientemente de las posiciones articulares.
Por ejemplo, el modelo de flexibilidad puede adoptar la forma de un filtro de primer orden que puede aplicarse al CoP esperado. Cuando se cambia el pie de contacto, el filtro variará de forma natural el CoP esperado entre el valor final de la primera etapa y el valor inicial de la segunda etapa, en lugar de cambiar bruscamente.
De forma similar, se puede utilizar una estrategia MPC (Model Preview Control) con el mismo propósito. Esto tiene la ventaja de permitir que las restricciones se incluyan explícitamente en el CoP modificado.
Alternativamente, cualquier otra estrategia de replanificación en vivo que permita una transición suave de un pie a otro sería factible.
3- Sustitución por un valor medio
En este enfoque, en lugar de modelar físicamente las flexibilidades, modelamos su impacto durante la marcha, sobre todos o algunos de los parámetros de estado del exoesqueleto 1, incluyendo potencialmente CoM, DCM o incluso CoP.
Dicho modelo de flexibilidad define así al menos un parámetro de estado del exoesqueleto a sustituir por un valor medio observado en marchas reales estables, siendo esta sustitución preferentemente directa a la salida del controlador de admitancia, antes de la cinemática inversa.
La idea es utilizar valores directamente de marchas que ya han demostrado ser estables a pesar de las flexibilidades. Esto se debe a que, como algoritmo de estabilización, el bucle del controlador de admitancia puede crear una "zona de estabilidad" alrededor de una marcha ya estable (probado), lo que proporciona una mejor estabilidad general que cuando también hay que hacer el trabajo de estabilizar una marcha de base inestable.
Secuencia de pasos
Las etapas (a) y (b) pueden repetirse de manera que el exoesqueleto 1 camine mediante una sucesión de trayectorias elementales reales, cada una de las cuales corresponde a un paso.
Hay que tener en cuenta que la trayectoria real es diferente de la trayectoria teórica, por lo que la trayectoria siguiente debe adaptarse al paso que se acaba de dar, a fortiori debido a las flexibilidades que generalmente hacen que el pie impacte antes de lo previsto.
Así, la trayectoria elemental teórica obtenida en la etapa (a) parte de una posición inicial, comprendiendo ventajosamente la etapa (c) la determinación de una posición final del exoesqueleto 1 al final de dicha trayectoria elemental real, utilizándose dicha posición final como posición inicial en la siguiente ocurrencia de la etapa (a).
Como se ha explicado, generalmente se genera una trayectoria periódica completa (formada por una secuencia de trayectorias elementales), de modo que la nueva ocurrencia de la etapa (a) consiste en modificar la trayectoria periódica (para la siguiente trayectoria elemental).
En otras palabras, existe por tanto una interpolación entre la posición del exoesqueleto 1 en el momento del impacto y el paso siguiente, con el fin de evitar un salto en las consignas. La interpolación tiene lugar en el momento del impacto y modifica el inicio de la trayectoria del paso siguiente.
Equipos y sistemas
Según un segundo aspecto, la invención se refiere al exoesqueleto 1, para implementar el procedimiento según el primer aspecto, y según un tercer aspecto al sistema que comprende el exoesqueleto así como un posible servidor 10a, eventualmente juntos.
El exoesqueleto 1 comprende medios de procesamiento de datos 11c configurados para implementar el procedimiento según el segundo aspecto, así como, si es necesario, medios de almacenamiento de datos 12 (en particular los del primer servidor 10a), medios de medición inercial 14 (unidad de medición inercial), medios para detectar el impacto de los pies en el suelo 13 y, si es necesario, estimar las fuerzas de contacto (sensores de contacto o eventualmente sensores de presión), y/o un chaleco sensor 15.
Tiene una pluralidad de grados de libertad incluyendo al menos un grado de libertad accionado por un accionador controlado por los medios de procesamiento de datos 11c para ejecutar dicho controlador.
El primer servidor 10a comprende medios de procesamiento de datos 11a para generar dicha trayectoria elemental teórica y suministrarla al exoesqueleto en la etapa (a), en particular al recibir la posición inicial del exoesqueleto 1 en el paso inicio y cualquier parámetro de marcha
Producto de programa informático
Según un tercer y un cuarto aspecto, la invención se refiere a un producto de programa de ordenador que comprende instrucciones de código para ejecutar (en medios de procesamiento 11c), un procedimiento según el primer aspecto de puesta en movimiento de un exoesqueleto 1, así como medios de almacenamiento legibles por equipos informáticos en los que se encuentra dicho producto de programa de ordenador.

Claims (17)

REIVINDICACIONES
1. Procedimiento de puesta en movimiento de un exoesqueleto bípedo (1) que recibe un operador humano, comprendiendo el procedimiento la realización por los medios de procesamiento de datos (11c) del exoesqueleto (1) las etapas de:
(a) Obtención de una trayectoria elemental teórica del exoesqueleto (1);
(b) ejecución de un bucle de control que defina la evolución de una posición real del exoesqueleto (1) con el fin de implementar una trayectoria elemental real próxima a dicha trayectoria elemental teórica, comprendiendo en cada iteración del bucle:
- Estimación de un estado actual del exoesqueleto (1) en función de dicha posición real;
- Determinación de un torsor de fuerza a aplicar al exoesqueleto (1) en la siguiente iteración del bucle para compensar una desviación entre dicho estado actual estimado del exoesqueleto (1) y un estado esperado del exoesqueleto (1) de acuerdo con dicha trayectoria elemental teórica;
la determinación del torsor de fuerza y/o su aplicación al exoesqueleto (1) teniendo en cuenta un modelo de la flexibilidad del exoesqueleto (1) en relación con un robot rígido.
2. Procedimiento según la reivindicación 1, que comprende repetir las etapas a) y b) para que el exoesqueleto (1) camine siguiendo una sucesión de trayectorias elementales reales, cada una de las cuales corresponde a un paso.
3. Procedimiento según la reivindicación 2, en el que la trayectoria elemental teórica obtenida en la etapa (a) parte de una posición inicial, comprendiendo la etapa (b) la determinación de una posición final del exoesqueleto (1) al final de dicha trayectoria elemental real, utilizándose dicha posición final como posición inicial en la siguiente ocurrencia de la etapa (a).
4. Procedimiento según una de las reivindicaciones 1 a 3, en el que la etapa b) comprende, al comienzo de cada iteración del bucle, aplicar al exoesqueleto (1) dicho torsor de fuerza determinado en la iteración anterior mediante un controlador de admitancia.
5. Procedimiento según una de las reivindicaciones 1 a 4, en el que la determinación de un torsor de fuerza a aplicar al exoesqueleto (1) para compensar la desviación entre dicho estado actual estimado del exoesqueleto (1) y un estado esperado del exoesqueleto (1) de acuerdo con dicha trayectoria elemental teórica comprende la implementación de un control de retroalimentación sobre al menos un parámetro que define el estado del exoesqueleto.
6. Procedimiento según una de las reivindicaciones 1 a 5, en el que la posición del exoesqueleto (1) está definida por un vector de las posiciones articulares de los grados de libertad accionados del exoesqueleto (1), estando definido el estado del exoesqueleto (1) por al menos un parámetro seleccionado entre posiciones, velocidades y aceleraciones de los grados accionados, posiciones y velocidades de un centro de masa, CoM, una componente divergente del movimiento, DCM, la posición de un centro de presión, CoP, y la posición de un punto de momento cero, ZMP; en particular definida por las posiciones del Centro de Masa, CoM, de la componente divergente del movimiento DCM y del Centro de Presión CoP.
7. Procedimiento según las reivindicaciones 5 y 6 en combinación, en el que dicho control de realimentación se implementa sobre la posición de la DCM.
8. Procedimiento según una de las reivindicaciones 6 y 7, en el que dicho torsor de fuerza a aplicar al exoesqueleto 1 está definido por una posición del CoP.
9. Procedimiento según la reivindicación 7, en el que dicho torsor de fuerza a aplicar al exoesqueleto 1 se determina añadiendo a la posición esperada del CoP de acuerdo con dicha trayectoria elemental teórica al menos un término sobre el error entre las posiciones actual estimada y esperada del CoP, y un término sobre el error entre las posiciones actual estimada y esperada de la DCM, en particular de acuerdo con la fórmula z =
za — f1 —1- K ¡ f — e.
v w , donde Zd es la posición esperada del CoP según dicha trayectoria elemental teórica, e^ y ez los errores entre las posiciones actual estimada y esperada del CoP y de la DCM respectivamente, y Kp, Ki y Kd las ganancias.
10. Procedimiento según una de las reivindicaciones 6 a 9, en el que dicho modelo de flexibilidad define un cambio en la posición esperada del CoP utilizado para determinar el torsor de fuerza.
11. Procedimiento según una de las reivindicaciones 1 a 10, en el que el exoesqueleto (1) tiene al menos un grado de libertad flexible accionado, definiendo dicho modelo de flexibilidad un desplazamiento a aplicar a una posición y/o velocidad objetivo de dicho grado de libertad flexible accionado determinado como resultado de la aplicación del torsor de fuerza.
12. Procedimiento según una de las reivindicaciones 1 a 11, en el que dicho modelo de flexibilidad define al menos un parámetro del estado del exoesqueleto (1) a sustituir por un valor medio observado en marchas reales estables.
13. Procedimiento según una de las reivindicaciones 1 a 12, en el que dicho modelo de flexibilidad se predetermina experimentalmente, a partir de marchas estables reales y/o simulaciones.
14. Exoesqueleto (1) que comprende medios de procesamiento de datos (11c) configurados para implementar un procedimiento según una de las reivindicaciones 1 a 13 para poner en movimiento el exoesqueleto (1).
15. Sistema que comprende un servidor (10a) y el exoesqueleto (1) según la reivindicación 14, comprendiendo el servidor (10a) medios de procesamiento de datos (11a) configurados para generar dicha trayectoria elemental teórica y proporcionarla al exoesqueleto en la etapa (a).
16. Producto de programa informático que comprende instrucciones de código para ejecutar un procedimiento según una de las reivindicaciones 1 a 13 para poner en movimiento un exoesqueleto (1), cuando dicho programa se ejecuta en un ordenador.
17. Medio de almacenamiento legible por un equipo informático en el que un producto de programa informático comprende instrucciones de código para ejecutar un procedimiento según una de las reivindicaciones 1 a 13 para poner en movimiento un exoesqueleto (1).
ES21851677T 2020-12-16 2021-12-15 Method for moving an exoskeleton Active ES3014079T3 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR2013340A FR3117393B1 (fr) 2020-12-16 2020-12-16 Procédé de mise en mouvement d’UN exosquelette
PCT/FR2021/052335 WO2022129784A1 (fr) 2020-12-16 2021-12-15 Procédé de mise en mouvement d'un exosquelette

Publications (1)

Publication Number Publication Date
ES3014079T3 true ES3014079T3 (en) 2025-04-16

Family

ID=74860101

Family Applications (1)

Application Number Title Priority Date Filing Date
ES21851677T Active ES3014079T3 (en) 2020-12-16 2021-12-15 Method for moving an exoskeleton

Country Status (9)

Country Link
US (1) US20240000648A1 (es)
EP (1) EP4263146B1 (es)
JP (1) JP7790018B2 (es)
KR (1) KR20230120651A (es)
CN (1) CN116635192A (es)
CA (1) CA3204302A1 (es)
ES (1) ES3014079T3 (es)
FR (1) FR3117393B1 (es)
WO (1) WO2022129784A1 (es)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR3139277B1 (fr) 2022-09-06 2024-08-30 Wandercraft Procédé de mise en mouvement stabilisée d’un exosquelette bipède
KR102778874B1 (ko) * 2022-11-21 2025-03-11 한국전자통신연구원 엑소스켈레톤 제어로직 평가 방법 및 시스템
CN118131801B (zh) * 2022-11-24 2025-06-03 北京小米机器人技术有限公司 运动控制方法及装置、运动轨迹生成方法及装置
CN116922396B (zh) * 2023-09-07 2023-11-17 贵州航天控制技术有限公司 一种外骨骼系统的助力控制方法
CN117021118B (zh) * 2023-10-08 2023-12-15 中北大学 一种并联机器人数字孪生轨迹误差动态补偿方法
CN119098934A (zh) * 2024-08-19 2024-12-10 同济大学 基于ai共驾的外骨骼共享控制方法、系统、设备和存储介质
CN119292321B (zh) * 2024-08-29 2025-12-26 中国科学院深圳先进技术研究院 一种外骨骼在未知地形下自平衡行走的控制方法
CN120038762B (zh) * 2025-04-23 2025-07-11 上海术理智能科技有限公司 基于动作意图识别的轨迹生成方法、系统与介质
CN120862639B (zh) * 2025-09-26 2025-12-23 湖南理工职业技术学院 航天员外骨骼运动强度自适应调节与轨迹智能规划方法

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60199450A (ja) * 1984-03-26 1985-10-08 工業技術院長 下肢障害者用動力装具
ATE531313T1 (de) * 2009-04-07 2011-11-15 Syco Di Hedvig Haberl & C S A S System zur steuerung einer haptischen exoskelettvorrichtung zu rehabilitationszwecken und entsprechende haptische exoskelettvorrichtung
EP2497610B1 (en) * 2011-03-09 2014-10-22 Syco Di Hedvig Haberl & C. S.A.S. System for controlling a robotic device during walking, in particular for rehabilitation purposes, and corresponding robotic device
US9198821B2 (en) * 2011-09-28 2015-12-01 Northeastern University Lower extremity exoskeleton for gait retraining
EP3791834B1 (en) * 2012-09-17 2026-03-04 President And Fellows Of Harvard College Soft exosuit for assistance with human motion
MX2015011653A (es) * 2013-03-14 2015-12-16 Ekso Bionics Inc Sistema ortopedico motorizado de rehabilitacion cooperativa sobre el suelo.
FR3018681B1 (fr) 2014-03-21 2016-04-15 Wandercraft Exosquelette comprenant une structure de bassin
JP2017514640A (ja) 2014-03-21 2017-06-08 ワンダークラフト 足構造を有するエクソスケルトン
US10406676B2 (en) * 2014-05-06 2019-09-10 Sarcos Lc Energy recovering legged robotic device
CN105538313B (zh) * 2016-03-14 2018-02-02 中国计量大学 一种工业机器人激光轨迹检测装置
FR3061653B1 (fr) * 2017-01-10 2019-05-31 Wandercraft Procede de mise en mouvement d'un exosquelette
FR3068236B1 (fr) * 2017-06-29 2019-07-26 Wandercraft Procede de mise en mouvement d'un exosquelette
US20190159954A1 (en) * 2017-11-28 2019-05-30 Steering Solutions Ip Holding Corporation Biomechanical assistive device for collecting clinical data
DE102018211050A1 (de) * 2018-07-04 2020-01-09 Audi Ag Verfahren zum Betreiben eines Exoskelett-System, Exoskelett-System sowie zentrale Servereinheit
WO2020133288A1 (zh) * 2018-12-28 2020-07-02 深圳市优必选科技有限公司 一种双足机器人步态控制方法以及双足机器人

Also Published As

Publication number Publication date
CN116635192A (zh) 2023-08-22
KR20230120651A (ko) 2023-08-17
EP4263146A1 (fr) 2023-10-25
WO2022129784A1 (fr) 2022-06-23
FR3117393B1 (fr) 2023-01-06
EP4263146B1 (fr) 2024-12-18
EP4263146C0 (fr) 2024-12-18
CA3204302A1 (fr) 2022-06-23
US20240000648A1 (en) 2024-01-04
JP7790018B2 (ja) 2025-12-23
FR3117393A1 (fr) 2022-06-17
JP2024502726A (ja) 2024-01-23

Similar Documents

Publication Publication Date Title
ES3014079T3 (en) Method for moving an exoskeleton
US8977397B2 (en) Method for controlling gait of robot
KR101004820B1 (ko) 이동체 장치, 이동체 장치의 제어 방법, 로봇 장치, 로봇 장치의 동작 제어 방법
JP4513320B2 (ja) ロボット装置、並びにロボット装置の運動制御方法
EP2017042B1 (en) Motion controller and motion control method for legged walking robot, and robot apparatus
ES3058364T3 (es) Procedimiento para poner en movimiento un exoesqueleto
CN111674486A (zh) 双足机器人稳定步行控制方法、装置、设备及可读介质
Horvat et al. Inverse kinematics and reflex based controller for body-limb coordination of a salamander-like robot walking on uneven terrain
WO2010122705A1 (ja) ロボット制御装置、ロボット制御方法、及び脚式ロボット
Albert et al. Analytic path planning algorithms for bipedal robots without a trunk
Wang et al. DRC-hubo walking on rough terrains
WO2004033160A1 (ja) ロボット装置の動作制御装置及び動作制御方法
Kanamiya et al. Ankle and hip balance control strategies with transitions
Dosunmu-Ogunbi et al. Stair climbing using the angular momentum linear inverted pendulum model and model predictive control
Bachega et al. Flexibility in hexapod robots: Exploring mobility of the body
CN105607632B (zh) 一种3d欠驱动双足机器人跳跃运动的驱动控制方法
JP3674779B2 (ja) 脚式移動ロボットのための動作制御装置及び動作制御方法、並びにロボット装置
JP4587699B2 (ja) ロボット装置及びその制御方法
Komatsu et al. Dynamic walking and running of a bipedal robot using hybrid central pattern generator method
KR20250060284A (ko) 이족 보행 외골격의 안정화된 이동을 위한 방법
Al-Jarrah et al. Trapezoidal fuzzy control for locomotion of bipedal robot on uneven environments
He et al. A Novel Telelocomotion Framework with CoM Estimation for Scalable Locomotion on Humanoid Robots
JP4518615B2 (ja) 脚式移動ロボットの動作制御システム及び動作制御方法
Kwon et al. Adaptive dynamic locomotion of quadrupedal robots with semicircular feet on uneven terrain
Nenchev et al. Experimental validation of ankle and hip strategies for balance recovery with a biped subjected to an impact