Главная » Микроконтроллеры
Призовой фонд
на октябрь 2017 г.
1. Термометр Relsib WT51
Рэлсиб
2. 1000 руб
PCBWay
3. Регулируемый паяльник 60 Вт
Паяльник
4. 100 руб.
От пользователей

Universal device

Универсальное устройство: часы, термометр, термостат, будильник, система удалённого управления

Устройство "Universal device" (Универсальное устройство) содержит в себе функции нескольких устройств, которые сильно облегчают жизнь людям, автоматизируя жилую площадь. Так как устройство стремительно улучшается, оно имеет свой USB загрузчик, поэтому для обновления прошивки достаточно просто подключить Universal device к компьютеру, включить режим самопрограммирования и запустить на ПК программу для обновления прошивки. При этом, отсутствует опасность заблокировать устройство «навечно», как это иногда бывает при обновлении прошивки мобильных телефонов.

Содержание:

  1. Краткое описание возможностей устройства.
  2. Схема.
  3. Пульт дистанционного управления.
  4. Управление устройством.
  5. Связь с компьютером. Работа с программой "UD Control".
  6. Завершение.

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. Большой сегментный индикатор. На нем попеременно отображается время и температура(слева внешний термометр, справа - внутренний).
  2. Индикаторы. Два крайние (№1 и №8) горят постоянно для того, чтобы в темноте было проще понять где какой индикатор. №2 – включен прием команд с ПДУ. №3 – команда с ПДУ предназначена для компьютера. №4 зарезервирован. №5 – чтение с ПЗУ. №6 – запись с ПЗУ. №7 горит при ответе устройства на запрос с ПК.
  3. Регулятор контрастности символьного ЖКИ.
  4. Сигнализатор для будильника.
  5. Жидко - кристаллический индикатор (ЖКИ).
  6. Кнопки управления устройством.
  7. Разъем для подключения внешнего термодатчика DS18B20.
  8. Кнопка RESET. Используется для перепрошивки и просто, для рестарта устройства.
  9.  Встроенный термодатчик DS18B20.
  10. Разъем USB для подключения к компьютеру.
  11. Инфра - красный светодиод. В настройках будильника его можно выбрать в качестве сигнализатора.
  12. Приемник сигнала с ПДУ.
  13. Индикатор работоспособности вешнего блока питания.
  14. Перемычка для выбора источника питания. Когда замкнуты средний и левый контакты, питание от USB порта, средний и правый – от внешнего БП. БП может быть переменного или постоянного напряжения 8-20 В.
  15. Подключение внешнего блока питания.
  16. Подключение нагрузок. Как видно на рисунку, справа расположены контакты для подключения 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.

Настройки

mc41-7.jpg
Рис. 5.1. Вкладка «Настройки»

Частота опроса. Задержка, с которой программа опрашивает устройство. Рекомендуемое значение 50 мс.
Показывать большое сообщение. При переключении треков в Winamp или выборе управляемой программы, на мониторе появляется большое сообщение с двумя строками.
Обновить прошивку устройства. Прошивка устройства, если при запуске программы появиться сообщение о несовместимости текущей версии программы с текущей версией прошивки то нажмите эту кнопку и следуйте дальнейшим указаниям программы. Таким образом прошивка устройства обновиться до последней прошивки, поддерживаемой текущей версией программы.

Функции, которые расположены в третей рамке, думаю, всем понятны.

Будильник

mc41-8.jpg
Рис. 5.2. Вкладка «Будильник»

Тайминг. Длительность сигнала звонка.
Повторительность. Длина сигнала и паузы.
Источник. Можно выбрать в качестве сигнализатора встроенный Буззер, ИК-светодиод или любой с восьми выходов, к которым подключен сигнализатор.
Задайте параметры будильников, после чего нажмите «Записать» и расписание звонков будет передано устройству, если установить галочку возле «Запись в ПЗУ», то расписание будет сохранено в ПЗУ (энергонезависимая память) устройства.

Температура

mc41-9.jpg
Рис. 5.3. Вкладка «Температура»

На данной вкладке можно увидеть температуру обеих термодатчиков, слева – внешний, справа – внутренний. Ниже, расположен график температуры. Каждую минуту график обновляется, и число снизу увеличивается на 1.
mc41-10.jpgmc41-11.jpg   Если подвести курсор к температурной метке, то появиться окошко в котором написано время и дата запуска программы, минимальная и максимальная температура на выбранном термодатчике и время + дата, когда она была зафиксирована.
Названия датчиков (те, что сейчас Inside и Outside) можно изменять. Для  этого нажмите на температурной метке, выскочит окошко и формой ввода, введите в него новое название и нажмите ОК.

mc41-12.jpg

Управление нагрузками

mc41-13.jpg
Рис. 5.3. Вкладка «Нагрузки»

