Abstract
This paper presents an optimal regulator for depth control simulation of an autonomous underwater vehicle (AUV) using a new approach of decentralized system environment called open control platform (OCP). Simulation results are presented to demonstrate performance of the proposed method.
1. Introduction
To allow an efficient operation of AUV, a new algorithm with a decentralized structure is developed. A new software infrastructure called Open Control Platform (OCP) accommodates changing navigation information and control components [1–3]. An OCP extends real-time middleware technology via CORBA middleware. In [4], many examples of nice control algorithms for AUV had done in several platforms, but in the implementation are widely opened for software engineering.
2. Equations of Motion
The simplified 6DOF equations of motion in the dimensionless form are considered in this paper [5]: where, , , and are surge, sway, and heave force, respectively; , , and are roll, pitch, and yaw moment, respectively; , , and are roll, pitch, and yaw rate, respectively; , , and are surge, sway, and heave velocity, respectively; , , and are body fixed axes in positive forward, starboard, and down, respectively; , , and are moment of inertia at -axis, -axis, and -axis, respectively; , , and are longitudinal, athwart, and vertical position of center of gravity, respectively; , , and are roll, pitch, and yaw angle, respectively. After several steps of linearization as in [6, 7], vertical motion equations with a control input are given as the following: Finally, refer to the physical parameters of NPS AUV1 in [8], the state space equation is obtained by:
3. Controller Design
Linear quadratic (LQ) servo is adopted to perform command following regarding to the reference input. Consider an th-order system with inputs and outputs. Let the state vector be , where is output and is rest of the system states. Let be the error vector with which is planed as output and is reference. Then the state space model can be rewritten as the following: with , , is , and is .
LQ optimal control problem is to find a control law which minimizes the performance index of , where and is the solution of Riccati equation with weighting matrices of and .
The control input is given by , where the control gain is consisted by , where and . Then the control law can be obtained by:
Substituting (5) into (4), we have differential equation of close-loop system as follows:
Solution of (6) can be obtained by using Runge-Kutta 4th order approximation: where , , , and .
4. System Environment
In Figure 1, an OCP infrastructure for linear quadratic servo simulations using two nodes PC as test beds with a general 10 Mb Ethernet, PC1 as a server and PC2 as client, connected via middleware using CORBA event channel [9].
PC1 is used for running a Matlab simulation of the vehicle model and control algorithm, while PC2 is utilized for running a Matlab simulation as mission control station. Figure 2 illustrates an operation of interface between C++ and Matlab. Through this interface, the C++ collects data from PC2 through CORBA and creates data files in ASCII format. The Matlab first picks up the data saved by C++ and then performs matrix operations. The results are sent back to C++ in the ASCII file format, and the C++ continues to execute the communication task to send the results.
In Figure 3, a CORBA event service provides a flexible model for asynchronous and group communication among distributed objects. Consumers are the ultimate targets of events generated by suppliers. Suppliers and consumers can both play active and passive roles. An active push supplier pushes an event to a passive push consumer; passive pull supplier waits for active pull consumer to pull an event from it.
5. Simulation Results
In this simulation, our objective is to control the AUV with speed at 2 m/sec, near zero, and depth near −5 meters with 15 times counter duration, and then change a depth to −3 meters with 15 times counter duration more.
Then AUV returns to −5 meters depth with 15 times counter duration, and finally returns to −3 meters depth, as depicted in Figure 4. Assume 4° dive planes when pitch angle deviates to 5° from zero, the AUV reaches a depth of −5 feet with 0.95 feet deviation. Therefore, all terms in and , except , , and .
In Figure 5, control input history is presented. It is based on depth reference input and output feedback. Compulsory control input value represents the differences between depth reference input and output feedback. The presented state variable history consists of input angle, pitch rate during moving, input angle with OCP, and pitch rate with OCP. We can also see that the control algorithm is optimal because of the input angle value is 12° and 14° to produce pitch rate to reach more than 40°/s and 15°/s; however by using OCP, input angle value is 20° and 5° to produce pitch rate to reach more than 36°/s and 8°/s.
The weighting matrices selection can be performed during run time in OCP environment. In order to increase the degree of machine intelligence, we perform a standard simulation using single weighting matrices, comparative analysis of property of gain matrix, we have using standard simulations, and with OCP.
6. Concluding Remarks
This paper presented a new approach of decentralized system environment using Matlab and CORBA event channel on several machines; we believe it will emerge more investigation in the current trends of real-time control system or bilateral control system.
Our proposed method captures the simulation results demonstrated that OCP could be used to provide the additional delivery method for distributing any navigation message among AUV implementation. Our future works would be conducted on additional experiments and measurements in this area, to increase application scalability to distribute the large navigation information.
Acknowledgments
This paper was financially supported by the Ministry of Knowledge Economy (MKE) and Korea Industrial Technology Foundation (KOTEF) through the Human Resource Training Project for Strategic Technology.