A couple of days before the actual Robotex competition we had a preliminary “test competition” in Tartu. At that time most of the Tartu robots were not actually yet ready to play properly, but it was none the less a fun event. Team Nasty (who had their robot’s electronics completely burned down in the morning and somehow managed to completely recover in time) won. Telliskivi came a close second.
So, the last three weeks were full of hectic preparations to what culminated in this weekend’s Robotex competition. Our team was incredibly lucky and did just great, winning the fourth place out of 16 participants, beaten only by the three teams from IT College. Considering that the IT College guys have been polishing their three more-or-less similarly designed robots for three consecutive years under the careful supervision of an experienced leader, we do not feel a single bit disappointed to grant them the fair victory. Telliskivi fought its best, losing to the overall winner with a close score of just 5:6.
The main factor which gave the ITC robots a defining advantage was their superiority in speed. This is not something unsurpassable – there were just technical reasons why Telliskivi was tuned to a “slower” setting for the competition, and we’ll discuss this in a later post, now that we finally have time to go on describing the ins and outs of our robot.
We are waiting for the Robotex organizers to put the competition videos out on their web – those are really fun to watch. So far, let me just share a couple of my own shots.
The competition-ready robot
Just a day before Robotex, on Friday, we received the final cuts for the transparent plastic cover of our robot.
On Saturday, we also found out that the horizontal bar on the goals will be attached firmly, so we added a couple of “frames” to preserve the phone in case the robot decides to drive into the goal (which we now could afford to allow in the algorithm).
Nights before Robotex
Robotex is known for its promise of sleepless nights, and that promise was fulfilled. In fact, the bulk of the most important code was actually written during the last two nights. Something tells me it is not just our team who had it this way. Here’s how the competitor’s area looked at 3AM on the night before competition. Things didn’t change much all the way through to 8AM – there were still people working hard on the last-moment fixes.
Telliskivi’s first round
The only round I managed to get on my camera was our first game. It was easy to win – the opponent was extravagant, but non-aggressive. The opponent’s name was “Ventikas”, it was made by kids from the Kullo hobby club, and the sly trick it relied upon was to be large, stand at its own goal and blow air in three directions diverting the balls away from the goal. Unfortunately, the fan was not strong enough, otherwise it might turn out to be an unexpectedly hard opponent to beat. Note the careful aiming Telliskivi is making to get the ball exactly into the goal – at this point the judge asked me to stop filming as he suspected we might be remote-controlling it. That’s what good AI is all about – it looks like a human is behind it.
Telliskivi on TV
On the day before Robotex we actually got to show off our robot briefly on the early morning show on the national TV. Footage here (starting at 1:11:40).
In theory, the dribbler is just a rotating rubber shaft. In practice, making this seemingly simple component is not as trivial as it might seem.
- First, we need a metal inner shaft. The ends of the metal shaft must fit perfectly into a couple of ball bearings. There should also be a groove along the length of the shaft to keep rubber in place. As those requirements are fairly specific, it means that the metal shaft has to be lathed manually.
- Secondly, we need to pick a suitable type of rubber coating. It must be easily moldable upon the shaft and “sticky” enough to grip the ball. Following the advice of the course supervisors, we used Dragon Skin silicone.
- Thirdly, the rubber must be cast onto the metal shaft. This requires preparing three additional components – a properly-sized tube and two caps on it, shaped so that they would hold the shaft right in the middle of the tube. Making the caps meant some more lathe-work for Taavi.
- Once the mold is done, the silicone (which comes in two separate components) is mixed, cast into the form onto the shaft, given several hours to harden and taken out of the form, hoping no ugly bubbles or unnecessary objects got caught in it during casting.
- Finally, the shaft must be mounted into the ball bearings and geared to a motor (which, in turn, has to be mounted appropriately and connected to a pin of a microcontroller board).
The video below illustrates the functioning of a completed dribbler:
Even though Telliskivi is not a great soccer player yet, it already makes for a fun RC toy, controllable manually from the phone:
October 15th – we have the second floor’s plate (plastic laser cut by Tööstusplast) and the “tower” for the phone. We do not yet have the “proper” phone mount, but Taavi made a temporary one from whatever he found in the lab, and as a result we have a robot which already looks like the real thing and smells like victory.
It has been approximately a month since the beginning of the project and by that moment we, among other things:
- received the aluminium laser-cut base plate for the robot that we ordered from Metec.
- received the motors and wheel connectors that we ordered online from Pololu.
- made the “preliminary” wheels.
- received the parts necessary for the motor control circuit board and soldered them together.
- received the Bluetooth module ordered from Proto-PIC.
- programmed the motor circuit board to communicate via Bluetooth and drive the motors.
October 10th was the day when we put those things together for the first time and could test the driving. The video below shows the robot base, remote-controlled via Bluetooth using an XBox joystick. Looks fun, doesn’t it?
When we ordered the motors we were afraid they would not be fast enough. Well here they look faster than we need (although this is not even half the final weight of the robot). However, we have some problems, too. Namely, it seems that our motor circuit board cannot handle the motors at low speeds normally. A lot of tuning awaits.