Клиенту требовалось разработать аппаратно-программный комплекс для автоматизированного сбора, обработки и удалённого мониторинга метеорологических данных.
Центральная плата должна была поддерживать подключение нескольких типов метеорологических датчиков по независимым линиям RS-485, опрашивать оборудование разных производителей и объединять полученные измерения в единый поток данных. Особое внимание требовалось уделить надёжной непрерывной работе, сохранению настроек и возможности дальнейшего расширения системы.
Для передачи данных предусматривались два беспроводных канала: LTE-модем SIMCom SIM7500E-L1C для связи с удалённым сервером через мобильную сеть и радиомодуль LoRa на базе SX1262 для дальней связи. LTE- и LoRa-модули выполнены в виде отдельных мезонинных плат, что упрощает настройку, обслуживание и модернизацию устройства.
Также требовалось обеспечить обслуживание метеостанции без использования программатора. Для версий контроллера на STM32F405 и STM32H743 были предусмотрены загрузчики с обновлением основной прошивки через USB-накопитель и по BLE, с проверкой целостности загружаемых данных.
Для локальной настройки и обновления была необходима Android-утилита, взаимодействующая с платой по BLE. Для удалённого мониторинга — метеосервер на Python, принимающий данные от станции, сохраняющий измерения и предоставляющий веб-интерфейс для просмотра состояния оборудования, текущих показаний, истории и диагностической информации.
Итоговая цель проекта — создать масштабируемую и обслуживаемую платформу метеостанции, которую можно удалённо контролировать, обновлять и адаптировать под различные комплекты датчиков и каналы передачи данных.
Название проекта:
Модульная метеостанция на STM32 с LTE, LoRa, BLE и USB-обновлением
Описание:
Клиенту требовалось разработать аппаратно-программный комплекс для автоматизированного сбора, обработки и удалённого мониторинга метеорологических данных.
Центральная плата должна была поддерживать подключение нескольких типов метеорологических датчиков по независимым линиям RS-485, опрашивать оборудование разных производителей и объединять полученные измерения в единый поток данных. Особое внимание требовалось уделить надёжной непрерывной работе, сохранению настроек и возможности дальнейшего расширения системы.
Для передачи данных предусматривались два беспроводных канала: LTE-модем SIMCom SIM7500E-L1C для связи с удалённым сервером через мобильную сеть и радиомодуль LoRa на базе SX1262 для дальней связи. LTE- и LoRa-модули выполнены в виде отдельных мезонинных плат, что упрощает настройку, обслуживание и модернизацию устройства.
Также требовалось обеспечить обслуживание метеостанции без использования программатора. Для версий контроллера на STM32F405 и STM32H743 были предусмотрены загрузчики с обновлением основной прошивки через USB-накопитель и по BLE, с проверкой целостности загружаемых данных.
Для локальной настройки и обновления была необходима Android-утилита, взаимодействующая с платой по BLE. Для удалённого мониторинга — метеосервер на Python, принимающий данные от станции, сохраняющий измерения и предоставляющий веб-интерфейс для просмотра состояния оборудования, текущих показаний, истории и диагностической информации.
Итоговая цель проекта — создать масштабируемую и обслуживаемую платформу метеостанции, которую можно удалённо контролировать, обновлять и адаптировать под различные комплекты датчиков и каналы передачи данных.
В результате был создан и успешно запущен полностью работоспособный аппаратно-программный комплекс метеостанции.
Изготовленная плата прошла запуск и проверку всех основных узлов. Стабильно работают подключение и опрос метеорологических датчиков по нескольким каналам RS-485, обработка и сохранение измерений, передача данных через LTE-модем SIMCom SIM7500E-L1C и радиоканал LoRa на базе SX1262.
Реализованы и проверены обновление основной прошивки с USB-накопителя и беспроводное обновление по BLE. Android-приложение подключается к метеостанции, позволяет управлять устройством, выполнять диагностику и загружать новую прошивку без программатора и разборки оборудования.
Метеосервер на Python принимает поступающие от станции данные, сохраняет историю измерений и предоставляет доступ к текущим показаниям и состоянию оборудования через веб-интерфейс. Проверена совместная работа платы, встроенного программного обеспечения, мобильного приложения и серверной части.
Разработанное решение может использоваться как основа для стационарных и удалённых метеорологических постов. Модульная архитектура позволяет адаптировать устройство под разные наборы датчиков и применять LTE либо LoRa в зависимости от условий установки.
Все поставленные задачи были выполнены, оборудование заработало в полном объёме. Клиент принял результат, остался доволен работой и планирует приобретение дополнительных экземпляров разработанного устройства.