Как добавить свой датчик на карту в IoT проекте Интернет вещей - Народный Мониторинг

Мои Датчики | Как передать показания | База знаний по датчикам | Примеры IoT решений | Как добавить веб-камеру на карту

+ Как добавить свой датчик на карту

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

1. Приобрести у партнеров проекта (или собрать самому) более удобную для Вас реализацию прибора для сбора и передачи показаний на сервер.
Примеры популярных приборов как коммерческих так и "собери сам" есть в Каталоге приборов на сайте проекта.

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

3. Авторизоваться в проекте на его сайте или в официальном приложении, указав свою электронную почту (e-mail) или номер мобильного телефона или используя соцсеть на ваш выбор.

4. В разделе сайта "Датчики" выбрать пункт "Добавить мой прибор" и ввести алфавитно-цифровой серийный номер вашего измерительного прибора для регистрации в проекте. Определить ID вашего прибора следует в инструкции к нему или к его прошивке, если таковых нет, то обратиться к поставщику. Регистрация прибора в проекте возможна только после успешной передачи показаний его датчиков на сервер и правильно указанного ID. ID прибора в проекте имеет такую же важность и уникальность, как для вас серия и номер паспорта.

5. Выбрать верный тип данных для каждого из датчиков: температура, влажность, давление и другие. Если вашего типа датчика нет в списке - укажите "числовой" и его единицу измерения в разделе Датчики \ Настройка на сайте проекта.

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

7. Выполнить привязку к карте прибора, указав полный адрес его размещения (с точностью до дома) или геокоординаты (например для дачи или будки в полях) кликнув по строке "Адрес" в разделе "Датчики". Уточнить местоположение можно переместив маркер вашего прибора на карте, кликнув "переместить" в его балуне на карте. По умолчанию сервер использует GeoIP, который увы крайне не точен особенно для мобильных операторов.

8. Если ваш датчик "уличный" и соответствует п.2.3 Правил проекта, то спустя 24 часа бесперебойной работы, Вы можете подать заявку на его публикацию "для всех", кликнув по соответствующей ссылке в строке с этим датчиком в разделе сайта Датчики \ Настройка.

9. Если ваш датчик не соответствует требованиям п.2.3 Правил проекта, но есть необходимость поделиться с кем либо его показаниями, то Вы можете предоставить доступ к нему другим участникам проекта в разделе сайта Датчики \ Настройка, кликнув по ссылке "Поделиться" в строке с этим датчиком.

+ Подключение Raspberry Pi к проекту

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

- Работа с «Народный мониторинг» на Python с Raspberry Pi / Habr
- Отправка данных о температуре с роутера TL-MR3020 и Raspberry Pi на «Народный мониторинг» / Habr
- Подключаем беспроводной дозиметр радиации к сервису «Народный мониторинг» через Raspberry PI / Habr
- История взаимодействия «чайника» и DS18B20 посредством Raspberry Pi с отправкой данных на narodmon.ru / Habr

Вопросы, замечания и дополнения - пишите на admin @ narodmon.ru

+ Подключение метеостанций Oregon к проекту

Для передачи показаний на сервер проекта также могут быть использованы метеостанции и внешние датчики фирмы Oregon.
Далее приводится пример реализации передачи показаний на narodmon.ru с метеостанции Oregon Scientific WMR88 при помощи сервиса Meteoplug или Meteobridge.

1. Роутер TP-Link TL-MR3020(или совместимый) уже должен полноценно работать с сервисом Meteoplug или Meteobridge. Т.е. уже должна быть произведена регистрация, введены данные о своей метеостанции и о всех подключенных к ней датчиках согласно инструкции на сайтах Meteoplug или Meteobridge.
В настройках Meteobridge включать модуль Meteoplug Cloud Graphing не надо.

2. Остается один раз закачать в роутер скрипт, который по расписанию, каждые 10 минут будет брать последние показания стандартных датчиков метеостанции (они накапливаются в роутере), будет формировать из них новые данные в новом формате и будет отправлять их на narodmon.ru.

