Mechatronic Design of a Dribbling System for RoboCup Small Size Robot
Zheyuan Huang, Yunkai Wang, Lingyun Chen, Jiacheng Li and, Zexi Chen, Rong Xiong

TL;DR
This paper presents a novel mechatronic dribbling system for RoboCup SSL robots, integrating a 3-touch-point design, simulation analysis, and reinforcement learning control algorithms, with experimental validation.
Contribution
It introduces a new mechatronic design and control approach for SSL robot dribbling systems, combining simulation and reinforcement learning techniques.
Findings
Successful simulation of the 3-touch-point model in ADAMS
Effective torque control via reinforcement learning
Validated system performance on actual robots
Abstract
RoboCup SSL is an excellent platform for researching artificial intelligence and robotics. The dribbling system is an essential issue, which is the main part for completing advanced soccer skills such as trapping and dribbling. In this paper, we designed a new dribbling system for SSL robots, including mechatronics design and control algorithms. For the mechatronics design, we analysed and exposed the 3-touch-point model with the simulation in ADAMS. In the motor controller algorithm, we use reinforcement learning to control the torque output. Finally we verified the results on the robot.
| Hidden layer nodes of Actor | (400,300) |
|---|---|
| Hidden layer nodes of Critic | (400,300) |
| Activation function | ReLU |
| Optimizer | Adam |
| Learning rate | 0.001 |
| Batch size | 128 |
| Discount | 0.99 |
| Soft update rate | 0.005 |
| Plicy noise | 0.2 |
| Noise clip | 0.5 |
| Policy update frequency | 2 |
| Dribbling-bar Type | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | Average |
| Smooth Dribbling-bar | 400 | 340 | 380 | 360 | 380 | 420 | 400 | 420 | 400 | 520 | 402 |
| Screw Dribbling-bar | 600 | 580 | 580 | 580 | 620 | 680 | 620 | 680 | 640 | 640 | 622 |
| Control Mode | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | Average |
|---|---|---|---|---|---|---|---|---|---|---|---|
| Active | 2.40 | 2.50 | 2.40 | 2.60 | 2.50 | 2.50 | 2.50 | 2.80 | 2.30 | 2.50 | 2.50 |
| Passive | 1.80 | 1.70 | 1.40 | 1.70 | 1.60 | 1.60 | 1.50 | 1.80 | 1.70 | 1.50 | 1.63 |
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsRobotic Locomotion and Control · Reinforcement Learning in Robotics · Modular Robots and Swarm Intelligence
Mechatronic Design of a Dribbling System for RoboCup Small Size Robot
Zheyuan Huang1, Yunkai Wang1, Lingyun Chen1, Jiacheng Li1, Zexi Chen1 and Rong Xiong1 1Zhejiang University, Zheda Road No.38, Hangzhou, Zhejiang Province, P.R.China [email protected]
Abstract
RoboCup SSL is an excellent platform for researching artificial intelligence and robotics. The dribbling system is an essential issue, which is the main part for completing advanced soccer skills such as trapping and dribbling. In this paper, we designed a new dribbling system for SSL robots, including mechatronics design and control algorithms. For the mechatronics design, we analysed and exposed the 3-touch-point model with the simulation in ADAMS. In the motor controller algorithm, we use reinforcement learning to control the torque output. Finally we verified the results on the robot.
I INTRODUCTION
The Small Size League(SSL)[1], as one of the most famous and grand robotic competitions in the RoboCup[2], has a history of more than 20 years. As an important part of the soccer robot, the dribbling system can achieve advanced actions such as trapping and dribbling, which is crucial in football strategies. The dribbling system has therefore been innovated and improved by various teams. The “ZJUNlict”[14, 15] is a SSL team with fifteen years of history from Zhejiang University and we got the champion of Division A in RoboCup 2018[16]. The crucial part of our improvements is the new dribbling system with mechatronic design and control algorithms. In the motor controller algorithm, we used reinforcement learning to control the torque output of the motor in the current complex environment and verify the results on the robot.
II RELATED WORK
In wheeled soccer robot competitions of RoboCup, research on improving the ability to dribbling has been ongoing.
Chikoshi et al. [3] got the forward and inverse kinematics equation between the ball-motion and two active wheels, and used experiments to evaluate this method. Hoogendijk et al. [4] measured frequency response functions of the prototype mechanism, and designed and tested a PI feedback controller. Li et al. [5] used nonlinear model predictive control(NMPC) method to fulfill the dribbling control task. They let the robot dribble the ball and move along the eight-shaped reference path, then evaluated the difference between the real and ideal position of the ball. Yoshimoto et al. [6] designed an auto centering roller with screw thread. It can increase the amount of force which it can apply to the ball, and push the ball to the middle of it as well.
In our opinion, the dribbling system should have at least two capabilities, cushioning capacity and holding ability. Since the ability of holding ball is a system consisting of the three parts of the dribbler, the ball and the carpet, which has high dynamics, more research is carried out on the static situation of the robot. There are few studies on the ability of dribbling in the case of high-speed movement and the ability of cushioning.
III Dribbler Design
The SSL robots do not really have foot like human beings. Instead, they have dribblers. A dribbler is a device that can help dribble and catch the ball and typically it can be devided into 2 main parts — the mechanical part and the motor control part. As shown in Fig. 2, the mechanical part of a typical dribbler has the following features. A shelf connects 2 side plates and the dribbling motor is fixed on one side plate. Between the 2 side plates is a cylindrical dribbling-bar driven by the dribbling motor. The whole device has only one degree of freedom of rotation and the joints are fixed on the robot flame. Usually there is a unidirectional spring-damping system locates between the shelf and the robot frame to help improve the stability of dribbling as well as absorbing the energy when catching the ball. The dribbling-bar driven by the dribbling motor provides torque to make the ball spin backward when the contact between the ball and dribbling-bar exits so that the ball can be ‘locked’ by this device in ideal conditions. And the carpet provides supporting force and frictional force and therefore there are 2 touch points on the ball and in this paper we called it a 2-touch-point model (Fig. 2).
For the motor control part, most teams try to keep the dribbling-bar at a constant rotational speed when dribbling the ball and therefore it is actually an open loop control mode for dribbling and the dribbling performance is mainly determined by the spring-damping system of the dribbling device. Unfortunately, this 2-touch-point dribbler with unidirectional spring-damping system and passive control mode does not provide ideal dribbling performances. It is quite easy for the ball to bounce back and forth when launching the dribbling motor. The device might also not absorb enough kinetic energy of the moving ball when catching it so it will bounce back and there occurs a catching failure. Actually it is also hard to greatly improve its performance by simply changing the material of dribbling-bar, adjusting the damping and stiffness of the spring-damping system or adjusting the rotational speed of motor. This structure has natural defects with passive control mode.
In order to overcome the problems above, we devoted ourselves on the dribbler. Firstly, we adjust the geometry parameters of the device so that the ball can touch the chip shovel in steady state, which means both carpet and chip shovel can provide supporting force and frictional force to the ball so we called it a 3-touch-point model (Fig. 4). Hopefully this design will limit the bouncing space and it will be much easier for the coming ball to enter a steady state. In addition, we found that there will be a hard contact between the side plates and the baseplate when the dribbler hits the baseplate. So besides the foam between the shelf and the robot frame, we stick 1.5 mm thick tape between the side plates and baseplate so there will be a soft contact when the dribbler hits the baseplate. Actually this design makes up a bidirectional spring-damping system (Fig. 4) and improves the dynamic behavior of the dribbler. Hopefully it can reduce the bouncing amplitude of the ball when dribbling as well as absorbing more kinetic energy when catching the ball. To improve the dribbling performance when the robot rotates or moves laterally, we also made a dribbling-bar with screw using 3D printing rubber so that it can provide lateral force to the ball when dribbling as shown in Fig.4.
In order to explore the mechanism of the improvements, simulation models of 3-touch-point model with bidirectional spring-damping system compared with the 2-touch-point model with unidirectional spring-damping system were built in ADAMS. A constant rotation speed of dribbling-bar with was given and the ball was released with initial speed of to hit the dribbler (Fig. 5). From the simulation results of ball positions (Fig. 6), the dribbling of the 3-touch-point model was significantly more stable than that of the 2-touch-point-model. It could also be seen that there is no strict steady state, the ball will keep bouncing back and forth and we judge the steady state by the bouncing amplitude which means, if the bouncing amplitude is small enough that the ball never bounces off the dribbler, we can judge it as a steady state. The result also explained why a 3-touch-point model is better than a 2-touch-point model. Normally the dynamic friction coefficient between the ball-carpet surface is greater than that of the ball-chip shove surface. Therefore, when the ball driven by the dribbling-bar moves from the carpet on to the chip shove surface, there will be a sudden drop of frictional force, and the ball will be pushed back on the carpet. And once the ball touches the carpet, there will be a sudden increase of frictional force, the ball will be driven onto the chip shove again. In this kind of state, the amount of spring compression will not change much so that the dribbling system will enter a periodical dynamic steady state (Fig. 7). In contrast, with a 2-touch-point system, the friction force will not change much so the ball will enter much more into the dribbler and there will be a bigger compression of the spring-damping system. Therefore the ball will also be pushed back more and totally the bouncing amplitude will be much greater, or even the ball will bounce off the dribbler(Fig. 8).
With the structural innovation above, we create a quite good passive control dribbler. But considering the real competition environment, the condition will not be that idealistic and more complex movements are needed, indeed. For example, when two robots scramble for a ball, we want our robot able to turn around while dribbling so that it can make space for passing. Also when all shot space is blocked by defenders we want our robot able to do some actions like moving laterally while dribbling to create space to score. In a word, a stronger dribbler is urgently in need. Active controller design based on deep reinforcement learning(DRL) is developed.
IV Active Controller Based on DRL
The schema of the active controller for the dribbler is shown in Fig. 9. From the simulation results of the mechanical system, we found that the control effect is positively correlated with the torque under the three-point ball control model regardless of whether it is in a stationary state or with a ball moving state. However, considering the heat generation problem of the motor, On the one hand, the motor generates heat during operation, and on the other hand, the air dissipates heat. Therefore, in the case of continuous high torque operation, the motor will heat up or even burn out. In response to such a complex situation, we abandoned the traditional control algorithm and used the DRL algorithm to build the controller.
The input to the controller is a dribbler optimal angle calculated in the mechanical simulation. For this DRL controller, the torque closed-loop control of the motor and the interaction of the robot with the real world are unknown. Since it is necessary to dribble the ball in different directions, in addition to inputting the current angle into the DRL Controller, it is also necessary to input the current robot speed at the same time.
The control method consists of two parts: a traditional control algorithm for torque and a DRL control for angles, which are both explained next.
IV-A Torque Control for Dribbler Motor
The torque control model for dribbler motor is based on team Skuba’s design [8, 9, 10]. The motor’s dynamic equation is derived from Maxon motor data [7].
[TABLE]
where, is the output torque of the motor, is the torque constant of the motor, is the resistance of the motor, is the input voltage, is the motor speed constant, is the angular velocity of the motor. Equation 1 shows the relationship between output torque , input voltage and angular velocity . The diagram for the torque controller is shown in the Fig. 10 below. The angular velocity is acquired through the hall sensor. A low pass filter is used to reduce the noise in the velocity measurement. The desired torque is set through the simulation result of the ADAMS model.
IV-B Angel Control Using DRL
In order to allow our robot to interact with the environment to learn the best strategy to control the motor and gradually improve our strategy through trial and error, we used DRL algorithm to achieve better dribbling performance in the simulation system.
IV-B1 Simulation System
We established our dribbling system simulation (here to download) in V-REP[12] with bullet[13] physical simulation engine according to the actual robot measured parameters, as shown in Fig. 11. At the beginning, the ball has a initial speed towards the dribbler. We can get the angle of the dribbling system offset(in the real word we can just use a proper sensor to get it) as feedback and the dribbler outputs a certain torque to dribble the ball.
IV-B2 DRL Algorithm
Twin Delayed DDPG (TD3)[11] is one of the state-of-the-art algorithms in DRL, and suitable for our experiment. So in our simulation experiment, the output of the DRL agent is the torque, and the input of the agent is the offset angle of the dribbling system. The pseudo code of TD3 algorithm shown in Algorithm 1 and hyperparameters shown in Table I.
IV-B3 Reward Setting
In our simulation system, if the output torque is too small, the dribbler will lose the ball, and if the output torque is too big, the ball will vibrate between the dribbler and the ground and cause the motor overheating. Combine the above points, we designed a reward function in Eqution 2-5
[TABLE]
[TABLE]
[TABLE]
[TABLE]
In Eqution 2, is the torque threshold that dribbler can hold the ball, is the gain of this part. If the torque is too big, this reward will be negative value. In Euqtion 3, (rad) is the offset of the dribbling system, is a gain and controls the smoothness of this part of the reward function. In Eqution 4, is a large penalty value.
IV-B4 Simulation Result
We have trained our TD3 algorithm on Intel i7-7700 CPU and NVIDIA GTX1060 GPU for about 9 hours, the resaults shown in Fig. 13-15. In Fig. 13, the value of dribbling system angle finally converges to , that is, the dribbling system leans back slightly. In Fig. 13 shows the position of the ball with respect to the absolute coordinate system. This value measures the severity of the ball’s vibration in the dribbler. It finally converges to almost zero, that means our trained DRL agent is able to control the ball very well. Fig 15 and Fig 15 shows the training episode reward and the output torque, they all have some noise because of randomness of the training process and artificially increased noise for improving the ability to explore. The output torque fluctuates around , a little bigger than the torque threshold , that means is close to the optimal value of the output torque in this condition. We also tried to give the ball a speed to leave the dribbler in the simulation system, but sadlly the DRL agent couldn’t respond in time when the ball got speed, and it just kept increasing the output torque to prevent losing the ball.
V Experiments and Results
According to the catching ability tests, the typical 2-touch-point dribbler with unidirectional spring-damping system could catch a ball with coming speed up to and the new 3-touch-point dribbler with bidirectional spring-damping system could catch a ball with coming speed up to . The results were quite clear that the new dribbler has better dribbling and catching ability. In addition, we made simple tests to see the effect of screw added on the dribbling bar. The dribbling motor was launched and after the dribbling entering the steady state, we made the robot spin around. The rotational acceleration is and the rotation speed was recorded at the time the ball left the dribbler. This simple test was carried out 10 times for both smooth dribbling-bar and screw dribbling-bar, which were made by some same material. As show in Tabel.1 below, the average escape speed of smooth dribbling-bar is and for the screw dribbling-bar is . Finally tests to verify the contribution of active control mode were carried out. this time after the dribbling entering the steady state, we made the robot move back. The backward acceleration is and the backward speed was recorded at the time the ball left the dribbler. This test was also carried out 10 times for both active control mode and passive control mode. As show in Tabel.2 below, the average escape speed of active control mode is and for the passive control mode is . So it was proved that the active control mode significantly improve the dynamic dribbling performance of dribbler.
VI CONCLUSIONS
In this paper, the complete dribbling system was demonstrated, including its mechatronic design, simulation analysis and control algorithm implementation. The test results show that the 3-touch-point design can effectively improve the stability of the ball. Although the controller using DRL does not complete the stability control of omnidirectional dribbling with high-speed, it is still a great method for complex nonlinear controlling problems. We will try further on this issue. Here you can find our video of test results.
ACKNOWLEDGMENT
This work was supported by the National Nature Science Foundation of China under Grant U1609210 and Science and Technology Project of Zhejiang Province under Grant 2019C01043.
The reference list from the paper itself. Each links out to its DOI / PubMed record.
- 1[1] Kitano, Hiroaki, et al. ”Robocup: The robot world cup initiative.” (1995).
- 2[2] ‘Robo Cup Small Size League’, 2018. [Online]. Available: https://ssl.robocup.org. [Accessed: 04- Mar- 2019]
- 3[3] Chikoshi, S., et al. ”Ball dribbling control for robocup soccer robot.” Proceeding of International Conference on Artificial Life and Robotics.(ICAROB), Japan. 2017.
- 4[4] Hoogendijk, Rob, et al. Design of a ball handling mechanism for robocup. Technische Universiteit Eindhoven, 2007.
- 5[5] Li, Xiang. Dribbling control of an omnidirectional soccer robot. Diss. Ph. D. Eberhard Karls Universitaet Tübingen, 2009.
- 6[6] Yoshimoto, Takamichi, et al. ”OP-Am P 2017 Team Discription Paper.”
- 7[7] Kafader Urs.: Motor data and operating ranges of maxon DC motors. Maxon Motor AG, Sachseln, Switzerland (2010)
- 8[8] Sukvichai, Kanjanapan, Piyamate Wasuntapichaikul, and Yodyium Tipsuwan.: Implementation of torque controller for brushless motors on the omni-directional wheeled mobile robot. ITC-CSCC. 2010.
