Softwareüberblick

Die Software des Rovers ist in mehrere Teile aufgeteilt, welche sich über den Rover, einige interne Systeme und die Steuerungssoftware erstreckt. Diese Website soll einen kurzen Überblick über diese Software verschaffen.

Programmiersprachen und Techniken

Der gesamte Rovercode ist im Kern eine Mischung aus modernem C++ und C. Der zentrale C-Code ist auf sämtlichen Plattformen lauffähig und implementiert das eigens entwickelte Kommunikationsprotokoll LiteComm, welches für embedded-Anwendungen und Inter-Chip, sowie Netzwerkkommunikation optimiert wurde. Aufgeteilt ist alles in mehrere Git-Repositories, einige davon sind öffentlich zugänglich.

Aufbau und Architektur

Zentral liegt die RMaster Softwarekomponente, welche auf dem Rover alle anderen Komponenten miteinander verbindet. Die Motoren und Servos werden über RBreakout angesprochen und das umrechnen der Benutzereingaben (Lenkwinkel und Geschwindigkeit) in die Signale für Motoren und Servos übernehmen in Python programmierte Regulation Kernels, welche frei gewählt werden können.