Оглавление:

Телефонная система безопасности с Arduino: 5 шагов
Телефонная система безопасности с Arduino: 5 шагов

Видео: Телефонная система безопасности с Arduino: 5 шагов

Видео: Телефонная система безопасности с Arduino: 5 шагов
Видео: Управляем умным домом с Arduino, телефона и радиовыключателями. Система модулей nooLite 2024, Декабрь
Anonim
Телефонная система безопасности с Arduino
Телефонная система безопасности с Arduino

Ваш дом будет незащищенным, если вы не примените этот проект. Этот проект поможет вам вызвать тревогу по мобильному телефону, когда злоумышленник проникнет в ваш дом.

Таким образом, если вы воспользуетесь этим проектом, вы получите SMS-сообщение на мобильный телефон и сможете защитить свой дом от вторжений.

Для этого мы будем использовать Arduino-совместимую плату с модулем SIM800L и датчиком PIR. Датчик PIR будет отвечать за обнаружение присутствия злоумышленника, а SIM800L будет отвечать за отправку предупреждающего SMS-сообщения владельцу дома.

Запасы

  • Плата, совместимая с Arduino
  • Датчик PIR
  • Резистор 10кР
  • Джемперы
  • Протоборд
  • Модуль SIM800L

Шаг 1: Суть проекта

Сердце проекта - модуль SIM800L. Этот модуль сможет принимать команды Arduino и отправлять SMS на мобильный телефон пользователя. Таким образом, когда пользователь получает предупреждение, он может вызвать полицию или выполнить любое другое действие.

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

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

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

А теперь приступим!

Шаг 2: Электронная схема проекта и программирование

Электронная схема проекта и программирование
Электронная схема проекта и программирование
Электронная схема проекта и программирование
Электронная схема проекта и программирование

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

# включить чип SoftwareSerial (10, 11);

Строка SeuNumero = "+5585988004783";

#define sensor 12

bool ValorAtual = 0, ValorAnterior = 0;

установка void ()

{Serial.begin (9600); Serial.println («Инициализандо Система…»); задержка (5000); chip.begin (9600); задержка (1000);

pinMode (датчик, ВХОД); // Конфигурация или настройка сенсора для Entrada

}

пустой цикл ()

{// Le o valor do pino do sensor ValorAtual = digitalRead (sensor);

если (ValorAtual == 1 && ValorAnterior == 0)

{IntrudeAlert; ValorAnterior = 1; }

если (ValorAtual == 0 && ValorAnterior == 1)

{NoMoreIntrude (); ValorAnterior = 0; }

}

void IntrudeAlert () // Funcao para enviar mensagem dealerta Umidade Baixa

{chip.println ("AT + CMGF = 1"); задержка (1000); chip.println ("AT + CMGS = \" "+ SeuNumero +" / "\ r"); задержка (1000); Строка SMS = "Предупреждение о вторжении!"; chip.println (SMS); задержка (100); chip.println ((char) 26); задержка (1000); }

void NoMoreIntrude () // Funcao para enviar mensagem dealerta Umidade Normal

{chip.println ("AT + CMGF = 1"); задержка (1000); chip.println ("AT + CMGS = \" "+ SeuNumero +" / "\ r"); задержка (1000); Строка SMS = «Больше никаких вторжений!»; chip.println (SMS); задержка (100); chip.println ((char) 26); задержка (1000); }

В приведенном ниже коде мы изначально объявили библиотеку последовательной связи SoftwareSerial.h, как показано ниже.

#включают

После определения библиотеки были определены контакты связи Tx и Rx. Эти контакты являются альтернативными контактами и используются для обеспечения последовательной связи на других контактах Arduino. Библиотека SoftwareSerial была разработана, чтобы вы могли использовать программное обеспечение для воспроизведения функциональности.

SoftwareSerial чип (10, 11);

После этого был объявлен номер мобильного телефона, который показан ниже.

Строка SeuNumero = "+5585988004783";

Электронная схема конструкции проста и удобна в сборке. Как вы можете видеть на схеме, плата, совместимая с Arduino, отвечает за считывание статуса датчика и затем отправку SMS владельцу дома.

Сообщение будет отправлено, если злоумышленник обнаружен внутри дома. Датчик PIR (пассивный инфракрасный) - это датчик, используемый для обнаружения движения по инфракрасному сигналу. Из сигнала, отправленного на Arduino, модуль SIM800L отправит сообщение пользователю.

Диод будет использоваться для обеспечения падения напряжения для питания модуля SIM800L. Так как модуль нельзя запитать 5В. Таким образом, напряжение 4,3 В будет поступать для питания вашего модуля и обеспечения его безопасной работы.

Шаг 3: Функция Void Setup ()

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

установка void ()

{

Serial.begin (9600); Serial.println («Inicializando Sistema…»); задержка (5000); chip.begin (9600); задержка (1000); pinMode (датчик, ВХОД); // Конфигурация или настройка сенсора для Entrada}

Как можно видеть, два последовательных канала связи были инициализированы. Serial.begin используется для инициализации собственного серийного номера Arduino, а chip.begin - это серийный номер, эмулируемый с помощью библиотеки SoftwareSerial. После этого мы перейдем к функции цикла void.

Шаг 4: Проект и функция Void Loop

Проект и функция Void Loop
Проект и функция Void Loop
Проект и функция Void Loop
Проект и функция Void Loop

Теперь мы представим основную логику программирования в функции void loop.

void loop () {// Еще одно значение для датчика ValorAtual = digitalRead (sensor);

если (ValorAtual == 1 && ValorAnterior == 0)

{IntrudeAlert ();

ValorAnterior = 1;

}

если (ValorAtual == 0 && ValorAnterior == 1)

{NoMoreIntrude ();

ValorAnterior = 0;

}

}

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

ValorAtual = digitalRead (датчик);

После этого будет проверено, равно ли значение переменной ValorAtual 1 или 0, как показано ниже.

если (ValorAtual == 1 && ValorAnterior == 0) {IntrudeAlert ();

ValorAnterior = 1;

} если (ValorAtual == 0 && ValorAnterior == 0) {NoMoreIntrude ();

ValorAnterior = 0;

}

Если переменная ValorAtual имеет значение 1, а переменная ValorAnterior - 0, датчик фактически активирован, а ранее он деактивирован (ValorAnterior == 0). Таким образом, функция будет выполнена, и пользователь получит сообщение на ваш мобильный телефон. После этого значение переменной ValorAnterior будет равно 1.

Таким образом, переменная ValorAnterior будет сигнализировать о том, что активировано фактическое состояние датчика.

Теперь, если значение переменной ValorAtual равно 0, а значение переменной ValorAnterior равно 0, датчик не обнаруживает вторжение, а затем активируется его значение.

Таким образом, система отправит сообщение на мобильный телефон пользователя и обновит фактическое значение датчика на 0. Это значение будет указывать на то, что датчик в данный момент не срабатывает.

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

Теперь мы узнаем, как работать с функцией отправки сообщений на мобильный телефон пользователя.

Шаг 5: Функции для отправки сообщений

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

Далее мы представим полную структуру функций и обсудим код.

void IntrudeAlert () // Функция для передачи сообщений об оповещении Umidade Baixa {chip.println ("AT + CMGF = 1"); задержка (1000); chip.println ("AT + CMGS = \" "+ SeuNumero +" / "\ r"); задержка (1000); Строка SMS = «Дверь открыта!»; chip.println (SMS); задержка (100); chip.println ((char) 26); задержка (1000); }

void NoMoreIntrude () // Funcao para enviar mensagem dealerta Umidade Normal

{chip.println ("AT + CMGF = 1"); задержка (1000); chip.println ("AT + CMGS = \" "+ SeuNumero +" / "\ r"); задержка (1000); Строка SMS = «Закрытая дверь!»; chip.println (SMS); задержка (100); chip.println ((char) 26); задержка (1000); }

Модуль SIM800L использует AT-команду для управления своими функциями. Следовательно, с помощью этих команд мы отправим сообщение на мобильный телефон пользователя.

AT + CGMF = 1 используется для настройки модуля на работу в текстовом режиме SMS. После задержки система отправит пользователю сообщение с помощью следующей команды.

chip.println ("AT + CMGS = \" "+ SeuNumero +" / "\ r");

В команде модуль SIM800L будет подготовлен к отправке сообщения для номера мобильного телефона, зарегистрированного в строке SeuNumero. После этого система загрузит сообщение в строку и отправит его на мобильный телефон пользователя, как показано ниже.

Строка SMS = «Закрытая дверь!»; chip.println (SMS); задержка (100); chip.println ((char) 26); задержка (1000);

Символ (26) используется для обозначения конца сообщения. Этот рабочий процесс аналогичен двум функциям, отправляющим сообщение пользователю.

Благодарности

Теперь мы ценим поддержку JLCPCB для выполнения этой работы и, если вам интересно, перейдите по следующей ссылке и загрузите плату, совместимую с Arduino.

Рекомендуемые: