I. Introduction
Autonomous vehicles like cars and mobile robots are composed from a large number of smart networked components comprising hardware, software and, sometimes, mechanical components. These autonomous building blocks are equipped with a computational core and may exhibit spontaneous behaviour. Rather than just being transducers in terms of raw physical data, they offer the capabilities of information processing entities, actively providing application-oriented information via a network interface. Fig. 1 shows one of our robots which is equipped with eight motors, gyros and acceleration sensors, a compass, odometry sensors and distance sensors all equipped with their own processor and connected to the popular automotive CAN-Bus [1]. This forms the reactive system layer of the robot. Additionally, a more powerful computer performs the complex processing on the deliberative level and connects to a wireless network. In fact, the robot constitutes a distributed system and it would be highly desirable to purchase the components like navigation modules, environment perception equipment, or specific computing and signal processing engines from third party providers. Then, the programmer has just configuring an application along the information processing chain from sensors to actuators. The perspective of building a system from such active blocks however has a couple of consequences on modeling and deployment of the components and supporting their interaction at run-time. A network of smart components: The “Q” Robot