Как сделать дубликатор домофонных ключей arduino

Содержание

Разберём самые распространённые домофонные марки.

  1. RFID. Такие домофоны состоят из блока для излучения со слабым электромагнитным полем и контактной площадки. Такой ключ внутри своего строения имеет простую схему с колебательным контуром, антенн, чипа. Когда преподнесёте ключ к зоне электромагнитного поля, происходит выбрасывания энергии, и активируется его электро схема. Карта передаёт сигналы, а домофон  распознает этот сигнал и открывается дверь. Такие ключи портятся при любых перегибах и изломах.
  2. Ключи Touch-Memory. Подобные контактные таблетки известны многим людям. Передача сигнала по таким ключам работает согласно электрической схемы. Когда мы прикладываем ключ к площадке, внутри ключа цепь считывания замыкается, и дверь открывается. Такие ключи портятся при сильной статике. Такие ключи программируют со специальным программатором Для этого требуется создание нескольких Клонов ключей и отмычек для домофонов. К ключам Touch Memory подходят  модели: DS, DC, КП-1, К.

При восстановлении или попытке перезаписать ключ, необходимо следовать правилам. При потере вашего ключа, специалист может выдать новый ключ, заранее программируя его. В том случае, если ломается устройство, требуется восстановить доступ к данному устройству. Процедура восстановления происходит по образцу с ключом. При этом дублируют информацию с устройства на новое пустое устройства. Для этого требуется устройство- программатор. Новый ключ будет обладать тем же кодом, будет работать по тем же частотам, как и его предшественник, то есть оригинал.

Столовая зона

Можно ли обмануть домофон?

Да, сейчас можно купить эмулятор, который имитирует ключи разных типов и выдает нужное значение для каждого домофона. В эмуляторах установлены даже дисплеи и клавиатура, что позволяет выбирать нужный ключ и выводить его название.

Штука забавная, стоит около 10 тыс. рублей. Но работает не без проблем – обходит не всю защиту, иногда может не срабатывать.

И да, сама по себе домофон она не взломает, лишь притворится копией нужного ключа. Для её программирования всё равно потребуются и сами ключи, которые уже известны домофоном, и устройство-дубликатор.

Часто можно услышать, что домофон можно вывести из строя электрошокером. Да, тонкая электроника серьёзный заряд действительно не перенесет. У механического удара на 10-15 см ниже панели домофона те же последствия. Но это порча имущества и статья УК РФ.

Теоретически ещё можно сильно дернуть дверь на себя. Но чтобы преодолеть силу, с которой магнит удерживает вторую часть замка, потребуется недюжинная мощь.

Некоторые домофоны под ключ-«таблетку» могут открываться с помощью батарейки «крона». Способ гуманный и безопасный для домофона, но срабатывает редко.

Разберёмся, какие домофонные ключи существуют?

  1. «Таблетка. Его система носит название Touch memory (ТМ). В корпусах MicroCAN именно такие системы. При этом используется система 1-Wire. В РФ мы можем встретить модели Dallas от Vizit или Z-5R.
  2. Тип «Капелька. RFID-отметки внутри корпуса округлой или вытянутого овала формы. Часто бывают как браслет или карта. В них существует – RFID-пометка. Например, в метрополитенах такая же система. Такие ключи считывают только на близком расстоянии. В РФ часто встречаются Proximity-ключи EM-Marin.
  3. Тип оптический. Остались далеко в прошлом. Их смело можно назвать «динозаврами». Выглядит в виде пластины с отверстиями. В домофоне существуют элементы, распознающие последовательность этих отверстий. Такие ключи очень не безопасные. Их запросто можно взломать с помощью пилочки для ногтей.

Тестирование и настройка готового дубликатора

Для описанного выше проекта понадобится специальный корпус, чтобы аккуратно разместить все компоненты и сохранить их без ущерба.

Можно разработать корпус с использованием программы SketchUp, которая имеет удобный интерфейс с простыми кнопками, такими как Eraser, Lines и Tape Measure Tool.

Размеры коробки составляют: 120 х 125 х 37 мм.

Если вы не знакомы с Sketchup, вам нужно ознакомиться со следующими учебниками SketchUp:

http://www.sketchup.com/learn/videos/58

Коробка для корпуса устройства (вид сверху)Коробка для  корпуса устройства (вид снизу)

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

  • Вид сверху:
    — 2 отверстия для светодиодов (5,2 мм).
    — 1 для ЖК-дисплея (42,2 × 7,3 мм).
    — 1 отверстие для кабеля (16 × 10,5 мм).
  • Вид снизу:
    — 1 открытие для клавиатуры (27 × 10 мм).

