Инструкция по самостоятельной сборке и подключению датчиков к AirMQ

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

Перечень компонентов

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

Платы контроллера семейства ESP8266

NodeMCU ESP8266 (v3)
AliexpressBangood
Wemos D1 Mini
AliexpressBangood

Датчики пыли

PMS5003
AliexpressBangood
PMS7003 
AliexpressBangood
SDS011
AliexpressBangood

Датчики погоды (температура/влажность/давление)

BME280

(температура, влажность, давление)
AliexpressBangood
HTU21/Si7021

(температура, влажность)
AliexpressBangood
SHT30

(температура, влажность)
AliexpressBangood

Другие датчики и модули

DS1820

(температура)
AliexpressБелЧип
DHT12/22 

(температура, влажность)
AliexpressБелЧип
MH-Z19

(CO2)
AliexpressBangood
CCS811/HDC1080

(eCO2, VOC, температура, влажность)
AliexpressBangood
SenseAir S8

(CO2)
Aliexpress
SSD-1306

OLED-экран
AliexpressБелЧип
WS2812 (NeoPixel)

Светодиод RGB 
AliexpressБелЧип

Шнур 40PIN

Белчип

Соединение и подключение

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

Схема подключения к плате NodeMCUСхема подключения к плате Wemos D1 Mini

Открыть во весь экран

Открыть на весь экран

Для питания собранной схемы можно использовать стандартное зарядное устройство от большинства мобильных телефонов и кабель с разъемом microUSB.

Настройка и программирование

Для подключения к платформе AirMQ необходимо загрузить в модуль прошивку на базе открытого проекта ESPEasy. В приложенном ниже архиве содержится готовый двоичный образ, включающий в себя драйверы всех сенсоров, поддерживаемых системой. После загрузки прошивки устройство можно сконфигурировать и зарегистрировать при помощи мобильного приложения AirMQ.

Процедура настройки:

1. Скачайте архив с программой для первоначальной прошивки модуля и файлами прошивки Flasher.zip на локальный компьютер  (Windows 32/64). Распакуйте файлы из архива на диск компьютера.

2. Подключите модуль NodeMCU или Wemos к компьютеру при помощи кабеля USB. На этом этапе датчик пыли должен быть отсоединен.

3. Запустите файл ESP.Easy.Flasher.exe

Убедитесь, что программа обнаружила СОМ-порт модуля 

4. Выберите из списка Firmware файл прошивки

5. Нажмите кнопку

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

6. После успешной загрузки прошивки светодиод перестанет мигать, и в окне статуса появится сообщение об успешном окончании:

7. Модуль перезагрузится и будет доступен для конфигурации при помощи мобильного приложения

Регистрация датчика

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

В дальнейшем при помощи мобильного приложения можно выполнить следующие действия:

  • сброс настроек датчика, подключение к домашней сети WiFi
  • регистрация нового датчика на карте
  • загрузка новой прошивки и обновление конфигурации

HTTP API для публикации данных сенсоров

Адрес сервера – https://api-post.airmq.cc

На текущий момент доступны две точки входа HTTP API для публикации данных сенсоров:

  • /api/v1 – для подключения устройств, использующих прошивку airrohr проекта sensor.community.

Для настройки сенсора необходимо отметить в конфигурационном интерфейсе сенсора  “Send data to custom API” в разделе “APIs”,  указать адрес (api-post.airmq.cc),  путь (/api/v1) и порт (80)

  • /api/v2 – упрощенный API для кастомных устройств

Публикация осуществляется HTTP методом POST, заголовок запроса должен содержать поле ‘Content-Type: application/json’. Тело запроса должно содержать JSON объект следующего формата:

{
  "deviceId": "57:1F:D2:52:FE:79",
  "PM1": 5,
  "PM25": 8.3,
  "PM10": 10.1,
  "Temp": 4.75,
  "Hum": 64.51,
  "Press": 989.44
}

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

Поддерживаемые метрики:  

  • PM1 – измеренное значение частиц PM1, мкГ/м3
  • PM25 – измеренное значение частиц PM2.5, мкГ/м3
  • PM10 – измеренное значение частиц PM10, мкГ/м3
  • Temp – измеренное значение температуры, °С
  • Hum – измеренное значение влажности, %
  • Press – измеренное значение атмосферного давления, гПа
  • Count – измеренное значение фоновой радиоактивности, имп/мин
  • redRg – измеренное значение фоновой радиоактивности, мкР/ч

FAQ – ЧаВо