An AUV for Ocean Exploring and its Motion Control System Architecture

With the development of exploring and utilizing ocean source, Autonomous Underwater Vehicle (AUV) which could finish autonomous mission process is paid more and more attention. As an artificial intelligence system, AUV has high independence, reliability and adaptability to ocean environment. An efficient architecture of AUV plays an important role in achieving those properties. A newly developed AUV, “ZT-AUV”, which is used for ocean exploring, is introduced. And its motion control system architecture is described. The architecture is divided into four parts including blackboard system, elementary behavior agent group, reflection behavior agent group and execution agent. The blackboard system is not only information processing and management center, but also agents’ behavior control center. As the executable unit of motion controller, elementary behavior agent group makes AUV achieve three kinds of motion including surge, yaw and heave by certain control algorithm. Reflection behavior agent group is the unit by which the behavior of AUV can be achieved in another way, and it works when the system has fault. Execution agent finally drives the actuators of the system. The structures of the four parts mentioned above are discussed respectively. Both the hardware and software are described. Finally, simulation experiments and real experiments are conducted to test the whole system, and the results prove that the system architecture is reliable, flexible and extensible.


INTRODUCTION
Ocean exploration AUV can be widely used in ocean hydrological investigation, underwater resource assessment, pipeline surveying, the port safety defenses and some other military application areas.So far, ocean oil-gas resource has been prospected and developed rapidly in our country.Ocean bottom should be investigated before the oil-gas pipe is laid, and the laying state should be monitored, the pipe state should be detected after being laid and used.Ocean bottom investigation tasks with respect to laying oil-gas pipe are usually performed with deep-water towing system.However, if the AUV is used, there are two types of advantages.First, it is more precise.The AUV can adjust its heading automatically, so it can stay on the required route with the maximal error of several meters.Additionally, when the ocean bottom is undulating, the AUV can keep its height to make the sensor data good.Second, it is more efficient.When the next course is going to start after the former course being finished, the mother ship carrying the towing system should turn in dozens meters radius to keep the safety high, whereas the AUV can turn horizontally at once.AUV can also play a significant role in detecting and positioning of underwater optical cable and submarine interception system.The research on this kind of AUV was initially carried out in the United States and other countries.WHOI has developed a new hybrid deep-sea vehicle named "Nereus" [1] which roars to the ocean's deepest trench.The ECA in France has developed "Alister" [2] to survey the ocean.And "Remus" [3] series developed in USA are quite famous.

DEPICTION OF "ZT-AUV"
"ZT-AUV" is designed as an integrated ocean exploration AUV.Its prime missions are to survey submarine terrain, detect and identify underwater objects, detect ocean oil-gas pipelines, acquire ocean environment data, detect and position submarine communication optical cables.
"ZT-AUV" has a shape of prolate globularity, shown as Fig. (1), and its main character is given in Table 1.It can be divided into 8 subsystems according to the system function and mission requirement, such as control system, underwater navigation system, communication system, system of object detecting and environment data acquisition, execution system, safety checking system, self-rescue system and power system.
The control system includes software and hardware about intelligent reasoning method and control strategy.The navigation system contains undersized inertial navigation system, Doppler velocity log, depth meter, altimeter and GPS.The communication system includes hydroacoustic communication system, radio communication equipment, and fiber communication device (used for system debugging).The system of object detecting and environment data acquisition consists of forward-looking sonar, low-light level camera, side-scan sonar, conductivity-temperature-  depth sensor, and magnetic detector.The execution system includes rudders and thrusters.There are two ducted propellers used as main thrusters which are set at the stern, and each of them can provide the maximal force of 110kg.
There are two tunnel propellers used as vertical thrusters which are set respectively at the bow and the stern, and each of them can provide the maximal force of 25kg.There is a pair of elevating rudders which are set at the stern.Besides there is a rudder set at the stern to control heading.The safety checking system contains leaking detector, hydrogen detector, and battery state monitor system.The self-rescue system has an individual power supply, and it will automatically starts when the depth value is abnormal to keep the AUV safe.The power system is formed by charged Li-ion battery packs which are laid in two individual watertight cabins.

MOTION CONTROL SYSTEM ARCHITECTURE BASED ON AGENT
System architecture is researched to construct a type of mechanism to make the modules mentioned above work reasonably in space and time area, thus the information data can flow successfully in the whole system.The motion control architecture is constructed based on both behaviorism method and agent technology [4].The basic structure of the agent is shown in Fig. (2).The agent interacts with the environment via the communicator based on explicit mode and implicit mode.The environment could be social environment which is social network consisting of several agents, and it could also be physical environment, such as sensor devices, actuators and so on.The implicit communication needs to check the changes of the environment made by the other agent.And the explicit communication is the direct exchange of the information between two agents.The interpreter processes the input information and identifies the character state to form the environment information described by internal language.In accordance with the information, the executor reacts based on certain method, and the result will feedback to the environment via the communicator.The motion control architecture is divided into four parts including blackboard system, elementary behavior agent group, reflection behavior agent group and execution agent, shown in Fig. (3).The blackboard system is not only information processing and management center, but also agents' behavior control center.As the executable unit of motion controller, elementary behavior agent group makes AUV achieve three kinds of motion including surge, yaw and heave by certain control algorithm.Reflection behavior agent group is the unit by which the behavior of AUV can be achieved in another way, and it works when the system has fault.Execution agent finally drives the actuators of the system.
As Shown in Fig. (4), the blackboard, which is the comprehensive data base of the system, is used to save the basic data, the working condition information and the result of the knowledge source.It is the global working area of the system.Being adapted with the decision model of different fields, the blackboard can be divided into corresponding layers, and every layer contains several information nodes which are called hypothesis elements.Each hypothesis element expresses the significative information of the corresponding decision layer.The knowledge source is formed by knowledge agents of different fields, each of which expresses the knowledge and the handling method of the problem in individual field [6].The data reception terminal is with respect to the communication interface and protocol of each sensor, and it decodes the receiving data primarily.The monitor agent tells the state and content changing of the blackboard working area to the scheduling agent so that the working area can avoid deadlock.The communication unit is used to communicate between system external environment and internal environment.Thus, the work of the external agent can be adjusted and synchronized by data interaction and certain communication protocol.To "ZT-AUV", the blackboard system is an information processing and scheduling system, thus, it can be regarded as the nerve center of the whole system, and the data related with all kinds of sensors is interpreted and memorized in this system, and the data of sensor system is shown in Fig. (5).
The structure of the elementary behavior agent group is shown in Fig. (6).Taking the complexity of actuator mechanism and the decoupling control method into account, the basic behavior of "ZT-AUV" is divided into three elementary behavior agents, sway agent, yaw agent, and heave agent.The three elementary behavior agents are basically corresponding with the motion in longitudinal direction, heading direction and vertical direction.However, they are not totally corresponded, because the heave behavior contains the heaving motion and pitching motion.In the elementary behavior agent group, the communicator is used to receive the three types of the input data about the instruction of behavior, the information of states and the selection of actuators.And the three kinds of data is processed and transformed to interpreted data by the interpreter.Then the interpreted data becomes the mapping data after being resolved by executor.Finally, the mapping data is sent back to communicator to interact with external area.In the internal area of each elementary behavior agent, the communication module sends the instruction of behavior, the information of states and the selection of actuators to the interpretation module, after being interpreted, the corresponding three kinds of data is transformed as the input that can be used by algorithm module.And certain control method is realized in algorithm module, the control methods, like traditional PID control and modern intelligent control [5], can be embedded into algorithm module.The output of algorithm module is the instruction of abstract force corresponding with the controlled motion of degree of freedom, and it is a normalized nondimensional constant.The instruction of abstract force is sent to the blackboard system by communication module, and finally transmitted to execution agent by blackboard system.
The execution agent is used to communicate with blackboard system and reflection behavior agent group.As shown in Fig. (7), it is built by communication module, interpretation module, force allocation module, instruction generation module and instruction mapping module.The   communication module receives the instruction of abstract force generated by elementary behavior agent group from the blackboard system, and the actuator mechanisms are determined according to the instruction of the selection of the actuators.The interpretation module transforms the instruction of abstract force to the actuator-oriented force of every degree of freedom.The force allocation module resolves the necessary force that each working actuator needs to provide according to certain allocation algorithm.The instruction generation module transforms the force to the instruction of the corresponding actuator, namely the expected state of the actuator.The given speed of electric machine is expected when it comes to the thruster.However, the speed of electric machine of the underwater special thrusters can not be controlled directly.Instead, the thruster force is changed by tuning the output power of the electric machine via control voltage.Thus, the expected state of the thruster is the expected control voltage.The expected lift force and resistance of the rudder can be changed by changing the angle and direction of the rudder.Thus, the expected state of the rudder is the expected angle.Besides, the execution agent can directly acquire the instruction of actuator from the blackboard system and reflection behavior agent group.The instruction of actuators in the blackboard system is saved as the communication information.It can be the instruction directly sent through man-machine interactive interface composed with hydroacoustic communication system, radio communication equipment, and fiber communication device.And it has the highest priority.The instruction of actuator generated by the reflection behavior agent group has the lower level priority.The instruction mapping module filters the instructions based on priority, then generates the final signal instruction to drive the actuator according to the driving mode of each actuator.
The reflection behavior agent group is constructed to maintain the reliability of the control system based on the thoughts of fault-tolerance control.It is used to maintain the behavior of AUV when fault of the actuators occurs.However, the blackboard system is used to handle the sensor fault, and if the fault happens, the data of sensor will be corrected or substituted using certain algorithms.Corresponding with the elementary behavior agent group,   8).In a sense, the reflection behavior agent group is a functional backup of the elementary behavior agent group.When certain fault of the system occurs, the reflection behavior agent group will work instead of the elementary behavior agent group.The different point between the two agent groups is that the reflection behavior agent group has additional force allocation module and instruction generation module to enhance its responding speed.Thus, it can communicate directly with execution agent without blackboard system, and the instruction of the actuators will be processed more quickly.Actually, the function of the reflection behavior agent group can be integrated to the elementary behavior agent group.However, taking the reflection behavior agent group as an individual unit makes the system get the ability of behavior redundancy, and it is convenient to extend the fault-tolerance control ability.

