Menu Home

Бесплатная техническая библиотека для любителей и профессионалов Бесплатная техническая библиотека


Проектирование автоматизированной системы контроля доступа. Энциклопедия радиоэлектроники и электротехники

Бесплатная техническая библиотека

Энциклопедия радиоэлектроники и электротехники / Микроконтроллеры

Комментарии к статье Комментарии к статье

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

Итак, с чего начать? Разработку любой системы начинают с составления списка требований, которым она должна соответствовать. Для описываемой в статье системы список может выглядеть следующим образом. Система должна:

  1. Контролировать доступ в помещение через одну дверь.
  2. Обеспечивать уникальную идентификацию каждого пользователя.
  3. Поддерживать журнал проходов с записью времени прохода и идентификатора пользователя.
  4. Обеспечивать работу с тремя категориями пользователей.

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

Выбор технологии идентификации пользователей (п. 2) значительно влияет на такие характеристики системы, как стойкость (не допускать возможности доступа к объекту сторонних лиц путем подбора электронного ключа/кода), удобство использования (время, которое будут тратить пользователи на процесс идентификации), стоимость самой системы и дальнейшей ее эксплуатации. В качестве примеров возможных решений тут могут быть ввод пароля через клавиатуру, использование карточек с магнитной полосой и электронных ключей iButton фирмы Dallas Semiconductor [1,2].

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

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

Рассмотрим последний вариант. Ключ iButton представляет собой интегральную микросхему, помещенную в металлический корпус-таблетку MicroCan диаметром 18 и высотой 6 мм. Номенклатура изделий, выпускаемых в таком исполнении, довольно обширна: часы реального времени, температурные датчики, энергонезависимая память и многое другое. Стоимость iButton невысока (около 2 долл. США), и реализация считывающего устройства также довольно проста - по сути дела, шина данных подключается напрямую к одной линии ввода/вывода порта микроконтроллера. При этом необходимо лишь программно реализовать 1-Wire протокол. Удобство использования подобной системы также очевидно - для того чтобы произошло считывание кода, пользователю достаточно прикоснуться "таблеткой" к контактной площадке. Для описываемой системы была выбрана модификация DS1990, которая не выполняет никаких других функций, кроме идентификации, т. е. чип содержит только уникальный код, который можно считать, послав устройству специальную команду.

Вернемся к требованиям по функциональности. Из п. 3 следует, что понадобится вести учет времени и записывать информацию о доступе пользователей к объекту охраны. Естественно, нужно предусмотреть возможные перебои с электропитанием, поэтому механизм ведения времени и журнала должен быть устойчивым к проблемам такого рода. Поскольку в качестве идентификатора пользователей выбран DS1990 и в любом случае придется программно реализовать 1-Wire протокол, имеет смысл использовать в качестве часов реального времени другую модификацию iButton - DS1994. Этот чип содержит встроенную литиевую батарею питания, обеспечивающую гарантированный ход часов в течение 10 лет.

Для хранения журнала проходов выбрана серия Flash-памяти фирмы Atmel АТ45 [3]. Чтение/запись данных в память этого типа осуществляется по последовательному протоколу SPI, общее число задействованных линий ввода/вывода равно 7. Из доступных микросхем этой серии выбрана AT45D041 с объемом памяти 4 Мбит.

Для управления настройками системы необходима клавиатура. В данном случае достаточно матрицы кнопок 3x4 с цифрами 0...9 и символами "*" и "#". Такая клавиатура потребует еще 3+4=7 линий ввода/вывода микроконтроллера.

Последнее, что необходимо иметь в системе, - это небольшой дисплей для просмотра журнала проходов и конфигурирования системы. Номенклатура выпускаемых в настоящее время недорогих дисплеев довольно обширна, однако в нашем случае не требуется вывод графики, поэтому вполне достаточно ЖКИ для вывода буквенно-цифровой информации. Наиболее популярны сегодня ЖКИ на базе контроллера HITACHI HD44780 [4]. Их отличает простота подключения и невысокая стоимость. Данные передаются по восьми- или четырехбитному интерфейсу (в зависимости от используемого режима), плюс необходимо еще три линии ввода/вывода для передачи управляющих сигналов. С целью экономии линий ввода/вывода выбран четырехбитный интерфейс, следовательно, общее число линий ввода/вывода для управления ЖКИ также равно 7.

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

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

