Товары из Китая

Zigbee датчик температуры для бассейна


Zigbee датчик температуры для бассейна

В эти новогодние каникулы хочу поделиться с вами своим летним открытым проектом zigbee датчика температуры для бассейна. Идея разработать такой датчик появилась довольно спонтанно, летом 2023 года после установки бассейна на даче, появилось желание мониторить температуру воды. К тому времени у меня было разработано несколько проектов zigbee датчиков с дисплеями и датчиков температуры с выносными сенсорами. Датчики температуры можно было привязывать к датчикам с дисплеями и выводить температуру, присланную с этих внешних датчиков. Датчик температуры я закреплял на стенке бассейна, а сенсор на проводе опускался в воду. Но как оказалось это не очень то и удобно. Как только пришел к такому выводу то сразу решил что мне нужен плавающий zigbee датчик температуры.

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

В новогоднем розыгрыше будут разыграны 5 zigbee датчиков влажности почвы, специально сделанных для этого новогоднего розыгрыша — EFEKTA zFlora SE (Special Edition). Условия розыгрыша простые, до 15 января подписаться на группу DIY DEV, оставить сообщение EFEKTA zFlora SE в группе. 15 января в 15 часов будет произведен розыгрыш среди участников оставивших сообщение EFEKTA zFlora SE, объявлены 5 победителей.

Ну вот объявил, а теперь возвращаемся к проекту датчика температуры для бассейна.

Датчик мне захотелось получить сразу и быстро, поэтому решил вспомнить о ЛУТе. Решил и не пожалел, это конечно одно из приятных занятий которое доступно в электро DIY. Сейчас, во времена доступности промышленно изготовленных плат, это занятие становится редким удовольствием на которое и хочется и жалко тратить время. Но тут всё сошлось, лето, свободное время, проект исключительно для себя, который к тому же хотелось буквально завтра, но лучше если сегодня уже в готовом виде :). На моем гитхаб я выложил 2 версии плат, одна версия для заказа на производстве, вторая для тех кто захочет сделать плату своими руками.

Не буду углубляться в процесс производства плат методом ЛУТ. Инструкций достаточно на ютубе, опишу коротко. Распечатал на лазерном принтере (кстати купленном давным-давно, специально для этого) обе стороны платы на бумаге из глянцевого журнала про автомобили, совместил обе стороны приложив на стекло окна и подсвечивая лампой, склеил скотчем. Вырезал кусок текстолита с двухсторонним медным слоем, зачистил, обезжирил и положил между слоями бумаги. Прогрел утюгом с обеих сторон, смыл бумагу. Подправил кое-где перманентным маркером, вытравил в растворе хлорного железа, отмыл. Дрюмелем обработал контур платы, сделал сверление отверстий, самые мелкие 0.5мм. Зачистил и залудил сплавом розе в эмалированной кастрюльке. Готово, и лазер и утюг, всё было :), и не надо ждать месяц плату с производства. А эмоции? Их в коробку с платами на производстве не положат.

Zigbee датчик температуры для бассейна

Что мне нужно было от этого датчика? Основное это что бы он плавал и стабильно передавал измеряемую температуру в умный дом. Если датчик плавающий, то он должен быть герметичным, поэтому нужно было что-то решать с сервисной кнопкой, на которой обычно висит функционал входа, выхода из сети, еще какие-то другие функции. Остановился на варианте с smd кнопкой и герконом. Кнопкой можно было бы пользоваться когда корпус открыт, а герконом уже если нужно, что то сконфигурировать по месту, в бассейне, поднеся магнит.

Zigbee датчик температуры для бассейна

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

Zigbee датчик температуры для бассейна

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

Zigbee датчик температуры для бассейнаНа изображении показан весь доступный функционал у датчика.

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

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

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

Zigbee датчик температуры для бассейна

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

Zigbee датчик температуры для бассейна

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

Zigbee датчик температуры для бассейна

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

Zigbee датчик температуры для бассейна

Zigbee датчик температуры для бассейна

