Например TDA7294

РадиоКот >Схемы >Цифровые устройства >Автоматика >

Теги статьи: Добавить тег

Освежитель воздуха управляемый освещением

Автор: kramolnic
Опубликовано 31.07.2020
Создано при помощи КотоРед.

Недавно приобрёл автоматический освежитель воздуха. Это устройство, которое периодически распыляет ароматический аэрозоль из вставляемого внутрь заменяемого баллона. Внутри расположен таймер, управляющий электродвигателем, который через редуктор при помощи нехитрого механизма нажимает на клапан баллончика. Таймер периодически на короткое время (около 1сек.) подаёт питание на электродвигатель. Работает от двух элементов питания типа АА.

К сожалению устройство оказалось не очень удобным:

  • таймер устройства имеет возможность выбрать лишь один из трёх интервалов срабатывания;
  • аэрозольный ароматизатор для маленького помещения весьма сильный, при использовании устройства на максимальной мощности (частоте распыления) аромат может не выветриваться и вызывать дискомфорт, а на минимальной его эффективность может оказаться недостаточной;
  • распылитель может сработать в момент нахождения пользователя в помещении;
  • лично у нас большую часть времени все проживающие находятся не дома, поэтому распылитель по таймеру зря расходует аэрозоль и батарейки — производитель заявляет до 60 дней работы одного баллона (на минимальной мощности), к тому же хотелось бы избежать стойкого постоянного цветочного аромата в помещении.

Захотелось как-нибудь устранить эти недостатки. В результате экспериментов была разработана схема, которая позволяет управлять освежителем с помощью освещения в туалетной комнате. Устройство реализует следующий алгоритм работы:

  1. При включении света в помещении контроллер активируется и начинает отсчёт времени («световое время»).
  2. После выключения света контроллер ждёт примерно 5 секунд («темновое время»), затем проверяет отсчитанное «световое время». Если свет был включён более 2-х минут, срабатывает освежитель. При этом дверь в помещение уже закрыта, свет выключен, пользователь не почувствует резкого аромата освежителя, а следующий за ним посетитель обнаружит лишь цветочный аромат =)
  3. Если «световое время» будет меньше времени срабатывания, контроллер перейдёт в режим ожидания (шаг 5) без подачи аэрозоля.
  4. Если во время отсчёта «темнового времени» свет был вновь включён, продолжится отсчёт «светового времени», а «темновое время» будет сброшено до следующего выключения света в помещении (шаг 2).
  5. Контроллер переходит в режим ожидания следующего включения света.

Доработанный освежитель стал удобнее:

  • срабатывает только при наличии жильцов (пользователей) в жилом помещении, что значительно экономит весьма недешевый аэрозоль и элементы питания;
  • при совместном использовании помещения несколькими пользователями с временным разделением посещений происходит маскировка неприятных запахов — отсутствует необходимость ручного распыления освежителя;
  • отсутствует постоянный навязчивый ароматический фон от освежителя;
  • исключается срабатывание освежителя в присутствии пользователя (при включённом освещении);
  • распыление аэрозоля происходит строго дозировано, равными порциями, в отличие от ручных освежителей;
  • в случае наличия аллергиков или чувствительных людей уменьшается их непосредственный контакт с большими концентрациями аэрозоля, т.к. срабатывание происходит только после закрытия двери и выключения света в помещении, а проветривание помещения от всех запахов при наличии достаточной вентиляции происходит в течение нескольких минут.

Принципиальная схема устройства

Основа устройства — крохотный микроконтроллер (U1) ATtiny10-TSHR в шестилапом корпусе SOT23-6 производства Atmel.

Фоторезистор R1 и резистор R2 образуют светоуправляемый делитель напряжения. Теневое сопротивление фоторезистора — 500кОм, поэтому в темноте на входе PB2 микроконтроллера присутствует высокий логический уровень (около 2.5В при питании 3В). При освещении фоторезистора его сопротивление уменьшается до ~24кОм, на входе PB2 появляется низкий логический уровень (около 600мВ), вызывающий прерывание микроконтроллера и вывод его из спящего режима. При подобранных номиналах ток через резисторы делителя составляет не более 27мкА в активном режиме и не более 5мкА в режиме ожидания (в темноте).
Изменение чувствительности фотодатчика можно производить подбором резистора R2.

Светодиод D1 служит для индикации состояния устройства.
Резистор R3 — токоограничивающий для светодиода.

С выхода Vdrive (выход PB0 контроллера U1) через резистор R4 подаётся управляющий сигнал на базу ключевого транзистора, оставленного на штатной плате освежителя.

Светодиод D1 — из набора ЧИП-светодиодов EK-HL1206RGBWY, сверхяркий, зелёного цвета (тип 1206, паспортный макс. ток 20мА, напряжение падения 3.0 … 3.3В, угол свечения 130град.) Выбранный светодиод даже при малом токе питания обеспечивает значительную яркость свечения.

Фоторезистор — VT90N2. При применении другого может потребоваться корректировка R2. Остальные резисторы — SMD типоразмера 1206.

Управляющая программа

Управляющая программа (исходный код на GitHub Gist) разработана на языке Си для компилятора AVR-GCC.

После подачи питания микроконтроллер настраивает периферийное оборудование, а затем в целях экономии энергии погружается в глубокий сон (режим Power down). Ядро контроллера тактируется от встроенного тактового генератора 128кГц с делителем 256. Минимальная частота тактирования выбрана в целях снижения энергопотребления.

При засветке фоторезистора (включили свет в помещении) возникает прерывание, по которому контроллер просыпается и переходит в активный режим. Контроллер запускает таймер, настроенный на частоту 1Гц. По прерыванию от таймера происходит получение состояния фотодатчика и подсчет «светового» и «темнового» времени: если свет горит, увеличивается счетчик светового времени и сбрасывается счетчик темнового времени. Если свет не горит, увеличивается счетчик темнового времени.

В главном цикле программы в активном режиме проверяются значения счетчиков времени. Если свет погашен более 5сек., то проверяется значение светового времени: если свет был включён более 150сек., то подается питание на двигатель освежителя воздуха.

Наконец, контроллер запускает сторожевой (watchdog) таймер на время 1сек. и переходит в состояние ожидания сброса.

По срабатыванию сторожевого таймера происходит перезагрузка контроллера и переход в начальное состояние - в т.ч. снимается питание с двигателя.

Отмечу многофункциональное назначение светодиода D1. После освещения фоторезистора устройство активируется, начинается отсчёт «светового времени», но светодиод при наличии освещения погашен с целью экономии батарей (свечение при освещении всё равно малозаметно). Если теперь фоторезистор затемнить, светодиод будет мигать, отсчитывая секунды — это индикация нормальной работы программы и таймера. Если до окончания «темнового времени» вновь осветить фоторезистор, устройство продолжит отсчёт «светового времени», но светодиод вновь будет погашен. Таким образом можно оценить чувствительность и работоспособность фотодатчика, найти наилучшее размещение освежителя в помещении по отношению к осветительным приборам. Наконец, если разрядятся батарейки (ниже 1.8В), контроллер перестанет работать и светодиод перестанет мигать.

Прошивка микроконтроллера

Запрограммировать эту блоху (ATtiny10) оказалось не слишком просто. Универсальный программатор Тритон, который я использую для программирования контроллеров AVR в DIP-корпусах, не содержит в своей базе микросхему ATtiny10. Пришлось искать другой способ программирования.

Удалось найти исходный код утилиты pi_tpi для программирования ATtiny4/5/9/10 при помощи одноплатного компьютера Raspberry Pi («малина»). Утилита позволяет читать и записывать память микроконтроллеров Attiny через порты ввода-вывода (GPIO).

У меня в наличии имеется плата одной из первых версий: Raspberry Pi 1 Model B 512 (2011.12). При попытке использовать pi_tpi оказалось, что утилита разработана для более новых версий Raspberry Pi — у моей (старой) малины отличается начальный адрес портов GPIO (0x20200000 вместо 0x3F200000 для новых версий). Поэтому исходная версия утилиты была форкнута в мой репозиторий pi_tpi на GitHub где я внёс несколько исправлений.

На малине установлена операционная система Raspbian. Версии ядра Linux и компилятора avr-gcc:

Сборка утилиты pi_tpi выполняется из консоли следующим образом:

  1. Скопировать каталог исходных файлов в домашний каталог (~/pi_tpi)
  2. Перейти в каталог pi_tpi (cd ~/pi_tpi)
  3. Запустить сборку с помощью утилиты make с указанием цели tpiflash (make tpiflash)

После сборки в каталоге должен появиться исполняемый файл утилиты (tpiflash).

Для просмотра списка параметров программы следует запустить её без параметров.

Для подключения микроконтроллера к программатору использована панелька HST6-W (DIP6-SOT23-6) производства ROMSERVICE. Для простоты использована беспаечная макетная плата.

