KIKS 2010 Extended Team Description
Takato Horii1, Ryuhei Sato1, Hisayoshi Hattori1, Yasuyuki Iwauchi1, Shoma Mizutani1,
Shota Zenji1, Kosei Baba1, Kenji Inukai1, Keitaro Inagaki1, Hiroka Kanei1, Ryu Goto1,
Takaya Asakura1, Masato Watanabe1, Kazuaki Ito1 and Toko Sugiura1
1
Toyota National College of Technology,
Department of Electrical and Electronic engineering,
2-1 Eisei-cho, Toyota Aichi, 471-8525, Japansugi@toyota-ct.ac.jp
URL：http://www.ee.toyota-ct.ac.jp/~masa/2010/kiks2.htm

Abstract. This paper is used to describe the KIKS' robots for the RoboCup
2010 small-size league (SSL). Our robot is designed under the Rules 2010 inorder to participate in the SSL competition held in Singapore. The overview for
robots’ hardware and overall for software architecture of our team is described.
Keywords: RoboCup, small-size league, motion control, Artificial intelligence,
IR-sensor.

1

Introduction

Main purpose of our participation to the RoboCup world competition is
confirmation and evaluation of the results of the PBL (Project Based Learning)
experiments. We have educated the creative minds of students using the robot contest
held in our department of electrical and electronic engineering. For the RoboCup
world competition, our team has continuously participated since 2004. We came in
the top 8 in Graz 2009. In this paper, we describe the overview of mechanical andsoftware design of the robot.

2

About KIKS

2.1

Team member-Ryuhei Sato (Vision)-Takato Horii (Strategy)-Hisayoshi Hattori (Mechanics, Team Leader)-Yasuyuki Iwauchi (Strategy)-Shoma Mizutani (Mechanics)
Corresponding author: sugi@toyota-ct.ac.jp

-Shota Zenji (Mechanics)-Kosei Baba (Vision and Mechanics)-Kenji Inukai (Electronic circuit)-Keitaro Inagaki (Electronic circuit)-Hiroka Kanei (Electronic circuit)-Ryu Goto (Strategy)-Takaya Asakura (Strategy)-Masato Watanabe (Supervisor)-Toko Sugiura (Supervisor, financial support)

2.1

History of KIKS

KIKS was established in 2002. Our team name "KIKS" derive from first initials of
the four students whose names are Kamiya, Ito, Kuroda and Sato. They are deeply
involved in the establishment of the team. In RoboCup Japan Open competition, we
got the first place in 2003, third place in 2004 and 2005, and second place in 2007 and2009. Especially, in humanoid league of SSL 2009, we won the first champion. For
the world competition, we have participated since 2004. In Atlanta of 2007 and Grazof 2009, we became one of the best top 8 teams.

3

Conventional robot

3.1

Overview of Robot

In this section, we describe about our robots. The robots are made by students
themselves. Most of parts are handmade. Electronic systems including designs,
components and their improvement have also been done. Our robot does not have a
local vision system and bidirectional transmitting device.

Fig. 1 Overview of Robot

3.2

Electronic circuit for robot

The robot consists of three electronic boards. There are the main board, motor
drive board and kicker board. Main board and motor drive board handles most of therobot's task. Kicker board is used to control the kicking action taking account for thecompetitive situation such as control of the voltage, charging time. They arecommunicated by UART (Universal Asynchronous Receiver Transmitter). If wewould like to partially change the electronic circuit, using of the standard products(UART) will be easy to maintain with no influence on the other parts.

Fig. 2 Electronic circuits of robot
3.3

Main electronic board

Main board receives commands and data from AI system, and drives each device.
This board communicates motor drive board and kicker board by UART protocol,
respectively. Main board has a CPU of SH7144 (SH2) RISC type. The frequency isused by 50MHz. The wireless module is used FRH-SD07 (Futaba). It uses 2.4GHz
band. This module is modulated by DS-SS method, and is communicated to main
CPU by UART.

Fig. 3 Main electronic board

3.4

Battery and Power supply

Each robot uses 3-cell lithium polymer battery with capacity of 1500mAh and 11.1V
made by Hyperion LITESTORM VX25C as a power source. The robot is able to run
for about 15minutes in the case of using these batteries, but its time is not enough. So,
we are going to change the battery into more powerful one.

3.5 Motor drive board
Motor drive board controls the each motors. This board has four drive modules andsome connectors. The drive module is in both side of the board. Its height is 40mm,
and its width is 20mm. Each motor is controlled by one circuit, respectively. That is,four circuits are included in the board. These drive modulus have two microcomputers
called PIC ICs(sub and main). Both PIC ICs control the motor by the signal from themain CPU (SH2). As the results, we could decrease the load of main CPU.
First, sub PIC IC determines how drive the motors, and calculates pulse count of
the encoder. Next, main PIC IC received the signal from sub PIC IC calculates theoutput value compared with the target signal from SH2. After that, main PIC IC
converts the output value into PWM signal to drive H-bridge motor circuit. A seriesof routine process has driven the motors.

Fig. 4 Motor drive board

Fig. 5 Drive module

3.6

Kicker board

Kick device is energized by solenoid. This board converts the voltage from 11.1V
into 200V by transformer to charge kicking energy into the capacitor. The impulse
current is created from discharging the high-voltage capacitor. Straight kicker andchip kicker are controlled with the same circuit. Both solenoids are provided with ahigh current impulse to produce powerful magnetic field within a second. This board
consists of power switching devices, such as MOSFETs which is applicable to large
current of 30[A]. The kicker's speed and power are controlled by the kicker board.

Fig. 6 Kicker board

4

Software for robot

This program consists of the main program and two interrupt programs. Main
program initializes parameters and peripheral devices. After that, it keep waiting forinterrupts. When the interrupts occur, the program executes the interrupt processing.
One of the interrupt program is receiver program. It has a role to receive the data fromwireless module. If the case is happen, it sets receiver flag. Another interrupt programis the timer program. It has a role to check the process time. A timer flag is set every 4[msec].

4.1

Motion Control Program

Our robots have used ring-wheels. They can move in all directions to control thereaction force of wheels. Robot receives the data for the velocity, angle and angle
velocity. The wheel velocity is obtained from the receive data. The coordinate systemof the robot is shown in Fig. 7. Figure 8 displays the detection method of wheels'
position. Each wheel's velocity shown as v1~v4 in Fig. 8 are calculated by formula (1).

Fig. 7 Coordinate system of the robot

Fig. 8 Detection of the wheels' position⎧ v1 ⎫ ⎧ sin θ⎪v ⎪ ⎪ sin θ⎪ 2⎪ ⎪⎨ ⎬=⎨⎪v3 ⎪ ⎪− sin φ⎪⎩v4 ⎪⎭ ⎪⎩− sin φ

4.2

cos θ
− cos θ− cos φcos φ

− r⎫⎧v x ⎫− r ⎪⎪⎪ ⎪⎬⎨v y ⎬
− r ⎪⎪ ⎪ω− r ⎪⎭⎩ ⎭(1)

AI system

4.2.1 Strategy System
Strategy system has a very important role to generate the actions of each robot.
Strategy system has been written by C++ language. The system decides the game planby the information from both of referee signal and vision system. In this section, we
describe the modules in strategy system and simulator system.

Fig. 9 Strategy system

Fig. 10 Schematic diagram of strategy system

Each module has a role and meaning of followings.
[GUIConnector]
This module is used for connection of GUI and Main programs.
[DataReceiver]This module is used for transformation of data for AI sever which received fromimage recognition sever, and for storing to DataManager Module.
[DataManager]
This module is used for analysis to calculate the velocity of robot and ball with thedata received from Data Receiver Module through the Kalman-filter. The setting dataof GUI are also administered in this module.
[Game]
This module is a main system. This module has a role to execute the connection
among the other modules. The dependence between DataManager Module and othermodule is decrease by using of this module.
[Monitoring]This module is used for output the text string which registered in each module toGUI.
[Adjust]This module has a role to adjust and reload by GUI the data which registered ineach module.
[Strategist]
This module makes the game plan for Player.
[Player]This module has a role to determine each robot’s actions and target position
according to the strategy instructed in Strategy Module.
[PathPlanner]
This module has a role to search the shortest path to move a robot using the present
robots' position and target position made by Player Module.
[Controller]
This module has a role to make the output information such as speeds, angles andpositions for the robots based on the target position and target speed, the present
speed.
[Converter]
This module has a role to improve the output data according to the transmission
protocol.
[Sender]This module sends the data to robot.
[OutsideInstruction]
This module has a role to connect other application to DataManager module suchas referee box.

