RoboCup: ER-Force vs. ZJUNlict

At exactly 09:00 AM, the tournament continues with its second day, and our match ER-Force vs. ZJUNlict. After ZJUNlict arrived yesterday afternoon due to VISA issues, their first game against Immortals initially seemed as if they couldn’t match their previous performances in past tournaments. However, after their test match against TIGERs Mannheim in the evening, it was clear to everyone: Those were just initial hiccups, ZJUNlict is playing at a world-class level. Accordingly, we’re eagerly anticipating today’s match.

You can find the livestream of the game as usual on RoboTeam Twente’s YouTube platform, as well as at this link.

First Half

05:00 The game starts in half an hour. Currently, the field is being vacuumed to avoid any disturbances from lint. There’s little visibility of the lines on the field, but fortunately, this only affects humans: The robot software has already been calibrated to the lines before the tournament, so no further adjustments are needed.
05:00 A beetle just crawled into our Robot 2, but no one seems to care. Looks like the hardware still has a bug.
05:00 ER-Force is playing with their white robots as the yellow team, and ZJUNlict is the blue team.
05:00 The game is kicked off with a 23-minute delay.
04:59 And a timeout for ZJUNlict right away. They seem to be facing hardware issues.
04:15 At least the game is running. However, neither of the teams is shining currently. Both teams seem to be having some issues with the radio communication.
03:43 Attack on the Erlangen goal, but our goalkeeper can hold it.
03:36 Expected goal by ZJUNlict. Our goalkeeper seems to be having radio communication problems, as he’s not moving at all.
03:36 Timeout for ER-Force, looks like they’re replacing robots, probably hoping to improve the radio signal for the goalkeeper. The goal has personnel consequences: A new goalkeeper is brought in, the old one is now getting a talking-to. Additionally, the new goalkeeper is being tested thoroughly.
03:36 Actually, apparently no goal! The ball was shot too quickly, so lucky break for us!
02:58 Right now, the game seems to look better, ER-Force bots can actually attack. However, the shot on the opponent’s goal is saved by their keeper, a bit clumsy though.
02:30 Currently, the game is more in the half of ZJUNlict. There are even passes now.
01:54 Apparently, there’s another discussion with ZJUNlict, which is why the game is currently not continuing.
01:54 ZJUNlict seems to have used a challenge flag, meaning they have questioned the referee’s decision. Background: Since we messed up ball placement too many times, we’re not allowed to do any more ball placements, and ZJUNlict will handle all ball placements instead. If they succeed, they get to kick off in any case, even if they kicked the ball out, otherwise, the team that didn’t kick out will kick off. There were apparently incidents during the ball placement, which resulted in ZJUNlict receiving a yellow card. They are now disputing this decision.
01:22 ZJUNlict has collected enough fouls, so they now have a yellow card. This card is active for 2 minutes. During the yellow card period, the team can have one less robot than the normal limit (11). However, since both teams are currently only using 7 robots, the yellow card has no real impact.
00:59 Attack on the Erlangen goal, but the ball can be cleared via a corner kick.
00:12 Our robot actually wins a duel against ZJUNlict, which is a good performance given their drill-like dribbler. But the following attack goes nowhere because our robot can’t control the ball.
00:00 Halftime, it’s 0:0. Towards the end, the game became somewhat more interesting, although it still doesn’t reach the level of quality we hope for. Both teams still seem to have significant hardware issues.

Second Half

