A novel aerial manipulator system compensation control based on ADRC and backstepping

This paper proposes a fully-actuated control method for a novel aerial manipulation system (AMS). A customized carbon frame structure supports the servo actuators, on which eight propellers group into pairs located. We present kinematics and dynamics modeling of the AMS based on Craig parameter method and recursive Newton–Euler equation, respectively. Then, an Active disturbance rejection control (ADRC)—Backstepping—Compensation controller is designed to control the exact position and orientation of the manipulator in the Cartesian space. Finally, the performance of the system is demonstrated through simulations and virtual experiments.

www.nature.com/scientificreports/ reduce the impact of the robotic arm on a single platform. Although this method expands the system operation space, the difficulties associated with coordination of the system also increased, which affects the overall stability of the system. In addition to mechanical parameters, interactions between subsystems also exert an effect influence on the stability of the whole aerial platform. For this reason, Mellinger 13 proposes a method for estimating the interaction torques generated by robotic arms, but the study only considered static conditions. With the continuous deepening studies, Jimenez-Cano and Fumagalli 14,15 consider the AMS as an integral time-varying rigid body and design a controller using an estimate of the overall mass center and inertial tensor of the AMS during the motion of the robot arm. However, the theoretical basis and accuracy of this method with regards to the momentum theorem still remain to explore. Moreover, from the viewpoint of algorithm, it is extremely difficult to calculate the dynamic inertia tensor and the centroid of the AMS.
Yang 16 considers the interactions between subsystems as perturbations and designed a controller accordingly. However, when the torques in the system change continuously, control of the system is limited. Kondak 17 adopts a method of model predictive control to address the limitations of the previous study associated with perturbations, but the control performance is easily affected by the designed objective function. Furthermore, the solution methods are relatively complex and can impact real-time performance. Mebarki and Caccavale and Fanni [18][19][20] establish analytical representations for the interacting torques between subsystems and use the representations to design and analyze dynamic load compensation terms. However, due to the limitations associated with the mechanical structure, existing aerial platforms cannot fully compensate for the torques that are generated by the dynamic loads in any directions.
As seem from these studies, one of the main problems in AMS control is the interaction existing in the system/ subsystems. The associated control methods are the key research areas that need further research. Rajappa and Scholten 21,22 consider the aerial platform as a complete system, then optimize the parameters of the rotor shaft, thereby improving the flexibility and controllability of the whole system. Inspired by 23 , in our previous work, we designed an AMS with an fully-actuated aerial platform based on a Dynamic Compensation-PID (DC-PID) control method 24,25 .
This paper describes a AMS with one human size arm manipulator for outdoor operation. Whereas most AMS that can be found in literatures are prototypes evaluated in the lab, the proposed AMS structure overcomes the issues of underactuation of the standard multirotor drones for aerial manipulation. The main contributions of this paper are as follows: 1. We design a novel AMS for aerial manipulation (eight propellers group into pairs that are rotating about different axes) which allows to independently reach positions and orientations in 3D dimension. 2. With the continuous deepening of our research, the performance of the end-effector and the interactions between the manipulator and aerial platform is improved by combining ADRC and Backstepping control techniques (referred as ABC control).
The manipulator is built with eight smart servo actuators and a customized carbon frame that reduces the self weight without sacrificing stiffness of AMS. Four typical static positions in the operation of the robotic arm are evaluated in simulation analysis. The paper also addresses its integration in an aerial platform, including position and attitude control. The kinematics and dynamics of the AMS is derived, proposing a control scheme that makes use of the manipulator dynamics for compensating the reaction wrenches. The interactions between the manipulator and the aerial platform are experimentally identified in test bench in hovering conditions. Figure 1 shows the design of the fully-actuated AMS in SolidWorks. The main difference between the present design and the design of traditional aerial platforms is that the rotor structure proposed in this paper possess a large angle of inclination ( i < 60 • ). Therefore, the rotor can provide propulsion torques and moments in the X and Y directions of the body coordinate system because of which the fully-actuated drive for the aerial platform can be realized.

Mechanical structure
In this system, the robotic arm is designed to have 4 joints to balance flexibility and load capacity. At the joints, Dynamixel AX-12A servo rudders are used as joint drives. The servos provide feedback including position, speed, and other information. Therefore, by combining the feedback with voltage, current, load and other feedback information, the angular acceleration of the joint can be estimated. The position and speed can then be synthesized into instructions, and the motion of the joint can be controlled.The control structure of the Novel Aerial Manipulator System is shown in Fig. 2. It is composed of compensators and a ADRC controllers and Back-stepping controllers. ADRC controllers are designed for position system. Backstepping controllers are designed for attitude system. Compensators are added into position system and attitude system to compensate the influence of the force of the manipulator on the system. The inertial reference coordinate system, the aerial platform coordinate system, and the manipulator's ith  where i−1 i is the rotation matrix that the i coordinate system transforms into the i − 1 coordinate system, and i−1 i is the representation of the origin in the i coordinate system in the i − 1 coordinate system. We can use Craig's parameter ⟨ , , , ⟩ to calculate i−1 i , where ⟨ , , ⟩ is a constant and is a variable that represents the angle of the joint.
As shown in Table 1, the Craig configuration parameters for the robotic arm described in this paper (in order to conveniently represent the position and position of the end-effector, using the concept of a virtual joint, where 5 ≡ 0).
From the transformation between coordinate systems, the position and attitude matrix of each joint coordinate system relative to the {W} coordinate system can be obtained as: The relationship between the origin of the joint coordinate system and the center of mass of the connecting rod in the {W} coordinate system and the vectors 0 i and 0 c i can be expressed as:  www.nature.com/scientificreports/ where i c i is the centroid of the link i in i coordinate system. The relationship between the angular velocity and its derivative on the aerial platform is as follows: The angular velocity of each joint coordinate system is determined by 0 A and the joint angular velocity of the joint ̇ . The recurrence relationship between the parameters m is as follows: Derivation of (4) can be used to describe the relationships between the linear velocities in each joint coordinate system.
Equations (1)-(7) establish the relationships among the position, attitude, and speed between each link of the manipulator and the aerial platform in the coordinate system.
In this paper, a recursive Newton-Euler equation is used to establish the dynamic model of the system and the variables are all expressed in the {W} coordinate system. The power equation for the aerial platform is as follows: 0 f and 0 are respectively the driving force and torque generated by the rotor. 0 1 and 0 1 are respectively the force and torque of the aerial platform acting on the link 1. 0 out A is a vector representation of the arm that acts on link 1. m A is the mass of the aerial platform, and 0 A is the inertial tensor of the aerial platform relative to {W} . A is the vector representation for gravity acting on the aerial platform.
One of the dynamic characteristics of an AMS is that the platform interacts with the robot arm. Thus, calculation of 0̈ and 0̇A requires 0 1 and 0 1 . However, 0 1 and 0 1 are also determined by the former. Therefore, by considering the dynamics of the entire link, (9) is the Newton-Euler equation for link i. The time derivative of (6) and (7) can be obtained as follows: Table 1. Craig parameters for aerial manipulator. www.nature.com/scientificreports/ The simultaneous expressions of (8)- (11) can be used to form second-order algebraic differential equations. The equation set can be solved by taking the second-order term as a variable and the other parameters as constants.

