Skip to content

Overview#

This repository provides all Python tools developed by the COGIP robotic team. The team is developing a robot for Eurobot, French robotic contest.

All the tools are used during the game itself, or for development, debugging and monitoring of the robot and other test platforms.

Robot Software Architecture#

The main components of the robot are:

  • a STM32 that runs mcu-firmware,
  • a Raspberry Pi 4 that controls a camera, a touchscreen and a Lidar.

The robot is associated with a central beacon having an upper view of the game area, composed of a Raspberry Pi 4, a camera and a touchscreen.

Robot Architecture Overview

Tools running on the robot's Raspberry Pi 4 are:

  • Server connecting all components through a SocketIO server.
  • Dashboard a web server providing a dashboard to control and monitor the robot.
  • Planner in charge of the game strategy.
  • Copilot driving the robot moves by communicating with mcu-firmware (on STM32) using Protobuf messages over a serial port.
  • Detector generating obstacles based on Lidar data.
  • Robotcam reading and analyzing images from the camera.

Tools running on the central beacon's Raspberry Pi 4 are:

  • Server Beacon connecting all beacon components through a SocketIO server, and connected to the SocketIO server of all robots. It also runs a web server providing a Dashboard to control and monitor the robot.
  • Dashboard Beacon, a web server providing a dashboard to control and monitor the beacon, and display the dashboard of all robots.
  • Beaconcam reading and analyzing images of the game area from the camera.

Beacon services will be redesigned and are not yet available. Robots can run standalone.

Monitor is running on a PC connected to the SocketIO server.

Camera provides different commands to get information about cameras, calibrate them and detect Aruco tags.

The touchscreens display the Dashboard using an web browser embedded in the Raspberry Pi.

Emulation Software Architecture#

During development, an emulation environment is also available. In this case, all robot and beacon components are running on the development PC.

Emulation Architecture Overview

In this mode, fake Lidar data are provided by the Monitor.