2.9 KiB
2.9 KiB
Проект: Карта шумового загрязнения FR24
Общее
- Старт: 22 марта 2026, последнее обновление: 27 марта 2026
- URL: https://openclaw.mva154.duckdns.org/noisemap/
- Расположение:
tasks/flightradar24/prototype/ - Стек: Flask + OpenLayers 10 + Turf.js (Canvas2D, без WebGL) + flask-compress (gzip)
Данные
- 258 рейсов / 50 282 точки (4 аэропорта SVO/DME/VKO/ZIA, только 20–21.03.2026)
- FR24 кредиты: ЗАКОНЧИЛИСЬ 27.03.2026 (402 при попытке загрузить 26 марта)
- FR24 ключи:
FLIGHTRADAR24_API_KEYв~/.openclaw/.env(перенесено из prototype/.env 01.04.2026) - Яндекс.Расписания: ключ
788c6840-..., код SVO:s9600213
Важные особенности API
- bounds FR24 API =
lat_max,lat_min,lon_min,lon_max flight-tracksне поддерживает фильтр по времени
Реализовано (статус 27.03.2026)
- ✅ Слой "Плотность пролётов" —
density_model.py+/api/density+ Vector layer (Canvas2D) - ✅ Метрика рейсов/час (count / num_hours), макс. 1.46/ч над SVO
- ✅ Радиусы влияния: H<1800м→2км, H<5000м→4км, H<7000м→7км, H≥7000м→не считать
- ✅ Кэш плотности по ключу date_from_date_to (gzip ~220KB), пересчёт по ?refresh=1
- ✅ Все рейсы загружаются в память при старте, фильтрация на клиенте (мгновенно)
- ✅ Кастомный ползунок по дням: точки, drag, кнопка сброса ✕
- ✅ Легенда плотности: градиент 0/ч → 2/ч → 4+/ч
- ✅ Попап при клике: рейс./ч + всего пролётов + мин. высота
- ✅
/api/dates,/api/density?date_from&date_to - ✅
fetch_tablo.py— загрузка табло через Яндекс.Расписания
Бэклог
- Пополнить кредиты FR24 → загрузить 26 марта и другие дни
- RTL-SDR Blog V4 — отказ от FR24, приём ADS-B напрямую (1090 МГц): RTL-SDR → dump1090/readsb → JSON → сервер → noisemap
- Модель шума v2: группы ВС (тяжёлый/средний/лёгкий), NPD-кривые OpenANP
- Ночной штраф Lden в модели шума
- Оптимизация расчёта плотности (~13сек → цель <5сек)
- Экспорт зон в GeoJSON/KML
Ограничения текущего подхода
- 32% охват рейсов, ночные рейсы без ADS-B не находятся
Девлог
tasks/flightradar24/prototype/docs/DEVLOG.md