4 заметки с тегом

датчик

/core.php, line 2
Error 2: Use of undefined constant k - assumed 'k' (this will throw an Error in a future version of PHP)

/core.php, line 2
Error 2: Use of undefined constant k - assumed 'k' (this will throw an Error in a future version of PHP)

/core.php, line 2
Error 2: Use of undefined constant k - assumed 'k' (this will throw an Error in a future version of PHP)

/core.php, line 2
Error 2: Use of undefined constant k - assumed 'k' (this will throw an Error in a future version of PHP)

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

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

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

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

Увы, после обновления движка блога картинки перестали вставляться. Забываю отписаться автору движка и узнать об этом. Сейчас прочитал у него на сайте, что да, был такой баг, но он исправляется изменением формирования адресов в настройках. Хотел вставить в эту заметку картинки, но придется обойтись без них. Если не забуду, позже добавлю. Но это все лирика, переходим к основному вопросу.
Вчера весь день почему-то было страшно начинать сборку новой метеостанции. Сегодня пересилил себя и засел ее собирать. Все датчики не стал паять сразу на плату, использовал разъемы. В дальнейшем это позволит мне быстро заменить вышедший из строя датчик. Нужно будет только перед тем, как размещать ее на улице, залить контакты «пистолетным» клеем.
В ходе сборки столкнулся с проблемой — не заработали датчики 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 на моем сервере и уже оттуда передаваться на другие. Также это позволит, в свою очередь, сделать мне страницу на сайте с историей показаний.
В общем, планов много, остается только найти время когда их все осуществить :-)