Охранное устройство «лазерная растяжка»

Автор работы: Пользователь скрыл имя, 18 Января 2013 в 09:56, курсовая работа

Краткое описание

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

Вложенные файлы: 1 файл

Тема охранное устройство лазерная растяжка.docx

— 1.15 Мб (Скачать файл)

В контроллере ATmega 8 существует только 23 ножки на ввод и вывод, разбитые на три порта B, C и D. Непонятно почему название началось с буквы В, а не А. Как в других микроконтроллерах серии. Следует обратить

внимание, что порт С содержит не 8 ножек, как остальные, а только 7.

Каждый порт содержит три  регистра:

а) регистры направления  вывода/ввода информации DDRD, или

DDRB, или DDRC. Если бит в регистрах установлен, то информация,

с соответствующей биту ножке, – выдается, если сброшен, то

информация – вводится;

б) регистр управления подтягивающими резисторами PORTB,

PORTC, PORTD (рис 1.2.1), которые необходимы для стабилизации уровня сигнала на входе микроконтроллера.

в) существует регистры мгновенных значений потенциалов на входах

портов B, C, D – DINB, DINC, DIND.

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

Особенностью данного  подключения являются два факта. Первое, напряжение питание выходных ножек микроконтроллера составляет всего 5 В, а также тот факт, что ток на выходе микроконтроллера не может превышать 20мА. В результате максимальная мощность на одной ножке не превышает 0.1Вт. Поэтому необходимо подключение усилителей мощности, например, транзисторов. Второе, реле – это индуктивность, поэтому для защиты транзистора к каждому реле необходимо подключить диод, как показано на рис.1.2.2

 

 

Теперь рассмотрим схему  подключения светодиодов к выводам

микроконтроллера (рис.1.2.3). Если рассмотреть схему рис.1.2.3, то видим, что первый светодиод загорится, если на выходе микроконтроллера будет 0 (0 В), а второй когда будет 1 (+5 В). В симуляторе микроконтроллера, на котором и предлагается пройти обучения, все светодиоды собраны по схеме светодиода VD2.

 

1.3 Прерывания ATmega8

Внутри микроконтроллера или в связанной с ним внешней  среде

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

реакции на свое появление, т.е. временной приостановки процесса

обработки основной программы («прерывания») и выполнения другой

программы (процедуры), предназначенной  для обслуживания возникшего

события. Соответственно такие  события называются прерывающими

событиями. Реакция микроконтроллера на внешнее событие должна

завершаться возвратом к  основной программе (рис.1.3.1).

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

Все микроконтроллеры семейства AVR, в том числе и ATmega8, имеют многоуровневую векторную систему приоритетных прерываний.

Прерывание от внешнего устройства или какого-нибудь внутреннего

устройства микроконтроллера – это просьба прекратить выполнение текущей

программы и перейти на прерывающую подпрограмму с известным адресом.

Каждому запросу уже в  начале программы присвоен адрес. Здесь  можно

расположить только одну команду, например, RJMP, т.е. перейти на

подпрограмму, где уже  может располагаться вся подпрограмма выполнения

данного прерывания. В микроконтроллере ATmega8 запретили менять

приоритеты запросов. Они  жестко фиксированы адресами. Чем  адрес

прерывания младше тем  более высокого приоритета прерывания. Самый

высокий приоритет имеет Reset.

Полный перечень векторов прерываний представлен в таблице  1.

Перечень представляет также  уровень приоритета для каждого  прерывания. Прерывания с младшими адресами имеют больший уровень приоритета. RESET имеет наивысший уровень приоритета, следующим является INT0 – Запрос внешнего прерывания 0 и т.д.

Микроконтроллер ATmega8 использует 19 источников прерываний. Эти прерывания располагают отдельными программными векторами в области пространства памяти программы. Каждому прерыванию присвоен свой бит разрешения в регистре масок прерываний, который должен быть установлен совместно с битом I регистра статуса (SREG). Т.е., есть бит I, который разрешает прерывания в принципе, а затем необходимо разрешить

конкретное прерывание в  регистре масок прерываний.

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

микроконтроллера происходит запись счетного регистра таймера/счетчика 1

в специальные регистры захвата. Данное прерывание можно использовать

как еще одно внешнее прерывание.

Следующая группа прерываний – это прерывания обработки данных передаваемых другими внешними устройствами (прерывания 11-14 и 18-19).

Прерывания АЦП возникает при завершении преобразования

аналогового сигнала в  цифровой сигнал (прерывание 15). Прерывание

компаратора возникает при завершении сравнения двух аналоговых чисел

(прерывание 17).

Среди всех прерываний можно  выделить группы прерываний, которые наиболее важные для нас, как исследователей основ программирования микроконтроллеров серии AVR. Это внешние прерывания (прерывание 2 и 3) т.е. прерывания, которые происходят при появлении какого-то сигнала высокого или низкого уровня на соответствующих ножках микроконтроллера.

Прерывания таймеров (прерывания с 4 по 10), которые можно

разделить на прерывания сравнения, т.е. прерывания, которые возникают  при

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

Обработка прерываний. В микроконтроллере ATmega8, среди всего многообразия прерываний, можно выделить два основных вида прерываний внешние (куда входят прерывания от INT0 и INT1), т.е. прерывания от внешних источников, и внутренние, т.е. прерывания от различных блоков микроконтроллера (таймеров, АЦП, регистры передачи данных и т.д.).

Микроконтроллеры ATmega8 содержат два специальных 8-разрядных регистра масок прерываний: регистр масок внешних прерываний GICR (General Interrupt Control Registr) и регистр масок прерываний по

таймеру/счетчику TIMSK (Timer/Counter Interrupt Mask). Регистр масок – это

специальный регистры управления микроконтроллером, где указывается

какие прерывания разрешены, а какие – нет. Т.е. здесь указывается

микроконтроллеру на какие прерывания обращать внимание, а на какие нет.

Бит I должен быть установлен в 1, если в программе используются

прерывания, независимо от того, какие прерывания разрешены, ак какие нет

в регистрах масок прерываний.

При возникновении прерывания бит I разрешения глобального

прерывания (Global Interrupt Enable) очищается и все прочие прерывания

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

может установить бит I внутри подпрограммы обработки прерывания. Выход

из подпрограммы обработки  прерывания происходит по команде RETI, при

этом бит I устанавливается в состояние 1.

Внешние прерывания. Чтобы управлять внешними прерываниями

существует три специальных  регистра:

а) MCUR (MCU Control Register)– регистр управления внешними

прерываниями;

б) GICR – регистр масок внешних прерываний;

в) GIFR – регистр флагов внешних прерываний.

Прерывания таймеров/счетчиков. Прерывание таймеров изучим

также как и внешние  прерывания, но уже только по двум регистрам TIFR и TIMSK, т.к. прерывания таймера – внутренние. Здесь нет необходимости

настраивать уровень срабатывания прерывания.

а) TIMSK – регистр масок прерываний таймеров/счетчиков;

б) TIFR – регистр флагов прерываний таймеров/счетчиков.

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

почти стандартное устройство и встречается очень часто  во множестве

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

аналоговых сигнала и выносить свой вердикт 0 – первый сигнал больше

второго, 1 – второй сигнал больше первого.

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

Микроконтроллер общается с  «внешним миром» посредством портов ввода/вывода. В общем случае он может «воспринимать» только цифровые сигналы – логический ноль или логическую единицу. Например, для микроконтроллера ATmega8 при напряжении питания 5 В логический ноль – это напряжение от 0 до 1,3 В, а логическая единица – от 1,8 до 5 В. Довольно часто возникает потребность измерять напряжения, которые могут

принимать любое значение в диапазоне от 0 до напряжения питания (+5 В).

Для этих целей в составе  микроконтроллеров AVR есть аналого-цифровой

преобразователь (АЦП).

Если пока исключить все  подробности, то для работы АЦП необходим источник опорного напряжения (ИОН). Для него – это эталон, по отношению к которому он измеряет входные сигналы. Микроконтроллеры AVR позволяют в качестве ИОН использовать:

а) напряжение питания;

б) внутренний опорный источник (2,56 В);

в) напряжение на выводе AREF (внешний ИОН).

Для работы АЦП важным параметром является – предельная частота дискретизации, которая определяет быстродействие АЦП, и измеряется в герцах или количестве выборок в секунду (SPS – samples per second). Для микроконтроллеров AVR эта величина равна 15kSPS (килло семплов в секунду). Практически АЦП AVRа работает и быстрее, но при этом его точность ухудшается.

Теорема Котельникова (теорема  Найквиста-Шеннона, теорема о

выборке) гласит, что аналоговый сигнал, имеющий ограниченный спектр,

