Vous êtes sur la page 1sur 3

Proceedings of the Sm World Congress on Intelligent Control and Automation, June 15-19, 2004, Hangzhou, P.R.

China

A Microcontroller-Based Architecture for Locally Intelligent Robot Agents


Ge Bin'-' Gen'ichi Yasuda3 Hiroyuki Takai4
1: College of electronic and information engineering,Dalian University of Technology, Dalian,China,l16023 2: Institute of Information, Dalian University, Dalian, China, 116622 3: Dept of Mechanical Engineering, Nagasaki Institute of Applied Science, Japan, 85 1-0193 4: Department of Information Machines and Interfaces, Hiroshima City University

Abstract

- This paper describes the realization of a modular

distributed control architecture specifically designed to control locally intelligent robot agents for the small or middle size league of Robocup. For the autonomy and robustness of the onboard control system with intelligent sensors and actuators, a microcontroller-based flexible and extensible architecture is proposed. The low-level intelligent sensing and actuating functions are combined with high-level behavioural procedures to provide distributed antonomow robot control intelligence.
Index Terms - intelligent robot agent autonomy robustness

I. INTRODUCTION From the information-control point of view, robotic soccer is an appropriate domain for studying the real-time issues of cooperative control of multiple robot systems. In order to play robotic soccer, a mobile robot must be able to navigate in a dynamic field based on autonomous sensing and actuating, and collaborate with each other to achieve complex tasks cooperatively beyond individual capabilities. A key issue for the development of soccer playing robots is to integrate hardware and software structures in order to support the tasks needed by mobile robots under the system time and resource constraints. Since it is very important to build some actual physical agents in order to address the full complexity of the tasks, we have been developing mobile robots to work specifically in a robotic soccer environment [I]. Our control system is based on parallel distributed processing control architectures for autonomous mobile robots composed of intelligent sensors and actuators. We have adopted a microcontroller-based architecture on which several extensions are possible, so that the control system for our middle size league robots can be constructed as an extension of the architecture. In this paper, although our robot system is still evolving, we mainly discuss a general approach to implement the onboard control system in order to meet the requirements of robotic soccer through a detailed description of our current robot system. 11. SYSTEM CONFIGURATION

power wheeled steering type with two coaxial independently driving wheels. They use inexpensive off-the-shelf model car parts. The overall system for the small size league is composed of a vision system with a CCD camera over-looking the playing field, a main host computer (PC-compatible), and small mobile robots with an onhoard computer control system. The positioning of the robots and the soccer ball can be perceived by the vision system which passes the positional information to the main host computer. The main host computer maintains a map of the location of the robots and the ball in the environment, performs the high-level decision making, and then sends the generated commands to the robots. Communication among the main host computer and mobile robots is performed using infrared radiation [I]. The high-level decision making concems the team strategy including multiple robot path planning and perception based control of individual robots such as mutual collision avoidance and ball operation. The control software executed on the main host computer is implemented using the multithread programming method. The common task of the onboard control system is to achieve the requested positioning using a set of control loops. The requirements include that many axes and sensors have to be synchronized, needing powerful real-time capabilities, under limited onboard batteries power. In the proposed organization, the onhoard overall control system is divided into 2 separate parts: the system controller and the intelligent peripheral controllers. The system controller executes system control functions with massive calculations or behavioural control procedures, mnning a standard real-time operating system, such as Vxworks or ITRON. On the other hand, the intelligent peripheral controllers are dedicated to real-time sensing and actuating functions. The two parts are executed in parallel, communicating with each other, in order to realize true and efficient real-time systems in which intelligent peripheral functions including multiaxis and multisensor cooperation can be done to control the motions of an autonomous mobile robot. 111. ONBOARD CONTROL ARCHITECTURE The hardware configuration of the onboard control system for our small size league robots is presented in Figure 1. The control system have been constructed in a hottom-up manner. As a first step to parallel distributed implementation, the PIC 16C74 microcontrollers (Microchip Technology Inc.) were

The developed robots for the small size league are a


4826

used as building blocks to implement the distributed architecture, and dedicated to intelligent peripheral control such as multiaxis actuation and sensor data acquisition for the small size league robots.

inertial sensors by the dead-reckoning module. The inertial sensor system comprises a rate gyro and two orthogonally-mounted linear accelerometers. The rate gyro is a piezoelectric vibratory gyroscope by Tokin Inc., and the accelerometers use a variable capacitance type transducer by Analog Devices Inc. Some external sensors (infrared) also have a double use: as repulsive forces for obstacle avoidance at the very low level, and as position estimation relative to an object when used at a higher level. The main algorithms to move a soccer robot based on the requested positioning from the main host computer are implemented on the system controller. The desired values of angular velocity of the left and right wheels can be determined as a linear function of the position and orientation emors. The angular velocity control loop is executed on the microcontroller and run every I ms to compensate the difference between desired and estimated velocity. IV. EXTENSION OF THE CONTROL ARCHITECTURE The microcontroller-based control architecture can be extended to more sophisticated, large scale control systems. For the middle size league, a modular wheeled mobile robot composed of several motion units was constructed. Within the onboard control system, a set of intelligent peripheral controllers is used, which includes several motion controllers, an inertial sensor controller, and an external sensor controller. Each motion controller performs 2-axis motion control, which is the same as the onboard control system for the small size league. The inertial sensor controller performs the path tracking control including the localization using the gyroscope and accelerometers. Each peripheral controller is implemented on a dedicated microcontroller. In such an approach, we can select only the modules needed, and design gently organized, distributed control systems from the simplest ones to the most sophisticated, depending on the application requirements. The microcontroller network architecture for modular multidnive mobile robots is shown in Figure 2.

Figure 1: The hardware configuration of the onboard confro1 system

The microcontroller family with the small footprint packages is perfectly suitable for applications with space limitations, such as onboard controllers for small mobile robots. They employ an advanced RISC architecture with separate instruction and data buses. Because of the two stage instruction pipeline, all instructions are efficiently executed in a single cycle, except for program branches. The PIC16C74 includes 4k 14-hit words ofEPROM as program memory and 192 bytes of RAM as data memory. Furthermore, for real-time control applications, several peripheral features are available including: three timer/counters, two PWM modules, two serial ports, an 8-hit wide parallel slave port, and an 8-channel high-speed %hit N D converter. To make sure that the servo calculation always occurs synchronously with the PWM subsystem, the PWM output is sent to the postscaler (1:16). Then, the sample rate becomes the PWM rate divided by 16. The parallel slave port is asynchronously readable or writable as an 8-bit latch by an external microcomputer. An interrupt is generated in the microcontroller when a read or write operation is completed, although the interrupt flag bit must be cleared by software. A microcomputer hoard (e.g., Intel 80486) is connected to the parallel slave port via PC/104 bus, as the system controller for the small size league robots. PC/104 offers full hardware and s o h a r e compatibility with the popular PC bus standard, satisfying the reduced space (3.6 by 3.8 inches) and power constraints of embedded applications. The PC/104 CPU and additional expansion modules are self-stacking spaced 0.6 inches apart without needing backplanes or cardcages. The overall position control system comprises several layers of control. Rotary encoders, one attached to each wheel, can be used not only by the angular velocity control loop, hut also by the path generator after processing combined with

Btidge 10

v
U '

Figure 2: Microcontroller network for modular mukidfive mobile robots

Several microcontrollers communicate directly with each other via a common serial bus to perform the cooperative servo control of motion units. Each microcontroller can be equipped

4827

with a microcomputer board as the motion unit controller. A general-purpose high-performance computer for high-level decision making using an embedded vision subsystem is connected to the serial bus through a bridge to a parallel bus. Thus the overall control system realizes the local control and servo control tasks. In comparison with other communication interfaces for embedded control applications, the 12C (Inter-Integrated Circuit) interface developed by the Philips Corporation provides salient features; only two bus lines are required, providing a multimaster mode. Serial, 8-bit oriented, bidirectional data transfers can be made at up to 400 kbits/s in the fast mode. One of the two serial ports of the microcontroller is a synchronous serial port, and can be configured as the 12C bus. The 12C interface employs a comprehensive protocol to ensure reliable transmission and reception of data. When transmitting data, one device is the master andgenerates the clock, while the other devices act as the slave. All portions of the slave protocol are implemented in the synchronous serial port modules hardware, while portions of the master protocol need to be addressed in the application software. In usual cases, for synchronous and coordinated action of motion units ..in omnidirectional . motion control, communication between microcontrollers is performed in the multimaster mode. When two or more masters try to transfer data at the same time, arbitration on the data line and clock s nchronization occur using a wired-AND connection of all I C interfaces to the IC bus. Thus every motion controller can temporarily become the master. The interrupt generation on start and stop bits in hardware facilitates .software implementation . of the master functions. Each device connected to the bus is software addressable. For example, a master sends commands to the slave and then receives the requested information or addresses a different slave. In the master-slave mode,. where one master and other slaves are fixed, more synchronized. communication can be achieved using the general call address for addressing every slave connected to the 12Cbus; when this address is used, all slaves respond with an acknowledge.

lowest-level basic behavioural modules are as fol1ows:forward move, obstacle detection, crash detection, ball search, localization, etc. Complex behaviours comprise a closed loop of behaviours and are defined as a combination of basic behavioural modules as follows: obstacle avoidance, deadlock avoidance, move to the ball, etc. More complex behaviours are defined as a combination of above-mentioned behaviours as follows: move along a wall, ball operation such as dribble and shoot, etc. Different behaviours are activated based on perceptual events and run as processes in parallel or sequentially. Multiple behaviours are resolved by a specific module at a higher level to produce a resultant motion response. VI. CONCLUSIONS The implementation of a microcontroller-based architecture is presented for locally intelligent soccer playing robot agents. The hardware and software facilities allow the design of true and efficient real-time distributed systems to perform the low-level intelligent peripheral control functions and the behavioural control procedures on separate processors. REFERENCES

[l] Junichi Shibata, Genichi Yasuda, and Hiroyuki Takai. Implementation of a modular control system for multiple intelligent mobile robots. In Proceedings o f the 3rd Conference on JSME Robotics and Mechatronics Symposia, pp. 44-47, 1998.

V.

BEHAVIORAL CONTROL SOFTWARE

For the small size league robots, software executed on the main host computer is configured from a set of virtual agents; an environmental agent and several robot agents, such that the same software can be implemented.on the real robots for the middle size league. The environmental agent transfers relevant environmental information to each virtual robot agent, and sends their decisions or commands to the real robots. Virtual robot agents communicate with each other in order to accomplish cooperative tasks in parallel or sequentially. The programming environment on the main host controller is a multithread system using signals and communication mechanism to control an event-driven multiprocessing system. Specific behaviours to he used by soccer playing robot agents are hierarchically organized. Higher-level behaviours comprises a set of lower-level behaviours. Examples of the

4828

Vous aimerez peut-être aussi