Academia.eduAcademia.edu

Enhancement of the Botnia RoboCup Soccer SSL Team

2008

The Botnia 2005 prototype showed many design and implementation errors and weaknesses. An investigation of the Botnia 2005 old design is carried out to study the possibilities of improvement. In the previous design, the global vision was not reliable and the motion control of the robot was poor. Other important technical problems were also taken into consideration such as loss of power, dribbling and kicking systems as well as safety issues. In this design a robust high precision global vision system is implemented and the PID Motion Control System is improved. A new PCB is designed and better electronic designs are used to reduce the power consumption and extend the life of the batteries. In the new model, a secondary RF communication is added and the communication protocol is improved to increase the throughput and reduce recovery delays. The new design proved to be efficient and good results were obtained as first participation during the 2006 RoboCup word championship.

Enhancement of the Botnia RoboCup Soccer SSL Team Smail Menani, Yang Liu, Johan Dams, Jukka Matila, and Jani Ahvonen Department of Information Technology Vaasan Ammattikorkeakoulu, Wolffintie 30, 65200 Vaasa, Finland {smv, yli, jd, juma, ja}@puv.fi Abstract. The Botnia 2005 prototype showed many design and implementation errors and weaknesses. An investigation of the Botnia 2005 old design is carried out to study the possibilities of improvement. In the previous design, the global vision was not reliable and the motion control of the robot was poor. Other important technical problems were also taken into consideration such as loss of power, dribbling and kicking systems as well as safety issues. In this design a robust high precision global vision system is implemented and the PID Motion Control System is improved. A new PCB is designed and better electronic designs are used to reduce the power consumption and extend the life of the batteries. In the new model, a secondary RF communication is added and the communication protocol is improved to increase the throughput and reduce recovery delays. The new design proved to be efficient and good results were obtained as first participation during the 2006 RoboCup word championship. Keywords: RoboCup, Botnia, agent, Computer vision, image processing 1 Introduction RoboCup is an international project that covers computer vision, artificial intelligence, robotics and other fields. RoboCup is organized in three main areas: 1) RoboCupSoccer, 2) RoboCupRescue, and 3) RoboCupJunior. RoboCupSoccer is the most challenging and it is divided into 5 leagues: 1) Simulation, 2) the Small-size robots, 3) the middle-size robots, 4) the four-legged robots, and 5) Humanoid. This paper gives a description and improvement of the Botnia RoboCup Soccer team. 2 Overview of the Botnia RoboCup The RoboCup System installation is shown in Figure 1. The Botnia Robot soccer Team is composed of 5 systems. The mobile robots; 2) the off-board control system; 3) the transmission System; 4) the Simulation System and 5) the vision system. 2 Fig. 1. Botnia RoboCup System installation 2.1 The Mobile Robots Hardware Botnia mobile robots are designed based on the f-180 small-size RoboCup league rules [1]. Each robot must fit inside a cylinder of 180 mm diameter and no more than 150 mm high. Hence each part of the robot must be designed carefully to fulfill this rule. The hardware of the robot is mounted on three Omni-directional wheels situated at 120 degrees from each other. The wheels are driven by three Faulhaber 12V DC motors with built-in encoder and gear box. In previous design, low resolution encoders were used which has created control instability at high speed. At high speed, the encoder generates a constant error which is permanently increased by the integral action of the PID controller and drives the robot to instability. To solve this problem a software reset is used in the control loop. Because the control loop resets too often and this may have a big draw back on power and can cause failure to other components (Some robots were burn out during competition); a higher resolution encoder is then used. Other change is the power supply circuit. Previous design uses just a linear regulator which is not recommended for battery powered system due to their low power efficiency. A switching power regulator is then selected and used in the new design. The 2006 RoboCup new rules require that, each team must have at least two communication channels. With the selected RF module, it was not possible to use the old microcontroller. It was necessary then to upgrade to a new microcontroller. This change is very costly, because it leads to a complete change in the circuit board and rewrite complete new software for it. Another important change is also made to the motor drives. In the previous design, the motor drivers sink too much current and generate too much heat which causes excessive power loss and in some cases failure in some components. With the mechanical vibration of the robot, and the excess heat generated by the motor drivers some of the pins can loose contact with their traces on the PCB. This happen quiet often when the robot get stuck with the opponent robot or when the robot is driven with full speed. The traces of the old PCB are also not appropriate for 3 Fig. 2. The PCB of the Botnia 2005 Fig. 3. 4 layer PCB of the Botnia 2006 such application, Figure 2. In the new design better motor drivers are used, and the traces of the PCB which are supposed to draw a relatively high current flow are increased in width. With the new motor drivers, and improvement in the PCB, the robots can run with full speed and the temperature of the components remains within accepted range. The HW of the Botnia 2005 robots is composed of two PCB boards with DIP type electronic components. The first PCB carries the microcontroller and transmission electronics and the other carries motor drivers, the power supply and the PID controller electronics. The two boards are interconnected with row type connectors. In the new design all electronic components are SMD and built on a single PCB to avoid any loose contact between the boards, Figure 3. But the kicking and dribbling control circuit is built into a separate board because of safety reasons. 2.2 The kicker The kicker of the botnia 2005 robot is made simply with three cylindrical bars of aluminum which rotate together around a common axis. The kicker is controlled by a small DC motor. A kick occurs each time the ball is at the vicinity of the 4 rotating bars and a command to kick is sent by the strategy server. This kicker is inefficient, because of the delay caused by the video processing and AI system (about 25 ms). This makes it impossible to have a kick during a game. Even, if the ball is kicked, there is not enough power for the ball to travel fast enough. Fig. 4. Kicker of the botnia 2005 robot A completely different kicker mechanism is used with the botnia 2006 robots. Without going into the details; the new kicker is composed of the direct kicker and chip kicker. The direct kick allows the ball to travel horizontally while with the chip kick, the ball can be projected with an angle of approximately 45 degrees see Figure 5. To provide enough power for the kicker, a carefully selected electromagnetic solenoid is used with a well designed electric circuit. In order that the ball acquire enough acceleration, the kicker circuit takes in the 12 V Dc voltage from the battery and converts it to 300V DC source (It can be less, but a large amount of power is lost due to the weakness in the mechanical design of the Botnia 2006 Robots). The kicker circuit is rather complicated, because of the anti-electrical shock circuit to prevent any kind of electrical injuries. Fig. 5. Kicker of the botnia 2006 robot A ball detector circuit is designed to allow the kicker to be activated only when a kick command is sent to the robot and the ball is in contact with the kicker device. 5 2.3 Vision System The vision system is based on Doraemon video server by Jacky Baltes. The vision system is developed on a Linux platform and is composed of the following modules: 1) camera calibration, 2) field mapping and masking, 3) color training 4) object search and 5) data broadcasting modules. The vision system processes images and broadcasts real-time data with very high accuracy, while resisting dramatic changes in environmental lighting condition. Camera Calibration A common problem to machine vision in general and to RoboCup in particular is the variability in lighting conditions and the representation of the tri-spectral physical images to a numerical representation of an object [Kenneth R].[1]. A single camera can only capture part of a half field. To capture the whole field, two cameras with wide angle lens are needed. Geometric distortion and other errors introduces by the camera requires from the vision system to find the relationship between the real physical object co-ordinates and the co-ordinates of the symbolic object. In RoboCup, this method is known as camera calibration. To reduce the errors caused by the geometric distortion, Tsai’s camera model is used with known geometric pattern on the field to estimate the positions of the real objects. Fig. 6. The Pattern used by the old vision system The calibration pattern used by the old vision system is a 2D pattern and consists of a paper board of 48 black squares, which are positioned on the top surface of the soccer field as described in Figure 6. This 2D calibration pattern allows easy and relatively fast calibration but position errors can be significant (10mm to 30mm). This is not tolerated in a real game. In RoboCup, the robots are 10 to 15cm high and the ball is 3.5 cm high. A 2D calibration pattern can’t provide all information needed for the Tsai’s camera model to estimate the 6 positions of real 3D objects. The botnia 2006 vision system uses a 3D calibration pattern as shown in Figure 8 to provide 3D known data points to allow the Tsai’s camera model to estimate real object’s position more precisely. Fig. 7. The initial 3D calibration pattern The initial pattern for the camera calibration is shown in Figure 7. Notice the bars on the corners. They are 15 cm high, the same high of the botnia 2006 robots. The current calibration pattern is shown in Figure 8. This pattern has all 3D sample points distributed evenly around the field. This gives better calibration result than the previous one. The maximum position error is now around 7mm to 10mm. Fig. 8. The actual 3D calibration pattern Color Training Color training means selecting the real objects pixels from live video image and getting the threshold values for each pixel and forming the threshold range. Computer vision based on unconstrained RGB space is highly sensitive to lighting conditions, thus the same colored objects may not match 7 with their models. Fortunately, the colors defined by the RoboCup committee are located at corners of the RGB color space [Thomas Charles Karpati]. To limit the RGB color space, Rmin-Rmax, Gmin-Gmax, and Bmin-Bmax can be used. This would give accepted results for fixed lighting and normal usage. But in RoboCup the lighting changes extensively. In order to differentiate more colors under a wide range of lighting, a much tighter set of threshold is required. The RGB differences (1) and RGB ratio (2) thresholds are used. (1) (R-G)min - (R-G)max (B-G)min - (B-G)max (G-B)min - (G-B)max (2) (R ratio)min - (R ratio)max (G ratio)min - (G ratio)max (B ratio)min - (B ratio)max This threshold range is being used in color search process Figure 9. Fig. 9. Color training tool The user usually sets the threshold range manually by adding as much pixel values as possible to represent all possible matching colors. Object Search Edge detection is a common method used in object recognition but it is a time consuming. To make it practical for RoboCup, the method is simplified to color detection applied to limited regions of the image and not to the whole image, Figure 10. This is possible by selecting a predefined color pattern for each object (Ball, Robot 1, Robot 2, etc). Each robot is defined by one reference color, two identification colors and one orientation color, as seen in Figure 12. Identification color 8 Fig. 10. Color pattern and object detection methods markers are placed at the exact location on the robot and are searched only in these specific areas. The pixels in the whole image are scanned for the reference colors of all objects. When the reference color is matched, its center point is calculated and the same process is then repeated for the related ID and orientation colors to completely identify a robot. Then line equation of the center points is used to calculate the robot orientation. Fig. 11. Off board control System But this is not required for the ball object, because it has only one color of interest. Same applied for the opponent objects. Fig. 12. Robot Identification pattern There are 11 objects to be identified in each frame of image. The total time required for all objects detection is around 30ms. There are 33ms between 2 consecutive frames. Objects on the field can travel with an average speed of 2 m/s. In 33ms an object can move 66mm. Hence the same color object in the current frame is located within a region of a radius of 70mm compared to the previous frame. After the initial time full image scan, the object search can then 9 be limited to an area of 70mm in radius. This has a great improvement in the object search algorithm. The time for detecting all objects is reduced by 85% or 5ms. The average image processing time is 10 ms. This is the combination of a region search which is 5 ms and a full scan search 20ms. Under normal conditions only a region search is being used which means most of the time, the processing time is 5 ms. The radius of the search area can change depending on the speed of objects. 2.4 Botnia Off Board Control System Figure 11 shows the off board control system. It includes the testing and monitoring modules and a simulation interface. The monitoring module is used to select game strategies, test the robots, follow the game progress and set the game parameters (i.e. the real size of the playing field, defense line, maximum robot speed, etc). The purpose of the simulation is to set a current strategy, simulate the execution of the AI module before the start of the game or during time-out, monitor the behavior of individual agent, and display debugging messages from the agents. 3 Conclusion The drawbacks and weaknesses of the botnia 2005 have been studied and analyzed and an improved version of it is designed and implemented. Each robot has better kicking capabilities and can track its trajectory smoothly with the help of the improved PID and vision systems. The robots can play the full soccer game without any problems. The new team was qualified to the 2006 RoboCup word championship held in Germany. In this competition there were a total of 20 teams and Botnia team achieved the 12th position. This is a good result for being the first participation in such competition. Further development ar under investigation to design the next generation of the botnia RoboCup Soccer Team. 10 References 1. RoboCup Organization Official Home page http://www.robocup.org [visiteil on 02/ 02/2004] 2. Simple Direct Media Layer (SDL) http://www.libsdl.org [visited on 02/02/2004] 3. Baltes, Jacky: Practical camera and color calibration for large rooms In Manuela Veloso, Enrico Pagello, and Hiroaki Kitano, editors. RoboCup-99: Robot Soccer World Cup III, pp 148-161, Springer Verlag, New York (2000) 4. Ould-Khessal Nadir, Yan Naing, Teng Jit Sin: Cooperative Strategies in Robotic Soccer Proceedings of the Seventh International Conference On Automation, Robotics, Control And Vision (ICARC V02), Singapore (2002) 5. Muir, P.F. and Neuman, C.P 1987: Kinematic modeling of wheeled mobile robots J. Robotic Systems, 4(2):281-340 6. Sahn, S.K., Angeles, J. and Darcovich, J. 1995: The design of kinematically isotropic rolling robot with omni-directional wheels Mechanism and Machine theory, 30(8): 1127-1137 7. Y.P. Leow, K.H. Low and W.K. Loh Kinematic Modeling and Analysis of Mobile Robot with Omni Directional Wheels Proceedings of the Seventh International Conference On Automation, Robotics, Control And Vision, Singapore (2002) 8. Olli Kanniainen, Smail Menani, Nadir Ould-Khessal: Fast Dynamic Object Tracking for a Robotic Soccer Team IASTED International Conference on Artificial Intelligence and Applications, 2003, Vienna, Austria 9. Smail Menani: Intelligent Embedded Systems: A case study; The Botnia RoboCup 4th International Workshop on Embedded Systems, Internet Programming and Industrial IT, 2005, Kempen, Belgium