Корпус для первого датчика был напечатан на фотополимерном принтере, полимером белого цвета, поэтому проблемы со светодиодом и датчиком освещенности не было. Корпус для второго датчика, уже на заводской и красивой плате я заказал позднее в китае, на сайте jlcpcb. Он был напечатан по технологии MJF, черным полимером. Для этого варианта корпуса, я просверлил два отверстия в крышке корпуса для светодиода и датчика освещенности. Залил отверстия прозрачной УФ смолой, сделав своего рода линзы.

Zigbee датчик температуры для бассейна

Zigbee датчик температуры для бассейна

К слову так же был напечатан корпус на FDM принтере и сверху обработан растворителем D-limonen, чтобы поверхность стала монолитной. Но этот вариант с корпусом напечатанным на FDM принтере я только проверил на плавучесть, дальше его реализовывать не стал, но это рабочий вариант. Самый легкий по весу, но немного менее эстетичный чем варианты корпусов напечатанных по технологии SLA и MJF.

Zigbee датчик температуры для бассейна

Zigbee датчик температуры для бассейна

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

github.com/sigma7i/zigbee-wiki/wiki/zigbee-firmware-install

zigdevwiki.github.io/Begin/IAR_install

Проект печатной платы разрабатывался в программе для разработки печатных плат — DipTrace.

Исходники проекта выложены на моем github.

Корпус спроектирован в программе SOLIDWORKS, исходники так же выложены на моем gihhub.

Прошивка устройства

Вам понадобится программа SmartRF Flash Programmer версии 1. Так же вам понадобится CC Debugger или Smart RF04E(рекомендуется из-за простоты подключения).

Zigbee датчик температуры для бассейна

Процесс прошивки с помощью SmartRF Flash Programmer v1

Подключите 5 контактов на плате на соответствующие подписанные контакты дебагера. Подключаете дебагер в usb порту компьютера, открываете программу SmartRF Flash Programmer v1. Правее поля в пункте Flash Image нажимаете на иконку «обзор» и выбираете файл прошивки скачанный ранее. В пункте Actions выбираете Erase и ниже нажимаете на кнопку Perform actions. После того как вы очистили чип, выбираете Erase and program том же в пункте Actions и снова нажимаете кнопку Perform actions.

Zigbee датчик температуры для бассейна

Для работы устройства через з2м вам понадобится установить внешний конвертер, процесс установки конвертера описан в файле README на моем github.

Датчик всё лето прекрасно выполнял свою работу, плавая в бассейне и передавая данные в умный дом и на датчик с дисплеем, к которому он был привязан.

Zigbee датчик температуры для бассейна

Zigbee датчик температуры для бассейна

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

август, сентябрь

Zigbee датчик температуры для бассейнаZigbee датчик температуры для бассейнаZigbee датчик температуры для бассейна

октябрь

Zigbee датчик температуры для бассейна

ноябрь

Zigbee датчик температуры для бассейна

декабрь

Zigbee датчик температуры для бассейна

Zigbee датчик температуры для бассейна

И вот уже за окном январь 2024 года, я на даче, на новогодних праздниках, сижу и пишу статью об этом летнем проекте. В московском регионе сейчас наступили сильные морозы, это конечно по нашим московским меркам они сильные, -25 в среднем. Датчик и сейчас там, на детской площадке, продолжает работать, исправно отправляет данные, пока я пишу этот текст. Тест продолжается, батарейки из Фикспрайса в норме, сигнал на 20 метрах с улицы стабильный и высокий.

Zigbee датчик температуры для бассейна

Zigbee датчик температуры для бассейна

Zigbee датчик температуры для бассейна

Zigbee датчик температуры для бассейна

Zigbee датчик температуры для бассейна

Zigbee датчик температуры для бассейна

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

Zigbee датчик температуры для бассейна

ГитХаб проекта — github.com/smartboxchannel/EFEKTA-Pool-Temperature-Sensor

Вот такая получилась зимняя статья о летнем проекте. Если вы дочитали статью об этом проекте zigbee датчика до конца, то вам точно нужно добавится в самое большое русскоязычное сообщество в Телеграм по тематике Zigbee — Вокруг да около Zigbee. Так же приглашаю всех читателей, которым интересна тематика DIY, разработка электронных устройств, всех кто хочет расказать о своих самоделках или почитать о чужих в мою группу в телеграм DIYDEV

Спасибо за внимание, всем добра!..


СМОТРИ ТАКЖЕ

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *