Кодовый замок
Скачать 2.31 Mb.
|
1 2 Федеральное агентство по образованию Государственное образовательное учреждение Высшего профессионального образования Нижегородский государственный технический университет им. Р. Е. Алексеева Институт радиоэлектроники и информационных технологий (ИРИТ) Кафедра «Вычислительные системы и технологии» Курсовая работа по дисциплине: «Микропроцессорные системы» по теме: «Кодовый замок» Выполнил: студент группы 09-В-2 Кузнецова Т.Н. Проверил: Киселёв Ю.Н. Нижний Новгород 2012г. Содержание Введение Выбор и обоснование технических решений Детализация исходного ТЗ и постановка задачи Источники информации (входных сигналов) Приемник информации (выходных сигналов) Возможные пути решения поставленной задачи Возможные варианты структурных схем Обоснование выбора структурной схемы Обоснование выбора микроконтроллера для решения поставленной задачи Структурная схема устройства и её описание Структурная схема Назначение отдельных функциональных блоков Алгоритм работы структурной схемы Разработка функциональной и принципиальной схемы Описание принципиальной схемы устройства Описание функциональной схемы устройств Разработка рабочей программы Текст программы Моделирование Заключение Список литературы Введение Кодовые замки являются эффективным средством предотвращения доступа посторонних лиц к охраняемым помещениям. К их достоинствам можно отнести простоту в обращении, надёжность, возможность обеспечить высокую степень защиты, относительную лёгкость смены кода (по сравнению со сменой обычного механического замка). Также немаловажными являются отсутствие необходимости изготовления ключей при предоставлении доступа большому количеству людей и невозможность физической потери ключа. Недостатком таких систем можно назвать возможность для злоумышленника подсмотреть код или подобрать его. Однако, при большой разрядности кода или наличии конструктивных особенностей, препятствующих подбору кода, таких как ограничение количества попыток или введение временной задержки между неудачными попытками, эта задача сильно затрудняется, поэтому последний недостаток нельзя назвать существенным. В данном курсовом проекте осуществляется разработка электронного кодового замка с использованием микроконтроллера. 2. Выбор и обоснование технических решений 2.1 Детализация исходного ТЗ и постановка задачи Задание: Разработать электронный кодовый замок, имеющий 10 кнопок для ввода кода, обозначенных цифрами от «0» до «9». Замок должен иметь переключатель режимов «Запись/Работа», кнопку «Сброс» в случае набора неверной цифры. Предусматривается смена установленного кода. Длина кода 6 десятичных цифр. После правильно введенного кода должна загораться лампочка. Общая рекомендация: Устройство должно быть выполнено на базе стандартных микроконтроллеров с моделированием работы в симуляторе Proteus. 2.2 Источники информации (входных сигналов) Для того чтобы сказать что будет источником информации сначала нужно определить в каком, конкретно рассматриваемом случае мы будем производить анализ системы. То есть в случае ввода кода, который вводит пользователь, источником информации будет являться он сам, поскольку именно от пользователя исходит информация, которую он либо генерирует сам, либо черпает из окружающего мира. 2.3 Приемник информации (выходных сигналов) Для случая считывания данных из устройства приемником информации можно считать пользователя, который набирает код на считывание данных для того чтобы микроконтроллер смог их принять и выполнить проверку на верность пароля. 2.4 Возможные пути решения поставленной задачи Рассмотрим специфику данной задачи. Кодовый замок должен обеспечивать управление исполнительным устройством электромеханического замка, то есть должен управлять подачей напряжения, обеспечивающего отпирание двери. Предполагается, что замок открывается наличием напряжения на исполнительном устройстве и закрывается его отсутствием. Поэтому в системе должен присутствовать датчик открытия двери, чтобы можно было определить, когда дверь открыта, и подача питания уже не требуется. Когда пользователь вводит верный код, он должен быть извещён о том, что замок открыт, и дверь можно открывать, то есть должна присутствовать индикация факта открытия замка, в нашем случае должна загореться лампочка. При последовательных попытках подбора кода замка жителям дома будет полезно узнать об этом, будь то злоумышленник, пытающийся проникнуть в помещение или жилец, который забыл или не в состоянии набрать верный код. Таким образом, система должна сигнализировать о попытке подбора кода после определённого числа неудачных попыток. Кодовый замок представляет собой систему, отказ или сбои в работе которой могут привести к возникновению серьёзных трудностей и неудобств у владельца охраняемого помещения, поэтому система должна быть надёжной и обеспечивать стабильную работу. 2.5 Возможные варианты структурных схем Основная структурная схема будет похожа во всех перечисленных вариантах, меняться будут лишь составляющие ее элементы: Схема №1 клавиатура Устройство сигнализации об правильно введенном коде (светодиоды) микроконтроллер Аккумулятор /батарея Схема №2 Сенсорный дисплей Устройство сигнализации об правильно введенном коде микроконтроллер Аккумулятор /батарея Данная схема похожа на №1, она отличается лишь тем, что функцию ввода/вывода будет происходить с помощью одного устройства (сенсорного дисплея), кроме того она сложнее в реализации. Схема №3 микроконтроллер Исполнительный элемент электромеханического замка Устройство сигнализации об открытии двери Устройство сигнализации о попытке подбора кода Дисплей клавиатура Аккумулятор /батарея Датчик открытия двери В данной структурной схеме наглядно отражена реализация электромеханического кодового замка, но так как я выполняю данный курсовой проект в Proteus, сборка данной схемы будет сложна, да и реализация тоже. В принципе все структурные схемы очень будут похожи друг на друга, поскольку устройство кодового замка довольно простое и включает в себя совсем малое количество составляющих систему компонентов. Исходя из требований, предъявленных к устройству выше, электронный кодовый замок должен включать в себя следующие элементы: микроконтроллер; клавиатура; - устройство сигнализации о правильности введенного кода; - аккумулятор/батарея - дисплей 2.6 Обоснование выбора структурной схемы За основную структурную схему я выбрала первый вариант по следующим причинам: - Простота переноса данной структурной схемы уже на схематическое проектирование и программный аспект устройства. - Использование второй схемы потребует сложной дополнительно обработки сигналов с сенсорного дисплея, а так же повлечет усложнение программного кода на обработку всех возможных нестандартных ситуаций, возникающих при работе устройства. - Использование третий схемы потребует использование дополнительных датчиков для считывания информации, следовательно, произойдет усложнение программного кода. В итоге можно сказать, что для реализации в рамках курсового проекта с целью ознакомления и закрепления знаний об общих принципах работы с микроконтроллерами, графическими дисплеями, клавиатурой и другими элементами, правильным будет выбор первой структурной схемы. 2.7 Обоснование выбора микроконтроллера для решения поставленной задачи Основными требованиями, предъявляемыми к микроконтроллеру в этом проекте, являются: наличие параллельных портов ввода-вывода в количестве, достаточном для подключения всех устройств, входящих в структурную схему системы; достаточно высокая надёжность и стабильность работы; возможность работы в расширенном температурном диапазоне. Учитывая все эти требования, в качестве устройства управления я выбрала микроконтроллер PIC16F676 (8-разрядный КМОП микроконтроллер с Flash памятью, основан на AVR-архитектуре RISC , позволяет достигнуть оптимального соотношения производительности к потребляемой энергии). Причины выбора: - огромное количество справочной информации, примеров работы с микроконтроллером, книг по программированию данного МК. - PIC16F676 недорогой по сравнению с другими микроконтроллерами, имеет низкое энергопотребление. - Обеспечивает необходимую производительность, т.е. вычислительную мощность, позволяющую обрабатывать системные запросы в течение всей жизни системы на выбранном прикладном языке. - Данный микроконтроллер довольно доступен на радио рынках в достаточных количествах. - К нему существует большое количество компиляторов на множестве прикладных языков, в том числе и компилятор от разработчика данного микроконтроллера, что дает дополнительную поддержку от производителя. - Имеет все необходимые функции и устройства для работы в проектируемой системе. Основные характеристики: Высокопроизводительный RISC-процессор: • Всего 35 простых для изучения инструкции • Все инструкции исполняются за один такт (200 нс), кроме инструкций перехода, выполняемых за два такта; минимальная длительность такта 200 нс • 14 битовые команды • 8 - битовые данные • Вход внешних прерываний • 8-уровневый аппаратный стек • Прямой, косвенный и относительный режимы адресации для данных и инструкций Периферия: • 22 линий ввода/вывода с индивидуальным контролем направления • Сильноточные схемы портов ввода/вывода: • 25 мА макс. вытек. ток • 25 мА макс. втек. ток Timer0: 8-разрядный таймер/счетчик Timer1: 16-разрядный таймер/счетчик Timer2: 8-разрядный таймер/счетчик 2 ШИМ модуля Последовательные интерфейсы 3-проводный SPI I2C Master и Slave режимы USART (с поддержкой адреса) 5 каналов 10-битного АЦП 2 аналоговых компаратора Интегрированный программируемый источник опорного напряжения Особенности микроконтроллера: • Сброс при включении питания (POR) • Таймер включения питания (PWRT) и таймер запуска генератора (OST) • Сброс по снижению напряжения питания (BOR) • Сторожевой таймер (WDT) с собственным встроенным RC-генератором для повышения надежности работы • Режим экономии энергии (SLEEP) • Выбор источника тактового сигнала • Программирование на плате через последовательный порт (ICSPT) (с использованием двух выводов) • Отладка на плате через последовательный порт (ICD) (с использованием двух выводов) • Возможность самопрограммирования • Программируемая защита кода • 1000 циклов записи/стирания FLASH памяти программы • 100 000 циклов записи/стирания памяти данных ЭСППЗУ • Период хранения данных ЭСППЗУ > 40 лет Технология КМОП: • Экономичная, высокоскоростная технология КМОП • Полностью статическая архитектура • Широкий рабочий диапазон напряжений питания - от 2,0В до 5,5В • Промышленный и расширенный температурный диапазоны • Низкое потребление энергии 3. Структурная схема устройства и её описание 3.1 Структурная схема Микроконтроллер PIC16F676 Светодиоды (4 штуки) Клавиатура (телефонная) 3.2 Назначение отдельных функциональных блоков Назначение микроконтроллера PIC16F676: осуществляет управление всей системой, а именно: осуществляет цикл по сканированию клавиатуры, исходя из полученных сканированием данных, определяет код нажатой клавиши и выполняет некоторые запрограммированные действия. Назначение светодиодов: сообщение и правильности введенного кода. Назначение клавиатуры: ввод кода. 3.3 Алгоритм работы структурной схемы Ввод кода Загорается желтый светодиод нет Уменьшение количества попыток Загорается красный светодиод нет нет да да Загорается зеленый светодиод 4. Разработка функциональной и принципиальной схемы 4.1 Описание принципиальной схемы устройства Описание схемы: Данная принципиальная электрическая схема — графическое изображение с помощью условных графических и буквенно-цифровых обозначений (пиктограмм) связей между элементами проектируемого устройства – кодового замка. На ней видно как между собой связанны составные элементы системы: микроконтроллер, клавиши и светодиоды. В отличие от разводки печатной платы эта схема не показывает взаимного (физического) расположения элементов, эта лишь указывает на то, какие элементы с какими соединяются. электронный кодовый замок микроконтроллер 4.2 Описание функциональной схемы устройств 1 2 |