Universal device

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

Устройство «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 FilesUniversal DeviceUD Control ). После этого подключите устройство к ПК, Windows найдет новое оборудование и запросит драйвера, укажите папку с драйвером (c:Program FilesUniversal DeviceUD Controlwindows-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-P1
    IC2-IC4, IC9
    Сдвиговый регистрCD74HC5954
    IC5
    Линейный регуляторLM78051
    IC7
    Составной транзисторULN20031
    IC8
    МикросхемаАТ24С641
    J1, J2
    Датчик температурыDS18B202
    IR1
    ИК-приемникTSOP17361
    T1, T2
    Биполярный транзисторBC5472
    Q3
    MOSFET-транзисторIRF66481
    В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_R21

    4-х разрядный светодиодный цифровой индикатор2
    В схеме отсутствует и устанавливается при надобностиS1-S5
    Тактовая кнопка5
    LED1-LED9
    Светодиод9
    Пять зеленых, четыре красныSG2
    Буззер1
    J1, J2
    Разьем для датчиков температуры2
    J4
    Разьем для исполнительных устройств1
    J7
    Разьем для питания1
    J9
    Джампер1
    Х1
    USB-разьем1
    Добавить все

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

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

    Добавить комментарий

    Ваш адрес email не будет опубликован.