Control method and device, electronic equipment and storage medium
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- SOUTHERN UNIVERSITY OF SCIENCE AND TECHNOLOGY
- Filing Date
- 2025-08-12
- Publication Date
- 2026-08-07
AI Technical Summary
传统的控制方法往往难以实时、准确地根据大腿的实际运动状态来调整助力力矩,导致髋关节外骨骼辅助装置的助力效果不佳,无法很好地与人体运动相适配
[0037] This application provides a control method that involves acquiring the angular velocity of a user's thigh; inputting the angular velocity into an angular velocity prediction model to obtain a predicted angular velocity; determining the torque by which a hip exoskeleton assists the hip joint of the thigh based on the predicted angular velocity; and controlling the hip exoskeleton assist based on the torque, thereby achieving more precise and effective assist control and improving the performance and applicability of the hip exoskeleton assist.
Smart Images

Figure CN121081241B_ABST
Abstract
Description
Technical Field
[0001] This application belongs to the field of control technology, and in particular relates to a control method, device, electronic device and storage medium. Background Technology
[0002] Hip exoskeleton assistive devices are advanced devices that enhance human mobility and assist walking. They have broad application prospects in many fields such as medical rehabilitation, military operations, and industrial production. For example, they can help patients with limited mobility regain their walking ability, improve soldiers' weight-bearing walking capacity, and reduce fatigue in workers who stand or carry heavy loads for extended periods. A key challenge in controlling hip exoskeleton assistive devices is achieving precise and effective assistive control. Human walking is a complex and dynamically changing process; the movement of the thigh changes constantly with factors such as walking speed, terrain, and gait. Traditional control methods often struggle to adjust the assistive torque accurately and in real time according to the actual movement of the thigh, resulting in poor assistive effects from the hip exoskeleton assistive device and an inability to adapt well to human movement. Summary of the Invention
[0003] In view of this, embodiments of this application provide a control method, device, electronic device, and storage medium that improve the prediction accuracy of the thigh's angular velocity through an angular velocity prediction model and reasonably determine the assist torque based on the prediction results, thereby achieving more precise and effective assist control and improving the performance and applicability of the hip joint exoskeleton assist device.
[0004] In a first aspect, embodiments of this application provide a control method, including:
[0005] Obtain the angular velocity of the user's thigh;
[0006] The angular velocity is input into the angular velocity prediction model to obtain the predicted angular velocity;
[0007] The torque by which the hip exoskeleton assists the hip joint of the thigh is determined based on the predicted angular velocity.
[0008] The hip exoskeleton assist device is controlled based on the torque.
[0009] In some embodiments, determining the torque by which the hip exoskeleton assists the hip joint of the thigh based on the predicted angular velocity includes:
[0010] The predicted angular velocity is input into the angular velocity scaling assistance model to obtain the torque of the hip joint exoskeleton assisting the hip joint of the thigh. The angular velocity scaling assistance model includes a first calculation formula and a second calculation formula. When the predicted angular velocity is positive, the first calculation formula is used to calculate the torque, and when the angular velocity is negative, the second calculation formula is used to calculate the torque. The first calculation formula includes the calculation relationship between angular velocity, a first proportionality coefficient, and torque. The second calculation formula includes the calculation relationship between angular velocity, a second proportionality coefficient, and torque. The first proportionality coefficient and the second proportionality coefficient are different, and both the first proportionality coefficient and the second proportionality coefficient are greater than 0.
[0011] In some embodiments, the first proportionality coefficient is smaller than the second proportionality coefficient.
[0012] In some embodiments, the method further includes:
[0013] Obtain a first sample dataset, the sample data in the first sample dataset including: the sample historical angular velocity and the sample predicted angular velocity of the thigh;
[0014] The sample dataset is divided into a training set and a validation set, and the hyperparameters of the neural network model are set.
[0015] The neural network model is trained based on the training set to obtain an initial neural network model;
[0016] The performance of each initial neural network model is determined based on the validation set.
[0017] The initial neural network model with the best performance is selected as the target neural network model;
[0018] The angular velocity prediction model is determined based on the target neural network model.
[0019] In some embodiments, determining the angular velocity prediction model based on the target neural network model includes:
[0020] Obtain the historical angular velocity of the user's thigh;
[0021] The historical angular velocities are segmented to obtain a second sample dataset, which includes sample historical angular velocities and sample predicted angular velocities of the thigh.
[0022] The target neural network model is updated based on the second sample dataset to obtain the angular velocity prediction model.
[0023] In some embodiments, the neural network model includes: an input layer, a feature extraction layer, a fully connected layer, and an output layer. The input layer is used to input the historical angular velocity of the sample. The feature extraction layer performs convolution and pooling processing on the historical angular velocity of the sample to extract the historical angular velocity features of the sample, and inputs the historical angular velocity of the sample into the fully connected layer. The fully connected layer is used to output a prediction result based on the historical angular velocity features of the sample, and inputs the prediction result into the output layer. The output layer is used to output the prediction result. The feature extraction layer includes: a first convolutional layer, a first max pooling layer, a second convolutional layer, a second max pooling layer, a third convolutional layer, and a third max pooling layer connected in sequence.
[0024] In some embodiments, obtaining the angular velocity of the user's thigh includes:
[0025] Obtain the initial angular velocity of the user's thigh;
[0026] The initial angular velocity is smoothed to obtain the angular velocity of the user's thigh.
[0027] Secondly, embodiments of this application provide a control device, including:
[0028] The data acquisition module is used to obtain the angular velocity of the user's thigh.
[0029] An angular velocity prediction module is used to input the angular velocity into an angular velocity prediction model to obtain a predicted angular velocity.
[0030] An angular velocity scaling assist module is used to determine the torque by which the hip joint exoskeleton assist device assists the hip joint of the thigh based on the predicted angular velocity.
[0031] A control module for controlling the hip exoskeleton assist device based on the torque.
[0032] Thirdly, embodiments of this application provide an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to implement the method described in any of the above-mentioned embodiments.
[0033] Fourthly, embodiments of this application provide a hip joint exoskeleton assistive device, including: an electronic device as described in the third aspect.
[0034] Fifthly, embodiments of this application provide a computer-readable storage medium storing a computer program that, when executed by a processor, implements the method described in any of the preceding claims.
[0035] Sixthly, embodiments of this application provide a computer program product that, when run on a terminal device, causes the electronic device to execute any of the methods described above.
[0036] The beneficial effects of the embodiments of this application compared with the prior art are:
[0037] This application provides a control method that involves acquiring the angular velocity of a user's thigh; inputting the angular velocity into an angular velocity prediction model to obtain a predicted angular velocity; determining the torque by which a hip exoskeleton assists the hip joint of the thigh based on the predicted angular velocity; and controlling the hip exoskeleton assist based on the torque, thereby achieving more precise and effective assist control and improving the performance and applicability of the hip exoskeleton assist. Attached Figure Description
[0038] To more clearly illustrate the technical solutions in the embodiments of this application, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0039] Figure 1 A schematic diagram illustrating the implementation process of a control method provided for the purposes of this application;
[0040] Figure 2 This is a schematic diagram of the structure of a neural network model provided in an embodiment of this application;
[0041] Figure 3 A schematic diagram illustrating the implementation flow of a control method provided in an embodiment of this application;
[0042] Figure 4 A schematic diagram illustrating the implementation flow of a control method provided in an embodiment of this application;
[0043] Figure 5 This is a schematic diagram of the structure of a control device provided in an embodiment of this application;
[0044] Figure 6 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application. Detailed Implementation
[0045] In the following description, specific details such as particular system architectures and techniques are set forth for illustrative purposes and not for limitation, in order to provide a thorough understanding of the embodiments of this application. However, those skilled in the art will understand that this application may also be implemented in other embodiments without these specific details. In other instances, detailed descriptions of well-known systems, apparatuses, circuits, and methods have been omitted so as not to obscure the description of this application with unnecessary detail.
[0046] It should be understood that, when used in this application specification and the appended claims, the term "comprising" indicates the presence of the described features, integrals, steps, operations, elements and / or components, but does not exclude the presence or addition of one or more other features, integrals, steps, operations, elements, components and / or a collection thereof.
[0047] It should also be understood that the term “and / or” as used in this application specification and the appended claims means any combination of one or more of the associated listed items and all possible combinations, and includes such combinations.
[0048] As used in this application specification and the appended claims, the term "if" may be interpreted, depending on the context, as "when," "once," "in response to determination," or "in response to detection." Similarly, the phrases "if determined" or "if detected" may be interpreted, depending on the context, as "once determined," "in response to determination," "once detected," or "in response to detection."
[0049] Furthermore, in the description of this application and the appended claims, the terms "first," "second," "third," etc., are used only to distinguish descriptions and should not be construed as indicating or implying relative importance.
[0050] References to "one embodiment" or "some embodiments" in this specification mean that one or more embodiments of this application include a specific feature, structure, or characteristic described in connection with that embodiment. Therefore, the phrases "in one embodiment," "in some embodiments," "in other embodiments," "in still other embodiments," etc., appearing in different parts of this specification do not necessarily refer to the same embodiment, but rather mean "one or more, but not all, embodiments," unless otherwise specifically emphasized.
[0051] Based on the problems in related technologies, embodiments of this application provide a control method that can be applied to electronic devices, including: mobile phones, tablets, wearable devices, augmented reality (AR) / virtual reality (VR) devices, laptops, ultra-mobile personal computers (UMPCs), netbooks, and personal digital assistants (PDAs). This application does not limit the specific type of electronic device. The electronic device can serve as a controller for a hip exoskeleton assistive device. Figure 1 A schematic diagram illustrating the implementation flow of a control method provided for the purposes of this application is shown below. Figure 1 As shown, the control methods include:
[0052] Step S101: Obtain the angular velocity of the user's thigh.
[0053] In this embodiment, angular velocity is a physical quantity describing the speed and direction of an object's rotation. The angular velocity of the thigh refers to the speed and direction of the user's thigh rotation around the hip joint. During various movements such as walking and running, the thigh rotates around the hip joint. Sensors (such as gyroscopes) can measure the angular velocity of the thigh at different times, typically in radians per second (rad / s) or degrees per second (° / s). The angular velocity of the thigh reflects the dynamic characteristics of its movement and is a crucial basis for subsequent prediction and control of exoskeleton assistance. For example, during walking, the angular velocity directions of the thigh's forward and backward swings are different, and the exoskeleton needs to provide appropriate assistance based on these different angular velocity information.
[0054] In this embodiment, a suitable angular velocity sensor, such as an inertial measurement unit (IMU), can be installed on the user's thigh or exoskeleton device. The sensor's installation position and orientation must be ensured to accurately measure the angular velocity of the thigh's rotation around the hip joint. The sensor collects the thigh's angular velocity data in real time and converts it into electrical signals. These electrical signals are preprocessed, including amplification and filtering, before being transmitted to electronic devices for further processing. The angular velocity of the thigh obtained here can be the angular velocity over a preset time period prior to the current moment.
[0055] Step S102: Input the angular velocity into the angular velocity prediction model to obtain the predicted angular velocity.
[0056] In this embodiment, the angular velocity prediction model is a model used to predict the thigh angular velocity at a future moment based on current and historical angular velocity information. The angular velocity prediction model can be built based on mathematical formulas, machine learning algorithms, or deep learning architectures. Since human movement has a certain continuity and regularity, but also uncertainty, the angular velocity prediction model can predict the future movement state of the thigh in advance, enabling the exoskeleton assistive device to provide assistance more timely and accurately, improving the effectiveness and adaptability of the assistance. The predicted angular velocity is the thigh angular velocity value at a future preset moment output by the angular velocity prediction model. It is the result obtained after calculation and processing within the model based on the current and historical angular velocity data input into the model. The predicted angular velocity provides forward-looking information for determining the assist torque of the exoskeleton, allowing the exoskeleton to respond in advance and better cooperate with the human body's movement.
[0057] In this embodiment, a suitable angular velocity prediction model can be selected according to actual needs, such as a time series analysis-based model, like the Autoregressive Integrated Moving Average (ARIMA) model, or a deep learning-based model, like a Recurrent Neural Network (RNN) and its variants. Historical angular velocity data can be used to train the model and adjust its parameters to accurately predict future angular velocities.
[0058] In this embodiment of the application, the acquired angular velocity data of the thigh can be input into a trained angular velocity prediction model. The model calculates according to its internal algorithm and parameters and outputs the predicted angular velocity at a future preset time.
[0059] Step S103: Determine the torque by which the hip exoskeleton assists the hip joint of the thigh based on the predicted angular velocity.
[0060] In this embodiment, the hip exoskeleton assistive device is a wearable mechanical device installed on the hip joint of the human body, designed to provide assistive force for thigh movements. The hip exoskeleton assistive device typically consists of a mechanical structure, sensors, a controller, and a power source. Sensors detect the body's movement state, the controller calculates an appropriate assist torque according to a preset control strategy, and the power source (such as a motor) provides power to drive the mechanical structure to generate assistance, helping the body to complete various movements more easily. Torque is a special force system that causes an object to rotate. The magnitude and direction of the torque need to be precisely controlled according to the thigh's movement state to provide appropriate assistive force, reduce the burden on the body during movement, and improve movement efficiency.
[0061] In this embodiment of the application, the predicted angular velocity can be output to the angular velocity scaling assist model to obtain the torque.
[0062] Step S104: Control the hip joint exoskeleton assist device based on the torque.
[0063] In this embodiment, the power output of the exoskeleton device can be adjusted by a controller based on the calculated assist torque, so that it provides assistance to the hip joint of the thigh in a predetermined manner.
[0064] In this embodiment, the calculated torque can be applied to the hip joint by the servo motor of the hip joint exoskeleton assistive device, thereby assisting the user's daily walking and activities in real time.
[0065] This application provides a control method that involves acquiring the angular velocity of a user's thigh; inputting the angular velocity into an angular velocity prediction model to obtain a predicted angular velocity; determining the torque by which a hip exoskeleton assists the hip joint of the thigh based on the predicted angular velocity; and controlling the hip exoskeleton assist based on the torque, thereby achieving more precise and effective assist control and improving the performance and applicability of the hip exoskeleton assist.
[0066] In some embodiments, step S103 can be implemented by the following steps:
[0067] The predicted angular velocity is input into the angular velocity scaling assistance model to obtain the torque of the hip joint exoskeleton assisting the hip joint of the thigh. The angular velocity scaling assistance model includes a first calculation formula and a second calculation formula. When the predicted angular velocity is positive, the first calculation formula is used to calculate the torque, and when the angular velocity is negative, the second calculation formula is used to calculate the torque. The first calculation formula includes the calculation relationship between angular velocity, a first proportionality coefficient, and torque. The second calculation formula includes the calculation relationship between angular velocity, a second proportionality coefficient, and torque. The first proportionality coefficient and the second proportionality coefficient are different, and both the first proportionality coefficient and the second proportionality coefficient are greater than 0.
[0068] In this embodiment of the application, the angular velocity scaling assistance model can be represented as:
[0069]
[0070] Where k1 is the first proportionality coefficient, k2 is the second proportionality coefficient, ω0 is the angular velocity, ω0>0 indicates positive, ω0<0 indicates negative, and τ represents torque.
[0071] In this embodiment, the direction of the thigh swinging forward can be set as the positive direction of the angular velocity, while the direction of the thigh swinging backward can be set as the negative direction. When the predicted angular velocity is positive (e.g., the thigh swings forward) and negative (the thigh swings backward), setting different calculation formulas can more accurately match the assistance needs of different directions of movement.
[0072] The method provided in this application, using different calculation formulas and proportional coefficients, can more accurately calculate the required assist torque based on the different directions of thigh movement. This helps the exoskeleton assistive device provide just the right amount of assistance in various movement situations, avoiding insufficient or excessive assistance, thereby improving the effectiveness and quality of assistance.
[0073] In some embodiments, the first proportionality coefficient is smaller than the second proportionality coefficient.
[0074] In this embodiment, the resistance encountered by the thigh during human movement varies depending on the direction of its swing at the hip joint. Taking walking as an example, when the thigh swings backward, it typically needs to overcome a larger component of gravity and other possible resistances (such as the influence of ground friction at certain stages). To effectively assist the thigh in completing the backward swing, a relatively large assist torque is required. The second proportionality coefficient, which is used for torque calculation when the predicted angular velocity is negative (such as when the thigh swings backward), allows the exoskeleton to output a larger assist torque at this time, better overcoming resistance and assisting human movement.
[0075] In some embodiments, the angular velocity prediction module is a neural network model, and before step S102, the method further includes:
[0076] Step S1021: Obtain the first sample dataset, wherein the sample data in the first sample dataset includes: the sample historical angular velocity and the sample predicted angular velocity of the thigh.
[0077] In this embodiment of the application, the first sample dataset is a collection of data containing historical angular velocities and predicted angular velocities of the thigh. The historical angular velocity is the actual measured velocity value of the thigh rotating around the hip joint during a certain period in the past; the predicted angular velocity is the predicted value of the thigh angular velocity at a future moment, obtained through some means (such as a simple prediction method or theoretical model) based on these historical data and other possible relevant information.
[0078] In this embodiment, an angular velocity sensor installed on the human thigh or exoskeleton device can be used to continuously collect angular velocity data of the thigh at certain time intervals, forming a historical angular velocity sequence. Simultaneously, using simple prediction methods (such as time-series average prediction, linear regression prediction, etc.) or existing theoretical models, the corresponding predicted angular velocities are calculated based on the historical angular velocities. These historical and predicted angular velocities are then mapped one-to-one to form the first sample dataset.
[0079] Step S1022: Divide the sample dataset into a training set and a validation set, and set the hyperparameters of the neural network model.
[0080] In this embodiment, the training set is a portion of data partitioned from the first sample dataset, primarily used for training the neural network model. During training, the model continuously adjusts its parameters using historical angular velocities of samples in the training set as input and predicted angular velocities of the corresponding samples as the target output. The validation set is another portion of data partitioned from the first sample dataset, independent of the training set. During model training, the validation set is periodically used to evaluate the model's performance. The parameters that need to be pre-set before training the neural network model are not learned through the model training process but are determined manually based on experience and experimentation. Examples include the learning rate, number of iterations, number of layers in the neural network, and number of neurons per layer.
[0081] In this embodiment, the first sample dataset is divided into a training set and a validation set according to a certain ratio (e.g., 70%-30% or 80%-20%). This ensures that the data distribution in the training set and validation set is representative and can reflect the overall variation characteristics of the thigh angular velocity.
[0082] In this embodiment of the application, when setting the hyperparameters of the neural network model, the Adam optimizer can be selected for training, with a learning rate of 0.001, a weight decay of 1e-4, a batch size of 512, and a maximum number of training epochs of 1000.
[0083] Step S1023: Train the neural network model based on the training set to obtain an initial neural network model.
[0084] In this embodiment, the initial neural network model is the model obtained after performing a complete training on the neural network model using the training set. Each different combination of hyperparameters will result in a corresponding initial neural network model after training.
[0085] In this embodiment, the mean squared error loss function can be optimized through supervised learning to train a neural network model. The formula for the loss function is:
[0086]
[0087] Where F(·) represents the forward propagation operation of the network, x i Let y represent the i-th input sample (an angular velocity sequence over 200 ms). i Let N represent the angular velocity of the i-th sample at time 50ms in the future, and N represent the total number of samples.
[0088] In this embodiment of the application, the neural network model can be a convolutional neural network (CNN) or other models (such as TCN, Transformer, etc.). Figure 2 This is a schematic diagram of the structure of a neural network model provided in an embodiment of this application, such as... Figure 2 As shown, the neural network model includes: an input layer 1, a feature extraction layer, a fully connected layer, and an output layer 12. The input layer 1 is used to input the historical angular velocity of the samples. The feature extraction layer performs convolution and pooling on the historical angular velocity of the samples to extract the historical angular velocity features of the samples, and inputs the historical angular velocity of the samples into the fully connected layer. The fully connected layer is used to output a prediction result based on the historical angular velocity features of the samples, and inputs the prediction result into the output layer. The output layer is used to output the prediction result. The feature extraction layer includes: a first convolutional layer 2, a first max pooling layer 3, a second convolutional layer 4, a second max pooling layer 5, a third convolutional layer 6, and a third max pooling layer 7 connected in sequence. The output channels of the first convolutional layer are 32, the output channels of the second convolutional layer are 64, and the output channels of the third convolutional layer are 128. The kernel size of the three convolutional layers is 5. The first convolutional layer uses the ReLU activation function and batch normalization (BN). The first convolutional layer extracts local features through convolutional operations, ReLU introduces non-linearity, and Batch Normalization (BN) accelerates training and improves stability. The second convolutional layer also uses ReLU and BN to further extract more abstract features. The third convolutional layer deepens feature extraction. The first max-pooling layer has a 2x2 pooling window for dimensionality reduction and main feature extraction. The second max-pooling layer further reduces dimensionality, and the third max-pooling layer further compresses the data before inputting it into the fully connected layer. All three max-pooling layers have a 2x2 pooling window. See also... Figure 2 The fully connected layer includes: a hidden feature unit 8, a first fully connected layer 9, a second fully connected layer 10, and an output unit 11 connected in sequence. The hidden feature unit is used to flatten the features into hidden feature vectors. The first fully connected layer has 256 neurons and uses Dropout to prevent overfitting. The second fully connected layer has 128 neurons and also uses Dropout. The output unit has 1 neuron and is used for final prediction. The prediction result is input into the output layer, which is used to output the result.
[0089] Step S1024: Determine the performance of each initial neural network model based on the validation set.
[0090] In this embodiment, evaluation metrics (such as mean squared error, mean absolute error, etc.) can be used to calculate the error between the predicted output and the predicted angular velocity of the samples in the validation set, thereby evaluating the model's performance. This performance evaluation is performed on the initial neural network model trained for each different combination of hyperparameters.
[0091] Step S1025: The initial neural network model with the best performance is determined as the target neural network model.
[0092] In this embodiment of the application, the target neural network model is the best-performing initial neural network model selected from multiple initial neural network models based on the performance evaluation results of the validation set.
[0093] In this embodiment of the application, the performance evaluation results of each initial neural network model on the validation set can be compared, and the initial neural network model with the best performance can be selected as the target neural network model. The best performance is usually manifested as the smallest prediction error.
[0094] Step S1026: Determine the angular velocity prediction model based on the target neural network model.
[0095] In this embodiment, the angular velocity prediction model is a final model determined based on the target neural network model, used to predict the future angular velocity of the thigh in practical applications. This angular velocity prediction model can be the target neural network model itself; in some embodiments, it can also be a model obtained through online optimization of the target neural network model.
[0096] Because of the issue of personalized adaptation among different users, the angle prediction model obtained from the first sample dataset may not be suitable for all users. Therefore, in some embodiments, step S1026 can be implemented through the following steps:
[0097] Step S261: Obtain the historical angular velocity of the user's thigh.
[0098] In this embodiment, the historical angular velocity of the user's thigh truly reflects the individual user's motion characteristics. Training and updating the model based on this data can make the angular velocity prediction model more closely match the user's actual motion, thereby improving the accuracy of the prediction.
[0099] In this embodiment, an angular velocity sensor installed on the user's thigh or exoskeleton device can be used to continuously collect angular velocity data of the thigh at preset time intervals (e.g., once every 0.1 seconds). This data is recorded and stored in real time, forming a historical angular velocity data sequence of the user's thigh.
[0100] Step S262: The historical angular velocity is segmented to obtain a second sample dataset. The sample data in the second sample dataset includes: the sample historical angular velocity and the sample predicted angular velocity of the thigh.
[0101] In this embodiment, the second sample dataset is a collection of data obtained by segmenting the historical angular velocity of a user's thigh. The sample data includes the historical angular velocity of the thigh and the corresponding predicted angular velocity. Unlike the first sample dataset, the second sample dataset is user-specific and more personalized. It is used to update the target neural network model, enabling the model to better adapt to the specific user's movement patterns and further improve the accuracy of angular velocity prediction.
[0102] In this embodiment, a sliding window approach can be used to segment historical angular velocity data. For example, the window size can be set to 10 time steps, and the sliding step size to 1 time step. The historical angular velocity data within each window is treated as a sample historical angular velocity. Then, based on a certain prediction method (such as simple moving average prediction based on time series, exponential smoothing prediction, or using a previous model), the predicted angular velocity of the sample at the corresponding future time moment is calculated. By continuously sliding the window, multiple sample data are generated to form a second sample dataset.
[0103] For example, x online =[ω -200-T ω -199-T ,…,ω -T y online = [ω0]; where x online This represents the input samples during the user's walking process using the exoskeleton, specifically the angular velocity sequence lasting 200ms starting at time T+200ms. online This represents the observed thigh angular velocity during the user's walking process using the exoskeleton, i.e., the predicted angle value at the current moment. The training set for the online optimization process can be obtained through segmentation; for example, the training set is represented as:
[0104] x online_dataset =[x online1 x online2 , ..., x onlineM ];
[0105] y online_dataset =[y online1 y online2 , ..., y onlineM ]; where (x online_dataset y online_dataset To make
[0106] The user uses a batch dataset for online continuous optimization of the angular velocity prediction model during exoskeleton walking, where M represents the number of samples in a batch for online training.
[0107] Step S263: Update the target neural network model based on the second sample dataset to obtain the angular velocity prediction model.
[0108] In this embodiment, the historical angular velocities of samples in the second sample dataset are used as input, and the predicted angular velocities of the samples are used as the target output to train the target neural network model again. During training, optimization algorithms are used to adjust the model's parameters so that the model's predicted output is as close as possible to the predicted angular velocities of the samples. After a certain number of iterations of training, the model's ability to predict the thigh angular velocity of a specific user is improved, and the updated model at this point is the angular velocity prediction model.
[0109] In this embodiment of the application, the optimization algorithm can be expressed as:
[0110]
[0111] Among them, F base (·) indicates the forward propagation operation.
[0112] The method provided in this application updates the target neural network model based on data from a specific user, enabling the angular velocity prediction model to better adapt to individual differences and improve the accuracy and reliability of predicting the user's thigh angular velocity.
[0113] In some embodiments, step S101 can be implemented by the following steps:
[0114] Step S1011: Obtain the initial angular velocity of the user's thigh.
[0115] In this embodiment, the initial angular velocity of the user's thigh refers to the raw velocity value of the user's thigh rotating around the hip joint, which is collected in real time by a sensor. The initial angular velocity is a raw measurement result without any processing and may contain interference factors such as noise and outliers.
[0116] Step S1012: Smooth the initial angular velocity to obtain the angular velocity of the user's thigh.
[0117] In this embodiment of the application, smoothing is a data processing technique that removes noise and outliers from the initial angular velocity data by performing certain mathematical operations and statistical processing on the data, making the data sequence smoother and more stable, thereby better reflecting the true trend of the thigh angular velocity.
[0118] In this embodiment of the application, the smoothing algorithm may include: moving average method, exponential average method, and median filtering method, etc.
[0119] In some embodiments, a Butterworth low-pass filter (cutoff frequency 1.5Hz, sampling rate 200Hz, 8th order) can be used to remove high-frequency noise and ensure data quality.
[0120] The method provided in this application can improve the quality of data, thereby improving the accuracy of prediction.
[0121] Based on the foregoing embodiments, this application further provides a control method. Figure 3 This is a schematic diagram illustrating the implementation flow of a control method provided in an embodiment of this application, as shown below. Figure 3 As shown, by acquiring the angular velocity of the user's thigh, the angular velocity from the past to the present is input into the angular velocity prediction model to predict the angular velocity at a future moment. The angular velocity is then filtered and scaled to control the hip joint exoskeleton assistive device.
[0122] In this embodiment of the application, the angular velocity prediction mode can be obtained by continuously optimizing the basic model online, and the basic model can be obtained by prior walking data.
[0123] Based on the foregoing embodiments, this application further provides a schematic diagram of the implementation flow of the control method. Figure 4 This is a schematic diagram illustrating the implementation flow of a control method provided in an embodiment of this application, as shown below. Figure 4 As shown,
[0124] Step S401: Obtain IMU information.
[0125] In this embodiment of the application, the IMU is used to obtain the angular velocity of human walking under experimental conditions.
[0126] Step S402, data preprocessing.
[0127] Step S403: Design the neural network structure.
[0128] Step S404: Design training hyperparameters and initialize network parameters.
[0129] In this embodiment of the application, steps S401 to S402 can be executed simultaneously with steps S403 to S404, or they can be executed sequentially.
[0130] After steps S402 and S404 are completed, step S405 is executed.
[0131] Step S405: Perform supervised learning on the training set.
[0132] Step S406: Test the prediction accuracy.
[0133] Step S407: Repeat 1000 times.
[0134] In this embodiment of the application, if yes, then step S408 is executed; otherwise, step S405 is executed.
[0135] Step S408 yields the deep learning model with the highest prediction accuracy.
[0136] Step S409: The deep learning model with the highest accuracy is determined as the angular velocity prediction model.
[0137] After obtaining the angular velocity prediction model, proceed to step S410.
[0138] Step S410: Obtain IMU information.
[0139] In this embodiment of the application, the IMU is used to acquire angular velocity information during human daily walking and activities.
[0140] Step S411, data preprocessing.
[0141] After step S411, the angular velocity prediction mode obtained in step 409 can be input.
[0142] Step S412: Scaling and filtering of the angular velocity.
[0143] After scaling and filtering, hip joint assistance is applied.
[0144] In some embodiments, after step S411, the method further includes:
[0145] Step S413: Online dataset splitting.
[0146] Step S414: Online optimization of model parameters.
[0147] In this embodiment of the application, the angular velocity prediction model is obtained after optimization.
[0148] The method provided in this application addresses the generalization problem of hip exoskeleton assistive devices in different scenarios and the issue of personalized adaptation among different users. Since human movement is continuous and changes at a low frequency, using angular velocity as input for prediction demonstrates strong model generalization capabilities. Experiments with datasets verify that a deep learning model trained solely on flat ground walking data can be generalized to predict angular velocities in complex human activities such as slopes, stairs, squats, and sitting / standing. By scaling and filtering the future thigh angular velocity for assistance, the generalization problem of hip exoskeleton assistive devices in different scenarios is resolved. Regarding the angular velocity prediction model, continuous optimization of the deep learning model is possible during daily use and exoskeleton wearing, effectively adapting to the walking characteristics of different users and resolving the issue of personalized adaptation among different users.
[0149] It should be understood that the sequence number of each step in the above embodiments does not imply the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of this application.
[0150] According to the foregoing embodiments, this application provides a control device. The modules and units included in the device can be implemented by a processor in a computer device; of course, they can also be implemented by specific logic circuits. In the implementation process, the processor can be a central processing unit (CPU), a microprocessor (MPU), a digital signal processor (DSP), or a field programmable gate array (FPGA), etc.
[0151] This application provides a control device. Figure 5 This is a schematic diagram of the structure of a control device provided in an embodiment of this application, such as... Figure 5 As shown, the control device 500 includes:
[0152] The data acquisition module 501 is used to acquire the angular velocity of the user's thigh.
[0153] The angular velocity prediction module 502 is used to input the angular velocity into the angular velocity prediction model to obtain the predicted angular velocity;
[0154] Angular velocity scaling assist module 503 is used to determine the torque by which the hip joint exoskeleton assist device assists the hip joint of the thigh based on the predicted angular velocity;
[0155] Control module 504 is used to control the hip joint exoskeleton assist device based on the torque.
[0156] In some embodiments, determining the torque by which the hip exoskeleton assists the hip joint of the thigh based on the predicted angular velocity includes:
[0157] The predicted angular velocity is input into the angular velocity scaling assistance model to obtain the torque of the hip joint exoskeleton assisting the hip joint of the thigh. The angular velocity scaling assistance model includes a first calculation formula and a second calculation formula. When the predicted angular velocity is positive, the first calculation formula is used to calculate the torque, and when the angular velocity is negative, the second calculation formula is used to calculate the torque. The first calculation formula includes the calculation relationship between angular velocity, a first proportionality coefficient, and torque. The second calculation formula includes the calculation relationship between angular velocity, a second proportionality coefficient, and torque. The first proportionality coefficient and the second proportionality coefficient are different, and both the first proportionality coefficient and the second proportionality coefficient are greater than 0.
[0158] In some embodiments, the first proportionality coefficient is smaller than the second proportionality coefficient.
[0159] In some embodiments, the control device 500 further includes:
[0160] The first acquisition module is used to acquire a first sample dataset, wherein the sample data in the first sample dataset includes: the sample historical angular velocity and the sample predicted angular velocity of the thigh.
[0161] The configuration module is used to divide the sample dataset into a training set and a validation set, and to set the hyperparameters of the neural network model.
[0162] The training module is used to train the neural network model based on the training set to obtain an initial neural network model;
[0163] The performance determination module is used to determine the performance of each initial neural network model based on the validation set.
[0164] The first determining module is used to determine the initial neural network model with the best performance as the target neural network model;
[0165] The second determining module is used to determine the angular velocity prediction model based on the target neural network model.
[0166] In some embodiments, the second determining module includes:
[0167] The acquisition unit is used to acquire the historical angular velocity of the user's thigh;
[0168] A segmentation unit is used to segment the historical angular velocity to obtain a second sample dataset. The sample data in the second sample dataset includes: the sample historical angular velocity and the sample predicted angular velocity of the thigh.
[0169] The update unit is used to update the target neural network model based on the second sample dataset to obtain the angular velocity prediction model.
[0170] In some embodiments, the neural network model includes: an input layer, a feature extraction layer, a fully connected layer, and an output layer. The input layer is used to input the historical angular velocity of the sample. The feature extraction layer performs convolution and pooling processing on the historical angular velocity of the sample to extract the historical angular velocity features of the sample, and inputs the historical angular velocity of the sample into the fully connected layer. The fully connected layer is used to output a prediction result based on the historical angular velocity features of the sample, and inputs the prediction result into the output layer. The output layer is used to output the prediction result. The feature extraction layer includes: a first convolutional layer, a first max pooling layer, a second convolutional layer, a second max pooling layer, a third convolutional layer, and a third max pooling layer connected in sequence.
[0171] In some embodiments, the data acquisition module 501 includes:
[0172] An angular velocity acquisition unit is used to acquire the initial angular velocity of the user's thigh.
[0173] The mosaic processing unit is used to smooth the initial angular velocity to obtain the angular velocity of the user's thigh.
[0174] It should be noted that the information interaction and execution process between the above-mentioned devices / units are based on the same concept as the method embodiments of this application. For details on their specific functions and technical effects, please refer to the method embodiments section, and they will not be repeated here.
[0175] In addition, the control device described above can be a software unit, a hardware unit, or a combination of software and hardware. It can also be integrated into electronic devices as an independent component, or exist as an independent terminal device.
[0176] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the above-described division of functional units and modules is merely an example. In practical applications, the above functions can be assigned to different functional units and modules as needed, that is, the internal structure of the device can be divided into different functional units or modules to complete all or part of the functions described above. The functional units and modules in the embodiments can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit. Furthermore, the specific names of the functional units and modules are only for easy differentiation and are not intended to limit the scope of protection of this application. The specific working process of the units and modules in the above system can be referred to the corresponding process in the foregoing method embodiments, and will not be repeated here.
[0177] Figure 6 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application. Figure 6 As shown, the electronic device 60 of this embodiment may include: at least one processor 601 ( Figure 4 Only one processor 601, memory 602, and computer program 603 stored in memory 602 and executable on at least one processor 601 are shown. When processor 601 executes computer program 603, it implements the steps in any of the above method embodiments, or when processor 601 executes computer program 603, it implements the functions of each module / unit in the above device or system embodiments.
[0178] For example, computer program 603 may be divided into one or more modules / units, one or more of which are stored in memory 602 and executed by processor 601 to complete this application. One or more modules / units may be a series of computer program 603 instruction segments capable of performing a specific function, which describe the execution process of computer program 603 in electronic device 60.
[0179] This application also provides a computer-readable storage medium storing a computer program 603, which, when executed by a processor 601, implements the steps described in the above-described method embodiments.
[0180] This application provides a hip joint exoskeleton assistive device, including the aforementioned electronic device.
[0181] This application provides a computer program product that, when run on an electronic device, enables the electronic device to perform the steps described in the various method embodiments above.
[0182] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, all or part of the processes in the methods of the above embodiments of this application can be implemented by a computer program 603 instructing related hardware. The computer program 603 can be stored in a computer-readable storage medium. When executed by the processor 601, the computer program 603 can implement the steps of the various method embodiments described above. The computer program 603 includes computer program code, which can be in the form of source code, object code, executable files, or certain intermediate forms. A computer-readable medium can include at least: any entity or device capable of carrying computer program code to a terminal, a recording medium, a computer memory, a read-only memory (ROM), a random access memory (RAM), an electrical carrier signal, a telecommunication signal, and a software distribution medium. Examples include USB flash drives, portable hard drives, magnetic disks, or optical disks. In some jurisdictions, according to legislation and patent practice, computer-readable media cannot be electrical carrier signals or telecommunication signals.
[0183] In the above embodiments, the descriptions of each embodiment have different focuses. For parts that are not described in detail or recorded in a certain embodiment, please refer to the relevant descriptions of other embodiments.
[0184] Those skilled in the art will recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.
[0185] In the embodiments provided in this application, it should be understood that the disclosed apparatus / network devices and methods can be implemented in other ways. For example, the apparatus / network device embodiments described above are merely illustrative. For instance, the division of modules or units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between devices or units may be electrical, mechanical, or other forms.
[0186] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0187] The above-described embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit them. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of this application, and should all be included within the protection scope of this application.
Claims
1. A control device, characterized in that, include: The data acquisition module is used to obtain the angular velocity of the user's thigh. An angular velocity prediction module is used to input the angular velocity into an angular velocity prediction model to obtain a predicted angular velocity. An angular velocity scaling assist module is used to determine the torque by which the hip joint exoskeleton assist device assists the hip joint of the thigh based on the predicted angular velocity. The determination of the torque by the hip joint exoskeleton assist device assists the hip joint of the thigh based on the predicted angular velocity includes: inputting the predicted angular velocity into an angular velocity scaling assist model to obtain the torque by which the hip joint exoskeleton assist device assists the hip joint of the thigh. The angular velocity scaling assist model includes a first calculation formula and a second calculation formula. When the predicted angular velocity is positive, the first calculation formula is used to calculate the torque; when the angular velocity is negative, the second calculation formula is used to calculate the torque. The first calculation formula includes the calculation relationship between angular velocity, a first proportionality coefficient, and torque. The second calculation formula includes the calculation relationship between angular velocity, a second proportionality coefficient, and torque. The first proportionality coefficient and the second proportionality coefficient are different, and both the first proportionality coefficient and the second proportionality coefficient are greater than 0. A control module for controlling the hip exoskeleton assist device based on the torque.
2. The control device according to claim 1, characterized in that, The first proportionality coefficient is less than the second proportionality coefficient.
3. The control device according to claim 1, characterized in that, The control device is also used for: Obtain a first sample dataset, the sample data in the first sample dataset including: the sample historical angular velocity and the sample predicted angular velocity of the thigh; The sample dataset is divided into a training set and a validation set, and the hyperparameters of the neural network model are set. The neural network model is trained based on the training set to obtain an initial neural network model; The performance of each initial neural network model is determined based on the validation set. The initial neural network model with the best performance is selected as the target neural network model; The angular velocity prediction model is determined based on the target neural network model.
4. The control device according to claim 3, characterized in that, The step of determining the angular velocity prediction model based on the target neural network model includes: Obtain the historical angular velocity of the user's thigh; The historical angular velocities are segmented to obtain a second sample dataset, which includes sample historical angular velocities and sample predicted angular velocities of the thigh. The target neural network model is updated based on the second sample dataset to obtain the angular velocity prediction model.
5. The control device according to claim 4, characterized in that, The neural network model includes an input layer, a feature extraction layer, a fully connected layer, and an output layer. The input layer is used to input the historical angular velocity of the sample. The feature extraction layer is used to perform convolution and pooling processing on the historical angular velocity of the sample to extract the historical angular velocity features of the sample, and inputs the historical angular velocity of the sample into the fully connected layer. The fully connected layer is used to output a prediction result based on the historical angular velocity features of the sample, and inputs the prediction result into the output layer. The output layer is used to output the prediction result. The feature extraction layer includes a first convolutional layer, a first max pooling layer, a second convolutional layer, a second max pooling layer, a third convolutional layer, and a third max pooling layer connected in sequence.
6. The control device according to claim 1, characterized in that, The acquisition of the angular velocity of the user's thigh includes: Obtain the initial angular velocity of the user's thigh; The initial angular velocity is smoothed to obtain the angular velocity of the user's thigh.
Citation Information
Patent Citations
Hip joint exoskeleton control method and system
CN112237530A