5 заметок с тегом

датчик

Как меня забанили на narodmon.ru

Негодования пост

Ничто, как говорится, не предвещало...
Не так давно переделал свою метеостанцию: использовал другую прошивку для ESP8266, переделал схему для более устойчивой работы модуля зимой — ранее он периодически отваливался от домашнего WiFi и не отправлял данные. Заодно немного переделал схему отправки данных: вместо того, чтобы напрямую отправлять их на сервер, данные сначала забирались системой Domoticz, а затем отправлялись на сервер narodmon. Метод отправки тоже изменился — теперь на HTTP-запрос GET.
В итоге, за три «нарушения» за последние несколько дней, на один из датчиков мне поставили «бан» на месяц. Почему? Потому, что Domoticz отдавал данные атмосферного давления, округленными до единицы, что привело к тому, что показания не менялись в течение нескольких часов. Администрация сайта посчитала это нарушением и исключила этот датчик из общедоступной карты. Да, я последние пару дней был занят оптимизацией скрипта отправки в связи с изменившимися обстоятельствами, и не обращал особого внимания на то, что творится с передаваемыми показаниями.
Конечно, меня эта ситуация немного опечалила. Как говорится, «не делай добро...» На мой взгляд, администрации стоило бы предоставить больше информации еще при первом возникновении ошибки. Иначе это выглядит так:

  1. Около показаний датчика появляется информация, что показания не менялись с такого-то времени. Сам датчик выделяется желтым цветом.
  2. Через сутки или больше появляется значок предупреждения с тем же текстом. Т. е. информативности никакой. Ну не меняются показания, и что? Такое может случиться, например, при возникновении неполадок с оборудованием. И, если я не успел исправить это очень быстро, то с карты они пропадают. Если я не заходил на сайт, то я вообще этого всего не увижу. А что? У меня данные отправляются, сервер отвечает, что принял их. А что на самом деле происходит — никто не ведает.
  3. Датчик «улетает» в приватные, т. е. не видимые никому, кроме владельца. Если попробовать заново выбрать пункт «публичная карта», чтобы вернуть его на место, то получаем еще одно «предупреждение». То есть не получаем — оно нигде не отображается, но вам оно засчитывается. Тишина на ровном месте. После третьего «предупреждения» вы наконец-то видите причину, почему датчик не появляется на карте — вас забанили. Опля! А раньше нельзя было сказать? Я бы более внимательно искал причину, а не считал исчезновение датчика с карты глюками сайта.
  4. Спустя еще полдня после «бана» я начинаю получать уведомления из программы, установленной на телефон. А вот это уже, на мой взгляд, издевательство. Могу повториться: а раньше нельзя было сказать? Нигде! Нигде об этом ничего не написано! Перерыл всю справку и нашел только одно более-менее подходящее предложение:
    «- Если показания датчика не передавались более 30 дней — он и его показания удаляются с сервера автоматически. При неактивности датчика более 3ч датчик он пропадает с карты.»

Хочется материться после всего этого. Изменения на сайте вносятся, но никто о них не оповещается. Мы же телепаты, мы и так все знаем.

Освещение в подъезде

Театр, как известно, начинается с вешалки

Лампа на площадке в подъезде сгорела давно, около полугода назад. Но, так как наступало лето, и, в основном, все время было светло, то я особо по этому поводу не заморачивался. Но всему хорошему приходит конец. С наступлением осени в то время, когда я порой возвращался домой, на площадке уже становилось настолько темно, что замочную скважину было видно только по светлому пятну из коридора. Делать нечего, пришлось купить лампу. Размеры старой я не помнил, поэтому взял метровую, благо что она крепилась на защелках. Есть, конечно, риск, что ее просто тупо сопрут, но стоит она не так уж и дорого, поэтому мне все равно.
И вот на этом моменте меня «закусило». Уже более полугода в закромах валяется специально купленное для этих целей реле с датчиком освещенности. Темно — включается лампа, светло — отключается. И все было бы отлично, но датчик, скотина, реагирует на любой свет, не только на солнечный. Думал решить этот вопрос «укутыванием» датчика в термоусадочную трубку. «Укутал». Но, на сегодняшний момент, меня берут сомнения и ситуация складывается так, что это было вовсе не нужно. Дело в том, что я взял обычный настенный светодиодный светильник. Который, судя по всему, не оказывает никакого воздействия на датчик освещенности. Последний я, впрочем, отпаял от платы и прикрепил на полтора метра дальше от лампы. В планах было вывести его на улицу через окно в подъезде, но сейчас я готов отказаться от этой идеи по вышеописанной причине. Сейчас весь вопрос остается только в том, чтобы подстроить датчик под нужный уровень освещенности. Включается он в нужный момент, нужно только проконтролировать чтобы он и отключался когда станет более-менее светло, а не в яркий солнечный день. Плата с реле вполне себе уместилась в стандартную распределительную коробку, которая, увы, пока что остается «на весу». Пробивать дыру под нее в стене мне просто лень :-) Плюс к этому в нынешнем положении она скрывает тот факт, что лампу легко можно отключить от питания и вытащить из защелок.

Сборка новой метеостанции

Увы, после обновления движка блога картинки перестали вставляться. Забываю отписаться автору движка и узнать об этом. Сейчас прочитал у него на сайте, что да, был такой баг, но он исправляется изменением формирования адресов в настройках. Хотел вставить в эту заметку картинки, но придется обойтись без них. Если не забуду, позже добавлю. Но это все лирика, переходим к основному вопросу.
Вчера весь день почему-то было страшно начинать сборку новой метеостанции. Сегодня пересилил себя и засел ее собирать. Все датчики не стал паять сразу на плату, использовал разъемы. В дальнейшем это позволит мне быстро заменить вышедший из строя датчик. Нужно будет только перед тем, как размещать ее на улице, залить контакты «пистолетным» клеем.
В ходе сборки столкнулся с проблемой — не заработали датчики am2320 и bme280. Проблема со вторым оказалась в коротком замыкании между двумя контактами, устранил быстро. А вот первый так и не «завелся». Позже соберу его на беспаечной макетке, но думаю, что там он заработает нормально. Проверю.
Еще меня мучает один вопрос. Если со старым датчиком температуры я его решил, написав скрипт, который может накапливать данные при отсутствии связи с сервером, то как себя поведет новая станция, когда эта связь пропадет?
Пока же остается только протестировать работу новой схемы, попутно подбирая корпус для нее, упаковать ее в этот самый корпус и прикрепить снаружи. А также провести электричество на лоджию и постараться ее хоть немного утеплить.

Подключение датчиков

Вчера купил пару bme280. Утром пришел на работу с большим желанием подключить его и посмотреть на показания. Достал из рюкзака пенал с паяльными принадлежностями... А он внутри залит спиртово-канифольным флюсом. Запах сильный, конечно. Пришлось потратить кучу времени на отмывание всего, что было в пенале. Как оказалось, лопнула крышка у банки с флюсом.
Дождавшись когда все просохнет, воткнул в макетку все датчики, которые у меня есть: am2302, am2320, DS18b20 и bme280. Затем отправился на сайт за прошивкой с поддержкой bme280. Эта функция оказалась платной, поэтому пришлось также заплатить за лицензию. Цена небольшая — всего 110 рублей, но есть привязка к устройству. Иными словами, вы не можете использовать одну лицензию для разных ESP8266. Ну да ладно, я пока не собираюсь массово их закупать.
Настроил все необходимые параметры в модуле и вернулся на главную страницу, где отображаются показания все датчиков. Показания меня несколько удивили. Так bme280 показывал температуру примерно на 1 градус выше, чем все остальные датчики. Влажность отличалась у всех трех: am2302, am2320 и bme280. И только температура через некоторое время стала примерно равной у всех. Так как давление у меня умеет измерять только один, пришлось сравнивать показания с ближайшими датчиками на сайте narodmon.
Итог:

am2320 am2302 bme280 ds18b20
Температура 27,6 27,5 28,6 27,6
Влажность 45,0% 43,2% 36,7%
Давление 743,30 mmHg

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

Датчик температуры

Добавил на сайт показания от своего уличного датчика температуры. К сожалению, пока что показания не изменяются в реальном времени, для их обновления необходимо обновить страницу. Надеюсь в будущем это исправить.
До наступления Нового года также хочу немного изменить способ передачи показаний на сторонние погодные серверы, такие как Narodmon, OpenWeatherMap и WeatherUnderground. Сейчас они формируются и передаются bash-скриптом на сервере, планирую переделать их на PHP. Это даст мне возможность заносить их в базу MySQL на моем сервере и уже оттуда передаваться на другие. Также это позволит, в свою очередь, сделать мне страницу на сайте с историей показаний.
В общем, планов много, остается только найти время когда их все осуществить :-)