РадиоКот :: Приставка "Морской бриз" для вентилятора
Например TDA7294

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

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

Приставка "Морской бриз" для вентилятора

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

Общее описание

Идея создания подобного девайса пришла, когда увидел на работе у коллег не совсем обычный вентилятор (под брендом Vitek, какая конкретно модель - уже не вспомню, но похож на этот: https://www.vitek.ru/catalog/climate-appliances/stand-fans/vt-1909-w.html). Помимо того, что управлялся он при помощи плёночной клавиатуры и, кажется, имел встроенный таймер, он поддерживал весьма полезную функцию: дуть не непрерывно, а периодически то ускоряя обороты, то замедляя, имитируя таким образом порывы ветра.

Тогда же я отметил для себя, что в этом режиме вентилятор далеко не так сильно продувает, а значит, шанс заработать головную боль, прохлаждаясь в течение дня под "лёгким бризом", будет значительно ниже, чем под непрерывным обдуванием. Да и вообще, воспринимается как-то более естественно. Однако был заметен и существенный недостаток реализации: из недр аппарата в этом режиме было слышно довольно громкое "шипение". Скорее всего, в качестве метода регулировки скорости вращения была выбрана простая ШИМ модуляция питающего напряжения. Помимо того, что это чревато излучением помех в эфир, возникает вопрос, насколько типичный асинхронный двигатель с "конденсаторным" запуском, применяемый в массово выпускаемых бытовых вентиляторах, расчитан на питание несинусоидальным напряжением? Не исключено, что разработчики из Vitek приняли специальные меры при проектировании двигателя для своего изделия. Но коли речь зашла о приставке, хотелось бы сделать нечто более универсальное, что смогло бы работать с любым вентилятором без риска спалить движок. В итоге решено было использовать "медленный ШИМ": включать-выключать питание с очень низкой частотой (скажем, порядка раз в секунду), а далее, как обычно, меняя длительность импульса, регулировать энергию идущую на вращение. При этом инерционность ротора и лопастей сгладит рывки, обеспечивая плавное изменение числа оборотов.

Схемотехника

Для реализации описываемой идеи была состряпана простенькая схема на основе контроллера AtTiny13 и симисторного коммутатора:

Малогабаритный трансформатор, мост и LDO-шка LM1117-N-5.0 дают 5В для питания схемы. Трансформатор BV 201 0128 от HAHN, разумеется, можно заменить любым другим, обеспечивающим на выходе вторичной обмотки напряжение не ниже 6В при тоже хотя бы в несколько десятков мА.

Импульсы для вентилятора, как уже было сказано, формирует контроллер AtTiny13. При этом была использована возможность работы встроенного таймера в режиме формирователя ШИМ сигнала. Разводка разъёма для программатора, возможно, кому-то покажется странной. Она сделана под стандартное подключение программаторов ChipProg. Транзистор VT1 - "цифровой" (со встроенным делителем в цепи базы). При желании, его можно заменить и обычным, включив в цепь базы ограничительное сопротивление в несколько единиц...десятков кОм.

В качестве коммутатора 220В для вентилятора используется связка оптосимистор + силовой симистор. Оптосимистор MOC3082 обладает весьма полезным для данной задачи свойством - открывается только в моменты перехода коммутируемого напряжения через 0, что полностью устраняет коммутационные помехи от устройства. Цепочка R1 C2 служит для перестраховки от случайных отпираний симистора, поскольку обмотка двигателя - нагрузка с явно выраженной индуктивной составляющей. Резисторы R2, R3 - китайские выводные на 0,125 Вт, R1 - такой же китайский, но на 0,25 Вт. Остальные - обычные SMD.

Для практического применения плата была установлена в корпус и подсоединена согласно следующей схеме:

 

Пара слов о работе прошивки:

 Писана в среде CodeVisionAVR V2.04.4a, но, очевидно, компилируется и в более поздних версиях. Используется встроенный RC генератор тактовой частоты на 9,6 МГц, однако в процессе инициализации включается делитель на 64. В итоге, таймер программируется на опорную частоту порядка 146 Гц, что и даёт нам "медленный ШИМ". Период ШИМ-а циклически меняется в основном цикле программы по следующему алгоритму:

  • Вначале формируем 4 случайных значения, определяющие минимальную и максимальную длительности импульсов ШИМ, а также время, которое вентилятор будет дуть с этими значениями длительности.
  • Затем постепенно повышаем длительность от минимального значения, расчитанного ранее, до максимального.
  • Затем выдерживаем паузу со случайной длительностью, также расчитанной ранее.
  • Затем постепенно снижаем длительность импульсов от максимального значения к минимальному.
  • И в конце снова выдерживаем паузу, расчитанную ранее.
  • Повторяем цикл заново.

Таким образом, удалось симитировать псевдослучайные "порывы ветерка" различной степени силы и длительности.

Тем, кому все эти подробности неинтересны, а нужно просто получить результат, достаточно подобрать файл v1.hex из папки .FWareExe и прошить в чип. Скриншот фьюзов из Atmel Studio:

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

 И вот что у нас в итоге получилось:

     

Печатная плата выполнена при помощи ЛУТ-а на одностороннем текстолите. Недостающие соединения второго слоя доделаны МГТФ-ами.

А вот так работает в жизни сделанный агрегат. С большим вентилятором:

С маленьким вентилятором (инерционности лопастей здесь уже заметно не хватает, однако в целом задача по прежнему решается):

В конце статьи приложен архив с полным проектом печатной платы в Altium Designed 10 и исходниками прошивки. В заключение напоминаю, что как минимум часть схемы находится под сетевым напряжением! Помните об этом в процессе сборки и наладки схемы.


Файлы:
Файлы проекта "Морской бриз"


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




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

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

33 8 3
2 0 0