3. Подключаетесь к Вашему роутеру с помощью PuTTY и выполните команды:

# Переходим в корень диска
cd /

# Скачиваем скрипт
wget http://narodmon.ru/apps/oregon-uni.sh

# Даем скрипту права на выполнение
chmod 755 oregon-uni.sh

4. Если роутер работает с сервисом Meteoplug, то надо следующие строки скопировать и вставить в командную строку и нажать Enter.

echo "0 0 * * * /etc/init.d/loggerd stop; echo -n > /tmp/run/meteohub/inetupload; /etc/init.d/loggerd start" >> /etc/crontabs/root
echo "*/10 * * * * /oregon-uni.sh" >> /etc/crontabs/root

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

5. Если роутер работает с сервисом Meteobridge, то надо следующие строки скопировать и вставить в командную строку и нажать Enter.

echo "0 0 * * * /etc/init.d/loggerd stop; /etc/init.d/loggerd start" >> /etc/crontabs/meteobridge
echo "*/10 * * * * /oregon-uni.sh" >> /etc/crontabs/meteobridge

Первая строка в полночь перезапускает программу сбора данных.
Вторая строка каждые 10 минут запускает наш скрипт.

6. Дополнительная информация о метеостанциях и датчиках фирмы Oregon:

- Flashing Meteobridge Firmware
- Arduino Weather Station (OREGON EDITION)
- Weather Station Data Logger / SourceForge
- Decoding the Oregon Scientific V2 protocol / JeeLabs
- Oregon Scientific USB Station Logger/Reader / Google Project Hosting
- Погодная станция с часами (за полчаса) / Devicter.ru
- Arduino&Oregon или погодная станция своими руками / Хабр
- Выбор цифрового термометра/метеорологической станции с беспроводным датчиком температуры для улицы и дома / Конференция iXBT
- Полная пошаговая инструкция подключения Oregon THN132N

+ Подключение приборов на базе Ардуино к проекту

Для передачи показаний датчиков могут быть использованы разработки на основе Arduino или Freeduino. Ниже приводятся ссылки на некоторые варианты реализации съема показаний датчиков и передачи их на сервер проекта согласно протоколу передачи показаний.

- Простой пример снятия температуры и отправка на narodmon.ru / ESP8266
- Метеостанция на Ардуино (OREGON EDITION)
- Мониторинг температуры в ульях на Wemos D1
- Погодная станция с часами (за полчаса) / Devicter.ru
- Отправка температуры на Народный мониторинг / Амперка.ru
- Cвязка UNO+EFcom v1.2+сайт Народный монитор / Arduino.ru
- Отправка данных по GPRS на сервис «Народный мониторинг» / JT5.ru
- Контроль влажности и температуры дома и не только DIY / Star-t-hinking
- Погода в доме: беспроводной метеодатчик из Arduino Pro Mini / MYSKU.ru
- Подключение Arduino к отечественному проекту Народного мониторинга / Student-proger.ru
- Barometric Pressure Sensor Module for Arduino или как сделать метеостанцию своими руками / MYSKU.ru
- Метеостанция на Arduino и MR3020 для народного мониторинга / cxem.net
- Подключение Arduino Pro Mini + Enc28j60 + DHT11 + DS18B20 к сервису narodmon.ru / @imarh.ru

Вопросы, замечания и дополнения - пишите на admin @ narodmon.ru

+ Подключение метеостанций Misol, WeatherSmart к проекту

Для отправки данных с метеостанции, она должна поддерживать выбор произвольного сервера для отправки данных в Weather Logger.
В разделе Weather Network \ Weather Station Settings указывается:

Remote Server: Customized
Server IP/Hostname: narodmon.ru (или narodmon.com)
Server Port: 80
Server Type: PHP
Station ID: указывается уникальный MAC(серийный номер), который следует ввести при регистрации станции в проекте.
Password: может быть оставлено пустым.

Протестировано на прошивках от Conrad 2.1.9 и 2.2.5.
Важно! Во избежание блокировок интервал передачи следует установить в 5 минут (по умолчанию 1 минута) или оплатить сокращение интервала в проекте.

Дополнительная информация:
- Прошивки Conrad
- Купить на Aliexpress
- Описание станции IpObserver

+ Подключение станции мониторинга качества воздуха к проекту

Станция разработана в Германии и собирается по инструкции от sensor.community (ранее luftdaten.info).

Компоненты станции:
- микрокомпьютер NodeMCU v3 CH340;
- датчик мелкодисперной пыли SDS011 или PMS5003;
- датчик температуры, влажности, давления BME280;
- электромонтажная коробка и трубка 6x8 мм;
- соединительные провода Dupont (мама-мама);
- плоский кабель USB-microUSB (2м или 3м);
- блок питания USB с током не менее 500 mA.

Прошивка устройства:
- Скачайте и запустите программу для прошивки процессора Flashing Tool выбрав версию для вашей ОС в разделе Assets;
- выберите из списка нужную прошивку, например latest_BME280_ru.bin который содержит русифицированную прошивку для датчика BME280;
- подключите NodeMCU к компьютеру с помощью короткого кабеля microUSB и проверьте (или укажите сами) порт подключения;
- нажмите кнопку Upload и дождитесь завершения процесса загрузки прошивки;
- отсоедините NodeMCU из порта USB и подсоедините снова для его перезагрузки.

Первичная настройка:
- с ПК или смартфона подключитесь к WiFi-сети airRohr-*******
- в браузере наберите адрес 192.168.4.1
- в веб-интерфейсе прошивки укажите настройки подключения к вашей домашней/рабочей WiFi сети;
- убедитесь, что в настройках выбраны и активны все необходимые датчики;
- в разделе APIs включаем отправку в InfluxDB:

Server(Сервер): narodmon.ru (или narodmon.com)
Path(Путь): /post
Port(Порт): 80
Пользователь и пароль: можете оставить пустыми

Нажимаем Сохранить и перезагрузить.
- для регистрации в проекте в качестве ID/MAC прибора следует ввести "esp8266-*******" где вместо ******* указывается ID прибора в настройках прошивки (сверху).

+ Подключение метеостанций AMBWeather, EasyWeather к проекту

Во встроенном веб-интерфейсе станций прописать следующее:

Hostname: narodmon.ru (или narodmon.com)
Path: /post
Port: 80
Upload Interval: 300

После чего сохранить настройки и перезагрузить станцию.
Для регистрации станции в проекте следует использовать значение параметра PASSKEY.
Проверялось на моделях станций WS2350 и WS-2902.

+ Как отладить (проверить на ошибки и активность) данные с прибора

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

1. Если ваш прибор находится в вашей домашней/офисной сети и стало быть имеет тот же публичный IP адрес, что и ваш браузер, то для отладки вы можете воспользоваться разделом сайта Профиль \ Данные с моего IP (после авторизации) или же по короткой ссылке narodmon.ru/me

2. Если же вы отлаживаете прибор, подключенный к мобильному интернету (т.е. его публичный IP не совпадает с вашим браузером), то вы можете воспользоваться ссылкой вида: narodmon.ru/dev/DEVICEMAC
* DEVICEMAC заменить на MAC вашего прибора (без : и -) в любом регистре. Если прибор уже зарегистрирован в проекте, то читаем далее п.3.

3. Для успешно зарегистрированных приборов отладочная информация находится в разделе сайта Датчики \ Настройка \ данные, полученные от прибора.

PS В отладочной информации доступны данные обо всех пакетах данных полученных сервером за последние пару часов от вашего прибора, а также ошибках в его протоколе (если таковые имеются). Если же этих данных нет, значит или IP/MAC прибора отличается от указанного вами или у прибора нет доступа в Интернет (неверно настроен или не оплачен).

