Мазмуну:

Telegram Flame Alarm Bot: 5 кадам
Telegram Flame Alarm Bot: 5 кадам

Video: Telegram Flame Alarm Bot: 5 кадам

Video: Telegram Flame Alarm Bot: 5 кадам
Video: Веля как ты мог 😢 2024, Июль
Anonim
Telegram Flame Alarm Bot
Telegram Flame Alarm Bot

Бул макалада мен жалынды сезүүгө жана колдонуучунун телеграммасына билдирүү жөнөтүүгө мүмкүндүк берген IoT долбоорун сунуштайм.

Эмне керек болот:

  • Жалын сенсордук модулу
  • Микроконтроллер NodeMCU ESP8266
  • Кубат булагы
  • WiFi
  • Телеграмма менен чыгаруу түзүлүшү

1 -кадам: Аппараттык

Аппараттык
Аппараттык
Аппараттык
Аппараттык

Flame Sensor ModuleThis модулда фототранзистор жана сигналды кондициялоочу электроника бар. Фототранзистор жарык тийгенде көбүрөөк электр тогун өткөрөт. Физика бизге (көрүнгөн) жарык кызылдан кызгылт көккө чейинки бардык түстөрдөн турарын үйрөттү. Фототранзисторду кара эпоксиден каптоо менен, кызыл же инфракызылдын астынан кызылга, ал тургай көзгө көрүнбөгөндөй сезимтал болуп калат. Кызыгы, жалын инфракызыл нурларды чыгарат. Ошентип, бул сенсор жалынды көргөндө көбүрөөк ток өткөрөт. NodeMCU-бул Arduino менен шайкеш келген такта, анын негизи ESP8266. Бул популярдуу болуп калды, анткени ал WiFiга даяр микроконтроллер болгондуктан, Arduino кереги жок. Бул макаланын максаты - азыркы учурда жеткиликтүү болгон NodeMCU pinout жана такталарын көрсөтүү. Бул такталарды Arduino IDEдеги ESP ядросун колдонуп программалоодо, тактадагы нерселердин ордуна GPIO номерлери колдонулат.

2 -кадам: Туташуу

Байланыш
Байланыш

Үзгүлтүктөр үчүн GPIO0 туташкан сенсор.

Үзгүлтүктөр микроконтроллер программаларында нерселер автоматтык түрдө ишке ашышы үчүн пайдалуу жана убакыт көйгөйлөрүн чечүүгө жардам берет. Үзгүлтүктөр менен учурдагы пиндин баасын дайыма текшерүүнүн кажети жок. Качан өзгөрүү аныкталганда, окуя ишке кирет - функция чакырылат. Бул функция үзгүлтүккө учуроо кызматы (ISR) деп аталат. Үзгүлтүк болгондо, процессор тапшырманы аткаруу үчүн негизги программанын аткарылышын токтотуп, анан кайра башкы программага кайтат

3 -кадам: Telegram Bot

Telegram Bot
Telegram Bot

Боттор Telegramдын ичинде иштеген үчүнчү жактын тиркемелери. Колдонуучулар бот менен билдирүүлөрдү, буйруктарды жана киргизилген сурамдарды жөнөтүү менен өз ара аракеттене алышат. Биз ботторду Telegram тарабынан берилген HTTP APIлери аркылуу башкара алабыз.

Telegram боту - бул Telegram Messenger кардарларына туташуу үчүн Telegram bot API колдонуучу серверде (бул жерде ESP8266) жайгашкан колдонмо. Telegram ботторунун чоң артыкчылыгы - алардын нөлдүк орнотуу талаптары жок жана Telegram Messenger иштеген бардык компьютерлерде же мобилдик платформаларда үзгүлтүксүз иштейт. Telegram Botту конфигурациялоо Телеграмманы ноутбукка же телефонго орнотуп, BotFather издеңиз. BotFather аркылуу биз жаңы бот түзө алабыз. Жаңы бот түзгөндөн кийин, биз шайман менен Telegram bot APIнин ортосундагы өз ара ачкыч болгон токенди белгилеп алышыбыз керек.

4 -кадам: Программалык камсыздоо

Telegram Bot китепканасын жүктөп алыңыз

Ачуу Arduino IDE, "Эскизге" барып, "Китепкананы кошууну" тандап, ". ZIP Китепканасын кошуу" дегенди басыңыз.

#кошуу

#include #include // Wifi туташуусун роутерге char ssid = "wifi"; // SSID (аты) char сырсөзү = "12345678"; // сиздин тармак ачкычыңыз int status = 0; // Telegram BOTту баштоо #аныктоо BOTtoken "1234567890: AAEsdxDfSL57kpfZz1bduD9j4fddsiyfg" // токен @BotFather #define BOTname "ESP8266 FireBot" // bot name #define BOTfotnameBototbot BOTBootBootBootname int Bot_mtbs = 1000; // жаңыртуу убактысы узун Bot_lasttime; bool Start = false; bool isfire = false; bool hasid = false; int var = 0; String id; жараксыз Bot_EchoMessages () {for (int i = 1; i Bot_lasttime + Bot_mtbs) {bot.getUpdates (bot.message [0] [1]); Bot_EchoMessages (); // Echo Bot_lasttime = millis () менен билдирүүгө жооп берүү; } alarm_if_fire (); } void handleInterrupt () {Serial.println ("Үзгүлтүк аныкталды"); isfire = true; }

Сунушталууда: