Keywords

1 Introduction

Robotic-assisted therapy and rehabilitation is being used more and more frequently, especially robot-assisted active and passive lower limb rehabilitation robots. Diseases of the central nervous system cause gait disturbances. Early rehabilitation for a patient with central nervous system disease has been shown to be beneficial. However, initial gait training is difficult because of muscle weakness and older patients lose leg strength. During the patient’s walking training, therapists support the patient’s lower extremity movements and control the patient’s lower extremity movements. However, supporting movement of the lower extremities is a serious undertaking for therapists. Therefore, research and development of various gait rehabilitation devices are currently underway to identify methods to reduce physical burden for therapists.

The process of restoring function from these impairments with repetitive physiological movements to regain limb strength is known as motor rehabilitation therapy. These types of treatments are offered in platforms such as body weight support (BWS) along with a treadmill, the other type of system is a leg plate based BWS and a stationary exercise machine (without any any body weight support system). For stationary machines, a sitting/lying position is recommended for bedridden patients. One of the popular stationary machines is the Motion Generator which is a commercially available system that offers a wide range of services geared towards lower extremity rehabilitation therapies. Other research-based suggested rehabilitation mechanisms that can treat patients in the sitting/lying position are Physiotherabot, Supine, Lambda, Modified Lambda, ANKUR-LL1 [1], ANKUR-LL2 [2] and LLR-Ro [3] (Table 1).

Table 1 Item function table

The design for the rehabilitation robot here is a sitting/lying exoskeleton as shown in Fig. 1 that can help the patient perform exercises that resemble a human gait as much as possible. Section 2 of the paper presents the whole process of researching, calculating and solving problems related to robot kinematics. Unlike the upper extremities, which often include many complex movements, the lower extremities are mainly cyclical, moving with a tendency to repeat [4], so we will calculate to create a cycle of repetitive human gait exercises for the robot. There are many ways to set up motion trajectory such as Firefly Algorithm, Reinforcement Learning [5], Ant Colony. However, there is no method that can reestablish a motion trajectory similar to human gait in terms of both velocity and acceleration over time, the new trajectory setting method in this paper is designed to solve that problem. Section 3 is the conclusion and future development direction of the research.

Fig. 1
A diagram represents the principle model of a rehabilitation robot in a lying exoskeleton. The parts are numbered 1 to 11.

Principle model of robot

2 Kinematic

The robot has 3 rotating joints: hip joint, knee joint and ankle joint. The stitch sizes are shown as Fig. 2, the negative and positive directions of the angle specified counter clockwise are positive.

Fig. 2
A diagram representing the computational model of a robot has three different rotating joints. The distance between the joints marked d 1, d 2, and d 3, and the angles are represented as theta 1, theta 2, and theta 3, respectively.

Computational model

Robot Kinematics:

  • Hip Angle: θ1

  • Knee Angle: θ2

  • Ankle Angle: θ3

The chosen research method is to set up trajectories according to a measured input parameter. To get the input to calculate the motion trajectory, the therapist first needs to sit in the patient’s position, place his lower limb on the robot, and perform the desired exercise. The robot’s sensor will measure the angle, angular velocity and angular acceleration parameters from the therapist’s exercise. In this study, the construction of the robot is not completed yet, so the data will be taken from BOOK 1. Biomechanics and Motor Control of Human Movement, page 341–349 [6]. The measured parameter is the movement of the human walking in a cycle of 1 s, divided into 70 equal time intervals. After obtaining the parameters of the hip, knee and ankle angles of the person walking while walking. From the book, these data have a different way of correlating the coordinates of the joints than that of the robot model. It is necessary to convert those data to match the coordinate correlation of the joints of the robot and get the graphs of 2 consecutive cycles.

However, the above data is still not accurate, as it is known that the relationship between angle, angular velocity and angular acceleration is expressed through the following equation:

$$ \theta_{i + 1} = \theta_{i} + \dot{\theta }_{i} * t + \frac{{\ddot{\theta }_{i} }}{2} * t^{2} $$
(1)

where: \({\theta }_{i}\) is the angle of the joint at point i, \({\theta }_{i+1}\) is the angle of the joint after time t, \({\dot{\theta }}_{i}\) is the angular velocity of the joint at point i, \(\ddot{\theta }_{i}\) is the angular acceleration of the joint at point i.

