RoboCup 2023 – Open Source Submissions

RobôCIn

Hi, everyone!

We are proud to announce a series of repositories that we plan to submit at this year’s open-source. Hopefully they will help grow our category here at RoboCup.

RobôCIn’s Plans for Future Software Development

rSoccerhttps://github.com/robocin/rSoccer

project-unificationhttps://github.com/robocin/project-unification

This project aims to demonstrate the use of the soccer-common framework (https://github.com/robocin/soccer-common), developed by RobôCIn and used in the RoboCup SSL and IEEE VSS categories. Also, the repository serves as a starting point to the team’s new developers and teams that want to start strategies on SSL.

Usage examples:

robocin-cpp: https://github.com/robocin/robocin-cpp

  • It is a library heavily inspired by abseil owned by Google, and seeks to extract what worked well from soccer-common, implementing software engineering best practices and modern C++ with a README-by-folder based documentation. It provides the core library for our next team’s robotics applications.
    • Floating-point comparison;
    • Angular/geometric operations;
    • In the long term it will be like libsrc in 2D for our team.

protocols: https://github.com/robocin/protocols

The protobufs used by the competition are widely dispersed in the repositories that require them, making it necessary to copy and paste the files that are currently being used in the category. Thus, the protocols used are highly duplicated in the RoboCup SSL softwares, but also in the team’s strategy softwares.

In this context, we propose a single repository containing the protocols used by as well as installation guidelines for various programming languages, such as Java, C++, Python, etc.

robocin-ines: https://github.com/joseviccruz/robocin-ineshttps://github.com/uandersonricardo/robocin-ines-serverhttps://github.com/uandersonricardo/robocin-ines-webui

robocin-ines provides a base framework for architecting robotic applications. This set of repositories comes as an optimization of our current software (ssl-unification), providing a microservices-based framework which:

  1. Enables the use of different programming languages;
  2. Uses the ZeroMQ framework to communicate services with latency below 1ms;
  3. Defines a visualization on the Web, providing better development simplicity;

However, this final structure is not yet finalized and, as a way to validate the technologies, scope, and robustness of the system, the SSL VAR was developed as an MVP of this repository.

SSL VAR is a match recording system, which allows the viewing of the match in real time, as well as the analysis of past plays through replay at a given timestamp or according to a given event in the match, such as a foul, penalty, or goal. In this way, it allows the human referee to analyze a past play and check whether his decision and also the decisions of the automatic referees were correct or not.

The ultimate goal of this repository is to provide a base structure for organizing new SSL teams using microservices, and to extend the life and maintenance of our current software.

Best regards, RobôCIn.

RoboFEI

Dear SSL community,

RoboFEI would like to submit our hardware and software works for the open-source award. We are happy to say that we have released all the mechanics, electronics, AI, and firmware for this year.

Regarding mechanics, the new robot’s generation is fully released on our GitLab (https://gitlab.com/robofei/ssl/ssl-mechanics). The project aims for modularization that will help robot maintenance and assembly.

In electronics, both the main and kick boards have been changed aiming for modularization, besides the fact that the team replaced the FPGA with an STM microcontroller to modernize our robot, and you can see everything here in the link (https://gitlab.com/robofei/ssl/Electronics_v2). Besides that, our new firmware is released on our GitLab too (https://gitlab.com/robofei/ssl/Electronics_v2).

About the software, our ongoing research of multi-robot path-planning is fully released on our GitLab (https://gitlab.com/leo_costa/RobotNavigation).

Best regards,

João Victor
RoboFEI

ER-Force

Dear Small Size League.

ER-Force would like to submit their current hardware and software framework as well as its autoref for the open source award. [1, 2, 3]

A short summary:

The hardware project reflects the current state of the ER-Force robots, i.e. the new robot generation used by our team during this RoboCup. The hardware is designed in EAGLE (electronics) and Inventor (mechanics). The electronics section contains prebuilt manufacturer files (Gerber) as well as schematics as PDF, the mechanics part is depicted in assembly drawings.

The software framework reflects the open-source simulator as well as some low level algorithms such as our path planning. The software framework is written in C++ and Qt.

Finally, our open-source projects include our well-known autoref, which is used by the league for many years.

Best regards,

Mike
ER-Force

TIGERs Mannheim

Dear SSL-Community,

as in the past years we are very happy to announce our entry for the
Open Source Award. The usual one-stop shop to get it all was updated:
https://github.com/TIGERs-Mannheim
We are doing a complete and full release of everything we have,
including electronics, mechanics, firmware, our full AI, and some
awesome new tools. Here is a brief description of what has changed.

Mechanics:
The dribbler dampening and dribbling bar have changed again to improve
traction on the ball. These are mostly material changes. The axes of the
sub-wheels changed to be more robust. The release includes the full
robot mechanics. Inventor CAD files, but also a STEP file of the full robot.

Firmware:
Dribbler current control has been improved near zero velocity. Interface
to the robot’s raspberry pi has been improved with new messages and
feedback of detected balls. The release also includes our wireless
protocol and base station firmware.

Software (AI):
The heart and brain of our team, the central control software “Sumatra”.
Of course, compatible with the simulation protocol. So you can test your
AI against ours locally. Pass finding has been largely improved and now
contains a dynamic learning component. Also watch out for some more
serious dribbling moves which will make you sweat.

RobotPi:
The software for ball detection running on a Raspberry Pi 3A+ on each of
our robots. Most of the color blob detection and thresholding has been
rewritten and is parallelized via multi-threading. The RPi uses only
around 50% of its CPU now.

TIGERs CLAV (Cut Lengthy Audio/Video):
This is an C++ ImGui based application able to cut video files based on
an SSL gamelog. You can synchronize multiple videos and gamelogs with
individual markers and the tool can then cut out non-running stages.
This tool is still quite new and may not support every video format, but
nonetheless it is already a great help to preprocess videos from
matches. Oh and it can create a status overlay video for your videos,
too (similar to the status board).

In case you are missing any information or if you are just curios,
contact us on Discord or write us an email.

Tigertastic Greetings,
TIGERs Mannheim

RoboTeam Twente

Dear SSL community,

Hereby, RoboTeam Twente would like to submit our projects for the Open Source Award.

RoboTeam Twente Wiki
RoboTeam Twente AI Software
RoboTeam Twente Embedded
RoboTeam Twente AutoRef
High Speed USB Library for STM32
Chat-TDP

Our Wiki provides all the mechanical and electrical designs of our robots. Furthermore, it contains the theoretical background and additional explanations about our AI and control software.
On our Github you can find our new path planning within our AI code, as well as our innovative dribbler ball-sensor code (see this year’s ETDP).

This year we created an AutoRef, allowing for a majority vote between all AutoRefs. This software is under active development, but our AutoRef will most likely be used during RoboCup 2023.

Next to that, we developed a high speed USB library compatible with our STM32 chip. This results in an enhanced stability when connecting USB devices to the STM32F676ZI. With minor modifications, this is also suitable for other STM chips.
Lastly, our latest innovation is our very own Chat-GPT, containing all information on all the (E)TDPs within the SSL. Just ask your question, and the answer will be provided. This Chat-TDP is currently still under construction, but great progress has already been made and we feel like this could be beneficial for all teams within SSL.

Thank you!

luhbots Soccer

Hello SmallSizeLeague,

luhbots Soccer would like to submit our current hardware and software work for the Open Source Award.

Links:

Hardware: CAD Files for our Robot

Electronics: Schematics for all our PCBs from the robot and our basestation.

Firmware: The code for the eletronics. Include the fireware for the mulitple MCUs on the robots and the basestation.

Software: The framework to control the robots.

A short summary of the projects:

The CAD files are designed via Autodesk Inventor and can be opened accordingly.

The Schematics and PCB Files are designed via KiCAD 7.0.

The Firmware is completely written in Rust and designed for the RP2040 (the robots) and the ATSAM4E (the basestation).

The software is written in C++ and contains various python bindings which can be used to develop a high level strategy around the software. Documentation is contained via Doxygen and can be built seperatly.

Greetings,

Sebastian Knackstedt, luhbots Soccer

RoboJackets

Hello SSL community,

RoboJackets would like to submit our open source work for this SSL award. 

Printed Circuit Boards
RRT Path Planning
GUI, High Level Planning, and Strategy Software
FreeRTOS firmware

All information regarding documentation can be found within the repositories. RoboJackets has made all parts of our development open source (RobotCAD is currently unavailable due to GrabCAD being down, and we are searching for alternatives). Some of the main innovations involve practical applications of ROS2 for software and FreeRTOS for on-board robot control. Another goal of ours this year was increased documentation: for example software documentation can be found at this website.

Thank you,

RoboJackets, Georgia Tech

Kasra Alexander Sohrab