Arduino часы с беспроводным датчиком температуры.

Увидел я как-то подобный девайс, расположенный за аквариумом и решил повторить, добавив нужный мне функционал. Конечно, есть готовые устройства, но стоят они около 100уе, что не входило в мои планы. В итоге я нашел дешевую LED матрицу за 500р. на основе которой и был реализован проект.




Функционал:

1. Дата время
2. Температура внутри помещения
3. Температура по радиоканалу с наружнего датчика.
4. Возможность коррекции температуры с хранением в энергонезависимой памяти.

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

Потом мучался со шрифтами. Пришлось рисовать их заново в двух размерах. И символы тоже.
Далее с размещением на экране. Написал универсальную функцию, куда передаю размер шрифта и начальные координаты символа.
Сделано простое меню, позволяющее выставлять дату, время и корректировку температуры. Корректирующее значение хранится в EPROM, чтобы не сбрасывалось при выключении.

Передатчик наружней температуры сделал тоже на ардуине. Получился небольшим. Но вот с сигналом какие-то чудеса. То ловит через все стенки с дальней лоджии, то с 5 метров не ловит совсем. Добавил контрольные суммы. Пока с этой проблемой не справился. Видимо 433мгц не лучший выбор. Пробовал и с антенной и без, разницы никакой. Если данных в течении 20 сек. не получено вывожу 50.

Фото беспроводного датчика температуры.


Для питания матрицы, чтобы не делать отдельно 5в питание, поставил UBEC.
Запитываю ардуину как всегда 9в.

На матрице есть магнитные ножки. Закрутил в стену 4 самореза с плоскими шляпками, к ним и примагнитил.

Перечень комплектующих с сылками:
DHT22 digital temperature and humidity sensor Temperature and humidity module AM2302 replace SHT11SHT15


433Mhz RF transmitter and receiver kit for Arduino project

Indoor F3.75 P4.75 Single Red color LED dot matrix module 304*76mm 64*16 pixels for LED sign Board


Tiny RTC I2C modules 24C32 memory DS1307 clock for arduino

6x6x7.5mm 4 Pins DIP PCB Momentary Tactile Tact Push Button Switch

Nano 3.0 controller compatible with nano CH340 USB driver NO CABLE for Arduino NANO V3.0


TURNIGY 3A UBEC с защитой от помех

Кнопки, провода и монтажная пенель.

Занимался этим прошлой зимой. Вот что в итоге получилось.








Скетч выложу, если кому-то интересно.

10 комментариев

avatar
скетч наверное лучше выложить сразу, а потом когда будет нужно, нужно будет ждать ) выглядит клево. матрица, наверное, дорогое удовольствие ) а она RGB?
avatar
Нет. Одноцветная. Но и цена у нее 600р.
avatar
Скетч надо причесывать. Стыдно выкладывать. Я там разные идеи пытался реализовать и не вычистил пока что.

Хотел сделать чтобы минимальную/максимальную температуры запоминал.

Проблема в том что показ идет построчно. И нельзя в коде использовать ни циклы, ни паузы. Начинает моргать экран. Выложу, может кто что подскажет.
avatar
6x6x7.5mm 4 Pins DIP PCB Momentary Tactile Tact Push Button Switch
эта ссылка ошибочная
avatar
Спасибо, поправил.
avatar
а как крепил к матрице плату?)
avatar
Поскольку из матрицы торчали довольно длинные ножки, приклеил к матрице проставки из пластика. И на термоклей закрепил плату.
avatar
Все надо было уложить в высоту, на которую выступают магнитные ножки, пришлось повозиться.
avatar
все красиво, но одна проблема, а где-же рыбки ?)
avatar
Это фото делалось как раз когда я менял и рыб, и все наполнение.
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.