может быть восстановлен однозначно и без потерь по своим дискретным

отсчётам, если частота выборки (дискретизации) превышает максимальную

частоту спектра сигнала  более чем в 2 раза. Выражаясь по-простому – если

нам нужно оцифровать аналоговый сигнал с полосой спектра 0 – 7 кГц, то в

идеальном случае частота дискретизации должна быть > удвоенной

максимальной частоты  спектра этого сигнала, то есть больше 14кГц. На

практике все намного  сложнее. Перед входом АЦП всегда ставят

низкочастотный фильтр, чтобы  ограничить спектр сигнала, а частота

дискретизации выбирается еще  более высокой. В результате АЦП  способно

измерять только аналоговые сигналы с частотами от 0 до 7 КГц.

Для управления АЦП существуют четыре регистра:

а) ADMUX;

б) ADCSR;

в) ADCH и ADCL – регистры результата преобразования.

Результат преобразования АЦП  хранится в регистрах ADCH и ADCL. Регистры ADCH и ADCL особого интереса не представляют, т.к. именно в них заносится результата преобразования 10-разрядный или 8-разрядный, что определяется номером опрашиваемого АЦП, т.е. эти регистры просто

содержат число пропорциональное аналоговому сигналу.

 

2.Разработка общего  алгоритма функционирования устройства.

Светодиод VD1 сигнализирует  о наличие луча на датчике погаснув, и обрыв луча если светодиод светится. 
Нажатием SB1 устройство становится под охрану, светится светодиод VD2. 
Нажатием SB2 устройство снимается с охраны. 
Нажатием SB3/4 устанавливают яркость луча лазера. 
Наличие перемычки J1 устанавливает задержку при срабатывании в 10секунд. Наличие перемычки J2 устанавливает задержку на охрану в 30секунд (светится светодиод VD2). 
При срабатывании включается реле, которое может включать например сирену, (на 30 секунд). После этого устройство автоматически снимается с охраны.

Схему можно использовать и без цепочки с кварцем, в этом случае контроллер нужно запрограммировать на внутренний генератор.

 

 

начало


30 сек


10 сек


да


да


да


нет


нет


Постановка на охрану


J1


выход


J2


Нажатие «стоп»


Прерывание луча


 

Срабатывание звуковой сигнализации


<0.025сек


>0.025 сек


Длительность прерывания


Прерывание  луча


Блок-схема устройства «Лазерная  растяжка» 


 

Нажатие «старт»



 

3. Обоснование аппаратной части устройства.

 

 

 

В схеме использован  кварцевый  генератор (QZ1, номиналом 4 МГц),  используемый в качестве стандарта частоты лазерного луча. Предназначен для получения колебаний фиксированной частоты с высокой температурной и временной стабильностью, низким уровнем фазовых шумов.

Фотодиод — приёмник оптического излучения[1], который преобразует попавший на его фоточувствительную область свет в электрический заряд за счёт процессов в p-n-переходе.

Фотодиод (ФД7К) - p-i-n фотодиод.  В нем между слоями p- и n- находится слой нелегированного полупроводника i. Фотодиод не только преобразует свет в электрический ток, но не усиливает его.

КТ 817А - кремниевый эпитаксиально-планарный биполярный транзистор. Предназначен для использования в ключевых и линейных схемах, блоках и узлах радиоэлектронной аппаратуры широкого применения.

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

 

4.Разработка и  отладка рабочей программы

СИСТЕМА КОМАНД ATMEGA8

Принятые следующие сокращения:

Регистры и операнды:

Rd: Регистр назначения (и источник) в регистровом файле. Т.е. это тот регистр,

куда будет направлен  результат после определенной операции в ALU.

Rr: Регистр источник в регистровом файле. Второй регистр, подаваемый на вход

ALU.

K: Литерал или байт данных (8 бит).

k: Данные адреса константы для счетчика программ.

b: Бит в регистровом файле или I/O регистр.

s: Бит в регистре статуса

X,Y,Z: Регистр косвенной адресации (X=R27:R26, Y=R29:R28, Z=R31:R30)

P: Адрес I/O порта

Стек

STACK: Стек для адреса возврата и опущенных в стек регистров.

Регистр статуса – SREG представлен в таблице 2.

Bit 7 – I: Global Interrupt Enable - Разрешение глобального прерывания.

Бит разрешения глобального  прерывания для разрешения прерывания

Информация о работе Охранное устройство «лазерная растяжка»