Симулятор «мир БВС» — второй сервис рядом с планировщиком geoscan
M1-снимок. Синтетический 3D-мир с привязкой к WGS84 (телеметрия lon/lat, локальная ENU для физики),
фикстуры ≤ нескольких км, headless-прогон планов планировщика, журнал, HTTP-стенд и пакетный прогон
sim batch. Борта парка Геоскан (201 / 801 / Gemini) исполняют полётное задание планировщика под ветром,
температурой, отказами связи и частью бортовых ограничений. Реальные геоданные (GLO-30, WorldCover,
OSM) в поставке нет — см. LIMITATIONS.md. На выходе — факт прогона (в пределах
реализованных метрик): длительность sortie по плану, доля площади, снятая кадрами (сухая геометрия),
нарушения клиренса, события потери связи. Снос парашюта в отчёт прогона не попадает (только эталон
V-10 в sim validate — см. LIMITATIONS.md).
Зачем. План планировщика арифметически корректен, но проверить его сегодня можно только
вылетом, а вылет необратим. Симулятор превращает проверку гипотезы «полетит ли этот план» в
операцию, которая стоит секунды на один sim run. Массовый прогон сценариев — sim batch
(CSV/JSON-сводка); его границы описаны в LIMITATIONS.md.
Чем он не является. Он не планирует маршруты, не считает метрики качества плана вместо
валидатора, не управляет реальными бортами и не сверялся с реальным полётом. Достоверность доказана
до уровня V5 из шести — реальной телеметрии не существует.
Основной сервис (планировщик, задача 5 ЛЦТ) — ../docs/task5/.
Направление зависимости строго одностороннее: симулятор читает выход планировщика; планировщик о
симуляторе не знает и сдаётся без него.
Карта документов
| Документ |
Зачем |
| docs/91-doc/README.md |
Собранная продуктовая документация симулятора (бизнес, сценарии, архитектура, эксплуатация) |
| LIMITATIONS.md |
Шестой артефакт ТЗ: честный перечень того, что не поддержано, с SIM-ID и доказательствами |
90-final — свод (читать отсюда)
| Документ |
Зачем открывать |
| 01-business-requirements.md |
Головной документ. Резюме на страницу, объём продукта, уровни M0/M1/M2, 25 требований верхнего уровня, раздел достоверности, критерии приёмки числами, перечень известных ограничений (п. 5 ТЗ), соответствие ТЗ и таблица «замечание ревью → что сделано» |
02-requirements-registry.md (docs/90-final/02-requirements-registry.md) |
Единый реестр 338 требований со статусом после ревью, уровнем зрелости и критерием приёмки. Плюс приложения: 20 наследуемых ограничений INH и 18 поглощённых SIM-01…18 |
03-next-steps.md (docs/90-final/03-next-steps.md) |
Что делать дальше: 6 шагов от спайков до сдаваемого M1, критерий готовности каждого, оценки в агенто-заходах и итерациях ревью, порядок отсечения при нехватке времени |
| Документ |
Зачем открывать |
01-context-digest.md (docs/00-brief/01-context-digest.md) |
Что симулятор наследует от планировщика: 20 ограничений INH, ТТХ парка, контракт полётного задания, 17 дыр, которые расчётом не закрываются, 12 расхождений между источниками |
| 02-vision-and-business.md |
Продуктовый домен: 12 проблем P-01…P-12 с ценой ошибки в числах, роли, 12 сценариев U-01…U-12, границы, пирамида достоверности V1…V6, мутационный контроль |
03-primary-sources-digest.md (docs/00-brief/03-primary-sources-digest.md) |
Дайджест первоисточников: что именно сказано в РЭ Геоскан 201, спецификациях 801 и Gemini, руководстве Mission Planner, и где они расходятся с дистиллятом |
| Документ |
Зачем открывать |
| 01-geodata-sources.md |
Исследование 30+ источников рельефа с лицензиями, точностями и ценами; почему Google 3D Tiles заблокированы трижды; пирамида приоритета высот; три высоты и цена их путаницы; 24 требования SIM-GEO |
| 02-world-model-requirements.md |
Слои мира, ENU через ECEF вместо UTM (с числами: 84 м на 210 км, провал 785 м на 100 км), зоны, препятствия со связными пролётами ЛЭП, LOS с зоной Френеля, детерминизм сборки; 38 требований SIM-WORLD |
20-fleet (docs/20-fleet/) — борт
| Документ |
Зачем открывать |
01-uav-model-requirements.md (docs/20-fleet/01-uav-model-requirements.md) |
Почему L1, а не L3 (в РЭ нет ни поляры, ни крена), фазы полёта как автомат, энергомодель по двум якорным точкам, автопилот-эмулятор, деградации по кодам РЭ, 14 эталонных кейсов V-1…V-14; 40 требований SIM-UAV |
30-sensors (docs/30-sensors/) — камера
| Документ |
Зачем открывать |
01-camera-and-imagery.md (docs/30-sensors/01-camera-and-imagery.md) |
Геометрия камер из payloads.yaml, три режима получения кадра, контракт кадра с сайдкаром, расчёт объёма (5000 кадров ≈ 100 ГБ на вылет 201) и находка про мультиспектр; 32 требования SIM-CAM |
40-environment (docs/40-environment/) — среда
| Документ |
Зачем открывать |
01-weather-and-failures.md (docs/40-environment/01-weather-and-failures.md) |
Ветер полем, а не скаляром; переформулировка «эмуляции молнии» в грозовую обстановку; четыре канала связи; предикат «продолжать возможно» P1–P6; каталог сценариев W-01…W-24; 40 требований SIM-ENV |
50-mission (docs/50-mission/) — миссия
| Документ |
Зачем открывать |
01-mission-execution.md (docs/50-mission/01-mission-execution.md) |
Вход как комплект, а не файл; створ вместо круга на галсах; единые часы и детерминизм; журнал прогона как контракт; отчёт «план против факта» с разложением дельты; 40 требований SIM-MIS |
| Документ |
Зачем открывать |
01-api-and-nfr.md (docs/60-platform/01-api-and-nfr.md) |
8 операций REST, развилка «физика на клиенте или на сервере» с решением, модель данных, НФТ с расчётами, паспорт прогона, наблюдаемость; 36 требований SIM-PLT |
70-ux (docs/70-ux/) — интерфейс
| Документ |
Зачем открывать |
01-frontend-3d-requirements.md (docs/70-ux/01-frontend-3d-requirements.md) |
7 экранов, экран прогона детально, таблица «данные → зачем → как читается» для 3D, правило «5 секунд», развилка карта- против сцено-ориентированного стека; 34 требования SIM-UX |
80-review (docs/80-review/) — ревью
| Документ |
Зачем открывать |
01-business-review.md (docs/80-review/01-business-review.md) |
Бизнес и ценность: у кого есть настоящая работа, измеримость критериев, что резать первым |
02-tech-review.md (docs/80-review/02-tech-review.md) |
Техническая состоятельность: 5 пар взаимоисключающих MUST, пересчёт всей арифметики против первоисточников |
03-completeness-and-risks.md (docs/80-review/03-completeness-and-risks.md) |
Чего в наборе нет вообще: 14 отсутствующих доменов, 9 противоречий, 12 рисков, ранжирование вопросов заказчику |
Если читать один документ
| Вопрос |
Куда |
| Что это и зачем, в одну страницу |
90-final/01, §1 |
| Что входит в сдачу 29.09, а что нет |
90-final/01, §5 |
| С чего начинать код |
90-final/03-next-steps.md (docs/90-final/03-next-steps.md) |
| Почему числам симулятора можно верить |
90-final/01, §7 |
| Чего симулятор не умеет (факт поставки, с доказательствами) |
LIMITATIONS.md |
| Целевая модель и допущения BRD (не равно факту кода; GLO-30 там — проектно) |
90-final/01, §11 |
| Где искать конкретное требование по ID |
90-final/02-requirements-registry.md (docs/90-final/02-requirements-registry.md) |
| Артефакты сдачи п. 5 ТЗ (6 документов) |
92-api/03-architecture.md (docs/92-api/03-architecture.md) … 05-quickstart.md (docs/92-api/05-quickstart.md), 01-http-api.md, 02-user-guide.md (docs/92-api/02-user-guide.md), LIMITATIONS.md |
| Откуда берётся рельеф и почему не Google |
10-world/01-geodata-sources.md |
| Что спросить у заказчика в первую очередь |
90-final/01, §10 |
Двенадцать фактов, которые определяют решение
Только то, что следует из проработки, с числами и источниками.
- Клиренс 100 м — жёсткое требование РЭ-201, а перепад рельефа 50 м на обычном полигоне 5×5 км
превращает задание «100 м AGL», поданное как AMSL, в фактические 50 м. Там же GSD PF1B уезжает с
1,96 до 0,98 см — полоса захвата сужается вдвое, и в покрытии появляется дыра, которой
планировщик не видит. Это самая дорогая ошибка домена, и она ловится только прогоном.
- Радиус разворота 201 — 137 м (
R = V²/(g·tanφ) при 27,8 м/с и крене 30°), диаметр 273 м
против шага галсов 41–123 м. Отсюда обязательность «петли» с выходом на ЛЗП. При крене 20°
радиус 216 м, при 45° — 79 м: разброс ×2,7, и это самое дорогое допущение проекта (крена в РЭ нет).
- У 201 радиодальность 40 км при маршруте 210 км — уход за пределы телеметрии штатен, а не
аварийная ситуация. Потеря связи не прерывает задание: возврат начинается только по таймеру
«Время автономного полёта», числа которого в РЭ нет вообще.
- Круг радиуса R — заведомо неверная модель связи. На гряде высотой 80 м между НСУ и полигоном
связь рвётся на 12 км вместо 40. Интерфейс обязан рисовать фактическую LOS-изолинию, а не круг.
- Прогноз ветра 7,2 м/с на 10 м — это уже отказ мультироторам. По степенному закону
(α = 0,143) на 100 м получается 10,0 м/с, а
wind_max у 801 и Gemini — ровно 10. Скаляр из схемы
планировщика систематически недооценивает ветер на высоте съёмки.
- У Gemini 40 мин полёта против 105 мин заряда (2,6 : 1), и зарядное устройство работает
0…+40 °C при полёте до −15 °C: летать можно, заряжать нельзя. Любой план длиннее одного вылета
упирается не в энергию, а в очередь на ЗУ.
- Рабочая СК — локальная ENU через ECEF, а не UTM. Масштаб UTM отклоняется до 4·10⁻⁴ → 84 м на
маршруте 210 км и 0,08 % по площади при допуске теста ±0,1 %; плоская аппроксимация даёт провал
785 м на 100 км. UTM остаётся только форматом хранения и обмена.
- GLO-30 даёт 4 м LE90 против допуска клиренса 100 м — это 4 %. Клиренс обязан возвращаться
интервалом
значение ± LE90, но нарушение ставится по центральному значению: иначе каждый
корректный план, летящий на минимальных 100 м AGL, перманентно красный.
- Мультиспектр на 22 км² не влезает в один вылет 201. Шаг галсов Pollux на 100 м — 15,5 м
против 95,4 м у RX1RM2; суммарная длина галсов ≈ 1420 км при максимальной дальности 210 км.
Паспортные «7–22 км² за вылет», видимо, калиброваны под RGB-профиль.
- Слов «дождь», «снег», «туман», «обледенение», «молния», «гроза» в РЭ-201 нет ни разу.
Жёстко задано ровно два метеоограничения: ветер (12 / 10 / 10 м/с) и температура
(−20…+40 °C, «Арктика» −40…+20). Всё остальное — назначенные пороги, и они не могут быть
основанием для вердикта.
- Достоверность доказуема максимум до V5. Реальной телеметрии полётов не существует, поэтому
честная формулировка одна: «сверено с руководством по эксплуатации и с независимой геометрией;
с реальным полётом не сверялось». Соответственно вердикт приёмки плана — трёхзначный
(
NO-GO / UNRESOLVED / NO-FINDINGS), а не бинарный GO.
- 338 требований на 14 дней не сходятся ни в какой продукт. После расстановки уровней в сдачу
входят 224 требования (M0 — 67, M1 — 157), из них 220 MUST; 111 требований отнесены к M2 и
официально не блокируют сдачу, и MUST среди них нет ни одного. Реальный измеритель объёма —
не требования, а 52 агенто-захода и ≈130 с итерациями при 20–25 часах ревью. Правило,
действующее всё время: симулятор не блокирует сдачу планировщика.
Собрано 15.09.2026. Первоисточники: hackathon/5. Геоскан.html (ТЗ), files/Geoscan_201_Manual.pdf
(РЭ, 117 стр.), files/Gemini_Specs_EN_RUS.pdf, files/Geoscan_801.pdf,
hackathon/AQ2LRTfTZvQcyhtEMPPh.html (Mission Planner RU). Машиночитаемые ТТХ:
docs/task5/10-hardware/fleet.yaml, payloads.yaml — единственный источник правды.