Академический Документы
Профессиональный Документы
Культура Документы
www.elsevier.com/locate/oceaneng
Technical note
Abstract
This paper describes a real-time control architecture for Dual Use Semi-Autonomous Underwater
Vehicle (DUSAUV), which has been developed at Korea Research Institute of Ships and Ocean
Engineering (KRISO) for being a test-bed of development of underwater navigation and manipulator
technologies. DUSAUV has three built-in computers, seven thrusters for six DOF motion control,
one 4-function electric manipulator, one ballasting motor, built-in power source, and various sensors.
A supervisor control system with GUI and a multi-purpose joystick is mounted on the surface vessel
and communicates with vehicle through a fiber optic link. Furthermore, QNX, one of real-time
operating system, is ported on the built-in control and navigation computers for real-time control
purpose, while Microsoft OS product is ported in the supervisor computer for GUI programming
convenience. A hierarchical control architecture, which consists of application layer, real-time layer
and physical layer, has been developed for efficient control system of above complex underwater
robotic system. The experimental results with implementation of the layered control architecture for
various motion control of DUSAUV in an ocean engineering basin of KRISO is also presented.
q 2005 Elsevier Ltd. All rights reserved.
Keywords: Underwater robotic vehicle; Control architecture; Real-time operating system
1. Introduction
In recent two decades, underwater robotic vehicles (URVs) have become an intense
area of oceanic technologies because of their emerging applications such as deep sea
* Corresponding author. Tel.: C82 42 868 7507; fax: C82 42 868 7503.
E-mail address: ghlee@kriso.re.kr (J.-H. Li).
0029-8018/$ - see front matter q 2005 Elsevier Ltd. All rights reserved.
doi:10.1016/j.oceaneng.2004.12.003
1632
1633
hand, it could not promptly handle the highly dynamical environments for its relatively
long time delay. Behavioral architecture (Brooks, 1986; Zheng, 1992; Bennett and
Leonard, 2000) is also known as reactive or heterarchical architecture. Each mission of
vehicle is accomplished by performing a set of preprogrammed condition-reaction pairs.
Behavioral architecture is favored for its speed and has proven effective if the number of
behaviors is low and the problem could be completely specified at design stage. However,
in fact these conditions are hard to be met in many practical cases. Furthermore, the
specific meaning of behavior has not been pinned down precisely, and this makes it
difficult to perform direct comparisons of the performance of different systems (Bennett
and Leonard, 2000). Hybrid architecture (Simon et al., 1993; Bennett, 1993; Healey et al.,
1996; Quek and Wahab, 2000) is a certain compromise of above two kinds of architectures
where it makes the best uses of advantages of two architectures while minimizing their
limitations. The most popular form of hybrid architecture is that a behavior-based lowlevel system is combined with a hierarchical high-level decision maker.
DUSAUV did not focus on its autonomic capacity but on the easiness and convenience
of the vehicle to perform various underwater tests, so the vehicle was designed to have
traditional hierarchical control architecture. The remainder of this paper is organized as
following. The hardware architecture of DUSAUV is outlined in Section 2. In Section 3,
the hierarchical software architecture of the vehicle is presented and some properties of the
architecture are also discussed. A basin test of DUSAUV is described in Section 4. Finally,
in Section 5, we make a summary of this study and some related issues for future
development are sketched.
1634
Tritech OceanSpy CCD color camera and a DeepSea underwater light are fixed on the
pan and tilt unit mounted in front of the vehicle, and provide a suitable vision environment
for remotely operating of vehicle and manipulator.
2.2. Underwater manipulator
Manipulator suite is one of the most important items to evaluate the working capacity
of the underwater vehicle. DUSAUVs manipulator has been designed as a master/slave
teleoperator with a common switching gripper and adopted electric motor mode for
pressure compensation and maintenance. A sophisticated surface controller optimizing
various performance indexes has been developed for the convenience of accurate
underwater operations such as removing subsea mines and so on. Furthermore, in order to
1635
minimize the vehicles built-in battery power consumption, certain design technology for
power economy has been applied (Seo et al., 2003).
2.3. Actuator system
There are seven thrusters mounted on DUSAUV and controlling the vehicles 3-DOF
motions. Four 600 W BS motors are horizontally mounted at the rear of the vehicle and
construct the vehicles main propulsion system. Two 200 W BS motors are vertically
installed in the front, and one 120 W BS motor is mounted crossly at the rear. While the
manipulator is being operated in the subsea, it is inevitably coupled with the motion of the
vehicle. Therefore, a 30 kg ballasting mechanism has been applied for the purpose of
accurate operation of manipulator, and one 25 W ballasting motor is selected. Also, two
10 rpm pocketsize motors are selected for the camera pan and tilt unit.
2.4. Built-in computer system
DUSAUV has three built-in computers, each of which takes charge of manipulator
control, hybrid underwater navigation, and vehicle control, and communicate to each other
through 100BaseTX Ethernet link. CL7, an all-in-one Celeron/Pentium III 3U single
computer board with small size and support various OS such as Windows 98/2000/NT,
VxWorks, QNX, Linux, etc. is chosen for navigation and vehicle control computers.
DELTA TAU universal PMAC 1.5 Lite is selected as manipulator control computer.
The vehicle control computer undertakes the real-time interfaces with various vehicle
sensors and actuators. For this purpose, SBS A/D, D/A, DI/O, and Serial IndustryPack cards
have been used and further two electronic boards of which one is for signal distribution and the
other one is for efficient interface have been designed. Furthermore, two SBS CPCI-100A
carrier boards have been chosen for the interfaces between IP cards and CPCI bus of control
computer. As mentioned in Section 2.1, DUSAUV employs HG1700AG11 IMU as the main
navigation sensor. The output of HG1700 is in Synchronous Data Link Control (SDLC)
format and need to be transferred to parallel signals through a SDLC converter board.
2.5. Fiber optic modem
DUSAUV communicates with the supervisory control system installed on the surface
vessel through a fiber optic link. Focal 907 video/data multiplexer, which supports three
video channels, six serial data channels, and other expansion cards for Ethernet, Tritech
Arcnet, hydrophone/analogue, etc. has been selected as the fiber optic modem. The fiber
optic system of DUSAUV adopts Wavelength Division Multiplexing (WDM) operation
on a single-mode fiber with 1,310 nm uplink and 1,550 nm downlink.
1636
which consists of application layer, real-time layer, and physical layer as depicted in
Fig. 3, has been designed for the vehicle.
3.1. Application layer
The supervisory control system on the surface vessel constitutes the application layer of
the vehicles software architecture, where the supervisor or planner brings about the
command/event data by monitoring various sensor data including camera and sonar video
signals. The application layer also has the data logging function for later on analysis and
handling. DUSAUV has three operation modes: check mode, auto mode, and manual
mode. Soon after the vehicles launch, a certain task is taken to check the normal
operations of all devices in the vehicle, beside of which a series of initial calibrations and
initial value settings are also accomplished in this operation mode. The auto mode is
further divided into moving mode (movement to target point and obstacle avoidance) and
working mode (manipulator operation and vehicle holding).
3.2. Real-time layer
This layer takes charge of real-time realization of the command/event data transmitted
from application layer, and has a task-based (or process-based) architecture (Wang et al.,
1993).
1637
As being shown in Fig. 3, DUSAUVs real-time layer consists of three tasks; control( ),
navigation( ), and arm_control( ), and each task is further divided into several child
processes. navigation( ) is a real-time navigation task running in the navigation computer,
and the real-time interface with 100 Hz IMU through parallel port is also executing in this
task. Through the Ethernet link, navigation( ) transmits navigation results and IMU raw
data to the control computer and receives various correction data for hybrid navigation
algorithm at the same time. arm_control( ) is a real-time control algorithm running in the
manipulator computer and exchanges several necessary information with the control
computer for the purpose of stable and accurate operation of manipulator. The third task
control( ) forks supervisor( ), path_plan( ), and servo_control( ) three child processes
besides the other three child processes taking charge of the communications with other
three computers. In path_plan( ), the shortest path to target point is planned according to
the moving (event data) commands from application layer and the navigation results
calculated in navigation( ). Obstacle avoidance algorithm also runs in this process.
supervisor( ) undertakes monitoring the built-in battery output, computers activities,
leakage of the hull and other emergences, and if there is any abnormality, would fixes the
target point as the surface vessel (in the case of the shortage of battery capacity), or cut off
the power supply and start running the radio beacon mounted on the vehicle for the
purpose of recovery later on. DUSAUV has been designed to have positive buoyance and
would rise to the surface if all the thrusters stop rotating. servo_control( ) is a certain
combination of various device calls dedicated to dialogue with various equipments of the
vehicle and executes the servo control of various actuators and the sampling of all sensors.
DUSAUV adopts QNX as its real-time operating system. QNX provides various InterProcess Communication (IPC) tool, such as message, proxy, shared memory, signals, file
I/O, etc. (Kolnick, 1998). Message, which is a variable-length packet data, is the most
popular communication method and, by using a name, could be exchanged between two
different nodes but same platforms in a LAN. However, exchanging message is always
followed by certain memory copy and buffering. Furthermore, message sender should be
waiting for the reply from receiver and this causes CPU blocking. All these bring about
somewhat real-time performance decline of the design software architecture. In contrast to
message, shared memory does not entail the copying, buffering and blocking of messagepassing, although there are still some drawbacks one of which is that it can only be used
between processes on the same node. In each computer of DUSAUV, data
communications among the processes are executed by using shared memory and a
semaphore is affixed on this resource for exclusive access of multi processes. Semaphore
has been also used as a kind of synchronizing trigger among the processes using its
sem_wait and sem_post functions.
There are four computers being connected to each other using Ethernet and constituting
the control system of DUSAUV. Star topology, in which the control computer is in the
center, is adopted for the network topology of DUSAUV. The control computer
communicates with other computers using TCP/IP sockets where the control computer is
always set as server. Data exchanges among the computers are accomplished by writing to
and read from the shared memory in the control computer. This kind of network
construction could minimize the communication load of the whole system and also could
settle the bottleneck problem of star topology.
1638
4. Experimental study
There are seven thrusters installed in DUSAUV operating the 6-DOF motion of vehicle,
of which two vertical and one cross thrusters have been designed to have relatively low
rating outputs and only applied for finely tuning of the vehicle motion. Most of the
underwater navigations of DUSAUV are achieved by four horizontal thrusters mounted
parallel at the stern of the vehicle (Fig. 4).
In order to verify the hydrodynamic coefficients of DUSAUV, which have been derived
by vertical planar motion mechanism (VPMM) model test, a serial experiments on the
various motion control of vehicle have been taken in the oceanic engineering basin (W!
L!D: 30!50!3.5 m) at KRISO. In the experiments, the manipulator was not installed
as well as the manipulator computer and the IMU raw data was applied directly to the
control algorithm without running the real-time navigation algorithm. Furthermore,
because the fiber optic cable had been damaged in the previous sea experiment, so a
10BaseF cable was directly connected between the vehicle and the surface control unit.
Consequently, only three computers were connected through Ethernet cable and
1639
Fig. 5. DUSAUV basin experiment: (a) surface control unit, (b) motion control in basin.
constituted the control system of the vehicle. Therefore, the control software architecture
could be remarkably simple than that in chapter 3. In deed, path_plan( ) process was
eliminated in control( ) task and corresponding control algorithm was designed to running
in the supervisory computer, and this made it be convenient for tuning the control
Fig. 6. DUSAUV basin test results for speed, depth, and heading control.
1640
parameters at any time while the vehicle was launching in the water without every
rebooting of the control and navigation computers in the vehicle.
Fig. 5 shows the control experiment on the vehicles speed, depth, and heading. The
initial speed was set to 0.1 m/s, and the desired trajectory was set to speedZ1 m/s, depthZ
0.5 m, and headingZ608, and the control input was calculated by certain LQ method (Jeon
et al., 2003). Experimental result is depicted in Fig. 6, from which we can see that the
outputs of vehicles speed, depth, and heading were all following the desired values as
well as the simulation result. The response to the initial forward speed was somewhat
delayed and this was supposed to be caused by the fact that the vertical moment occurred
at the start caused the propellers to be exposed on the surface and subsequently brought
loss of the propulsion (Fig. 5(b)).
5. Conclusion
This paper presents a real-time control architecture for DUSAUV which has been
developed in KRISO as a test-bed of development of underwater navigation and
manipulator technologies. The hierarchical architecture consisting of application layer,
real-time layer, and physical layer is discussed and the main focus is taken on the
description of the real-time layer. Finally, the experimental results with implementation of
the proposed control architecture for various motion control of DUSAUV in a basin of
KRISO is also presented.
Acknowledgements
This work was supported in part by the Ministry of Science and Technology in Korea
and the Ministry of Maritime Affairs and Fisheries in Korea.
References
Barnett, D., McClaran, S., 1996. Architecture of the Texas A and M autonomous underwater vehicle controller.
In: Proceeding of the 1996 Symposium Autonomous Underwater Vehicle Technology, Montery California,
pp. 231237.
Bennett, A., 1993. Combining planning with reactive architectures in an autonomous underwater vehicle. In:
Proceeding of the Eighth Symposium on Unmanned Untethered Submersible Technology, Durham, New
Hampshire.
Bennett, A.A., Leonard, J.J., 2000. A behavior-based approach to adaptive feature detection and following with
autonomous underwater vehicles. IEEE Journal of Oceanic Engineering 25, 213226.
Brooks, R.A., 1986. A robust layered control system for a mobile robot. IEEE Journal of Robotics and
Automation RA-2, 1423.
Chung, G.B., Eom, K.S., Yi, B.-J., Shu, I.H., Oh, S.-R., Cho, Y.Z., 2000. Disturbance obserber-based robust
control for underwater robotic systems with passive joints. In: Proceeding of ICRA 2000, San Francisco,
USA, pp. 17751780.
1641
Healey, A.J., Marco, D.B., McGhee, R.B., 1996. Autonomous underwater vehicle control coordination using a
tri-level hybrid software architecture. In: Proceeding of the 1996 IEEE International Conference on Robotics
and Automation, Minneapolis, Minnesota, pp. 21492159.
Hong, S.W., Lee, P.M., Jeon, B.H., Lee, C.M., 2000. Design of an Underwater Vehicle-mounted
manipulator system and non-regressor based adaptive control of it. In: Proceeding of ISOPE 2000, Seattle,
USA, pp. 314319.
Jeon, B.H., Lee, P.M., Li, J.H., Hong, S.W., Kim, Y.G., Lee, J., 2003. Multivariable optimal control of an
autonomous underwater vehicle for steering and diving control in variable speed. In: Proceeding of Oceans
2003 MTS/IEEE Conference, San Diego, CA, pp. 26592664.
Kim, T.W., Yuh, J., in press. Development of a real-time control architecture for a semi-autonomous underwater
vehicle for intervention missions. Control Engineering Practice 12, 15211530.
Kolnick, F., 1998. The QNX4: real-time operating system. Basis Computer Systems Inc., September, Canada.
Lee, P.M., Li, J.H., Lee, C.M., Jeon, B.H., 2002. A study on the design of a real-time operating system for
unmanned underwater vehicles based on QNX. Journal of Ships and Ocean Engineering 33, 7588.
Lee, C.M., Lee, P.M., Seong, W.J, 2003a. Underwater hybrid navigation algorithm based on an inertial sensor and
a Doppler velocity log using an indirect feedback Kalman filter. Journal of Ocean Engineering and
Technology 17 (6), 8390.
Lee, P.M., Lee, C.M., Kim, S.M., Jeon, B.H., Hong, S.W., Aoki, T., 2003b. Preliminary study on the inertialDoppler localization of a deep-sea launcher hanging on cable. In: Proceeding of Scientific Submarine Cable
2003 Workshop, Tokyo, Japan.
Peuch, A., Coste, M.E., Baticle, D., Perrier, M., Rigaud, V., Simon, D., 1994. An advanced control architecture
for underwater vehicles. In: Proceeding of Oceans94, Brest, France, pp. I-590I-595.
Quek, C., Wahab, A., 2000. Real-time integrated process supervision. Engineering Applications of Artificial
Intelligence 13, 645658.
Seo, S.J., et al., 2003. Development of technologies for navigation and manipulator system of a semi-autonomous
underwater vehicle, Technical Report, Pusan, Korea.
Simon, D., Espiau, B., Castillo, E., Kapellos, K., 1993. Computer-aided design of a generic robot controller
handling reactivity and real-time control issues. IEEE Transaction on Control Systems Technology 1,
213229.
Wang, H.H., Marks, R.L., Rock, S.M., Lee, M.J., 1993. Task-based control architecture for an untethered,
unmanned submersible. In: Proceeding of the Eighth Symposium on Unmanned Untethered Submersible
Technology, Durham, New Hampshire, pp. 137148.
Zheng, X., 1992. Layered control of a practical AUV. In: Proceeding of the 1992 symposium autonomous
underwater vehicle technology, Washington DC, pp. 142147.