<<

MRL Team Description 2013

Aras Adhami-Mirhosseini, Hamidreza Jamaati Tafti, Siavash Asad-Dastgerdi, Amin Ganjali, Saeid Esmaeelpourfard, Hadi Beik Mohammadi

Islamic Azad University of Qazvin, Electrical Engineering and Computer Science Department, Mechatronics Research Lab, Qazvin, [email protected]

Abstract. MRL Small Size Soccer team, with more than four years experience, is planning to participate in 2013 . In this paper, we present an overview of MRL small size team. After attaining acceptable performance to reach the third place in 2010 and 2011 competitions, 2 years ago we decided to increasing the reliability and achieving higher accuracy both in individual and team works. Finalizing our debugging tools like 3D simulator, comprehensive user interface and decision systems restructuring in this year, aided us to evaluate whole of the system software from low level control to high level strategies. Finally, redesigning the electronic boards and mechanical structure promoted the robots ability in performing more complicated tasks.

1 Introduction

MRL team started working on small size robot from 2008. In 2010 the team was qualified to be in semi-final round and achieved the third place .The main problem in MRL robot in 2011 competitions was its unreliable behavior. The primary goal in the recent improvement is solving this problem via redesigning the electrical and mechanical mechanisms. Another goal of our team is improving the speed and accuracy of the motion. Some requirements to reach this target are satisfied with hardware restricting. Other points are considered in motion control approach. New methods in control are designed using abilities gained by evolution of software tools like online debugging and simulator which is detailed more in [2]. This paper is organized as follows: Firstly, software architecture including our new approaches in high level strategies, navigation subsystem and tools which are described in section 2. A new electrical design based on ARM micro controller beside FPGA, and other accessories of robots onboard brain, is explained in section 3. Description of mechanical configuration modification for the newly designed robot which elevates the capabilities of the robots, smooth and reliable motion is the subject of section 4.

2 Software

In this part the software main objects are presented. It is shown how our new system debugger helps us to design a robust controller and microprocessor programs. In this year MRL software team has been started a new high level analyzer project that will be shown in the next section. Our simulator new features will be presented afterward. Our game plan contains many parts like play, roles and skills. In this paper concentration on a new layer, named strategy (sub play), is explained in the following.

2.1. Strategy

Strategies are a new layer that has been added to our software architecture. Strategies have been placed between Roles layer and plays layer. Roles like “Defender” or “Attacker” are simple roles which are used in strategies. Each play can be includes several strategy (sub plays) and several roles can engage in a strategy. Each strategy has several states that conditions of transition are determines the transition time between states. For example free kick play has two types of strategies. The first strategy is defending and second is attacking.

Fig. 1. Two types of strategies

2.2. Navigation System

We are using Rapidly Random Tree (RRT) as a part of our navigation subsystem. A simple RRT path planner tries to generate a tree from an initial state to a goal state using random points in a way that the tree does not encounter obstacles. In the procedure of expanding the tree all the random points that may are in the region of obstacles will be eliminated. Moreover, if there is a reachable path from each random point to goal, the desired tree will be completed. After reaching the goal, usually the generated tree is too rugged for tracking. Before starting to move on path, the generated path must be made smoother. For this purpose we benefit from a heuristic algorithm. In figure 2 the RRT path and smoothed one is depicted.

Fig. 2. The generated path before and after smoothing

For moving on the generated path, we need to calculate a speed vector for each point on the path. For this we should consider the distance from beginning to each point and curvature from that point to the end of path. We force the robot to reach all the points sequentially with the calculated velocity in each step.

2.3. Online internal debugging

As stated before, to debug onboard control modules such as wheels speed and controller parameters a comprehensive debugging tool is required. simultaneous Investigation of the commanded velocities and the robot velocities computed via vision and encoder data is acquired. This new approach facilitated analysis and design of the PID controller, wireless module data or any of our internal components. We have designed an online link between our microprocessor and AI systems in order to enable us to debug and maintain all controllers and speed problems easily and in a time optimal fashion. Fig. 3. shows our internal debugger graphical interface. In this figure the mentioned data are shown. If the desired velocity and robot speed measured by vision are similar, the control performance will be suitable.

Fig. 3. User Interface of the AI, showing the viewer and settings Box

Previously, we had a unique configuration states for all of the robots without considering differences between them. This year, we have embedded a sub-section to our AI system which stores specific properties of each robot which later would be used for system calibrations. These properties include controlling issues, kick speed or any kind of configuration parameters.

2.4. High level Analyzer

One of the most significant variations we have made to our MRL2011 team is the implementation of a new decision making layer as a high-level analyzer. Log files from SSL Vision of all MRL games should be recorded during a game. The final stage will be extracting the opponent team strategies and finding the best tactic to cope with it. Although, it is too far from implementation, the preliminary steps are under construction. Strategy model consists of different parameters such as the number of robots in each position e.g. defense robots, attackers and free robots. Our goal is distinguishing the best feasible strategy from these models dynamically. For instance, if the opponent team is attacking with one “attacker”, one marker robot should be placed to block it. If there are two attackers in non-dangerous area (far from penalty area), there should be still one blocker robot. Of course, such high level decision makings can be implemented properly when each task in lower levels could be performed in a perfect manner. Before obtaining such performances a simulator will help the high level designer to evaluate his ideas. The core system of MRL2013 simulator is the same as MRL2012. One of the significant changes in the simulator is considering noise signals in wireless system. We found that this noise has a close relation with distance. Sometimes data packets are not properly received by robots. A probabilistic model for data transfer has been introduced to simulate a real wireless system. Measuring lost data compared with the size of sent packets shows a detectable relation with distance between the robot and the wireless transmitter (d). A Gaussian distribution is fitted to the wireless noise with the mean (m) and variance (ϭ) related to the distance ((1) and (2)). More details about these contributions are explained in [2].

3 Electrical Design

The robot electronic consist of an Altera™ Cyclone® FPGA linked to an ARM core same as last years. The major change during the last year in this section is design and implementation of parallel motor close loop controller in FPGA, Because when PID controller implemented in software requires a lot of CPU time and also lots of interrupts occurred during this operation .By moving controller to hardware the ARM processor can dedicate other task. Another part that we decided to change was the motor driver circuit .As you can see in Fig4 the new electronic board integrated all electronic components.

Fig. 4. The electronic main board

To design the motor drivers we should care about efficiency, transient operation, bias/power requirement and startup condition. As it mentioned before we chose integrated bootstrap drivers to drive the motors.

3.1. Accessories:

In this section other accessories are described in categorized manner. 1‐ Wireless Module: The main board receives commands from the AI computer by wireless module. Our communication system is based on the nRF2401 wireless module which is a programmable radio transceiver with a working frequency between 2.4 and 2.52 GHz and a baud rate of 2 Mbit/s. So it decreases the delay of communication to around a few milliseconds. 2- Battery: Each robot uses 5-cells of lithium polymer (LIPO) battery, with capacity of 1750 mAH , can preparation 61A continuously 3- Kicker Board: The kicker board is designed to control the high voltage. It has one MOSFET for charging and two for kicking. The switching circuit without any feedback of inductor current cause lot of problem .So we added a current sensor to set a threshold for current to solve the problem. Also power deception in switching MOSFET increase the temperature and cause damages .to solve this problem we utilize a temperature sensor to avoid critical situation. 4-IR sensor: For recognizing the ball position in dribbler we used two IR sender and receiver sensors. To protect sensors and better ball positioning the location and structure of sensors reshaped.

4 Mechanical Design and construction

The mechanical system of small size robot consists of wheels, kicker, dribbler and motion system. Some problems in the previous design encouraged us to change the materials and mechanical design.

Fig. 5. Robot 2011 mechanical structure

In 2013, we did not change much in mechanics. We are researching for finding the best angle placement, chip kick arm length, spin back roller and sensor location, only in the dribbling system .In order to chip kick optimizing, we are simulated the Dribbling system in Solid-work motion analysis environment , which is shown in Fig 6.The purpose of this simulation is to check all events that will be done and the best and lightest system which provides the acceptable range of chip kick.

Fig. 6. Matlab Motion Analysis environment

In 2010 competitions, for achieving the purpose after lots of calculating we chose 29 millimeters radius for wheels. Now we have different aim relative to the past. Acceleration is more important in our strategies, so we have decided to reduce the radius of the wheels to 25 millimeters. For a better movement the design of the wheels were revised. Each wheel has fifteen rollers. More details about the motor wheel structure are as the past year. The robot uses dribbling system to improve the capability of ball handling, dribbler is a shaft covered with Silicon tube that connected to high speed brushless motor shaft, Maxon EC16 Brushless, with 1:1 gear ratio. The MRL2013 robot has ability to kick the ball up to speed of 12m/s. The robot has also the custom-made flat solenoid for chip kick system which is attached to chassis, under the main solenoid. The chip- kick has a 45 degree hinged wedge which is capable of kicking the ball up to 4m before it hits the ground.

Fig. 7. Wheels of MRL 2012

References

1. A. Azidehak, M. Hoshyari, M. A. Sharbafi “Design and Implementation of Minimal Components Brushless DC Motor Driver for Mobile Robots” 2011 IEEE International Conference on Mechatronics, Istanbul, , (2011). 2. Bakhshandeh, O., M., Sharbafi, “Modeling and Simulating of Omni Directional Soccer Robots” 2011 IEEE 3rd International Conference on Computer Modeling and Simulation (ICCMS 2011), Mumbai, , (2011). 3. Sharbafi, M. A., Hoshyari, M., Esmaeelpourfard, S., Bakhshandeh, O., HaajSeyedjavadi, E., Esmaeeli, D., MRL 2010 Team Description, In Proceedings of the 14th International RoboCup Symposium, Suzhou, , (2008).