4.4.3 Quaternion Based PD Plus Nonlinear Compensation

This controller augments the quaternion based PD controller by computing the additional torque necessary to exactly follow the desired trajectory.


The computed torque term is calculated by using the desired trajectory as input to a system of equations describing the system dynamics. If the model were exact, and the thrusters could supply precisely the torque calculated, then the trajectory would be followed exactly without the need for the PD controller. Since it is currently impossible to generate a model that exactly matches the dynamic system, and the thrusters can only approximate the desired torque, the PD controller is still used to reduce errors due to these inaccuracies.
For the purpose of analyzing of the boundedness and convergence of and it is useful to introduce a single vector which is a combination of the two. By noting from (4.35) that , we can show that





The vector may be thought of as a type of velocity error since





However it is important to realize that the attitude error is contained within . It is useful to think of as a reference angular velocity where the desired angular velocity (in vehicle frame) is shifted proportionally to the attitude error by the factor . This notational manipulation allows translation of energy related properties (expressed in terms of estimated angular velocity ) into trajectory control properties (expressed in terms of the virtual vector ).
Using this notation, (4.37) may be rewritten as


The computed torque is calculated based on the system dynamics, the chosen physical parameters, and the desired and actual trajectories. The dynamic model chosen takes into account rotational dynamics, drag, and buoyancy moments.




and is evaluated using


as shown in (4.9)-(4.11).
In (4.43), describes the torques associated with angular acceleration due to the rigid body inertial parameters, and calculates the torques generated due to the current angular velocity of the vehicle in view of its inertial parameters. The term describes the moments applied to the vehicle due to the drag of the water, and describes the moment generated by the buoyancy offset.
When the control law from (4.43) is used to generate the input to the vehicle system dynamics, the closed loop equations of motion become



This is a stable nonlinear differential equation. It can be shown from (4.46), and (4.45) that as , and . [4]