But when replacing the values \(\theta_{i}\), \(\dot{\theta }_{i}\), \(\ddot{\theta }_{i}\) into the equation, the value \({\theta }_{i+1}\) is not the same as the measured data in the book, this happens due to the error of the sensor when measured cannot match the actual parameter. To solve the problem, this paper gives a method to interpolate the measured angular trajectory to find the suitable angular velocity and angular acceleration, interpolate the measured angular velocity to find the angular trajectory and angular acceleration, interpolate the angular acceleration to find the angular trajectory and angular velocity. Then, the most accurate interpolation method among the three options above will be selected. The criterion of the option is consistent with Eq. (1), while ensuring that the motion trajectory must be the most similar to the human gait.

2.1 Set Motion Trajectory by Interpolation Method

In this part, although the motion trajectory is established in accordance with Eq. (1), the error caused by the sensor has not been resolved, making the calculated graph shape will have a certain difference from the graph shape from the measured parameter. Research will focus on solving the problem of error in the following section.

  1. a.

    Interpolation based on measured angular trajectory:

Taking the angular trajectory as a standard to calculate the angular velocity and acceleration through the following equations:

$$ \ddot{\theta }_{i} = 2 * \frac{{\theta_{i + 1} - \theta_{i} + \dot{\theta }_{i} * t}}{{t^{2} }} $$
(2)
$$ \dot{\theta }_{i + 1} = \dot{\theta }_{i} + \ddot{\theta }_{i} * t $$
(3)

As shown in Fig. 3, in the first cycle, there are small sawtooth oscillation, on the second cycle there is a sawtooth oscillation error over the entire period. As for Fig. 4, there was sawtooth oscillation from the beginning, and it got worse in the second period.

Fig. 3
3 positive and negative line graphs of the angular velocity of the hip, knee, and ankle joint before correction depict degrees per second versus points for theta prime 1, theta prime 2, and theta prime 3. The values are highly fluctuating in all graphs.

Graph of angular velocity calculated based on angular trajectory

Fig. 4
3 positive and negative line graphs of the angular acceleration of hip, knee, and ankle joints before correction, representing degrees per second squared versus points for theta double prime 1, theta double prime 2, and theta double prime 3. The values are highly fluctuating in all graphs.

Graph of angular acceleration calculated based on angular trajectory

It happens because of Local error and Cyclic cumulative error:

  • Local error—fi: Is the error at point i, affected by the deviation of the measured trajectory value from the correct trajectory value, this value can be negative or positive

  • Cycle cumulative error—F = f1 + f2 + f3 + … f70 + D, this error exists only when the values at different times of a variable depend on each other.

  • Actual cycle deviation—D: In fact, when walking, people can’t walk all the same, the value of the starting point of cycle 2 cannot coincide with the value of the starting point of cycle 1 and so on. But in our calculation, the value at points in a cycle is the same for all periods, so this deviation occurs.

  1. b.

    Interpolation based on measured angular velocity:

Taking the angular velocity as a standard to calculate the angular trajectory and angular acceleration through the following equations:

$$ \ddot{\theta }_{i} = \frac{{\dot{\theta }_{i + 1} - \dot{\theta }_{i} }}{t} $$
(4)
$$ \theta_{i + 1} = \theta_{i} + \frac{{\dot{\theta }_{i} + \dot{\theta }_{i + 1} }}{2} * t $$
(5)

As shown in Fig. 5, during the first and second cycles, the shape of the angular trajectory graph is the same as the data plot in the book in Fig. 3, however, when it comes to the second cycle, all the points are all higher than those in cycle 1 by an amount exactly equal to the cyclic cumulative error. As for Fig. 6, the graph of angular acceleration is similar to the graph of the data in the book with almost all similarities except for two points transitioning from period 1 to period 2, this graph has no cyclic cumulative error.

Fig. 5
3-line graphs exhibit the trajectory of hip, knee, and ankle joints before correction of degree versus points. The peak points of theta 1 are (35, 6), and (110, 7), theta 2 are (50, 65), and (120, 69), theta 3 are (30, 6), (negative 20, 30), and (100, 4). Values are estimated.

Graph of angular trajectory calculated based on angular velocity

Fig. 6
3-line graphs illustrate angular acceleration of hip, knee, and ankle joints before correction of degrees per second squared versus points for theta double prime 1, theta double prime 2, and theta double prime 3. The values fluctuate in all graphs.

Graph of angular acceleration calculated based on angular velocity

2.2 Error Correction

In this part, the study will find a way to correct the error so that all the cyclic cumulative error are all zero, and at the same time ensure that the effect of the local error is small enough so that the graph resembles the human gait (Fig. 7).

