Obsah:
2025 Autor: John Day | [email protected]. Naposledy zmenené: 2025-01-13 06:58
V tomto článku predstavím projekt IoT, ktorý umožňuje rozpoznať plameň a odoslať upozornenie na telegram používateľa.
Čo budete potrebovať:
- Modul snímača plameňa
- Mikrokontrolér NodeMCU ESP8266
- Zdroj energie
- WiFi
- Výstupné zariadenie s telegramom
Krok 1: Hardvér
Modul snímača plameňa Tento modul obsahuje fototranzistor a elektroniku na úpravu signálu. Fototranzistor vedie viac elektrického prúdu, keď je vystavený svetlu. Fyzika nás naučila, že (viditeľné) svetlo pozostáva zo všetkých farieb, od červenej po fialovú. Pokrytím fototranzistoru čiernym epoxidom sa stane citlivejším na červenú alebo dokonca neviditeľným pod červenou alebo infračervenou oblasťou. Je zaujímavé, že plameň vyžaruje infračervené žiarenie. Keď teda tento senzor uvidí plameň, vedie viac prúdu. NodeMCU je doska kompatibilná s Arduino, ktorá je vybavená jadrom ESP8266. Stala sa populárnou, pretože je sama o sebe mikrokontrolérom pripraveným na WiFi - arduino nie je potrebné. Cieľom tohto článku je ukázať všetky vývody a dosky NodeMCU, ktoré sú v súčasnej dobe k dispozícii. Všimnite si toho, že pri programovaní týchto dosiek pomocou jadra ESP v Arduino IDE sa namiesto toho, čo je na doske, používajú čísla GPIO.
Krok 2: Pripojenie
Senzor pripojený k GPIO0 kvôli prerušeniu.
Prerušenia sú užitočné pri automatickom vykonávaní vecí v programoch mikrokontroléra a môžu pomôcť vyriešiť problémy s načasovaním. S prerušeniami nemusíte neustále kontrolovať aktuálnu hodnotu PINu. Keď je zistená zmena, spustí sa udalosť - zavolá sa funkcia. Táto funkcia sa nazýva rutina služby prerušenia (ISR). Keď dôjde k prerušeniu, procesor zastaví spustenie hlavného programu na vykonanie úlohy a potom sa vráti späť k hlavnému programu.
Krok 3: Telegram Bot
Roboty sú aplikácie tretích strán, ktoré bežia v telegrame. Používatelia môžu s robotmi komunikovať odosielaním správ, príkazov a vložených požiadaviek. Svojich robotov môžeme ovládať pomocou rozhrania HTTP API poskytovaného spoločnosťou Telegram.
Telegram bot je aplikácia hostená na serveri (tu je to ESP8266), ktorý používa API Telegram bot na pripojenie ku klientom Telegram Messenger. Veľkou výhodou robotov Telegramu je, že majú nulové požiadavky na inštaláciu a bezproblémovo fungujú na všetkých počítačových alebo mobilných platformách, na ktorých beží Telegram Messenger. Nakonfigurujte Telegram Bot Nainštalujte si Telegram na prenosný počítač alebo telefón a vyhľadajte BotFather. Prostredníctvom BotFather môžeme vytvoriť nového robota. Po vytvorení nového robota si musíme zaznamenať token, ktorý je kľúčom interakcie medzi rozhraním API zariadenia a zariadenia Telegram bot.
Krok 4: Softvér
Stiahnite si knižnicu Telegram Bot
Otvorte Arduino IDE, prejdite na „Sketch“, vyberte „Include Library“a kliknite na „Add. ZIP Library“.
#zahrnúť
#include #include // Inicializácia Wifi pripojenia k routeru char ssid = "wifi"; // SSID (meno) char heslo = "12345678"; // váš sieťový kľúč int status = 0; // Inicializácia telegramu BOT #define BOTtoken "1234567890: AAEsdxDfSL57kpfZz1bduD9j4fddsiyfg" // token od @BotFather #define BOTname "ESP8266 FireBot" // názov robota #define BOTusername "Botusername" int Bot_mtbs = 1000; // doba obnovenia dlhá Bot_lasttime; bool Štart = nepravda; bool isfire = false; bool haveid = nepravda; int var = 0; ID reťazca; neplatné Bot_EchoMessages () {for (int i = 1; i Bot_lasttime + Bot_mtbs) {bot.getUpdates (bot.message [0] [1]); Bot_EchoMessages (); // odpoveď na správu s Echo Bot_lasttime = millis (); } alarm_if_fire (); } void handleInterrupt () {Serial.println ("Zistené prerušenie"); isfire = true; }