Простая Wi-Fi сигнализация с сообщением на WhatsApp
Устройство Wi-Fi сигнализации с питанием от батарей предназначено для охраны дверей, ворот, люков, окон от несанкционированного проникновения и устанавливается в местах, где прокладывать провода питания невозможно или нецелесообразно.
Устройство разработано на базе Wi-Fi модуля ESP8266-01 и герконового датчика открытия типа NC (НЗ). Антенна на печатной плате позволяет WiFi-модулю поддерживать устойчивую связь с роутером, размещённым в помещении, на расстоянии до 350 метров при условии, что напряжение питания модуля не ниже 3,3 В. При замкнутых контактах геркона устройство от новых батарей потребляет ток около 3 мкА. При разомкнутых контактах геркона в режиме передачи сообщения ток возрастает до паспортных значений (максимальный ток-300мА, рабочий-70мА). Этот фактор необходимо учитывать для экономии ёмкости батарей. Если предполагается периодически короткое разомкнутое состояние геркона (входная квартирная дверь, например) то выключатель SA1 устанавливается внутри корпуса устройства или вместо него запаивается перемычка. В противном случае доступ к выключателю должен быть снаружи.
Схема электрическая принципиальная приведена на рис. 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.
Программировать 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. В схему полезно добавить кнопку “СБРОС”.
Для загрузки скетча в модуль ESP8266-01 необходимо на него подать напряжение питания, нажать красную кнопку и кликнуть по иконке “загрузка” в командной строке среды разработки Arduino IDE. Кнопку затем можно отпустить. Если загрузка скетча прошла успешно, то нажмите кнопку “СБРОС” . Если в вашем телефоне уже установлен Whatabot API, то на этот контакт придёт сообщение: “ALARM . Break-in door”.
#include
#include
#include
#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 = » WiFiUDP ntpUDP;
//Use the URL encoded blackspace (%20)
sendWhatsapp(«ALARM%20. %20Break-in%20door»); //На WhatsApp
void sendWhatsapp(String text)
WiFi.begin(WIFI_SSID, WIFI_PASSWORD); // Connect to the network
Простая 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”.
#include #include #include #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/
Теги:
Saturnus Опубликована: 28.02.2023 0 1