Система мониторинга температуры и влажности в складских помещениях

Решение предназначено для складских помещений, где хранится продукция, чувствительная к изменениям температуры и влажности. Данные с датчиков передаются на мобильное приложение пользователей в режиме реального времени. При выходе того или иного показателя за допустимые пределы на телефон приходит соответствующее уведомление.
Многие виды товаров чувствительны к условиям хранения – в частности, к температуре и влажности в помещении. К таковым относятся пищевые продукты, лекарства, косметика, некоторые промышленные материалы, батареи и различная электроника, музыкальные инструменты и многое другое. При неправильном хранении у таких товаров сокращается срок годности, снижается качество, а некоторые могут даже стать опасными – химикаты, лекарства, консервы, газовые баллоны.

Чтобы избежать порчи товаров, владельцам складов необходимо поддерживать в них оптимальные условия хранения и получать информацию о различных параметрах в помещении с минимальной задержкой. В этом могут помочь современные системы Интернета вещей.

Запрос

В КЕДР Solutions обратился представитель компании, занимающейся сельским хозяйством, с просьбой разработать простое и экономичное решение для мониторинга температуры и влажности в складских помещениях. Система должна собирать данные с датчиков, устанавливаемых на складе, и в режиме реального времени передавать информацию на мобильное приложение. В случае нарушения температурного режима или уровня влажности система должна сигнализировать о проблеме.

Решение

Команда спроектировала систему Интернета вещей, которая считывает показатели с датчиков ZigBee и через хаб отправляет их на облачный сервер. Там данные обрабатываются и передаются на мобильное приложение. Последнее не только выводит информацию для пользователей, но и позволяет подключать устройства к системе и отключать их.
Архитектура системы мониторинга температуры и влажности на складах, разработанной командой КЕДР Solutions.

Датчики температуры и влажности

В качестве датчиков в данном проекте было решено использовать готовые устройства с поддержкой ZigBee. Их диапазон измерений температуры составляет от -40℃ до +70℃, а диапазон измерения влажности – от 0 до 99,9%. Устройства могут питаться как от литий-ионных батарей, так и от внешнего источника питания.

Центральный шлюз

Для передачи данных с датчиков на облачный сервер команде требовалось разработать центральный шлюз (хаб). Поскольку заказчик намеревался использовать систему для собственных нужд и хотел максимально сократить расходы на разработку, мы предложили использовать в качестве хаба одноплатные компьютеры Raspberry Pi 3 и 4. Вычислительной мощности этих устройств более чем достаточно даже с учетом запланированного на будущее расширения функционала системы.

Устройство собирает данные с подключенных к нему датчиков и отправляет их на облачный сервер по протоколу HTTPS. При включении хаб переходит в режим сопряжения, что позволяет мобильному приложению подключиться к нему по BLE и настроить на нем доступ в интернет. Затем хаб автоматически привязывается к аккаунту пользователя в облаке, таким образом подключаясь к системе.

Разработка облачного приложения

Для обработки поступающих на сервер данных и настройки системы команда разработала облачное приложение. Оно выполняет несколько функций.

Во-первых, приложение позволяет устанавливать минимально и максимально допустимые значения температуры и влажности. Если показатели любого датчика выходят за пределы установленного диапазона, приложение отправляет на мобильное приложение пользователя уведомление с наименованием склада, на котором сработал датчик, и идентификатором самого датчика.

Во-вторых, программа позволяет мониторить уровень заряда батарей на всех устройствах системы. Когда заряд опускается ниже установленного пользователем уровня, на мобильное приложение приходит уведомление. Если температурный режим на складе не позволяет использовать батареи и устройства питаются от сети, такие показатели не отображаются, а уведомления не приходят.

В-третьих, приложение собирает статистику и позволяет просматривать динамику средней температуры и влажности за определенные периоды времени в виде графиков.

Наконец, облачное приложение позволяет к каждому датчику прописать комментарий с указанием дополнительной информации, в частности, о его местоположении на складе, модели и т.п. Просмотреть эту информацию можно в мобильном приложении, в том числе при получении уведомлений (кнопка “Подробнее”).

Разработка мобильного приложения

Для вывода информации мы создали кроссплатформенное мобильное приложение, поддерживающее Android и iOS.

Программа позволяет подключать и отключать датчики. Для этого нужно перевести датчик в режим сопряжения и через приложение отсканировать QR-код на устройстве. Далее данные передаются на хаб, и тот подключает соответствующий датчик к сети.

На главном экране пользователь видит список всех подключенных складов – если в системе зарегистрировано несколько помещений – и их средние показатели температуры и влажности в режиме реального времени. Можно также зайти в меню каждого склада и увидеть соответствующие показатели от всех датчиков в помещении, установленные диапазоны значений, а также уровень заряда аккумуляторов.
Экран мобильного приложения со списком подключенных к системе мониторинга датчиков.
Когда измерения датчиков выходят за установленные пределы, на приложение приходят соответствующие уведомления.
Экран мобильного приложения Интернета вещей с уведомлением о превышении допустимой температуры в помещении.
Экран мобильного приложения Интернета вещей с уведомлением о низком заряде батареи у датчика.
Наконец, в приложении можно просматривать актуальную статистику в виде графиков.

Выполненные работы

  • Программирование центрального шлюза
  • Разработка облачного приложения
  • Разработка кроссплатформенного мобильного приложения
  • Настройка сервера

Использованные технологии

  • В качестве центрального шлюза использован Raspberry Pi 3/4.
  • ПО для шлюза написано на C++.
  • Облачное приложение создано на Java и Go с помощью фреймворка Jmix.
  • Мобильное приложение разработано на языке С++ с помощью фреймворка Qt.
  • Настроили VPS-сервер на МТС Cloud.

Итоги

Разработанное командой КЕДР Solutions решение состоит из датчиков для измерения температуры и влажности, центрального шлюза, а также облачного приложения для настройки системы и мобильного приложения, куда данные выводятся в режиме реального времени. Система позволяет мониторить показатели и получать автоматические уведомления, если они выходят за установленные диапазоны значений.

Аналогичные системы мониторинга температуры и влажности могут использоваться не только в сельском хозяйстве, но и на любых предприятиях, продукция которых требует поддержания определенного температурного режима и уровня влажности.

В будущем заказчик планирует расширить функционал системы, чтобы она позволяла автоматически (с помощью задаваемых сценариев) или вручную (при помощи приложения) управлять подсистемами климат-контроля на складе.

Наша разработка позволила:
  • Минимизировать риск порчи и утери продукции из-за несоблюдения условий хранения и тем самым снизить потери урожая на 30-40%, по результатам испытаний.
  • Повысить качество продукции за счет поддержания оптимальных климатических условий.
  • Получать оперативные уведомления в случае отклонений от заданных параметров, что позволяет быстро реагировать на возникающие проблемы.
Бюджет проекта:
13 000 000 руб.
Срок проекта:
5 месяцев