Представленная схема может работать практически с любым пультом дистанционного управления (ПДУ). Обычно пульты дистанционного управления имеют несколько кнопок, которые не используются (или используются очень редко, только в особых случаях).
Контроллер может «научиться» реагировать на такие кнопки и, как результат, с помощью того же ПДУ мы можем управлять телевизором и управлять освещением. Устройство работает со светодиодными гаджетами,рассчитанные на напряжение 12В.
Основные параметры:
- дистанционное включение-выключение и регулируемая яркость светодиодного освещения;
- местное управление или с помощью двух кнопок;
- работает с любым ПДУ;
- импульсное управление, реализованное методом ШИМ;
- плавное включение/выключение;
- подходит для мощного освещения макс. 24 В постоянного тока, макс. 5A;
- источник питания 9 ... 24 В, потребляемая мощность самого контроллера около 10 мА;
- размеры платы 72х39х15 мм (предлагаемый корпус - Z75).
Работа схемы
Каждый инфракрасный пульт дистанционного управления (ПДУ), когда нажата одна из его кнопок, посылает сигнал в виде группы импульсов с соответствующим временем и соответствующими интервалами между ними.
Каждая кнопка имеет свою комбинацию импульсов и каждая из них несет информацию, например адрес и команду. Было создано много стандартов, определяющих параметры этих импульсов (длительность, время перерыва, количество импульсов, интервалы между последовательными группами импульсов и т.д.). Обычно устройства реагируют на пульты, работающие в определенном стандарте, например RC5 или SIRC.
Если сигнал, полученный устройством, не соответствует стандарту, он игнорируется. Представленная сХема работает по-другому: она не пытается распознать стандарт, в котором работает ПДУ, не пытается читать скрытые команды в группе импульсов . Вместо этого схема измеряет длительность импульсов и время паузы между ними. Для каждого полученного сигнала создается временная таблица, которая может быть сохранена в энергонезависимой памяти EEPROM. Каждый последующий сигнал также обрабатывается в такой таблице и затем сравнивается с шаблоном из памяти с учетом определенного допуска. Если соответствующие времена имеют аналогичные значения, то устройство отвечает, а если времена не совпадают, то устройство ожидает следующего сигнала.
Преимущество этого решения - это, конечно, универсальность, а недостаток - высокая потребность в памяти, поскольку для запоминания одной «кнопки» (одного сигнала) схеме необходимо 64 байта энергонезависимой памяти.
Существуют также стандарты, которые назначают два разных сигнала одной кнопке ПДУ - например,в RC5 «бит переключения» содержит импульс, который меняет свое значение на противоположное при каждом нажатии кнопки. Для правильной работы пульта дистанционного управления, работающего по такому стандарту, необходимо обработать сигнал кнопки и запомнить его дважды - на протяжении двух последовательные нажатия - для двух разных состояний импульса «бит переключения».
Элементы схемы
Принципиальная схема контроллера показана на рисунке 1. Основным элементом является микроконтроллер ATtiny85, поскольку он содержит большой объем встроенной памяти EEPROM - 512 байт.
Процессор работает с внутренним генератором 8 МГц.
В качестве инфракрасного приемника используется м\схема SFH5110. Исполнительным элементом является транзистор Mosfet, который должен быть типа „logic level compatible”-(«совместимый с логическим уровнем»).
Параметры элементов были выбраны таким образом, чтобы все работало с источником питания I2V или 24V.
Изготовление устройства...
не должно вызвать больших затруднении. Расположение элементов показано на рис.2, а печатная плата в формате Sprint-Layout 6.0 находится в архиве (плату не зеркалить).
Вам необходимо подключить светодиод с последовательно включенном резисторе на (1...1,5)Ком к разъему OUT и подключить питание к разъему IN.
Если светодиод загорается на 0,5 с и гаснет, это означает, что устройство работает правильно.Собранная плата может быть размещена в корпусе Z75:
Программа
Основной задачей программы является получение сигнала от инфракрасного приемника и поиск в этом сигнале кадров, то есть кодов, отправленных с ИК-пульта дистанционного управления.
Такой кадр обычно содержит от десятка до нескольких десятков импульсов, длительность и время прерывания которых обычно находятся в диапазоне
0,2 до 3 миллисекунд. Программа позволяет измерять импульсы до 8 мс, и если входной сигнал остается неизменным в течение 8 мс, это признак того, что передача одного кадра завершена, и следующий импульс будет началом нового кадра. Когда появляется сигнал, программа измеряет время импульса и время интервала между ними и сохраняет
результаты в таблице до следующей 8-миллисекундной паузы или до получения 64 измерений. Так что единственные ограничения на дистанционное управление (код), которые
устройство может «узнать», есть время для каждого отдельного импульса и интервала, которое должно быть в указанных пределах, а максимальная длина кода - 32 импульса (и 32 интервала).
Последнее условие - это частота модуляции ИК сигнала - каждая ПДУ посылает коды на некоторой несущей частоте. Самая распространенная - 36 кГц, менее распространенная 38 или 40 кГц.
Используемый инфракрасный приемник SFH5110-36 настроен на сигналы 36 кГц. При необходимости приемник можно заменить похожим,работающим на другой частоте.
Время импульса измеряется с помощью счетной команды TIMERO, которая настроена на работу с периодом около 8 мс и разрешением 0,032 мс. Любое изменение состояния со входа, принимающего ИК-сигнал, генерирует прерывание и служебную подпрограмму.
Прерывание вызывает чтение и запись в таблицу scan.buffer () статуса счетчика и сбрасывает его для обратного отсчета.
После завершения всего кадра переменная scan.stafus принимает значение SCAN _ COMPLETE 1, блокирующее перезапись массива до сброса статуса. Созданная таблица сравнивается с кадрами, хранящимися в памяти EEPROM микроконтроллера. Если сравнение дает положительный результат, предпринимается соответствующее действие.
Прошивка для процессора находится в архиве. Фьюзы: включить внутренний генератор на 8 МГц, остальные фьюзы не трогать.
Работа с устройством
Управлять устройством можно с помощью кнопок, расположенных на плате. Одна из кнопок используется для увеличения яркости, а другая - для уменьшения яркости.
Нажатие и удерживание обеих кнопок в течение примерно 3 секунд запускает режим программирования - светодиод начнет быстро мигать. В этом режиме устройство «запоминает» четыре кнопки пульта ДУ, но требует, чтобы каждая из них была введена дважды.
Во время программирования стоит подключить к выходу LED с резистром (описанную выше) и установить интенсивность освещения на 0% перед началом процесса. На первом этапе освещение достигает примерно 30% мощности, теперь необходимо нажать кнопку, предназначенную для увеличения интенсивности освещения.
Светодиод будет быстро мигать, но каждый раз, когда сигнал будет получен от пульта дистанционного управления, светодиод будет гореть в течение 1 секунды.
Когда светодиод снова начнет мигать, снова нажмите кнопку. Мощность освещения снизится примерно до 10%, сигнализируя о втором этапе. Как и на первом этапе, теперь вы должны дважды нажать кнопку, чтобы уменьшить интенсивность освещения. На третьем этапе освещение будет включаться при полной мощности - теперь вы должны дважды щелкнуть по кнопке, которая включает / выключает освещение при полной мощности.
На последнем, четвертом этапе освещение снова достигает примерно 30% мощности - теперь вы должны выбрать кнопку, которая будет включать / выключать освещение с косвенным питанием.
Четвертая функция работает так, что если вы установите любую мощность освещения ниже максимальной, то после ее выключения вы сможете снова вернуться к той же мощности с помощью этой кнопки. И еще один случай - если освещение работает на полную мощность, то с помощью четвертой кнопки вы можете перейти на ранее установленную промежуточную мощность. У устройства есть особая функция - после подключения питания автоматически включается освещение на полную мощность. Если такая система установлена между выключателем и освещением, то сначала ее существование будет незаметным - после включения освещение включится, после выключения освещение погаснет. Но когда освещение включено, тогда мы можем управлять им с помощью пульта дистанционного управления.
Материал взят из журнала Elektronika dla Wszystkich за 2015.4