Журнал "Новости Электроники", номер 2, 2010 год.

Журнал "Новости Электроники", номер 2, 2010 год.Устройство электронной печати на базе микроконтроллера MSP430Валерий Жижин (ЗАО ╚ИПК ╚СТРАЖ╩) В статье идет речь о новом устройстве ограничения доступа в помещения═√ электронной печати. Рассматриваются алгоритм его функционирования и реализация на микроконтроллере MSP430F1232 компании Texas Instruments. Приводятся принципиальная схема устройства, алгоритм работы и фрагмент листинга программы на языке Си, а также результаты двухлетнего тестирования опытного образца.

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

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

Принцип действия и алгоритм работы электронной печати заключается в следующем: в процессе опечатывания корпус устройства накладывается на замочную скважину, блокируя ее входное отверстие. Установка устройства производится на две металлические втулки, размещенные сверху и снизу относительно замочной скважины, в верхние части которых вмонтированы постоянные магниты Nd-Fe-B. Это единственный способ доработки наружной поверхности корпуса замка.

Магниты выполняют двойную функцию: осуществляют фиксацию и удержание корпуса электронной печати на скважине замка; являются элементами датчика присутствия устройства, реализованном на цифровом омниполярном датчике Холла А3212 компании Allegro Microsystems Inc. При установке устройства на металлические втулки происходит его активация. При этом в течение 7 секунд индицируется сгенерированный псевдослучайный цифровой код печати и начинается отсчет времени. При нажатии на контрольную кнопку происходит индикация кода печати и интервала времени с момента опечатывания. Для перезапуска устройства достаточно его снять и снова поставить.

Алгоритм работы электронной печати состоит в следующем:

1. Печать снята с корпуса замка - выход датчика Холла «0 р 1», микроконтроллер - в SLEEP-peжиме. Каждую секунду происходит прерывание от интервального таймера.

В подпрограмме обработки прерывания _interrupt void watchdog_timer (void) реализуются следующие функции:

генерация последовательности пяти псевдослучайных чисел (функция rand);запись значений минут и часов в соответствующие ячейки;выход из подпрограммы прерывания в SLEEP-peжим.

2. Устройство активизировано - выход датчика Холла «1 р 0», генерация прерывания. В подпрограмме обработки прерывания _interrupt void port1_ISR (void) происходит:

останов таймера;запись последних пяти сгенерированных псевдослучайных чисел в буфер sens;отображение на LED индикаторе числа «печати» из буфера sens;обнуление и запуск таймера;выход из подпрограммы прерывания в SLEEP peжим.

3. При нажатии на кнопку контроля - генерация нового прерывания _interrupt void port2_ISR (void):

останов таймера;отображение в течение 3 секунд на LED индикаторе числа «печати» из буфера sens;отображение в течение 3 секунд интервала времени с момента установки печати; формат отображения времени «00 минут: 00 часов» (0...59 минут, 0...99 часов).перезапуск таймера (с точки останова);выход из подпрограммы прерывания в SLEEP-peжим.

Для обеспечения режима минимального энергопотребления устройства LED-индикатор используется в режиме динамической индикации.

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

Программный код для микроконтроллера MSP430F1232 написан на языке Си. Здесь нужно отметить некоторые особенности программы:

1. Регистр статуса микроконтроллера переводится в режим LPM3 [1];

_BIS_SR(GIE+LPM3_bits);

2. Сторожевой таймер переводится в режим интервального таймера с управлением от внешнего кварцевого генератора 32,768 кГц;

WDTCTL=WDTPW+WDTCNTCL+WDTSSEL+WDTTMSEL;

//Ft=32768/32768=1Hz

IE1=WDTIE;

//Разрешение прерывания от интервального таймера.

3. Для отсчета временных интервалов используется Таймер А.

4. Функция rand() основана на генерации рекуррентной последовательности и возвращает равномерно распределенное псевдослучайное число в интервале значений 0...32767. Эта функция описана в файле .

С целью улучшения статистических свойств и уменьшения вероятности повторения начальных значений rand(), при перезапуске программы (например, при замене источника питания) вводится дополнительный временной случайный фактор - генерация значений rand() происходит в подпрограмме обработке событий интервального таймера WDT. Вот так она выглядит:

//Ежесекундное прерывание от интервального таймера;

//Запись значений минут и часов в соответствующие ячейки;

//Генерация новых случайных чисел;

#pragma vector=WDT_VECTOR

_interrupt void watchdog_timer(void)

{

unsigned int g=0;

unsigned char n=0;

//Отсчет времени

sec1++;

if(sec1>9)

{sec10++; sec1=0;}

if(sec10>=6)

{min1++; sec10=0; sec1=0;}

if(min1>9)

{min10++; min1=0;}

if(min10>=6)

{ch1++; min10=0; min1=0;}

if(ch1>9)

{ch10++; ch1=0;}

if(ch10>9)

{ch10=0; ch1=0;}

 

//****генерация новых случайных чисел*****

for(n=0; n






Рекомендуемый контент




Copyright © 2010-2017 housea.ru. Контакты: info@housea.ru При использовании материалов веб-сайта Домашнее Радио, гиперссылка на источник обязательна.