Сигнализация с датчиком наклона на микроконтроллере AVR ATmega8

В этой статье мы рассмотрим сигнализацию на микроконтроллере ATmega8 (семейство AVR), основанную на анализе колебаний.

Сигнализация с датчиком наклона на микроконтроллере AVR ATmega8: внешний вид

Данную сигнализацию можно использовать для защиты от воров. Сигнализация основана на использовании датчика наклона (tilt sensor), внешний вид которого показан на следующем рисунке.

Внешний вид датчика наклона

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

Необходимые компоненты

Аппаратное обеспечение

  1. Микроконтроллер ATmega8 (купить на AliExpress).
  2. Программатор AVR-ISP (купить на AliExpress), USBASP (купить на AliExpress) или другой подобный.
  3. Конденсатор 1000 мкФ.
  4. Светодиод.
  5. Кнопки (5 шт.).
  6. Резистор 220 Ом.
  7. Резистор 10 кОм.
  8. Источник питания с напряжением 5 Вольт.
  9. Транзистор 2n3906.
  10. Звонок (зуммер).
  11. Датчик наклона.
  12. Резистор 1 кОм (6 шт.).

Программное обеспечение

  1. Atmel Studio версии 6.1 (или выше).
  2. Progisp или flash magic (необязательно).

Работа схемы

Схема устройства приведена на следующем рисунке.

Схема сигнализации с датчиком наклона на микроконтроллере AVR

В данном случае у нас нет необходимости в использовании внешнего тактового генератора – возможностей внутреннего RC-генератора микроконтроллера ATmega8 нам будет вполне достаточно. Внешний тактовый генератор, в основном, востребован в приложениях реального времени, в которых важна точность измерения временных интервалов. При покупку микроконтроллера его фьюзы сконфигурированы на работу от внутреннего RC-генератора.

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

После этого только авторизованное лицо может отключить сигнализацию. Для этой цели служат 5 кнопок, представленные на схеме, которые реализуют 4999 возможных комбинаций. И только одна из этих комбинаций (назначенная) отключает сигнализацию. Таким образом, только лицо, знающее правильную комбинацию, может отключить сигнал тревоги.

Исходный код программы на языке С (Си) с пояснениями

Программа для рассматриваемой схемы представлена следующим фрагментом кода на языке С (Си). Комментарии к коду программу поясняют принцип работы отдельных команд.

Видео, демонстрирующее работу схемы

(1 голосов, оценка: 5,00 из 5)
Загрузка...
163 просмотров

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *