Overview
Jonny Boi (official name: Jetson Orin Nano), is the mini-PC that runs most software in the rover. The rover also contains some software in the microcontrollers, which are the responsibility of Embedded. Jonny and all microcontrollers are connected through a switch and form a LAN. This LAN is also connected to the Ubiquiti router that communicates with the Basestation.Base station.
Jonny Boi runs NVIDIA Linux 36.4.4, which is Ubuntu Jammy 22.04 with NVIDIA packages. On top of thatthat, we install ROS2 Humble Hawksbill and Nav2.
All code running on Jonny Boi is stored in https://github.com/RoboTeamTwente/erc-software-rover.
Software Architecture
This image's official place is on the drive. Please keep them up-to-date.
To edit this image, download it from the drive and open it at https://excalidraw.com. When exporting, don't forget to toggle the "embed the scene" switch and upload it to the drive.
This picture listlists all software running on the rover,rover and how data flows among different programs.
Communications
99% of our programs are running within the ROS2 framework,framework and use the built-in publish-subscribe system to communicate. For more details, see this tutorial. TL;DR: theThe programs that have the data publish it to various topics, and other interested programs subscribe to that topic to receive the data.
For communications with programs running outside ROS2, we use Ethernet and protobufs. See Communication system for details.
Subsystems
