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

Беспроводной мини датчик температуры и влажности с E-PAPER дисплеем


Беспроводной мини датчик температуры и влажности с E-PAPER дисплеем

Здравствуйте! Хочу поделиться с вами своим новым опенсорс проектом. Из названия статьи понятно что речь пойдет о датчике температуры и влажности с дисплеем на электронных чернилах. Уже достаточно давно я попробовал сделать проект датчика температуры с такими дисплеями в виде ардуино модуля. С тех пор тема e-ink дисплеев меня заинтересовала.

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

Беспроводной мини датчик температуры и влажности с E-PAPER дисплеем

Датчик работает на чипах nRF52, для данного проекта был выбран модуль от компании MINEW. Модуль небольшого размера, имеет 18 выводов, 13 из которых gpio, два варианта антенн, печатная и керамическая, так же на модуль устанавливается несколько вариантов чипов, nRF52810 и nRF52832, а после непродолжительного общения с менеджментом компании мне без вопросов поставили на эти модули чипы nRF52811. Так я кстати получил свои первые 811-ые и к тому же по цене в полтора раза ниже чем мог бы купить у поставщиков в России просто чипы, но это уже другая история. На модуле разведен вариант схема DC-DC и часовым кварцем. Размеры модуля 12мм х 15мм. Присутствует металлический экран.

Беспроводной мини датчик температуры и влажности с E-PAPER дисплеем

Из линейки e-ink дисплеев выбор естественно пал на достаточно новую модель м размером экрана 1.02 дюйма GDEW0102T4. Стоимость одного дюйма электронных чернил составила 500 рублей, что мне показалось приемлемо. Небольшие трудности с разработкой платы под этот дисплей вызвал его разъем, 30 пиновый FPC c шагом в 0.5мм. Ширина FPC разъема намного больше ширины самого дисплея, что вызвало неудобство при проектировании. Но зато было проще с обвязкой дисплея, она проще чем на других моделях.

Беспроводной мини датчик температуры и влажности с E-PAPER дисплеем

Из разнообразных цифровых сенсоров температуры и влажности я решил остановиться на сенсоре sht20, их и в достаточном количестве было у меня, простой достаточно, хорошая цена, удобный размер. Так же одним из плюсов можно назвать то что вместо sht20 при желании легко установить sht21, si7020, si7021, htu20d, htu21d и hdc1080, но последний вариант не самый очень ;).

Под датчик проектировалось 2 платы, одна под экран и его обвязку, вторая под радио модуль, сенсор температуры и влажности и батарейку. Ключевыми параметрами размеров плат были размеры экрана и батарейки. На плате с экраном были заложены отверстия под винты (1.4 х 3) для крепления платы к корпусу, на второй плате были сделаны вырезы для удобной установки винтов. Так как это DIY устройство я мог себе позволить поставить «вкусную» батарейку CR2450. Ну а если мне покажется когда-то что устройство толстовато, то я всегда смогу напаять держатель под батарейку CR2430. В итоге получилось две платы размерами 36мм на 26мм.

Беспроводной мини датчик температуры и влажности с E-PAPER дисплеем

Корпус проектировался в СолидВоркс, модели плат были экспортированы из DipTrace в формате DXF, которые уже в СолидВоркс были преобразованы в 3D модели. Корпус состоит из двух частей и кнопки, Крепления половинок корпуса друг к другу сделано так же винтами(1.4 х 4) с одной стороны и выступающим «зацепом» с другой стороны. Сделаны два отверстия для циркуляции воздуха для сенсора температуры и влажности.

Беспроводной мини датчик температуры и влажности с E-PAPER дисплеем

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

Беспроводной мини датчик температуры и влажности с E-PAPER дисплеем

Примерно так происходила разработка железа, постарался описать все этапы и некоторые нюансы, если она вам показалась трудоемкой, то это не так, трудоемким на самом деле было ПО. Как и прежде я свои проекты делаю под MySensors, хотя признаюсь что уже не с тем энтузиазмом что прежде. В какие-то моменты стал упираться, каких то вещей не хватает, какие-то просто невозможны. Альтернативой на данный момент для себя я вижу Open Thread, по крайней мере он кажется достаточно привлекательным.

Cхема устройства
Беспроводной мини датчик температуры и влажности с E-PAPER дисплеем

Беспроводной мини датчик температуры и влажности с E-PAPER дисплеем

Беспроводной мини датчик температуры и влажности с E-PAPER дисплеем

В итоге все свои требования к функционалу реализовать получилось. Устройство может работать с контроллером УД, так же устройство может работать напрямую с каким либо устройством в сети МySensor. Привязка устройств для прямого обмена может происходить как посредством конфигурации устройств через контроллер УД, внешними командами, так и без участия контроллера УД с помощью простого нажатия кнопки для активации режима привязки(binding). Датчик температуры и другое устройство к которому привязан датчик могут нормально поддерживать обмен даже без работающего шлюза MySensors или работающего контроллера УД, что безусловно повышает отказоустойчивость. Отдельная проблема была с драйверами eink дисплея, вероятно потому что дисплей достаточно новый, на сайте производителя и сайте WaveShare(предлагающий eink экраны Good Display под своим брендом) реализации библиотек достаточно сырые. Пришлось что-то переделать, что-то дописать.

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

Беспроводной мини датчик температуры и влажности с E-PAPER дисплеем

Посмотреть как это выглядит можно в небольшом видеоролике

Таймстампы интересных моментов:

3.10 — Конфигурирование (смена шрифта, инверсия цвета)

5.10 — Замер потребления, работа WTD

Если кому-то интересны мои разработки, то после прочтения статьи рекомендую перейти на канал и подписаться, там информацию по новым разработкам я публикую в первую очередь.

:

В спящем режиме датчик потребляет 2мкА, сброс WTD каждые 5 секунд, потребление в момент сброса 4-5мкА. В режиме работы с экраном и сенсором температуры и влажности 2-3мА, в режиме передачи 5-8мА, такой диапазон в 3 мА связан с тем что датчик сам регулирует мощность передачи на основе данных по уровню сигнала.

Под спойлером фотографии датчика
Беспроводной мини датчик температуры и влажности с E-PAPER дисплеем

Беспроводной мини датчик температуры и влажности с E-PAPER дисплеем

Беспроводной мини датчик температуры и влажности с E-PAPER дисплеем

Беспроводной мини датчик температуры и влажности с E-PAPER дисплеем

На этом хочу откланяться, всем как всегда добра!


СМОТРИ ТАКЖЕ

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

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