В этой статье описана конструкция часов с функцией термометра. Значения температуры поступают на устройство с двух беспроводных датчиков температуры по радиоканалу, выполненному на радиочастотных модулях приемопередатчика NRF24L01+.
Данные часы - термометр созданы на базе двухканального беспроводного термометра.
ФУНКЦИИ
Данное устройство выполняет следующие функции:
- Часы. На экране часов отображается текущее время и дата (день, месяц и год).
- Будильник. Реализовано два будильника. Каждый будильник может быть настроен для управления зуммером и (или) реле.
- Термометр. Значения температуры поступают от двух беспроводных датчиков температуры.
-
СХЕМА
Как и двухканальный беспроводной термометр данное устройство конструктивно состоит из базового блока, схема которого представлена на рисунке 1 и двух беспроводных датчиков температуры, схема которых представлена в статье о двухканальном беспроводном термометре.
Рисунок 1: Принципиальная схема базового блока часов - термометра.
В устройстве применены следующие компоненты:
Поз. обозн. | Наименование |
А1 | LCD модуль на базе индикатора от Nokia 5110 |
А2 | Модуль часов реального времени на базе микросхемы DS1307 |
А3 | Модуль приемо-передатчика на базе микросхемы NRF24L01+ |
С1 | Конденсатор 1...4,7 мкф |
С2...С4 | Конденсатор 0,1...0,47 мкФ |
С5 | Конденсатор 47мкФ х 25В |
D1 | Микроконтроллер PIC18F2585 |
D2 | Микросхема AMS1117ADJ |
E1 | Плата питания на базе микросхемы LM2596S ADJ |
R1...R4 | Резистор 4,7кОМ, 0.125Вт |
R5 | Резистор 200 Ом, 0.125Вт |
R6...R9 | Резистор 4,7кОм, 0.125Вт |
R10 | Резистор 120 Ом, 0.125Вт |
К1 | Реле JQC-3F(T73)-5VDC |
H1 | Звукоизлучатель со встроенным генератором HCM1205X |
VD1...VD5 | Диод 1N4007 |
VT1 | Транзистор IRLM2803 |
Т1 | Трансформатор с выходным напряжением от 7 до 12 В |
F1 | Предохранитель 250В/0.1А |
S1...S3 | Кнопка тактовая (любая) |
Х1 | Разъем PLS5 |
Х2 | Сетевая вилка |
Х3 |
Разъем или клемник (любой) |
Функции устройства выполняет микроконтроллер PIC18F2585 фирмы Microchip - микросхема D1. Микроконтроллер работает от внутреннего тактового генератора. Занесение в микроконтроллер программного обеспечения ("прошивки") производиться через разъем внутрисхеммного программирования X1. Цоколевка сигналов разъема X1 полностью соответствует цоколёвке разъема программаторов PICKIT2 и PICKIT3.
В качестве индикатора A1 применен модуль с дисплеем, применяемым в телефонах Nokia 5110, и широко представленный в интернет магазинах.
Дисплей этого модуля программно совместим с индикатором от телефона Nokia 3310. Преимуществом данного модуля по сравнению с индикатором Nokia 3310 является наличие в конструкции модуля встроенной подсветки.
Отчет времени и даты возложено тоже на готовый модуль часов реального времени A2, выполненный на базе микросхемы DS1307.
Микроконтроллер D1 осуществляет связь с модулем часов реального время по последовательному двухпроводному интерфейсу I2C.
Микроконтроллер D1 осуществяет прием данных по радиоканалу от беспроводных датчиков температуры с помощью модуля приемопередатчика A3, выполненного на базе микросхемы NRF24L01+.
Обмен информации микроконтроллера с модулем приемопередатчика осуществляется по последовательному интерфейсу SPI.
Микроконтроллер при общении с модулями приемопередатчика NRF24L01+ и часов реального времени DS1307 использует частично одни и те же выводы при этом в программном обеспечении постоянно переключая работу внутреннего модуля последовательного интерфейса с одного типа интерфейса на другой (I2C и SPI).
Для задания режима работы часов - термометра, установки параметров времени, даты, будильников и других настроек устройства используются три кнопки S1 "+", S3 "-" и S2 "Выбор", которые подключены к портам ввода-вывода микроконтроллера D1.
Микроконтроллер D1, индикатор Nokia 5110 (модуль А1) и модуль А2 часов реального времени DS1307 питаются стабилизированным напряжения +5В от модуля питания, выполненного на микросхеме LM2596S ADJ.
А вот модуль приемопередатчика NRF24L01+ необходимо питать напряжением +3,3В, поэтому применена микросхема линейного стабилизатора AMS1117ADJ. Микросхема AMS1117ADJ является стабилизированным источником постоянного тока с регулируемым выходным напряжением (мною была применена по причине ее наличия - как то давно за "гроши" приобрел сотню таких микросхем у "китайцев"). Так как напряжение +3,3В является стандартным, то в данном устройстве можно применить микросхему AMS1117-3.3 с фиксированным выходным напряжением 3, 3В, при этом из схемы следует удалить резистор R10, а резистор R5 - закоротить.
А дальше в схеме все понятно:
- к контроллеру подключаются зуммер со встроенным генератором H1 и при необходимости реле K1 с помощью транзисторного каскада VT1;
- трансформатор Т1 и диодный мост VD2...VD5 служат для понижения сетевого напряжения переменного тока и преобразования в напряжение постоянного тока.
ОПИСАНИЕ РАБОТЫ
Часы - термометр работают в двух режимах, условно назовем их:
- режим "Работа";
- режим "Конфигурирование".
В режиме "Работа" на индикаторе информация отображается на нескольких кадрах:
- Кадр "Часы" (наименование кадра не отображается). На этом кадре выводиться информация о текущем времени и дате, а также информация, поступающая от двух датчиков температуры;
- Кадр "Термометр" (наименование кадра не отображается). Выводятся два значения температуры;
- Кадр "Радиодатчик 1". На этом кадре мы можем видеть значения температуры и напряжения питающего элемента, поступающих от датчика №1;
- Кадр "Радиодатчик 2". А здеь - информацию, поступающую от датчика №2;
Выбор отображаемого кадра изображения выполняется кнопкой S1 "+". Нажатием кнопки S3 "-" выполняется включение/отключение подсветки индикатора. Нажатием кнопки S2 "Выбор" выполняется вход в режим "Конфигурирование".
Режим "Конфигурирование".
При нажатии кнопки S2 "Выбор" в режиме "Работа" мы попадем в меню "Настройки".
Кнопками "+" и "-" происходит перемещение курсора верх и вниз соответственно. При нажатием кнопки "Выбор" входим в подменю: "Время/Дата", "Будильни 1"или "Будильник 2", отмеченное курсором. Если курсор стоит в первой позиции "Выход", то при нажатие кнопки "Выбор" произойдет выход из режима "Конфигурирование".
При выборе позиции "Время/Дата" попадаем в подменю установки параметров времени и даты.
Далее при выборе "Время" или "Дата" входим в настройки соответственно текущнго времени и даты.
При выборе "Будильник 1" или "Будильник 2" входим в соответствующее подменю.
В этом подменю можно включить или отключить будильник, устанавить время срабатывания будильника, настраивается работа зуммера и реле.
Работа будильников.
Как уже говорилось в данном устройстве имеется два будильника. Каждый будильник, если он включен, при достижении времени срабатывания будильника может подать звуковой сигнал (если зуммер включен в настройках соответствующего будильника), а также может управлять реле. Для управления реле в настройках будильника необходимо установить действие, какое должно быть выполнено при срабатывании будильников. При срабатывании будильников реле можно включить или отключить. Если настроить один будильник на управление включением реле, а второй будильник на отключение реле, то с помощью реле можно в заданное время управлять подключенной к контактам реле нагрузкой.
Для выключения звукового сигнала будильника необходимо нажать кнопку "-".
ВНЕШНИЙ ВИД