Fig. 7
3-line graphs depict the trajectory of hip, knee, and ankle joints after correction of degree versus points. The peak points of theta 1 are (35, 6), (110, 6), theta 2 are (50, 65), (120, 65), and theta 3 are (30, 6), (30, negative 20), (100, 7), and (120, negative 20). Values are approximated.

Corrected angular trajectory graph

The error is corrected by correcting the parameters from the point where the calculated parameters differ the most from the measured parameters. After adjusting this parameter as optimally as possible, continue to move to the point where the difference is currently the largest, and so on until the errors are almost zero.

  1. a.

    Error correction of the method taking angular trajectory as standard.

As shown in Figs. 8 and 9, although the cyclic cumulative error has been resolved, the oscillation error no longer increases with each cycle. However, the oscillation affected by the local error have not been resolved yet. To completely solve this problem, many complex calculations are needed, the task of solving the local error is still in the process of being studied more thoroughly and perfectly (Fig. 10).

Fig. 8
3-line graphs of the angular velocity of hip, knee, and ankle joints before correction, representing degrees per second squared versus points for theta prime 1, theta prime 2, and theta prime 3. The values are highly fluctuating in all graphs.

Corrected angular velocity graph base on angular trajectory

Fig. 9
3-line graphs of the angular acceleration of hip, knee, and ankle joints before correction, representing degrees per second squared versus points for theta double prime 1, theta double prime 2, and theta double prime 3. The values are highly fluctuating in all graphs.

Corrected angular acceleration graph base on angular trajectory

Fig. 10
3-line graphs exhibit the trajectory of hip, knee, and ankle joints after correction of degree versus point. The peak points of theta 1 are (35, 6), and (110, 7), theta 2 are (50, 65), and (120, 69), theta 3 are (30, 6), (negative 20, 30), and (100, 4). Values are estimated.

Corrected angular trajectory graph base on angular velocity

  1. b.

    Error correction of the method taking angular velocity as standard.

As shown in Figs. 11 and 12, the cyclic cumulative error have been resolved, so that the deviation no longer increases after each cycle, and at the same time the effect of the local error is negligible, enough for us to conclude that this is a precise trajectory.

Fig. 11
3-line graphs illustrate the angular velocity of hip, knee, and ankle joints after correction of degrees per second versus points for theta prime 1, theta prime 2, and theta prime 3. The values are both increasing and decreasing in all graphs.

Corrected angular velocity graph

Fig. 12
3-line graphs depict angular acceleration of hip, knee, and ankle joints after correction of degrees per second squared versus points for theta double prime 1, theta double prime 2, and theta double prime 3. The values fluctuate in all graphs.

Corrected angular acceleration graph base on angular velocity

2.3 Conclusion of the Kinematic Section

After the whole process of studying kinematic calculations, it can be concluded that calculating and correcting with angular velocity as the standard is the most optimal solution for the following reasons:

  • The oscillation error of the method using the angular trajectory as the standard is too complicated to be solved perfectly.

  • The cyclic cumulative error in the angular velocity method only appears in the calculated angular trajectory graph, the error has a coefficient of first order with time.

  • The cyclic cumulative error in the angular acceleration method occurs in both graphs, with the angular trajectory graph being quadratic with time, angular velocity being linear with time.

  • To start the calculation using the angular acceleration method, it is necessary to provide two initial parameters, the angular trajectory and the angular velocity, while the other two options only need to provide one initial parameter.

  • After correction, both angular velocity and angular acceleration methods obtain a precise motion trajectory. However, the parameters of the graph taking the angular velocity as the standard are still closer to the parameters of the measured data than the method of taking the angular acceleration as the standard.

3 Conclusion and Discussion

The problems of robot kinematics and how to deal with them have been presented in the paper. A new method of setting motion trajectory has been proposed to solve the kinematics problem, along with new concepts such as local error, cyclic cumulative error, etc. This new method of setting motion trajectories requires pre-measured human kinematics, thereby establishing a trajectory for the robot that moves most like a human gait.

We are focusing our research to achieve a method of building a motion trajectory similar to that of a human’s gait for the robot, without directly depending on the kinematic parameters measured. To do this, we are currently trying to collect more kinematic parameters of different gaits, and are also looking to upgrade and improve our kinematic calculation method, especially interpolation based on angular trajectories. Although interpolation based on angular trajectories gives the worst results and is the most difficult to deal with, it shows that points in the angular trajectory of the human gait must follow a certain rule or formula. Deviating from that rule or formula results in oscillation errors in angular velocity and angular acceleration. To be able to develop the next step of research, it is essential for us to find that rule or formula.