4.2.2 Simulator
Recently, a speed of development for strategy is getting fast. Now, we are in thesituation to code the strategy program as soon as possible. In the case of the
debugging of software, if we use the actual robots, actual robots’ life time will be
short. So, we developed a simulator to improve the developing efficiency anddecrease the operating time of the robots. The simulator is shown in Fig. 11.
The action and strategy for the robots can be checked in this simulator. Especially,
it is very effective for development of the strategy in short period of time. As theresult, we could make multiple plans for the game.

Fig. 11 Overview of Simulator

Data flow
moduleFig. 12 Role of simulator
Figure 12 shows the architecture of simulator. It is for increasing maintenanceperformance. The modules can be change without changing other module. So, we canchange easily if we need.
Each module has a role and meaning of followings.
[Graphical User Interface]This module is a main part of controller for simulator. It is used for analysis of therobots' motion through the various configuration of the robots by using the mouse. Fig.
11 shows GUI of simulator. An event process such as click are done.
[GUIConnector]
This module is used for creation of structured programs.
[DataManager]
This module is used for storing of send data. If use this module , we can get log fileeasily.
[Receiver]This module is used for translation of data which is sent from AI server tosimulator module.
[Simulator]
This module is used for calculation of robot’s position from storing data in
DataManager using physical simulator.
[Sender]This module is used for sending of the data which translated from that of simulator
module for image recognition sever.

5

Development of new robots

5.1

The entire structure design.

At present time, we have changed three parts.
1. Replacement to brushless DC motors (Maxon EC45flat) from brushed one(Maxon REmax24).
2. Redesign of chip-kick device.
3. Whole mechanical redesign taken into account of maintenance.
First, the motors which connect four ring-wheels were replaced to brushless motors(Maxon EC45flat). They were used pinion gear with 20 teethes and internal gear with72 teethes. That is, the reduction ratio is 1:3.6. The robot has not enough space to set
the gear box. So, we had to redesign to take account of narrow space between motor’saxis and wheel’s that as shown in Fig. 13.

Fig. 13 Ring-wheel and internal gear
Second, the chip-kick devices were redesigned. The solenoid of chip-kick device
was under a normal kick device for previous design. But the solenoid often
electrically short out because of rubbing itself against floor. Thus, we replace thesolenoid of chip-kick device on that of the normal kick device as shown in Fig. 2. As
the results, we solved the problem mentioned above. Furthermore, because of large
space between chip-kick device’s bar and solenoid, it could get more kick power due
to the principle of leverage. In addition, the redesigning brought many advantages for
robot performance, e.g., more precise pass by kicking the center of a ball.

Fig. 14 Chip-kick device
Finally, whole mechanical structures were improved taken into account themaintenance. Our robot had many problems in play because of components from a lotof hand-made parts. At present, we replaced the base-plate to thick one and also madethe dents on the plate. The wheel units and kick devises were embedded in the plate as
shown in Fig. 3. As the results, the number of screws to fix on the body were able todecrease because of the dents were worked effectively as shock-absorber against theforces from various directions. If the robot is broken, it will be fixed up easier due tothe geometric design.

Fig. 15 Whole mechanical design5.2

Evaluation of wheel structure.

Robots could run faster than last year by replacing the motors. As the results,
robots were required high performance for ring-wheels. So, we tried to improve thering-wheel’s structure. We had tested some types of ring-wheels as shown in Fig.
16(a)-(d). The (a) is the present type which has thin single tire with every thin unit
house. The (b) type has double small tires with every unit. The (c) and (d) types havethick small tires which made normal rubber and silicone rubber tube, respectively.

(a) with single ring tires(b) with double ring tires(c) with thick rubber ring tires(d) with thick silicone rubber ring tires

Fig. 16 Various type of the wheels used for evaluation.

(a)
(b)
(c)
(d)
Fig. 17 Average time to reach to 1[m/s] from static condition for the robot

(a)

(b)

(c)

(d)

