Сканер радиокодов позволяет считывать значение 24-битного статического кода, применяемого в радиодатчиках и радиопультах, работающих на частоте 315/433 МГц. Такие датчики и пульты используются в различных охранных сигнализациях, управлении воротами, жалюзи, освещением и т.д.
Знать формируемый код необходимо для того, что бы идентифицировать датчик или эмулировать пульт управления в системе домашней автоматизации. Несмотря на то, что в радиомодуле есть режим считывания кодов непосредственно на самом устройстве, тем не менее такое программирование выполняется практически «вслепую». Вроде бы ничего страшного, если нужно записать пару-тройку кодов. А вот если их значительно больше, то легко можно ошибиться и придется все начинать сначала. Поэтому проще и быстрее будет считать сканером все необходимые коды и записать их прямо в память EEPROM микроконтроллера радиомодуля программатором.
Так же с помощью сканера радиокодов можно проверить различные самодельные радиодатчики, например, датчик протечки воды или датчик открытия окон. Кроме того, некоторые девайсы в системе домашней автоматизации, например, дистанционное управление вентилятором, вообще не имеют режима программирования кодов и тут без сканера радиокодов обойтись довольно проблематично.
Рис.1
Вместо того что бы собирать отдельное устройство, режим сканера введен в дубликатор электронных ключей, разработанный несколько лет назад. В схеме дубликатора остались незадействованные порты микроконтроллера, к одному из которых и подключен выход приемника 315/433 МГц. Все возможности дубликатора электронных ключей последней версии 1.2 сохранены в новой версии 1.3 в полном объёме.(рис.1).
Рис.2
Модуль приемника подключается через штыревой разъем (рис.2), что позволяет его легко заменить при необходимости сканировать коды датчиков или пультов, работающих на разных частотах. Питание 5В на модуль приемника во избежание его самовозбуждения подается от основной схемы дубликатора через развязывающую RC-цепочку.
24-битный код является статическим кодом и представляет собой импульсную последовательность с кодировкой нулей и единиц импульсами разной длительности. На рис.3 приведены импульсные последовательности для наиболее часто применяемых кодеров 1527 и 2262. Отличаются они тем, что кодер 1527 формирует вначале импульс преамбулы,отделенный от основной посылки временным интервалом. У кодера 2262 преамбула не формируется, но в конце следует 25-й импульс, называемый импульсом синхронизации. Обычно при срабатывании датчика или нажатии кнопки пульта формируется несколько «пачек» кода для его надежной идентификации приемным устройством.
Рис.3
В EEPROM микроконтроллера код записывается в виде байтов. Следовательно, каждый код будет занимать объем: 24/8=3 байта или три ячейки памяти. Но это справедливо только для эмулируемых (передаваемых) кодов пультов. Для идентификации принимаемых кодов датчиков необходимо добавить четвертый байт (байт номера зоны). Поэтому, с целью унификации адресации в EEPROM, под передаваемые и принимаемые коды отводится четыре ячейки памяти (рис.4). Более подробно об этом можно почитать здесь.
Рис.4
Теперь о работе со сканером радиокодов. После подачи питания необходимо кнопками S1 или S2 выбрать режим работы устройства, соответственно «Key copy» (копирование ключей) или «Scrambler radio» (cканер радиокодов, рис.5, а). Выбранный режим отображается на дисплее,например на рис.5, б показан режим сканирования радиокодов после нажатия кнопки S2. При повторном нажатии на кнопку S2 появится сообщение о готовности сканирования радиокода «Active code:» (рис.5, в). После этого необходимо активировать радиодатчик или нажать кнопку пульта и считанный код в виде трех байт будет показан на дисплее в нижней строке. В верхней строке выводится информация об успешном сканировании и чтении кода «Read ok!» (рис.5, г).
Рис.5
Для сканировании следующего кода нужно дважды нажать кнопку S2 и активировать новый код. Для возврата в меню выбора режима работы (рис.5, а) после сканирования кода служит кнопка S1.