Next Article in Journal
A Hierarchical Motion Planning Method for Mobile Manipulator
Next Article in Special Issue
Effect of Robotic-Assisted Gait at Different Levels of Guidance and Body Weight Support on Lower Limb Joint Kinematics and Coordination
Previous Article in Journal
Metric Learning-Guided Semi-Supervised Path-Interaction Fault Diagnosis Method for Extremely Limited Labeled Samples under Variable Working Conditions
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Customized Trajectory Optimization and Compliant Tracking Control for Passive Upper Limb Rehabilitation

1
School of Mechatronics Engineering, Henan University of Science and Technology, Luoyang 471023, China
2
Henan Provincial Key Laboratory of Robotics and Intelligent Systems, Luoyang 471000, China
3
Collaborative Innovation Center of Machinery Equipment Advanced Manufacturing of Henan Province, Luoyang 471003, China
4
School of Mechatronics Engineering, Zhengzhou University of Light Industry, Zhengzhou 450001, China
*
Author to whom correspondence should be addressed.
Sensors 2023, 23(15), 6953; https://doi.org/10.3390/s23156953
Submission received: 26 June 2023 / Revised: 21 July 2023 / Accepted: 2 August 2023 / Published: 4 August 2023
(This article belongs to the Special Issue Design and Application of Wearable and Rehabilitation Robotics)

Abstract

:
Passive rehabilitation training in the early poststroke period can promote the reshaping of the nervous system. The trajectory should integrate the physicians’ experience and the patient’s characteristics. And the training should have high accuracy on the premise of safety. Therefore, trajectory customization, optimization, and tracking control algorithms are conducted based on a new upper limb rehabilitation robot. First, joint friction and initial load were identified and compensated. The admittance algorithm was used to realize the trajectory customization. Second, the improved butterfly optimization algorithm (BOA) was used to optimize the nonuniform rational B-spline fitting curve (NURBS). Then, a variable gain control strategy is designed, which enables the robot to track the trajectory well with small human–robot interaction (HRI) forces and to comply with a large HRI force to ensure safety. Regarding the return motion, an error subdivision method is designed to slow the return movement. The results showed that the customization force is less than 6 N. The trajectory tracking error is within 12 mm without a large HRI force. The control gain starts to decrease in 0.5 s periods while there is a large HRI force, thereby improving safety. With the decrease in HRI force, the real position can return to the desired trajectory slowly, which makes the patient feel comfortable.

1. Introduction

With global aging and the increasing number of patients with limb motor dysfunction caused by nerve injury, how to meet the urgent rehabilitation demand and improve the quality of life of patients is a key issue to be solved [1]. Compared to the traditional manual rehabilitation method by therapists, the robot-assisted rehabilitation method has the advantages of high repeatability, high precision, and accurate quantitative evaluation, which has become a research hotspot worldwide [2]. Clinical results have shown that passive rehabilitation training can promote neural remodeling in the initial post-stroke period [3], which helps the muscles of the affected limb regain the ability to contract spontaneously. Traditional rehabilitation training is effective due to the practical experience of the physiotherapist and the real-time interaction. At present, the training trajectory of most rehabilitation robots can only be of some regular curves represented by clear mathematical functions. On the other hand, the training strategy cannot deal with a large HRI force, which might exert damage to the patient. Therefore, it is needed to study the customization of training trajectory and compliant control of passive rehabilitation training.
Emken et al. [4] proposed a teaching control strategy for a lightweight two-degree-of-freedom (DOF) lower limb rehabilitation robot. Feng et al. [5] fixed an accelerometer on the lower limbs to collect data during the training stage as expected input for rehabilitation training. Morita et al. [6] adopted an impedance control strategy to drag upper limb rehabilitation robots and used the least square method to fit the original noise data to approximate the intention of the rehabilitation physician. You et al. [7] designed a torque control algorithm based on the self-developed DC motor, where the weight of the robot arm and the joint friction torque of the robot are compensated to achieve easy dragging. Yang et al. [8] directly used the admittance algorithm in Cartesian space to calculate the inverse joint position solution to drag the lower limb rehabilitation robot, without optimizing and tracking the personalized trajectory. However, the doctor and the patient’s hands are coupled to the end of the robot, inevitably resulting in an unsmooth trajectory.
As for trajectory optimization, it is generally based on polynomials, including time-optimal, energy-optimal, and acceleration-optimal methods [9,10]. In this paper, the raw trajectory points are first compressed using the Douglas–Puke method [11] and then the NURBS curve [12] is used to interpolate between the compressed points. Dong improved the solution process of the B-spline for the joint trajectory fitting of the 6R robot [13]. Mei optimized the end trajectory of the 6-DOF high-speed parallel robot by combining the joint minimum acceleration and the B-spline curve. They focused on reducing the acceleration of the joint and the fitting trajectory has a large deformation relative to the original trajectory [14]. However, there is no smoothness optimization of the fitting trajectory.
As for the trajectory tracking control, Wu et al. designed a fuzzy sliding mode controller to achieve position tracking of the exoskeleton upper limb rehabilitation robot [15]. The physiotherapist can manually adjust the admittance parameters of the outer loop according to the patient’s condition so that the HRI force is included in the position control. Mushage et al. [16] designed a fuzzy neural network and an error-adaptive nonlinear controller based on state observation to track the trajectory of the 5DOFs upper limb exoskeleton and simulate the performance of the controller. Li et al. [17] designed a robust anti-interference controller to improve the trajectory tracking accuracy of the robot. Jia et al. [18] combined RBF neural network and PID for trajectory tracking control of a lower extremity exoskeleton robot. It can be seen that most researchers aim to improve the tracking accuracy with the complex controller. Good trajectory tracking ability can ensure the training effect, but the larger rigidity may make the patient feel uncomfortable or even injured once there is a large HRI force. Therefore, in a normal situation, the upper limb rehabilitation robot should enable trajectory tracking and, in an emergency, it should ensure safety. Trigili, Emilio et al. [19] use series elastic joint elements to achieve compliance of the rehabilitation robot. Miao et al. [20] design a position controller for passive training with a bilateral end-effector upper limb rehabilitation robot and an adaptive variable parameter controller to achieve compliance. Guo et al. [21] use a reinforcement learning algorithm to design a variable admittance control algorithm to achieve rehabilitation training matching the stiffness characteristics of patients’ lower limbs. Among them, the structure and modeling of special flexible components are complex and will have errors. Other compliance control algorithms can modify the parameters online but the algorithms are slightly complex for passive rehabilitation training. Furthermore, the return movement after compliance was not considered before.
Therefore, based on the self-developed 3DOFs end-effector upper limb rehabilitation robot, the methods of trajectory demonstration and optimization are proposed here. A variable gain control strategy is designed, enabling the robot to track the trajectory well with small HRI forces and comply with large HRI forces to ensure safety. Moreover, when the HRI force is reduced with a large position error, the position can also return to the desired trajectory with subdivision error, which means that the return action is not too rushed. It will be comfortable for the patient to continue the unfinished passive training.

2. Materials and Methods

2.1. Upper Limb Rehabilitation Robot System

The upper limb rehabilitation robot used in this paper is a self-developed 3DOF end-effector upper limb rehabilitation robot, which is mainly used for the training of the shoulder and elbow joints. It includes two horizontal rotating joints and a vertical prismatic joint. Figure 1 is a brief diagram of its structure, where Z 1 , Z 2 , and Z 3 represent the axes of the three joints, and q 1 , q 2 , and q 3 are the position variables of the three joints. The first two rotating joints are driven by two AC servomotors equipped with absolute encoders, and the third joint is driven by a double-acting cylinder. A displacement sensor is installed at the end of the cylinder and a three-dimensional force sensor is installed under the cylinder. Figure 2 is the prototype of the rehabilitation robot system. The program is developed with MATLAB software on the host computer. The slave computer executes the compiled control algorithm. The cylinder output force is controlled by a proportional pressure valve. Because of the overall height of the robot, the total stroke of the cylinder is 150 mm, which limits the training range of the shoulder joint in the sagittal plane. Furthermore, to ensure safety, the two rotating joints are mechanically limited. The working range of the robot in the vertical direction is the stroke of the cylinder which is very clear. Therefore, only the working space in the horizontal plane is shown in Figure 3.

2.2. Trajectory Customization

While customizing, the patient and the therapist simultaneously exert an interactive force at the end; the resultant force is as follows:
F int = F t + F p
where F t represents the force exerted by the physiotherapist and F p represents the force of the patient.
Therefore, part of F t should counteract F p so that the robot can move as the therapist wishes. The force F p is variable and difficult to predict. However, for patients who have almost completely lost the ability to move, their interaction force can be assumed to be 0. The robot will move to utilize a force-based admittance control algorithm.
To realize effortless teaching, the rotational friction F f must be compensated. The interaction force F int is then converted into torques τ h of joints according to Equation (2), where J is the Jacobin matrix of the robot. Then the admittance algorithm (3) is applied to generate the desired input of the joint position. Therefore, the robot can rotate when there are interaction forces.
τ h = J T F int
k Δ q = τ h
where k is the admittance coefficient and Δ q is the increment of the joint angle.
Regarding the prismatic joint, the static friction force will be tested and compensated according to Equation (4). In addition, the vertical load at the end can be detected and compensated with the help of the force sensor. The force applied by the physiotherapist F PZ is detected by the force sensor at the end and then the amount of pressure change in the rodless chamber is calculated by Equation (5). Therefore, the cylinder with different loads can be easily moved.
F f = 15 sgn ( F PZ )
where F PZ represents the vertical force exerted by the therapist.
F PZ = Δ P × A 1
where A 1 is the area of the cylinder’s piston, Δ P indicates the amount of change in pressure.

2.3. Trajectory Interpolation

A kth-degree NURBS curve defined by n + 1 polygon control vertices can be represented as a segmented rational polynomial function. The point on the NURBS curve for a given parameter u is obtained as follows.
P ( u ) = i = 0 n ω i d i N i , k ( u ) i = 0 n ω i N i , k ( u )
where ω i is the weight factor, which is related to the control points d i . The larger the value of the weight factor, the closer the curve is to the control vertex. The first and last weight factors ω 0 , ω n > 0 and the rest ω i ≥ 0, which prevent the denominator from being zero, retain the convex wrapping nature and do not degrade the curve to a point due to the weight factor. N i , k ( u ) is a kth-degree normal B-spline basis function defined by a non-periodic and nonuniform node vector U = u 0 , u 1 , , u n + k + 1 deduced from the Cox–De Boor recursive formula expressed as follows.
N i , 0 = 1 u i u u i + 1 0 Otherwise N i , k ( u ) = u u i u i + k u i N i , k 1 ( u ) + u i + k + 1 u u i + k + 1 u i + 1 N i + 1 , k 1 ( u ) Define 0 0 = 0
To make a kth-degree NURBS curve pass through a given set of points P i ( i = 0 , 1 , , n ) , it is necessary to ensure that the first and last points of the curve coincide with the points P 0 and P n , while ensuring that the nodes u i + k ( i = 0 , 1 , , n ) in the curve definition field correspond to P i one-to-one. A kth-degree NURBS curve with n segments will be defined by n + 3 control points D i ( i = 0 , 1 , , n + 2 ) , the weight factors ω i , and the node vector U = u 0 , u 1 , , u n + k + 3 .
To parameterize compressed points P i , three parameterization methods, named uniform parameterization, cumulative chord length parameterization, and centripetal parameterization, can be used. The second method can accurately reflect the distribution of the points P i and the fitting accuracy is high [22]. Therefore, the cumulative chord length parameterization is used to parameterize the points P i . The method is represented below.
u 0 = u 1 = u 2 = u 3 = 0 u i + 3 = u i + 2 + P i P i 1 / i = 1 n P i P i 1 u n + 3 = u n + 4 = u n + 5 = u n + 6 = 1
Variables that affect the fitting effect of the NURBS curve are control points, curve nodes, and weight factors [23]. In the experiment, to simplify the calculation, the weight factors are set to 1. The different compression thresholds lead to different initial via points as well as the shape and smoothness of the fitted NURBS curves. Therefore, an intelligent optimization algorithm, with curvature as the objective function and compression threshold as the variable for optimization, is proposed to produce a continuous smooth curve as the training trajectory. The curvature of a point on the NURBS curve is written as follows.
κ c = P ˙ ( u ) × P ¨ ( u ) P ˙ ( u ) 3
where P ˙ ( u ) and P ¨ ( u ) are the first and second derivatives of the curve that can be calculated according to Leibniz’s rule. Simplify Equation (6) as follows.
P ( u ) = A ( u ) W ( u )
Therefore, the kth-order derivative is deduced as
P ( k ) ( u ) = A ( k ) ( u ) i = 1 k C k i W ( i ) ( u ) P ( k i ) ( u ) W ( u )
Finally, the objective function is written as
o b j = j = 0 m κ c ( j )
where m represents the number of interpolation points on the curve.
In addition, the trajectory should be limited to the workspace of the robot. According to the inverse kinematics model of the robot, the position q of three joints can be obtained from the coordinate points in Cartesian space. The optimization constraint is expressed as:
q ̲ i q i q ¯ i i = 1 , 2 , 3
where q ̲ i and q ¯ i represent the minimum and maximum limits of the joint i.

2.4. Optimization Algorithm

The Butterfly Optimization Algorithm (BOA) is a new type of metaheuristic group intelligence optimization algorithm inspired by the foraging and courtship behavior of butterflies in nature based on sensed fragrance [24]. It includes global search and local search. Compared with some existing metaheuristic algorithms, the basic BOA operation is simple, with few adjusted parameters and good robustness, and it has achieved good results in the preliminary application of engineering practice [25].
The fragrance is formulated as a function of the physical intensity of the stimulus as follows:
f = c I a a c [ 0 , 1 ]
where f is the perceived magnitude of the fragrance, that is, how strong the fragrance is perceived by other butterflies, c is the sensory modality, I is the stimulus intensity, and a is the power exponent dependent on the modality, which accounts for the variable degree of absorption. Generally, c = 0.01 and a = 0.1. In the case of a maximization problem, the intensity can be proportional to the objective function.
Before the BOA enters the local or global search, the algorithm randomly generates the locations of individuals and produces their respective scents accordingly. Each butterfly moves to the current global optimal position g * during the global search phase. The global searching rule is written as:
x i t + 1 = x i t + f i r 1 2 g * x i t
where x i t is the position of the ith butterfly in the tth iteration. Here, g * represents the current best position. The fragrance of the ith butterfly is represented by f i and r 1 is a random number in [0, 1].
The local search phase can be represented as follows.
x i t + 1 = x i t + f i r 1 2 x j t x k t
where x j t and x k t are positions of the jth and kth butterflies, respectively. In the butterfly foraging, whether it is in the local search phase or the global search phase, it is determined by the switching probability P static = 0.8. Each iteration compares a random number r 2 ∈ [0, 1] with P static . The final position update formula of the butterfly algorithm is as follows.
x i t + 1 = x i t + f i r 1 2 g * x i t r 2 P static x i t + f i r 1 2 x j t x k t r 2 > P static
To solve the problems of slow convergence speed, low convergence accuracy, and easily falling into local optima of standard BOA, many researchers have improved the algorithms [26,27,28]. The improvements deal with multidimensional optimization problems. In this study, the trajectory data compression algorithm and BOA are combined to reduce the optimization problem from three-dimensional to one-dimensional. Therefore, in the iterative operation process, dynamic switching probability and t-variation strategies are used to improve the convergence speed and accuracy of BOA.
The idea of dynamic switching probability can be expressed in the following expression.
P d = ( T max n ^ T max ) 3
where T max represents the maximum number of iterations and n ^ represents the current number of iterations. In the iterative process, random numbers r 1 2 are replaced with a t-distribution function, preventing local optimization and improving the convergence speed.
The probability density function of the standard t-distribution is as follows.
f ( t ) = Γ ( n + 1 2 ) n π Γ ( n 2 ) ( 1 + t 2 n ) n + 1 2
where n is the freedom of the gamma function Γ .
With the number of iterations of BOA correlated, Equation (19) can be rewritten as
f ( t ¯ ) = Γ ( n + 1 2 ) n π Γ ( n 2 ) ( 1 + ( n ^ / T m a x ) 2 n ) n + 1 2
where t ¯ = n ^ / T m a x . In the experiment, let n = 20, the improved BOA algorithm is written as follows.
x i t + 1 = x i t + f i ( f ( t ¯ ) g * x i t ) , r 2 P d x i t + f i ( f ( t ¯ ) x j t x k t ) , r 2 > P d
The flow chart of the optimization is shown in Figure 4. Chose four test functions to test the performance of the proposed algorithm. The functions are listed in Table 1. The optimization results are shown in Figure 5. The iterative optimization processes of the improved BOA and the classical BOA are shown in Figure 6. The minimum sum of curvature of the improved BOA is 31.1908 after 100 iterations and the corresponding optimal compression threshold is 24.9157. The results of the classical BOA are 31.3277 and 24.042. It can be seen that the improved algorithm has a better regression speed and accuracy. The blue solid line represents the proposed improved algorithm. The red dashed line is the classical algorithm. It can be seen that improved BOA is better than the classical BOA.
The interpolation curve is shown in Figure 7, where the blue dotted line represents the raw trajectory and the red line represents the optimized interpolation curve.

2.5. Trajectory Tracking Controller

2.5.1. RBF Net-Based Controller

To realize the training motion planned by the rehabilitation physician, passive rehabilitation training requires good trajectory tracking performance under the premise of ensuring safety. First, a sliding mode controller based on the RBF approximation is designed to ensure good tracking performance in the training process. The dynamic equation of the n-joint robot is as follows.
M ( q ) q ¨ + C ( q , q ˙ ) q ˙ + G ( q ) + F ( q ˙ ) + τ d = τ
where M ( q ) is the n × n positive-definite inertia matrix, C ( q , q ˙ ) is the n × n Coriolis matrix, G ( q ) is an n × 1 vector of gravity forces, F ( q ˙ ) is an n × 1 vector of friction forces, τ d is the unknown applied interference and satisfies τ d d , d is the upper bound of τ d , and τ is the control input. Define the tracking error as follows.
e = q d q
Define the sliding surface as Equation (24)
r = e ˙ + Λ e
where Λ = Λ T > 0 . Substitute (23) into (24); we have the following expression.
q ˙ = r + q ˙ d + Λ e
Then, by substituting (25) and its derivative into (22), we obtain the simplified expression
M ( q ) r ˙ = C ( q , q ˙ ) r τ + Q ( x ) + τ d
where Q ( x ) = M ( q ) q ¨ d + Λ e ˙ + C ( q , q ˙ ) q ˙ d + Λ e + G ( q ) + F ( q ˙ ) . This is the model uncertainty, which needs to be approximated. Since the RBF network has universal approximation characteristics, the RBF neural network is used to approximate the unknown nonlinear function Q ( x ) and the RBF network algorithm is defined as follows.
φ j = exp x c j 2 2 σ j 2 Q ( x ) = W * T φ ( x ) + ε
where x is the input of the network, j is the jth node of the implicit layer of the network, φ ( x ) is the output of the Gaussian function of the network, and W * is the ideal weight of the network. The approximation error of the network is ε and ε ε N .
The input vector of the network is x = e T e ˙ T q d T q ˙ d T q ¨ d T . The robot control input is designed as below.
τ = Q ^ ( x ) + K v r v
where K v is a diagonal matrix with each element larger than 0 and Q ^ ( x ) = W ^ T φ ( x ) is the estimation output of the network. Define W ˜ = W * W ^ and then we have Q ( x ) Q ^ ( x ) = W ˜ T φ ( x ) + ε . Substituting (28) into (26), we obtain
M ( q ) r ˙ = K v + C ( q , q ˙ ) r + ζ 1
where ζ 1 = W ˜ T φ ( x ) + ε + τ d + v .
Define the Lyapunov function as below.
V = 1 2 r T M ( q ) r + 1 2 tr W ˜ T Ξ 1 W ˜
where tr W ˜ T Ξ 1 W ˜ is the trace of the matrix W ˜ T Ξ 1 W ˜ and Ξ is a positive diagonal matrix. The derivative of V is written as
V ˙ = r T M ( q ) r ˙ + 1 2 r T M ˙ ( q ) r + tr W ˜ T Ξ 1 W ˜ ˙
Substitute (29) and M ˙ ( q ) 2 C ( q , q ˙ ) = 0 into (31) to obtain the following expression.
V ˙ = r T K v r + tr W ˜ T Ξ 1 W ˜ ˙ + φ r T + r T ε + τ d + v
To make the system stable, design the adaptation law as W ˜ ˙ = W ^ ˙ = Ξ φ ( x ) r T with Ξ > 0 . Additionally, design a robust term v = ε N + d sgn ( r ) so that we can obtain V ˙ = r T K v r 0 . According to the LaSalle theorem, the closed-loop system is asymptotic and stable.

2.5.2. Variable Gain Strategy

Because the third joint of the robot is perpendicular to the first two rotating joints, the motion is decoupled between them, which can be controlled separately. Considering the compressibility of the gas, the position control of the cylinder is controlled by the PID combined with a velocity feedforward controller. Because the third joint is driven by air pressure resulting in compliant properties, only the first two joints are designed with a variable gain strategy to cope with excessive HRI force and ensure the safety of the training.
Now, define the driving torque of the servomotor as follows.
τ c = τ + τ h
where τ h is calculated according to Equation (2).
Based on the control strategy mentioned above, the control gain is K v of Equation (28). According to the HRI force F h , the variable gain strategy is designed as follows.
K v = γ e F h 2 / σ 1
where γ is a 2 × 2 positive definite diagonal matrix. This determines the maximum of K v . F h is the resultant force of F X and F Y . This is a scaler. σ 1 is a scaler and determines the working range of F h . The smaller the value of σ 1 , the smaller F h resulting in a maximum of K v .
According to (32) and (33), the value of K v will be small when there is a large HRI force, meaning that τ h becomes the main driving torque and the robot will move away from the desired trajectory. Once the HRI force decreases, K v increases, returning the real position to the desired trajectory to continue training. But if the value of the control gain is large, the return motion will be very fast, causing an uncomfortable feeling. Therefore, design the position error subdivision strategy so that the trajectory tracking process is gradually completed through small errors.
Assume the expected position of the deviated joint is q d , the actual position is q r , and the position error is E. Set a constant χ to divide the error E and each small segment of error will form a transitional expected position q d i , as shown in Figure 8. The formula is as follows.
q d i = q r + E / χ χ = ceil ( λ | E | )
where the ceil() function returns the smallest integer greater than or equal to the specified expression. This function makes the parameter χ vary with the error E. For instance, in the beginning, E is large, making χ large, which ensures the subdivided error is small and the motion is slow. If χ is a fixed constant, the subdivided error will be large in the beginning and very small in the end, which leads to fast motion in the beginning and not being able to return to the desired trajectory in the end. The absolute value of E is taken to prevent χ from being zero. As the error in the tracking process always exists, so the minimum of χ is 1. The coefficient λ amplifies | E | to a value that is greater than 1, thereby avoiding the situation where χ is always 1.
The control algorithm proposed here is shown in Figure 9.

3. Tracking Experiments and Results

3.1. Trajectory Customization Experiment

The first two joints are driven by servomotors. Different input voltages lead to different output torque. Therefore, ramp signals are used to test the static friction of the rotation joints. As shown in Figure 10, the voltage that drives joint 1 to start rotating is 2.2 v (point A ) and that for joint 2 is 3.7 v (point B). They are used as compensation for the static friction of the rotating joint.
Figure 11 shows the customization force of the first two joints. The blue lines represent the force of the X and Y directions (denoted F X and F Y ), which are measured by the force sensor. The orange lines represent the position of X and Y. Some force is still needed to rotate the robot, as the static friction and inertia forces may vary with the robot configurations. However, the largest force is 5.021 N , which means that it is easy to rotate the first two joints.
Regarding the prismatic joint, the vertical load at the end can be detected and compensated with the help of the force sensor. The static friction force test is shown in Figure 12. The solid blue line is the force and the crest and trough corresponding to the moments when the cylinder starts to move down and up. So, the force can be regarded as the friction force. The static friction is compensated according to Equation (4). Figure 13 is divided into three parts (A, B, and C ) showing compensation with three different vertical loads (22.5 N, 30.8 N , and 34.3   N ). The orange solid line represents the displacement of the cylinder and the blue line represents the vertical load as well as the customization force. The cylinder can easily stay at different positions with compensation. The maximum customization force is 6.41 N of Part A, 5.16 N of Part B, and 4.6 N of Part C. That is, the cylinder can be easily moved with different loads.

3.2. Trajectory Tracking Experiment

Let a = 15 , b = 10 , σ 1 = 500 , so the upper bound of K v is 25. The two joints use the same control parameter. During the experiment, the subject does not exert an active force and the tracking result is shown in Figure 14. The blue dashed line is the desired trajectory and the orange solid line is the real trajectory. Figure 15 shows the tracking performance in the horizontal plane and Figure 16 displays the cylinder tracking result. It can be seen that the tracking error (Figure 17) is mainly from the third joint. The maximum tracking error is shown in Table 2. From the experiment results, it can be concluded that, without a large HRI force, better trajectory tracking can be achieved, which can meet the needs of passive training.

3.3. Compliant Control Experiment

During the experiment, the subjects randomly applied active force and the tracking results are shown in Figure 18. It can be seen that the actual position (solid orange line) deviates from the expected trajectory (blue dashed line). That is, trajectory tracking can adapt to the interaction forces randomly applied by subjects during the training process, verifying the effectiveness of variable parameters. Figure 19 shows the changes in the control parameter K v caused by the interaction force. The black dotted line represents the change in control parameters, the blue solid line represents the force F X in the X direction, and the blue dotted line represents the force F Y in the Y direction. Obviously, as the interaction force increases, the control gain decreases from the maximum value of 25. It can be seen from the enlarged figure of first compliance that the response time of impedance parameters to the interaction force is within 0.5 s. At this point, the main torque to drive the robot to move is τ h , so the tracking can be compliant with the interaction force. It also can be seen that K v changes almost simultaneously with the interaction force.
Figure 20 shows the displacement of robot joint 1 with the variation of the parameter K v . The black dotted line in the figure represents the parameter K v . The pink stepped dash-dotted line represents the sampled expected position when the position of joint 1 deviates. The solid blue line represents the expected position of joint 1 in real-time. The red dotted line represents the actual position. There were three significant position deviations in the experiment, with three sampled expected positions ( 0.656 , 0.159 , 0.608 rad ) . Taking the first large displacement deviation as an example: when t = 7.45 s , the value of K v begins to decrease. From the enlarged image indicated by the arrow, it can be seen that the actual position starts to deviate from the expected position at t = 7.6 s . It can be considered that the controller can comply with the interaction force in 0.1 s . Sample the first desired position at t = 7.88 s , which is the position that needs to be returned to after the first deviation. The actual position returned to −0.656 at t = 13.09 s , while the value of K v returned to 24.98 at t = 9.92 s . It can be concluded that it takes 3.17 (13.09–9.92) seconds to return to the expected position after the significant external force disappears. So, the strategy designed here can comply with large forces quickly and return slowly, ensuring both safety and comfort. Figure 21 shows the displacement of robot joint 2. The three deviation positions are 1.793, 1.471, and 1.401 rad. The same analysis process as for joint 1 can lead to the same conclusion.

