
Фреймворк управления миссиями на Java с конфигурацией YAML, поддерживающий телеметрию, команды и симуляцию для операций космических аппаратов. Включает эксплойт-модуль CVE-2023-45277.
Yamcs — это платформа управления полетами, разработанная на Java. Она использует открытую архитектуру, позволяющую настраивать ее функциональность с помощью YAML-конфигураций. Вы также можете расширить стандартный набор функций, написав собственные классы Java.
Чтобы начать разработку собственного приложения Yamcs, следуйте нашему руководству Начало работы.
Yamcs распространяется под лицензией Affero GPLv3.
По вопросам коммерческого лицензирования обращайтесь в Space Applications Services, описав ваш сценарий использования.
Для работы с основными компонентами Yamcs вам понадобятся JDK11, Maven и npm.
Сборка Java JAR-файлов:
mvn clean install -DskipTests
Сборка веб-интерфейса:
cd yamcs-web/src/main/webapp
npm install
npm run build
cd -
Эти команды создадут оптимизированную производственную версию веб-интерфейса. Процесс займет несколько минут. Для более быстрой инкрементальной сборки используйте режим наблюдения (npm run watch).
Для демонстрационных и разработческих целей мы используем интегрированную среду симуляции, которая задействует множество функций Yamcs. В этой симуляции Yamcs получает телеметрию (TM) от простого симулятора посадочного космического аппарата. Yamcs также может отправлять основные команды (TC). Симулятор запускается вместе с Yamcs как подпроцесс.
./run-example.sh simulation
Эта конфигурация сохраняет данные в /storage/yamcs-data. Убедитесь, что эта папка существует и вы имеете права на запись в нее.
После успешного запуска Yamcs вы можете открыть встроенный веб-интерфейс, перейдя по адресу http://localhost:8090.
Примечание для пользователей Windows: В этом репозитории используются относительные символические ссылки. Для их поддержки в Windows:
mklink без прав администратора).git config --global core.symlinks truegit status, чтобы узнать, как преобразовать символические ссылки.Хотя Yamcs управляется и разрабатывается компанией Space Applications Services, мы также рассматриваем pull-реквесты от других участников. Для нетривиальных изменений мы просим вас подписать наше Соглашение о вкладе.