После этого можно соотнести размеры и построить пластиковый корпус. Причем можно менять дизайн по своему усмотрению.

Полный корпус с модулями, расположенными внутри

Особенности восстановления и перезаписи ключей

Известно, что если устройство сломается и не будет работать, тогда можно восстановить к нему доступ, используя при этом программатор ключей домофона, а также специализированные заготовки. Сейчас многие мастерские по изготовлению или ремонту предлагают подобные услуги.

Процесс восстановления является довольно простым: информацию, которая хранилась на запоминающем устройстве дублируемого либо сломавшегося экземпляра, сначала считывают, а затем записывают на пустое изделие с помощью программатора. Так происходит кодировка ключей. Полученный экземпляр обладает таким же кодом, работает на аналогичной частоте (если это бесконтактное изделие), как и оригинал, поэтому домофон, сравнивая коды, предоставляет доступ, открывая дверь.

С помощью программатора можно осуществить запись ключей в новую память. Главное, чтобы она не была занята. Вместе с этим, процесс программирования домофонов является очень важным аспектом, который нужно учитывать, чтобы получить связную работу всей системы.

Как самостоятельно запрограммировать домофон?

Сначала нужно узнать, как заблокировать домофон, чтобы запрограммировать его контроллер и заполнить память цифровыми последовательностями и комбинациями. Нужно для этого зайти в сервисные настройки, используя специализированный код. Затем можно менять установки и определить основные функции домофона:

  • Надо занести в память коды абонентов, к которым можно точно дозвониться, воспользовавшись вызывной панелью. Данная процедура упростит дальнейшее тестирование и поиск подключенных абонентов;
  • Затем в память нужно занести все коды, которые соответствуют офисам или квартирам в подъезде;
  • Необходимо последовательно определить список идентификаторов либо электронных ключей, которые могут открывать замок;
  • Выставить режим работы замка с учетом разновидности используемого устройства, а также условий его работы;
  • Осуществляя перепрограммирование ключей, можно дополнительно изменить настройки панели вызова: время ожидания, длительность сигналов, а также множество других.

Использование специального программатора

На фото изображен программатор для ключей

Чтобы самостоятельно осуществить программирование ключей, следует воспользоваться специальным программатором:

  • Прежде всего, надо подключить устройство с помощью адаптера к обычной сети. Сначала может загореться надпись Error, но затем появится Read, а аппарат сообщит о своей готовности с помощью звукового сигнала;
  • Затем нужно приложить оригинальный экземпляр к считывателю. После того как процесс закончится, загорится надпись Write;
  • На протяжении нескольких секунд нужно приложить болванку к этому гнезду. При успешной записи появится надпись Ок, если же опять возникнет Error, тогда, чтоб программировать ключи, нужно повторить заново весь алгоритм.

Самостоятельно запрограммировать изделие можно, только если есть оригинал. Если же его нет, тогда придется пойти к установщику, ведь только у него есть специализированный мастер-ключ.

На видео показана работа программатора ключей:

Фото идей интерьеров современных кухонь с островом

Как функционирует дубликатор ключей от домофона

Копировщик rfid ключей — электронный механизм, позволяющий считывать специальный шифр, записанный на магнитном носителе. Его дубликат в случае утери магнитного ключа легко получить, перезаписав на чистый магнитный носитель.

Чтобы понимать, как работает дубликатор домофонных ключей, нужно обратить внимание на его конструкцию. Внешне механизм похож на корпусный блок с несколькими комплектующими

В его составе есть:

  • контактная пластина, обеспечивающая связь ключа со считывающим механизмом;
  • приёмная антенна моделей домофонных ключей бесконтактного типа;
  • клавиши и кнопки для эффективного управления, помогающие выбирать режим работы, включать и отключать рабочее устройство;
  • индикаторы (например, жидкокристаллический экран с отображением символов или световая индикация);
  • гнездо, через которое осуществляется питание устройства.

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

  • ячейка памяти;
  • устройство, усиливающее сигнал;
  • система питания;
  • выводы по сигналам, отражающим состояние рабочего устройства.

Принцип работы программатора таков:

  • активация микроконтроллера происходит после поступления электропитания на дублирующее устройство, а на его экране появляется один из 2-х возможных режимов: ожидание/выбор программы;
  • электронный чип подносят к устройству и активируют приём сигнала специальной кнопкой;
  • происходит считывание последовательного сигнального кода с помощью контроллера с последующей его записью в памяти;
  • далее прибор для копирования домофонных ключей должен записать считанный сигнал на чистую магнитную «таблетку» и для этого её подносят непосредственно к устройству;
  • с помощью дубликатора закодированный сигнал в нужной последовательности записывается в память магнитного носителя.

Все вышеперечисленные действия реализуются всего за несколько секунд. Чтобы проверить корректность записанного сигнала, чип тестируют непосредственно на домофоне.

Как домофон определяет, подходит ли ключ?

На заводе или на фирме, которая устанавливает домофоны, в каждый ключ записывают особый код. Затем его же сохраняют в памяти домофона.

Когда вы подносите ключ к домофону, он считывает код и сравнивает его со значениями из своей памяти. Если значение ключа там есть, дверь открывается.

Более того, есть специальные модули, которые позволяют сохранить все ключи из одного домофона и перенести их в другой.

Вот так переустановят домофон у вас в подъезде, а ключи менять не придётся. Хотя, конечно, установщик домофона вполне может попытаться заработать на этом.

Исключение, пожалуй, лишь ключи MiFare. Они включают перезаписываемую область памяти, в которую копируется уникальный код домофона.

Когда мастер «из ларька» клонирует такой ключ, он копирует только заводской код, но не код домофона. В результате домофон может отвергнуть такой ключ – сработает система защиты от клонов. Скопировать заводской код сможет лишь обслуживающая компания.

Предназначение дубликатора домофонных ключей

С помощью микроконтроллера Arduino можно копировать домофонный ключ, если случайно его потерял.

RFID – радиочастотная идентификация. Устройство выполняет ту же функцию, что и штрих-код или магнитная полоска на задней стороне кредитной карты. Он предоставляет уникальный идентификатор для этого объекта. И так же, как штрих-код или магнитная полоса, RFID должен быть отсканирован для получения информации.

RFID используется в этом проекте для чтения данных из RFID-меток и отправки информации в энергонезависимую память MCU.

Идентификатор, считываемый из тегов, сравнивается с хранимой информацией, и если он совпадает, то дверь открывается.

Источник заработка и рентабельность

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

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

На всем известной торговой площадке Aliexpress можно купить дубликатор домофонных ключей. В комплекте с устройством идет пять заготовок (брелоков) с возможностью перезаписи. Цена оборудования – 600 рублей. Брелоки можно приобрести и отдельно, стоимость одного в среднем составляет 20 рублей. Фактически, три запрограммированных ключа окупают все производство. Такой довольно простой бизнес, который способен приносить до 1000% прибыли.

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

Приобретая оборудование для старта «домофонного» бизнеса, о потере вложенных инвестиций беспокоиться не стоит. На дубликатор со стоимостью 600 рублей покупатель найдется очень быстро, а значит, потеря денег практически исключена.

Посмотреть товар

Виды ключей для домофонов

Существует несколько семейств домофонных ключей.

1. «Таблетки». Официально стандарт называется Touch memory (ТМ) или iButton, это контактные ключи в корпусе MicroCAN. В «таблетках» используется протокол 1-Wire, но форматы бывают разные.

В РФ это в основном ключи модели Dallas, с которыми работают домофоны Vizit, Eltis, Z-5R, С2000-2 и т.д., Cyfral (ключи DC2000А и Цифрал-КП1 и др.), «Метаком».

Довольно редко встречаются резистивные «таблетки» – у них считывается сопротивление.

2. «Капельки». RFID-метки в пластиковом корпусе круглой, овальной или каплеобразной формы. Иногда их выпускают в виде браслетов или карт.

Внутри – RFID-метка, как и в картах метро, «пищалках» на товарах в супермаркетах и других подобных штуках. В основном «капельки» могут быть ближнего действия (Proximity, считываться на расстоянии до 10-15 см), так как более «дальнобойные» метки Vicinity, которые работают на расстоянии до 1 м, небезопасны в данном случае.

В РФ чаще всего используют Proximity-ключи EM-Marin, но встречаются также и более старые HID-метки или более новые MiFare, как в картах метро.

3. Оптические. Настоящие динозавры. Где-то в провинциях ещё сохранились. Такой ключ – это металлическая пластина, в которой в определенном порядке насверлены отверстия.

Внутри домофона есть фотоэлемент, который распознает, в том ли порядке насверлены дыры.