С точки зрения программирования очень привлекательны микроконтроллеры, в которых реализована так называемая ISP-технология (Iп-System Programming - внутрисхемное программирование). Для того чтобы загрузить в микроконтроллер новый программный код, его не нужно вынимать из платы: программирование производится внутрисхемно через специальные выводы. Более того, для некоторых модификаций не нужен даже программатор - "прошивка" осуществляется через параллельный порт компьютера. Естественно, что наиболее приемлемое решение - использование в системе именно такого микроконтроллера, который не требует дополнительных средств для прошивки.

Для реализации поставленной задачи выбран микроконтроллер AT89S8252, полностью совместимый по коду и расположению выводов с микроконтроллерами семейства 8051. Он имеет 8 Кбайт внутрисхемно программируемой флэш-памяти программ с ресурсом 1000 циклов перезаписи, 2 Кбайт встроенной EEPROM (электрически стираемой программируемой постоянной памяти), 256 байт ОЗУ, 32 линии ввода/вывода, три таймера, сторожевой таймер, аппаратно поддерживает SPI интерфейс. Тактовая частота - О...24 МГц (один машинный цикл выполняется за 12 тактов, следовательно, максимальная производительность - два миллиона операций в секунду).

Выбор именно этого микроконтроллера обоснован следующим. Микроконтроллеры серии 8051 имеют обширный набор инструкций, что облегчает их программирование на низком уровне (например, поддерживаются операции над отдельными битами [5]). ISP-технология ускоряет отладку и облегчает разработку, аппаратная поддержка SPI интерфейса позволяет подключить выбранную флэш-память серии АТ45 без дополнительного программирования данного протокола. 2 Кбайт встроенной EEPROM можно использовать для хранения информации, сохранность которой должна быть обеспечена независимо от наличия внешнего питания. 32-х линий ввода/вывода вполне достаточно для реализации описываемой системы. Наличие таймеров позволяет гибко реализовать 1 -Wire протокол, так как он требует точности соблюдения временных задержек.

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

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

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

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

Часы реального времени DS1994 имеют пятибайтный счетчик, который увеличивает свое содержимое 256 раз в секунду. Когда он переполняется, отсчет продолжается с нуля. Разрядности 5 байт хватает на 136 лет работы до переполнения счетчика. В связи с тем, что для пользователя нужно выводить время в удобном для него формате, а также необходимо обеспечить возможность настройки часов, встроенная система должна поддерживать перевод даты и времени из внутреннего формата в текстовый и обратно. В качестве точки отсчета выбрана дата 01.01.2000 00:00:00, что гарантирует работу часов и ведения журнала приблизительно до 2136 г.

И еще один момент, на который следует обратить внимание. Мы условились, что журнал проходов будет храниться во внешней флэш-памяти, однако нужно еще определить место для хранения списка прав доступа. При описании микроконтроллера упоминалось о встроенной EEPROM объемом 2 Кбайт Она идеально подходит для данной цели, так как список прав доступа более ценен, чем журнал проходов, и если, например, последний можно извлечь (физически) из системы путем выемки соответствующего чипа из платы, то список прав доступа можно удалить только выемкой микроконтроллера, без которого работа системы невозможна. В описываемой системе указанного объема памяти хватило на размещение 168 учетных записей, т. е. максимальное число пользователей - 168.

Журнал проходов реализован в виде кольцевого списка, и при его переполнении удаляются самые старые записи. Размер одной записи журнала равен 12 байт (4 байта для хранения времени прохода и 8 байт на идентификатор). Из этого следует, что памяти журнала хватит для протоколирования примерно 45 000 проходов до того момента, как произойдет первое переполнение журнала.

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

Принципиальная схема разработанного устройства изображена на рисунке.

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

Как видно, помимо микроконтроллера DD1, оно содержит микросхему Flash-памяти DS1, 12-кнопочную клавиатуру SB1 - SB12 и ЖКИ HG1. Тактовую частоту микроконтроллера задает кварцевый резонатор ZQ1 на 24 МГц. Порт Р0 используется для ввода информации от iButton часов (подключают к розетке Х1) и идентификатора (подключают к Х2), управления реле (через транзисторный ключ), подающим питание на электромагнит замка, светодиодом HL1, сигнализирующим об открывании двери, и регистрации состояния установленного на ней геркона. Обмен информацией с микросхемой Flash-памяти DS1 осуществляется через порт Р1. Клавиатуру обслуживает порт Р2, индикатор HG1 - порт РЗ. Питается устройство стабилизированным напряжением 5 В. Для питания реле, управляющего работой электромагнита, необходим источник напряжения 16...20 В.

Устройство собирают на плате подходящих размеров. Для подключения микроконтроллера DD1 и микросхемы памяти DS1 желательно использовать соответствующие розетки. Смонтированную плату помещают в пластмассовый или металлический корпус, на переднюю панель выводят клавиатуру и дисплей ЖКИ. Устройство устанавливают внутри охраняемого помещения.

Коды "прошивки" микроконтроллера и исходные тексты программы

После включения устройства на ЖКИ выводится список пунктов меню, приведенный в табл. 2. Так как у индикатора всего две строки, для горизонтальной "прокрутки" используют клавиши "#" и "*". Для выполнения любой из указанных команд требуются привилегии администратора, и после выбора пункта меню нажатием соответствующей клавиши необходимо предъявить ключ с администраторскими правами, в противном случае запрошенная команда игнорируется.

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

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

Аппаратная часть. Любой микропроцессор имеет предельно допустимые значения входного и выходного тока портов ввода/вывода. Например, если необходимо использовать в системе светодиод, то большинство микроконтроллеров не сможет выдать необходимый ток на порт ввода/вывода, если активным состоянием будет лог. 1. В подобном случае необходимо сделать активным состояние лог. 0, подключив анод светодиода к шине питания. Не следует также забывать об ограничении тока включением последовательно с нагрузкой резистора сопротивлением примерно 2 кОм. Если все же необходимо использовать лог. 1 как активное состояние, а нагрузка слишком велика, то для включения нагрузки следует применить транзисторный ключ.

При реализации шины 1-Wire необходимо "подтягивать" шину данных через резистор к напряжению питания. Это нужно для того, чтобы во время перехода из низкого состояния в высокое линия быстро достигала порога переключения в лог. 1. Номинал резистора должен быть в пределах 4,7...5,1 кОм. Если длина проводов достаточно велика (несколько метров), сопротивление резистора можно уменьшить.

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

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

Если в программе используются строковые константы, то ввиду ограниченного объема оперативной памяти необходимо применять специальные директивы, позволяющие указать компилятору на то, что они должны быть расположены в области памяти программ. Например, для компилятора Keil uVision это выглядит так: 'const char code sz[6] = "Hello"', где модификатор "code" указывает компилятору на то, что строку следует разместить в памяти программ.

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

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

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

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

Естественно, описанную в статье систему можно усовершенствовать в нескольких направлениях. Например, добавить ограничение доступа по времени суток, протоколировать попытки несанкционированного доступа (предъявления идентификатора без прав доступа), добавить поддержку контроля доступа ко второму объекту (это потребует дополнительных трех линий ввода/вывода), однако, как известно, совершенству предела нет, а вот объем памяти программ в микроконтроллере ограничен. Главная же цель статьи в том, чтобы показать на конкретном примере полный цикл создания встроенной системы, а также дать некоторые практические советы по решению проблем, с которыми можно столкнуться в процессе ее разработки.

Литература

  1. Техническая документация фирмы Dallas Semiconductor. - <dalseml.com>.
  2. Синюткин А. Электронный замок на ключах-"таблетках" iButton. - Радио, 2001, № 2, с. 31 - 33; № 3, с. 30. 31.
  3. Техническая документация фирмы Atmel AT45D041. - <atmel.com>.
  4. Техническая документация фирмы Hitachi "HD44780U (LCD-11) (Dot Matrix Liquid Crystal Display Controller/Driver) ADE-207-272(Z) '99.9 Rev. CO".
  5. Предко М. Руководство по микроконтроллерам. Том 1. - M.: Постмаркет, 2001.

Автор: А.Ранцевич, г.Минск

Смотрите другие статьи раздела Микроконтроллеры.

Читайте и пишите полезные комментарии к этой статье.

<< Назад

Последние новости науки и техники, новинки электроники:

Власть является ключевым фактором счастья в отношениях 11.03.2026

Исследования семейных и романтических отношений показывают, что длительное счастье пары зависит не только от привычных факторов, таких как доверие, уважение и преданность, но и от более тонких психологических аспектов. Современные ученые ищут закономерности, которые отличают действительно счастливые пары от остальных, чтобы понять, какие механизмы поддерживают гармонию в отношениях. Группа исследователей из Университета Мартина Лютера в Галле-Виттенберге и Бамбергского университета провела опрос среди 181 пары, которые состояли в совместных отношениях более восьми лет и прожили вместе хотя бы месяц. Участники заполняли анкету, описывая различные аспекты своих отношений, включая распределение обязанностей, эмоциональную поддержку и степень вовлеченности в совместные решения. Анализ данных показал интересный паттерн: пары, где оба партнера ощущали высокий уровень личной власти, оказывались наиболее счастливыми и удовлетворенными. В данном контексте под властью понимается способност ...>>

Защищенная колонка-повербанк Anker Soundcore Boom Go 3i 11.03.2026

Компания Anker представила новую модель линейки Soundcore - колонку Soundcore Boom Go 3i, ориентированную на активное использование на улице. Новинка отличается высокой степенью защиты: корпус соответствует стандарту IP68, что обеспечивает водо- и пыленепроницаемость, а ударопрочный дизайн выдерживает падение с высоты до одного метра. За качество звука отвечает 15-ваттный драйвер, обеспечивающий пик громкости до 92 дБ, а технология BassUp 2.0 усиливает низкие частоты, делая звучание более насыщенным. Колонка обладает автономностью до 24 часов, а LED-индикатор позволяет контролировать уровень заряда батареи. Кроме того, Soundcore Boom Go 3i может выполнять функцию павербанка: согласно внутренним тестам, устройство способно зарядить iPhone 17 с нуля до 40% за один час, что делает его полезным аксессуаром в походах и поездках. Среди функциональных особенностей модели стоит выделить технологию Auracast, которая улучшает подключение и позволяет создавать стереопару из двух колонок ...>>

Раннее воздержание от алкоголя перестраивает мозг и иммунитет 10.03.2026

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

Случайная новость из Архива

SSD-накопитель Transcend ESD420 20.07.2025

Компания Transcend перезентовала SSD Transcend ESD420 - новый портативный и производительный накопитель с уникальной системой крепления.

Основная особенность устройства заключается в наличии встроенного магнита, который позволяет легко прикрепить его к задней панели iPhone, поддерживающего MagSafe. Это делает использование внешнего хранилища особенно удобным в полевых условиях, когда важно снимать видео без тряски и задержек, а свободное место заканчивается на глазах.

Инженеры компании Transcend позаботились о совместимости: накопитель можно подключить напрямую через кабель USB-C - USB-C, что особенно актуально для последних моделей iPhone. Благодаря этому подключению устройство способно поддерживать ресурсоемкие функции, такие как запись в формате 4K ProRes прямо на внешний SSD, обходя ограничения встроенной памяти.

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

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

Что касается технических характеристик, накопитель доступен в объемах 1, 2 и 4 ТБ, а максимальная скорость чтения и записи заявлена на уровне до 2000 МБ/с. Это делает его подходящим не только для записи видео, но и для быстрого переноса больших объемов данных.

По умолчанию диск отформатирован в exFAT, что обеспечивает совместимость как с macOS, так и с Windows без необходимости переустановки системы файлов.

Другие интересные новости:

▪ Физический эталон килограмма заменят квантовой формулой

▪ Говяжий стейк из пробирки

▪ Новая технология производства шоколада

▪ Магнитная начинка в пустом бутерброде

▪ Телескоп SPHEREx

Лента новостей науки и техники, новинок электроники

 

Интересные материалы Бесплатной технической библиотеки:

▪ раздел сайта Электрику. ПТЭ. Подборка статей

▪ статья Основы бизнеса. Шпаргалка

▪ статья Как был придуман календарь? Подробный ответ

▪ статья Ферула мускусная. Легенды, выращивание, способы применения

▪ статья Применение микросхем A277D (К1003ПП1). Энциклопедия радиоэлектроники и электротехники

▪ статья Радиоприемник на микросхеме К174ХА10. Энциклопедия радиоэлектроники и электротехники

Оставьте свой комментарий к этой статье:

Имя:


E-mail (не обязательно):


Комментарий:





Главная страница | Библиотека | Статьи | Карта сайта | Отзывы о сайте

www.diagram.com.ua

www.diagram.com.ua
2000-2026