05:00 The second half starts with a timeout for ZJUNlict.
05:00 Good kick-off by ER-Force, unfortunately not further capitalized, so the ball is held by ZJUNlict.
04:35 By now, the game is somewhat fluid, although the real excitement is missing. Here and there, double passes can be seen, overall the robots are playing quite confidently again.
04:08 Robot 12 (Lasagne) is causing problems in our goal, so it’s taken out briefly but then placed back on the field.
04:01 Timeout by ZJUNlict. With this timeout, ZJUNlict has used up all their minutes, so they are not allowed to take any more timeouts until the end of the game. Each team gets 5 minutes of timeout during the game and can split these into 4 timeouts.
03:40 Very dangerous situation for us: A shot on goal by a ZJUNlict robot, and our goalkeeper doesn’t react. Luckily, the shot goes just wide of the goal, but that could have been the decision maker. Maybe we should put an old robot in goal?
03:07 Another attack on our goal, but this time it’s saved. How long can we hold on?
02:28 The game is dragging a bit, not much exciting happening at the moment.
01:23 Self-inflicted goal. Attack from the side, but fortunately, the ball stays in the penalty area. However, instead of chipping it away, our goalkeeper slowly rolls the ball into the mouth of an opposing goalkeeper, who gratefully accepts this gift and converts it into a goal.
ER-Force 0 : 1 ZJUNlict
01:15 Unbelievable! An own goal by us a few seconds later! ZJUNlict contributed to this, as they naively dribbled with their kicker instead of just chipping it away. This is how the own goal in yesterday’s game TIGERs vs. ZJUNlict happened: Keeper dribbles, loses the ball, and it rolls into the goal due to spin.
ER-Force 1 : 1 ZJUNlict
01:01 Just let it roll through, that was the motto of our robots. Instead of stopping the ball, it rolls past all our bots towards the goal, but at least our goalkeeper decides to clear it with a chip kick.
00:34 After the game had been dragging on for a few minutes, there’s now a successful counterattack by ZJUNlict following a throw-in by ER-Force. The ball rolls successfully into the goal, so it’s likely to be 2:0.
ER-Force 1 : 2 ZJUNlict
00:34 Apparently, the goal is still being discussed, as ZJUNlict might have dribbled too far, which would be against the rules. Funny thing: Our team isn’t discussing it; we seem to have already accepted the goal. The discussion is only between the referees. In the end, the goal is accepted.
00:21 Another shot on goal, but this time the ball is moving at 7 m/s, which is too fast. The maximum allowed is 6 m/s.
00:00 Thus, the game ends. It wasn’t really beautiful, but not as ugly as the two games yesterday either. There’s certainly still plenty of room for improvement.

RoboCup: ER-Force vs. KIKS

Now, the second game ER-Force vs. KIKS starts.

First Half

05:00 The third match of the day between ER-Force and KIKS starts with a 25-minute delay. We play as the blue team with white covers, while KIKS is the yellow team with black covers.
03:29 Surprisingly, the game is flowing relatively smoothly compared to our first match. However, our fleet is diminishing. We started with 9 robots, but now we’re down to only 4.
02:52 Many dangerous situations in our half. Overall, the game is playing out much more in our half than in the opponent’s half.
02:26 Almost a goal against us! Good pass from a KIKS robot to its teammate, who shoots towards the empty goal, but misses!
02:08 After many other dangerous situations, ER-Force calls a timeout.
02:08 KIKS follows ER-Force’s timeout with a timeout of their own, significantly delaying the game.
01:49 Almost a goal by us! Our robot kicks across the field toward the opponent’s goal, the entire defense is open, but the goalkeeper makes the save.
00:31 The game is meandering along. Not many major actions on both sides.
00:24 Almost a goal against us! But the ball was moving at 8.4 m/s, significantly faster than the allowed 6 m/s.
00:15 Another dangerous situation. Our ER-Force bots are shaking their heads in frustration.
00:00 Half-time, finally. The first half was clearly dominated by KIKS, with no signs of the performance of a vice world champion. We need to step up, or we might get eliminated in the group stage!

Second Half

05:00 The game continues. The teams have swapped jersey colors at half-time: ER-Force is now yellow, and KIKS is blue.
04:09 At least we got closer to the goal, even though we didn’t capitalize on it: The pass into the opponent’s half sails past our robot, and it shows no inclination to change that.
02:22 Another shot on goal by KIKS, but our keeper makes the save.
01:50 Another shot on our goal, but again, no goal this time.
00:36 And yet another unsuccessful shot on our goal.
00:00 Objectively, the game ends in an undeserved 0-0 draw. In summary, we were very lucky. While we could defend the last match against Immortals with our current poor performance, we would have systematically lost this game if it had gone into overtime.