4. Discussion

The customization trajectory combines the training experience of rehabilitation physicians with the different characteristics of patients. Therefore, the training trajectory is of physiological significance and more effective. Hou et al. designed a load-adaptive zero-force control algorithm based on joint torque sensors [29]. However, installing a sensor at every joint will make the structure complex. Additionally, the control algorithm is complicated. The robot system in this study is only equipped with a three-dimensional force sensor at the end to detect the HRI force. Therefore, the vertical load and the gravity of the third link can be detected and compensated directly. As for the first two links of the robot, there is no need to compensate for their gravity because they rotate in the horizontal plane. However, the static friction of the rotating joint is identified and compensated. Meanwhile, the interactive force is converted into the joint space by the Jacobi matrix and then the admittance algorithm is used to achieve easy dragging of the robot. The approach avoids the inverse kinematic model compared with the direct application of the admittance algorithm in Cartesian space. Most studies only filtered the original trajectory data to reduce jitters after obtaining the trajectory [30]. Although the high-frequency noise was removed, some extreme points corresponding to the range of joint motion of the upper limb may be deleted too. In this paper, the data compression algorithm can retain the outermost point of the original trajectory and maintain the topological shape of the trajectory, which will ensure the maximum motion position. Then the improved BOA algorithm is adopted to obtain an interpolation NURBS curve with the smallest sum of curvature. However, the velocity and acceleration planning of the interpolation curve are not carried out in this study and they are just generated by the derivative of the NURBS curve, which can be adjusted by changing the density of interpolating points and the time to complete the training trajectory. The maximum tracking error in trajectory tracking control is within 12 mm , which may be due to the RBF network not being able to accurately approximate the dynamic model of the robot. The compliant control strategy can realize the compliant tracking property and slow returning movement. Compared with the parameter adaptation control strategy [31], the adaptability here may be inferior but the design of the controller is simpler, which is convenient for deployment and application.

5. Conclusions

In this paper, we introduced the self-developed upper limb rehabilitation training robot system briefly. The robot is a 3 DOFs end-effector robot, with the third prismatic joint vertical to the first two rotating joints. So, the motion of the third joint is uncoupled from the first two joints, which simplified the motion analysis and control. The trajectory customization with human–robot coupling is completed by load and friction compensation and admittance control. The customization forces are within 6 N making it easy to customize a personal training trajectory. The NURBS curve is used to interpolate between the compressed points and the curvature of the trajectory is optimized. It smooths the training trajectory and retains the topological shape of the original trajectory. Finally, the variable control gain algorithm based on the RBF network is designed. The proposed method ensures the trajectory tracking error within 12 mm and compliance with the large HRI force in 0.5 seconds to ensure the safety of passive training. With the method of error subdivision, the return movement after compliance is slow, making the patient feel comfortable. In the future, more useful rehabilitation modes will be studied and designed, especially the assisted-as-needed active rehabilitation strategy that is suitable for the patient who has regained some muscle strength.

Author Contributions

Conceptualization, L.L. and J.H.; methodology, L.L. and J.H.; writing—original draft preparation, L.L.; writing—review and editing, J.H., X.L., B.G. and X.W.; project administration, J.H.; funding acquisition, J.H. All authors have read and agreed to the published version of the manuscript.

Funding

This work was supported by the Project of Science and Technology of Henan Province (212102310890) and (212102310249).

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Informed consent was obtained from all subjects involved in the study.

Data Availability Statement

All test data mentioned in this paper will be made available upon request to the corresponding author’s email with appropriate justification.

Conflicts of Interest

The authors declared no potential conflict of interest with respect to the research, authorship, and/or publication of this article.

References

  1. Wang, W.; Jiang, B.; Sun, H.; Ru, X.; Sun, D.; Wang, L.; Feigin, V.L. Prevalence, incidence, and mortality of stroke in China clinical perspective. Circulation 2017, 135, 759–771. [Google Scholar] [CrossRef]
  2. Lin, D.J.; Finklestein, S.P.; Cramer, S.C. New directions in treatments targeting stroke recovery. Stroke 2018, 49, 3107–3114. [Google Scholar] [CrossRef] [Green Version]
  3. Gassert, R.; Dietz, V. Rehabilitation robots for the treatment of sensorimotor deficits: A neurophysiological perspective. J. Neuroeng. Rehabil. 2018, 15, 1–15. [Google Scholar] [CrossRef] [Green Version]
  4. Emken, J.L.; Harkema, S.J.; Beres-Jones, J.A.; Ferreira, C.K.; Reinkensmeyer, D.J. Feasibility of manual teach-and-replay and continuous impedance shaping for robotic locomotor training following spinal cord injury. IEEE Trans. Biomed. Eng. 2007, 55, 322–334. [Google Scholar] [CrossRef] [PubMed] [Green Version]
  5. Feng, Y.; Wang, H.; Lu, T.; Vladareanuv, V.; Li, Q.; Zhao, C. Teaching training method of a lower limb rehabilitation robot. Int. J. Adv. Robot. Syst. 2016, 13, 57. [Google Scholar] [CrossRef] [Green Version]
  6. Morita, Y.; Nagasaki, M.; Ukai, H.; Matsui, N.; Uchida, M. Development of rehabilitation training support system of upper limb motor function for personalized rehabilitation. In Proceedings of the 2008 IEEE International Conference on Robotics and Biomimetics, Bangkok, Thailand, 22–25 February 2009; pp. 300–305. [Google Scholar]
  7. You, Y.P.; Zhang, Y.; Li, C.G. Force-free Control for the Direct Teaching of Robots. J. Mech. Eng. 2014, 50, 10–17. [Google Scholar] [CrossRef]
  8. Yang, H.; Han, J.H.; Li, X.P. Research on Drag and Teach of Horizontal Lower Limb Rehabilitative Robot. Mach. Des. Manuf. 2020, 272–275. [Google Scholar]
  9. Fang, Y.; Hu, J.; Liu, W.; Shao, Q.; Qi, J.; Peng, Y. Smooth and time-optimal S-curve trajectory planning for automated robots and machines. Mech. Mach. Theory 2019, 137, 127–153. [Google Scholar] [CrossRef]
  10. Zhao, J.Y.; Zhang, P.; Li, F. Energy Saving Trajectory Planning for Industrial Robot in Manufacturing Environment. Robot. Robot. 2021, 653–663. [Google Scholar]
  11. Wu, D.; Wang, Q.; Wang, H.Q. Multi-scale Representation and Compression Algorithm for Vector Data Based on Spline. Comput. Eng. 2012, 38, 201–203. [Google Scholar]
  12. Feng, F.; Jiang, W. A cubic b-spline-based vector data compression algorithm with boundary constraints. J. Math. 2021, 41, 247–256. [Google Scholar]
  13. Dong, J.; Wang, T.; Dong, J.; Zhang, Y.; Tao, H. Applications of Improved B-Spline Curves to 6R Robot Trajectory Optimization. China Mech. Eng. 2018, 29, 193–200. [Google Scholar]
  14. Mei, J.; Zhang, F.; Zang, J.; Zhao, Y.; Yan, H. Trajectory optimization of the 6-degrees-of-freedom high-speed parallel robot based on B-spline curve. Sci. Prog. 2020, 103, 458–469. [Google Scholar] [CrossRef]
  15. Wu, Q.; Wang, X.; Wu, H.; Chen, B. Fuzzy Sliding Mode Admittance Control of the Upper Limb Rehabilitation Exoskeleton Robot. Robot 2018, 40, 457–465. [Google Scholar]
  16. Mushage, B.O.; Chedjou, J.C.; Kyamakya, K. Fuzzy neural network and observer-based fault-tolerant adaptive nonlinear control of uncertain 5-DOF upper-limb exoskeleton robot for passive rehabilitation. Nonlinear Dyn. 2017, 87, 2021–2037. [Google Scholar] [CrossRef]
  17. Li, X.; Zhong, J. Research on upper limb rehabilitation robot system based on robust control theory. Inf. Technol. 2018, 5–10. [Google Scholar]
  18. Shi, J.; Xu, L.; Cheng, G.; Xu, J.; Chen, S.; Liang, X. Trajectory tracking control based on RBF neural network of the lower limb rehabilitation robot. In Proceedings of the 2020 IEEE International Conference on Mechatronics and Automation (ICMA), Beijing, China, 13–16 October 2020; pp. 117–123. [Google Scholar]
  19. Trigili, E.; Crea, S.; Moisè, M.; Baldoni, A.; Cempini, M.; Ercolini, G.; Marconi, D.; Posteraro, F.; Carrozza, M.C.; Vitiello, N. Design and experimental characterization of a shoulder-elbow exoskeleton with compliant joints for post-stroke rehabilitation. IEEE/ASME Trans. Mechatron. 2019, 24, 1485–1496. [Google Scholar] [CrossRef]
  20. Miao, Q.; Peng, Y.; Liu, L.; McDaid, A.; Zhang, M. Subject-specific compliance control of an upper-limb bilateral robotic system. Robot. Auton. Syst. 2020, 126, 103478. [Google Scholar] [CrossRef]
  21. Bingjing, G.; Jianhai, H.; Xiangpan, L.; Lin, Y. Human-robot interactive control based on reinforcement learning for gait rehabilitation training robot. Int. J. Adv. Robot. Syst. 2019, 16, 1729881419839584. [Google Scholar] [CrossRef] [Green Version]
  22. Huo, Y.G.; Gao, Y.; Song, X.D. Effect of Different Parameterization Methods on the Cubic NURBS Curve Fitting Errors. Mech. Electr. Eng. Technol. 2019, 48, 54–57. [Google Scholar]
  23. Zhang, M.; Li, Y.J.; Deng, C.Y. Optimizing NURBS Curves Fitting by Least Squares Progressive and Iterative Approximation. J. Comput. Aided Des. Comput. Graph. 2020, 32, 568–574. [Google Scholar]
  24. Arora, S.; Singh, S. Butterfly optimization algorithm: A novel approach for global optimization. Soft Comput. 2019, 23, 715–734. [Google Scholar] [CrossRef]
  25. Gao, W.X.; Liu, S.; Xiao, Z.Y.; Yu, J.F. Butterfly Optimization Algorithm Based on Cauchy Variation and Adaptive Weight. Comput. Eng. Appl. 2020, 56, 43–50. [Google Scholar]
  26. Shouyu, L.I.; Qing, H.E.; Nisuo, D.U. Butterfly Optimization Algorithm for Chaotic Feedback Sharing and Group Synergy. J. Front. Comput. Sci. Technol. 2021, 16, 1661–1672. [Google Scholar]
  27. Tubishat, M.; Alswaitti, M.; Mirjalili, S.; Al-Garadi, M.A.; Rana, T.A. Dynamic butterfly optimization algorithm for feature selection. IEEE Access 2020, 8, 194303–194314. [Google Scholar] [CrossRef]
  28. Arora, S.; Singh, S.; Yetilmezsoy, K. A modified butterfly optimization algorithm for mechanical design optimization problems. J. Braz. Soc. Mech. Sci. Eng. 2018, 40, 21. [Google Scholar] [CrossRef]
  29. Hou, C.; Wang, Z.; Zhao, Y.; Song, G. Load Adaptive Force-free Control for the Direct Teaching of Robots. Robot 2017, 439–448. [Google Scholar]
  30. Huang, Y.L.; Chen, N.J.; Fan, Z. Robot Compliance Teaching and Reappearance Based on Human-Robot Interaction. J. Univ. Jinan Sci. Technol. 2021, 35, 108–114. [Google Scholar]
  31. Ayas, M.S.; Altas, I.H. Fuzzy logic based adaptive admittance control of a redundantly actuated ankle rehabilitation robot. Control. Eng. Pract. 2017, 59, 44–54. [Google Scholar] [CrossRef]