Безопасность ниже плинтуса, подделать ключ – плевое дело, а некоторые домофоны с оптическими ключами успешно и без следов вскрывались пилочкой для ногтей.

Как делают копию ключа?

Обычно для этого берут болванку – пустую заготовку без кода. Затем мастер считывает код с вашего ключа и записывает его же на болванку.

В результате вы получаете два одинаковых ключа. А так как код оригинального ключа уже сохранен в домофоне, то и его клон позволит открыть дверь.

Болванки бывают перезаписываемые и неперезаписываемые. Если вы помните слово «финализация» при прожиге дисков, возьмите с полки пирожок, то здесь оно тоже применяется.

Технически вы сами можете собрать дубликатор (программатор) ключей на основе Arduino или Raspberry Pi, а затем наделать копий ключа на все случаи жизни. Инструкций в интернете полно, как и предложений купить дубликатор за тысячу-другую рублей.

Главное – не промахнуться с типом домофона и ключа.

Так, одни ключи рассчитаны на частоту 125 КГц, другие на 13,56 МГц и так далее. К тому же они могут быть разного типа. Помните о защите от клонов, которая может поддерживаться вашим домофоном.

Как делают копию ключа?

Обычно для этого берут болванку – пустую заготовку без кода. Затем мастер считывает код с вашего ключа и записывает его же на болванку.

В результате вы получаете два одинаковых ключа. А так как код оригинального ключа уже сохранен в домофоне, то и его клон позволит открыть дверь.

Болванки бывают перезаписываемые и неперезаписываемые. Если вы помните слово «финализация» при прожиге дисков , возьмите с полки пирожок , то здесь оно тоже применяется.

Технически вы сами можете собрать дубликатор (программатор) ключей на основе Arduino или Raspberry Pi, а затем наделать копий ключа на все случаи жизни. Инструкций в интернете полно, как и предложений купить дубликатор за тысячу-другую рублей.

Главное – не промахнуться с типом домофона и ключа.

Так, одни ключи рассчитаны на частоту 125 КГц, другие на 13,56 МГц и так далее. К тому же они могут быть разного типа. Помните о защите от клонов, которая может поддерживаться вашим домофоном.

Как подключить RFID считыватель RC522 к Arduino

В этой статье мы рассмотрим подключение к Arduino считывателя карт и брелоков RFID RC522, работающего на частоте 13,56 МГц.

Модуль RFID-RC522 выполнен на микросхеме MFRC522 фирмы NXP. Эта микросхема обеспечивает двухстороннюю беспроводную (до 6 см) коммуникацию на частоте 13,56 МГц.

Беспроводной модуль RFID-RC522

Микросхема MFRC522 поддерживает следующие варианты подключения:

SPI (Serial Peripheral Interface, последовательный интерфейс для связи периферийных устройств) до 10 Мбит/сек;
двухпроводной интерфейс I2C до 3400 кбод в режиме High-speed,до 400 кбод в режиме Fast;
последовательный UART (аналог RS232) до 1228,8 кбод.

С помощью данного модуля можно записывать и считывать данные с различных RFID-меток: брелоков от домофонов, пластиковых карточек-пропусков и билетов на метро и наземный транспорт, а также набирающих популярность NFC-меток.

RFID – это сокращение от “Radio Frequency IDentification” и переводится как «радиочастотная идентификация». NFC – это “Near field communication”, «коммуникация ближнего поля» или «ближняя бесконтактная связь».

2Схема подключения RFID-RC522 к Arduino

Подключим модуль RFID-RC522 к Arduino по интерфейсу SPI по приведённой схеме.

Схема подключения RFID-RC522 к Arduino по интерфейсу SPI

Питание модуля обеспечивается напряжением от 2,5 до 3,3 В. Остальные выводы подключаем к Arduino так:

RST D9
SDA (SS) D10
MOSI D11
MISO D12
SCK D13

Не забывайте также, что Arduino имеет специальный разъём ICSP для работы по интерфейсу SPI. Его распиновка также приведена на иллюстрации. Можно подключить выводы RST, SCK, MISO, MOSI и GND модуля RC522 к разъёму ICSP на Ардуино.

3Библиотека для работы Arduino с RFID

Микросхема MFRC522 имеет достаточно обширную функциональность. Познакомиться со всеми возможностями можно изучив её паспорт (datasheet). Мы же для знакомства с возможностями данного устройства воспользуемся одной из готовых библиотек, написанных для работы Arduino с RC522. Скачайте её и распакуйте в директорию Arduino IDE\libraries\

Установка библиотеки “rfid-master” для работы Arduino с RFID-метками

После этого запустите среду разработки Arduino IDE.

4Скетч для считывания информации, записанной на RFID-метке

Теперь давайте откроем скетч из примеров: Файл Образцы MFRC522 DumpInfo и загрузим его в память Arduino.

Открываем скетч DumpInfo

Данный скетч определяет тип приложенного к считывателю устройства и считывает данные, записанные на RFID-метке или карте, а затем выводит их в последовательный порт.

#include #include const int RST_PIN = 9; // пин RST const int SS_PIN = 10; // пин SDA (SS) MFRC522 mfrc522(SS_PIN, RST_PIN); // создаём объект MFRC522 void setup() { Serial.begin(9600); // инициализация послед. порта SPI.begin(); // инициализация шины SPI mfrc522.PCD_Init(); // инициализация считывателя RC522 } void loop() { // Ожидание прикладывания новой RFID-метки: if ( ! mfrc522.PICC_IsNewCardPresent()) { return; // выход, если не приложена новая карта } // Считываем серийный номер: if ( ! mfrc522.PICC_ReadCardSerial()) { return; // выход, если невозможно считать сер. номер } // Вывод дампа в послед. порт: mfrc522.PICC_DumpToSerial(&(mfrc522.uid)); }

Текст скетча достаточно хорошо прокомментирован.

Для более полного знакомства с библиотекой изучите файлы MFRC522.h и MFRC522.cpp из директории rfid-master.

5Дамп данных с RFID-метки

Запустим монитор последовательного порта сочетанием клавиш Ctrl+Shift+M, через меню Инструменты или кнопкой с изображением лупы. Теперь приложим к считывателю билет метро или любую другую RFID-метку. Монитор последовательного порта покажет данные, записанные на RFID-метку или билет.

Считываем данные с билета на наземный транспорт и метро с помощью RFID

Например, в моём случае здесь зашифрованы уникальный номер билета, дата покупки, срок действия, количество оставшихся поездок, а также служебная информация. Мы разберём в одной из будущих статей, что же записано на карты метро и наземного транспорта.

Примечание

Да, с помощью модуля RFID-RC522 можно записать данные на билет метро.

Но не обольщайтесь, каждая карта имеет неперезаписываемый счётчик циклов записи, так что «добавить» поездок себе на метро не получится – это сразу будет обнаружено и карта будет забракована турникетом А вот использовать билеты метро для записи на них небольших объёмов данных – от 1 до 4 кб – можно. И способы применения этому ограничены только вашей фантазией.

Бесконтактные копировщики

Бесконтактные дубликаторы представлены 3-мя модификациями.

  1. Программаторы tmd, формирующие стандарт радиочастотной идентификации Indala, HID, EM-Marin.
  2. Дубликаторы, сочетающиеся с устройствами стандарта ТКРФ и ТЕХ-КОМ.
  3. Копировальщики, которые поддерживают стандарт Mifare.

Универсальные механизмы программирования

Программировать дубликаты ключей можно на универсальных устройствах. С их помощью можно не только создать копию цифрового ключа, но и получить набор дополнительных полезных функций:

  • база памяти;
  • возможность обновления;
  • генерация символьных шифров.

Обновляющая функция позволяет подстраивать программную базу под новые, оригинальные модификации чипов, чтобы в дальнейшем устройство могло делать их дубликаты. База памяти обеспечивает возможность создавать дубликаты ключей без наличия оригинального устройства. Код ключа попадает во встроенную базу после первой же прошивки. В дальнейшем его можно будет найти и использовать для создания других дубликатов.

Генерирование кодов помогает записывать оригинальные символьные шифры на домофонный ключ. Такой вариант подходит для крупных корпораций, сотрудники которых получают на руки ключ с уникальным шифром для открывания дверей. Он позволяет проконтролировать время и число посещений конкретным человеком производственных объектов.

Делаем на Ардуино дубликатор домофонных ключей

Устали от блокировки, когда вы теряете или забываете свои ключи? Сегодня мы создадим дверной замок RFID Arduino посредством копирования домофонного ключа. Мы узнаем о радиочастотной идентификации RFID и используем беспроводную связь. С помощью микроконтроллера Arduino можно копировать домофонный ключ, если случайно его потерял. Давайте посмотрим, как это делается.

