To create, from a blank slate, a robot that could read a QR code with the task, then drive to the loading area, pick up the right object and carry it to the unloading area – this was the task facing the participants of the Bauman Robotics Club tournament, held in Moscow in the middle of March. Some might say that the task doesn’t look impossible, as something similar has already been implemented at Amazon’s famous automated warehouses. But in this case, the students had to solve this problem in just a couple of months with practically no budget at hand.
A total of 11 teams applied for participation, ten of them representing Bauman Moscow State Technical University and one – ITMO University. All participants were sent the regulations according to which they were to build their robot. But their creative scope was mostly only limited by time and resources available.
“It was made known that the robots would compete on a rectangular platform with two loading and two unloading areas,” says Valeriy Chernov, ITMO University student and ITMO team’s mentor. “Ping pong balls were used as a load. You can often pinpoint a winning strategy based on the assessment criteria given in the regulations. The rectangular field significantly simplified the task – we only had to solve the problem of positioning the robot correctly, without mapping-out the ground. At the faculty, we have the German platform Robotino, which we took as a basis for our robot, we also made the mechanics for capturing objects ourselves, and installed a lidar. It was known that the number of transported objects would be identified randomly, but there would be no more than five for each loading and unloading area, so we made five capturing mechanisms in order to take everything at once and not go for it twice.”
Engineering work always entails searching for the right balance. If you make your robot slow but precise, it can be outrun by faster, but less sophisticated counterparts. If a platform is too fast and abrupt, it’ll just topple the load over, thus failing to bring it to the destination point, which will yield you additional penalty points.
Ready, set...
As it often happens, there wasn’t enough time in the lead-up to the competition for a full checkup and adjustment of all the systems. The work continued even while the participants were on the train to Moscow. Thus, the train’s passengers could witness the work of an improvised mobile robotics workshop.
“We added small finishing touches in the train,” says the team’s member Artyom Myshlyaev. “At one point, we discovered that one of the engines didn’t work, so we had to replace it there and then. Other passengers were looking at us with interest, some were asking where we were going and for what. We told them about the competition and our robot.”
Finally, the team reached the building of the Institute of Control Science of the Russian Academy of Sciences. It was there, on the third floor in-between test-driving facilities, that the competition area was situated. The St. Petersburg team were greeted with an unwelcome surprise: the edges of the platform turned out to be lower than originally stated.
“The edges turned out to be 25cm in height instead of the originally-stated 30cm,” explains the team’s member Aleksandr Smekhnov. “This was critical for us. We installed our lidar at the height of 27cm, it was supposed to rotate and provide the robot with information about its location in regard to the platform’s edges. But this development made it impossible, and so we had to do manual calculations of how our angle sensors work, how much the wheels slip, and, based on this information, predict where our robot would go.”
Four instead of five
Before the start signal, the teams were given some time to assemble and adjust their robots and carry out test runs, during which they could introduce any final corrections in their platforms’ work to adapt them to the route. This was also the participants’ first time seeing what other contestants’ came up with.
“There were teams whose robots literally drove around on cardboard wheels, it seems absurd, but the robots did manage to move,” shares Valeriy Chernov. “One robot slightly shocked me with its extremely brutal appearance: its engines were made of screwdrivers. There were just four screwdrivers that provided torque to the wheels by means of a belt drive! There was also a robot that didn’t have any claws for capturing the load – instead, there was a stick that pushed the balls into a special basket.”
Not long before the end of the tests, ITMO University students encountered yet another unpleasant surprise – the fastening of one of the manipulators cracked. There was no time to fix it, the only solution that remained was to remove the unit, as a result of which the St. Petersburg robot was left with four hands instead of the original five. This was how it was forced to start the race.
The competition
Each robot had two attempts separated by a two-hour interval. In this time, the teams could make small alterations based on their robot’s performance in the first round. The winner was selected based on the results of the best attempt – points were awarded for a robot touching the right ball in the loading area, for its capture, and for its delivery to the place of unloading. If a robot touched an incorrect ball, its team had their points deducted. If two robots scored a similar number of points, the one which managed to perform the task quicker was proclaimed the winner.
For their first attempt, the St. Petersburg team decided to opt for a more conservative tactic.
“We used an old strategy which I love,” reveals Valeriy Chernov. “It consists in using only stable solutions during your first attempt. So, if you’re second-guessing whether to take something or not, use additional settings or not – don’t use them. This way, you’ll get a basic result obtained by the system which you’re sure of – you won’t fall any lower. In your second attempt, you want to make use of all possible improvements – if they work, you’ll improve your result, if they don’t – you’ll still have your points for the first attempt.”
After a robot is up and running, its team’s psychological state is even more complicated than that of a sports coach. The latter can give their players a hint and point out a mistake, while all the roboteers can do is to watch and either rejoice in their robot’s successes or bemoan its failures.
“At the start of the first attempt, it turned out that we slightly miscalculated the coefficients,” shares Aleksandr Smekhnov. “Our robot believed that it reached the loading area but it wasn’t like that in reality, it barely touched the balls. It’s difficult – you see that the robot is about to miss, and realize that it’s due to your own mistake. We were counting just as we were losing 15 points off of each ball. On the other hand, we were aware that the algorithm worked correctly and we just would have to tweak the coefficients a little in the interval. Even despite all of this, we finished the first attempt in second place.”
Finishing spurt
The first attempt laid bare all the mistakes the team had made – some of these were easy to rectify, while others proved more difficult.
“Our construction hinged on servomotors, which caused gaps and other defects, sometimes the manipulators didn’t close all the way, and we had to calculate all this manually. Apart from this, we took into account the field’s position, the location of the balls, recalculated some coefficients based on what we saw in the first round – all this allowed the robot to move faster,” notes Aleksandr.
As a result, the St. Petersburg robot improved its performance in the second round – it was able to capture and hold on to more of the right balls and score more points. Unfortunately, though improved, this outcome didn’t allow the team to reach first place; what’s more, the team was pipped to the post by a team that they had been winning over in the first attempt.
“This was a funny story,” recalls Aleksandr Smekhnov. “Their robot started its run, but literally went mad at one point, started rushing up and down knocking down the balls. But the balls rolled into the unloading area and... were considered as delivered. We were only a little upset, but mostly very amused and glad for how lucky the other team was. Although it’s a bit frustrating that the place was decided by a couple of digits in the code.”
Still, the first-year ITMO students managed to stay on the winners’ podium, bringing home bronze medals. That’s why the robot’s (who doesn’t have a name yet as the team didn’t have the time) debut could be considered a success. Its improvements will continue with the team’s work on autonomous navigation. As for them, the students got the invaluable experience of competing in a different city and on unfamiliar ground, which no doubt will come in handy in the future.
“After such competitions, the students develop an understanding of what is great engineering,” summarizes Valeriy Chernov. “After all, robotics competitions aren’t that different from launching a rocket, for example. You have a task, you work on it, you have approximately one attempt at success. Some may be attracted by this premise, while other participants, perhaps, will decide to go in another direction – for instance, into research, where there are no limits on time and attempts made, and the search for the best solution never ends.”