Hardware of Embedded Motion Control System
The hardware of motion control system of "ZT-AUV", shown as Fig. ( 9), is constructed with multi-board embedded systems based on PC104 bus, which consist of a core module with an integrated Intel Celeron CPU, an 8-channel serial port module, a DIO module based on PC104 bus and a power module providing 5V voltage, besides, there are some other kinds of boards related with the external devices.

Software of Embedded Motion Control System
The software of motion control system works in the embedded real-time OS, vxWorks [7,8].The software data flow chart of "ZT-AUV" is shown as Fig. (10).represents the instructions of planning system.
indicates the motion control system output.
represents the execution instructions sending from force allocation.
represents the original data from sensors.
indicates the preprocessed sensor data, it can be transmitted to data filter module, meanwhile, it can also be input to a certain sensor as reference data.
indicates the data generated by data filter module, it is the input of motion control system as well as .
represents the feedback data from actuators.
VxWorks is an embedded real-time operation system with priority-based preemptive multitask scheduling in reference [5,6], and the function of motion control system is achieved in vxWorks by multitask scheduling, thus it is very important to assign the tasks in software architecture.When the motion control system runs, its tasks can be divided into 5 types:

EXPERIMENTS
In order to test the motion control system mentioned above, semi-physical simulation experiment, tank experiment and sea experiment have been conducted in sequence.

CONCLUSIONS
The successful application to integrated ocean exploration AUV shows that the agent-based motion control architecture proposed in this paper has good robustness, flexibility and expansibility.And it can be used as a reference to other complex intelligent system.The whole motion control system is implemented based on a famous embedded real-time operation system, vxWorks, and the detail of the software consists of many tasks, thus the division and scheduling of the system task are very important.
The working frequencies of the devices are different from each other, and the highest frequency of VxWorks

Fig. ( 7 ).
Fig. (7).Structure of execution agent.there are three similar agents in the reflection behavior agent group, shown in Fig. (8).In a sense, the reflection behavior agent group is a functional backup of the elementary behavior agent group.When certain fault of the system occurs, the reflection behavior agent group will work instead of the elementary behavior agent group.The different point between the two agent groups is that the reflection behavior agent group has additional force allocation module and instruction generation module to enhance its responding speed.Thus, it can communicate directly with execution agent without blackboard system, and the instruction of the actuators will be processed more quickly.Actually, the function of the reflection behavior agent group can be integrated to the elementary behavior agent group.However, taking the reflection behavior agent group as an individual unit makes the system get the ability of behavior redundancy, and it is convenient to extend the fault-tolerance control ability.

Fig. ( 8
Fig. (8).Structure of reflection behavior agent group.The core module uses CMX147786CX CPU board made by RTD Company, which integrates an Intel Celeron processor with 650MHz main frequency, an AGP S3 Savage SVGA imagine processor, 512MB memory, a 4GB DOA electronic disk, a 6-channel DMA, a 15-channel interrupt, 3 counters, and an APIC.The serial port board uses EMERALD-MM-8 made by DIAMOND Company, which ingrates a 8-channel serial port supporting RS-232/RS-422/RS-485, and 16C654UART supporting a max speed 460.8kbps.Digital IO module (namely DIO board) uses DM6856 made by RTD Company, which integrates independently controlled 16-channel digital output with photoelectric isolation, and 16-channel digital input with photoelectric isolation.This board is used as a switch of the sensors.Power module uses XPWR104HR power board made by RTD Company with 8-32V DC as input and 5V or 12V DC as output.

Fig. ( 10
Fig. (10).Data flow of embedded motion control system.a) Receiving original data.It includes the acquirement of the original data of environment perception system and motion perception system.The data, mainly acquired via serial ports, includes data of depth indicator, height indicator, DVL, inertia navigator, and the state information of actuators, the voltage information of batteries, the leaking information.b) Data acquirement and process of planning instruction.Data process means resolving, preprocess (wild-point elimination and data fusion) and smooth filtering of original data.Since the original data received from external devices has particular format which cannot be used directly, it needs to be transmitted to the format that can be accepted by motion controller.The

Figs
Figs. (11, 12) show the result of the pipe tracking test conducted in tank.Fig. (11) shows the image of the pipe laid on the bottom of the tank.Fig. (12) shows the trace of "ZT-AUV" during the test, and the trace is quite coincident with the pipe.Figs.(13-15) show the result of sea experiment conducted in year 2010 in the sea nearby Penglai.Fig. (13)
i t u d e / s L o n g i t u d e / s t r a j e c t o r y o f A U V d e s i r e d t r a j e c t o r y o b s t a c l e o r i g i n p o s i t i o n