Кодово-сенсорный замок

Разработка системы автоматического управления кодовым замком на основе микроконтроллера MCS 51 фирмы Intel. Выбор датчика освещения. Определение модульных блоков, составляющих функциональную схему системы управления кодовым замком. Блок-схема алгоритма.

Рубрика Коммуникации, связь, цифровые приборы и радиоэлектроника
Вид курсовая работа
Язык русский
Дата добавления 07.05.2013
Размер файла 213,1 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ УКРАИНЫ

Курсовая работа

«Кодово-сенсорный замок»

Выполнил: ст.гр. ЭС-06-1

Проскурин А.

Проверил: Захожай О.И.

Алчевск,2010

Объектом проектирования является система управления кодовым замком.

Целью данной работы является разработка системы автоматического управления кодовым замком на основе микроконтроллера MCS 51 фирмы Intel, при этом должны удовлетворяться предъявляемые условия к безопасности и надёжности.

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

СОДЕРЖАНИЕ

ЧАСТЬ 1. АНАЛИЗ ОБЪЕКТА АВТОМАТИЗАЦИИ И ПОСТАНОВКА ЗАДАЧИ ПРОЕКТИРОВАНИЯ.

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

1.2 Методы обеспечения ограничения доступа в жилые и иные помещения

1.3 Варианты реализации системы управления

1.4 Постановка задачи проектирования

ЧАСТЬ 2. ПРОЕКТИРОВАНИЕ СТРУКТУРЫ СИСТЕМЫ УПРАВЛЕНИЯ КОДОВЫМ ЗАМКОМ

2.1 Анализ измерительных средств и методов получения измерительной информации от объекта

2.2 Анализ способов реализации силовой части управления кодовым замком

2.3 Выбор количества и типов входных и выходных информационных каналов

2.4 Разработка структуры информационного канала климат-контроля жилого помещения

2.5 Разработка структуры источника силового электропитания

ЧАСТЬ 3. ПРОЕКТИРОВАНИЕ ФУНКЦИОНАЛЬНОЙ СХЕМЫ СИСТЕМЫ УПРАВЛЕНИЯ КОДОВЫМ ЗАМКОМ

3.1 Проектирование функциональной схемы входных узлов

3.2 Разработка функциональных схем узлов вывода

3.3 Выбор микроконтроллера и проектирование функциональной схемы микроконтроллерного модуля

3.4 Проектирование средств связи с ЭВМ верхнего уровня

3.5 Разработка функциональной схемы источника электропитания

ЧАСТЬ 4. ЭЛЕМЕНТНАЯ БАЗА СИСТЕМЫ УПРАВЛЕНИЯ КОДОВЫМ ЗАМКОМ

4.1 Определение модульных блоков, составляющих функциональную схему системы управления кодовым замком

4.2 Элементная база системы управления кодовым замком

ЧАСТЬ 5. РАЗРАБОТКА ЧЕРТЕЖА БЛОК-СХЕМЫ АЛГОРИТМА ПРОГРАММЫ УПРАВЛЕНИЯ

5.1 Разработка структуры программы управления

5.2 Построение блок-схемы алгоритма

ЧАСТЬ 6. РАЗРАБОТКА УПРАВЛЯЮЩЕЙ ПРОГРАММЫ ДЛЯ СИСТЕМЫ УПРАВЛЕНИЯ КОДОВЫМ ЗАМКОМ

ВЫВОДЫ

микроконтроллер кодовый замок датчик

ВВЕДЕНИЕ

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

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

ЧАСТЬ 1. АНАЛИЗ ОБЪЕКТА АВТОМАТИЗАЦИИ И ПОСТАНОВКА ЗАДАЧИ ПРОЕКТИРОВАНИЯ

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

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

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

1.2 Методы обеспечения ограничения доступа в жилые и иные помещения

В последнее время широкое распространение получили замки, ключом к которым является электронная таблетка iButton (или touch memory) фирмы Dallas Semiconductor(тм). Такие замки часто используются на дверях подъездов, а также внутри многих учреждений. Кроме того, ключи iButton часто применяются для расчетов на автозаправочных станциях и в других местах. Таким образом, у многих уже есть ключи iButton от чего-либо. Поэтому при проектировании самодельного замка рационально использовать в нем уже имеющиеся у пользователя ключи. Именно так и сделано в предлагаемом замке: с ним могут работать любые типы ключей, так как используется только записанный в ПЗУ iButton серийный номер, который есть в любом их типе. К тому же, команда чтения этого номера одна и та же для всех типов ключей (33H). Код семейства, который различается у разных типов, может быть любым. Он воспринимается как еще одна цифра сериального номера. Постановку на охрану и снятие с нее производят с помощью электронных ключей-таблеток iButton DS1990. Эти очень простые в эксплуатации и надежные изделия не боятся влаги и агрессивной внешней среды, не требуют смены или подзарядки элементов питания, так как не содержат их. Код, записанный в таблетке, невозможно изменить. Он имеет 280 триллионов вариантов, что практически исключает возможность подборки ключа.

Замок проектировался для индивидуального использования, и имеет предельно простую конструкцию. На входной двери снаружи располагается только панелька для iButton и светодиод открывания дверей. Открывание дверей изнутри осуществляется с помощью кнопки. В качестве исполнительного механизма используется стандартная защелка с электромагнитом, который рассчитан на напряжение 12В. Коды ключей хранятся в энергонезависимой памяти и могут стираться и добавляться пользователем. Для защиты от несанкционированного перепрограммирования замка используется мастер-ключ. Всего в память можно записать 9 ключей. Это количество продиктовано возможностями 1-разрядного индикатора номера программируемого ключа. Если задействовать еще и буквы, можно увеличить суммарное количество ключей до 15. Это делается путем замены значения константы MAXK в программе. Таким же способом можно и уменьшить максимальное количество ключей.

Для изменения уровня подсветки индикатора замка в соответствии с временем суток было принято решение реализовать эту функцию с помощью стандартного датчика освещения и АЦП. В соответствии с изменением сигнала, снимаемого датчиком освещения, уровень подсветки индикатора будет изменяться: в темное время суток будет использована более интенсивная подсветка, а в светлое время суток - соответственно менее интенсивная.

1.3 Варианты реализации системы управления

Центральным ядром системы является управляющий микроконтроллер AT89C2051 фирмы Atmel, который является типичным представителем семейства MCS-51. Этот уровень организации управления кажется мне наиболее оптимальным. Механические замки являются довольно надёжными, но ключи сами по себе являются довольно неудобными. Современный человек и так вынужден носить с собой целую связку ключей на все случаи жизни: от гаража, квартиры, машины и т.д. Так зачем добавлять ещё и ключ от подъезда или офиса? Гораздо проще создать электронный замок, который не будет нуждаться ни в каких ключах.

Электронные замки на логических элементах (например, имеющаяся схема кодового замка на логических элементах К561ЛА7 и К561ЛА9) являются также достаточно надёжными, но эта система отличается очень большой негибкостью. Код задается путём особого запаивания контактов, идущих на входы триггеров. Соответственно, что бы изменить код доступа необходимо перепаивать контакты, а это, согласитесь, не очень удобно. Преимуществами этого типа замка является относительная дешевизна (хотя сама схема у него посложнее, чем на AT89C2051, просто элементы более дешевые) и защита от вибраций и иных вредных воздействий. Но эти преимущества явно не имеют особого значения, перед перспективой перепаивать схему, что бы сменить код. А ведь для обеспечения необходимого уровня безопасности код приходиться периодически менять и поэтому данная система явно не отвечает нашим целям. Вместо запаивания контактов можно применить микросхему RPROM (например, К573РФ5), но это приводит к удорожанию системы, но не решает проблему легкой смены кода.

Можно также создать систему управления замком не на таблетках iButton, а обычный кодовый замок. Но тут вступает в действие человеческий фактор. Человек может забыть код замка, а записанный где-либо код доступа ставит под угрозу всю идею системы безопасности. Ведь код можно переписать или запомнить, а таблетку скопировать невозможно. Поэтому, хоть система на таблетках несколько проигрывает обычному кодовому замку в финансовом плане, но в вопросах безопасности мы получаем явное преимущество.

Так же есть вариант создания системы на SMART-картах, которые также являются удобным и дешевым средством контроля доступа, но они практически равноценны с таблетками iButton, поэтому не имеет значения, на чем конкретно будет реализована система. К тому же кард-ридер сам по себе является более сложным устройством.

Возможна реализация данной схемы также на PIC-контроллере (например, PIC16F84). Такая система по функциональности практически не отличается от разрабатываемой нами, но является несколько более дорогой. Поскольку функциональность такая же, то более рациональным кажется построение схемы на AT89C2051.

Наконец, существуют системы контроля доступа на контроллерных системах или под управлением персонального (промышленного) компьютера. Такие системы отличаются повышенной сложностью. Зачастую они представляют собой целый комплекс, который включает в себя наблюдение, контроль доступа и сигнализацию. Они обеспечивают очень высокий уровень надёжность контроля доступа и могут применяться для контроля доступа к каким-либо важным объектам. Эти системы очень сложно реализовать и из-за высокой сложности приходиться продумывать довольно много средств защиты от всяческих сбоев внутри системы, что бы надежность системы оставалась на высоком уровне. Такая сложность систем естественно приводит к очень высокой стоимости. Система становиться практически нереализуемой одним человеком и очень сложной в поддержке и обслуживании. Такие системы бесспорно хороши, но поскольку в данной курсовой работе мы рассматриваем систему ограничения доступа в не очень важные помещения, то не имеет смысла рассматривать столь дорогостоящую и сложную систему.

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

ЧАСТЬ 2. ПРОЕКТИРОВАНИЕ СТРУКТУРЫ СИСТЕМЫ УПРАВЛЕНИЯ МИКРОКЛИМАТОМ ЖИЛОГО ПОМЕЩЕНИЯ

2.1 Анализ измерительных средств и методов получения измерительной информации от объекта

У некоторых материалов (например, CdS, CdSe, PbS, PbSe) электрическое сопротивление изменяется под действием света из-за образования электронно-дырочных пар. Возникающие при этом свободные носители заряда вызывают резкое снижение сопротивления.

Размещено на http://www.allbest.ru

Рисунок 2.1.1 - Конструктивное исполнение фоторезисторов

Конструкция промышленного фоторезистора показана на рисунке 2.1.1. Он состоит из тонкой пленки светочувствительного материала (CdSe/CdS) в форме меандра. Этот фотопроводящий слой, расположенный на керамической основе с соединительными проводами, для защиты от влаги и грязи покрыт слоем прозрачного полимера. На рисунке 2.1.1 показаны также наиболее распространенные конструктивные формы, обеспечивающие разнообразие возможностей применения фоторезисторов.

2.2 Анализ способов реализации силовой части управления климат-контроля жилого помещения

Силовая часть представляет собой исполнительный механизм - соленоид стандартного типа для кодовых замков.

Внешний вид исполнительного механизма показан на рисунке 2.2.1

2.3 Выбор количества и типов входных и выходных информационных каналов

В соответствии с количеством выбранных датчиков (один датчик освещения) определяется количество и типы входных и выходных каналов. Данный датчик необходим для контроля параметров освещения для изменения яркости индикатора в соответствии с временем суток.

Тип входного канала: АЦП.

Выходное напряжение: 0..5 В

Гальваническая развязка: не нужна.

Тип датчика: аналоговый.

Питание: постоянный ток.

Тип управления: транзисторный.

2.4 Разработка структуры информационного канала системы управления кодовым замком

Структура информационного канала системы зависит от количества применяемых датчиков, их типа и количества необходимых сигналов управления.

В данном случае у нас используется 1 датчик. Сигналы с датчика освещения является аналоговым и подается на вход Р1.0 контроллера. Данный вход в контроллере АТ89С2051 является аналоговым, и поступивший сигнал обрабатывается встроенным АЦП контроллера.

2.5 Разработка структуры источника силового электропитания

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

Рисунок 2.2.1 - Исполнительный механизм для кодового замка.

ЧАСТЬ 3. ПРОЕКТИРОВАНИЕ ФУНКЦИОНАЛЬНОЙ СХЕМЫ СИСТЕМЫ КОНТРОЛЯ ДОСТУПА НА ТАБЛЕТКАХ iButton

3.1 Проектирование функциональной схемы входных узлов

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

Кнопка открывания двери подключена к порту P3.2 через разъем XP1 и такие же элементы защиты, как и для iButton.

Рисунок 3.1.1 - функциональная схема подключения входных устройств

3.2 Разработка функциональных схем узлов вывода

К узлам вывода относятся исполнительные механизмы и средства индикации. В данной работе узлами вывода цепь управления соленоидом замка и семисегментный индикатор LTS6660E.

В данном проекте мы используем только шесть сегментов индикатора, поскольку в использовании точки нет необходимости.

Исполнительным устройством замка является электромагнит, подключенный через терминал XT1. Электомагнитом управляет ключ VT3, в качестве которого используется мощный МОП-транзистор типа IRF540. Диод VD7 защищает от выбросов самоиндукции. Ключом VT3 управляет транзистор VT2, который инвертирует сигнал, поступающий с порта P3.0 и обеспечивает управляющие уровни 0/12В на затворе VT3. Инверсия нужна для того, чтобы исполнительное устройство не срабатывало во время сброса микроконтроллера, когда на порту присутствует уровень логической единицы. 12-вольтовые управляющие уровни позволили применить обычный МОП-транзистор вместо более дефицитного низкопорогового (logick level). Для индикации открытия замка используется светодиод, который управляется тем же портом, что и электромагнит, но через транзисторный ключ VT1. Светодиод подключается через тот же разъем, что и iButton.

Рисунок 3.2.1 - Функциональная цепь исполнительного механизма.

3.3 Выбор микроконтроллера и проектирование функциональной схемы микроконтроллерного модуля

Семейство 8-разрядных микроконтроллеров MCS-51 было выпущено фирмой Intel в начале 80-х годов. Микроконтроллеры MCS-51 являются функционально завершенными однокристальными микро ЭВМ Гарвардской архитектуры, содержащими все необходимые узлы для работы в автономном режиме, и предназначены для реализации различных цифровых алгоритмов управления. На сегодняшний день семейство MCS-51 содержит несколько десятков типов микросхем, отличающихся конкретной реализацией отдельных узлов и условиями эксплуатации. Все микросхемы семейства обладают аналогичной архитектурой, пример которой представлен на рисунке 9, и имеют целый ряд общих узлов:

- 8-разрядный центральный процессор (ЦП), ориентированный на управление исполнительными устройствами. ЦП имеет встроенную схему 8-разрядного аппаратного умножения и деления чисел. Наличие в наборе команд большого числа операций для работы с прямо адресуемыми битами дает возможность говорить о «булевом процессоре»;

- внутренняя память программ масочного или репрограммируемого типа, имеющая для различных кристаллов объем от 4 до 32 кбайт;

- не менее чем 128-байтное резидентное ОЗУ данных;

- не менее 32 двунаправленных интерфейсных линий (портов), индивидуально настраиваемых на ввод или вывод информации;

- два 16-битных многорежимных счетчика/таймера;

- двунаправленный дуплексный последовательный коммуникационный порт;

- двухуровневая приоритетная система прерываний, поддерживающая не менее 5 векторов прерываний от внутренних и внешних источников;

Технические характеристики центрального процессора микроконтроллеров MCS-51:

- разрядность АЛУ - 8 бит;

- число выполняемых команд - 111;

- длина команд - 1, 2, или 3 байта;

- число регистров общего назначения (РОН) - 32;

- число прямоадресуемых битовых переменных - 128;

- число прямоадресуемых битов в области;

- регистров специальных функций - 128;

- максимальный объем памяти программ - 64 кбайта;

- максимальный объем памяти данных - 64 кбайта;

- максимальный объем внутренней памяти данных - 256 байт;

- время выполнения команд при тактовой частоте 12 МГц:

сложение - 1 мкс;

пересылки “регистр - внешняя память данных” - 2 мкс;

умножение/деление - 4 мкс;

- методы адресации операнда - регистровый, косвенный, прямой, непосредственный.

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

В частности, подсемейство 80XC51FX, в которое входит ряд микросхем, имеет следующие дополнительные возможности:

- три 16-битных таймера счетчика;

- программируемый частотный выход;

- таймер/счетчик с возможностью прямого и обратного счета;

- матрица программируемых счетчиков, реализующих режимы:

сторожевого таймера (Watch Dog Timer);

широтно-импульсного модулятора;

захвата/сравнения;

высокоскоростного выхода.

- трехуровневая система защиты памяти;

- 256-байтное резидентное ОЗУ;

- четырехуровневая система прерываний;

- 7 внешних источников прерываний;

- 2 режима уменьшенного энергопотребления;

Типичным представителем данного подсемейства является микросхема AT89C2051, условное графическое обозначение которой приведено на рисунке 3.8.

Рисунок 3.8 - Условное графическое обозначение микросхемы AT89C2051

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

3.4 Проектирование средств связи с ЭВМ верхнего уровня

Для организации связи микроконтроллера с ЭВМ верхнего уровня используется последовательный порт.

Последовательный порт микроконтроллера семейства MCS-51 является «дуплексным» портом, т.е. способен осуществлять прием и передачу данных одновременно. Входная часть порта обладает двойной буферизацией, т.е. способна осуществлять прием нового сообщения, пока предыдущее еще не прочитано процессором (однако только до момента окончания приема нового сообщения), что уменьшает загрузку процессора.

Данные передаются с вывода TxD, а принимаются на вывод RxD. Посылка состоит из десяти бит: START-бит (0), восемь бит данных (младшими битами вперед) и STOP-бит (1). Скорость передачи определяется частотой переполнения таймера.

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

В данной схеме, для контроля над нашей системой, ЭВМ верхнего уровня может подключаться вместо супервизора к порту Р3.1.

3.5 Разработка функциональной схемы источника электропитания

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

При токах свыше 10А используют клемные соединения

Рисунок 3.9 - Схема клемного соединения

Входной фильтр низких частот предназначен для подавления высокочастотных импульсных помех, обычно выполняется в экранированном корпусе. Представляет собой частотный трансформатор и 1 - 2 конденсатора емкостью 0,1 мкФ.

Защитный токовый автомат:

Рисунок 3.11 - Схема защиты по току

Выбирается исходя из среднего тока источника питания с учетом коэффициента записи:

IA = Kз•I1ср

Защита по напряжению:

Рисунок 3.12 - Схема защиты по напряжению

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

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

Рисунок 3.13 - Схема мостового выпрямителя напряжения

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

Для стабилизации цепей вторичного электропитания, как правило применяют микросхемы компенсационного стабилизатора напряжения КРЕН например: КР142ЕН5А - (КРЕН5А) зарубежный аналог 7805(который и используется в данном проекте) - стабилизатор напряжения 5В с током 2,5А.

Микросхемы имеют встроенную токовую защиту от превышения при достижение тока на ограничение.

Кроме того, на кристалле стоит температурный датчик, предназначенный для защиты от перегрева.

Рисунок 3.18 - Типовая схема включения микросхемы КРЕН, тип корпуса Т25

Наличие конденсатора С2 емкостью 0,1 мкФ на выходе КРЕН является обязательным - для недопущение паразитных генераций.

В качестве резервного источника питания используется батарея BT1-BT10 из 10-ти NiMH-аккумуляторов типоразмера AA емкостью 800мА/Ч. При питании устройства от сети батарея аккумуляторов заряжается через резистор R10 током примерно 20мА, что составляет 0.025C. Режим зарядки малым током называют капельным (trickle charge). В таком режиме аккумулятры могут находится сколь угодно долго, контроль конца процесса зарядки не требуется. Когда аккумуляторы оказываются полностью заряженными, забираемая ими от источника питания энергия превращается в тепло. Но поскольку ток зарядки очень маленький, выделяемое тепло рассеивается в окружающее пространство без сколько-нибудь заметного увеличения температуры аккумуляторов.

ЧАСТЬ 4. ЭЛЕМЕНТНАЯ БАЗА СИСТЕМЫ УПРАВЛЕНИЯ КОДОВЫМ ЗАМКОМ

4.1 Определение модульных блоков, составляющих функциональную схему системы управления кодовым замком

Систему управления кодовым замком можно разбить на три модульных блока:

Импульсный блок питания

Силовой модуль

Информационный модуль

Импульсный блок питания включает в себя: непосредственно блок питания.

К силовому модулю относится: ключевая схема управления напряжением на соленоиде.

Информационный модуль содержит в себе: датчик освещения, микроконтроллер, управляющий работой исполнительных приборов и ключевой схемы.

4.2 Элементная база системы управления кодовым замком

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

Постановка задачи проектирования

1. Разработать структуру системы управления системой контроля доступа на таблетках iButton.

2. Выбрать датчик наружного освещения, а также исполнительные устройства.

3. Разработать источник питания.

4. Разработать функциональную схему системы контроля доступа.

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

6. Разработать блок-схему алгоритмов программы управления микроконтроллером

7. Разработать программу управления на языке Ассемблера.

ЧАСТЬ 5. РАЗРАБОТКА ЧЕРТЕЖА БЛОК-СХЕМЫ АЛГОРИТМА ПРОГРАММЫ УПРАВЛЕНИЯ

5.1 Разработка структуры программы управления

В разработанной микропроцессорной системе управления контролем доступа присутствует один микроконтроллер серии MCS51.

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

Исполнительный механизм считаются включенным, если из значения в блок-схеме алгоритма равны 1, если они равны 0, то в этой ситуации данный исполнительный механизм выключен. Если в блоке не указано положение исполнительного механизма (включен/выключен), это значит, что положение данного механизма не имеет значения в данной ситуации.

Блок-схема алгоритма главной программы имеет 2 подпрограммы:

Основная подпрограмма;

Подпрограмма программирования ключей.

5.2 Построение блок-схемы алгоритма

Построение блок-схемы алгоритма выполняется при помощи программы Microsoft Visio. В данной программе предусмотрены наиболее применяемые модули блок-схем.

Блок-схемы алгоритма представлена на чертеже КР11.02535.006БС.

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

Замок может иметь максимум 9 ключей, плюс один мастер-ключ. Коды ключей заносятся в энергонезависимую память под номерами от 1 до 9. Код мастер-ключа занесен в ПЗУ микроконтроллера и не может быть изменен. Пограммирование новых ключей или стирание старых может быть произведено только при наличии мастер-ключа. Как и другие ключи, мастер-ключ может использоваться для открывания замка.

Для программирования нового ключа нужно проделать следующие действия:

1. Нажать кнопку программирования.

2. На индикаторе появится буква «P», что означает вход в режим программирования.

3. Коснуться мастер-ключом панельки.

4. На индикаторе появится цифра «1», которая обозначает номер программируемого ключа.

5. Кнопкой выбрать нужный номер.

6. Коснуться любым ключом панельки.

7. Цифра на индикаторе начнет мигать, что говорит о готовности к программированию.

8. Коснуться панельки тем ключом, код которого требуется занести в память.

9. В случае успешного программирования цифра на индикаторе перестанет мигать и начнет гореть постоянно.

10. Для выхода из режима программирования нужно просто подождать 5 секунд, после чего индикатор погаснет.

Для обработки событий, связанных с программированием, имеются две подпрограммы: PROGT и PROGS. Первая вызывается при считывании кода ключа в режиме программирования, вторая - при нажатии кнопки программирования (NUMBER). Процесс программирования разбит на 3 фазы. При нажатии кнопки NUMBER осуществляется вход в программирование, т.е. переход к фазе 1. При этом на индикатор выводится буква «P». Считываемые после этого коды ключей проверяются на совпадение с кодом мастер-ключа, так как только он может позволить продолжить программирование. Если такое совпадение произошло, то осуществляется переход к фазе 2. На индикатор выводится номер текущего ключа, который кнопка NUMBER может изменять. Если снова будет зарегистрировано касание ключа, то произойдет переход к фазе 3. Еще одно касание ключа приведет к запоминанию его кода и к возврату к фазе 2. Нажатием кнопки NUMBER тоже можно вернуться к фазе 2, но без изменения содержимого памяти. Любое действие в режиме прграммирования вызывает перезагрузку таймера возврата, который имеет интервал 5 секунд и проверяется в основном цикле. Если будет обнаружено обнуление этого таймера, то происходит выход из режима программирования.

6. СОСТАВЛЕНИЕ ПРОГРАММЫ УПРАВЛЕНИЯ МИКРОКОНТРОЛЛЕРОМ

В разработанной микропроцессорной системе управления кодовым замком присутствует микроконтроллер AT89С2051.

Программа разрабатывается для микроконтроллера, управляющего работой всей системой кодового замка.

Ниже приведена программа для программирования микроконтроллера кодового замка.

; ------ DALLAS DS1990A based lock ------

; ------ Supports 9 keys + 1 master-key -----

; ------ wubblick@yahoo.com -------

;TARGET= AT89C2051

DEBUG= 0;0-off, 1-rdfn ports, 2-on

#INCLUDE "LIBR51.ASM";8051 SFR set

CLK_KHZ= 10000;OSC frequency, KHZ

RTC_MS = 20 ;system clock, MS

RTCV= -(CLK_KHZ*RTC_MS)/12

;Macros:

#DEFINE LO(XXX) XXX & 0FFH

#DEFINE HI(XXX) (XXX >> 8) & 0FFH

#IF (DEBUG>1)

#INCLUDE "LIBDEF.ASM"

#ENDIF

; ------ Constantes ------

MAXK.EQU 9;max number of keys

I2C_ADDR.EQU 0A0H;I2C address for 24C02 (A0,A1,A2=0)

TMATMV.EQU 25;x20mS TM access delay time

AENTMV.EQU 2;x20mS TM access enable delay

OPNTMV.EQU 150;x20mS open pulse duration

RETTMV.EQU 250;x20mS return to normal mode delay

; ------ Ports ------

DDATA.EQU P1;display data port

KEYOP.EQU INT0;key OPEN

OWP.EQU INT1;1-Wire port

SDA.EQU T0;I2C SDA line

SCL.EQU T1;I2C SCL line

SOLEN.EQU RXD;solenoid control line

WD.EQU TXD;watchdog line

KEYSL.EQU P3.7;key SELECT

; ------ Variables ------

;Bit addressing memory:

RTPC.EQU 020H;Real time program counter

T040M.EQU O20H.0;40mS period bit

T080M.EQU O20H.1;80mS period bit

T160M.EQU O20H.2;160mS period bit

T320M.EQU O20H.3;320mS period bit

T640M.EQU O20H.4;640mS period bit

T1S28.EQU O20H.5;1.28S period bit

T2S56.EQU O20H.6;2.56S period bit

T5S12.EQU O20H.7;5.12S period bit

RTPCS.EQU 021H;Real time program counter (100mS part)

FLAGS1.EQU 022H

PROG.EQU O22H.0;program mode flag

SNUM.EQU O22H.1;set number flag

BLINK.EQU O22H.2;display blink bit

SLKPR.EQU O22H.3;SELECT press flag

OPNPR.EQU O22H.4;OPEN press flag

;Internal Data Memory:

.ORG 0030H;data memory segment

ROMD.DS 8;touch memory ROM data

TEMP.DS 1;temporary byte (used in ACCESS90)

TMATM.DS 1;touch memory access timer

AENTM.DS 1;TM access enable timer

OPNTM.DS 1;open timer

RETTM.DS 1;return timer

NUM.DS 1;current PRG number (1..9)

;Debugger variables:

#IF (DEBUG>1)

DBGVA.DS 1;debugger variable address in internal memory

DBGVV.DS 1;debugger variable value in internal memory

DBGA.EQU 0FFFFH;debugger address in external memory

#ENDIF

STACK:;stack location

; ------ Vectors Area ------

.ORG 0000H;reset vector

LJMP INIT

.ORG 000BH;INT TIMER 0 vector

LJMP RTC

; ------ Main Program ------

INIT:MOV SP,#STACK;stack init

#IF (DEBUG>1)

DEBUGINIT;debug init

#ENDIF

;Variables init:

CLR A

MOV FLAGS1,A;clear flags 1

MOV TMATM,A;touch memory access timer clear

MOV AENTM,A;touch memory access delay timer clear

MOV OPNTM,A;open timer clear

MOV RETTM,A;return timer clear

;Periferal setup:

CLR TR0;timer 0 stop

CLR TR1;timer 1 stop

MOV TMOD,#11H ;timer 0 and timer 1 init

MOV TL0,#LO(RTCV) ;timer 0 load

MOV TH0,#HI(RTCV)

SETB TR0;timer 0 start

CLR PT0 ;int. timer 0 low priority

SETB ET0;int. timer 0 enable

SETB EA;interrupts enable

; ------ Main Loop ------

;Read touch memory:

MAIN:LCALL ACCESS90;read touch memory

JNC NOTCH;no touch

JB PROG,PRG;jump to process PROG mode

LCALL CHKMAS;check for master code

JC OPN

LCALL CHKMEM;check for member code

JC OPN

SJMP NOTCH

PRG:LCALL PROGT;process PROG mode when touch

SJMP NOTCH

OPN:LCALL OPEN;open door

;Check open key:

NOTCH:LCALL CHKOPK;check open key

JNC NOOPN

LCALL OPEN;open door

;Check select key:

NOOPN:LCALL CHKSLK;check select key

JNC NOSEL

LCALL PROGS;process PROG mode when select

;Open timer check:

NOSEL:MOV A,OPNTM

JNZ NOCLS

LCALL CLOSE;solenoid off

;Return timer check:

NOCLS:MOV A,RETTM

JNZ NORET

LCALL RETMD;return to normal mode

;Display, watchdog wakeup:

NORET:LCALL DISP;display

LCALL WAKEUP;watchdog wakeup

LJMP MAIN

; ------ Subroutines Area ------

;Process PROG mode when touch:

PROGT: JB SNUM,PRGT1;SNUM = 1 ?

LCALL CHKMAS;check for master

JC PRGT3

RET

PRGT3:SETB SNUM;set "set number" flag

CLR BLINK;clear blink flag

MOV NUM,#1;clear number

MOV RETTM,#RETTMV;load return delay

RET

PRGT1:JB BLINK,PRGT2;PROG = 1, BLINK = 0 ?

SETB BLINK;set blink flag

MOV RETTM,#RETTMV;load return delay

RET

PRGT2:LCALL SAVE;NVM[NUM] <- new key

CLR BLINK;clear blink flag

MOV RETTM,#RETTMV;load return delay

RET

;Process PROG mode when select:

PROGS: JB PROG,PRGS1;PROG = 1 ?

SETB PROG;set program mode flag

CLR SNUM;clear "set number" flag

CLR BLINK;clear blink flag

MOV RETTM,#RETTMV;load return delay

RET

PRGS1: JNB SNUM,PRGS2;SNUM = 0 ?

CLR BLINK;clear blink flag

INC NUM;NUM + 1

MOV A,NUM

CJNE A,#MAXK+1,PRGS2

MOV NUM,#1

PRGS2:MOV RETTM,#RETTMV;load return delay

RET

;Return to normal mode:

RETMD:CLR BLINK;clear blink flag

CLR PROG;clear program mode flag

CLR SNUM;clear "set number" flag

RET

;Open door:

OPEN:CLR SOLEN

MOV OPNTM,#OPNTMV;load open pulse duration

RET

;Solenoid off:

CLOSE:SETB SOLEN

RET

;Check open key:

;Returns C=1 if pressed

CHKOPK: JNB KEYOP,OP1;jump if key OPEN pressed

CLR OPNPR;clear OPEN pressed flag

OP3:CLR C

RET

OP1:JB OPNPR,OP2

LCALL DEL15;delay 15 mS

JB KEYOP,OP3

SETB OPNPR;set OPEN pressed flag

OP2:SETB C;C <- 1 if key OPEN pressed

RET

;Check select key:

;Returns C=1 if pressed

CHKSLK: JNB KEYSL,SL1;jump if key SELECT pressed

CLR SLKPR;clear SELECT pressed flag

SL2:CLR C

RET

SL1:JB SLKPR,SL2

LCALL DEL15;delay 15 mS

JB KEYSL,SL2

SETB SLKPR;set SELECT pressed flag

SETB C;C <- 1 if key SELECT pressed

RET

;Watchdog wakeup:

WAKEUP:MOV C,T040M

MOV WD,C

RET

; ------ 1-Wire bus support ------

;Send reset pulse to OWP and receive presence pulse

;Out: C = 1 if OK

TRESET: PUSH B

CLR OWP;OWP <- 0

MOV B,#CLK_KHZ/48

DJNZ B,$;delay 500 uS

CLR EA;interrupt disable

SETB OWP;OWP <- 1 (0uS)

MOV B,#CLK_KHZ/2000

DJNZ B,$;delay

MOV C,OWP;read OWP (14 uS)

JNC FAIL;fail if OWP = 0

MOV B,#CLK_KHZ/500

DJNZ B,$;delay

MOV C,OWP;read OWP (66 uS)

JC FAIL;fail if OWP = 1

SETB EA;interrupts enable

MOV B,#CLK_KHZ/100

DJNZ B,$;delay

MOV C,OWP;read OWP (312 uS or more)

JC RESOK;OK if OWP = 1

FAIL:CLR C

SETB EA;interrupts enable (if fail)

RESOK:POP B

RET

;Read/Write byte via 1-Wire bus

;Input: A - input byte

; R4 - CRC

;Out: A - output byte

; R4 - updated CRC

TBYTE: PUSH B

MOV B,#8;perform to read 8 bit

TBYTE1:RRC A;C <- bit

LCALL TBIT;transmit bit

DJNZ B,TBYTE1;next bit

RRC A;A <- last bit

POP B

RET

;Read/Write bit via 1-Wire bus

;Input: C - input bit.

; R4 - CRC

;Out: C - output bit

; R4 - updated CRC

TBIT: PUSH ACC

CLR EA;interrupts disable

CLR OWP;OWP <- 0 (begin of time slot)

NOP;delay to be sure...

NOP;that thermometr...

NOP;looks low level

JC TB_1

SJMP TB_0;if data bit = 0 then OWP <- 0

TB_1:SETB OWP;if data bit = 1 then OWP <- 1

NOP ;delay for data setup

TB_0:NOP

NOP

NOP

NOP

;NOP;10 MHz !

;NOP

MOV C,OWP;read port 15 uS later

PUSH B ;save register B

MOV B,#CLK_KHZ/706

DJNZ B,$ ;delay to complete 60 uS slot

POP B ;restore register B

SETB OWP;OWP <- 1, end of time slot

SETB EA;interrupts enable

PUSH PSW;update CRC, save C

RLC A;ACC.0 <- C

XRL A,R4;~ACC.0 if CRC.0 = 1

RRC A;ACC.0 -> C

MOV A,R4;A <- CRC

JNC BCRC0

XRL A,#18H;update CRC

BCRC0:RRC A;shift CRC

MOV R4,A;CRC <- new value

POP PSW;restore C

POP ACC

RET

; Accesses to DALLAS DS1990A touch memory.

; Returns C=1 in case of valid code, else C=0.

; Out: ROMD (8 bytes)

ACCESS90: CLR C;indicate failure

MOV A,AENTM;check access enable timer

JNZ RET90;exit if AENTM > 0

MOV AENTM,#AENTMV;reload access enable timer

LCALL TRESET;issue reset pulse

JNC RET90;leave if no parts on bus

CLR C;indicate failure

MOV A,TMATM;check TM access timer

JNZ DIS90;exit if TMATM > 0

MOV A,#033H;read ROM command

LCALL TBYTE;send command byte

MOV R0,#ROMD;init pointer

MOV R1,#8;init counter

MOV R4,#0;initialize CRC variable

RDMORE:MOV A,#0FFH;prepare to read a byte

LCALL TBYTE;read byte

MOV @R0,A;save byte

INC R0;next address

DJNZ R1,RDMORE;repeat until finished

MOV A,R4;get CRC value in ACC

JZ CRC_OK;jump if successful

CLR C;indicate failure

SJMP RET90

CRC_OK:LCALL CHKZ;check code for zero

JNC RET90;invalid code

DIS90:MOV TMATM,#TMATMV

RET90:RET;return to caller

;Check TM code for zero:

CHKZ:MOV R0,#ROMD;init pointer

MOV R1,#8;init counter

NEXTZ:MOV A,@R0

ADD A,#0FFH;C = 1 if A>0

JC OKZ

INC R0;next address

DJNZ R1,NEXTZ

OKZ:RET

; I2C NVM memory 24C02 support:

;

; I2C - bus supported subroutines:

;

; I2C_WR - Write byte from A via I2C bus

; I2C_RD - Read byte to A via I2C bus

; I2C_LRD - Read last byte to A via I2C bus (no ASK)

; I2C_SUB - Send subaddress from R1 to I2C device

; I2C_SUBR - Send subaddress from R1 and perform read.

; I2C_STOP - Stop condition generation on I2C bus

;

; I2C slave address I2C_ADDR (0A0H for 24C02 A0,A1,A2=0)

; I2C data line SDA

; I2C clock line SCL

;Send subaddress to I2C device.

;Input: R1 - subaddress.

I2C_SUB: MOV A,#I2C_ADDR;I2C device address, write mode

LCALL I2C_WR;send device address

MOV A,R1;subaddress

LCALL I2C_WR;send subaddress

RET

;Send subaddress and perform read.

;Input: R1 - subaddress.

I2C_SUBR:LCALL I2C_SUB;send subaddress

LCALL I2C_STOP;stop

MOV A,#I2C_ADDR+1;I2C device address, read mode

LCALL I2C_WR;send device address

RET

;Send byte from A via I2C bus.

I2C_WR: PUSH B

MOV B,#9H;bit counter load

SETB C;set C, for bit 9 = 1 (when ACK)

LCALL SDA0;SDA 1 -> 0 - start

I2CWR1:LCALL SCL0;SCL 1 -> 0

RLC A

JC OUTP1;jump if bit = 1

LCALL SDA0;else SDA=0

SJMP OUTP0

OUTP1:LCALL SDA1;SDA=1, if bit = 1

OUTP0:LCALL SCL1;SCL 0 -> 1

DJNZ B,I2CWR1;loop

POP B

RET

;Read byte via I2C to A.

I2C_RD:MOV A,#1H;A init to receive 8 bit

I2CRD1:LCALL SCL0;SCL 1 -> 0

LCALL SDA1;SDA=1 - SDA line release

LCALL SCL1;SCL 0 -> 1

MOV C,SDA;move bit from SDA line to C

RLC A;shift bit C into A

JNC I2CRD1;loop until C = 1

LCALL SCL0;SCL 1 -> 0

LCALL SDA0;SDA=0 - ACK generation

LCALL SCL1;SCL 0 -> 1

RET

;Read byte via I2C to A without ASK

;(receive last byte).

I2C_LRD:MOV A,#1H;A init to receive 8 bit

I2CLRD1:LCALL SCL0;SCL 1 -> 0

LCALL SDA1;SDA=1 - SDA line release

LCALL SCL1;SCL 0 -> 1

MOV C,SDA;move bit from SDA line to C

RLC A;shift bit C into A

JNC I2CLRD1;loop until C = 1

LCALL SCL0;SCL 1 -> 0

LCALL SCL1;SCL 0 -> 1 when SDA=1: no ACK

RET

;STOP condition generation:

I2C_STOP:LCALL SCL0

LCALL SDA0

LCALL SCL1

LCALL SDA1

RET

;SDA and SCL lines control:

SDA0:CLR SDA;SDA 1/0

RET

SDA1:SETB SDA;SDA 0/1

RET

SCL0:CLR SCL;SCL 1/0

RET

SCL1:SETB SCL;SCL 0/1

RET

;EEPROM address map:

;00H - page not used

;08H - touch memory code 1

;10H - touch memory code 2

;...

;Save new key:

;NUM - key number (1..9)

SAVE: MOV A,NUM

MOV B,#8

MUL AB;NUM x 8

MOV R1,A;R1 <- subaddress

LCALL I2C_SUB;send subaddress

MOV R1,#8;init counter

MOV R0,#ROMD;init pointer

DOWR:MOV A,@R0

LCALL I2C_WR;send data

INC R0

DJNZ R1,DOWR

LCALL I2C_STOP;stop

LCALL DEL15;delay 15mS to page write

RET

;Check for member:

;Returns C=1 if code O.K.

CHKMEM:MOV R2,#1;init key counter

NEXT:MOV A,R2

MOV B,#8

MUL AB;NUM x 8

MOV R1,A;R1 <- subaddress

LCALL I2C_SUBR;send subaddress and read mode

MOV R1,#8;init counter

MOV R0,#ROMD;init pointer

DORD:LCALL I2C_RD;read data

XRL A,@R0

JNZ INVAL;jump if invalid code

INC R0;next address

DJNZ R1,DORD

LCALL I2C_LRD;stop read

LCALL I2C_STOP

SETB C;valid code, C <- 1

RET

INVAL: LCALL I2C_LRD;stop read

LCALL I2C_STOP

INC R2;next key

MOV A,R2

CJNE A,#MAXK+1,NEXT

CLR C;invalid code, C <- 0

RET

;Check for master:

CHKMAS: MOV R1,#8;init counter

MOV DPTR,#MK;init pointer to ROM

MOV R0,#ROMD+7;init pointer to RAM

DOCM:CLR A

MOVC A,@A+DPTR;read ROM

XRL A,@R0;ROM[DPTR] = RAM[R0] ?

JNZ INVM;jump if invalid code

INC DPTR;next ROM address

DEC R0;next RAM address

DJNZ R1,DOCM

SETB C;valid master code, C <- 1

RET

INVM:CLR C;invalid master code, C <- 0

RET

;Display support:

;Input: NUM = value

;if PROG = 0 display is blanked

;if PROG = 1 and BLINK = 1 display is blinking

DISP: MOV A,#BLANK;blank display if PROG = 0

JNB PROG,IND

MOV A,#CH_P;display "P" if SNUM = 0

JNB SNUM,IND

MOV A,NUM;display NUM if PROG = 1 and SNUM = 1

IND:MOV C,T320M;load blink period bit

ORL C,/BLINK;check blink enable bit

JC IND1

MOV A,#BLANK

IND1:MOV DPTR,#FONT;font table pointer

MOVC A,@A+DPTR;read font

MOV DDATA,A;indicator control

RET

;Delay 15mS:

DEL15:PUSH B

PUSH ACC

MOV B,#30

DEL05:MOV A,#CLK_KHZ/48

DJNZ ACC,$

LCALL WAKEUP;watchdog wakeup

DJNZ B,DEL05

POP ACC

POP B

RET

; ------ Interrupt Holders ------

; TIMER 0 Interrupt

; System clock (20mS)

RTC: PUSH ACC

CLR TR0 ;timer 0 stop

MOV TH0,#HI(RTCV) ;timer 0 load for 20mS

MOV TL0,#LO(RTCV)

SETB TR0 ;timer start

INC RTPC ;advance Real Time Program Counter

; 20mS program counters

RTC1:MOV A,TMATM

JZ RTC2

DEC TMATM

RTC2:MOV A,AENTM

JZ RTC3

DEC AENTM

RTC3:MOV A,OPNTM

JZ RTC4

DEC OPNTM

RTC4:MOV A,RETTM

JZ RTC5

DEC RETTM

RTC5:POP ACC

RETI

; FGABSCDE

FONT.DB 01001000B;code 00H, character 0

.DB 11101011B;code 01H, character 1

.DB 10001100B;code 02H, character 2

.DB 10001001B;code 03H, character 3

.DB 00101011B;code 04H, character 4

.DB 00011001B;code 05H, character 5

.DB 00011000B;code 06H, character 6

.DB 11001011B;code 07H, character 7

.DB 00001000B;code 08H, character 8

.DB 00001001B;code 09H, character 9

.DB 00001010B;code 0AH, character A

.DB 00111000B;code 0BH, character B

.DB 01011100B;code 0CH, character C

.DB 10101000B;code 0DH, character D

.DB 00011100B;code 0EH, character E

.DB 00011110B;code 0FH, character F

.DB 11111111B;code 10H, character blank

.DB 10111111B;code 11H, character -

.DB 00001110B;code 12H, character P

;Characters codes table:

BLANK.EQU 010H;character "blank" code

CH_MIN.EQU 011H;character "-" code