Схема подключения микроконтроллера к Raspberry Pi:

При подключении к Raspberry Pi следует соблюдать осторожность — порты GPIO здесь никак не защищены и могут быть легко повреждены.

Контроллер подключён к линии питания +5В. При питании от линии 3.3В оказалось, что память контроллера читается, но запись произвести не удаётся.

Для проверки подключения и чтения памяти чипа используется команда:

./tpiflash r 1e9003

В консоль будет выведен дамп памяти.

При недоступном чипе будет выведено сообщение:

Error: Cannot connect to ATTiny (Error -1)

Для компиляции прошивки необходимо запустить сборку с целью airfresher:

make airfresher

Результирующий файл — airfresh.bin
Для записи собранной прошивки в микроконтроллер следует выполнить команду:

./tpiflash w 1e9003 airfresh.bin

Конструкция

Печатная плата устройства выполнена с помощью плёночного фоторезиста Ordyl Alpha 350. Фотошаблон выполнен на матовой плёнке KIMOTO Laserfilm для лазерной печати. Плёнка дорогая, но очень качественная и используется для фотошаблонов небольшими фирмами, которые производят штампы и печати. Тонер уплотнён аэрозолем Density Toner. Засветка самодельной матрицей из УФ светодиодов.

Внешний вид распаянной платы:

Применённый микроконтроллер размером не превышает размер светодиода =)

При выборе автоматического освежителя для доработки следует обратить внимание на возможность его лёгкой разборки — в приобретённом экземпляре моторный блок крепится на 4 самореза под крестовую отвёртку и допускает многократную разборку. Вероятно, освежители иных производителей могут иметь конструкцию, защищённую от разборки.

На штатной плате освежителя оставлены: переключатель режимов работы (не используется), ключевой транзистор двигателя (Q1), защитный диод (D1), контактные ламели батарейного отсека, керамические конденсаторы (C1, C2). Удалены микросхема таймера (U1) и резистор (R1). Отпаивать элементы следует с осторожностью из-за низкого качества материала платы — при перегреве дорожки легко отслаиваются, плата тонкая и легко деформируется.

Разработанная плата фотодатчика тремя проводами (синий — управление двигателем, красный — плюс, чёрный — минус/GND) подключена к контактам питания и базы транзистора Q1 (площадка резистора R1) на плате освежителя и размещена в корпусе освежителя рядом с батарейным отсеком, снаружи от моторного блока.

Фоторезистор выведен наружу через отверстие в крышке устройства.
Плата размещена светодиодом в сторону передней стенки устройства — сверхяркий светодиод даже при небольшом токе питания красиво подсвечивает корпус освежителя изнутри изумрудно-зеленым светом.

Обратите внимание, чтобы светящийся светодиод не засвечивал каким-либо образом фотодатчик, иначе устройство не будет уходить в режим ожидания.

При пайке платы следует особое внимание обратить на полярность включения светодиода и полярность подключения к источнику питания. Несмотря даже на предварительную проверку полярности светодиода мультиметром, при сборке уже второго устройства мне «удалось» подключить светодиод задом-наперед — при первом же включении он ожидаемо вышел из строя.

Провода после подпайки к плате датчика я залил термоклеем из клеевого пистолета и продул каплю клея феном паяльной станции при температуре ~150 градусов для улучшения заливки.

Собранная без ошибок конструкция начинает работать сразу. При проверке и эксплуатации устройства следует соблюдать осторожность во избежание попадания аэрозоля в глаза.

После разработки было изготовлено 4 экземпляра данного устройства. При постоянной эксплуатации в течение полугода начальный баллон аэрозоля и батарейки не менялись ни разу.
Входящие в комплект дешёвые солевые батарейки рекомендую сразу заменить на качественные алкалиновые (щелочные) элементы — их хватит на долгий срок.

Заключение

Было разработано и испытано устройство, обеспечивающее управление освежителем воздуха при помощи фотодатчика.

Устройство обеспечивает экономичное расходование аэрозоля освежителя воздуха «по необходимости».

Представленная схема может быть полезна не только для управления автоматическим освежителем воздуха, но и для управления любыми другими устройствами с логическим входом.

Данная конструкция и прошивка может без ограничений использоваться в некоммерческих целях — любой желающий может повторить её для использования у себя дома или на предприятии.

Ссылки

 


Файлы:
Исходный код и скомпилированная прошивка
Печатная плата (lay)


Все вопросы в Форум.




Как вам эта статья?

Заработало ли это устройство у вас?

16 0 4
1 0 0