Chibi Dragon Team Description Paper
Aphilux Buathong, Saran Lertpradit, Tapana Voravoothiwat, Nattakorn Noppakunvijai, Putti Thaipumi, Panjaapong Sermsawatsri
Department of Computer Engineering, Chulalongkorn University; Department of Industrial Engineering, Chulalongkorn University; Department of Mechanical Engineering, Chulalongkorn University; Department of Electrical Engineering, Chulalongkorn University
http://www.eic.eng.chula.ac.th
Abstract In this paper, we present an overview of Chibi Dragon, Chulalongkorn University. As we participates humanoid kid-size league RoboCup 2010 for the first year, our team has studied and developed idea and performance to reach the minimum requirements and also to achieve our expectation for humanoid league. Main ideas are described in detail and also the method of our robot design for each system: vision system, AI system, and control system.
1 Introduction
Chibi Dragon is a team consists of students in Engineering Innovator Club established under Faculty of Engineering, Chulalongkorn University. Since 2005, we started to participate in Robocup competition. Later on 2008, we won first place in both SSL and Rescue league under the names of Plasma-Z and Plasma-RX respectively. Since we are looking onward for a new challenge to enhance our skills and knowledge, we decide to participate in humanoid league this year.
As we attend this league for the first year, we specially need to make a solid knowledge background. Therefore, our mission is to fulfill 3 fields of study in terms of vision, artificial intelligence, and control. The first part is to study the humanoid robots movement with 20 servo motors by determining how to balance the robot and control its orientation. The another part is to design and develop an embedded platform which is placed at the chest of robot to process digital image and interpret data from the vision system. The other study is to improve our understanding in algorithm and get a main concept for coding programs with C++.
2 Hardware
The robot named "ChibiDragon04" is built based on Kondo KHR-1 HV. It is consists of 20 servos, accelerometers, gyroscopes, ARM9 computing board, and RCB3 servo controller.
CMOS Camera is mounted on the neck which has 2 degrees of freedom. ARM9 board on the chest of the robot computes the vision, AI, and control systems. Figure 1 shows the outline of ChibiDragon04.
3 Strategy
Strategy is considered to be the most important part of AI. It is similar to the brain for planning strategy and coordinating among robots in both attack mode and defense mode. A layered architecture is used in this part.
3.1 Play
Play provides a real strategy of AI which consists of many game plans. Play will determine the pattern of the game and notify to all robots by assigning robots into "Role" Play will be determine from a single robot and broadcast to other team members.
3.2 Role
Role is performed as robot behavior which is assigned by "Play" to control robot to perform a specific action such as manipulate ball to zone, run to zone, scramble ball from opponent. The "Role" mechanism first assign a particular skill to the robot, then generate the best point for robot action and set another parameter to "Skill".
3.3 Skill
Skill is a set of basic knowledge for every robot, such as how to move to a point, how to get the ball and shoot. Skill module generates path (a set of points), and kicking command that will be proceeded by varying of trajectory module which selected by "Skill" module. Each skill has different main idea of generating path for robot. For example, "get ball skill" differs from "move to point skill" in many ways. We can study and test each skill independently for the best performance.
3.4 Trajectory
Trajectory is a set of methods that generate velocities to control robots. Since each skill focuses on different points, for example, some skills require fast motion while others require accurate positions, different trajectories are created to serve these various needed.
3.5 Controller
Control, which controls the robots" movement, is the lowest layer of AI. Control receives control data such as velocity from "Trajectory" and send to the Gait and Motion Control.
4 Gait and Motion Control
In our system, we have both online and offline generation of robot gaits. Offline gaits are such as kicking, standing up from fall and other common motion. For online gait generation, we use it for generate walking gait which is confinable length of step to move precisely approach a targeted position. Key Frame technique is applied for our implementation. Every key frame is defined by a body and feet position and then implementing inverse kinematic to convert from body and feet positions to obtain a set of robot joint angles. Gyroscopes in two axes are use as a feedback to prevent robot from falling. Motion control process was shown in figure 3.
Vision System
We use one CMOS camera (OV9620 1.3Meg Pixels CMOS Camera for S3C2440 ARM9 Board) as an image capture device. Our vision algorithms are based mainly on colors, so the image at resolution 160 x 128 in RGB format is firstly converted to YUV format to apply color threshold (by using Look Up Table). Then, we apply image segmentation and pattern recognition to identify the objects in the image. After that, the objects" coordinates in the image are matched to the position on the field using the interior orientation, which is collected from the experiments, and exterior orientation, which is calculated from the control data and the experiments [2]. Now, the object"s positions relating to the robot are recovered and the robot will try to localize itself from this data, the previous position of the robot, and the control data. When, the robot cannot localize itself or the accumulated error exceeds the threshold limit, it will stand still and observe the surroundings in order to localize itself at that moment.
5 Conclusion
We have developed our robot base on Kondo KHR1-HV equipped with ARM9 processor experiment board (mini2440) and Kondo RCB3 servo controller circuit. With a vision system onboard, we can obtain the environment information to process current situation then execute an appropriate motion. We can perform motions such as walking, turning, kicking, and side step with stability
We will continue developing the dynamic walking gait and better performance vision system
References
- Combining Key Frame based Motion Design with Controlled Movement Execution. Stefan Czarnetzki, Soren Kerner, Daniel Klagges Robotics Research Institute Section Information Technology Dortmund University of Technology 44221 Dortmund, Germany In: Oral Presentation RoboCup 2009 competition
- An Efficient and Accurate Camera Calibration Technique for 3D MachineVision.Roger, Tsai Y.Miami Beach, FL : s.n., 1986.Proceedings of IEEE Conference on Computer Vision and Pattern Recognition. pp. 364‐374.