CH_P.EQU 012H;character "P" code

;Master key code:

MK.DB 062H,000H,000H,002H,0D6H,089H,029H,001H

#IF (DEBUG>1)

#INCLUDE "LIBDBG16.ASM"

#ENDIF

.END

ВЫВОДЫ

Поскольку данная схема имеет ряд перечисленных достоинств и незначительных недостатков её можно использовать абсолютно в любом помещении, даже в помещении повышенной опасности, т.к. данная схема питается напряжением 5-12В.

В принципе данное устройство можно было реализовать на одном элементе ПЗУ с немногочисленными элементами обвязки, при перепрограммировании (выставлении новой кодовой комбинации) пришлось бы подключать программатор (устройство для занесения данных в микросхемы ПЗУ). Данная схема кодового замка, при правильной её сборке будет работать не менее 10 лет без перебойно. Возможны только мелочи от механических воздействий на данное устройство, хотя для защитой от этого служит корпус.

Размещено на http://www.allbest.ru

...

Подобные документы

  • Электронный замок: общая характеристика и принцип действия. Анализ вариантов реализации устройства. Разработка алгоритма функционирования, структурной и электрической принципиальной схемы электронного замка. Блок-схема алгоритма работы программы.

    курсовая работа [363,3 K], добавлен 10.05.2015

  • Схема солнечной фотоэлектрической установки. Выбор электродвигателя и определение передаточных функций. Моделирование системы автоматического управления средствами MATLAB. Подбор микроконтроллера, драйвера двигателя и датчика уровня освещенности.

    курсовая работа [7,0 M], добавлен 11.08.2012

  • Структурная схема системы управления кондиционером. Выбор пульта управления, датчика температуры, вентилятора, микроконтроллера и компрессора. Внутренняя структура и система команд транспортного уровня микросхемы DS18B20. Алгоритм работы кондиционера.

    курсовая работа [2,1 M], добавлен 14.11.2010

  • Описание алгоритма работы и разработка структурной схемы микропроцессорной системы управления. Разработка принципиальной схемы. Подключение микроконтроллера, ввод цифровых и аналоговых сигналов. Разработка блок-схемы алгоритма главной программы.

    курсовая работа [3,3 M], добавлен 26.06.2016

  • Цифровые измерительные приборы - это многопредельные, универсальные приборы, предназначенные для измерения различных электрических величин. Контроль над работой систем. Системы управления домовой автоматикой. Необходимость наличия источника питания.

    курсовая работа [348,9 K], добавлен 27.02.2009

  • Проектирование промышленной системы автоматического регулирования на основе заданных параметров объекта регулирования. Вычисление передаточной функции объекта управления. Выбор исполнительного механизма совместно с регулирующим органом, датчика уровня.

    курсовая работа [2,6 M], добавлен 09.04.2014

  • Выбор и обоснование выбора элементной базы локальной системы управления: микропроцессора, гидроцилиндра, передаточной функции объекта управления и датчика угла поворота. Вычисление устойчивости системы автоматического управления челюстью робота.

    курсовая работа [1,0 M], добавлен 26.05.2013

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

    дипломная работа [3,1 M], добавлен 02.05.2012

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

    дипломная работа [665,9 K], добавлен 05.12.2012

  • Назначение и условия эксплуатации локальной системы автоматического управления (ЛСАУ). Подбор элементов и определение их передаточных функций. Расчет датчика обратной связи и корректирующего устройства. Построение логарифмических характеристик системы.

    курсовая работа [1,0 M], добавлен 09.03.2012

  • Разработка устройства-системы автоматического управления, которая отвечает за безопасность движения транспорта через железнодорожный переезд. Разработка схемы системы управления, описание программного кода, использование микроконтроллера PIC16F84A.

    курсовая работа [1,3 M], добавлен 10.12.2012

  • Характеристика системы автоматического управления (САУ), предназначенной для линейного перемещения горизонтального стола станков фрезерной или координатно-расточной групп. Особенности блок-схемы и описание работы системы, синтез корректирующих звеньев.

    контрольная работа [2,1 M], добавлен 21.12.2013

  • Описание Автоматического Определителя Номера (АОНа). Характеристики микроконтроллера Z86E0812PSC, ЖК индикатора PANAPHONE. Ассемблирование и разработка алгоритма работы устройства. Управление АОН и описание функциональных узлов МПС, принципиальная схема.

    курсовая работа [913,0 K], добавлен 26.12.2009

  • Разработка системы управления фрезерного станка. Описание механизма и механотронной системы. Выбор микроконтроллера для реализации системы управления. Выбор электронных ключей и драйверов. Разработка протокола взаимодействия и логики работы устройства.

    курсовая работа [2,5 M], добавлен 22.05.2014

  • Исходные данные для разработки цикловой системы управления и проектирования усилителей управляющих сигналов. Блок-схема алгоритма работы системы управления пятью гидроцилиндрами промышленного робота. Принцип работы схемы и расчет силовых ключей.

    курсовая работа [136,0 K], добавлен 08.06.2014

  • Создание микропроцессорной системы на базе микроконтроллера, предназначенного для функциональной диагностики цифровых и интегральных микросхем. Разработка и расчёт блоков микроконтроллера, сопряжения, управления, питания, цифровой и диодной индикации.

    курсовая работа [1,5 M], добавлен 28.01.2016

  • Характеристика и этапы разработки системы управления аппарата по розливу воды в стаканчики. Разработка структурной схемы системы, выбор элементной базы, описание принципа действия и технических характеристик микроконтроллера. Схема управления насосом.

    курсовая работа [481,9 K], добавлен 14.11.2010

  • Разработка микропроцессорной системы на основе микроконтроллера. Методы и средства совместной отладки аппаратных и программных средств. Структурная схема и функциональная спецификация устройства - регулятора яркости ламп накаливания. Алгоритм управления.

    дипломная работа [1,4 M], добавлен 15.07.2010

  • Функциональная спецификация и преимущества термометрического датчика. Структурная схема микроконтроллера РIС16F84A. Алгоритм работы программы, описание функциональных узлов, выбор элементной базы и принципиальная схема терморегулятора для аквариума.

    курсовая работа [4,7 M], добавлен 27.12.2009

  • Структурная схема устройства управления. Алгоритм работы микроконтроллера в его составе. Строение центрального процессорного элемента – микроконтроллера AVR семейства Classic. Принципиальная схема устройства, расчет временных параметров ее работы.

    курсовая работа [636,5 K], добавлен 03.12.2013

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.