RFID – радиочастотная идентификация. Устройство выполняет ту же функцию, что и штрих-код или магнитная полоска на задней стороне кредитной карты. Он предоставляет уникальный идентификатор для этого объекта. И так же, как штрих-код или магнитная полоса, RFID должен быть отсканирован для получения информации.

RFID используется в этом проекте для чтения данных из RFID-меток и отправки информации в энергонезависимую память MCU.

Идентификатор, считываемый из тегов, сравнивается с хранимой информацией, и если он совпадает, то дверь открывается.

Каждый ключ имеет внутреннюю связь с домофонной дверью – этот номер и служит ключевым идентификатором. Этот номер интерком-ключа решает, нужный ли вы приложили ключ. Поэтому принцип работы дубликатора домофонных ключей на Arduino довольно прост: сначала нужно проверить «разрешенный» ключ, а затем присвоить тот же номер другому ключевому клону.

Проверяя номер из своей базы данных разрешенных скоростей передачи данных, он откроет дверь. Ключи для внутренней связи, которые мы будем подключать к Arduino дубликатору (иногда называемому iButton или Touch Memory), считываются и записываются в 1-проводной интерфейс. Поэтому схема подключения очень проста.

Необходимые материалы

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

  1. Дубликатор домофонных ключей строится на микропроцессоре Arduino Nano.
  2. RFID RC522.
  3. Пьезо-зуммер.
  4. 2x LED-монитора.
  5. 2x 330 резистор.
  6. Клавиатура 4 × 4.
  7. Адаптер I2C для ЖК-дисплея.
  8. LCD16X2BL.

Создание дубликатора своими руками

ЖК-дисплей имеет 16 контактов, что слишком много для Arduino Nano домофона, поэтому важно иметь адаптер I2C. Это позволяет управлять дисплеем только из двух сигнальных штырей на Ардуино

Это полезно из-за небольшого числа контактов, которые нужно будет контролировать из MCU.

ЖК-контакты

ЖК-дисплеи имеют параллельный интерфейс, а это означает, что MCU должен одновременно управлять несколькими контактами интерфейса для управления дисплеем. В приведенной ниже таблице дается описание каждого из контактов на английском языке:

Спецификация контактов

Для начала сделаем связи между ЖК-дисплеем и I2C. Для этого нужен адаптер ЖК-дисплея I2C (LCD1602). Адаптер преобразует ЖК-дисплей формата 16 x 2 в серийный ЖК-дисплей I2C, которым можно управлять через Arduino всего посредством 2-х проводов.

Соединения между Arduino и LCD

Тестирование и настройка готового дубликатора

Для описанного выше проекта понадобится специальный корпус, чтобы аккуратно разместить все компоненты и сохранить их без ущерба.

Можно разработать корпус с использованием программы SketchUp, которая имеет удобный интерфейс с простыми кнопками, такими как Eraser, Lines и Tape Measure Tool.

Размеры коробки составляют: 120 х 125 х 37 мм.

Если вы не знакомы с Sketchup, вам нужно ознакомиться со следующими учебниками SketchUp: http://www.sketchup.com/learn/videos/58.

Коробка для корпуса устройства (вид сверху)Коробка для  корпуса устройства (вид снизу)

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

  • Вид сверху:
    • 2 отверстия для светодиодов (5,2 мм).
    • 1 для ЖК-дисплея (42,2 × 7,3 мм).
    • 1 отверстие для кабеля (16 × 10,5 мм).
  • Вид снизу

    1 открытие для клавиатуры (27 × 10 мм).

    :

После этого можно соотнести размеры и построить пластиковый корпус. Причем можно менять дизайн по своему усмотрению.

Полный корпус с модулями, расположенными внутри

Как пользоваться устройством

Откройте последовательный монитор. Нажмите клавиши. Вы должны заметить, что последовательный монитор сообщает, какой именно ключ пользователь нажал. Тем не менее, может потребоваться небольшая практика нажатия кнопок.

Что насчет кодов доступа домофонов?

Здесь тоже всё зависит от домофона. Но большинство моделей, которые устанавливаются в РФ сейчас, поддерживают ввод комбинаций символов, которые позволяют открыть дверь. Это часто работает на домофонах «Визит» и реже на моделях других производителей.

Мы комбинации сознательно не публикуем – как минимум потому, что список для всех моделей получится длинным. Но мастер-код от своего домофона вы практически наверняка нагуглите. Если, конечно, при установке код на открытие двери не сменили в целях вашей же безопасности.