Fig. 18 Average moving speed of the robot on the same condition
The experimental results of their performance are shown in Fig. 17-Fig. 18. Figure
5 shows the average time to reach to 1[m/s] from static condition. Figure 6 shows theaverage moving speed on the same condition. Summarizing the results, the (a) typeshowed the most stable and best performance. Thus, we decided to use (a) type.

5.3

Chip-kick device structure

The chip-kick device was also tried to improve. We investigated the relation
between the length of rotation axis and angle within the limits of the space. By
determining the length R and angle θ, respectively as displayed in Fig. 19, we havemeasured a range of ball when the R and θ were changed. The result shows that arange of ball is strongly depend on the θ as shown in Fig. 20. On the other hand, the R
is shown enough to have only a few cm. Thus, we decided tentatively that the R is
25mm and the θ is 60°. A kicked ball reaches a height of approximately 600mm.
Obtained actual performance is shown in Fig. 21.

Fig. 19 Length of rotation axis R and angle θ of the chip kick device

Fig. 20 Experimental results of chip-kick device

Ball
60°

25mm

45°

Ball

Ball
~600mm25°~2000mmFig. 21 Specification and performance of actual chip-kick device
5.4

Dribbling device structure

In previous robot, we have used the RE-max17 motor for the dribbling devices.
But the motor did not have good enough performance for pass and shoot. So we tried
to change that motor into RE-max24. The motor’s power has increased from 4W to
10W. In addition, we just changed the dribble devices. Table I shows the performanceof new dribbling device. The previous and new dribbling devices are also shown in
Fig. 22.
Table I. Characterizations of new and previous motor.
New(Re-max 24)
Previous(Re-max 17)
Element＼MotorPower
10 Watt
4 WattDiameter of Roller
~15mm
~13mm
Rotation
8800rpm
3900 rpm
Frequency(Roller)(a) Previous dribbling device (CAD image)(b) New dribbling device (CAD image)(c) New dribbling device (side view)(d) New dribbling device (front view)Fig. 22 Previous and new dribbler device
5.5

Detecting device for a ball

Up to now, the IR-Sensor was only used to find a ball in our robot. So, we attached
a new another IR-Sensor to check the position of the ball, and to enhance theperformance of catching the ball. As the result, the robot came to check the differenceof the position between the ball and robot, and obtained the good performance forcatching the ball. Attached new IR-Sensor is shown in Fig. 23.

(a) IR-sensor(b) Body with IR-sensor

Fig. 23 Detecting device (IR-sensor) for a ball

5.6

Electronic circuit for brushless DC motor.

We decided to use brushless DC motor because it is becoming one of the standard
equipment of the robots among the best teams in SSL. We replaced the motor to
Maxon EC 45 flat from Maxon RE-max 24. The motor is popular in the best team.
The motor’s power is more than six times compared with conventional RE-max24.
Therefore, the gear ratio could change from 8:60 to 20:72. As the result, the machine
was able to run more than 1.5 times faster than previous one.
There are two sensors in the motor. That is, the encoder and the hall sensor built inthe motor. E4P made by US DIGITAL was chosen as the encoder. Since its resolution
is 1440 pulse per revolution, it came to control easier in detail.
The Microchip dsPIC30F4012 was used for each motor’s control. The PICs wereconnected to the motor through FET drive circuit. Each PIC was commanded bySH2-7144 of Main MPU.

(a) Brushless Motor(b)Encoder

Fig. 24 Brushless motor and encoder(a) FET circuit(b) Control circuit
Fig. 25 (a) FET circuit for motor drive unit and (b) its control circuit

6

Conclusions

In this paper, we describe mainly the specifications regarding conventional systemof mechanical, electronic and AI design. We have a requirement of use of SSL-visionin this year. Thus, it will be very important that the AI design and the robot’s

kinematic performance is excellent. Our new hardware design have been also
introduced.
The performance of our robots is getting high over the year. The cost performanceis very high in fact, because of most of devices are hand made by students.
We hope that our robots will perform better in this coming competition than that oflast year. We would like to keep joining such competitions continuously in the future.

References
1. Touko SUGIURA, Masato WATANABE and Kazuaki ITO: Practice of Creative Education
Taken into Account the Continuous Participation to the RoboCup Small Size League andWorld Competition, Journal of Education in the Colleges of Technology, 32 (2009) 345. [inJapanese]