Фильтр по тематике

Кодовый замок с загрузкой эталонного кода по RS-485

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

01.02.2015 438 0
Кодовый замок с загрузкой эталонного кода по RS-485

Приёмопередатчик USART позволяет интегрировать кодовый замок в любую распределённую систему управления и сбора данных через интерфейсы RS-232, RS-422, RS-485 и др. Последовательный интерфейс передачи данных RS-485 – один из самых широко распространённых. Его отличает высокая скорость передачи данных и помехоустойчивость. В качестве линии связи используется экранированная витая пара с волновым сопротивлением ≈120 Ом. Для защиты от помех экран витой пары заземляется на одном из её концов. Основные особенности интерфейса RS-485:

  • используется однополярный источник питания +5 В, который применяется для питания большинства электронных приборов и микросхем;
  • мощность сигнала передатчика RS-485
  • позволяет подключать к одному передатчику до 32 приёмников и таким образом вести широковещательную передачу данных;
  • использование симметричных сигналов, имеющих гальваническую развязку с нулевым потенциалом питающей сети, исключает попадание помехи по нулевому проводу питания;
  • возможность работы передатчика на низкоомную нагрузку существенно увеличивает дальность связи.

Инженерные решения

На базе микроконтроллера ATtiny2313 можно изготовить кодовый замок (далее замок) и пульт для установки кода (далее пульт). Из них и сети на основе RS-485 можно сделать несложную систему безопасности для небольшого офиса или лаборатории (см. рис. 1).

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

Основные функциональные узлы замка и пульта одинаковы: драйвер RS-485, клавиатура и дисплей (см. рис. 2 и 3). Также замок содержит соленоид и схему его включения.


Замки №1–9 идентичны по схемотехнике и конструкции. Основой замка служит микроконтроллер DD3, рабочая частота которого задаётся генератором с внешним резонатором ZQ1 на 10 000 МГц. Порт РD-микроконтроллера управляет ди­намической индикацией, которая собрана на транзисторах VT1…VT3 и цифровых семисегментных индикаторах HG1…HG3 с ограничительными резисторами R4…R11. Коды для включения вышеуказанных индикаторов при функционировании динамической индикации поступают в порт PВ-микроконтроллера. Для функционирования клавиатуры задействован вывод 7 (PD3) микроконтроллера. Питающее напряжение +5 В поступает на замок с соединителя Х3. В цепи питания микроконтроллера стоят конденсаторы С7 (фильтрующий) и C6 (блокировочный).

Сигнал «Выход» (контакт 1 соединителя Х2) поступает c вывода 11 микроконтроллера. Сигналы с приёмо-передатчика USART поступают на драйвер интерфейса RS-485 – микросхему DD1. Интерфейс управления замка включает в себя дисплей (индикаторы HG1…HG3) и клавиатуру (кнопки S1…S8). Кнопки S1…S7 задают код ввода, который отображается на дисплее. Кнопка входа/выхода замка в режим записи эталонного кода (S8) должна иметь ограниченный доступ. Если отказаться от визуального контроля набираемого кода, то индикаторы HG1…HG3, транзисторы VT1…VT3 и резисторы R4…R17 можно исключить. Если нет необходимости вводить эталонный код с клавиатуры замка (вместо этого вводить с пульта), то кнопку S8 также можно исключить.

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

Режим работы задаётся кнопкой S8. После подачи питания замок переходит в рабочий режим и на дисплее индицируется число 000. Микроконт­роллер в это время находится в режиме ожидания четырёхразрядного кода. Вводимый с клавиатуры четырёхразрядный код индицируется на дисплее (три младших разряда) и записывается в ОЗУ. После ввода четвёртого разряда нужно нажать любую из кнопок S1…S7. После ввода пятого разряда микроконтроллер побайтно сравнивает его с четырёхразрядным кодом, записанным в памяти EEPROM (так называемым эталонным кодом). Если в рабочем режиме вводимый код совпал с эталонным, то микроконтроллер в течение пяти секунд подаёт сигнал на включение механизма открывания замка (устанавливает лог. 0 на выводе 11 микроконтроллера) и обнуляет дисплей. Через пять секунд микроконтроллер выключает механизм открывания замка (устанавливает лог. 1 на выводе 11 микроконтроллера). Если вводимый код не совпадает с эталонным кодом, то лог. 0 на выводе 11 микроконтроллера не устанавливается, а дисплей обнуляется (на нём индицируется 000).

Для перевода замка в режим записи необходимо после включения питания нажать кнопку S8. При этом загорится точка h в третьем разряде (индикатор HG3). Вводимый с клавиатуры код микроконтроллер индицирует на дисплее и записывает в ОЗУ. После ввода четырёхразрядного кода необходимо нажать любую из кнопок S1…S7. Код, индицируемый на дисплее, запишется в память EEPROM микроконтроллера, а дисплей обнулится. Для выхода из режима записи нужно нажать кнопку S8, после чего точка h в третьем разряде (индикатор HG3) погаснет.

ПО для кодового замка

Программное обеспечение микроконтроллеров для пульта и замка было разработано в среде Atmel Studio 6.1. На ассемблере программа для замка занимает всего порядка 0,8 Кб памяти и прописывается к программам микроконтроллера.

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

  • процедура опроса кнопок S1…S8;
  • функционирование динамической индикации;
  • перекодировка двоичного числа в код для отображения информации на дисплее;
  • формирование временно¢го интервала длительностью пять секунд (установка сигнала лог. 0 на выводе PD6 микроконтроллера);
  • запись набранного кода в память EEPROM микроконтроллера и его чтение.

В ОЗУ микроконтроллера с адреса $61 по адрес $63 организован буфер отображения для динамической индикации (RAM = $60 – начальный адрес рабочего участка ОЗУ для буферов отображения и приёма по последовательному каналу). Флаги, задействованные в программе, находятся в регистрах R19 (flo) и R25 (flo1).

Загрузить эталонный код в память EEPROM микроконтроллера можно и с пульта. В данном случае в обработке прерывания по завершению приёма буфера, из регистра UDR данные переписываются в буфер приёма с адреса RAM+12 по адрес RAM+16. По адресу RAM+12 находится число, определяющее адрес замка, которому адресована посылка (эталонный код). Соответственно, по адресам RAM+13…RAM+16 записан эталонный код. Для примера в листинге приведён фрагмент программы для замка №1, где принятый адрес сравнивается с адресом «1» и далее переписывается в память EEPROM микроконтроллера (переход на метку ACP). Полный вариант листинга см. в дополнительных материалах к статье на сайте журнала.

Рассмотрим алгоритм работы пульта. После подачи питания пульт переходит в рабочий режим, на дисплее индицируется число 0000. Перед вводом эталонного кода необходимо установить в четвёртом разряде (индикатор HG4 на рисунке 3) адрес (число) того замка, в который необходимо загрузить эталонный код. Если установлен адрес 1, то эталонный код загрузится в замок №1, если установлен адрес 2, то – в замок №2 и так далее. Затем с клавиатуры нужно набрать четырёхразрядный код. Три младших разряда индицируются на дисплее замка (индикаторы HG1…HG3 на рисунке 2). После набора четырёхразрядного кода необходимо нажать кнопку S5. Код, индицируемый на дисплее, запишется в память EEPROM микроконтроллера выбранного замка. Далее для обнуления дисплея нужно нажать любую из кнопок S1…S4 или S6…S8.

Основные функциональные узлы пульта и замка идентичны. Динамическая индикация собрана на транзисторах VT1…VT4 и цифровых семисегментных индикаторах HG1…HG4 с ограничительными резисторами R4…R11. В интерфейс управления добавлен дополнительный разряд для числа, определяющего адрес замка.

Кнопки S1…S4 и S6…S8 обозначены соответственно цифрами 1…7. Они задают трёхразрядный эталонный код, отображаемый на четырёхразрядном дисплее. Кнопка S5 предназначена для записи эталонного кода в выбранный замок.

В программе пульта также использованы три прерывания: Reset, прерывание таймера Т0 и прерывание по событию «регистр данных USART пуст». При переходе на метку Reset инициализируются стек, USART, таймер, порты, а также флаги и переменные величины, используемые в программе. В обработчике прерывания таймера Т0 осуществляются следующие функции:

  • процедура опроса кнопок S1…S8;
  • функционирование динамической индикации;
  • перекодировка двоичного числа в код для отображения информации на индикаторах.

В подпрограмме обработки прерывания по событию «регистр данных USART пуст» происходит передача данных передатчиком USART. В ОЗУ микроконтроллера с адреса $61 по адрес $64 организован буфер отображения для динамической индикации.

В замке и пульте применены резисторы типа С2-33Н (подойдут любые другие с такой же мощностью рассеяния и погрешностью 5%) и конденсаторы типа К10-17а (С1…С6) и К50-35а (С7). Семисегментные индикаторы HG1…HG4 типа HDSP-F501 имеют зелёный цвет. Элементную базу для клавиатуры и динамической индикации можно подобрать совершенно любую, лишь бы она отвечала требованиям, применяемым для работы в составе функциональных узлов. Для организации сети RS-485 можно применить кабель типа КИПЭП 1 ´ 2 ´ 0,60 ТУ16.К99-008-2001 или любой другой типа «витая пара» с волновым сопротивлением 120 Ом.