Methods
From the analysis above, we can see that the dynamic model of the aerial platform is a MIMO, second-order nonlinear model, and it has strong coupling with aerial manipulator system. In comparison to traditional multirotor platforms, the stability of the aerial platform in an AMS is greatly affected by the motion of the robotic arm. Therefore, this paper uses the characteristics of the dynamic model to establish a dynamic compensation term to offset this effect. The position and attitude controllers of the aerial platform are designed based on the ADRC and Backstepping control respectively.
Compensation for the dynamic load. Based on (8), it can be concluded that the acceleration and angular acceleration of the platform centroid are related to the angular velocity and manipulator force/torque in addition to the driving force/torque control. In this paper, the force/torque of the manipulator is regarded as the load on the platform and the compensation term dc is established to reduce its side effects on the system. dc is defined as: By simultaneously solving (8)- (11), the required compensation parameters can be obtained. Details can be found in the our previous works 24 . Since the control input is introduced with this compensation term, the model of the platform dynamics can be simplified. Therefore, the platform control problem for the AMS is transformed into a traditional multirotor control problem. The input form of the controller is as follows: where ap is the controller input for the rotor platform. The disturbance to the platform position has an effect on the attitude stability. In this paper, the position and attitude controllers for the platform are designed using ADRC and Backstepping control.

ADRC for determination of platform position. The position A and velocity ̇
A of the aerial platform are assumed to be the system states p 1 , p 2 . After the compensation term is eliminated, the position term in (8) can be simplified as follows: Equation (14) describes a MIMO second-order system. The following section describes the ADRC controller designed in this paper. The ADRC controller consists of a tacking differentiator (TD), which is based on the transition process, an extended state observer (ESO), and a nonlinear feedback control law.
The discrete form of the second-order nonlinear fastest TD can be expressed as follows: where h is the sampling time, d is the control expectation, 1 and 2 are the input of the transition process and the differential signal tracked by the input, respectively, and f han is the special function: The ESO estimates the state of the system according to the observation output of the system, and its second-order discrete form is as follows: The nonlinear state error feedback is used as the control output for the ADRC in this paper and has the form as follows: where b 0 , u i and u are adjustable parameters. In addition, n = 2 in a second-order system.
Backstepping control for platform attitude. A second-order MIMO system can be represented as: In order to design its Backstepping controller, firstly define the error in the system as: where d 1 is the expected value of b 1 , and b 1 is its virtual control input. A first-order system as follows: We have selected the Lyapunov function as follows: The time derivative (22) and (24) are substituted into (23) to yield: P-type control is adopted, so b 1 is taken as follows: where i b 1 > 0 , and • denotes the Hadamard product. Thus, is stable for the first-order system. Taking the system represented by (21) into account, we have selected the Lyapunov function as follows: According to the (22), the time derivative of b 1 is as follows: Substitute (26) and (28) in (22) gives the following expression:  (22) is then substituted into (21) to obtain the following expression: The substitution eliminates b 1 , b 2 and the associated derivative terms. The time derivative of V 2 is then calculated and substituted into (29) and (30) to get (31): while Then, Eq. (31) can also be expressed as follows: Therefore, it can be concluded that b in (32) is stable relative to the system in (21).
The Euler angle vector euler = [ , , ] T and the angular velocity 0 A of the platform are represented as the system states b 1 , b 2 , and the following equation set is set according to (8): where is given by (5), and 3×3 is a 3 dimensional unit matrix; thus, the portion of (8) that corresponds to the posture can be converted to (21). Therefore, the aerial attitude control law for the aerial platform can be obtained by (32).

