Init
This commit is contained in:
@@ -0,0 +1,78 @@
|
||||
# Spacecraft Planning Service
|
||||
|
||||
Сервис планирования наблюдений космических аппаратов.
|
||||
|
||||
Сервис получает данные о доступных пунктах наблюдения и окнах наблюдения,
|
||||
строит непрерывную цепочку планов для каждого космического аппарата
|
||||
и отправляет уведомления перед началом каждого плана.
|
||||
|
||||
---
|
||||
|
||||
# Основные возможности
|
||||
|
||||
Сервис выполняет следующие функции:
|
||||
|
||||
- хранит планы космических аппаратов
|
||||
- строит непрерывную цепочку планов
|
||||
- принимает обновления пунктов наблюдения
|
||||
- пересчитывает планы при обновлении данных
|
||||
- отправляет Kafka уведомления перед началом плана
|
||||
- предоставляет REST API для чтения планов
|
||||
|
||||
---
|
||||
|
||||
# Основные сущности
|
||||
|
||||
## Plan
|
||||
|
||||
План космического аппарата.
|
||||
|
||||
Содержит:
|
||||
|
||||
- spacecraftId
|
||||
- startTime
|
||||
- endTime
|
||||
- insertionPointId
|
||||
|
||||
---
|
||||
|
||||
## SpacecraftPoints
|
||||
|
||||
Набор входных данных по одному космическому аппарату.
|
||||
|
||||
Содержит:
|
||||
|
||||
- spacecraftId
|
||||
- список пунктов наблюдения
|
||||
|
||||
---
|
||||
|
||||
## InsertionPoint
|
||||
|
||||
Пункт закладки.
|
||||
|
||||
Содержит:
|
||||
|
||||
- pointId
|
||||
- список окон наблюдения
|
||||
|
||||
---
|
||||
|
||||
## ObservationWindow
|
||||
|
||||
Окно наблюдения космического аппарата.
|
||||
|
||||
Содержит:
|
||||
|
||||
- startTime
|
||||
- endTime
|
||||
- elevationAngle
|
||||
|
||||
---
|
||||
|
||||
# Алгоритм построения планов
|
||||
|
||||
Алгоритм MVP:
|
||||
|
||||
1. Все `observationWindow.startTime` считаются кандидатами на старт плана.
|
||||
2. Для текущего старта ищется следующий старт:
|
||||
Reference in New Issue
Block a user