Каталог статей

Главная » Все схемы » Схемы устройств на микроконтроллерах » Устройства на микроконтроллерах

Выбранная схема!!!


3283
Автомат управления освещением санузла: усовершенствованный силовой модуль.

Автор - Валерий Парусов.
Опубликовано 13.11.2008.

Небольшое продолжение на тему автомата управления освещением санузла
Долго я хотел сделать плавное включение ламп, но факт установки автомата в подвесном потолке как-то отбивал желание. Но вот пришел к мне знакомый с просьбой сделать прибор, который плавно увеличивает частоту с 0 до 500 Гц - они там с одометрами мудрят, а некоторые иномарки сопротивляются, если сразу подать нужный сигнал - типа факт разгона отслеживают. 
Так как в руках уже был готовый макет, то схему заново собирать не пришлось, единственно приделал КТ815, что бы лампочку от фонарика зажигать (на заднем плане маячит).

Задача состоял в том, чтобы в течение определенного времени увеличить ширину импульса на выходе до максимальной совместно с уменьшением ширины паузы: 
От:

До:

То есть надо было организовать программный ШИМ.
Действует он следующим образом:
1. Устанавливается ширина паузы PAUSE=0 (что соответствует максимальной длине) и загружается в регистр TCNT0. Соответственно на выводе PB1 устанавливается логическая единица.
2. Таймер начинает считать до переполнения (255). Во время переполнения возникает прерывание. 
3. В таймер загружается дополнение до 255 (по сути оно соответствует длительности импульса): 255 - PAUSE и на выводе PB1 устанавливается логический 0. 
4. Число PAUSE увеличивается на 8 (256 / 32 шага = 8 единиц), что влечет за собой уменьшение длины паузы (таймер считает от PAUSE до 255) и увеличение длины импульса.
5. Цикл повторяется 32 раза.
6. Когда 32 шага пройдены, на PB1 постоянно подается логическая 1.
В основном цикле отслеживается состояние PB3. Пока на этом выводе присутствует 0, программа постоянно удерживает на PB1 низкий уровень. Как только появится единица, то отсчет импульсов пойдет заново.

Данную конструкцию я предполагаю использовать взамен моих внешних силовых модулей, которые сейчас управляют лампами и содержат только оптопару и тиристор (см. схему автомата). 
Проект в ICC AVR прилагаю. Все флаги в один байт запихивать не стал, да и умножение на 8 можно сделать сдвигом и т.п., но и так всего 38% памяти заполняется да и нагляднее выходит. 
Что самое интересное, пробовал тот же самый код в CodeVision один в один запихнуть, так Proteus ничем мне не мигал!

Гражданам на заметку:
Пока не отпаял ножку зеленого светодиода - прошить МК не удавалось, т.к. он губил сигнал SCK. Видимо изначально я этот прибор собирал без светодиода, теперь уж не вспомню.

Файлы:
Прошивка МК с исходником.
Видео работы (15Мб)

Вопросы, как всегда в Форум.




Источник: http://radiokot.ru/circuit/digital/automat/12/
Категория: Устройства на микроконтроллерах | Добавил: brys99 (20.11.2011)
Просмотров: 5491 | Теги: Умный дом: первые шаги. | Рейтинг: 0.0/0


Всего комментариев: 0

Все ссылки на книги и журналы, представлены на этом сайте, исключительно для ознакомления, авторские права на эти публикации принадлежат авторам книг и издательствам журналов! Подробно тут!
Жалоба

Пожалуйста оставьте свои комментарии !!!!

Имя *:
Email:
Код *:


ElectroTOP - Рейтинг сайтов
Copyright Zloy Soft (Company) © 2008 - 2016