Схема включения соленоида для втягивания ригеля (задвижки) замков приведена на рисунке 4. Соединитель Х1 подключается к ригелю. Через соединитель Х2 на схему поступает напряжение +24 В. К соединителю Х3 подключается соединитель Х2 замка.

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

Тексты программы для пульта и версии программ для замков №1…9, а также hex.фалы представлены в дополнительных материалах к статье, размещённых на сайте журнала «Современная электроника» (www.soel.ru). Незначительно изменяя программное обеспечение, можно повысить степень защиты системы: например, увеличивая разрядность эталонного кода до 10.

Литература

  1. www.atmel.com.

Если вам понравился материал, кликните значок — вы поможете нам узнать, каким статьям и новостям следует отдавать предпочтение. Если вы хотите обсудить материал —не стесняйтесь оставлять свои комментарии : возможно, они будут полезны другим нашим читателям!

01.02.2015 438 0
Комментарии
Рекомендуем
К 130-летию со дня рождения великого советского физика Игоря Евгеньевича Тамма. Часть 4. История возникновения  концепции поляритонов

К 130-летию со дня рождения великого советского физика Игоря Евгеньевича Тамма. Часть 4. История возникновения концепции поляритонов

В прошлом году в журнале «Современная электроника» были опубликованы три статьи, посвящённые юбилею выдающегося российского физика-теоретика Игоря Евгеньевича Тамма (СОЭЛ № 7–9, 2025). В частности, были описаны современные быстродействующие электрооптические модуляторы, поверхностные состояния Тамма, запрещённые фотонные зоны и фотонные кристаллы. В этих статьях умышленно не затрагивались темы поляритонов, оптических состояний Тамма (ОСТ) и плазмон-поляритонов Тамма (ППТ). Поскольку ключевой вклад в раннюю разработку этих явлений в основном принадлежит российским учёным, целесообразно посвятить их открытию более подробные отдельные статьи. Ниже рассмотрены два основных типа гибридных фотонных частиц: экситон-поляритоны и фонон-поляритоны.  
24.04.2026 СЭ №4/2026 143 0
Телевизор с электронно-лучевой трубкой: разработки С.И. Катаева и их значение

Телевизор с электронно-лучевой трубкой: разработки С.И. Катаева и их значение

«…Наступит время… когда миллионы таких приборов, таких "электрических глаз" будут всесторонне обслуживать общественную и частную жизнь, науку, технику и промышленность…» Б. Розинг Семён Исидорович Катаев (1904–1991 гг.), советский учёный и изобретатель в области телевидения, доктор технических наук, профессор, заслуженный деятель науки и техники – незаслуженно обделён вниманием популяризаторами истории электроники и телевидения в нашей стране. Тем не менее И.С. Катаев внёс значительный вклад в развитие инженерной мысли в СССР при разработке и усовершенствовании электронно-лучевых трубок (ЭЛТ), ставших на многие годы ключевой технологией, лежащей в основе экранов телевизоров и оборудования различного назначения. Катаев дополнил изобретение Зворыкина и по праву может считаться ещё одним «отцом» отечественного телевидения. В найденных документах роль Катаева прослеживается чётко, и в статье мы хотим это показать.
23.04.2026 СЭ №4/2026 137 0
Электронные системы диагностики, стимуляции и воздействия на человека на примере BAMH и управления –  на примере AE-Skin

Электронные системы диагностики, стимуляции и воздействия на человека на примере BAMH и управления – на примере AE-Skin

Путь будущих разработок в области современной электроники пролегает от визуального отображения окружающего пространства до тактильного. В этой связи представляют интерес система Bioinspired Adaptable Multiplanar mechano-vibrotactile Haptic (BAMH) – пневматически активируемый роботизированный электронный комплекс с интерфейсом из мягкого материала и система AE-Skin, обеспечивающая интерфейс между кожей человека и физическими поверхностями. Принцип её действия достаточно известен и заложен в управлении интерактивными экранами. В первой части статьи рассматриваются особенности новых разработок в области медицинской электроники и перспективы тактильного воздействия на кожу человека для лечения и изменения настроения. Во второй части представлен подробный разбор AE-Skin и примеры её совершенствования во всех сферах жизни человека: от управления посредством электронных тактильных датчиков миниатюрной формы до устройств на основе новых технологий, воспринимающих движения руками без прикосновения и без применения пироэлектрических детекторов, как управляющие сигналы для РЭА.
17.04.2026 СЭ №4/2026 183 0

ООО «ИнСАТ»  ИНН 7734682230  erid = 2SDnjdWbKyt
ООО «ИнСАТ»  ИНН 7734682230  erid = 2SDnje2F5cn
  Подписывайтесь на наш канал в Telegram и читайте новости раньше всех! Подписаться