Это вовсе не те цифры, которые записываются на ваш ключ. К примеру, длина простого ключа для «таблеток» DS1990A от компании Dallas составляет 6 байт, это 281474976710656 разных комбинаций. Вы вряд ли запомните комбинацию такой длины, но можете считать её на самом брелоке. Ключ в 16-ричном формате, как правило, гравируется лазером на поверхности.

P.S. Раньше существовал банальный до ужаса лайфхак: ключи с кодом 00 00 00 или FF FF FF могли открыть все двери. Именно такие значения записывались в свободные ячейки домофона и участвовали в сравнении при проверке ключа. Но эту дыру уже давно закрыли.

(4.64 из 5, оценили: 200)

3Запись идентификатора ключа Dallasс помощью Arduino

Теперь напишем скетч для записи данных в память ключа iButton.

Скетч записи ключа iButton с помощью Arduino (разворачивается)

#include <OneWire.h>  // подключаем библиотеку
const int pin = 10;   // объявляем номер пина
OneWire iButton(pin); // объявляем объект OneWire на 10-ом пине

// номер ключа, который мы хотим записать в iButton:
byte key_to_write[] = { 0x01, 0xF6, 0x75, 0xD7, 0x0F, 0x00, 0x00, 0x9A };

void setup(void) { 
  Serial.begin(9600); 
  pinMode(pin, OUTPUT);  
}