Figure 1. Robot structure.
Figure 1. Robot structure.
Sensors 23 06953 g001
Figure 2. The apparatus of the rehabilitation robot system.
Figure 2. The apparatus of the rehabilitation robot system.
Sensors 23 06953 g002
Figure 3. The horizontal workspace of the robot.
Figure 3. The horizontal workspace of the robot.
Sensors 23 06953 g003
Figure 4. The optimization process of the improved BOA.
Figure 4. The optimization process of the improved BOA.
Sensors 23 06953 g004
Figure 5. Optimization of the test functions.
Figure 5. Optimization of the test functions.
Sensors 23 06953 g005
Figure 6. The curvature optimization process.
Figure 6. The curvature optimization process.
Sensors 23 06953 g006
Figure 7. The NURBS interpolation curves of an arbitrary spatial trajectory.
Figure 7. The NURBS interpolation curves of an arbitrary spatial trajectory.
Sensors 23 06953 g007
Figure 8. Subdivision of the error.
Figure 8. Subdivision of the error.
Sensors 23 06953 g008
Figure 9. The control algorithm.
Figure 9. The control algorithm.
Sensors 23 06953 g009
Figure 10. The static friction of joint 1 and joint 2.
Figure 10. The static friction of joint 1 and joint 2.
Sensors 23 06953 g010
Figure 11. The customization test of joint 1 and joint 2.
Figure 11. The customization test of joint 1 and joint 2.
Sensors 23 06953 g011
Figure 12. The static friction of joint 3.
Figure 12. The static friction of joint 3.
Sensors 23 06953 g012
Figure 13. The customization force of joint 3.
Figure 13. The customization force of joint 3.
Sensors 23 06953 g013
Figure 14. Trajectory tracking results.
Figure 14. Trajectory tracking results.
Sensors 23 06953 g014
Figure 15. The tracking results in the horizontal plane.
Figure 15. The tracking results in the horizontal plane.
Sensors 23 06953 g015
Figure 16. The position tracking of joint 3.
Figure 16. The position tracking of joint 3.
Sensors 23 06953 g016
Figure 17. The tracking error in Cartesian space.
Figure 17. The tracking error in Cartesian space.
Sensors 23 06953 g017
Figure 18. The performance of compliant properties in the horizontal plane.
Figure 18. The performance of compliant properties in the horizontal plane.
Sensors 23 06953 g018
Figure 19. The change in K v according to HRI force.
Figure 19. The change in K v according to HRI force.
Sensors 23 06953 g019
Figure 20. The position of joint 1 with the variation of K v .
Figure 20. The position of joint 1 with the variation of K v .
Sensors 23 06953 g020
Figure 21. The position of joint 2 with the variation of K v .
Figure 21. The position of joint 2 with the variation of K v .
Sensors 23 06953 g021
Table 1. Test functions.
Table 1. Test functions.
FunctionDimensionIntervalMinimum
f = x 1 2 + x 2 2 2 [ 10 10 ] 0
f = x 1 2 + 2 x 2 2 0.3 cos ( 3 π x 1 ) 0.4 cos ( 4 π x 2 ) + 0.7 2 [ 10 10 ] 0
f = 20 e 0.2 ( x 1 2 + x 2 2 ) / 2 e ( cos ( 2 π x 1 ) + cos ( 2 π x 2 ) ) / 2 + 20 + e 2 [ 10 10 ] 0
f = | x 1 | + | x 2 | + | x 1 | | x 2 | 2 [ 10 10 ] 0
Table 2. Maximum trajectory tracking error.
Table 2. Maximum trajectory tracking error.
DirectionXYZ
Maximum error 7.437 mm 8.269 mm 11.19 mm
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Li, L.; Han, J.; Li, X.; Guo, B.; Wang, X. Customized Trajectory Optimization and Compliant Tracking Control for Passive Upper Limb Rehabilitation. Sensors 2023, 23, 6953. https://doi.org/10.3390/s23156953

AMA Style

Li L, Han J, Li X, Guo B, Wang X. Customized Trajectory Optimization and Compliant Tracking Control for Passive Upper Limb Rehabilitation. Sensors. 2023; 23(15):6953. https://doi.org/10.3390/s23156953

Chicago/Turabian Style

Li, Liaoyuan, Jianhai Han, Xiangpan Li, Bingjing Guo, and Xinjie Wang. 2023. "Customized Trajectory Optimization and Compliant Tracking Control for Passive Upper Limb Rehabilitation" Sensors 23, no. 15: 6953. https://doi.org/10.3390/s23156953

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop