Универсальное устройство: часы, термометр, термостат, будильник, система удалённого управления
Устройство "Universal device" (Универсальное устройство) содержит в себе функции нескольких устройств, которые сильно облегчают жизнь людям, автоматизируя жилую площадь. Так как устройство стремительно улучшается, оно имеет свой USB загрузчик, поэтому для обновления прошивки достаточно просто подключить Universal device к компьютеру, включить режим самопрограммирования и запустить на ПК программу для обновления прошивки. При этом, отсутствует опасность заблокировать устройство «навечно», как это иногда бывает при обновлении прошивки мобильных телефонов.
Содержание:
- Краткое описание возможностей устройства.
- Схема.
- Пульт дистанционного управления.
- Управление устройством.
- Связь с компьютером. Работа с программой "UD Control".
- Завершение.
1. Краткое описание возможностей устройства
Universal device имеет такие функции:
- Отображение времени в формате «чч - мм – сс» (время автоматически синхронизируется с компьютером, к которому устройство подключено по USB-интерфейсу).
- 5 будильников с возможностью подключения внешнего, более громкого сигнализатора (например, рупора). Все настройки будильников можно сохранять во встроенной энергонезависимой памяти, которая имеет до 1000000 циклов записи/стирания.
- 2 термометра(-55С … +125С) с 8-канальным термостатом (термостаты не автономные).
- Управление 8 нагрузками (лампы, люстры, насосы, электромоторы и другие электроприборы) с помощью пульта дистанционного управления (ПДУ) или компьютера.
Также, устройство подключается к компьютеру по USB-интерфейсу, при этом, кроме выше написанных функций, доступны такие:
- Настройка будильников (время, день недели, источник сигнала, продолжительность звонка).
- Отображение текущей температуры обеих термометров на мониторе. При этом. Можно просматривать график смены температуры с момента запуска программы.
- Управление нагрузками. Установка времени автоматического включения/отключения для каждого канала, управление функцией термостата.
- При этом, с помощью Пульта Дистанционного Управления можно управлять такими функциями:
- Управление функциями Windows.
- Управление мышью.
- Виртуальное нажатие клавиш.
- Управление плеером Winamp.
- Возможность включения отображения большого сообщения поверх всех окон, например, при переключении трека в Winamp. Таким образом, можно увидеть текущий трек на настоянии от монитора даже более чем 5 метров.
- Доступны возможности отображения программы в системном трее (возле часов) и автозагрузки программы (вместе с загрузкой Windows).
2. Схема
Рис. 2.1. Схема устройства. (Нажмите для увеличения) .
Основой устройства является микроконтроллер ATmega16, он работает на частоте 16 МГц. Его питание может быть от USB порта или внешнего блока питания (выбор питания джампером J9) .
На устройстве есть 2 дисплея: символьный 16х2, и сегментный (2 штуки по 4 сегмента). Сегментный предназначен для отображения времени и температуры. Символьный - для удобства управления некоторыми функциями устройства, но его ставить совсем не обязательно.
Микросхема IC6 - это ПЗУ AT24C64 предназначена для сохранения настроек будильника, ROM адресов термодатчиков и еще некоторых настроек.
TSOP1738 (лучше установить TSOP1736) - приемник ИК сигналов с пульта дистанционного управления.
USB - разъем для подключения устройства к компьютеру.
BUZZER - сигнализатор для будильника. Обязательно со встроенным генератором.
IR-Led - инфракрасный светодиод. В настройках будильника его можно выбрать в качестве сигнализатора. Для чего он нужен? Если, к примеру в комнате находятся несколько людей но утром нужно чтобы проснулись только Вы, тогда можно собрать простейший приемник ИК сигнала, который будет вибрировать при появлении инфракрасных лучей, и прицепить его на руку, тогда утром устройство активизирует ИК-передатчик и Ваше устройство завибрирует, разбудив Вас.
4 сдвиговых регистра 74HC595. Предназначены для управления светодиодами, сегментным дисплеем и нагрузками.
8 светодиодов (LED1 - LED8) - их предназначение смотрите в инструкции к программе.
ULN2003 - это сборка Дарлингтона. Микросхема предназначена для управления нагрузками, таким образом, к каждому выходу(кроме восьмого) можно подключить нагрузку до 500мА.
IRFZ44N(на схеме я случайно поставил другой) - полевой транзистор, управляет восьмой нагрузкой.
IC5 - линейный стабилизатор 5В. Я ОЧЕНЬ рекомендую заменить его на импульсный стабилизатор (например, R-78xx), тогда КПД устройства сильно повыситься.
Печатная плата в формате Sprint Layout 5.
Рис. 2.2. Печатная плата.
Скачать плату в формате *.lay вы можете ниже (для того, чтобы увидеть номинал компонента, наведите курсор на компонент, который Вас интересует).
В качестве сегментных дисплеев я взял KW4-563ASA так как он очень яркий и стоит около 1$. А в качестве разъема для подключения вешнего термодатчика - аудиоразъем.
Вот что получилось:
Рис. 2.3. Фото устройства.
- Большой сегментный индикатор. На нем попеременно отображается время и температура(слева внешний термометр, справа - внутренний).
- Индикаторы. Два крайние (№1 и №8) горят постоянно для того, чтобы в темноте было проще понять где какой индикатор. №2 – включен прием команд с ПДУ. №3 – команда с ПДУ предназначена для компьютера. №4 зарезервирован. №5 – чтение с ПЗУ. №6 – запись с ПЗУ. №7 горит при ответе устройства на запрос с ПК.
- Регулятор контрастности символьного ЖКИ.
- Сигнализатор для будильника.
- Жидко - кристаллический индикатор (ЖКИ).
- Кнопки управления устройством.
- Разъем для подключения внешнего термодатчика DS18B20.
- Кнопка RESET. Используется для перепрошивки и просто, для рестарта устройства.
- Встроенный термодатчик DS18B20.
- Разъем USB для подключения к компьютеру.
- Инфра - красный светодиод. В настройках будильника его можно выбрать в качестве сигнализатора.
- Приемник сигнала с ПДУ.
- Индикатор работоспособности вешнего блока питания.
- Перемычка для выбора источника питания. Когда замкнуты средний и левый контакты, питание от USB порта, средний и правый – от внешнего БП. БП может быть переменного или постоянного напряжения 8-20 В.
- Подключение внешнего блока питания.
- Подключение нагрузок. Как видно на рисунку, справа расположены контакты для подключения 8 нагрузок. Четыре контакта VCC – общие и соединены вместе. Остальные контакты (О1 – О8) – это ключи которые включают/отключают нагрузки. Если, к примеру, Вы хотите подключить рупор, то «+» нужно подключить к VCC а «-» к одному с выходов (О1-О8).
3.Пульт дистанционного управления
Очень долго я ходил по магазинам и базару чтобы найти самый подходящий пульт, в разных магазинах были разные пульты, но один пульт был во всех магазинах в которых я побывал. Вам не сложно будет приобрести это пульт так как он очень распространен и его стоимость не более 3$. Вот его фото:
Рис. 3.1. пульт дистанционного управления.
ПДУ имеет 35 кнопок. Красной (Pon) включается/отключается режим приема команд. Если на устройстве НЕ будет гореть второй светодиод, то устройство будет реагировать только на кнопку Pon (красная снизу). Если горит второй светодиод, а третий – нет, то команды будут обрабатываться устройством. Зеленой кнопкой включается/отключается режим приема команд для компьютера (при включении загорается третий светодиод).
4. Управление устройством
В этом подразделе будет рассказано, как управлять устройством (нужно чтобы горел второй светодиод и НЕ горел третий).
Функции кнопок ПДУ.
В режиме управления устройством для управления используются 5 кнопок:
- BTN_MUTE – отключение сигнала будильника.
- BTN_0 … BTN9 – включить/отключить соответствующую нагрузку.
- BTN_TXT – Подтвердить выбор подпункта меню.
- BTN_ChUp – Следующий пункт меню.
- BTN_ChDown – Предыдущий пункт меню.
- BTN_VolInc – Следующий подпункт меню.
- BTN_VolDec – Предыдущий подпункт меню.
- Pon – Отключить прием команд с ПДУ.
- Pst – включить/отключить прием команд для компьютера.
Меню.
Меню устройства еще слаборазвитое, но будет развиваться в следующих версиях прошивки. Сейчас оно имеет всего 2 пункта и несколько подпунктов.
Рис. 4.1. Меню устройства.
В первом пункте меню (Alarms) можно просматривать расписание звонков будильника (их всего 5). Если в подпунктах “Alarm 1” – “Alarm 5” нажать BTN_TXT то будильник включиться или отключиться. В подпунктах “Load timing” и “Save timing” можно сохранить или загрузить настройки будильников с ПЗУ.
Во втором пункте меню можно отформатировать микросхему ПЗУ. ВНИМАНИЕ: после форматирования обязательно отключите внешний термодатчик и нажмите кнопку RESET, после этого устройство определит адрес внутреннего термодатчика и на дисплее появиться надпись «Reset Device», нажмите кнопку RESET, подключите внешний термодатчик и еще раз нажмите кнопку RESET.
Также на устройстве в левом нижнем углу есть 4 кнопки перехода по пунктам меню.
5. Связь с компьютером. Работа с программой “UD Control
Подключение
«Universal Device» имеет возможность подключения к компьютеру. Специально для работы с устройством создана программа “UD Control”, в этом мануале будет описана работа с версией программы 1.0.2.2. Программа работает на операционных системах Windows Home Edition и выше (включая Windows 7 и Windows Vista).
Для установки программы запустите файл UDC_Setup.exe и укажите папку (по умолчанию C:\Program Files\Universal Device\UD Control ). После этого подключите устройство к ПК, Windows найдет новое оборудование и запросит драйвера, укажите папку с драйвером (c:\Program Files\Universal Device\UD Control\windows-driver\ ). После успешной установки драйвера запустите программу “UD Control” с рабочего стола. Если в нижнем левом углу программы будет написано «Устройство не подключено», то проверьте надежность соединения USB кабеля и правильность установки драйверов, так же желательно перезагрузить ПК.
UD Control
Программа UD Control создана автором данного проекта (тоесть мной). Для удобства, она имеет несколько вкладок чтобы быстро ориентироваться. Настройки программы сохраняются в системном реестре.
При первом запуске программа может показать предупреждение об ошибке, просто нажмите ОК и перезапустите программу.
В этой статье будет описана работа с версией программы 1.0.2.2.
Настройки
Рис. 5.1. Вкладка «Настройки»
Частота опроса. Задержка, с которой программа опрашивает устройство. Рекомендуемое значение 50 мс.
Показывать большое сообщение. При переключении треков в Winamp или выборе управляемой программы, на мониторе появляется большое сообщение с двумя строками.
Обновить прошивку устройства. Прошивка устройства, если при запуске программы появиться сообщение о несовместимости текущей версии программы с текущей версией прошивки то нажмите эту кнопку и следуйте дальнейшим указаниям программы. Таким образом прошивка устройства обновиться до последней прошивки, поддерживаемой текущей версией программы.
Функции, которые расположены в третей рамке, думаю, всем понятны.
Будильник
Рис. 5.2. Вкладка «Будильник»
Тайминг. Длительность сигнала звонка.
Повторительность. Длина сигнала и паузы.
Источник. Можно выбрать в качестве сигнализатора встроенный Буззер, ИК-светодиод или любой с восьми выходов, к которым подключен сигнализатор.
Задайте параметры будильников, после чего нажмите «Записать» и расписание звонков будет передано устройству, если установить галочку возле «Запись в ПЗУ», то расписание будет сохранено в ПЗУ (энергонезависимая память) устройства.
Температура
Рис. 5.3. Вкладка «Температура»
На данной вкладке можно увидеть температуру обеих термодатчиков, слева – внешний, справа – внутренний. Ниже, расположен график температуры. Каждую минуту график обновляется, и число снизу увеличивается на 1.
Если подвести курсор к температурной метке, то появиться окошко в котором написано время и дата запуска программы, минимальная и максимальная температура на выбранном термодатчике и время + дата, когда она была зафиксирована.
Названия датчиков (те, что сейчас Inside и Outside) можно изменять. Для этого нажмите на температурной метке, выскочит окошко и формой ввода, введите в него новое название и нажмите ОК.
Управление нагрузками
Рис. 5.3. Вкладка «Нагрузки»
Нагрузками можно управлять не только с помощью ПДУ, но и с помощью компьютера (при подключении к компьютеру нагрузками так же можно управлять с ПДУ).
Сверху размещены кнопки для управления нагрузками, если возле кнопки зеленый маркер – выход активен, красная – не активен. Чтобы включить/отключить нагрузку нужно просто нажать на соответствующую кнопку. Кнопку для каждой нагрузки можно переименовать, для этого, нажмите на соответствующую кнопку, перед этим зажав левый “Shift”, появится такое же окошко как и при переименовании температурной метки.
Автоматическое управление нагрузками
Программа для ПК способна самостоятельно управлять нагрузками, то есть в автоматическом режиме.
Для каждой нагрузки можно задать свой способ управления, программа имеет 4 алгоритма:
- Вручную – обычное управление с ПДУ или кнопками программы.
- По времени – управление нагрузками исходя из значений времени заданных пользователем.
- По температуре Inside – управление нагрузками исходя из значений температуры внутреннего термодатчика заданных пользователем.
- По температуре Outside – управление нагрузками исходя из значений температуры внутреннего термодатчика заданных пользователем.
Также нужно задать условие управление, в программе иметься шесть условий:
- В пределах Значения 1 и Значения 2 – Нагрузка включается, когда текущая температура или время находятся в пределах Значения 1 и Значения 2. При временном способе можно использовать, например, когда нужно включить электроприбор в определенное время и потом его выключить. Например, Значение 1 = 7:30:00, Значение 2 = 7:35:00, в качестве нагрузки – электрочайник, в таком случает он сам, когда Вы еще спите включиться, нагреет воду и выключиться.
- За пределами Значения 1 и Значения 2 – Аналогично первому случаю только нагрузка включается в не пределах Значения 1 и Значения 2.
- Выше чем Значение 1.
- Ниже чем Значение 1.
- Включать выше Значения 1, выключать ниже Значения 2.
- Включать ниже Значения 1, выключать выше Значения 2 – Если у вас есть электрообогреватель в котором нет функции термостата, Вы можете добавить ему эту функцию с помощью Universal Device. Подключите в качестве одной с нагрузок этот обогреватель. Выберите способ управления «По температуре Inside», Значение 1 = 25, Значение 2 = 30. И нажмите «Сохранить». Теперь, когда температура в комнате упадет ниже 25С то обогреватель включиться и нагреет температуру в комнате до 30С, после чего, обогреватель сам отключиться. И все это, делается автоматически, без Вашего участия, Вам нужно всего лишь задать нужный алгоритм, а Universal Device сам об это позаботиться!
Внимание! Для того, чтобы управлять более мощной нагрузкой чем 500мА, нужно собрать ключ на симисторе, тиристоре или электромагнитном реле. Вот схема с реле:
Рис. 5.4. Плата с двумя реле
Пульт дистанционного управления (ПДУ)
Рис. 5.5. Вкладка «ПДУ»
С помощью ПДУ можно управлять многими функциями компьютера. Справа расположен листинг с принятыми командами, чуть ниже – последняя принятая команда, даже если она не предназначена для компьютера!
С ПДУ можно управлять такими функциями:
- Команды MS Windows – Включить, выключить, открыть CD-ROM и т.д.
- Манипулятор Мышь – двигать курсор, нажимать кнопки. Можно выбирать скорость передвижения и ускорение. Для удобства, есть возможность симуляции двойного нажатия кнопки мыши.
- Клавиатура – Нажатие клавиш клавиатуры с помощью джойстика.
- Winamp – Управление популярнейшим плеером.
И еще одна, очень хорошая функция UD Control – отображение большого сообщения.
Для каждого пункта есть табличка в которой нужно задать значения кнопок.
Для того, чтобы выбрать, чем будем управлять с пульта, нужно нажать на ПДУ кнопку BTN_MENU. После чего, на экране появиться большое сообщение:
После этого, вам нужно нажать цифровую кнопку на пульте для выбора приложения:
-
Windows.
-
Mouse.
-
Keyboard.
-
Winamp.
После чего, появиться такое же сообщение, только в нижней строке будет «Выбрано Winamp».
Теперь, когда нажать кнопку открытия Winamp, соответственно, откроется Winamp. Если нажать на пульте кнопку, которая по таблице в программе посылает команду Play, то появиться большое сообщение и, если оно не помещается в выделенную для него область, то прокручивается (как бегущая строка):
Сообщение прокручивается
Завершение
Я буду поддерживать проект, поэтому программа UD Control, а соответственно, и прошивка устройства будут улучшаться, все обновления будут доступны на сайте http://unidev.org.ua/.
За прошитым микроконтроллером (в дальнейшем устройство, как писалось выше, можно перепрошивать прямо с программы), а так же по всем вопросам, которые касаются устройства (включая покупку готового устройства) обращайтесь на имейл: univdevice {собака} ya.ru (вместо " {собака} " поставьте @) .
Внимание! Автор проекта принимает заказы на разработку устройств на микроконтроллерах, по вопросам разработки обращайтесь на devices2000 {собака} ya.ru .
Список радиоэлементов
Обозначение | Тип | Номинал | Количество | Примечание | Магазин | Мой блокнот |
---|---|---|---|---|---|---|
IC1 | Микроконтроллер | ATmega16-P | 1 | Поиск в магазине Отрон | ||
IC2-IC4, IC9 | Сдвиговый регистр | CD74HC595 | 4 | Поиск в магазине Отрон | ||
IC5 | Линейный регулятор | LM7805 | 1 | Поиск в магазине Отрон | ||
IC7 | Составной транзистор | ULN2003 | 1 | Поиск в магазине Отрон | ||
IC8 | Микросхема | АТ24С64 | 1 | Поиск в магазине Отрон | ||
J1, J2 | Датчик температуры | DS18B20 | 2 | Поиск в магазине Отрон | ||
IR1 | ИК-приемник | TSOP1736 | 1 | Поиск в магазине Отрон | ||
T1, T2 | Биполярный транзистор | BC547 | 2 | Поиск в магазине Отрон | ||
Q3 | MOSFET-транзистор | IRF6648 | 1 | Поиск в магазине Отрон | ||
В1 | Диодный мост | 1 | Поиск в магазине Отрон | |||
D1, D2 | Стабилитрон | 3.6 В | 2 | Поиск в магазине Отрон | ||
D3 | ИК-светодиод | 1 | Поиск в магазине Отрон | |||
С1, С2 | Конденсатор | 22 пФ | 2 | Поиск в магазине Отрон | ||
С3, С8 | Электролитический конденсатор | 10 мкФ | 2 | Поиск в магазине Отрон | ||
С5, С9 | Конденсатор | 0.1 мкФ | 2 | Поиск в магазине Отрон | ||
CONTRAST | Подстроечный резистор | 1 кОм | 1 | Поиск в магазине Отрон | ||
R1 | Подстроечный резистор | 4.7 кОм | 1 | Поиск в магазине Отрон | ||
R2, R3 | Резистор | 68 Ом | 2 | Поиск в магазине Отрон | ||
R4 | Резистор | 1.5 кОм | 1 | Поиск в магазине Отрон | ||
R5, R12 | Резистор | 2.2 кОм | 2 | Поиск в магазине Отрон | ||
R6-R8, R11, R13, R15-R23, R25, R27 | Резистор | 200 Ом | 16 | Поиск в магазине Отрон | ||
R9, R10, R26 | Резистор | 10 кОм | 3 | Поиск в магазине Отрон | ||
R14, R28 | Резистор | 8.2 кОм | 2 | Поиск в магазине Отрон | ||
Q1 | Кварцевый резонатор | 16 МГц | 1 | Поиск в магазине Отрон | ||
Q2 | Кварцевый резонатор | 32768 Гц | 1 | Поиск в магазине Отрон | ||
DIS1 | LCD-дисплей | TUXGR_16x2_R2 | 1 | Поиск в магазине Отрон | ||
4-х разрядный светодиодный цифровой индикатор | 2 | В схеме отсутствует и устанавливается при надобности | Поиск в магазине Отрон | |||
S1-S5 | Тактовая кнопка | 5 | Поиск в магазине Отрон | |||
LED1-LED9 | Светодиод | 9 | Пять зеленых, четыре красны | Поиск в магазине Отрон | ||
SG2 | Буззер | 1 | Поиск в магазине Отрон | |||
J1, J2 | Разьем для датчиков температуры | 2 | Поиск в магазине Отрон | |||
J4 | Разьем для исполнительных устройств | 1 | Поиск в магазине Отрон | |||
J7 | Разьем для питания | 1 | Поиск в магазине Отрон | |||
J9 | Джампер | 1 | Поиск в магазине Отрон | |||
Х1 | USB-разьем | 1 | Поиск в магазине Отрон | |||
Скачать список элементов (PDF)
Прикрепленные файлы:
- udc.rar (78 Кб)
- udc_1_0_2_2_setup.rar (1979 Кб)
- users_manual.rar (408 Кб)
Комментарии (11) | Я собрал (0) | Подписаться
Для добавления Вашей сборки необходима регистрация
Если Вам понравилось устройство, то Вы можете купить здесь http://unidev.ho.ua/shop.html
В самый раз к моей электрической китайской картине!(вместо старой, сгоревшей платы)
А файла прошивки МК нет?
Хочу сделать открытым ихсодники проекта. Только вот они запутаны, редактировать их у меня нет времени.
Вопрос: стоит ли выкладывать исходники и для каких целей они Вам нужны?
Если найдется хотя бы 10 позитивных ответов то выкладываю))))
Тогда я закажу Вам сразу много таких штук и к каждой розетке приделаю в своем доме! На компе сделаю прогу которая все опросит и покажет где включено, и спросит что включить... И лучше чтобы это все опен соурс было.