void loop(void) {
  delay(1000); // задержка на 1 сек  
  iButton.reset(); // сброс устройства 1-wire
  delay(50); 
  iButton.write(0x33); // отправляем команду "чтение"

  byte data; // массив для хранения данных ключа
  iButton.read_bytes(data, 8); // считываем данные приложенного ключа, 8х8=64 бита
  
  if ( OneWire::crc8(data, 7) != data ) { // проверяем контрольную сумму приложенного ключа
      Serial.println("CRC error!"); // если CRC не верна, сообщаем об этом
      return; // и прерываем программу
  }

  if (data & data & data & data & data & data & data & data == 0xFF) {
    return; // если ключ не приложен к считывателю, прерываем программу и ждём, пока будет приложен
  }

  Serial.print("Start programming..."); // начало процесса записи данных в ключ
  
  for (int i = 0; i }

// Инициализация записи данных в ключ-таблетку iButton:
void send_programming_impulse() { 
  digitalWrite(pin, HIGH); 
  delay(60);
  digitalWrite(pin, LOW); 
  delay(5);
  digitalWrite(pin, HIGH); 
  delay(50); 
}

Не забудьте задать номер своего оригинального ключа в массиве key_to_write, который мы узнали ранее.

Загрузим этот скетч в Arduino. Откроем монитор последовательного порта (Ctrl+Shift+M). Подключим к схеме ключ, который будет клоном оригинального ключа. О результате программирования монитор последовательного порта выведет соответствующее сообщение.

Если данный скетч не сработал, попробуйте заменить код после Serial.print(«Start programming…») и до конца функции loop() на следующий:

Дополнительный скетч записи ключа iButton с помощью Arduino (разворачивается)

delay (200);
iButton.skip();
iButton.reset();
iButton.write(0x33); // чтение текущего номера ключа
Serial.print("ID before write:");
for (byte i=0; i<8; i++){
  Serial.print(' ');
  Serial.print(iButton.read(), HEX);
}    
Serial.print("\n");

iButton.skip();
iButton.reset();
iButton.write(0xD1); // команда разрешения записи
digitalWrite(pin, LOW); 
pinMode(pin, OUTPUT); 
delayMicroseconds(60);
pinMode(pin, INPUT); 
digitalWrite(pin, HIGH); 
delay(10);

// выведем ключ, который собираемся записать:
Serial.print("Writing iButton ID: ");
for (byte i=0; i<8; i++) {
  Serial.print(key_to_write, HEX);
  Serial.print(" ");
}
Serial.print("\n");
                 
iButton.skip();
iButton.reset();
iButton.write(0xD5); // команда записи
for (byte i=0; i<8; i++) {
  writeByte(key_to_write);
  Serial.print("*");
}
Serial.print("\n");

iButton.reset();
iButton.write(0xD1); // команда выхода из режима записи
digitalWrite(pin, LOW); 
pinMode(pin, OUTPUT); 
delayMicroseconds(10);
pinMode(pin, INPUT); 
digitalWrite(pin, HIGH); 
delay(10);

Serial.println("Success!"); 
delay(10000);

Здесь функция writeByte() будет следующей:

int writeByte(byte data) {
  int data_bit;
  for(data_bit=0; data_bit<8; data_bit++) {
    if (data & 1) {
      digitalWrite(pin, LOW); 
      pinMode(pin, OUTPUT);
      delayMicroseconds(60);
      pinMode(pin, INPUT); 
      digitalWrite(pin, HIGH);
      delay(10);
    } else {
      digitalWrite(pin, LOW); 
      pinMode(pin, OUTPUT);
      pinMode(pin, INPUT); 
      digitalWrite(pin, HIGH);
      delay(10);
    }
    data = data >> 1;
  }
  return 0;
}

Временную диаграмму работы скетча записи идентификатора ключа показывать бессмысленно, т.к. она длинная и не поместится на рисунке. Однако файл *.logicdata для программы логического анализатора прикладываю в конце статьи.

Ключи для домофона бывают разных типов. Данный код подойдёт не для всех ключей, а только для RW1990 или RW1990.2. Программирование ключей других типов может привести к выходу ключей из строя!

При желании можно переписать программу для ключа другого типа. Для этого воспользуйтесь техническим описанием Вашего типа ключа (datasheet) и изменить скетч в соответствии с описанием. Скачать datasheet для ключей iButton можно в приложении к статье.

Кстати, некоторые современные домофоны читают не только идентификатор ключа, но и другую информацию, записанную на оригинальном ключе. Поэтому сделать клон, скопировав только номер, не получится. Нужно полностью копировать данные ключа.

1Схема подключения ключа к Arduinoпо однопроводному интерфейсу

Каждый ключ для домофона имеет свой номер – именно этот номер и служит идентификатором ключа. Именно по номеру ключа домофон решает – свой или чужой. Поэтому алгоритм копирования такой: сначала нужно узнать номер разрешённого ключа, а затем присвоить этот номер другому ключу – клону. Для домофона нет разницы, был приложен оригинальный ключ или его копия. Сверив номер со своей базой данных разрешённых номеров, он откроет дверь.

Ключи для домофона, которые мы будем подключать к Arduino (их иногда называют iButton или Touch Memory), считываются и записываются по однопроводному интерфейсу 1-wire. Поэтому схема подключения очень проста. Нам нужны лишь пара проводов и подтягивающий резистор номиналом 2,2 кОм. Схема соединений показана на рисунке.

Схема подключения ключа iButton к Arduino по интерфейсу 1-wire

Собранная схема может выглядеть примерно так:

Схема для чтения ключа Dallas на Arduino

Что такое мастер-ключ и где его взять?

После установки домофона у специалиста остается особый ключ. На нем даже может быть написано что-то вроде: «Мастер-ключ. Никому не давать».

Но этот ключ обычно сам дверь открыть не может. Он нужен, чтобы добавлять в память новые ключи. В домофоне код мастер-ключа хранится в особой области, чтобы устройство могло отличать его и реагировать соответствующим образом.

Но возможна ситуация, когда мастер-ключ подходит к нескольким домофонам. Или когда для одних домофонов «таблетка» – это мастер-ключ, а для других – обычный ключ, который открывает двери.

Здесь всё зависит не от ключа, а от того, какие записи есть в памяти домофона.

А что будет, если мастер-ключ потеряется?

Обычно в домофонах остается возможность прописать новый мастер-ключ. Это, конечно, потенциальная возможность для взлома. Но, говоря объективно, проще попасть в подъезд, представившись сантехником, чем что-то взламывать.

Интереснее иметь универсальный ключ, или «вездеход». Его код прописан во всех домофонах подъездов одного дома или двора.

«Вездеходы» делают для почтальонов, сотрудников коммунальных служб, мастеров и др. Согласитесь, это куда удобнее, чем таскать с собой гирлянду разных ключей.

Также некоторые RFID-ключи нового формата, к примеру, RF3.1, позволяют записать коды до 8 домофонов.

Часто домофоны также поддерживают блокирующие ключи. Это средство безопасности: после того, как дверь открывают блокирующим ключом, другие ключи не работают, а дверь блокируется. Снять блокировку может либо мастер-ключ, либо блокирующий ключ (всё зависит от настроек домофона).

Кстати, бывает, что ключ устанавливают блокирующим по ошибке. Так что если после вас соседи часто не могут попасть в подъезд, проверьте, не блокирует ли ваш ключ доступ.

Оцените статью
Рейтинг автора
5
Материал подготовил
Андрей Измаилов
Наш эксперт
Написано статей
116
Добавить комментарий