Files
Дмитрий Соловьев d48ddd2657 Init
2026-05-25 14:23:52 +03:00

79 lines
2.0 KiB
Markdown

# Spacecraft Planning Service
Сервис планирования наблюдений космических аппаратов.
Сервис получает данные о доступных пунктах наблюдения и окнах наблюдения,
строит непрерывную цепочку планов для каждого космического аппарата
и отправляет уведомления перед началом каждого плана.
---
# Основные возможности
Сервис выполняет следующие функции:
- хранит планы космических аппаратов
- строит непрерывную цепочку планов
- принимает обновления пунктов наблюдения
- пересчитывает планы при обновлении данных
- отправляет Kafka уведомления перед началом плана
- предоставляет REST API для чтения планов
---
# Основные сущности
## Plan
План космического аппарата.
Содержит:
- spacecraftId
- startTime
- endTime
- insertionPointId
---
## SpacecraftPoints
Набор входных данных по одному космическому аппарату.
Содержит:
- spacecraftId
- список пунктов наблюдения
---
## InsertionPoint
Пункт закладки.
Содержит:
- pointId
- список окон наблюдения
---
## ObservationWindow
Окно наблюдения космического аппарата.
Содержит:
- startTime
- endTime
- elevationAngle
---
# Алгоритм построения планов
Алгоритм MVP:
1. Все `observationWindow.startTime` считаются кандидатами на старт плана.
2. Для текущего старта ищется следующий старт: