Mission control of the MARIUS autonomous underwater vehicle: system design, implementation and sea trials

Abstract
This paper describes the design and implementation of a mission control system for the MARIUS autonomous underwater vehicle (AUV). The framework adopted for system design builds on the key concept of vehicle primitive, which is a parametrized specification of an elementary operation performed by the vehicle. Vehicle primitives are obtained by coordinating the execution of a number of concurrent system tasks, which are parametrized specifications of classes of algorithms or procedures that implement basic functionalities in an underwater robotic system. Vehicle primitives are in turn logically and temporally chained to form more abstract mission procedures, which are executed as determined by mission programs, in reaction to external events. System task design is carried out using well-established tools from continuous- or discrete-time dynamic system theory, and finite-state automata to describe their logical (event-based) interaction with vehicle primitives. The design and analysis of vehicle primitives and mission procedures build on the theory of Petri nets, which are naturally oriented towards the modeling and analysis of asynchronous concurrent discrete-event systems. Vehicle primitives and mission procedures can be developed and implemented on the vehicle's distributed computer system using the specially designed software programming environments CORAL and ATOL respectively. The first is a set of software tools that allows for graphically building a library of vehicle primitives embodied in Petri nets and running them in real time. The latter provides similar tools for mission procedure programming but relies on a reactive synchronous programming language as a way to manage the potential complexity introduced by the occurrence of large Petri net structures. Whereas the first has been fully implemented, the latter has been specified but is still under development. Thus, at this stage of development, mission procedures and mission programs are effectively embodied into higher-level Petri net structures that control the scheduling of the vehicle primitives that are necessary to execute a given mission. The paper provides a summary of the general methodology adopted for the design and implementation of mission control systems for underwater robots and describes its application to the control of the MARIUS AUV. The paper introduces the experimental set-up for mission programming, mission execution and mission follow-up from a support station and describes the sequence of steps involved in programming and running a selected mission with the vehicle at sea.

This publication has 5 references indexed in Scilit: