[Open] MegaHertz from Italy

How many years have you been competing in in RCJ Soccer?

Four and more years

What’s the most interesting thing you’ve prepared for this year’s RoboCupJunior Soccer competition?

(by Alex Vellone Team Captain) This year the most interesting thing we worked on is the new strategy to hide the ball to other robots. With the two dribblers we are able to catch the ball and run all over the field, hiding it and shoot to the goal

Where can we find your poster?

It should be available at https://www.dropbox.com/sh/w5bn8br7yjv4rsh/AABTyOHNraSc9Qdqza0SAlxGa?dl=0

Also, the team has prepared this video: https://drive.google.com/file/d/1LFu08z_QM1h01bxX2ZMRwjLSJaOAomc1/view?usp=sharing


If you’d like to know more, please feel free to ask @DjChicco27 by replying to this thread !

2 Likes

Hi Guys,

both the robot and the video look very well made. I would be interested to know what you can recognize from the camera image: Do you localize your robot, the ball, other robots, the lines, other things? What do you use the camera for?

Best Regards,
David

Hello Megahertz! I like your robots!

I have this question:

In the defense strategies images from your poster looks like the robot is almost inside the penalty area, How do you make sure that the robot is not completely in the penalty area and avoids being declared as damaged?

Well done Team! your robots look very strong and well designed.

My only additional question is if your playing strategies cover cooperative plays or opponent detection.

(Davide Chiorlin Senior Member)
HI, our robot features 10 analogic line sensors placed in a shape of 2 pentagons one into another: that allow us to have some “low priority” sensors and some “high priority” sensors. When the robot receives the high priority interrupt it stops, just on top of the line

1 Like

Hi @david, thanks for watching our video. The OpenMV Cam H7 is not very powerful, its frequency is only 480MHz but that is enough to trace colors at a frame rate of around 27 images per second.
We, at this moment, use it to trace the colors of the ball and the two goals. In the near future we’ll also try to track the opposing robots.
As we said in the video, all the information that is collected from the camera is then sent to our motherboard, via serial protocol, which will carry out the best game strategy.

Alex,
MegaHertz

Very nice work, guys!
You mentioned that you focused to find “the perfect parabolic mirror”. I am curious: what is the perfect parabolic mirror? Did you find it?

Hi @llopez01, our robots both have a Bluetooth module, so they can exchange information while playing. They are therefore able to make a cooperative play. They are able, for example, to exchange roles during the game adapting to their distance to the ball or goals.

At the moment we have not yet tried to detect the opponent robots, but it will certainly be something we will try to do for the next year.

Alex,
MegaHertz

(Davide Chiorlin Senior Member)
Good evening, to design our mirror we have had to design the robot first, making it as much conical as possible : once we had designed the robot we focused our work to make the mirror as far from the camera as possible, making the objects that the mirror reflects bigger. After that we designed the mirror with a double parabolical design, making the far objects much more visible and reducing the blind zone created by the robot.

2 Likes

Thanks for the explanation.

Hey guys,

First of all, let tell you that you’ve done some very nice work on your robots!

Echoing @javier_687’s question from above, I’d like to ask a further question about your defense strategies, in particular considering the situation on the image below:

When you say it moves left and right, it to some extend feels like it may have a problem with the agility rule which basically forces the robot to move in all directions. Can you please talk a bit more about that?

Please let me stress out that this is just due to my personal curiosity – I am certainly not suggesting your robots do not comply with the rules in any way for a very simple reason: I haven’t actually seen them play, I only saw this picture :slight_smile:.

Thanks a ton for showing off your work!

– Marek

Hello guys,

thank you for your presentation! I’m curious about sending the camera’s information via serial. What information do you actually send? Have you experienced some kind of latency problems, where the processor was not able to read as fast as camera was sending? Have you considered using for instance I2C protocol or something similar?

Thanks.

Adrian

Hi @mareksuppa, thanks for the question, I try to better explain, the image alone can be misleading.
Our robots communicate each other and are therefore able to play with dynamic roles during the game.

A robot remains in front of the goal (and move left and right) only if it knows that its teammate has the ball or is very close, in case other steal the ball. In all other conditions, if you place the ball in front of the robot, he will try to catch the ball and his teammate will return to the defense to protect the goal.

I hope I have clarified your doubt.
Alex,
MegaHertz

Thanks @Alex_MHz, that makes a ton of sense!

1 Like

Hi @adrianmatejov, sorry for the late reply.

We send to our main board all the information that we process from the mirror: the ball and the two goals. We send the relative position and distance from the center of the robot of the three objects that we trace. To do that we have created a simple protocol that it uses serial at 115200 baud to transfer the data to the main board and make sure it receives the data in the correct order.

We started communicating through the serial mainly because we had a free UART interface on the main board and we didn’t find convenient to work on I2C because it was already used to read other sensors on the main board.

The communication through the serial takes place in <= 1mS and we believe it’s a very low time compared to the time it takes for the OpenMV Cam H7 to process the data of a frame (about 37mS).

Of course, we had latency problems: our 48 MHz PIC18F67K40 processor, mounted on the main board, it performs mathematically much simpler operations than the camera and is always waiting for the information to be processed by the OpenMV Cam.

While waiting, it checks the other sensors and acts on the motors to correct his movements.

Alex,
MegaHertz

1 Like