Очень тёплый радио термометр
Автор: Kotto Здравствуй, Кот :)
Позволь поздравить тебя с днем рождения!
И кому как не мне, истинному Kotto знать, что любят настоящие коты... Конечно же спать! А еще настоящие коты любят тепло. Что может быть лучше, чем проснуться, посмотреть на тёплый свет ламповых часов, а еще увидеть, как холодно на улице и как тепло дома.
Для этого и предназначен тёплый ламповый термометр.
Что больше всего раздражает в термометрах? Ну конечно же провода, многометровые провода за окно или куда-нибудь еще, где нужно измерять температуру.
В данный момент существует много разных версий термометров, в том числе с радио передатчиками и многим другим интересным, но...
Особенности этой модели: 1) Два радио передатчика на NRF24L01, могут передавать данные на большие расстояния. Мной лично измерено, что уверенная передача через железобетонные стены идет примерно на 20 метров или на два этажа вниз. 2) RGB подсветка в зависимости от температуры. Если холодно, то спектр синий. Если же теплеет, спектр переходит в зеленый оттенок, ну а если жара, то в оранжевый и красный. 3) Использованы 4 лампы ИН-12 и 2 лампы ИН-15А, чтобы смотреть показания двух датчиков одновременно. 4) Кнопка отключения подсветки. Не всем нравится, когда ночью она светит так, что цветы к ней тянутся. 5) Индикация разряда батарей датчиков (отображает символ % вместо знаков + и -), а так же индикация потери связи (символ n). Помимо этого происходит дублирование сигналов светодиодами. 6) Питание датчиков щелочными батарейками типа АА или ААА. Протестировано в течении месяца в морозилке (около -20). Разряд батареи составил 0,2 В. 7) Режим перебора всех цифр в лампах (типа антиотравление).
Состоит приёмник из двух плат: верхняя плата индикации и нижняя плата управления. В будущем хочу переделать верх на ИН-7 и ИН-4. Тоже довольно красиво получится.
Принципиальная схема приёмника: Управление осуществляется контроллером atmega328, в качестве дешифратора выбран классический К155ИД1. Анодные ключи на MMBTA42 и MMBTA92. Почему не оптопары? Потому что я их не люблю )) Я назову это фото Рис. 1. Или рисунок один. Это ответ на все вопросы типа "а почему ты сделал так, а не вот так по другому". Высокое напряжение... Нет, я не хочу делать его на mc34063, если вам она больше нравится - переделайте, это не сложно. Профи скажут, вот если твоя тинька зависнет, то все пойдет по одному месту. Не зависнет, предусмотрен watchdog и отключение после его срабатывания.
В качестве стабилизатора на 3.3 В выбран AMS1117-3.3, он нужен для питания логики. Контроллера и NRF24L01. Абсолютно не греется, так что все нормально.
На плате предусмотрены два разъема питания micro-usb, один сзади платы, в том случае, если вы захотите поставить его на стол. Ну а другой внизу, в случае, если термометр будет висеть на стене. Стабилитроны на 75 В нужны для усиления встроенных в К155ИД1, можно обойтись и без них, но иногда, на старых и побитых жизнью микросхемах, можно увидеть сильные засветы. В общем жить не мешают, почему бы не поставить. Чтоб было. Подсветка выполнена на адресных светодиодах WS2812B, что довольно удобно как в плане разводки плат, так и в плане управления ими. Нет необходимости иметь тонну аппаратных ШИМ, нагружать контроллер лишними вычислениями цветов... Да и вообще, эти светодиоды сплошное удобство и удовольствие :)
Теперь поговорим о передатчиках. Оба они устроены совершенно одинаково. Предусмотрено питание как от micro-usb, так и от батареек. Повторимся: использованы 3 батарейки типа АА или ААА.
В качестве датчика использован классический уже ds18b20. Позволяет измерять температуру от -55 до +120 градусов Цельсия.
Контроллер передаёт показания раз в 5 минут. Все оставшееся время он находится в глубоком сне. После пробуждения происходит следующее: 1) Включается управляемый стабилизатор LP2985AIM5-3.3. 2) Ожидание заряда питающего конденсатора примерно 500 мс. 3) В течении 3 секунд осуществляются попытки отправки пакета с температурой и уровнем заряда батареи. Если попытка передачи неудачна, контроллер вновь уходит в сон на 5 минут.
Кварцевый резонатор использован для того, чтобы при изменениях температуры окружающей среды частота плавала как можно меньше. ВНИМАНИЕ!!! ЕСЛИ ПОДКЛЮЧЕНЫ БАТАРЕЙКИ, НЕЛЬЗЯ ПОДКЛЮЧАТЬ ДАТЧИК К MICRO-USB!!! Измерение питания батареи осуществляется так: 1) В качестве опорного напряжения выбрано напряжение питания контроллера. 2) В качестве измеряемого напряжения выбран встроенный источник на 1.1 В.
Такой способ позволяет весьма точно узнавать собственное напряжение питания не используя разные жрущие ток делители напряжения и другие извращенные способы. Тесты контроля осуществлялись с помощью лабораторного блока питания и показали отличные результаты.
В том случае, если передатчик ничего не отправил в течении 20 минут, считаем что связь потеряна и отобразим символ n. Теперь о фьюзах... Фьюзы приемника выставляются на встроенный генератор на 8 МГц. Если у вас новый контроллер, то достаточно снять фьюз CKDIV8. Если же используется Б/У, то выставляем следующим образом: Внимание! На фото фьюзы инверсные. При прошивке не следует трогать никакие другие, кроме тех, что обведены красным прямоугольником!!! Фьюзы передатчика настроены на 8 МГц от внешнего кварцевого резонатора. Выставлять их следует как показано на фото ниже: А если наступит ситуация, когда напряжение упало ниже 3 В, то в этом случае ds18b20 откажется работать адекватно и будет посылать случайные и довольно бредовые данные. В текущей версии прошивки это не контролируется, но в будущем будет исправлено. Прошивки приёмника и передатчика прилагаются к статье в архиве. Ну а коту хочется пожелать всего хорошего в день рождения. Долгих дней и приятных ночей тебе, Кот. И никогда не забывай лицо своего отца :)
Файлы: Все вопросы в Форум.
Эти статьи вам тоже могут пригодиться: |
|
|||||||||||||||
|
||||