Реклама ⓘ
Главная » Охрана
Призовой фонд
на апрель 2024 г.
1. 100 руб.
От пользователей

Похожие статьи:


Реклама ⓘ

Простая Wi-Fi сигнализация с сообщением на WhatsApp

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


Рис. 1

Устройство разработано на базе Wi-Fi модуля ESP8266-01 и герконового датчика открытия типа NC (НЗ). Антенна на печатной плате позволяет WiFi-модулю поддерживать устойчивую связь с роутером, размещённым в помещении, на расстоянии до 350 метров при условии, что напряжение питания модуля  не ниже  3,3 В.   При замкнутых контактах геркона устройство от новых батарей потребляет ток около 3 мкА. При разомкнутых контактах геркона в режиме передачи сообщения ток возрастает до паспортных значений (максимальный ток-300мА, рабочий-70мА). Этот фактор необходимо учитывать для экономии ёмкости батарей. Если предполагается периодически короткое разомкнутое состояние геркона (входная квартирная дверь, например) то выключатель SA1 устанавливается внутри корпуса устройства или вместо него запаивается перемычка. В противном случае доступ к выключателю должен быть снаружи. 


Рис. 2

Схема электрическая принципиальная приведена на рис. 3.

   
Рис. 3

Устройство работает следующим образом. При замкнутых контактах геркона ключ DA1 закрыт и напряжение питания на модуль DA3 не поступает. При размыкании контактов ключ DA1 открывается и напряжение 3,3В со стабилизатора DA2 подаётся на модуль Wi-Fi DA3. Далее происходит внутренний “сброс”,  подключение к роутеру Wi-Fi и посылка на WhatsApp текстового сообщения, записанного в строке скетча. Этот процесс по времени занимает около 12 секунд. При малом времени разомкнутого состояния контактов геркона может произойти сбой программы. Чтобы этого не случилось заряженный конденсатор С1 поддерживает ключ в открытом состоянии в отрезок времени до разряда ёмкости, напряжение подаётся на модуль необходимое время и сообщение гарантировано передаётся. 

SMD компоненты: D1-LL4148; R1, R2 и С1-в корпусе 1206.   SMD микросхемы: IRF7309, AMS1117-3,3V.   Выключатель SA1 - SS12F15   Футляр для батарей ААА на 4-е батарейки с проводами

Модуль ESP8266-01, все установочные изделия и SMD компоненты можно приобрести на AliExpress.

Вид печатной платы приведён на рис. 4.


Рис. 4

Программировать ESP8266-01 можно в среде разработки Arduino IDE.   Я использую схему, позаимствованную на https://habr.com/ru/post/390593/ (рис 5). В этом  случае программирование осуществляется с помощью платы Arduino Nano. Разъём Mini USB Arduino Nano необходимо подключить к ПК и запустить среду разработки Arduino IDE, записать в неё скетч для ESP8266-01 (text. 1) и откорректировать его. Если у вас в среде разработки ARDUINO IDE нет платформы ESP8266,  то её необходимо добавить согласно  рекомендации https://compacttool.ru/wifi-esp-01s-chip-esp8266  и, затем,  в разделе “инструменты”  выбрать –  Плата: “Generic ESP8266 Module”.     

 На модуль ESP8266-01  необходимо подавать напряжение питания от внешнего стабилизатора  3,3 В / 500 мА (на схеме выделен зелёным). На Arduino Nano напряжение  5 В подаётся через разъём USB. В схему полезно добавить кнопку СБРОС.


Рис. 5

Для загрузки скетча  в модуль ESP8266-01 необходимо на него подать напряжение питания, нажать красную кнопку и кликнуть по иконке “загрузка” в командной строке среды разработки Arduino IDE. Кнопку затем можно отпустить. Если загрузка скетча прошла успешно, то нажмите кнопку “СБРОС”. Если в вашем телефоне уже установлен Whatabot API, то на этот контакт придёт сообщение: “ALARM !!! Break-in door”.

Скетч для ESP8266-01:

#include <WiFiUdp.h>
#include <ESP8266WiFi.h>
#include <ESP8266HTTPClient.h>
#define WIFI_SSID "ТВОЙ_WIFI_SSID"
#define WIFI_PASSWORD "ТВОЙ_WIFI_PASS"

const String YOUR_PHONE = "79150638145";   //ТВОЙ № БЕЗ '+’    !!!
const String YOUR_APIKEY = "12345678";   //ТВОЙ  API KEY
const String URL = "http://api.whatabot.net/whatsapp/sendMessage?text=";

WiFiUDP ntpUDP;

void setup() {

 wifiConnect();
 //Use the URL encoded blackspace (%20)
 sendWhatsapp("ALARM%20!!!%20Break-in%20door");  //На  WhatsApp

}

void sendWhatsapp(String text) {
 WiFiClient client;
 HTTPClient https;
 String url = URL + text + "&apikey=" + YOUR_APIKEY + "&phone=" + YOUR_PHONE;
 https.begin(client, url);
 int httpCode = https.GET();
 https.end();
}

void loop() {
}

void wifiConnect() {

 WiFi.mode(WIFI_STA);

 WiFi.begin(WIFI_SSID, WIFI_PASSWORD); // Connect to the network
 Serial.print("Connecting to ");
 Serial.print(WIFI_SSID);
 Serial.println(" ...");
 byte teller = 0;

 while (WiFi.status() != WL_CONNECTED) { // Wait for the Wi-Fi to connect
   delay(1000);
   Serial.print(++teller);
   Serial.print(' ');
   if (teller % 40 == 0) {
   teller = 0;
   Serial.println();
   }
 }

 Serial.println('\n');
 Serial.println("Connection established");
 Serial.print("IP address: \t");
 Serial.println(WiFi.localIP());
}

Для приёма сообщений от Wi-Fi модуля необходимо на своем телефоне создать контакт Whatabot. Whatabot - это бесплатный и простой в использовании API (Application Programming Interface-программный интерфейс приложений) для отправки сообщений WhatsApp.  Этот API представляет собой сервис, который позволяет вам отправлять себе сообщения в режиме реального времени. Для этого необходимо  зарегистрировать свой телефон в сервисе и указать в скетче к ESP8266-01 свой ключ API. Для регистрации зайдите на сайт https://whatabot.net/ и следуйте инструкции. Там всё просто!

Использованные материалы:

1. https://habr.com/ru/post/390593/  

2. https://compacttool.ru/wifi-esp-01s-chip-esp8266

3. https://github.com/Matinat/SendWhatsappFromESP/blob/main/sendWhatsapp.ino

4. https://microcontrollerslab.com/esp8266-nodemcu-send-whatsapp-messages/

5. https://whatabot.net/

Теги:

Опубликована: 0 1
Я собрал 0 2
x

Оценить статью

  • Техническая грамотность
  • Актуальность материала
  • Изложение материала
  • Полезность устройства
  • Повторяемость устройства
  • Орфография
0

Средний балл статьи: 5 Проголосовало: 2 чел.

Комментарии (11) | Я собрал (0) | Подписаться

0
Публикатор #
На форуме автоматически создана тема для обсуждения статьи.
Ответить
+1
Олег #
Проверил-работает.
Только нужно архив добавить со скетчем, схемой и лайкой
Ответить
+1
Кузя #
Зачем делать простое устройство из недоступных деталей?
Прикрепленный файл: 2023-03-02.png
Ответить
+2
Игорь #
По питанию ESP8266 нужен электролит на 100мкф.
В скетче отсутствует любая обработка ошибок: подключения к WiFi, соединения с сервером Whatsup, и, соответственно нет возможности повторить отправку. И ошибки желательно логгировать, памяти в ESP дофига. Также нет перехода в режим сна или отключения питания, отправив сообщение, ESP тупо высаживает батарейки, пока не придет автор и не перезапустит устройство.
Ответить
+1
Georgiy #
Вы правы. В скетче после строки https.end();
необходимо добавить
ESP.deepSleep(0); //Не просыпаться самостоятельно
Ответить
0
Andrnet #
Как задать статический IP?
Ответить
0
Nemo #
Не доверяю системам с множественными точками отказа. А что, если недоступно любое звено в цепочке:
- роутер Wi-Fi;
- Интернет от ИСП;
- сервера «whatsapp».
...
GSM сигнализация представляется более надёжной, и то, дичь глюкавая. Отдельный радиоканал на пульт ЧОП, самое то.
Но проект не бесполезен.
Ответить
0
oleb #
Подскажите ответ на пару вопросов. Сопротивление R1 в Мегаомах ? и соответственно с1 в пикофарадах ? (не маловато будет).
Если можно добавьте функцию повторной установки на охрану например минут через 30 после срабатывания.
Ответить
+1

[Автор]
Saturnus #
Да 1,5М. Повторная установка после срабатывания обеспечивается закрытием двери.
В скетче после строки
https.end();
необходимо добавить
ESP.deepSleep(0); //Не просыпаться самостоятельно
Это необходимо для экономии батареи.
Ответить
0
oleb #
Спасибо. Почти собрал, теперь надо ватсап поставить
Конденсатор увеличил до 100нФ, время задержки на отключение увеличилось где то до минуты, думаю так понадежнее будет.
Ответить
0

[Автор]
Saturnus #
Архив
Отредактирован 15.04.2023 10:21
Прикрепленный файл: ESP+MQTT.zip
Ответить
Добавить комментарий
Имя:
E-mail:
не публикуется
Текст:
Защита от спама:
В чем измеряется электрическое сопротивление?
Файлы:
 
Для выбора нескольких файлов использйте CTRL

Мультиметр Mastech MS8239C
Мультиметр Mastech MS8239C
LC-измеритель LC100-A Автомобильный GPS-трекер с GSM/GPRS и дистанционным управлением
вверх