Bogobots-TecMTY humanoid Kid-Size Team 2012
Guillermo Villarreal-Pulido, Erick Cruz-Hernández, Alejandro Aceves-López
Tecnológico de Monterrey, Campus Estado de México, Carr. Lago de Guadalupe Km. 3.5 Col. Margarita Maza de Juarez, 52926, Atizapán, México
http://homepage.cem.itesm.mx/aaceves/Bogobots/
Abstract This paper describes the features and specifications of the humanoid robots developed by the Bogobots-TecMTY kid-size Humanoids at Tecnólogico de Monterrey, Campus Estado de Mexico for RoboCup 2012. It presents our current version of robots capabilities. Our main research focuses on LAN communication between robots, stable and smooth ball-approximation walking engine, robust perception systems and integration of technology.
Keywords: Humanoids, stable omnidirectional parameterized walking engine, robust perception systems, decision-making based on localization and orientation.
Introduction
The Bogobot-TecMTY research project was started in 2004 at Tecnólogico de Monterrey, Mexico. The goal is to have full-autonomous humanoid robots with efficient walking abilities, high-sensitive perceptions systems, multiple manipulationskills and learning-abilities. The team is composed mostly by a group of 15 students from mechatronic major and postgraduate students, supported by faculty members.
In the previous four years, we had the opportunity to participate in the RoboCup 2008, RoboCup 2009 and RoboCup 2010 with rewarding results (In 2009 we finished within the top 8 teams). We learned a lot and we could identify our improvement areas. For that reason, we decided in the past year to invest the resources we had, for the development of a new humanoid platform with several improvements in aspects like motion, stability, artificial vision and computing power. And now, for RoboCup 2012 we are aiming to demonstrate our achievements and compare them with other teams, so, we come again with an improved version of our Bogobot-TecMTY humanoid robots.
In the past RoboCup competitions, team Bogobots has always assigned a person of the team to make referring duties during the matches of other teams. For 2012 Team Bogobots has several persons within the team with sufficient knowledge of the rules and that have been involved in referring duties in previous competitions, so, team Bogobots commits to assign a person with sufficient knowledge of the rules available as referee during the competition of RoboCup 2012.
Besides the RoboCup World Competitions in which we have participated, team Bogobots has also been involved in the Mexican Robotics Tournament and RoboCup
Mexican Open in 2008, 2009 and 2011 provided with results that are improving every year.
In 2008 we won the 3rd place in the Mexican Robotics Tournament held at the Palacio de Minería in Mexico City and then managed to place 11 in RoboCup 2008 held in Suzhou China. In 2009 we won the 2nd place in the Mexican Robotics Tournament held in Guadalajara just below the international champion of Germany's Darmstadt Dribblers specially invited on that occasion. That same year we reach the quarter finals in RoboCup at Graz, Austria. In 2010 we make to the 2nd round robin in RoboCup held in Singapore. In 2011 we participated in the RoboCup Mexican Open in which we obtained the first place [11].
This steady increase in the performance of robots Bogobots team is due to a philosophy of continuous improvement and achievement of specific goals each year. Challenges faced in reaching horizons of a year to be used in upcoming competitions. The challenges are set in different areas as (a) electro-mechanical design [3,4,5], (b) sensing system [1,2], (c) motion algorithms [6,7,8,9] and more recently (d) communication systems.
Aspects of interest towards RoboCup 2012
There is currently a mechanical-electronic technology very robust [3,4,5] that allows our robots to remain functional for long periods of time without spoiling, overheat or even deteriorate despite suffering major blows or falls due to the challenge of play football against another team of robots under the rules of the category of Kid-Size RoboCup [10]. In addition, with efficient algorithms for image analysis that allow robots to distinguish objects on the court, judge distances, autolocate or make playing decisions. The vision algorithms have been optimized to allow analysis of up to 25 frames per second with a resolution color images of 432x240 pixels [1,2]. There is also a main processor microcomputer architecture that enables communication with Game Controller Wi-Fi [10] defined in the rules of the kid-size category in order to synchronize the movement of the robots during matches, so, the human intervention to initialize is reduced [3].
In order to achieve the excellent results in the kid-size league of RoboCup 2012 to be held in Mexico, we are working in substantial improvements in various aspects of robots and Bogobots equipment with the following objectives:
- (1) To improve the design of the legs of the robot joints giving them more robust and incorporating mechanisms parallel bars,
- (2) To incorporate a HD-camera together with the optimization of vision algorithms to allow location of objects in the field to better distance and better accuracy,
- (3) Communication and cooperation to achieve three Bogobots robots using Wi-Fi and under the rules set by RoboCup to improve team performance by allowing a team and taking strategic distributions on the court.
- (4) Expanding research collaboration with other universities in the field of mobile robotics and humanoid (like UPIITA in Mexico City).
(5) Increase number of robots in our team. Currently we have two Bogo v1, one Bogo v2, one modified and expanded Bioloid robot and one DARwin-OP. We expect to build at least two more Bogo v2.
These goals are achievable for use in the RoboCup 2012 competitions and provide distinctive features for the games that will provide greater opportunities to score goals and therefore aspire to the top.
The group of humanoid robotics research in the ITESM-CEM maintains since 2009 the following page showing the progress made year after year. It shows pictures and videos of the robots during official competitions. It also keeps up the list of participants and documents: http://homepage.cem.itesm.mx/aaceves/Bogobots/.
Mechanical and Electronic Design
The mechanical structure of the new Bogobot-TecMTY kid-size humanoids is based in aluminum brackets and carbon-fiber material. The kinematic chains are powered by DINAMIXEL® high-torque servomotors. Each leg has 5 DOF and each arm has 3 DOF [1]-[2].
The legs design is based on a double 4 bars mechanism in order to provide more walking stability and mechanically assuring the parallelism between the robot's feet and the upper body.
All the structure components of the body were previously designed in CAD software and then were manufactured using CNC Machines within the Institute.
To provide tilt and pan motions to our vision system [3], we use an aluminum mechanism powered by two servomotors independently controlled by an HD Camera, providing object tracking independently from leg or arm motions.
The main processor in the new robots in 2012 is based in a mini-computer FIT-PC which main characteristics are: 2GHz processor, 2GB RAM, 32GB Solid State Drive. This processor directly controls the camera via USB port; it controls the motion system via RS-485 and takes the strategy decisions during the game.
In order to acquire signals from sensors (Inertial Unit, Compass, and Buttons) and to turn on status LEDs, we incorporated a PIC microcontroller unit which interacts directly with sensors, buttons and LEDs and communicates this information to the main processor via RS-232.
One of our main achievements is the development of a robust mechanical structure that allow Bogobot-TecMTY robot to absorb moderate impacts that normally comes in RoboCup games. Robots are continually tested in our lab in conditions similar of humanoid soccer games in order to improve mechanical and electrical designs.
Motion algorithms
The movements are implemented in two ways: predefined motion pattern and realtime trajectory computation with inverse kinematics and Zero-moment point algorithms. The first kind is based on interpolated key-frames composed by motor's angles that are off-line specified by programmer and in-line interpolated with numerical methods. This approach is mainly used for instinctive movements like kicks, blocks, recovering from falling down, smooth-walking, or transitions among static-postures. The second kind of movements is based on run-time parametric walking-pattern generator that allows robots to walk in different styles, speeds and directions [6]-[9].
This second kind of movement is performed in 3 steps. The first one consists in compute feet paths keeping global momentum always zero by using ZMP techniques. These ZMP-based trajectories are computed with the projection of the Center of Mass on the XY plane, see Figure 3. The second step is computing the angular position of the leg's servomotors (joints). Fortunately, this can be done very fast because we solved the inverse kinematics analytically. The third step uses information provided by gyroscope unit, which is filtered by a Kalman filter, to compensate angular position of specific servomotor that helps robot to keep itself in standup posture regardless disturbances by unleveled floor, small bumps, and collisions.
Feet trajectories can have different shapes (e.g. rectangle, ellipse, half-ellipse, etc.) and are defined by a set of parameters (e.g. foot center, step height, maximum forward/sideward step size). The phases of the two legs should shifted by half a phase in order to guarantee that one foot is in contact with ground while the other foot is flying over.
With this basic idea, we modeled our robot as being a two-wheeled vehicle where we could vary its direction and speed. This idea proved to be very simple and versatile regarding the kind of walks we could achieve.
We are now adjusting all developed algorithms of locomotion to the new mechanical structure in order to guarantee robust and fast walking, kicking and blocking abilities. We are also working on some path planning strategies for better approach the ball given different circumstances and perform different kinds of actions depending on specific situation of robots on the field. At the moment of writing this document we have achieved a top speed of 22 cm/sec with the new robotic platform.
The robot system is able to walk in an omnidirectional way using a parametric walking-pattern generator; during a game, our robots are able to walk forward, backward, turn around their self-axis, walk with a specific rotation, walk with lateral steps, etc.
Vision algorithms
The vision algorithms of the robots are programmed within the main processor unit, in which we have programmed features like color segmentation algorithms, object recognition, distance estimation, self-localization and object tracking.
On 2008 and 2009 we implemented basic off-line algorithms of color segmentation in cubic classes and we used on-line color-based algorithm for object identification [10]. Since 2010 we are using our own designed tool for image segmentation that allows us more complex image treatments. This GUI is implemented in LabView® platform and works as follow. We acquire real-time images from the robot's camera. Then the segmentation algorithm generates an automatic ellipsoidal color region in RGB space for each specified color. Ellipsoidal regions seemed to better classify pixels than cubic regions with a similar algorithm complexity allowing us to perform object identification almost at the same rate than previous years [13]. Moreover, the new GUI allows user to adjust by hand ellipsoid parameters for a better color fit. Then, accurate color segmentation is obtained in just a few seconds, even in high-noise color situations. The GUI of the segmentation tool is shown on Figure 4. In 2010 and 2011 the segmentation tool was performed in a remote computer and then the parameters were downloaded to the robot. For 2012 the segmentation tool is now onboard the main processor of the robot, so it is faster and simple to obtain an accurate segmentation and use it in just a few minutes.
Ball-tracking is implemented also in the main processor and provides estimation of relative distance of objects to robot. These estimated distances are used for decision of motions towards ball or for robot positioning on field.
We are capable of identify the different objects on the field, and with this information we developed self-localization algorithms by classic triangulation methods. Basically, we infer robot position on field by the recognition of two or three landmarks and their relative distance respect to robot. The location of ball on the field is based on relative distance and orientation of ball with robot's position.
We will also implement localization algorithms based also on field lines or edges of static objects as landmarks for localization. We are also researching algorithms for color segmentation robust to variant light conditions and noise.
Decision Algorithms
The different algorithms implemented in the robot are programmed in LabView® platform and C language. The main processor, which consists in a FIT-PC computer @2GHz, performs three main tasks: (1) the generation of walking-pattern using the analytical inverse kinematics of legs and a parameterized leg-path generator allowing omni-directional walking, (2) image acquisition, processing and identification of different objects in field using a color based segmentation, and (3) decision-making algorithms that are executed to produce individual player's behaviors.
The system is programmed using a general state machine logic, where each state correspond to each gaming state (initial, ready, set, play, and finished) the main strategy algorithms are inside the "play" state. Within this state there is another state machine structure which changes depending on the different situations in the match, when the robot has seen the ball, when he is approaching to ball, when he decides to kick towards goal, or when the robot is without the ball possession and it has to keep a defensive posture.
This year we focused in the development of a functional algorithm for robot localization and navigation within the field area. We proposed and implemented a routine in which the robot uses the goals and beacons as references to localize and with this information infer the current robot's position [13]. Once the inferred position is determined, the robot can move to a desired position and orientation in the field. This behavior is especially useful during the "ready" state when the robots have to reach their position in an autonomous way in order to resume a match. For debugging and validation purposes we also developed a 3D visualization tool which recreates the robot and its environment, receiving information from the robot via Wi-Fi about its status and current localization. This is shown in Fig. 6.
Communication
Our new robots have the capability of communication between them on game and with the Game Controller. All our robots are equipped with a Wi-Fi card in order to listen to the signals sent by the Referee Box like start and stop of the game, change of state modes, etc. Also, there is implemented basic communication between robots, so, they cannot obstruct when they are going toward the ball. Robots also communicate between them the position of the ball in order to help teammates that can't see the ball.
Conclusion and Acknowledges
In this paper, we showed the present work of Bogobots-TecMTY team. We take advantage of our previous research results on biped robots, vision system, individual behaviors, communication and cooperation to improve overall team behavior.
This is the fourth time our team intends to participate in the RoboCup humanoid kid-size league. Our first participation was in Suzhou China 2008, and then in Graz 2009 and Singapore 2010. Now in 2012 we expect to continue with the team progress and have an outstanding participation during the competition, moreover that this world championship will be held in our city.
Finally, we acknowledge the support and funding of "Federación Mexicana de Robótica", CONACYT, "Red Nacional de Robótica y Mecatrónica" and ITESM-CEM. Thanks to their support, our team was able to make possible the new version of robotic platforms which are helping us to develop and test in a more efficient and fast way the different algorithms and behaviors we are constantly elaborating.
References
[1] Barrera-Tovar, L., Aceves-López, A.: Segmentation of color and sorter for the sensing system Bogobots robots. Robotics XII Mexican Congress, Mazatlan, Sinaloa, Mexico, Mexican Association of Robotics (November 2010), 124-129. [2] Barrera-Tovar, L., Aceves-López, A.: Interpretation of the Scene and Auto Location Via triangulation Bogobots Robots. Robotics XII Mexican Congress, Mazatlan, Sinaloa, Mexico, Mexican Association of Robotics (November 2010), 136-142. [3] Villarreal-Pulido, G., Cruz-Hernandez, E., Aceves-López, A.: Bogobots-kid-size humanoid TecMTY team 2010. RoboCup World Championship, Singapore, RoboCup Federation (June 2010). [4] Cruz-Hernández, E., Villarreal-Pulido, G., Sumohano-Verdeja, S., Aceves-López, A.: Bogobotskid-size humanoid TecMTY team 2009. In: RoboCup World Championship, Graz, Austria, RoboCup Federation (July 2009). [5] Aceves-López, Cruz-Hernández, Villarreal-Pulido, Sumohano-Verdeja: Humanoid Bogobots Team 2008 (Kid Size). RoboCup, Suzhou China (July 2008). [6] Gonzalez-Nunez, Aceves-Lopez, A., Ramirez-Sosa: control for the tracking of movement of a biped to phase: supporting foot, the foot in motion. First International Multidisciplinary Scientific Research ICM2007, Chihuahua, ITESM (2007). [7] Gonzalez-Nunez, Aceves-Lopez, A., Ramirez-Sosa: Kinematic Analysis of a biped with phases: support-Pie Pie moving, 5th IEEE International Conference on Innovation and Technology Development CIINDET, Cuernavaca Mexico (October 2007 ). [8] Melendez, A., Aceves-López, A.: Human gait cycle analysis for the improvement of MAYRA biped's foot. 37th Congress of Research and Technology Development in Monterrey, Mexico, ITESM (January 2007) 60-67. [9] Aceves-Lopez, A., Melendez, A.: Human-inspired walking-style for a low-cost biped prototype, 3rd IEEE Latin American Robotics Symposium, University of Chile (October 2006). [10] RoboCup Humanoid League Homepage, http://www.tzi.de/humanoid (2011). [11] Mexican Robotics Tournament Results, ITAM http://tmr.itam.mx/resultados.html (2011). [12] Alvarez, R., Millán, E., Aceves-López, A., Swain-Oropeza, R.: Accurate color classification and segmentation for mobile robots, Book Chapter, "Mobile Robots: Perception & Navigation", ISBN 3-86611-283-1, Verlag (2007). [13] Cruz-Hernández, E.: Development of a Vision System for the Localization and Navigation of Humanoid Robots, Master thesis, Tecnológico de Monterrey, México (2011).