
Java-basiertes Missionskontroll-Framework mit YAML-Konfiguration, das Telemetrie, Kommandierung und Simulation für Raumfahrzeugoperationen unterstützt. Enthält das Exploit-Modul für CVE-2023-45277.
Yamcs ist ein in Java entwickeltes Missionskontroll-Framework. Es verwendet eine offene Architektur, die es ermöglicht, seinen Funktionsumfang mithilfe von YAML-Konfigurationsdateien anzupassen. Sie können den Standard-Funktionsumfang auch durch das Schreiben eigener Java-Klassen erweitern.
Um mit der Entwicklung Ihrer eigenen Yamcs-Anwendung zu beginnen, folgen Sie unserem Erste-Schritte-Leitfaden.
Yamcs ist unter Affero GPLv3 lizenziert.
Für kommerzielle Lizenzen wenden Sie sich bitte mit Ihrem Anwendungsfall an Space Applications Services.
Um an den Kernkomponenten von Yamcs zu arbeiten, benötigen Sie JDK11, Maven und npm.
Java-Jars bauen:
mvn clean install -DskipTests
Web-Oberfläche bauen:
cd yamcs-web/src/main/webapp
npm install
npm run build
cd -
Diese Befehle erzeugen eine optimierte Produktionsversion der Weboberfläche. Dieser Vorgang dauert einige Minuten. Für schnellere inkrementelle Builds führen Sie den Watch-Modus aus (npm run watch).
Für Demo- und Entwicklungszwecke arbeiten wir mit einer All-in-One-Simulationsumgebung, die viele Yamcs-Funktionen nutzt. In dieser Simulation empfängt Yamcs TM von einem einfachen Simulator eines landenden Raumfahrzeugs. Yamcs kann auch einige grundlegende TC senden. Der Simulator startet zusammen mit Yamcs als Subprozess.
./run-example.sh simulation
Diese Konfiguration speichert Daten unter /storage/yamcs-data. Stellen Sie sicher, dass dieser Ordner existiert und Sie darauf schreiben können.
Wenn Yamcs erfolgreich gestartet ist, können Sie die integrierte Weboberfläche aufrufen, indem Sie zu http://localhost:8090 navigieren.
Hinweis für Windows-Benutzer: Dieses Repository verwendet einige relative symbolische Verknüpfungen. Um dies unter Windows zu unterstützen:
mklink ohne Administratorrechte).git config --global core.symlinks truegit status, wie Sie die Symlinks konvertieren können.Während Yamcs von Space Applications Services verwaltet und entwickelt wird, berücksichtigen wir auch Pull Requests anderer Mitwirkender. Für nicht-triviale Patches bitten wir Sie, unsere CLA zu unterzeichnen.