Proposes the use of Prolog as a rule-based specification language for coordination of multiple control functions to perform missions with autonomous underwater vehicles. Control of both vehicle motion and mission phase logical sequencing, including specified forms of error recovery, must be accomplished. We define terms used in this type of control system and show that such systems fall into the class of hybrid controllers coupling discrete state/time independent and continuous state/continuous time elements. The software architecture to implement these systems is often composed of three levels for ease of segregation and development of functionality. The article concerns an implementation on the NPS Phoenix vehicle. Embedded in the rule body are functions that interface with the vehicle to gather sensory data and generate signals as required to trigger transitions between control functions, and to initiate commands for control functions. The same code is used for mission specification as for its execution, eliminating the question of correctness. Control of a mission segment using command generation to simultaneously drive the vehicle to a point on space and time is described with experimental results. The development of transitioning signals is discussed alongside error recovery techniques using 'guaranteed phase completion'.
展开▼