Метеорологический дата-комплекс
Бортовой метеорологический комплекс для самолётов и дронов на ESP32: датчики давления, GPS, акселерометр, передача по GSM с буферизацией. Веб-приложение с картой маршрута полёта.
О проекте
Фриланс-заказ: разработать бортовой метеорологический комплекс для самолётов и дронов. Устройство должно в реальном времени собирать данные с датчиков, передавать их на сервер по GSM, а при отсутствии связи — буферизировать и отправлять при первой возможности. Веб-приложение — визуализация маршрута полёта и просмотр показаний.
Железо
Основа устройства — микроконтроллер ESP32 (NodeMCU), к которому подключены:
| Датчик | Что измеряет |
|---|---|
| GY-9250 (MPU-9250) | Акселерометр, гироскоп, магнитометр — 9-осевое отслеживание движения |
| GY-GPS6MV2 | GPS: координаты, высота, скорость, курс |
| MS5611 | Барометрическое давление и высота |
| Датчик динамического давления | Скорость воздушного потока |
| GPRS Shield | Передача данных на сервер по GSM |
Устройство прошло путь от макетной платы до собранного корпуса:



Передача данных
Устройство отправляет пакеты данных на сервер через API по GSM. Если связь пропадает (что в воздухе случается) — данные пишутся в буфер на борту и автоматически догружаются при восстановлении соединения. Потери данных нет.
Пример отладочного вывода GPS в процессе разработки:
.png)
.png)
Сервер и база данных
На сервере — REST API, принимающее пакеты с устройства и записывающее их в базу данных. Структура БД проектировалась под хранение временных рядов телеметрии с привязкой к полётной сессии:


Веб-приложение
Фронтенд — карта маршрута полёта по геометкам, собранным устройством. В процессе разработки маркеры были крупными точками, в финальной версии уменьшили, соединили линиями — стало похоже на Flightradar.
.png)
На карте можно выбрать любую точку маршрута и посмотреть показания всех датчиков в этот момент: давление, температуру, скорость потока, высоту, ускорение.
Моя роль
Аналитика, архитектура всего решения, бэкенд, фронтенд, API для обмена с устройством. Электрическую схему и пайку делали вместе с напарником — он помог с выбором компонентов и построением цепи, код для устройства тоже писали вместе.