Techniques for calibration and control of robotized orthoses
Machine learning models trained with sensor data enhance the synchronization of robotized orthoses, addressing the unsynchronized assistance issue by predicting patient movement and delivering timely support, improving mobility and safety.
Patent Information
- Application Number
- PCT/US2025/043585
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-08-27
- Filing Date
- 2025-08-26
- Publication Date
- 2026-03-05
AI Technical Summary
Existing robotized orthoses lack synchronization between the device and the patient, leading to poor kinematic and dynamic synchronicity, discomfort, and potential harm due to unsynchronized assistance, which is often addressed through pre-programmed algorithms or simple feedback mechanisms.
Utilizing machine learning models trained with sensor data to predict patient movement and provide synchronized assistance by anticipating kinematic behavior, enhancing the adaptability and comfort of robotized orthoses.
The solution improves dynamic and kinematic synchronicity between the orthosis and the patient, providing comfortable and effective support by delivering the right amount of energy at the right time, thereby enhancing mobility and safety.
Smart Images

Figure US2025043585_05032026_PF_FP_ABST
Abstract
Description
Attorney Docket No. 223399-010201 / PCTElectronic Filing Date: August 26, 2025TECHNIQUES FOR CALIBRATION AND CONTROL OF ROBOTIZED ORTHOSESCROSS-REFERENCE TO RELATED APPLICATIONS
[0001] The present application claims the benefit under 35 U.S. C. § 119(e) of U.S. Provisional Patent Application No. 63 / 687,567, filed August 27, 2024, titled “Calibration and Control of Orthoses Using Kinematic Data,” and claims the benefit under 35 U.S.C. § 119(e) of U.S. Provisional Patent Application No. 63 / 687,590, filed August 27, 2024, titled “Calibration and Control of Orthoses Through Humanoid Simulation,” each of which is hereby incorporated by reference in its entirety.BACKGROUND
[0002] Patients with lower-limb impairments, such as those caused by muscular dystrophy or other neurological disorders, face significant challenges in performing daily activities that require walking and balance. These impairments often result in reduced muscle strength, poor coordination, and an increased risk of falls. The quality of life for these patients is affected, as they struggle with mobility and independence, which can lead to further physical and psychological issues. Rehabilitation and assistive technologies, such as robotized orthoses, can play a critical role in addressing these challenges by providing mechanical support and improving mobility.SUMMARY
[0003] According to some aspects, the techniques described herein relate to an orthosis including: an actuator configured to control a position of a joint of the orthosis; a sensor configured to generate sensor data indicative of the position of the joint; and a processor configured to: determine a target motion of the joint based on the sensor data; determine a current motion of the joint based on the sensor data; and operate the actuator to control the- 1 -ACTIVE 714006589v3Attorney Docket No. 223399-010201 / PCTElectronic Filing Date: August 26, 2025 position of the joint based on a difference between the target motion of the joint and the current motion of the joint.
[0004] According to some aspects, the techniques described herein relate to at least one computer readable medium including instructions that, when executed by a processor, perform a method including: determining a target motion of a joint of an orthosis based on sensor data generated by a sensor, the sensor data being indicative of a position of the joint; determining a current motion of the joint based on the sensor data; and operating an actuator to control a position of the joint of the orthosis based on a difference between the target motion of the joint and the current motion of the joint.
[0005] The foregoing apparatus and method embodiments may be implemented with any suitable combination of aspects, features, and acts described above or in further detail below. These and other aspects, embodiments, and features of the present teachings can be more fully understood from the following description in conjunction with the accompanying drawings.BRIEF DESCRIPTION OF DRAWINGS
[0006] Various aspects and embodiments will be described with reference to the following figures. It should be appreciated that the figures are not necessarily drawn to scale. In the drawings, each identical or nearly identical component that is illustrated in various figures is represented by a like numeral. For purposes of clarity, not every component may be labeled in every drawing.
[0007] FIG. 1 depicts an illustrative example of a system 100 which includes four sensors coupled to a subject’s leg, according to some embodiments;
[0008] FIG. 2 is a flowchart of a method of gathering such training data, according to some embodiments;
[0009] FIG. 3 depicts a process of training a machine learning model based on test subject data, according to some embodiments;
[0010] FIG. 4 depicts a system for controlling one or more orthoses, according to some embodiments;- 2 -ACTIVE 714006589v3Attorney Docket No. 223399-010201 / PCTElectronic Filing Date: August 26, 2025
[0011] FIG. 5 depicts an orthosis controllable via the system of FIG. 4, according to some embodiments;
[0012] FIG. 6 depicts a process of training a machine learning model based on patientspecific data, according to some embodiments;
[0013] FIG. 7 depicts a user interface suitable for adjusting patient-specific robotized orthosis settings, according to some embodiments; and
[0014] FIG. 8 illustrates an example of a computing system environment on which aspects of the disclosure may be implemented.DETAILED DESCRIPTION
[0015] Typical solutions for lower-limb impairments include various forms of orthoses and rehabilitation strategies. Some orthoses are passive devices designed to provide structural support, but they lack adaptability and often do not compensate for the dynamic nature of human movement. More advanced robotized orthoses, such as exoskeletons, can actively assist in movement by providing additional torque and support at specific joints. These devices are typically controlled by pre-programmed algorithms or simple feedback mechanisms. As used herein, a “robotized orthosis” refers to any orthosis that comprises one or more actuators, such as motors, that may be operated to move one or more portions of the orthosis.
[0016] However, some robotized orthoses lack synchronization between the device and the patient. Indeed, the synchronization between the patient requested power and the device response is often poor due to device response backlash, frictions, etc. This can lead to poor patient adherence to the device and the device may be abandoned because of this problem. Moreover, the kinematic signature of a patient’s gait may be specific to each patient, as well as the way the patient climbs stairs or performs other daily motion activities (e.g., walking, ascending slope or stairs, descending slope or stairs, sit-to-stand, stand-to-sit, etc.). As such, a patient-specific control calibration describing the specific kinematic signature of each patient may be desirable when equipping a patient with a robotized orthosis. However, some robotized orthoses are controlled by pre-programmed algorithms- 3 -ACTIVE 714006589v3Attorney Docket No. 223399-010201 / PCTElectronic Filing Date: August 26, 2025 or simple feedback mechanisms, and these control strategies can lead to dynamic and kinematic non-synchronicity (e.g., the wrong level of assistance at the wrong time, a time response delay, etc.) between the robotized orthoses and the patient. This lack of dynamic and kinematic synchronicity could lead to discomfort, unbalance and even harm to the patient.
[0017] In some cases, calibration of a controller of a robotized orthosis according to the kinematic signature of a specific patient may be performed during an initial trial phase for the patient with an application engineer in charge of the control calibration. This control calibration may be iterative, requiring a manual process of trial and error, can be time consuming, and the final calibration can produce an unpredictable comfort level for the user and well as an unpredictable dynamic and kinematic synchronicity (e.g., more or less an acceptable amount of energy at with a more or less acceptable delay) between the robotized orthoses and the patient.
[0018] Described herein are various embodiments of techniques for controlling a robotized orthosis based on one or more machine learning models trained with input data produced by sensors during motion of test subjects. Examples of such techniques include collecting raw data and / or post-processed spatiotemporal and kinematics data of a test subject’s limbs using sensors while the subject is performing motion activities.
[0019] As referred to herein, “raw data” refers to data that includes data output by one or more sensors (e.g., raw data may include direct sensor outputs, or may include direct sensor outputs supplemented with associated time stamps), and may also be referred to herein as “sensor data.” Raw data may be post-processed to generate spatiotemporal and / or kinematics data that are derived in some way, at least in part, from the raw data.Accordingly, a collected data set may include any suitable combination of raw data, spatiotemporal data, and / or and kinematics data. Some techniques described herein include generating one or more machine learning models from a data set of raw data, spatiotemporal data and / or kinematic data to generate a custom control calibration for a given patient robotized orthosis. Some such techniques provide for customization and improvement of- 4 -ACTIVE 714006589v3Attorney Docket No. 223399-010201 / PCTElectronic Filing Date: August 26, 2025 robotized orthoses, enhancing mobility for patients with conditions like muscular dystrophy, and offers versatile applications in complex environments for daily life tasks.
[0020] The prediction of kinematic behavior of a patient may allow a robotized orthosis to compensate for backlash and / or a slow response by anticipating the motion of the patient. For instance, input data comprising raw data (e.g., position, velocity, and / or acceleration of a given spatial reference), and post-processed spatiotemporal and kinematic data, captured from a patient may be provided as input to a trained machine learning model. The machine learning model(s) may quickly predict, based on the input data, how the patient will move and provide power to the robotized orthosis to support this movement. As a result, the robotized orthosis may be more comfortable for the patient to use.
[0021] The techniques described herein may include a patient-oriented controller and / or control calibration of a robotized orthoses using evolutive Al models based on a wireless sensor network. The techniques may include collecting kinematics data of a patient’s limbs using dedicated wireless sensors while the patient performs motion activities (e.g., the data collection may focus on two limbs of a joint or other articulation that may be controlled by a robotized orthosis). The techniques may include generating and applying one or more machine learning models, based on a large database of collected kinematics data, to provide a direct custom patient-oriented controller and / or a control calibration of a given patient’s robotized orthoses. Any one or more of the techniques described herein may allow efficient generation of an improved dynamic and kinematic synchronicity between the robotized orthoses and the patient (e.g., to deliver to the patient the right amount of energy at the right time).
[0022] According to some techniques described herein, input data from test subjects may be gathered using wireless and / or wired sensors that capture motion and / or input data during motion activities performed by the subjects. For instance, a plurality of test subjects may each perform motion activities while wearing one or more sensors that measure raw data (position, velocity, and / or acceleration of a given spatial reference) of one or more of their joints during the activities. In some cases, the test subjects may wear a particular robotized orthosis while gathering input data for training the machine learning model that is- 5 -ACTIVE 714006589v3Attorney Docket No. 223399-010201 / PCTElectronic Filing Date: August 26, 2025 also worn by a patient that utilizes the trained machine learning model to predict that patient’s movement. This may be beneficial in that the sensor placement (spatial reference) and typical motions using the robotized orthosis may be the same during training as during later use by the patient.
[0023] Following below are more detailed descriptions of various concepts related to, and embodiments of, techniques for controlling a robotized orthosis based on one or more machine learning models. It should be appreciated that various aspects described herein may be implemented in any of numerous ways. Examples of specific implementations are provided herein for illustrative purposes only. In addition, the various aspects described in the embodiments below may be used alone or in any combination, and are not limited to the combinations explicitly described herein.
[0024] FIG. 1 depicts an illustrative example of a system 100 which includes four sensors coupled to a subject’s leg. As described further below, raw data from one or more sensors may be gathered by test subjects that have the sensor(s) attached to their body in order to gather training data for a machine learning model.
[0025] In the example of FIG. 1, the sensors 101, 102, 103 and 104 each generate sensor data 110 indicative of the position and / or movement (e.g., velocity and / or acceleration) of a part of the leg. For instance, the thigh sensor 102 may indicate a position of the thigh. The sensor data from multiple sensors may together be indicative of a position of a joint of the leg. For example, the sensor data from the thigh sensor 102 and the tibia sensor 103 may together indicate a position (e.g., rotational angle) of the knee joint 109. Additionally, or alternatively, one or more sensors that are directly coupled to a joint and configured to measure an angle (whether relative or absolute) of the joint may be included. For instance, a sensor may be coupled to the knee and configured to measure the relative or absolute angle between the tibia and thigh (e.g., a rotational encoder).
[0026] In some embodiments, a plurality of sensors may be positioned around a given joint to provide at least two spatial references of a subject so that sensor data may be gathered on both sides of the articulation. For example, one sensor may be arranged on or- 6 -ACTIVE 714006589v3Attorney Docket No. 223399-010201 / PCTElectronic Filing Date: August 26, 2025 proximate to the tibia, and another sensor may be arranged on or proximate to the thigh, to produce raw data for the knee articulation of the test subject. Sensors may be placed around any number of articulations on a given test subject.
[0027] According to some embodiments, the sensors 101-104 may be, or may each comprise, an inertial measurement unit (IMU), an accelerometer, a tilt sensor, and / or a rotation angle sensor. Additionally, or alternatively, an orthosis may comprise one or more stepper motors from which an angle may be derived through knowledge of the motor’s known step angle. As such, while a stepper motor may not be generally considered a sensor, in the context of the present application, a stepper motor may be considered a “sensor” configured to measure an angle of a joint. Any of the above-mentioned sensors may also be used to measure position of a joint in embodiments in which an orthosis is coupled to the leg (and / or forms part of the leg).
[0028] In some embodiments, the sensors 101-104 each produce time-stamped raw data indicating any one or more of: linear acceleration along three axes; rotation speed and position about three axes; angular data for the articulation's angular position; and magnetic field data along the three spatial axes. Magnetic field data may include measurements of the magnetic field in the environment, such as the Earth's magnetic field. Magnetic field data may be used to determine orientation and heading, similar to a digital compass, and may be provided as part of an IMU. Raw data from each sensor can be collected at a sample rate between, for example, 50 Hz and 1000Hz (or preferably between 50Hz and 200Hz, such as 100Hz). According to some embodiments, the sensors are or include inertial units that provide each of acceleration, angular speed, orientation, and magnetic field data along the three spatial axes, as well as optical motion capture markers. In some cases, motion capture data can be used to build input data, or to supplement input data, similar to input data generated and / or derived from data produced from sensors such as inertial units.
[0029] While four sensors are depicted in the example of FIG. 1, any number and type(s) of sensors may be coupled to the leg during data gathering or during operation of an orthosis.- 7 -ACTIVE 714006589v3Attorney Docket No. 223399-010201 / PCTElectronic Filing Date: August 26, 2025
[0030] As described above, techniques are described herein for controlling a robotized orthosis based on one or more machine learning models trained with input data generated by sensors during motion of test subjects. FIG. 2 is a flowchart of a method of gathering such training data, according to some embodiments.
[0031] Method 200 includes act 202 in which raw data is gathered from a plurality of test subjects while those test subjects perform motion activities. One or more sensors may be coupled to each of the test subjects during these activities to generate the raw data (e.g., using the configured shown in FIG. 1, or any other suitable configuration of sensors).
[0032] In some embodiments, data generated during act 202 is indicative of a type of motion activity being performed (e.g., walking, walking along an ascending or descending slope, moving from sitting to standing or vice versa, climbing stairs, running, etc.) which may be generated from sensor data, or manually associated with the raw data generated while the test subject is instructed to perform this activity. During act 202, the raw data collected may describe the sensor’s kinematics during the activities.
[0033] In some embodiments, data generated during act 202 is indicative of a subphase of motion activity being performed, such as different points during a type of motion activity referenced above. For instance, a walking motion activity may include a stance subphase and an oscillation / flying sub-phase. Such data may be generated from sensor data, or manually associated with the raw data generated while the test subject is instructed to perform this activity. In some embodiments, data generated that is indicative of a sub-phase of a motion activity being performed may indicate a percentage of completion of a motion activity (e.g., the percentage completion when the motion activity is moving from standing to sitting, indicating at which point in this process the patient is currently positioned).
[0034] In some embodiments, data generated during act 202 is indicative of a transition between motion activities, such as a transition between a type of motion activity referenced above. For instance, a transition from walking on a flat surface to walking up an incline; or a transition from walking to stopping and sitting. Such data may be generated- 8 -ACTIVE 714006589v3Attorney Docket No. 223399-010201 / PCTElectronic Filing Date: August 26, 2025 from sensor data, or manually associated with the raw data generated while the test subject is instructed to perform this activity.
[0035] During performing of motion activities in act 202, sensor data generated by the one or more sensors may be collected via an acquisition station (e.g., an electronic unit, such as an electronic controller or computing device including at least one processor) and / or sent directly to at least one remotely- located computing device (sometimes referred to as “the cloud”) for processing, which may be performed using a computer, phone, or Wi-Fi module. In some embodiments, the sensor data is associated with times at which the data was produced to produce raw data. For example, the sensors may generate time-stamped raw data, or the acquisition station may supplement the raw data with time stamps.
[0036] Raw data may be produced from any number of test subjects in this way, although to meet performance metrics that may in some cases be desired data may be gathered from at least 10 test subjects, or at least 100 test subjects or at least 1000 test subjects.
[0037] In some cases, a single sensor can be equipped on a test subject to gather raw data and post-processed spatiotemporal and kinematic data for a particular articulation. For instance, for some limbs like feet, only a single sensor may be placed on the feet and raw data gathered from this single sensor to calculate spatiotemporal and kinematic data of the foot (e.g., ankle) articulation.
[0038] In act 204, kinematic and / or spatiotemporal data is generated based on raw data generated in act 202. Optionally, act 204 may comprise post-processing steps prior to generating the kinematic and / or spatiotemporal data. For example, act 204 may comprise filtering and / or re-sampling of the raw data prior to generating the kinematic and / or spatiotemporal data. In some embodiments, act 204 may comprise post-processing of the kinematic and / or spatiotemporal data generated in act 204.
[0039] In some embodiments, act 204 comprising generating kinematic data from the raw data generated in act 202. The kinematic data may be associated with a type of motion activity, a sub-phase of a motion activity and / or a transition between motion activities as- 9 -ACTIVE 714006589v3Attorney Docket No. 223399-010201 / PCTElectronic Filing Date: August 26, 2025 described above. Kinematic data may include, though is not limited to, position (e.g., angular and / or linear), velocity or speed (e.g., angular and / or linear), acceleration (e.g., angular and / or linear) and / or a combination thereof.
[0040] In some embodiments, act 204 comprising generating spatiotemporal data from the raw data generated in act 202. The spatiotemporal data may be associated with a type of motion activity, a sub-phase of a motion activity and / or a transition between motion activities as described above. Spatiotemporal data may include, though is not limited to, walking speed (e.g., in km / h), walking velocity (e.g., as a vector), stride length (e.g., in meters), stance phase time (e.g., in seconds), swing phase time (e.g., in seconds), cadence (e.g., in steps / min), and temporal symmetry (e.g., in percent).
[0041] In some embodiments, spatiotemporal data is generated using a machine learning model previously trained to predict spatiotemporal data. For example, raw data may be used as training data to train a machine learning model that predicts the spatiotemporal data of a subject.
[0042] In some embodiments, spatiotemporal data is generated from mathematical operations performed upon raw data generated from the sensors in act 202.
[0043] The collected kinematic and / or spatiotemporal data may thereby be collected with any desired motion activity, motion activity sub-phase and / or motion activity transition data to produce a dataset describing the motion of a test subject.
[0044] In act 206, a machine learning model is trained based on the kinematic and / or spatiotemporal data generated in act 204. The training data for the training process may include, as input data, the raw data gathered in act 202 and / or any of the kinematic and / or spatiotemporal data generated in act 204. The training outputs for the training process may include, as output data from the machine learning model, the future acceleration (s) and / or speed(s) and / or position(s) of a joint (e.g., expressed as a three dimensional position, distance and / or vector), a type of motion activity and / or sub-type of motion activity being performed and / or a type of motion activity transition being performed. This process is also shown in FIG. 3, according to some embodiments, with input data kinematic data 301,10 -ACTIVE 714006589v3Attorney Docket No. 223399-010201 / PCTElectronic Filing Date: August 26, 2025 spatiotemporal data 302 and raw data 303; and output data of future joint position(s), speed(s) and / or acceleration s) 331, a type of motion activity and / or sub-type of motion activity 332, and a type of motion activity transition 333.
[0045] In some embodiments, multiple machine learning models may be trained in act 204 to each generate one or more of the outputs 331, 332 and / or 333, in any suitable combination. For example, a first machine learning model may be trained some or all of the kinematic and / or spatiotemporal data 301 and 302 generated in act 204 to produce a plurality of predicted joint acceleration(s) and / or speed(s) and / or position(s) 331, and a second machine learning model may be trained on some or all of the kinematic and / or spatiotemporal data 301 and 302 generated in act 204 to produce a predicted type of motion activity and / or sub-type of motion activity 332. During operation of an orthosis in this example, both of these models may be operated with the same or different kinematic and / or spatiotemporal data to generate these different outputs as guidance for operating the orthosis. Optionally, a third machine learning model may also be trained on some or all of the kinematic and / or spatiotemporal data 301 and 302 generated in act 204 to produce a predicted type of motion activity transition 333. Such a third machine learning model may be operated, during operation of an orthosis, with the same or different kinematic and / or spatiotemporal data as the first or second machine learning models to generate this output.
[0046] For instance, the raw data gathered in act 202 and / or any of the kinematic and / or spatiotemporal data 301 and 302 generated in act 204, whether post-processed or not, describing kinematic data from around a joint may be used as training data to train at least one machine learning model that predicts the kinematics of the joint. As one illustrative example, an input dataset may comprise two input vectors: a vector of joint angle values (e.g., a 1x30 vector comprising the most recent 30 joint angle measurements) and a vector comprising spatiotemporal data associated with the recording of the test subject’s activity and generated in act 204 (e.g., a 1x6 vector comprising a walking speed, a stride length, a stance phase time, a swing phase time, a cadence and a temporal symmetry). An output dataset may comprise a vector of subsequent joint angle values (e.g., a 1x20 vector comprising the actual next 20 joint angle values). Accordingly, the machine learning model11ACTIVE 714006589v3Attorney Docket No. 223399-010201 / PCTElectronic Filing Date: August 26, 2025 will be trained to predict subsequent joint angle values. During training, the predicted and training outputs may for instance be compared by calculating the Mean Absolute Error (MAE), and updating parameters of the model based on the MAE to converge to a more accurate solution.
[0047] As another example, the raw data gathered in act 202 and / or any of the kinematic and / or spatiotemporal data generated in act 204, whether post-processed or not, describing kinematic data from around a joint may be used as training data to train at least one machine learning model that predicts a type of motion activity currently being performed.
[0048] According to some embodiments, the machine learning model 310 is configured as a Long Short-Term Memory (LSTM) network, which is a type of recurrent neural network (RNN). LSTMs are equipped with gating mechanisms that retain information over long sequences while discarding irrelevant information, effectively addressing limitations that classical RNNs may have in some scenarios in managing longterm dependencies, though in some circumstances an RNN could be used. Alternative architectures for the machine learning model may include Standard RNN (Recurrent Neural Network) or GRU (Gated Recurrent Unit). In some embodiments, LSTM layers may use a ReLU (Rectified Linear Unit) activation function.
[0049] The one or more trained machine learning models generated in act 206 may be applied within one or more robotized orthoses equipped by a patient to predict the kinematics of the patient’s joint articulation(s) based on raw data produced by sensors installed on one or more robotized orthoses. This process is described in more detail below, and allows an orthosis to be controlled with a proper amount of energy and at the right time to properly support the patient’s movement.
[0050] FIG. 4 depicts a system for controlling one or more orthoses, according to some embodiments. System 400 comprises a processor 410 configured to perform functions 411, 412, 413, 414 and 415 (and optionally function 416), and which may be provided on12 -ACTIVE 714006589v3Attorney Docket No. 223399-010201 / PCTElectronic Filing Date: August 26, 2025 board an orthosis to control orthosis motorizations 421 and 423 based on sensor data received from orthosis sensors 422, 424 and 426.
[0051] In operation of an orthosis that comprises system 400, an example of which is shown in FIG. 5 and described further below, the processor 410 receives sensor data, which is provided to a trained machine learning model 411 (e.g., a model 310 generated as described above in the method of FIG. 2). Optionally, kinematic and / or spatiotemporal data is generated by the processor in operation 416 and provided to the machine learning model 411 (e.g., if the model was trained on kinematic and / or spatiotemporal data as described above in relation to FIGs. 2-3). Based on operations performed by the processor 410, which are described below, an actuator controller 415 generate control signals 419 to control one or more actuators 420, and thereby operate orthosis structures 421 and / or 423. The orthosis includes sensors 422, 424 and 426, which are mounted or otherwise coupled to some part of the orthosis and configured to generate sensor data indicative of the position of one or more joints of the orthosis. In the example of FIG. 4, the orthosis structures 421 and 423 are each configured to be actuatable (i.e., movable in some manner through operation of actuator(s) 420). In some embodiments, either or both of the orthosis structures 421 and 423 may represents joints of the orthosis.
[0052] In the example of FIG. 4, the trajectory assistance controller 413 is configured to receive data output from the machine learning model 411 and generate target motion 414 of the orthosis structures 421 and / or 423. Because the machine learning model 411 has been trained based on the behavior of many test subjects, the model can predict a desired movement behavior of the wearer of the orthosis that comprises system 400. If the actual movement behavior of the orthosis, which can be determined from the sensor data produced by the sensors 422, 424 and 426, differs from the target motion 414, the actuator controller 415 can operate the actuator(s) 420 to supply additional motion to compensate for that difference, and ideally cause the wearer to move through their desired motion with support from the orthosis.
[0053] Optionally, in the example of FIG. 4, the processor 410 may determine kinematic and / or spatiotemporal data 416 based on the sensor data 440 received from the- 13 -ACTIVE 714006589v3Attorney Docket No. 223399-010201 / PCTElectronic Filing Date: August 26, 2025 sensors 422, 424 and / or 426. Techniques for generating kinematic and / or spatiotemporal data from sensor data are described above.
[0054] In the example of FIG. 4, the inputs to the trajectory assistance controller 413 may include any one or more outputs from the machine learning model 411. For instance, any of the outputs described above, which may be produced from a single machine learning model or multiple machine learning models, may be input to the trajectory assistance controller 413 (e.g., the future joint position(s), speed(s) and / or acceleration(s) 331, type of motion activity and / or sub-type of motion activity 332 and / or motion activity transition 333).
[0055] According to some embodiments, the trajectory assistance controller 413 is configured with one or more lookup tables, which allows the trajectory assistance controller 413 to obtain target motion 414 based on one or more of the inputs to the trajectory assistance controller. In some embodiments, trajectory assistance controller 413 may select a lookup table from among a plurality of lookup tables based on one or more of the inputs to the trajectory assistance controller. For example, a type of motion activity generated by the machine learning model 411 may be provided to the trajectory assistance controller, which selects a lookup table corresponding to that type of motion activity (e.g., a different lookup table for walking versus climbing stairs, etc.). Other inputs to the trajectory assistance controller may then be used to look up the target motion 414 within the selected lookup table.
[0056] According to some embodiments, the target motion 414 may include any type or types of motion that the actuator(s) 420 are capable of producing by actuating the orthosis structures 421 and / or 423. Target motion 414 may include, for instance, any combination of position, speed and / or acceleration to generate by operating the actuator(s) 420. Any such position, speed and / or acceleration may refer to linear or rotational motion, for instance. Additionally, or alternatively, the target motion 414 may indicate a desired force to be applied at or by the orthosis structure. For instance, when an orthosis structure is a joint, the target motion 414 may comprise a target torque to be applied to the joint.14 -ACTIVE 714006589v3Attorney Docket No. 223399-010201 / PCTElectronic Filing Date: August 26, 2025
[0057] In the example of FIG. 4, robotized orthosis settings 412 may be accessed by the trajectory assistance controller 413 in generating the target motion 414. The robotized orthosis settings 412 may, in some embodiments, comprise patient-specific settings that allow the trajectory assistance controller to generate target motion 414 that is customized for that patient. Examples of patient-specific configurations in which the machine learning model 411 has been trained for a particular patient are described below.
[0058] In some embodiments, the robotized orthosis settings 412 may provide weights that the trajectory assistance controller 413 applied to one or more of the outputs of the ML Model 411 prior to the trajectory assistance controller accessing a lookup table or otherwise determining the target motion 414. For example, for some patients, a position of a particular joint may be a more relevant parameter compared with the general population represented by the machine learning model. In some embodiments, weights supplied by the robotized orthosis settings 412 may be selected, generated or otherwise determined by the trajectory assistance controller 413 based on one or more outputs of the machine learning model 411. For instance, the weights applied to one or more outputs of the machine learning model may be different when the machine learning model indicates that the current motion activity is walking than when the machine learning model indicates that the current motion activity is climbing stairs. Again, these weights may be patient-specific, allowing the trajectory assistance controller 413 to determine a desired patient-specific operation of the orthosis.
[0059] In the example of FIG. 4, actuator controller 415 is configured to receive, as inputs, the target motion 414 generated by trajectory assistance controller 413, and the sensor data 440 from one or more of the sensors 422, 424 and 426, and to generate control signal(s) 419 for the actuator(s) 420 based on those inputs. In some embodiments, actuator controller 415 is configured to determine a difference between the target motion 414 and a current motion derived from the sensor data 440. For instance, the target motion 414 may comprise a target torque for a particular joint, and the actuator controller 415 may determine a current torque for that joint from the sensor data 440 (which may in some cases be derived from data generated by some, but not all, of the sensors in the orthosis).15 -ACTIVE 714006589v3Attorney Docket No. 223399-010201 / PCTElectronic Filing Date: August 26, 2025
[0060] In some embodiments, the actuator controller 415 may be configured to generate control signal(s) 419 for different actuators 420, which in turn may be associated with different orthosis structures. For instance, the actuator controller 415 may receive sensor data 422 and 424, which relate to orthosis structure 421 (e.g., the sensors are thigh and tibia sensors, and the orthosis structure is a knee joint). The actuator control 415 may then, based on a target motion 414 for the knee joint, generate control signals to control an actuator that applies movement (e.g., torque) to the knee joint. In addition, the actuator control may receive sensor data 424 and 426, which relate to orthosis structure 423 (e.g., the sensors are tibia and foot sensors, and the orthosis structure is a hip joint). The actuator controller 415 may then, based on a target motion 414 for the hip joint, generate control signals to control an actuator that applies movement (e.g., torque) to the hip joint. Other suitable combinations of sensor input and orthosis structure control may also be envisioned.
[0061] According to some embodiments, the actuator(s) 420 may comprise any suitable actuator(s) for producing linear, rotary, angular and / or orbital motion. For instance, the actuator(s) 420 may include one or more of: stepper motors, servo motors, linear actuators, or combinations thereof. In some cases, a single orthosis structure may be actuated by multiple of the actuator(s) 420.
[0062] The processor 410 may for instance be implemented as a general purpose processor (e.g., coupled to one or more non-transitory computer readable storage media as described below in relation to FIG. N), or as a customized processor or other type of controller, including an Application-Specific Integrated Circuit (ASIC) or Field Programmable Gate Array (FPGA). As such, each of the operations that the processor 410 is configured to perform, which are shown in FIG. 4 and described below, may be implemented using any suitable combination of hardware and / or software.
[0063] While three sensors and two orthosis structures are depicted in the example of FIG. 4, any number and type(s) of sensors may be coupled to the leg and configured to generate data during operation of an orthosis; and any number and type(s) of actuatable orthosis structures may be provided.16 -ACTIVE 714006589v3Attorney Docket No. 223399-010201 / PCTElectronic Filing Date: August 26, 2025
[0064] FIG. 5 depicts an illustrative orthosis which may be controlled using system 400 shown in FIG. 4, according to some embodiments. In the example of FIG. 5, an orthosis is attached to the leg of a patient (or may itself form part or all of the leg of the patient). The orthosis comprises processor 410, sensors that provide sensor data on the position of joints of the orthosis, and joint motorizations that may be actuated by the processor to control the orthosis. In particular, the sensors 522, 524 and 526 provide sensor data relating to the thigh, the tibia and the foot, respectively, from which the position of the knee joint and hip joint may be inferred. The processor 410 may, as described above, generate control signals to control actuators associated with the hip joint motorization 521 and knee joint motorization 523.
[0065] According to some embodiments, the trained machine learning model 411 may be adapted from machine learning model 310 based on a specific patient of an orthosis that includes system 400. As one example, FIG. 6 depicts a process of adapting a previously trained machine learning model 510 based on kinematic data 501, spatiotemporal data 502 and / or sensor data 503 which are gathered for a specific patient. The previously trained machine learning model may have been trained using training data gathered from a number of test subjects, and may therefore be described herein as being a “general” machine learning model. The result of the process shown in FIG. 6 is a patient-specific machine learning model that may be utilized to control an orthosis (e.g., can be utilized as machine learning model 411 in system 400).
[0066] In the example of FIG. 6, the input data 501, 502, and 503 may be selected from among those input data 301, 302 and 303, respectively, shown in FIG. 3, and may be generated in any of the ways described above. In some embodiments, an input to the machine learning model 510 during patient-specific training may be selected as a combination (e.g., linear combination) of patient-specific input data and input data produced from test subjects in generating the general machine learning model 310. Utilizing the data from test subjects in addition to input data from a particular patient may mitigate or avoid overfitting a machine learning model to the patient data. Techniques such as recursive least squares (RLS) with a forgetting factor may be applied to train the patient-specific ML mode,17 -ACTIVE 714006589v3Attorney Docket No. 223399-010201 / PCTElectronic Filing Date: August 26, 2025 for example. As with machine learning model 310, the patient-specific machine learning model may be configured as an LSTM network as described above.
[0067] In some embodiments, the patient's morphological data 504, such as limb length, limb mass, orthopedic deformation, etc. may be collected from the patient and utilized as an input when training the patient-specific machine learning model 510. In this approach, the model may be trained to tune the assistance settings of a robotized orthosis, and thereby adjusts the assistive / resistive strategy for the patient's joint.
[0068] In some embodiments, the custom assistance settings can be reviewed by a clinician (e.g., physician, nurse practitioner, physical therapist, or other professional) before being implemented in the robotized orthosis’ controller. If the clinician modifies the assistance settings before implementation, the clinician-modification is sent to the cloud to further adapt and train the custom machine learning model to refine assistance settings. This allows an orthosis to be controlled with a proper amount of energy and at the right time to properly support the patient’s movement.
[0069] In the example of FIG. 6, the training data 531, 532, and 533 may be generated via any of the techniques described above for input data 301, 302 and 303, respectively, but unlike data 301, 302 and 303, are measured for a particular patient rather than from a group of test subjects.
[0070] In some embodiments, the robotized orthosis settings 412 in system 400 may be determined, whether through training of a machine learning model or otherwise, based on patient- specific data. This process may be performed in addition to, or as an alternative to, modification of the general machine learning model 310. For example, the trained machine learning model 411 may in some cases be trained as a general model and the robotized orthosis settings 412 are patient-specific; or the trained machine learning model 411 is trained as a patient-specific model (e.g., via the process shown in FIG. 6) and the robotized orthosis settings 412 may be patient-specific or general.
[0071] In some embodiments, the robotized orthosis settings 412 may be adjusted by a physician or other individual by accessing a user interface such as that shown in FIG. 7. In18 -ACTIVE 714006589v3Attorney Docket No. 223399-010201 / PCTElectronic Filing Date: August 26, 2025 some embodiments, settings configured as shown may be supplied for further training of a patient-specific machine learning model.
[0072] In some embodiments, as an alternative, or addition, to the process of measuring live test subjects to generate training data in act 202, a model of test subject behavior may be developed, and sensor data generated from the model.
[0073] For example, motion capture data may be gathered for test subjects performing various motions and a physics-based simulation of humanoid movement is fit to the motion capture data. One or more machine learning models may then be trained to control the physics-based simulation to perform a given task while imitating the motion capture data. This may produce a general model of humanoid motion that in some examples may be applied to a patient by modifying the general model to reproduce the patient’s pathology, such as by limiting the extent to which a given joint is able to move. The modified model may then be trained to determine the manner in which a robotized orthosis worn by the patient should be operated, based on kinematic sensor data produced by the orthosis, to reproduce the behavior of the general model. During use, kinematic sensor data produced from the orthosis may be input to the resulting model to produces output indicating how to operate the orthosis to produce desired humanoid motion. These techniques provide for customization and improvement of robotized orthoses, enhancing mobility for patients with conditions like muscular dystrophy, and offers versatile applications in complex environments for daily life tasks.
[0074] According to some embodiments, by using motion capture (MOCAP) recordings of test subjects with various heights and weights, the following techniques may create realistic movement simulations that capture the unique movements (e.g., gait patterns) and needs of individual patients. This enable the development of highly personalized control algorithms that can adapt to individual variations in movement. As described below, some techniques described below employ reinforcement learning techniques to train orthosis controllers that can dynamically adapt to different movement conditions (e.g., walking conditions) and tasks. Some such techniques can result in more natural and efficient assistance, which can improve the overall experience for patients.19 -ACTIVE 714006589v3Attorney Docket No. 223399-010201 / PCTElectronic Filing Date: August 26, 2025
[0075] According to some embodiments, some techniques described below include the capability to simulate complex, real- world environments (e.g., an apartment with stairs and various daily life tasks) and train controllers to handle these scenarios. The orthosis can thus in some circumstances provide more effective assistance in a wide range of everyday situations, enhancing the patient's independence and safety. According to some embodiments, by simulating various impairments and training controllers to compensate for specific deficits, some techniques described below can be used as a tool for rehabilitation. Some such techniques may allow therapists to design targeted interventions and track progress, providing valuable feedback for both patients and healthcare providers.
[0076] According to some embodiments, some techniques described below may encompass one or more of the following five aspects. First, a system and process for motion capture (MOCAP) data acquisition that gathers MOCAP data for different test subjects performing various tasks. Second, a simulation engine that performs a physics-based simulation of a humanoid model. Third, a data preparation system that converts the acquired MOCAP data to data relating to the humanoid model of the simulation engine. For example, the data preparation system may convert motion of MOCAP markers into motion of various points on the humanoid model (e.g., skeletal points), and / or may modify the humanoid model to match the size of the test subject in motion capture data. Fourth, a model training system for training a machine learning model using the data produced by the data preparation system. In particular, the model training system trains a general model using by executing one or more machine learning algorithms to reproduce the MOCAP data by outputting data indicative of the test subject’s joint positions. The general model thereby is trained to simulate a realistic humanoid in motion within the chosen simulation engine. The model training system then trains a patient-specific model based on the pathology of a particular patient, and using the general model, to determine the behavior of an orthosis necessary to produce desired behavior. In particular, the patient-specific model is trained so that it indicates how an orthosis controller should behave to compensate for the pathology introduced into the general model. Fifth, controllers of an orthosis are implemented to- 20 -ACTIVE 714006589v3Attorney Docket No. 223399-010201 / PCTElectronic Filing Date: August 26, 2025 produce the behavior determined by the patient-specific model, in response to sensor input from the orthosis. Some examples of these five aspects are described in further detail below.
[0077] With respect to the MOCAP data acquisition process, this process captures the precise movements of a subject, which can then be used to animate digital character models in a realistic manner. MOCAP systems typically use an array of cameras or sensors to track the movement of markers placed on the subject's body. These markers are strategically positioned on key anatomical points. As the subject moves, the cameras capture the position of each marker in three-dimensional space. The captured data is then processed to create a digital representation of the movement. A MOCAP data acquisition system may comprise multiple high-speed cameras, and reflective markers placed on key anatomical points of test subjects. As subjects perform various walking and daily life tasks, the cameras capture the three-dimensional positions of the markers, generating detailed kinematic data (e.g., positions, velocities, accelerations, etc.) In some cases, the MOCAP data acquisition system may utilize markers placed on the body. In one implementation the system comprise 6 cameras.
[0078] In some embodiments, test subjects may navigate over a mechanical installation, such as one that includes a staircase going up on one side, a turn and then a slope going down on the other side. Other possibilities for the MOCAP recordings are to use IMU-based (Inertial Measurement Unit) systems for motion capture, which involve placing wearable sensors on the subject's body to track movement. These systems are less intrusive and can be used in more natural environments compared to traditional MOCAP systems with cameras and markers.
[0079] With respect to the simulation engine, this provides a virtual environment where realistic human movements can be replicated and analyzed. These simulators implement the principles of physics, including rigid and flexible body dynamics, to accurately simulate the forces, torques, and motions experienced by the human body. Irrespective of the particular choice of simulator, a humanoid model is chosen to which the simulator is applied to simulate humanoid motion. Such models can range from- 21ACTIVE 714006589v3Attorney Docket No. 223399-010201 / PCTElectronic Filing Date: August 26, 2025 one with 16 degrees of freedom, or a more complex one such as one with 48 degrees of freedom. In some embodiments, a musculoskeletal model can be used.
[0080] With respect to the data preparation system, this system enforces consistency between the humanoid model and the data acquired by the MOCAP data acquisition system so that the humanoid model is matched to the test subject’s motions. This process may comprise one or more of the following steps:1. Convert MOCAP data in to skeleton data. The data acquired at the MOCAP phase (typically a set of 3D trajectories for a set of markers placed on the subject) may be converted in to a “skeletal trajectory “, which is the trajectory of a main body (typically the pelvis) and the values of the anatomical ‘joints’ across time.2. Modify the humanoid model so that anatomical segments and masses in simulation match the values of the test subject. For example, one or more of the following values are adapted: total mass of the humanoid model, length of the upper and lower arm segments, upper and lower leg segments, hip and shoulder width, and distance from pelvis to neck. These values may be adapted by directly modifying the segment values in the humanoid description file.3. Retarget the motion obtained by converting the MOCAP data to skeleton data, where the joint trajectories on the skeleton are mapped onto the joints of the humanoid model used in simulation.
[0081] Once the simulation environment and humanoid model are selected, and the data is ready, the next part of the process comprises operating the model training system to train a machine learning model using the data produced by the data preparation system. This comprises the following two phases. In phase 1, a machine learning model N1 is trained to reproduce the MOCAP data with the selected humanoid model; and in phase 2, an orthosis controller is trained for a given patient pathology, using the model Nl, to produce a second machine learning model N2. The trained model N2 can be executed to determine the desired behavior of the orthosis controller to compensate for the patient pathology. In some embodiments, the models Nl and N2 are, or comprise, neural networks.- 22 -ACTIVE 714006589v3Attorney Docket No. 223399-010201 / PCTElectronic Filing Date: August 26, 2025
[0082] According to some embodiments, phase 1 may comprise utilizing one or more reinforcement learning algorithms. Reinforcement learning (RL) is a type of machine learning where an agent learns to make decisions by performing actions (At) in an environment to maximize cumulative reward. The agent receives feedback in the form of rewards (R) or penalties based on its actions, guiding it to learn the optimal strategy over time. The state of the environment (St) is observed, and based on this state, the agent decides on the next action (At). After executing the action, the environment transitions to a new state (St+i), and the agent receives a new reward (R+i). RL is particularly effective for problems where the desired outcomes are not immediately clear, and it is used in various applications, from game playing to robotic control.
[0083] According to some embodiments, phase 1 may comprise training a reinforcement learning algorithm, such as Deep MIMIC or Adversarial Motion Priors (AMP), to reproduce MOCAP motions in the selected simulation environment. According to some embodiments, phase 1 may comprise training a Deep Mimic model, which is an advanced reinforcement learning algorithm designed to teach virtual characters to perform highly realistic and complex movements. By using motion capture data as a reference, Deep Mimic trains Al models to replicate these movements with high fidelity. This is one of the first published algorithm which was effective in reproducing a large array of motions in simulation with Reinforcement Learning, with different physical constraints and objectives.
[0084] According to some embodiments, phase 1 may comprise training an Adversarial Motion Priors (AMP) model to reproduce MOCAP motions in the selected simulation environment. AMP is a technique that utilizes generative adversarial networks (GANs) to create realistic motion sequences. This method involves training a generator network to produce plausible motion data while a discriminator network attempts to distinguish between real MOCAP data and generated data. The adversarial process refines the generator's output, resulting in highly realistic motion patterns that can be used to train orthotic controllers. One of the advantages of the AMP algorithm is that it provides a way to specify high-level objectives (going to a target, at a given speed for example) while letting- 23 -ACTIVE 714006589v3Attorney Docket No. 223399-010201 / PCTElectronic Filing Date: August 26, 2025 the algorithms choose within a motion dataset which motion to copy to reach perform this task.
[0085] In one approach, phase 1 comprises training an AMP implementation with the reward for the specific task of “reaching targets” configured as follows.
[0086] Target Location: In this task, the character's objective is to move to a target location x*. The goal gt= x'trecords the target location in the character's local coordinate frame. The task-reward is given by: 2 \ 0.5||x* - x[00t|| ) (max(0, v* - dt■ xctom)) )
[0087] Here, v* = 1 m / s specifies a minimum target speed at which the character should move towards the target, and the character will not be penalized for moving faster than this threshold, dj is a unit vector on the horizontal plane that points from the character's root to the target.
[0088] According to some embodiments, training the machine learning model N1 in phase 1 with an AMP algorithm utilizes the following ‘AMP observations’ which compare the MOCAP data to the simulated humanoid skeleton include one or more of pelvis height, pelvis rotation (e.g., encoded using two 3D vectors corresponding to the normal and tangent), pelvis velocity (e.g., in the pelvis local frame), pelvis angular velocity (e.g., in the pelvis local frame), rotation of each articulation joint (e.g., in the local frame), rotation speed of each articulation joint (e.g., in the local frame), position of the end effectors: left and right hands, left and right foot (e.g., in the pelvis local frame).
[0089] According to some embodiments, training the machine learning model N1 in phase 1 with an AMP algorithm utilizes as inputs to the model any one or more of the above ‘AMP observations’ and / or either or both of the current distance to the target and the angle at which the target is located in the pelvis local frame.
[0090] In some embodiments, the machine learning model N1 is configured to output a time series of values that are indicative of a joint angle, such as a value between -1 and 1- 24 -ACTIVE 714006589v3Attorney Docket No. 223399-010201 / PCTElectronic Filing Date: August 26, 2025 to indicate a joint angle between the minimum and maximum angle of the joint. These values may be converted into a ‘torque’ to be applied to each joint in the simulator at various times to produce the joint angles indicated by the values. For example, the output values may be converted into position targets for one or more controllers (e.g., PIDs) that control each actuator in the subject’s orthoses. Instead of joint angles, the output may comprise a time series of velocity targets for joints (which may also be converted into torques), or may directly generate the torque to be applied to a joint at various times. In any case, the outputs indicate how a subject’s joints move when performing a given task or motion. The position targets may for example be generated through affine transformation of the output values of machine learning model N 1.
[0091] Training the machine learning model Nl may involve training the model using any one or more types of terrain and / or scenarios. Once the machine learning model N1 is trained, it may be modified to reproduce a given pathology. For instance, where a patient has a problem performing flexion (respectively extension) of the knee, the model N1 is modified so that the positive (respectively negative) torque the neural network is able to send to the knee articulation is limited, or even set to 0. For example, a value that controls the position of the knee joint in the simulation may be deactivated so that target positions produced by the machine learning model N1 do not have an effect of generating a torque in the simulation. Such a modification may lead to the humanoid falling in simulation, as the conditions are different from when the machine learning model Nl was initially trained.
[0092] Once the machine learning model Nl has been modified in this way, a second machine learning model N2 may be trained to output additional torque to this impaired articulation represented by the modified N 1 model, which comes in addition to the torque produced by Nl. In particular, the machine learning model N2 may take values indicating sensor readings relating to a particular joint as input, and may be trained to produce the torque that should have been generated by the model Nl prior to modification of the model Nl to reproduce the subject’s pathology. As such, the model N2 is trained to determine how much torque an orthosis should produce based on sensor data relating to a joint, and can thereby be used to compensate for the patient’s pathology.- 25 -ACTIVE 714006589v3Attorney Docket No. 223399-010201 / PCTElectronic Filing Date: August 26, 2025
[0093] For instance, machine learning model N2 may take as input the signal of three IMUs: one located above the knee on the thigh, another below the knee on the shin, and the last one on the back of the patient at the height of the pelvis. Beside this modification of observation, machine learning model N2 may be trained with the same losses in the environment as described with respect to phase 1 , which now contains the two machine learning models Nl and N2. In phase 2, only machine learning model N2 may be trained, whereas the weights of machine learning model Nl are not modified.
[0094] According to some embodiments, machine learning model N2 may be trained with a reinforcement learning algorithm (e.g., the same reinforcement learning algorithm as was used to train model Nl). As a result, two machine learning models are generated: Nl, which represents (impaired) patient activity, and N2, which can be used to operate an orthosis controller, which controls an orthosis equipped by a patient according to the additional torque indicated by the output of N2.
[0095] With respect to implementation of an orthosis controller, the techniques described herein may comprise operating a system to implement the trained machine learning model N2 into instructions to operate actual robotized orthoses. According to some embodiments, in operation an orthosis equipped with sensors and actuators receives control signals produced, or otherwise derived from, the trained machine learning model N2. These signals dictate the precise amount of assistance needed at each joint, such as the knee or ankle, to facilitate proper movement.
[0096] For instance, in a patient with reduced knee torque, the controller of an orthosis may be instructed, according to the output from trained machine learning model N2, to apply additional force during the stance phase of walking, helping to stabilize the leg and prevent falls. The orthosis may continuously monitor the patient's movements through embedded sensors, adjusting the control signals in real-time to accommodate changes in speed, terrain, or task.
[0097] In some embodiments, one or more processors housed within the orthosis, or otherwise communicatively coupled to the orthosis, may executed the trained machine- 26 -ACTIVE 714006589v3Attorney Docket No. 223399-010201 / PCTElectronic Filing Date: August 26, 2025 learning model N2 based on sensor data gathered by the orthosis to produce data that may be utilized by the orthosis to control one or more motors.
[0098] According to some embodiments, this process may operate in a feedback loop in which data from the orthosis’ sensors is fed into the trained machine learning model N2 to perform additional training of the model and thereby refine its control strategies continuously. This loop allows the system to adapt to the patient's evolving needs, providing personalized and effective assistance over time.
[0099] According to some embodiments, an orthosis that executes the trained machine learning model N2 may comprise one or more IMUs (Inertial Measurement Units) that produce signals in combination with joint position and velocity data for inputs to the trained machine learning model N2. This combination allows for accurate and real-time monitoring and control of the system's dynamics.
[0100] An illustrative implementation of a computer system 800 that may be used to control an orthosis to perform any of the techniques described above is shown in FIG. 8. For example, the computer system 800 may be provided as an implementation of the processor 410 shown in FIGs. 4 and 5.
[0101] The computer system 800 may include one or more processors 810 and one or more non-transitory computer readable storage media (e.g., memory 820 and one or more non-volatile storage media 830). The one or more processors 810 may control writing data to and reading data from the memory 820 and the one or more non-volatile storage media 830 in any suitable manner, as the aspects of the disclosure described herein are not limited in this respect. To perform functionality and / or techniques described herein, the one or more processors 810 may execute one or more instructions stored in one or more computer readable storage media (e.g., the memory 820, storage media, etc.), which may serve as non- transitory computer readable storage media storing instructions for execution by the one or more processors 810.
[0102] In connection with techniques described herein, code used to, for example, operate a machine learning model, generate kinematic and / or spatiotemporal data, etc. may- 27 -ACTIVE 714006589v3Attorney Docket No. 223399-010201 / PCTElectronic Filing Date: August 26, 2025 be stored on one or more computer readable storage media of computer system 800. The one or more processors 810 may execute any such code to perform any of the abovedescribed techniques as described herein. Any other software, programs or instructions described herein may also be stored and executed by computer system 800. It will be appreciated that computer code may be applied to any aspects of methods and techniques described herein. For example, computer code may be applied to perform method 200 or the training processes shown in FIGs. 3 or 6, etc.
[0103] The various methods or processes outlined herein may be coded as software that is executable on one or more processors that employ any one of a variety of operating systems or platforms. Additionally, such software may be written using any of numerous suitable programming languages and / or programming or scripting tools, and also may be compiled as executable machine language code or intermediate code that is executed on a virtual machine or a suitable framework.
[0104] In this respect, various inventive concepts may be embodied as at least one non-transitory computer readable storage medium (e.g., a computer memory, one or more floppy discs, compact discs, optical discs, magnetic tapes, flash memories, circuit configurations in Field Programmable Gate Arrays or other semiconductor devices, etc.) encoded with one or more programs that, when executed on one or more computers or other processors, implement the various embodiments of the present disclosure. The non- transitory computer readable medium or media may be transportable, such that the program or programs stored thereon may be loaded onto any computer resource to implement various aspects of the present disclosure as described above.
[0105] The terms “program,” “software,” and / or “application” are used herein in a generic sense to refer to any type of computer code or set of computer-executable instructions that can be employed to program a computer or other processor to implement various aspects of embodiments as described above. Additionally, it should be appreciated that according to one aspect, one or more computer programs that when executed perform methods of the present disclosure need not reside on a single computer or processor, but- 28 -ACTIVE 714006589v3Attorney Docket No. 223399-010201 / PCTElectronic Filing Date: August 26, 2025 may be distributed in a modular fashion among different computers or processors to implement various aspects of the present disclosure.
[0106] Computer-executable instructions may be in many forms, such as program modules, executed by one or more computers or other devices. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform particular tasks or implement particular abstract data types. Typically, the functionality of the program modules may be combined or distributed as desired in various embodiments.
[0107] Also, data structures may be stored in non-transitory computer readable storage media in any suitable form. Data structures may have fields that are related through location in the data structure. Such relationships may likewise be achieved by assigning storage for the fields with locations in a non-transitory computer readable medium that convey relationship between the fields. However, any suitable mechanism may be used to establish relationships among information in fields of a data structure, including through the use of pointers, tags or other mechanisms that establish relationships among data elements.
[0108] Having thus described several aspects of at least one embodiment of this disclosure, it is to be appreciated that various alterations, modifications, and improvements will readily occur to those skilled in the art. For instance, aspects of the techniques described herein may be combined in any of the following ways:
[0109] Example 1. An orthosis comprising: an actuator configured to control a position of a joint of the orthosis; a sensor configured to generate sensor data indicative of the position of the joint; and a processor configured to: determine a target motion of the joint based on the sensor data; determine a current motion of the joint based on the sensor data; and operate the actuator to control the position of the joint based on a difference between the target motion of the joint and the current motion of the joint.
[0110] Example 2. The orthosis of example 1, wherein the position of the joint consists of, or comprises, an angle of the joint.
[0111] Example 3. The orthosis of any of examples 1-2, wherein the sensor data is further indicative of a velocity and / or acceleration of a limb coupled to the joint.- 29 -ACTIVE 714006589v3Attorney Docket No. 223399-010201 / PCTElectronic Filing Date: August 26, 2025
[0112] Example 4. The orthosis of any of examples 1-3, wherein the target motion of the joint comprises a target torque and / or a target angle.
[0113] Example 5. The orthosis of any of examples 1-4, wherein the processor is configured to determine the target motion of the joint at least in part by providing the sensor data to a trained machine learning model.
[0114] Example 6. The orthosis of any of examples 1-5, wherein the processor is configured to determine the target motion of the joint based on kinematic and / or spatiotemporal data generated by the trained machine learning model based on the sensor data.
[0115] Example 7. The orthosis of any of examples 1-6, wherein the kinematic and / or spatiotemporal data comprises a predicted trajectory of the joint over time.
[0116] Example 8. The orthosis of any of examples 1-7, wherein the kinematic and / or spatiotemporal data comprises a type of motion activity.
[0117] Example 9. The orthosis of any of examples 1-8, wherein the kinematic and / or spatiotemporal data comprises a transition between two types of motion activity.
[0118] Example 10. The orthosis of any of examples 1-9, wherein the processor is configured to determine the target motion of the joint at least in part by weighting the kinematic and / or spatiotemporal data generated by the trained machine learning model according to one or more orthosis assistance settings associated with a user of the orthosis.
[0119] Example 11. The orthosis of any of examples 1-10, wherein the kinematic and / or spatiotemporal data comprises a type of motion activity, wherein weighting the kinematic and / or spatiotemporal data generates weighted kinematic and / or spatiotemporal data, and wherein the processor is configured to determine the target motion of the joint at least in part by providing the weighted kinematic and / or spatiotemporal data to a lookup table to obtain the target motion of the joint, the lookup table being selected from among a plurality of lookup tables according to the type of motion activity.- 30 -ACTIVE 714006589v3Attorney Docket No. 223399-010201 / PCTElectronic Filing Date: August 26, 2025
[0120] Example 12. The orthosis of any of examples 1-11, wherein the current motion comprises a trajectory of the joint over time.
[0121] Example 13. The orthosis of any of examples 1-12, wherein the processor is configured to determine the trajectory of the joint over time based on sensor data received over time indicative of a plurality of different positions of the joint.
[0122] Example 14. The orthosis of any of examples 1-13, wherein the difference between the target motion of the joint and the current motion of the joint is a difference between a target torque at the joint and a current torque at the joint.
[0123] Example 15. The orthosis of any of examples 1-14, wherein the actuator is a stepper motor or servo motor.
[0124] Example 16. The orthosis of any of examples 1-15, wherein the sensor comprises an inertial measurement unit (IMU) and / or an accelerometer.
[0125] Example 17. The orthosis of any of examples 1-16, wherein the sensor is a first sensor, wherein the orthosis comprises an upper limb and a lower limb coupled via the joint, wherein the first sensor is coupled to the upper limb, and wherein the orthosis comprises a second sensor coupled to the lower limb.
[0126] Example 18. The orthosis of any of examples 1-17, wherein the joint is a knee joint.
[0127] Example 19. At least one computer readable medium comprising instructions that, when executed by a processor, perform a method comprising: determining a target motion of a joint of an orthosis based on sensor data generated by a sensor, the sensor data being indicative of a position of the joint; determining a current motion of the joint based on the sensor data; and operating an actuator to control a position of the joint of the orthosis based on a difference between the target motion of the joint and the current motion of the joint.
[0128] Example 20. The at least one computer readable medium of example 19, wherein the position of the joint consists of, or comprises, an angle of the joint.- 31ACTIVE 714006589v3Attorney Docket No. 223399-010201 / PCTElectronic Filing Date: August 26, 2025
[0129] Example 21. The at least one computer readable medium of any of examples 19-20, wherein the target motion of the joint comprises a target torque and / or a target angle.
[0130] Example 22. The at least one computer readable medium of any of examples 19-21, wherein the processor is configured to determine the target motion of the joint at least in part by providing the sensor data to a trained machine learning model.
[0131] Such alterations, modifications, and improvements are intended to be part of this disclosure and are intended to be within the spirit and scope of the disclosure. Further, though advantages of the present disclosure are indicated, it should be appreciated that not every embodiment of the technology described herein will include every described advantage. Some embodiments may not implement any features described as advantageous herein and in some instances one or more of the described features may be implemented to achieve further embodiments. Accordingly, the foregoing description and drawings are by way of example only.
[0132] Aspects of the above- described embodiments of the technology described herein can be implemented in any of numerous ways. For example, aspects of the embodiments may be implemented using hardware, software, or a combination thereof. When implemented in software, the software code can be executed on any suitable processor or collection of processors, whether provided in a single computer or distributed among multiple computers. Such processors may be implemented as integrated circuits, with one or more processors in an integrated circuit component, including commercially available integrated circuit components known in the art by names such as CPU chips, GPU chips, microprocessor, microcontroller, or co-processor. Alternatively, a processor may be implemented in custom circuitry, such as an ASIC, or semi-custom circuitry resulting from configuring a programmable logic device. As yet a further alternative, a processor may be a portion of a larger circuit or semiconductor device, whether commercially available, semicustom or custom. As a specific example, some commercially available microprocessors have multiple cores such that one or a subset of those cores may constitute a processor. Though, a processor may be implemented using circuitry in any suitable format.- 32 -ACTIVE 714006589v3Attorney Docket No. 223399-010201 / PCTElectronic Filing Date: August 26, 2025
[0133] Various aspects of the present disclosure may be used alone, in combination, or in a variety of arrangements not specifically described in the embodiments described in the foregoing and is therefore not limited in its application to the details and arrangement of components set forth in the foregoing description or illustrated in the drawings. For example, aspects described in one embodiment may be combined in any manner with aspects described in other embodiments.
[0134] Also, aspects of the disclosure may be embodied as a method, of which examples have been provided. The acts performed as part of the method may be ordered in any suitable way. Accordingly, embodiments may be constructed in which acts are performed in an order different than illustrated, which may include performing some acts simultaneously, even though shown as sequential acts in illustrative embodiments.
[0135] Further, some actions are described as taken by a “user.” It should be appreciated that a “user” need not be a single individual, and that in some embodiments, actions attributable to a “user” may be performed by a team of individuals and / or an individual in combination with computer-assisted tools or other mechanisms. Moreover, references are made herein to a “patient” or to “patient-specific” data, which should be understood to refer to an individual for whom an orthosis is being prepared and operated. The patient may for instance be referred to as a “user’ of the orthosis.
[0136] Use of ordinal terms such as “first,” “second,” “third,” etc., in the claims to modify a claim element does not by itself connote any priority, precedence, or order of one claim element over another or the temporal order in which acts of a method are performed, but are used merely as labels to distinguish one claim element having a certain name from another element having a same name (but for use of the ordinal term) to distinguish the claim elements.
[0137] Also, the phraseology and terminology used herein is for the purpose of description and should not be regarded as limiting. The use of “including,” “comprising,” or “having,” “containing,” “involving,” and variations thereof herein, is meant to encompass the items listed thereafter and equivalents thereof as well as additional items.- 33 -ACTIVE 714006589v3Attorney Docket No. 223399-010201 / PCTElectronic Filing Date: August 26, 2025
[0138] What is claimed is:- 34 -ACTIVE 714006589v3
Claims
Attorney Docket No. 223399-010201 / PCTElectronic Filing Date: August 26, 2025CLAIMS1. An orthosis comprising: an actuator configured to control a position of a joint of the orthosis; a sensor configured to generate sensor data indicative of the position of the joint; and a processor configured to: determine a target motion of the joint based on the sensor data; determine a current motion of the joint based on the sensor data; and operate the actuator to control the position of the joint based on a difference between the target motion of the joint and the current motion of the joint.
2. The orthosis of claim 1, wherein the position of the joint consists of, or comprises, an angle of the joint.
3. The orthosis of claim 1, wherein the sensor data is further indicative of a velocity and / or acceleration of a limb coupled to the joint.
4. The orthosis of claim 1 , wherein the target motion of the joint comprises a target torque and / or a target angle.
5. The orthosis of claim 1, wherein the processor is configured to determine the target motion of the joint at least in part by providing the sensor data to a trained machine learning model.
6. The orthosis of claim 5, wherein the processor is configured to determine the target motion of the joint based on kinematic and / or spatiotemporal data generated by the trained machine learning model based on the sensor data.- 35 -ACTIVE 714006589v3Attorney Docket No. 223399-010201 / PCTElectronic Filing Date: August 26, 20257. The orthosis of claim 6, wherein the kinematic and / or spatiotemporal data comprises a predicted trajectory of the joint over time.
8. The orthosis of claim 6, wherein the kinematic and / or spatiotemporal data comprises a type of motion activity.
9. The orthosis of claim 6, wherein the kinematic and / or spatiotemporal data comprises a transition between two types of motion activity.
10. The orthosis of claim 6, wherein the processor is configured to determine the target motion of the joint at least in part by weighting the kinematic and / or spatiotemporal data generated by the trained machine learning model according to one or more orthosis assistance settings associated with a user of the orthosis.
11. The orthosis of claim 10, wherein the kinematic and / or spatiotemporal data comprises a type of motion activity, wherein weighting the kinematic and / or spatiotemporal data generates weighted kinematic and / or spatiotemporal data, and wherein the processor is configured to determine the target motion of the joint at least in part by providing the weighted kinematic and / or spatiotemporal data to a lookup table to obtain the target motion of the joint, the lookup table being selected from among a plurality of lookup tables according to the type of motion activity.
12. The orthosis of claim 1, wherein the current motion comprises a trajectory of the joint over time.- 36 -ACTIVE 714006589v3Attorney Docket No. 223399-010201 / PCTElectronic Filing Date: August 26, 202513. The orthosis of claim 12, wherein the processor is configured to determine the trajectory of the joint over time based on sensor data received over time indicative of a plurality of different positions of the joint.
14. The orthosis of claim 1, wherein the difference between the target motion of the joint and the current motion of the joint is a difference between a target torque at the joint and a current torque at the joint.
15. The orthosis of claim 1, wherein the actuator is a stepper motor or servo motor.
16. The orthosis of claim 1, wherein the sensor comprises an inertial measurement unit (IMU) and / or an accelerometer.
17. The orthosis of claim 1, wherein the sensor is a first sensor, wherein the orthosis comprises an upper limb and a lower limb coupled via the joint, wherein the first sensor is coupled to the upper limb, and wherein the orthosis comprises a second sensor coupled to the lower limb.
18. The orthosis of claim 1, wherein the joint is a knee joint.
19. At least one computer readable medium comprising instructions that, when executed by a processor, perform a method comprising: determining a target motion of a joint of an orthosis based on sensor data generated by a sensor, the sensor data being indicative of a position of the joint; determining a current motion of the joint based on the sensor data; and operating an actuator to control a position of the joint of the orthosis based on a difference between the target motion of the joint and the current motion of the joint.- 37 -ACTIVE 714006589v3Attorney Docket No. 223399-010201 / PCTElectronic Filing Date: August 26, 202520. The at least one computer readable medium of claim 19, wherein the position of the joint consists of, or comprises, an angle of the joint.
21. The at least one computer readable medium of claim 19, wherein the target motion of the joint comprises a target torque and / or a target angle.
22. The at least one computer readable medium of claim 19, wherein the processor is configured to determine the target motion of the joint at least in part by providing the sensor data to a trained machine learning model.- 38 -ACTIVE 714006589v3
Citation Information
Patent Citations
Stance Controller and Related Methods
US20160074180A1
Powered lower limb devices and methods of control thereof
US20180116828A1
Open-loop control for exoskeleton motor
US20210291355A1
Powered gait assistance systems
US20230414381A1
Control method for a powered knee ankle foot orthosis
US20240148522A1