Контроллер доступа *Tiny KTM* на ATtiny45 – проще схемы не бывает!

28 февраля 2008  |  Кодовые замки, замковые устройства





Контроллер предназначен для ограничения и контроля доступа в помещения, такие как жилая комната, рабочий кабинет и т.д. В устройстве применяется контактный способ считывания. Считывание кода ключа (DS1990A фирмы Dallas) и формирование управляющего сигнала на исполнительное устройство (например, замок) происходит при кратковременном контакте ключа и контактора. Контактор может устанавливаться внутри или снаружи помещений, нечувствителен к перепадам температуры и влажности.

Технические характеристики:

Напряжение питания......................................... 12 VDC
Потребляемый ток
В режиме ожидания, не более................................ 10 мА
В режиме коммутации, не более.............................. 90 мА
Количество пользовательских ключей......................... 15 шт
Максимальное время опознавания ключа....................... 0,1 сек
Длина шлейфа считывания (сечение провода 0,75 мм2), не более 70 м
Коммутируемое напряжение, не более.......................... 30 VDC
Коммутируемый ток........................................... 3 А
Время срабатывания реле (регулируется)............ от 0,5сек. до 127,5 сек

Принципиальная схема контроллера приведена на рисунке 1.


Контроллер доступа *Tiny KTM* на ATtiny45 – проще схемы не бывает!

Рис.1.

Основой устройства является микроконтроллер U1 (AT90S2343 фирмы Atmel). Питание микроконтроллера +5 вольт берётся от стабилизатора напряжения, собранного на микросхеме U2 (LM78l05). На плате контроллера имеются три микро-кнопки (RESET, But1, But2), предназначенные для его программирования. Транзистор Q1 управляет работой реле K1, а реле соответственно исполнительным устройством. Светодиод VD1 служит для индикации режимов программирования. Клемная колодка, впаиваемая на плату, служит для подключения всех внешних элементов системы, таких как считыватель ключей I-Button со светодиодом, источника питания +12 вольт и исполнительного устройства.

Назначение контактов колодки:
+12 Вольт.
Земля (общий провод для источника питания, светодиода на считывателе, самого считывателя и кнопки “Выход”).
Сигнальный провод от считывателя.
Кнопка “Выход”.
Светодиод на считывателе.
Нормально замкнутый контакт реле.
Общий контакт реле.
Нормально разомкнутый контакт реле.

Рекомендации по сборке устройства.

Устройство собрано на односторонней печатной плате, рисунок 2.


Контроллер доступа *Tiny KTM* на ATtiny45 – проще схемы не бывает!

Рис.2.

А вот так выглядит собранное устройство, рисунок 3.


Контроллер доступа *Tiny KTM* на ATtiny45 – проще схемы не бывает!

Рис 3.

Как видно из рисунков, практически все детали расположены с одной стороны, за исключением конденсаторов C2 и C3, которые взяты SMD и самого микроконтроллера, который взят в SOIC корпусе и расположены со стороны пайки деталей. Реле взято импортное, на напряжение срабатывания 12 вольт, точная маркировка которого не известна, но такие реле часто применимы, есть в продаже, имеются аналоги других производителей, так что найти такое можно. Микро-кнопки тоже импортные, конструкция которых видна из рисунка. Колодка под провода сборная из четырёх колодок, которые в магазине маркировались как PB-2. Транзистор КТ660б, который можно заменить любым аналогичным. Стабилитрон, на 4,7 вольта, взят импортный, хотя подойдёт любой на такое же напряжение. Вместо стабилизатора напряжения LM78l05 подойдёт LM7805, КРЕН5А и т.д. Сам микроконтроллер теоретически можно заменить на AT90S2313 с кварцем на 1 мГц, соответственно подключив порты ввода-вывода, но я не проверял это, так что если будет в этом проблема, пишите, помогу. По поводу того, как запрограммировать микроконтроллер я рассказывать ничего не буду, так как подобной информации в сети Internet предостаточно. Замечу только то, что контроллеры данного семейства одни из самых легко-программируемых контроллеров на сегодняшний день.

Контроллер может работать в двух режимах:
1. “Работа”.
2. “Программирование”.

В режим “работа” контроллер входит сразу же после включения питания. В этом режиме, при поднесении ключа, контроллер переключает реле и включает светодиод, на время заданное при программировании, если ключ имеется в его памяти. Такое же действие контроллер произведёт и при нажатии кнопки “Выход”, установленной внутри помещения. Либо три раза моргнёт светодиодом, если поднесённого ключа нет в его памяти.

Вход в режим “программирование” осуществляется следующим образом:
1. Нажмите кнопку But1 и удерживайте её.
2. Удерживая But1, кратковременно нажмите и отпустите кнопку RESET.
3. Отпустите кнопку But1.

Светодиод начнет вспыхивать, что свидетельствует о входе в первый режим программирования: “Ввод в память нового ключа”. В этом режиме, при поднесении ключа к считывателю, ключ заноситься в память. Поднесите ключ к считывателю, светодиод на несколько секунд перестанет вспыхивать, а потом моргнёт три раза, что свидетельствует о успешном занесении ключа в память контроллера. При необходимости, поднесите второй, третий и т.д. ключ для занесения их в память. Если ключ уже имеется в памяти, то контроллер никак на него не отреагирует. Для перехода в следующий режим программирования нажмите и удерживайте кнопку But1, пока светодиод не перестанет моргать. Отпустите кнопку. Светодиод начнёт вспыхивать два раза, после чего делать небольшую паузу. Это говорит о переходе во второй режим программирования: “Стирание ключа”. В этом режиме, при поднесении ключа к считывателю, записанного ранее в память, ключ стирается из памяти. В остальном всё аналогично первому режиму.

Для перехода в третий режим программирования, так же, нажмите и удерживайте кнопку But1, пока светодиод не перестанет моргать. Отпустите кнопку. Светодиод начнёт вспыхивать три раза, после чего делать небольшую паузу. Это говорит о переходе в третий режим, который называется “Стирание всех ключей из памяти”. В этом режиме, для стирания всех ключей из памяти, нажмите и удерживайте кнопку But2, пока светодиод не перестанет моргать. Отпустите кнопку. Светодиод моргнёт три раза, что свидетельствует о успешном стирании всех ключей из памяти. Для перехода в четвертый режим программирования, так же, нажмите и удерживайте кнопку But1, пока светодиод не перестанет моргать. Отпустите кнопку. Светодиод начнёт моргать с периодичностью: 0,5 секунды горит, потом 3 секунды погашен. Это означает переход в четвёртый режим программирования, который называется “Установка времени срабатывания реле”. В этом режиме, при нажатии и удержании кнопки But2, время горения светодиода постепенно увеличивается с шагом 0,5 секунды. При этом время горения светодиода визуально показывает время последующего срабатывания реле в режиме “Работа”. Вы можете вновь нажать кнопку But2, если посчитаете, что время срабатывания реле мало и есть необходимость увеличить его. Для сохранения этого параметра в памяти контроллера и перехода в первый режим программирования нажмите и удерживайте кнопку But1, пока светодиод не перестанет моргать. Для сохранения прежнего значения времени срабатывания реле и выхода из режима программирования нажмите кнопку RESET.

Вы можете в любой момент выйти из любого режима программирования, нажав кнопку RESET.

PCB.lay - файл печатной платы для программы Sprint-Layout 3.0

TinyKTM V1.0.hex - файл прошивки микроконтроллера

Автор: Широков Игорь Игоревич, www.creativelectro.spb.ru


Код для размещения на форумах или блоге

«
»