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

Описание

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

Кодовый замок с ЖК дисплеем - cхема

Конструкция

Как видно из схемы, устройство ввода представляет собой клавиатуру из 12 клавиш. Из них 10 для ввода символов(SB1...SB10), и 2 для подтверждения (SB11) и сброса (SB12). При сборке использовались обычные кнопки, но можно поэкспериментировать и с графитовыми контактами, однако придется подобрать сопротивление R1 ...R4. Если же планируется выводить клавиатуру на проводах, превышающих в длине 20 см, то для более устойчивой работы необходимо уменьшить сопротивление до 4...5 кОм. Введенные символы дублируются на ЖКИ, который также осуществляет отображение режима работы. Функции управления реализованы на микроконтроллере ATmega8, который настроен на работу от внутреннего генератора 8 МГц. Для подключения к другим устройствам используется разъем, в котором предусмотрены следующие выходы: SW-для включения/выключения (изменяет свое состояние при правильном вводе кода на противоположное: логический "0" на "1" и обратно при повторном вводе), STR - на нем в течении 5 с после правильного кода устанавливается логическая "1". По истечении этого времени устанавливается "0" (преимущественно предусмотрен для замка двери). Данные выходы рассчитаны на максимальный ток нагрузки 20 мА и позволяют самостоятельно разработать исполнительный элемент (транзисторный ключ с реле, например) либо без особого труда связать замок с другим устройством. Питание осуществляется однополярным напряжением 5 В, которое снимается со стабилизатора главной схемы. При отсутствии такового можно применить микросхему 7805. Если вы уверены в возможности ввода кода "в слепую", то ЖКИ можно не подключать. На работу схемы зто не повлияет, но создаст неудобства при смене кода.

Настройка

Она заключается только в подстройке сопротивления R6, чем определяется контраст ЖКИ.

Детали

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

Работа с устройством

Базовый вариант данного устройства предусматривает 9 символов кода. Однако, для простоты использования, программа микроконтроллера была изменена. Более подробно см. в главе Прошивка.

При первом включении устройства в ячейках 0-8 (в зависимости от кода) EEPROM памяти находятся значения FFh. Так и должно быть, ведь при стирании МК "с заводской конфигурацией" стирается и этот вид памяти. Следовательно, физически с клавиатуры ввести 255 одним символом невозможно. Поэтому в программу введена специальная процедура проверки EEPROM. При запуске схемы она считывает значение с адреса 0 и анализирует. Если оно не является О, 1,2.. .9 (физически доступным символом), то производиться запись во все ячейки кода значений 0. Следовательно, код будет "000000000" в базовой версии (9 символов). Если же все нормально, то в ОЗУ загружается значения из памяти. На индикатор будет выведено слово "Code: (рус. версия Код:)". На обоих выходах будет присутствовать логический "0". С этого момента устройство работает в режиме ожидания кода (далее РО).

Ввод кода

Для открытия замка необходимо ввести код с клавиатуры и нажать клавишу "Ok". При правильном коде вы увидите сообщение "Ок!!! (Верно!!!)" и произойдет изменение на выходах устройства. После 5 с - переход в РО. Если же код не верен, вы получите соответствующее сообщение, и схема будет заблокирована на 10 с. Это вынужденный шаг, который позволяет увеличить время взлома замка путем перебора кода. При варианте 9 символов из {0...9}, данная операция от первой до последней комбинации займет около 310 лет (По 9 комбинаций). В целях безопасности код дублируется на индикаторе символом "#". При превышении количества введенных символов выполняется автоматическая очистка ЖКИ. Кнопка "Clear" служит для произвольной очистки в случае ошибки.

Смена кода

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

Поэтому процедура выглядит следующим образом:

1. Ввести комбинацию "123" (она фиксирована), нажать "Ok". На индикаторе отобразиться строка "Enter code" ("Введите код")
2. Ввести ваш старый код (при первом запуске все 0) и нажать "Ok". Если все правильно, то вы перейдете на следующий уровень (("Enter new" (Введите новый)), в противном случае - сообщение об ошибке, блокировка и переход в РО.
3. Ввести новый код, который отображается на индикаторе соответствующими символами при нажатии клавиш. При переполнении количества символов, отображаться и использоваться будут те, что были введены первыми. Если количество символов соответствует необходимому, то после нажатия на "Ok" появиться сообщение "Code is changed (Код изменен)", устройство перепишет код в EEPROM и перейдет в РО с измененным кодом. В противном случае-сообщение о несоответствии количества символов и переход в РО. На любом этапе смены кода выход из данного режима осуществляется нажатием на кнопку "Clear". Это необходимо в том случае, если вы не согласны с тем, что ввели. Так как в данной операции на ЖКИ отображается реальный код, то ее следует производить при отсутствии посторонних.

Монтаж устройства

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

Прошивка

Для данного устройства было написано 6 прошивок: русский и английский язык по 4, 6 и 9 символов. Английский вариант предусмотрен в тех случаях, когда контроллер ЖКИ не отображает русских символов. У них нет функции "мастер код", при помощи которой можно открыть замок в независимости от основного кода. Код" 123" не осуществляет воздействия на выходы устройства. Для настройки на внутренний генератор 8 МГц необходимо установить биты конфигурации (они же FUSE bits) CKSEL 0-3 в положение 1101 соответственно. В программаторе от "CodeVisionAVR" 1 соответствует установленная "галочка", т.е. данный бит программируется.

Установка fuse-битов

Источник: mdn-project.narod.ru


Архив для статьи "Кодовый замок с ЖК дисплеем"
Описание:
Размер файла: 24.01 KB Количество загрузок: 2 926 Скачать