+ Как защитить датчик от перегрева (п.2.3 Правил)

Не секрет, что наиболее популярные и востребованные публичные метеодатчики в проекте - температурные, поэтому за качественные данные с уличных термодатчиков проект увеличивает лимит приватных приборов его владельцу.

Однако значительное количество термодатчиков размещены с нарушением пункта 2.3 Правил Проекта, что приводит к отзыву их публичного статуса и, как следствие, уменьшению лимита приборов.

Перечислим основные методы защиты датчиков от перегрева:

1. Размещать датчик следует на теневой стороне строения, чаще всего это северная сторона. Можете использовать недорогие wifi приборы или 10-20м витой пары для подключения 1-wire датчиков DS18B20.

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

3. Устанавливать датчик следует на расстоянии не менее 20см от стены строения, например при помощи штанги. Этот фактор особенно критичен в зимний сезон в отапливаемых зданиях.

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

5. Не рекомендуется использовать не предназначенные для улицы датчики влажности и давления серий DHT/SHT/AM/BMP, т.к. они либо быстро выходят из строя от превышения влажности либо показывают слегка повышенную температуру за счет небольшого собственного нагрева.

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

+ Блоки питания и ошибка 99% в датчиках влажности

Если Вы используете весьма распространённые гигрометры и они постоянно показывают 99% влажности, то эта статья для Вас.

Выяснилось, что датчики весьма чувствительны к качеству питания, пульсации с размахом 150-200 милливольт полностью парализуют канал влажности, при этом канал температуры и обмен по шине работают нормально и контрольные суммы совпадают. А поскольку по нынешним временам многие радиолюбители используют готовые блоки питания стоимостью 100 рублей, то не стоит удивляться, что их качество сильно хромает. Да и питание от USB порта компьютера тоже зачастую не идеально. Хотя большинству полностью цифровых устройств это не мешает. А ещё бывает так, что новый блок питания работает нормально, а через неделю появляется шум и датчик подключенный к нему начинает врать.

Итак, если у вас датчик постоянно показывает 99% и питается от напряжения 5 вольт, то попробуйте для начала заменить блок питания на заведомо нормальный. К сожалению, возможно, придётся перебрать несколько разных блоков питания, желательно от разных производителей. Однако хороший блок питания будет стоить не 100 рублей, да и просто его может не быть под рукой. В качестве очень простого решения можно попробовать просто поставить в разрыв провода питания датчика (провод идущий к контакту Vcc) резистор сопротивлением 270-560 Ом.

Это работает, поскольку ток потребляемый датчиком очень мал, всего 3 миллиампера, то этот резистор не сильно “просадит” питание, а уже имеющийся в датчике стабилизатор всё равно понизит напряжение до трёх вольт. В тоже время совместно с конденсатором уже имеющимся в датчике, этот резистор образует вполне эффективный RC фильтр.

Ну и немного картинок:

Возьмём среднестатистический блок питания – зарядник. На этикетке написано 5V 1000mA.
Вот так выглядят шумы прилетающие на ножку Vcc датчика от этого блока питания.

Шумы блока питания 5V 1000mA

А вот так выглядит картинка после установки резистора и соответственно датчик начал работать.

Шумы блока питания с RC фильтром

Картинка с ещё одного блока питания с гордой надписью 5V 1000mA. С этим блоком питания датчик тоже показывает 99%.

Шумы блока питания 5V 1000mA

А вот картинка от блока питания идущего в комплекте с роутером MR3020.
Это тоже недорогой блок питания, но как видим шумов мало и датчик с ним прекрасно работает безо всяких переделок.

Шумы блока питания MR3020

В общем тщательно относитесь к выбору блока питания :) Успехов!

Источник: etrivia.ru/news/O-vybore-bloka-pitaniya.

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