Software Architecture for Control of an Autonomous Vehicle
Xichi Zheng, S. Srivastava, J. Durham · 2005
Object-oriented programming techniques are used to implement a layered software architecture for the planning and execution of autonomous vehicle missions. The ease of programming and the flexibility in mission planning are ensured by breaking down a complex system into small and functionally independent components, while the efficiency in execution is provided by a fast preemptive scheduler and event propagation kernel. Events are initiated by components and in turn trigger the scheduling of action procedures in other components. The effectiveness of this approach is demonstrated in a system prototype involving embedded microprocessor systems, AT-compatible computers, digital signal processors and various types of communication channels.