1. Introduction
Industrial robot systems are featured with nonlinearity, strong coupling and multivariate time-variability [
1]. High-quality motion control refers to high-speed and high-precision motion control, that is the robot in the high-speed motion process, can have fast dynamics response, high tracking accuracy, smooth start and stop stage. Although the robot ontology parameters are fixed, the changing load and uncertain disturbances can affect the robustness of the control, and even significant mechanical vibration. Moreover, the control systems during high-speed motion are largely challenged by the severe multi-joint torque coupling, large inertia change and significant nonlinear effect. The attitude variation stable refers to the robot maintaining a smooth, non-jitter throughout the movement. The stability index needs to be determined by the actual requirements, such as in the air blade grinding process the trajectory error is required to be less than 0.05 mm. To keep the position and attitude variation stable and achieve high-quality motion control, researchers have to first solve the nonlinear time-variability due to the characteristics of robots. Namely, the control system should provide real-time control characteristics that match with the dynamics of robots and the multi-source disturbance characteristics, thereby achieving multi-joint nonlinear decoupling control.
The conventional proportional-integral-derivative (PID) controllers are structurally simple and achievable, but demand high power consumption for large-inertia changes and can ensure only local stability. The main reason is that this control strategy is usually applicable to linear stationary systems, and its conservative control parameters limit the gain bandwidth and thereby affect dynamic characteristics, leading to large delayed errors. Moreover, the large inertia variation may cause vibration in the system and destroy the stability. Thus, this strategy does not meet the requirement of robot systems for nonlinear time-variability. Later, nonlinear PID [
2], blur PID [
3] and neural network PID [
4,
5] controllers have been put forward and relatively outperform traditional PID controllers. These new strategies match with the nonlinear time-variability of robot systems by similarly optimizing the PID structure and improving its performance, but they are little dependent on the information of dynamics models and thus fail to meet the requirements of multi-joint high-quality motion control.
To promote further the motion performances of robots and solve the nonlinear time-variability and multi-source disturbance of robots, researchers have proposed finer nonlinear control algorithms, such as adaptive control, robust control and active disturbance rejection control (ADRC).
The adaptive control algorithms, which are structurally diverse, essentially extract the information of system states from closed-loop error feedback models, and regulate the control parameters via adaptive algorithms, so as to compensate the time-variability of the systems [
6]. However, adaptive control has a strict requirement for real-time performance and is too complex to be realized, and its parameter mutations often destroy the overall stability; the parameter convergence is dependent on sufficient continual excitation, which is unachievable in real life. Thus, the system robustness of adaptive control should also be considered. For this reason, robust adaptive controlling algorithms have been put forward, which adopt the modified adaptive rate to make the system robust to the nonparametric uncertain disturbance in the models [
7,
8]. Typically, Hu et al. theoretically verified the two merits of comprehensive adaptive control and robust control of adaptive robust control [
9,
10]. However, adaptive robust control algorithms are yet based on the system feedback status, and control movement through the estimation of system characteristics, which raise the requirements for the amount and timeliness of state information. In fact, no enough state information can be acquired in advance at the initial stage, which leads to severe control lag and heavy following errors. Moreover, its structural complexity and diversity complicate practical applications.
ADRC [
11], put forward in 1989, has been theoretically verified and continually improved [
12,
13,
14,
15]. ADRC mainly consists of an extended state observer (ESO), a tracking differentiator (TD) and error feedback control laws, and focuses on solving the uncertain external disturbance. ADRC controllers are structurally simple, efficient and excellent at anti-interference, and have been applied into industrial robot control [
16,
17]. The anti-disturbance core of ADRC controllers is dependent on ESO and largely affected by the unknown disturbance amplitude. If the whole dynamic characteristics of robots are estimated and compensated by regarding them as systematic disturbance, the fast convergence and systematic stability of ESO cannot be ensured, which limit the use of ADRC. The advanced control algorithms above have modestly improved the control performance of robots, but are unable to really describe the dynamic characteristics of robots and thus are limited in use. Nevertheless, along with the development of electronic technique and computer science recently, the controlling algorithms based on dynamic models have gained growing attention and are considered as the most efficient way to enhance the dynamic characteristics and tracking precision of robots. Their aims are to compensate according to the dynamic characteristics of robots and thereby simplify the complex robot system into a controllable system, such as decoupling it into a linear time-invariant system [
18].
Generally, there are two schemes of model-based control: (1) Robot dynamic feedback compensation control (
Figure 1a) and robot dynamic feedforward control (
Figure 1b). For the first structure, when the dynamic model is precise enough, it can well solve the nonlinear time-variability of robots through feedback compensation, and reduces the power consumption in regulation, due to external feedback loop errors, improving the dynamic response and following the performance of controllers. However, it faces three difficulties. (1) No precise model parameters can be acquired, due to the load variation and sampling/computation errors. (2) This control structure raises the requirement for computation timeliness and has to overcome the time restraint of the torque loop control algorithm. (3) The real-time information of joint acceleration is needed, but in fact, the high-order differential signals are low-qualified, due to the magnifying effect of differential noise. Thus, model-based dynamic compensation control strategies are difficult to implement in practice.
Different from the first structure, the dynamic feedforward model inputs the expected joint movement order and offers the far-higher-quality signals than the sampled values. Moreover, despite the complexity of dynamic computation, the problem of dynamic feedforward timeliness can be solved through pre-storing or setting background programs, which are favorable for the implementation of control algorithms. Its ideas are to rapidly compensate the system characteristics through a precise dynamic model and thus to precisely control the movement. In fact, however, due to the diversity of model parameters and the severe effects of external loading and interference, the model parameters are hard to acquire precisely, which reduce the feedforward control performance. For this reason, an observer is usually used to pre-estimate and compensate for the uncertain disturbance, which would improve the robustness of feedforward controllers. The model uncertain disturbance observer is usually based on the construction of a system model, but a complicated robot system involves the computation of robot forward dynamics, which interfere with the timeliness of motion control. For this reason and regarding the simple structure, strong robustness and no constraint from the control model of ADRC, we put forward an ADRC strategy based on dynamic feedforward.
As for the nonlinearity and strong coupling time-variability of robots, we use dynamic feedforward compensation and uncertainty disturbance compensation into multi-joint control decoupling, or namely to regard the joints as independent control units. To reduce the order of disturbance observation and improve the observation precision, we study the ADRC cascade control structure and algorithm based on dynamic feedforward. We analyze the system dynamic linearization compensation and the anti-disturbance ability of ESO, and the stability of closed-loop systems. On this basis, the robot ADRC based on dynamic feedforward has been realized.
3. Motion Controller Design and Stability Analysis
3.1. Design of Controller
The decoupled robot system is transformed into sive independent single-input single- output (SISO) systems, degrees of freedom of which formed independent control channels. A computed torque feedforward control strategy has been adopted to improve the control performance and stability of ADRC. It should be noted the controlled object here is no longer the robot joint position, but is the institution ontology and servo drivers under the torque mode (current mode).
The robot system is second order and usually has two choices in the ADRC structure: A second order system structure (
Figure 4) and a cascade system structure (
Figure 5). In the second order system, the control variable
(current) directly drives the output of displacement
, without any transitional loop, and the corresponding uniaxial servo feedforward control structure is shown in
Figure 4. This structure consists of two loops—a position loop and a current loop. The position loop directly offers a current command to the current loop implemented in a motor driver. The current feedforward path, as the main path, can offer the motor servo system with real-time theoretical current corresponding to the movement command, while the real-time current errors have been observed by ESO and regulated and compensated by the PID.
Since the current loop bandwidth is large and the current order from the position loop should be rapidly updated, the position order should be more refine and kept continuous, otherwise, the control variable would be discontinuous, thereby inducing systematic vibration.
In the structure of the ADRC cascade system, the control variable
(current) first drives the intermediate variable
(velocity) and then
drives position
, so as to control the target (
Figure 6). In real servo control, this structure is the most common. Its idea is similar to the back-stepping method of modern control theories: The complex nonlinear system is decomposed into a number of subsystems (not larger than the system order); the difference is that back-stepping selects an appropriate Lyapunov function for each subsystem, and builds an assistant virtual control variable, so as to compensate the effects of uncertain factors and thereby loop-wise reverse back to the system control input. On the contrary, through a first-order ADRC method, each loop of ADRC compensates uncertain disturbance and regulates errors, avoiding the construction of Lyapunov function and being relatively simple. Based on the ideas of ADRC cascade structure, we design an ADRC cascade controller based on inertia feedforward (
Figure 6).
This ADRC feedforward controller is composed of a position loop and a velocity loop, and each loop is based on the ADRC feedforward control technology. The interior velocity loop mainly produced comprehensive current command , which is mainly supplied by the current feedforward path. Then the acceleration corresponding to the uncertain errors is partially observed and compensated by the ESO2 and partially regulated by the velocity error feedback control law. The ESO disturbance observation and current feedforward can effectively reduce the power consumption, due to error control, improving the system robustness and response speed. Similarly, the exterior position loop mainly provides velocity order , which mainly consists of the position error feedback control law output and the ESO1 velocity disturbance . Moreover, the loop bandwidth can be also improved to some extent by the velocity feedforward method, which ensures the rapid response to the velocity order. As for the feedback, TD has been used to acquire information about robot position and velocity, and its estimation precision modestly affects the controller performance.
It should be noted in a cascade system, the movement change of the velocity loop is faster than the position loop, which is decided by the physical properties of the controlled system. Thus, during digital computation, the velocity loop and position loop are set at different sampling step sizes (sampling period), so as to prevent the system from high-frequency vibration. Usually, the sampling period of the position loop is set as an integral multiple of that of the velocity loop and is at the millisecond level. Such setting of order density avoids the restraint of current bandwidth as faced by second order systems. Moreover, to avoid overshoot and excessive noise in each loop control order, the amplitude limiting, and low-pass filtering can be used, respectively. By combining the analyses of two control structures, we can find that each stage of the cascade controller can be considered as a first order system. Its preliminary design of control algorithm is shown below:
Tracking differentiator [
19]
ADRC is divided into three parts. The first part is about arranging the transition process, which is implemented in tracking differentiator, as in Equations (17) and (18), used to produce smooth instruction curves and differential curves. The second part is the design of ESO, as the first three equations in Equations (19) and (20), which are used to observe the disturbance in the corresponding loop.
Position loop control using first order ESO1
Velocity loop control using first order ESO2
where
are the sampling step sizes of TD, position loop and velocity loop, respectively;
are the values of position and velocity disturbance observed by first-order ESO1, respectively;
are the values of velocity and acceleration ‘unknown disturbance’ observed by first-order ESO2, respectively. The third part of ADRC is the feedback controller. The control laws
in Equation (19) and
in Equation (20) adopt the simple P control laws combing basic function fal(). When the controller structure has been determined, appropriate ESO and PID control laws could be designed/selected according to real situations, so as to improve the system robustness. More details can be found in [
11,
12,
15,
19].
3.2. System Stability Analysis
The closed-loop stability is very significant for the application of ADRC. However, the nonlinear structure of ADRC is very complex, and its stability verification is very complicated, which become the concerns in ADRC theoretical research. Guo strictly verified the convergence of high-gain ESO in nonlinear SISO systems mathematically and explored the convergence of nonlinear ESO in uncertain MIMO systems [
20]. He used the absolute theory to analyze the stability of the simplified first-order ADRC closed-loop systems [
21]. Zhao defined the convergence of ADRC controllers in SISO nonlinear systems and built and verified the convergence conditions of ADRC [
22]. For simplification, we will analyze the necessary influence factors on system stability on the basis of system transformation, so as to characterize system stability.
3.2.1. System Dynamic Compensation Linearization
The shafts in the decoupled robot system are mutually independent. A mono-joint system can be described as a nonlinear system:
where
is the acceleration function corresponding to the theoretical model;
is the comprehensive acceleration disturbance except for the model;
was the system gain;
is the control variable. The closed-loop controller is expected to have the following dynamic properties:
When the theoretical model
has been known, the acceleration order could be compensated by the feedforward way, and the disturbance part is compensated by the observation of ESO, or namely
. Then the system control quantity is:
At this moment, the closed-loop system became an integrator series system:
Admittedly, the system disturbance is compensated by the real-time estimation, which would forcefully transform the original nonlinear system into a classic linear system. Then an efficient error feedback control law
(e.g., nonlinear PID control law) could be used to regulate the closed-loop performance and stabilize the system. However, the premise is that the feedback from the closed-loop control system could well estimate the uncertain disturbance and could promptly pre-estimate and compensate for the acceleration disturbance to the system. Thus, ESO is a core component of ADRC, and its convergence and anti-disturbance abilities directly affect the closed-loop performance and stability of ADRC [
23]. Here we further analyzed the anti-disturbance ability of ESO.
3.2.2. Anti-disturbance Ability of ESO
Lemma 1 [21]. For a first-order controlled object,where is a state variable; is the controlled amount; is the bounded disturbance of the system, and . When this system is treated with nonlinear state feedback: The system state under disturbance could rapidly converge to a small range of steady-state errors, then the solution domain of the closed-loop system meets: For an nth order nonlinear SISO system:where is an unknown function; is the unknown disturbance; is the system gain; is the system input; is the system output. Let , then the state equation of the above system becomes:where . For the above system, we can build an nth order ESO system : The state of system is followed: . Let , then the following error system can be determined. For a bounded variation , we can select an appropriate nonlinear function to make system always stabilize at the origin and thereby make the state observation variable follow the system status. When the controlled amount coefficient is inaccurate, its estimated value could be used, and the estimation errors is included in . Expression of decides the anti-disturbance performance of ESO and is unrelated to the system, but is only related to the changing rate of the comprehensive acceleration and changing range. Thus, could be built by using different forms of nonlinear function. Usually the following function has been selected:where is the gain factor, and designed here meets , . From the above equation, it is the function consisted of a small-range linear interval and a large-range . For convenience of analysis, we set: Then the error system becomes: Let the changing function of the comprehensive acceleration
be bounded and satisfy
; according to the prerequisite of ESO convergence, when
, then
, and according to Lemma 1, the range of system steady-state error is:
The right size of the above inequality presented the limits of steady-state errors in a closed-loop system. Clearly, the anti-disturbance ability of ESO is decided by the parameter setting. Let , when is large enough, the system steady-state error is very small, but easily leads to vibration of ESO system. When , we have , indicating compared with linear feedback, the nonlinear feedback showed smaller steady-state error and stronger following ability and anti-disturbance ability. Moreover, the high-order system usually adopts a high-order ESO, but the amplitude of highest-order changing rate is very large, leading to larger , which not only complicates the parameter adjustment, but also easily makes the ESO unable to converge, or even the ADRC system unstable. Thus, ADRC systems at 3rd order or above are usually decomposed by the time scale into cascade systems, while the ESO adopts the low-order series form. Thereby, it is indicated a low-order cascade system contributes to improving the anti-disturbance ability of ESO and thereby improves the stability of ADRC systems.
4. Experimental Results and Analysis
To validate the effectiveness of the new control method, space arc trajectory follow-up experiments were conducted in a six-degree-of-freedom robot platform, in which the 6R industrial robots HSR-JR605-C (its parameters are in
Table 1) were used. Cartesian space arc trajectory was selected. The robot load was 3.6 kg, the initial attitude was
; the space arc trajectory was determined from the three space coordinates of the end-point P, where,
,
,
, and arc center
in mm, as shown in
Figure 7.
Point P is accelerated and clockwise along an arc from point A to point C, and then returns clockwise along from point C to point A. With the Cartesian space circular interpolation algorithm and the inverse kinematics computation, we could determine the joint motion status order. The input of this order is to convert the transmission ratio into motor end motion. It should be noted the on-line computation of the inverse dynamic model is much time-consuming, which may affect the timeliness of the controlled loops. Thus, here it is set as ‘background program’, and the computation memory is pre-stored and extracted in real-time. To validate the superiority of the new control algorithm in
Figure 8, we select the commonly-used PI control algorithm as a comparison:
Its control algorithm consists of:
Differential state estimation
Position loop control algorithm
Velocity loop control algorithm
As for the indices of response speed and trajectory following precision, we investigate the following trajectories of different joints in the joint coordinate system and the following trajectory of the end-point position in the Cartesian coordinate system. To reasonably evaluate the controller performance, we have to acquire accurate real-time robot joint position and attitude states and the Cartesian coordinates of the end-point ends, and when the joint flexibility has been ignored and for simplification, we recognize that the coder positional information directly reflected the joint positional information. The end-point Cartesian coordinates were acquired from robot forward kinematics, without any external measuring tool. Based on the semi-closed-loop control structure, we regulate the parameters of the two controllers to optimize the following performance. The parameters of the two controllers in Equations (15–20) and (36–38) are listed in
Table 2.
The servo periods of the position loop and the velocity loop were 2 ms and 200 µs, respectively, and the sampling period was 200 µs. Let the angular velocity of the end-point P of the operating arm resolving around the circle center O be
. The representative joint trajectory follow-up results and end-point Cartesian trajectory follow-up results of joint 2 are shown in
Figure 9,
Figure 10 and
Figure 11. The end-point trajectory follow-up results at different speeds are shown in
Figure 12.
The above figures show the PI controller and the ADRC controller based on dynamic feedforward (or ADRC controller for short) both could stably follow the trajectory, but the following precision and response speeds both differed. In the joint coordinate system, for the large-inertia joint 2, the trajectory following error of the PI controller was very large (about 0.005 rad) (
Figure 9b), which was higher than that of the ADRC controller (
Figure 9d). As for the response speed, the new controller also outperformed the PI controller (
Figure 9a,c). Clearly, the ADRC controller outperformed the PI controller in both control precision and response speed, but the joint end-point following trajectory was more precise in the Cartesian coordinate system (
Figure 10). As for planar projection, the ADRC feedforward showed control precision over the robot end-point end up to 0.015 mm (
Figure 10c,d), which was far higher than the PI controller (0.3 mm,
Figure 11c,d). As for error distributions, the end-point following error of the robot was very large upon the start-up, which was largely induced by the joint friction. Firstly, the joint static friction after the start of movement was very large, which could not be rapidly adjusted by a pure PI controller; secondly, due to the errors of the friction model, the static friction at the time of mutation was hard to be monitored or compensated promptly. Admittedly, relative to the PI controller, our new ADRC controller could well inhibit the friction uncertain disturbance, and generally, was outstanding in terms of control precision and response speed. Moreover, at different speeds, especially high speed (8 rad/s), the ADRC controller showed both high-quality trajectory follow-up and robustness (
Figure 12).
To verify the position repeatability of robot, we set the start/stop point A (376.5, 0, 331), and control the robot end-point to perform a periodic circular motion to stop at point A for 20 times (w = 2 rad/s). The end-point Cartesian coordinates (
,
and
in
Table 3) were acquired from robot forward kinematics based on the sampled information of encoders.
The
and
δ are expressed in Equations (39) and (40), respectively.
where (
x, y, z) = (376.5, 0, 331);
i = 1, 2, 3, …, 20.
where
,
n = 20.
It can be seen that the repetitive position accuracy is slightly higher than the trajectory following accuracy. However, it should be noted that the actual repetitive position accuracy will be slightly worse because we acquire the end-point Cartesian coordinates from the encoders and theoretical calculation based on robot forward kinematics.
5. Conclusions
To improve the robustness of the dynamic feedforward control system, we put forward an ADRC strategy based on dynamic feedforward starting from the control perspective and combining the simple structure, strong anti-interference ability and no restraint from the control model of ADRC.
(1) Together with the dynamic characteristics of robots, we analyze the system disturbance compensation methods, and by regarding robots as motor output load, achieve multi-joint control decoupling through dynamic characteristic compensation and uncertain disturbance compensation.
(2) As for the uniaxial independent systems after decoupling, we study the ADRC series control structure and algorithm based on dynamic feedforward, and investigate the closed-loop stability by analyzing the dynamic linearization compensation and ESO anti-disturbance ability.
(3) Space arc trajectory following experiments have been conducted to comprehensively evaluate the 6-joint motion performances of robots. The ADRC controller based on dynamic feedforward outperforms traditional PI controllers in terms of trajectory following precision and response speed, and shows high values of practical engineering. It should be noted ADRC controllers are structurally diverse, and this study just proves the high efficiency of the P control law. To further improve the controller performance, other more advanced PD control law and ESO combination may be used, which is not elaborated here.