Simulation analysis
Setup. To improve the efficiency of the simulation and to avoid copyright issues, the software used for the simulation system in this paper was changed from MATLAB to an open-source project based on Python. The main modules are shown in Table 2. (Note: Since the project is in a transitional period, the simulation program and data processing part of the study still utilize MATLAB).
Control test for a fully-actuated drive. The angles i , with i(i = 1, 2, … , n) being the number of i-th propeller attached to the frame, can be adjusted during the preflight setup. This gives the possibility to realize a www.nature.com/scientificreports/ fully-actuated drive. The objective of this section is therefore to test method described in "Mechanical structure section". Four representative robotic arm static positions are shown in Fig. 3. The positions are First, the AMS is tested for fully-actuated drive control for position. The initial position is [9 m, 9 m, 9 m]. The expected position is [10 m, 10 m, 10 m]. The initial value and expected Euler angle are [0 • , 0 • , 0 • ] . The uncertainty associated with the parameters that are used to simulate the reference model is ±10% . Compared with the previous work, the amplitude of the simulated noise increased with a Gaussian distribution within ±30 mm and ±3 • and had a Gaussian disturbance distribution from ±10 N ⋅ S to ±80 N ⋅ S (referred as disturbance condition D0). The interval time between the disturbances is 1 s. The frequency for the simulation control is set to 100 Hz. To evaluate the performance of the ABC control on proposed AMS prototype, we perform the hovering experiment. The results are shown in Fig. 4. During the experiment, the aerial platform moves from initial position to expectation position, the position tracking error without overshoot. The aerial platform can converge to expectation position in the X, Y and Z directions within 2 seconds without any overshoot, and the curve associated with the displacement error is relatively smooth. The reason is that the TD term (19,20) in the ADRC acts to remove noise.
During the control process, the error generated by the three attitude angles for the platform is always within ±2 • , which is less than the noise associated with the simulated sensor. Therefore, the Backstepping attitude controller designed in this paper can maintain attitude stability with a minor error in displacement control. To summarize, under different static manipulator positions and noise and disturbance conditions, the proposed method can achieve 3 dimensional position control without sacrificing attitude and therefore the fully-actuated drive position control.
An additional simulation is conducted with the arm position set to [−90 • , −90 • , 0 • , 0 • ] . When hovering control is performed with a tilt angle, we set the disturbance condition D0 is used as the benchmark, other five types of disturbance from D1 to D5 are applied to test the performance of the ABC control method, respectively. Both the initial position and the desired position are [9 m, 9 m, 9 m], the initial Euler angle is [0 • , 0 • , 0 • ] , and the Euler angle is [20 • , −20 • , 0 • ] . The rest of the simulation parameters are the same as above. Figure 5 shows the response curves for tilt hovering control for different levels of disturbance. The attitude angles, both and , can converge quickly (adjustment time<1 s) to expected values. At different disturbance levels, the Euler angle can maintain a steady state with only a minor error ( ±1.5 • ). Both the X and Y directions can be stabilized at a desired position with minor deviations. Due to the step response, random disturbance shock, parameter limitation of the rotor power of the system and gravity constraints, there was downward turbulence in the Z direction at the initial time, and the maximum oscillating amplitude is 48 mm. However, the controller can still achieve stable regulation within 1.5 seconds and maintain low error stability. In summary, the method proposed in this paper possess a faster response time and smaller error associated with the fully-actuated drive control and tilting hovering. Furthermore, the control strategy offers better noise and disturbance suppression.
Simulation of an aerial operation. Actual aerial operations will likely require robotic arm movements. Therefore, this paper simulates two types of aerial work tasks and compares them with the methods described in previous studies 24 . The performance of this method for aerial missions involving manipulator motion was analyzed. Compared with the setting described in 24 , this paper improves the disturbance range from ±40 N ⋅ S to ±300 N ⋅ S. The range of noise and model parameter uncertainty are the same as above. Figure 6 shows the position and attitude error curves generated by the method (ABC) introduced in this study and the method (DC-PID) described in 24 under the same conditions. In the X and Y directions, the control effects from the two methods are essentially the same, and all systems remain stable with small errors (within ±15 mm). Due to power limitations, initial disturbances and gravity constraints, both methods generate oscillations   Table 3. In summary, both methods can achieve stable control when performing task 1, but the method proposed in this paper has better disturbance immunity and dynamic performance in the presence of large disturbances. Task 2 aims to make the aerial platform perform fully-actuated drive movement under the above conditions. The initial position and the desired position are set to [9 m, 9 m, 9 m] and [10 m, 10 m, 10 m], respectively, and the remaining parameters are the same as in task 1. www.nature.com/scientificreports/ Figure 7 shows the position and attitude error curves for the two methods. The method provided in this paper possess a faster adjustment time in the X and Y directions than the method described in 24 . Moreover, the key advantage of this method is more pronounced in terms of the response speed in the Z direction. Similar to task 1, the method described in this paper is significantly less turbulent in the initial stage of adjustment for the and corners than the method provided in 24 . Since the conditions are more complicated than in task 1 and the system performance is limited, there is likely more turbulence in the initial stage of angle adjustment than in the previous task. However, this method can achieve correction in a shorter time, and its steady-state error is equivalent to the method described in 24 . The mean errors of the attitude angle and position are quantized as shown in Table 4.
In summary, the method proposed in this paper is better at performing task 2 than the method provided in 24 . Based on the results from the simulations, it can be concluded that the method proposed in this paper has better disturbance suppression ability and stability than the method described in our previous study. Thus, this method has better control performance under larger noise and disturbance conditions.

