Этот небольшой проект продемонстрирует, как можно построить систему дистанционного управления нагрузками c использованием NEC протокола. С подробным описанием протокола можно ознакомится здесь.
Устройство представляет собой плату коммутации и пульт дистанционного управления.
На самом деле существует множество проектов решающих такую задачу, а плата и пульт будут работать с любыми проектами использующими NEC протокол.
Пульт ДУ (кодер) на PIC12F615
Схема:
В качестве ИК кодера используется микроконтроллер PIC12F615. Инфракрасный диод управляется транзистором BC547(аналог КТ3102) для обеспечения большей дальности. Для питания пульта используется плоская круглая батарея CR2032. Номинальное напряжение батареи 3В, но как сказано в даташите, PIC12F615 может работать и при 2В.
Для выводов GP4, GP5, GP1, GP0 включены внутренние подтяжки к питанию, для вывода GP3 использована внешняя, так как он подключен к MCLRE.
Общее потребление схемы в режиме ожидания составляет около 35нA, даже меньше чем указано в даташите. Батарея CR2032 будет работать достаточно долго.
Пульт построен на макетной плате:
В прошивке используется внутренняя возможность PIC12F615 работать с ШИМ, что позволяет добиться достаточно точного значения несущей частоты 38кГц. Большую часть времени микросхема находится в спящем режиме, потребляемый ток составляет 35 нА.
Плата управления (декодер) на PIC12F675
Декодеры NEC очень просты, существуют различные способы из реализации, в некоторых случаях применяется метод опроса, в которых прошивка опрашивает входные выводы микроконтроллера, подключенные к ИК-датчику, в других случаях используются прерывания.
В этом примере мы будем использовать метод прерывания по изменению.
Схема:
Для управления нагрузками используются реле с напряжением 5 вольт. В качестве декодера используется микроконтроллер PIC12F675. Диоды в параллели с реле, нужны для защиты транзисторов от самоиндукции катушек.
Прототип:
Законченное устройство также как и пульт собрано на куске макетной платы:
Для наглядности в схему были добавлены светодиоды, показывающие какая из нагрузок включена.
Прошивки и исходные коды:
Скачать прошивку и исходный код для пульта:
Скачать прошивку и исходный код для платы:
Источник на английском языке