Нагрузками можно управлять не только с помощью ПДУ, но и с помощью компьютера (при подключении к компьютеру нагрузками так же можно управлять с ПДУ).
Сверху размещены кнопки для управления нагрузками, если возле кнопки зеленый маркер – выход активен, красная – не активен. Чтобы включить/отключить нагрузку нужно просто нажать на соответствующую кнопку. Кнопку для каждой нагрузки можно переименовать, для этого, нажмите на соответствующую кнопку, перед этим зажав левый “Shift”, появится такое же окошко как и при переименовании температурной метки.

Автоматическое управление нагрузками

Программа для ПК способна самостоятельно управлять нагрузками, то есть в автоматическом режиме.
Для каждой нагрузки можно задать свой способ управления, программа имеет 4 алгоритма:

  • Вручную – обычное управление с ПДУ или кнопками программы.
  • По времени – управление нагрузками исходя из значений времени заданных пользователем.
  • По температуре Inside – управление нагрузками исходя из значений температуры внутреннего термодатчика заданных пользователем.
  • По температуре Outside – управление нагрузками исходя из значений температуры внутреннего термодатчика заданных пользователем.

Также нужно задать условие управление, в программе иметься шесть условий:

  1. В пределах Значения 1 и Значения 2 – Нагрузка включается, когда текущая температура или время находятся в пределах Значения 1 и Значения 2. При временном способе можно использовать, например, когда нужно включить электроприбор в определенное время и потом его выключить. Например, Значение 1 = 7:30:00, Значение 2 = 7:35:00, в качестве нагрузки – электрочайник, в таком случает он сам, когда Вы еще спите включиться, нагреет воду и выключиться.
  2. За пределами Значения 1 и Значения 2 – Аналогично первому случаю только нагрузка включается в не пределах Значения 1 и Значения 2.
  3. Выше чем Значение 1.
  4. Ниже чем Значение 1.
  5. Включать выше Значения 1, выключать ниже Значения 2.
  6. Включать ниже Значения 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. После чего, на экране появиться большое сообщение:
mc41-18.gif

После этого, вам нужно нажать цифровую кнопку на пульте для выбора приложения:

  1. Windows.

  2. Mouse.

  3. Keyboard.

  4. Winamp.

После чего, появиться такое же сообщение, только в нижней строке будет «Выбрано Winamp».
Теперь, когда нажать кнопку открытия Winamp, соответственно, откроется Winamp. Если нажать на пульте кнопку, которая по таблице в программе посылает команду Play, то появиться большое сообщение и, если оно не помещается в выделенную для него область, то прокручивается (как бегущая строка):
mc41-19.gif

Сообщение прокручивается

Завершение

Я буду поддерживать проект, поэтому программа UD Control, а соответственно, и прошивка устройства будут улучшаться, все обновления будут доступны на сайте http://unidev.org.ua/.

За прошитым микроконтроллером (в дальнейшем устройство, как писалось выше, можно перепрошивать прямо с программы), а так же по всем вопросам, которые касаются устройства (включая покупку готового устройства) обращайтесь на имейл: univdevice {собака} ya.ru (вместо " {собака} " поставьте @) .
Внимание! Автор проекта принимает заказы на разработку устройств на микроконтроллерах, по вопросам разработки обращайтесь на devices2000 {собака} ya.ru .

Список радиоэлементов

Обозначение Тип Номинал Количество ПримечаниеМагазинМой блокнот
IC1 МикроконтроллерATmega16-P1 Поиск в LCSCВ блокнот
IC2-IC4, IC9 Сдвиговый регистр
CD74HC595
4 Поиск в LCSCВ блокнот
IC5 Линейный регулятор
LM7805
1 Поиск в LCSCВ блокнот
IC7 Составной транзистор
ULN2003
1 Поиск в LCSCВ блокнот
IC8 МикросхемаАТ24С641 Поиск в LCSCВ блокнот
J1, J2 Датчик температуры
DS18B20
2 Поиск в LCSCВ блокнот
IR1 ИК-приемникTSOP17361 Поиск в LCSCВ блокнот
T1, T2 Биполярный транзистор
BC547
2 Поиск в LCSCВ блокнот
Q3 MOSFET-транзистор
IRF6648
1 Поиск в LCSCВ блокнот
В1 Диодный мост1 Поиск в LCSCВ блокнот
D1, D2 Стабилитрон3.6 В2 Поиск в LCSCВ блокнот
D3 ИК-светодиод1 Поиск в LCSCВ блокнот
С1, С2 Конденсатор22 пФ2 Поиск в LCSCВ блокнот
С3, С8 Электролитический конденсатор10 мкФ2 Поиск в LCSCВ блокнот
С5, С9 Конденсатор0.1 мкФ2 Поиск в LCSCВ блокнот
CONTRAST Подстроечный резистор1 кОм1 Поиск в LCSCВ блокнот
R1 Подстроечный резистор4.7 кОм1 Поиск в LCSCВ блокнот
R2, R3 Резистор
68 Ом
2 Поиск в LCSCВ блокнот
R4 Резистор
1.5 кОм
1 Поиск в LCSCВ блокнот
R5, R12 Резистор
2.2 кОм
2 Поиск в LCSCВ блокнот
R6-R8, R11, R13, R15-R23, R25, R27 Резистор
200 Ом
16 Поиск в LCSCВ блокнот
R9, R10, R26 Резистор
10 кОм
3 Поиск в LCSCВ блокнот
R14, R28 Резистор
8.2 кОм
2 Поиск в LCSCВ блокнот
Q1 Кварцевый резонатор16 МГц1 Поиск в LCSCВ блокнот
Q2 Кварцевый резонатор32768 Гц1 Поиск в LCSCВ блокнот
DIS1 LCD-дисплейTUXGR_16x2_R21 Поиск в LCSCВ блокнот
4-х разрядный светодиодный цифровой индикатор2 В схеме отсутствует и устанавливается при надобностиПоиск в LCSCВ блокнот
S1-S5 Тактовая кнопка5 Поиск в LCSCВ блокнот
LED1-LED9 Светодиод9 Пять зеленых, четыре красныПоиск в LCSCВ блокнот
SG2 Буззер1 Поиск в LCSCВ блокнот
J1, J2 Разьем для датчиков температуры2 Поиск в LCSCВ блокнот
J4 Разьем для исполнительных устройств1 Поиск в LCSCВ блокнот
J7 Разьем для питания1 Поиск в LCSCВ блокнот
J9 Джампер1 Поиск в LCSCВ блокнот
Х1 USB-разьем1 Поиск в LCSCВ блокнот
Добавить все

Скачать список элементов (PDF)

Прикрепленные файлы:

Теги:

Бражников Михаил Опубликована: 2010 г. 0 0
Я собрал 0 0
x

Оценить статью

  • Техническая грамотность
  • Актуальность материала
  • Изложение материала
  • Полезность устройства
  • Повторяемость устройства
  • Орфография
0

Средний балл статьи: 0 Проголосовало: 0 чел.

Комментарии (11) | Я собрал (0) | Подписаться

0
Кирилл #
Автору большой РЕСПЕКТ и мое личное уважение.Отличная современная и нужная конструкция.
Ответить
0
Mishka #
Спасибо за уважуху))))))

Если Вам понравилось устройство, то Вы можете купить здесь http://unidev.ho.ua/shop.html
Ответить
0
Никита #
А устройство очень даже ничего!!!

В самый раз к моей электрической китайской картине!(вместо старой, сгоревшей платы)

А файла прошивки МК нет?
Ответить
0
Mishka #
Есть прошитый МК
Ответить
0
Юрий #
Планируешь ли ты делать открытым код прошивки и исходник конфигуратора?
Ответить
+1
Mishka #
Привет!

Хочу сделать открытым ихсодники проекта. Только вот они запутаны, редактировать их у меня нет времени.

Вопрос: стоит ли выкладывать исходники и для каких целей они Вам нужны?

Если найдется хотя бы 10 позитивных ответов то выкладываю))))
Ответить
+1
Alexey #
Очень интересное устройство, но исходники с прошивкой не помешали бы.
Ответить
0
Максим #
Нужно не универсал девайс в смысле все может, а универсал девайс, который может только подключиться к ethernet, а с другой стороны либо ЦАП, либо входной контакт, либо выходной. Уже к ЦАПу можно подключить термометр или другую периферию. Входной - это типа ты проверяешь включен свет или нет, выходной сам включаешь - отключаешь. Все! И чтобы стоило это 200 рублей. Лучше чтобы без блока питания, через POE.
Тогда я закажу Вам сразу много таких штук и к каждой розетке приделаю в своем доме! На компе сделаю прогу которая все опросит и покажет где включено, и спросит что включить... И лучше чтобы это все опен соурс было.
Ответить
0
Юрий #
Интересное устройство. Можно ли расширить возможности - добавить датчики давления и влажности и, соответственно, вывод информации на дисплей.
Ответить
0
Юрий #
Народ! Дайте прошивку! Устройство спаяно - лежит без дела.
Ответить
0
Юрий #
Собрал это устройство. Работает отлично. Внедрю в свой быт. Рекомендую!
Ответить
Добавить комментарий
Имя:
E-mail:
не публикуется
Текст:
Защита от спама:
В чем измеряется напряжение?
Файлы:
 
Для выбора нескольких файлов использйте CTRL

Программатор Pickit3
Программатор Pickit3
Набор начинающего радиолюбителя Металлоискатель MD3010II
вверх