It appears that the issues with our robots are currently quite diverse:

  • The HBC radio communication doesn’t seem to be working properly. Everything seems fine during the practice slots when we have the field to ourselves, but as soon as a real game is played, the radio signal deteriorates significantly. It’s actually the radio communication, not the control system as previously thought, responsible for the overshooting of the robots and the breakdown of the lanes. Our suspicion is that we’re doing something wrong in the firmware and/or software since the HBC radio has proven to be extremely robust and practically indestructible in our experience.
  • The “battery cages,” which are the mechanical components that stabilize the battery in the robot, regularly break completely. These were designed for much lower forces, but the batteries are causing significantly higher forces during braking and crashes.
  • The motor boards, which are the boards responsible for controlling each motor, frequently fail when powered on. This issue has been known for a while, but the boards are remnants from the semiconductor crisis, meaning they are a patchwork of components that were available back then and are so expensive that we can’t afford to make new ones.
  • The tachometers often give nonsensical readings. This is likely because they are only supported on one side, causing them to vibrate during driving.
  • The current measurements sometimes return nonsensical values, causing the motor control based on them to only partially regulate the motor.

All in all, there are quite a few challenges that we need to address.

RoboCup: Schedule

Group Stage

Results Group A

Place Team Matches Points Goal Difference
1 TIGERs Mannheim 2 6 20:0 20
2 RoboDragons 2 3 10:10 0
3 RoboTeam Twente 2 0 0:20 -20

Results Group B

Place Team Matches Points Goal Difference
1 ZJUNlict 3 7 7:1 6
2 Immortals 3 5 2:0 2
3 ER-Force 3 2 1:2 -1
4 KIKS 3 1 0:2 -2

Thursday, 07/06/2023

Time Match Article Livestream Final Score
09:00 AM ER-Force vs. Immortals Article Livestream 00:00
12:30 PM RoboTeam Twente vs. RoboDragons Article Livestream 00:10
02:00 PM ER-Force vs. KIKS Article Livestream 00:00
05:00 PM TIGERs Mannheim vs. RoboDragons Article Livestream 10:00
06:30 PM ZJUNlict vs. Immortals Article Livestream 00:00

Friday, 07/07/2023

Time Match Article Livestream Final Score
09:00 AM ER-Force vs. ZJUNlict Article Livestream 01:02
11:00 AM KIKS vs. Immortals Article Livestream 02:00
12:30 PM TIGERs Mannheim vs. RoboTeam Twente Article Livestream 10:00
02:00 PM ZJUNlict vs. KIKS Article Livestream 05:00

Knockout Stage

Friday, 07/07/2023

Time Match Article Livestream Final Score
03:30 PM RoboDragons vs. ER-Force Article Livestream 00:05
05:00 PM Immortals vs. RoboTeam Twente Livestream 05:00

Saturday, 07/08/2023

Time Match Article Livestream Final Score
09:30 AM RoboTeam Twente vs. KIKS Article Livestream 00:04
11:00 AM ZJUNlict vs. RoboDragons Article Livestream 01:00
12:30 PM TIGERs Mannheim vs. Immortals Article Livestream 10:01
02:00 PM KIKS vs. RoboDragons Article Livestream 01:00
03:30 PM ER-Force vs. Immortals Article Livestream 00:01
05:00 PM ZJUNlict vs. TIGERs Mannheim Article Livestream 00:02
06:30 PM Immortals vs. KIKS Article Livestream 07:00

Sunday, 07/09/2023

Time Match Article Livestream Final Score
10:00 AM ZJUNlict vs. Immortals Article Livestream 00:06
01:00 PM TIGERs Mannheim vs. ZJUNlict Article Livestream 03:00