Virtual experiments
The virtual experiment platform was built with coppeliasim physical simulation system. As shown in the Fig. 8. In this paper, the simulation control cycle is 0.01s. The physics engine selects Bullet 2.78. Set the precision to "highest precision". On the basis of the previous numerical simulation, this section focuses on verifying the effectiveness of this method in practical problems. The initial position is [5 m, 5 m, 5 m]. The expected position is [6 m, 6 m, 6 m]. The initial value and expected Euler angle are[0 • , 0 • , 0 • ] . the tertiary joint swings periodically from − 4 to 4 while the tertiary joint moves at a speed of ̇3 =0.5 sin t . The range of noise and model parameter uncertainty are the same as above. Figure 9 shows the position and attitude responses curves generated by the ABC control method introduced in this study and the method (SPNN-PID) described in 27 under the same conditions. As can be seen from Fig. 9, both of the two methods can converge to the desired signal in the directions of x, y, z. However, the ABC method converges to the desired signal in about 3 seconds. On the other hand, it takes 4-6 seconds for SPNN-PID to converge to the desired signal. From this, it can be seen that the ABC method has a faster response speed.In both methods, the angle of appeared a certain degree of concussion because of the robotic arm load which is tested in this section. Due to the continuous movement of joint 3, the force will be continuously transferred to the flight platform. Under the action of this continuous strong disturbance, the oscillation range of ABC method is even smaller.The average and maximum errors of the attitude angle and position are quantized as shown in Table 5.To sum up, the two methods can achieve stability control, but ABC method has better anti-disturbance ability and dynamic performance under the condition of strong disturbance.

Conclusions
In this paper, we presented a novel AMS prototype, which consists of four pairs rotors connected to a customized frame under a large angle of inclination ( i < 60 • , with i = 1, 2, … , 8 ). Three relevant conclusions are derived from the analysis of the simulation and virtual experiments.
1. This proposed AMS prototype including a 4-DOF robotic arm can overcome the well-known issues of underactuation of AMS for aerial manipulation, allowing for more robust operation, dynamic control for smoother interaction between subsystems, as compared to the systems based on the conventional AMSs. system proposed in our previous study. 2. In this paper, we provide theoretical framework for this AMS prototype, particularly for its modeling and control. Compared with DC-PID method proposed in our previous study, the ABC control method exhibit better control performance in the conditions of large noise and disturbance conditions. 3. The virtual experiments demonstrate that the method proposed in this paper can achieve stable motion, position, and attitude control under the influence of the interactions between the arm and the aerial platform.
As future work, authors are working in the optimizing the mechanical structure of the AMS prototype. This gives the possibility to adopt various manipulators in performing desired manipulation tasks in the industry. In addition, we are also proceeding in the direction of flexible adjusting parameters based on learning control method during the pre-flight setup, which is a major objective for the robust control for the AMS.