#### Abstract

In this paper, a repetitive control scheme of a 2-DOF robotic manipulator based on the improved cubic B-spline curve is proposed. Firstly, a repetitive controller for robotic manipulator is designed, which is composed of an iterative controller and disturbance observer. Then, an improved B-spline optimization scheme is introduced to divide the task of the robotic manipulator into three intervals. A correction function is added to each interval of cubic spline interpolation. Finally, a variety of cases are designed and simulated by MATLAB. The experimental results show that, compared with the conventional B-spline, the improved B-spline has better performance in tracking accuracy and smoothness of motion trajectory. By changing the mechanism of the manipulator, the cases of different weights and lengths are designed. The experimental results in these cases show that the proposed scheme can be applied to most of the 2-DOF robotic manipulator control systems.

#### 1. Introduction

Manipulators have been commonly employed in industrial manufacturing fields, including spot welding, painting, machine operation, electronic packaging, and palletizing. The robotic manipulator system will replace the traditional manual work and become the mainstream of industrial development. The robotic manipulator control system is a multi-input, multi-output, highly coupled nonlinear complex system, which is affected by many uncertainties and interference factors. In particular, the trajectory control of robot is very complex, and it is difficult to establish a dynamic model. In recent years, a practical iterative learning control method is proposed in [1, 2]. This method has the characteristics of simple structure, small amount of calculation, and no need of accurate mathematical model of the system. It is very suitable for solving the problem of control object under repetitive working mode. In the practical application of robotics and automatic machines, the tasks performed are usually repetitive or periodic. Many of these tasks merely imply a continuous repetition of a given path. From the control point of view, it is necessary to identify the periodic external signals that can be considered as known, because they refer to planned trajectories or disturbances, and their cycle times can be easily measured or known in advance. In order to improve the trajectory tracking accuracy, repetitive control (RC) is a simple design but effective method, because it eliminates the tracking error in the repetitive process by iterative learning. RC was first developed by Inoue et al. [3, 4]. It has been applied to many other proton synchrotron power supply systems. The successful applications of RC in many applications are reported in [5, 6], such as high-precision trajectory tracking of servo mechanism, torque vibration suppression in motor, noise elimination in power supply, and industrial manipulator.

In recent years, many control techniques have been proposed for manipulators. Wang and Zhang proposed an adaptive neural network tracking control scheme for robotic manipulator, which achieved good performance in dealing with model uncertainty [7]. Aydin proposed a robust sliding mode control scheme to suppress model uncertainty [8]. Mu et al. proposed a PD feedback control law to deal with the parameter changes when capturing objects [9]. Dai et al. proposed a model predictive control scheme for redundant manipulators with online identification of unknown parameters [10]. Xiang and Yan analyzed the uncertainty model of the dynamic model with clearance joints [11]. In [12], an inverse dynamic control method is proposed to solve the nonlinear problem of industrial robotic manipulator. Lu and Jia proposed an Adaptive Coordinated Control for a free-floating space manipulator with uncertain kinematics and dynamics characteristics [13]. However, the above schemes do not consider the repetitive reference trajectory tracking control under model uncertainty. In fact, considering that the existence of vibration interference has a great impact on repetitive motion, repetitive reference trajectory tracking plays an important role in many cases.

Industrial manipulator control has various characteristics, among which the control system with unknown parameters or uncertain model is the difficulty. Therefore, the control of complex systems such as robot manipulator system with uncertainties has become a worthy research topic. An improved funnel function feedback controller is proposed for nonlinear servo mechanism [14]. In [15], an unknown input observer and an adaptive parameter estimation method are proposed to solve the uncertainty of engine torque. Considering the uncertainty of the contact surface of the manipulator, Li et al. proposed a decentralized adaptive fuzzy control method [16]. For the manipulator system, Fang et al. proposed a fuzzy control scheme with adaptive algorithm, simplified the logic structure, and optimized the amount of calculation to adapt to the practical application [17]. Wang et al. designed a new nonsingular fast terminal sliding surface and used time delay estimation technology to eliminate the complex nonlinear effect of the manipulator [18]. In [19], adaptive control is introduced into time delay estimation to improve the accuracy and speed of nonsingular fast terminal sliding mode. In order to solve the influence of various uncertain factors in manipulator system, a variety of observers were proposed in [20] to deal with uncertain kinematics and estimate unknown torque, respectively. References [21, 22] have proposed a real-time online error compensation method for the manipulator, which avoids frequent calibration of sensors in the actual industrial application scene and reduces the complexity of the control system. By using the filter to generate uniform B-spline trajectory, the tracking error at the desired path point can be eliminated, and the trajectory error at the end of the manipulator can be compensated without modifying the core content of the controller [23]. It is especially suitable for industrial equipment that cannot modify the controller.

B-spline can provide continuity of velocity and acceleration at lower order of each knot. In some literatures, the best smooth trajectory planning method of rigid manipulator based on B-spline has been adopted. In [24], higher-order B-splines are applied to the motion planning of serial manipulators. In [25], the acceleration and velocity signal trajectories of rigid link parallel robot are identified and optimized by using quintic B-spline. In [26], spline function is used to optimize the reference input signal of servo driver, and its parameters are determined by particle swarm optimization algorithm, in order to reduce tracking error. In [23], uniform B-spline curve trajectory was generated by dynamic filter to modify reference signal in real time. Qian et al. proposed a trajectory planning method for cable driven parallel robot based on improved quintic B-spline curve [27]. The control points of these B-spline trajectory compensation methods are evenly distributed, and there is no special treatment for some demanding trajectories. In practical application, too much calculation is used in the uncomplicated trajectories, but the performance is not satisfactory in the parts with more uncertain disturbances.

In this paper, a new method of smoothing the trajectory of robotic manipulator by using cubic B-spline is proposed. It can reduce the flexible impact and vibration disturbance produced by the actuator when the robotic manipulator moves repeatedly. In addition, an improved B-spline trajectory compensation scheme is proposed in this paper. Compared with the conventional uniform B-spline trajectory [24], it has advantages in trajectory tracking accuracy and trajectory smoothness. This paper is arranged as follows. Section 2 introduces the structure of 2-DOF robotic manipulator and the dynamic model of the mechanism. In Section 3, a repetitive controller for robotic manipulator is designed. In Section 4, according to the task characteristics of the robotic manipulator, the characteristics of the interference signals in different stages are studied, and then the correction function is introduced to optimize the conventional B-spline. In Section 5, MATLAB is used to simulate the trajectory tracking accuracy of some cases. The simulation results show that the improved B-spline has better performance than the traditional B-spline. Conclusions are drawn in Section 6.

#### 2. Model Derivation

We refer to some novel modelling methods of robotic manipulator [11], and combining with the data of this paper, we propose the following model derivation for robotic manipulator.

The dynamic equation of the N joint manipulator is

In addition, in practical application, the manipulator will bear uncertain interference such as parameter change, external disturbance, and friction. For example, due to the production process, assembly error, friction, wear, and other reasons, there are inevitable design tolerances for the parts of the mechanical arm; due to the movement, it will cause the change of the centre of gravity, which will lead to the change of the parameters of the mechanical arm; due to the fact that the elastic deformation will occur when the mechanical arm grasps and places heavy objects, there is an unmodeled dynamic; there are a lot of external disturbances in the working process. We conclude that the external disturbance is mainly caused by pitch vibration and vertical vibration. In this paper, the characteristics of two kinds of external disturbances are studied and the model is established.

These factors bring about difficulties to the control of the manipulator and make it unable to track the given trajectory. Therefore, the dynamic model of the actual manipulator system should include the description of various uncertainties of the system. The mathematical model is as follows:

As shown in Figure 1, the dynamic model of the 2-DOF manipulator using the Lagrange method can be obtained as

Considering the pitching vibration, it is necessary to add the base angle into the gravity matrix as

#### 3. Controller Design

Based on the existing iterative learning control method [1, 2], an iterative control scheme combined with B-spline function is proposed for the repetitive trajectory tracking control of robotic manipulator. As illustrated in Figure 2, and are the desired angle and angular velocity, respectively. and are the practical angle and angular velocity, respectively. and are the angle tracking error and angular velocity tracking error, respectively.

In Figure 2, it can be observed that the BIC is designed to reject the vibration disturbances and attenuate model uncertainties. Additionally, it is designed to further improve the accuracy and repeatability for repetitive trajectory tracking.

##### 3.1. Disturbance Observer Design

According to the dynamic characteristics of robotic manipulator [28], the disturbance observer is constructed aswhere is the estimation of disturbances and is an intermediate variable. The disturbance estimation error is denoted asand the error dynamic of disturbance observer can be described aswhere is the feedback controller model:

Combining (10) with (2) can obtain

Then, the tracking error can be written as

Define ; then formula (15) can be written as

The augmented system can be written as follows:

##### 3.2. Iterative Controller Design

The iterative controller for trajectory tracking of robotic manipulator is proposed aswhere and are control gains, and time shift is a small positive number to be chosen. The iterative controller scheme requires and it can be selected small enough to specify the tracking error bounds as required, but it should be noted that the smaller will slow down the convergence rate as the iteration progresses.

Combining the iterative controller with aforementioned disturbance observer and feedback controller, the control input is presented as follows:

Substituting (19) into (2), (17) can be rewritten as

The conventional iterative learning control scheme can only deal with repeated disturbances. The repetitive control scheme proposed in this paper is combined with disturbance observer, which can simultaneously control repetitive disturbance and uncertain dynamic disturbance.

#### 4. Stability Analysis

Considering the whole robotic manipulator system full of 2 parts, considering the stability of the whole closed-loop control manipulator system, the stability proof part should also include 2 parts:

Computing the derivate of and along the trajectories of (2), we can obtain

Then, (21) is rewritten aswhere

By using Schur complement formula, it can be concluded that there is a positive scalar satisfying when .

So, we have

As the iteration increases, the input signal will converge to the specified bound. In addition, the trajectory tracking error will converge to a specific limit. It can be seen that the controller converges, and the actual value always reaches the desired value.

#### 5. Improved B-Spline Optimization

All the classical properties of B-spline basis function can be extended to the multidegree space [20]. In order to calculate spline curves effectively, it is suggested to use multiscale equations formed by transition functions to calculate each function easily. Therefore, although the resolution of linear systems with as many spatial dimensions is involved, this method has the advantage of locality.

On the basis of cubic uniform B-spline, the motion trajectories of robotic manipulators are classified according to the importance of tasks. Based on the convex hull characteristics of uniform B-spline, the distance information and motion constraint are combined to make the part of trajectory with high-precision converge to smooth, safe, and feasible trajectory in a short time. Suppose that the form of B-spline curve of trajectory can be described as follows:where is a B-spline basis function of degree and the control points must be computed by imposing interpolation conditions on the given data points .

The number of control nodes, the number of times, and the number of node vectors satisfy the formula

Then the piecewise polynomial of B-spline basis function is shown in the equationwhere is the constant matrix determined by the degree.

Then the optimized path is shown in the following equation:

According to the actual scene, the joint angular acceleration curve often has the situation that the starting and ending positions are not zero and the third derivative is discontinuous, which will produce vibration and mechanical impact during the movement of the manipulator and affect the stability of the controller signal. In order to solve the above problems, the constraint conditions are added to each segment to modify the signal.

The function expression of cubic B-spline interpolation function can be expressed as formula (31) after adding correction function to each segment intervalwhere is the modified function and is the improved interpolation function. The motion process of the robotic manipulator can be divided into the three following parts:

Part 1: the correction function in the first subsection is to satisfy that the acceleration of the robotic manipulator is stationary at the beginning, and the other properties of cubic spline interpolation remain unchanged. should satisfy the following:

Through the constraints of formula (33), we can obtain the modified function in the first interval as

Part 2: in the second part, which represents the process of the robotic manipulator in the process of machining, we mainly consider the discontinuity of the third derivative in this part. should satisfy the constraints as

Through the constraints of formula (35), we can obtain the modified function in the second interval as

Part 3: the correction factor in the last part keeps the third derivative continuous at the left end of the interval in order to make the acceleration of robotic manipulator stationary at the termination time, and other properties of cubic spline interpolation remain unchanged. should satisfy the constraints as

Through the constraints of formula (37), we can obtain the modified function in the third interval as

#### 6. Simulation

In this section, the manipulator model is established by using MATLAB 2020a, and the designed controller is simulated. In order to show the effect of the proposed method in high-order iteration, the following simulations extract the data after 80 iterations. The parameters of the manipulator are shown in Table 1.

Firstly, the distribution of control points is adjusted according to the importance of the task, which makes the distribution gap between the three parts larger. By showing the trajectory tracking effect before and after the improved B-spline optimization method, the application value of the improved scheme is illustrated.

As shown in Figures 3 and 4 , the improved B-spline optimization method can effectively improve the trajectory tracking effect of the robotic manipulator. On the premise of nonuniform distribution of control points, part 1 and part 3 with fewer control points can still keep tracking accuracy under the action of correction function. The root mean square errors (RMSE) are 3.6% and 0.5%, respectively, from the error data in Figures 3(d) and 4(d).

**(a)**

**(b)**

**(c)**

**(d)**

**(a)**

**(b)**

**(c)**

**(d)**

Next, the B-spline optimization scheme with uniform distribution of control points is simulated.

As shown in Figures 5 and 6 , the improved B-spline optimization method can also effectively improve the trajectory tracking accuracy under the condition that the common control points are evenly distributed. Due to the uniform distribution of control points, the accuracy of part 1 and part 3 is improved, so the overall error decreases. Their RMSE are 2.9% and 0.4%, respectively.

**(a)**

**(b)**

**(c)**

**(d)**

**(a)**

**(b)**

**(c)**

**(d)**

The above is to discuss the signal repetition accuracy and trajectory tracking error of the controller. Finally, we will show the motion effects of the robotic manipulator using the improved B-spline optimization scheme under different conditions. In this section, we set the parameters of three different robotic manipulators. Their differences are different in length and mass, as shown in Table 2. The parameters not involved are the same as those in Table 1.

Case 1 uses the same parameters as those in Table 1. As shown in Figure 7, through the simulation results of the robotic manipulator’s motion trajectory, it can be seen that the improved B-spline optimization scheme can make the manipulator’s motion trajectory smoother and has better suppression effect on interference and vibration. In Case 2, the length of mechanical arm is changed, as shown in Figure 8. It can still be seen that the trajectory smoothness of the manipulator is significantly improved after using the scheme proposed in this paper. However, as shown in Figure 9, the improved B-spline optimization scheme does not achieve obvious results in example 3. Compared with the actual manipulator control system and the experiment of the Simscape model, because the stiffness of the material is not considered in the simulation, the change of the weight only affects the inertia and reduces the vibration and interference. Therefore, the optimization effect of Case 3 simulation is not obvious.

**(a)**

**(b)**

**(a)**

**(b)**

**(a)**

**(b)**

In order to show the ability of the proposed algorithm in practical application as much as possible, a 2-DOF robot model is established by using MATLAB/Simscape to verify the performance of the proposed algorithm in repetitive control and compare with the conventional B-spline and rational B-spline optimization algorithms [29]. Due to the limitation of hardware, more parameters are introduced in Simscape, which leads to the slow operation speed. Therefore, the trajectory of the manipulator after 10 iterations is extracted.

Firstly, the coordinate data of the given trajectory is extracted, and the constraint conditions are fitted according to the dynamic model of the manipulator and the physical model built in Simscape. Next, B-spline interpolation method is used to smooth the trajectory coordinates and convert them into servo motor control signals, which are provided to the joint controller. Finally, visualization processing is carried out to show the motion in MATLAB, and the proposed interpolation compensation method is used to correct the error before entering the next iteration. The process is shown in Figure 10.

The parameters of joint rotation friction can be added to each joint of the quasi-physical model to make the virtual manipulator closer to the real manipulator. The quasi-physical model of manipulator based on Simscape is constructed, including all the revolute joints with rotating friction and their parameters. The model of revolute joint in Simscape is shown in Figure 11.

The parameters of the manipulator model established in Matlab/Simscape are from the data of the spraying manipulator provided by the Vehicle Research Institute, as shown in Table 3.

Figure 12 shows the coordinates of the trajectory of the conventional B-spline interpolation method, rational B-spline optimization algorithm, and the algorithm proposed in this paper under the Simscape model. In order to highlight the performance of the algorithm more clearly, it continued to run for a period of time, and the repeated loop interval with obvious errors was selected for analysis.

As shown in Figure 12, the input command is obtained by directly connecting the calibration points, and the track line is not smoothed. From the simulation data, it can be seen that the trajectory of the manipulator control output is gradually smoothed by the spline interpolation optimization method proposed in this paper. Through the Simscape simulation results, it is shown that, in the actual situation, due to the existence of interference, after 20 iterations, the tracking accuracy is reduced, but the method proposed in this paper can still ensure excellent tracking accuracy on the premise of keeping the track smooth. Although the relative error of rational B-spline optimization method is small, there is obvious trajectory breakpoint problem due to the small number of control points and not considering the control points at the turning. Due to the uniform distribution of control points and simple trajectory, the traditional B-spline interpolation method is partially optimal, but there is obvious vibration.

#### 7. Conclusions

The application of iterative control in the control system of robotic manipulator can facilitate decision-making and adjust the gap between the repeated motion results and the expected results, so as to meet the requirements of repeated motion. However, the control process of robotic manipulator is highly nonlinear, strongly coupled, and time-varying. Therefore, the combination of iterative learning control and other intelligent control methods is used to optimize the control. It can improve the robustness and adaptability of the system and achieve good tracking error convergence and high tracking accuracy. In this paper, three methods are proposed to compensate the motion characteristics of the target in different intervals according to the motion characteristics of the target. This scheme can realize the control of the nonlinear strong coupling dynamic uncertain system in a given time range through a very simple algorithm and obtain the high-precision tracking of the given trajectory and realize the stability and robustness of the system. By combining MATLAB simulation into the iterative learning control system, the effectiveness of the improved B-spline repetitive control method can be quickly verified. Thus, the application efficiency of the new method in the actual control system can be improved. The simulation results show that the improved cubic B-spline optimization method has better tracking accuracy than the conventional cubic B-spline optimization method. However, in some cases, due to the higher order of interpolation method, the Runge phenomenon will appear near the end point, resulting in the failure to return to the end point coordinates correctly. After many iterations, this problem will gradually become serious. Some references have proposed solutions for Runge phenomenon [30, 31], and we will implement these solutions in the future robotic manipulator control system.

#### Notations

: | Angular position |

: | Friction matrix |

: | Angular velocity |

: | Uncertain external disturbances |

: | Angular acceleration |

: | Length of the connecting rod |

: | Positive definite inertia matrix |

: | Mass of the connecting rod |

: | Coriolis force matrix |

: | Gain of observer |

: | Gravity matrix |

: | Moment of inertia |

: | Torque |

B: | B-spline basis function. |

#### Data Availability

No data were used to support this study.

#### Conflicts of Interest

The authors declare that there are no conflicts of interest regarding the publication of this paper.

#### Acknowledgments

This work was supported by the Liaoning Province Science and Technology Major Project (2020020304-JH1/101) and National Key R&D Program of China (2017YFB1300900).