RoboCup: Test Match ER-Force vs. Thunderbots

Before the actual tournament matches can begin tomorrow, we have another setup day today, during which teams can build and test their robots. Traditionally, these setup days are also used for playing friendly matches against other teams, and we have scheduled a friendly match with our long-time friends UBC Thunderbots (Vancouver, Canada) for 2:30 PM.

UBC Thunderbots is a Division B team that has existed for many years and has achieved numerous successes, including first place in Division B at RoboCup 2019 in Sydney, Australia. Our team has always had a close friendship with the Thunderbots, which is why we always try to spend time with them at RoboCup events.

Currently, the robots are still being set up on the field, and preparations are in full swing. Both teams are playing with new robots, ER-Force with 6 and Thunderbots with 5. And finally, it’s time to start. However, it’s not an exciting game: Our robots are suffering from significant firmware and control problems. Additionally, our tachometers are vibrating, resulting in poor measurement data.

All in all, not much happens in the game; our robots mostly stay in our own half of the field, and the game ends in a 0-0 draw. Nevertheless, the game serves its purpose: All the problems that occurred during the game can now be fixed in the hope that tomorrow, when it counts.

There was a small incident at the end: Apparently, one of our chargers was accidentally set to the wrong battery type, resulting in a battery being charged to 4.8V cell voltage, which is very dangerous. The battery was very warm and practically round afterwards. However, together with the league organizers, our team, and the security personnel, we managed to defuse the situation: The battery was put into a LiPo bag, which was placed in a metal cooking pot, and then taken out of the hall onto a free asphalt surface for monitoring from a distance. Finally, the battery was disposed of by firefighters.

All in all, we were fortunate in this case, but such incidents should not happen again. We can conclude that having multiple battery chargers simultaneously is not advantageous, as mistakes can occur more easily. We will likely invest in purchasing additional battery chargers to ensure that we only have one model in the future.

RoboCup: First Setup Day

Today is the day: we finally get to enter the hall. Accordingly, we set off early to catch the tram. The destination: Parc des Exposition. As we enter the tram, we are pleasantly surprised to see that RoboCup is actually advertising this year, a novelty! The RoboCup vibe spreads instantly, and everyone hopes that this time there might even be spectators!

But one thing at a time: first, we need to reach our destination and get inside the hall. Due to the political circumstances, we have to undergo a bag check, but apart from that, there are no further incidents, allowing our feet to touch the hallowed ground.

After unloading all our robots and equipment, we also try to pick up the event shirts. However, we quickly realize that it’s not as easy as it seems, as the hoodies and T-shirts can be customized this year. The creativity of our members knows no bounds, and we now have an official traffic light trio.

Freshly equipped with T-shirts and hoodies, we immediately dive into the important tasks: cutting out colored papers for the top of our covers (for the why, see this explanation), finalizing and setting aside the robots.

And just like that, it’s already noon, and it’s time to have lunch with our longtime friends UBC Thunderbots (Vancouver, Kanada). With the beautiful weather, there are plenty of options, as food trucks park outside the hall especially for RoboCup.

After lunch, we continue testing, and in the evening, we even get to test on the real playing field. Here, we notice that our new radio system, sponsored by Gerhard Schubert and HBC Radiomatic, runs smoothly, seamlessly, and without any signal interruptions, much to our delight. Our old radio system was quite unreliable, and we faced massive signal dropouts in almost every game.

However, there seem to be some firmware issues. Sometimes, when the robot changes its frequency (the new radio system is based on frequency hopping), the radio completely fails for the robot. But we are optimistic that we can fix this bug in our firmware.

And so, an action-packed first setup day slowly comes to an end for us. Unfortunately, due to the current political events, the last tram already departs at 6:45 PM, forcing many teams to leave the hall early. Although this does not affect us as our hotel is within walking distance, it is certainly disappointing for the other teams. We sincerely hope that the situation will improve in the coming days and that all teams will have equal opportunities to test their hardware in practice.