
Yamcs est un framework de contrôle de mission développé en Java. Il utilise une architecture ouverte qui permet d'adapter ses fonctionnalités à l'aide de fichiers de configuration yaml. Vous pouvez également étendre l'ensemble des fonctionnalités par défaut en écrivant des classes Java personnalisées.
Pour commencer à développer votre propre application Yamcs, suivez notre guide Getting Started.
Yamcs est distribué sous licence Affero GPLv3.
Pour une licence commerciale, veuillez contacter Space Applications Services en précisant votre cas d'utilisation.
Pour travailler sur les composants principaux de Yamcs, vous avez besoin de JDK11, Maven et npm.
Compiler les jars Java :
mvn clean install -DskipTests
Compiler l'interface web :
cd yamcs-web/src/main/webapp
npm install
npm run build
cd -
Ces commandes produiront une version de production optimisée de l'interface web. Ce processus prendra quelques minutes. Pour des builds incrémentaux plus rapides, exécutez en mode watch (npm run watch).
Pour la démonstration et le développement, nous travaillons avec un environnement de simulation tout-en-un qui utilise de nombreuses fonctionnalités de Yamcs. Dans cette simulation, Yamcs reçoit des TM d'un simulateur simple d'engin spatial en phase d'atterrissage. Yamcs peut également envoyer quelques TC de base. Le simulateur démarre avec Yamcs en tant que sous-processus.
./run-example.sh simulation
Cette configuration stocke les données dans /storage/yamcs-data. Assurez-vous que ce dossier existe et que vous pouvez y écrire.
Lorsque Yamcs a démarré avec succès, vous pouvez consulter l'interface web intégrée en vous rendant sur http://localhost:8090.
Note pour les utilisateurs Windows : Ce dépôt utilise des liens symboliques relatifs. Pour les prendre en charge sous Windows :
mklink sans privilèges administratifs).git config --global core.symlinks truegit status vous indiquera comment convertir les liens symboliques.Bien que Yamcs soit géré et développé par Space Applications Services, nous examinons également les demandes d'extraction (pull requests) d'autres contributeurs. Pour les correctifs non triviaux, nous vous demandons de signer notre CLA.