Mundarija:
- 1 -qadam: Sizga nima kerak
- 2 -qadam: IDE -ni o'rnatish
- 3 -qadam: Telegram botini yaratish
- 4 -qadam: Eskizni o'zgartirish, yuklash va sinovdan o'tkazish
- 5 -qadam: yaxshilanishlar
Video: [IoT] Arduino MKR WiFi 1010 bilan Telegram Bot: 5 qadam
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:23
Ushbu loyiha Arduino-ni Telegram Bot API bilan qanday bog'lashni ko'rsatadi. Loyiha U-BLOX tomonidan ESP32 moduli bilan jihozlangan yangi MKR WiFi 1010 taxtasi atrofida qurilgan.
Bu bosqichda loyiha kontseptsiyani isbotlashdan boshqa narsa emas, faqat nima qilish kerakligini ko'rsatish uchun, shuning uchun sizga faqat Arduino platasi kerak.
Telegram boti nima? Xo'sh, botlar oddiygina odamlar tomonidan emas, balki dasturiy ta'minot bilan ishlaydigan Telegram hisoblari bo'lib, ular ko'pincha AI xususiyatlariga ega bo'ladi. Ular hamma narsani qilishlari mumkin - o'rgatish, o'ynash, qidirish, translyatsiya qilish, eslatish, ulanish, boshqa xizmatlar bilan integratsiya qilish yoki hatto narsalar Internetiga buyruqlar berish. (Telegram kreditlari:
Bizning holatda, biz Arduino -ga oddiy IoT qurilmasini yaratishga buyruq beramiz. U oddiy buyruqlarga javob beradi, shuningdek o'rnatilgan Led-ni yoqadi/o'chiradi. Men sizning tasavvuringizni yanada ko'proq qilishiga imkon beraman … (masalan, kirish -chiqish pinlariga bir yoki bir nechta o'rni ulashni va smartfoningiz bilan isitgichni yoki konditsioner tizimini yoqishni/o'chirishni tasavvur qiling).
1 -qadam: Sizga nima kerak
Ushbu loyiha uchun sizga kerak:
- Arduino do'konidan Arduino MKR WiFi 1010:
- Arduino IDE 1.8.5 yoki undan yuqori:
- Arduino-ni shaxsiy kompyuteringizga ulash uchun micro-usb kabeli
- Internetga ulanish uchun SSID va parol kerak. Agar siz blokirovka qilinmaganligiga ishonch hosil qilish uchun o'zingizning uy yo'riqchingizdan foydalansangiz yaxshiroqdir.
- Smartfoningizga markasi qanday bo'lishidan qat'i nazar, Telegram ilovasi o'rnatilgan. Kompyuter va veb -versiyalarni ham shu erdan tekshiring!
2 -qadam: IDE -ni o'rnatish
Ha, bilaman, bilaman … ko'pchiligingizda kompyuterda Arduino IDE o'rnatilgan, lekin bu ko'rsatma yangi boshlanuvchilar uchun ham mo'ljallangan, shuning uchun birinchi navbatda siz tanlagan Arduino IDE 1.8.5 ni yuklab oling (zip fayl uchun "administrator bo'lmaganlar" yoki exe fayli)
1.8.5 versiyasi tavsiya etiladi, men eski versiyalarni sinab ko'rmadim va loyihada ishlatilgan yangi taxtani umuman qo'llab -quvvatlab bo'lmadi.
Endi siz haydovchilar bilan yangi taxtalarni o'rnatishingiz kerak:
- IDE -ni ishga tushiring
- "Asboblar" menyusidan "Kengashlar" ni tanlang, keyin protsessorlar ro'yxatining yuqori qismida "boshqaruv paneli" ni tanlang.
- Yangi MKR WiFi 1010 o'z ichiga olgan Arduino SAMD platalarini topmaguningizcha, yangi oynani aylantiring (rasmga qarang).
- Ushbu yorliqni bosing yoki yorliq ichidagi Qo'shimcha ma'lumotni bosing, oxirgi versiyasini tanlang va o'rnating.
- O'rnatish tugashini kuting. Bu, shuningdek, haydovchilarni o'rnatish masalasini hal qiladi
- Bu karta uchun sizga yangi WiFi kutubxonasi kerak bo'ladi: eskizni tanlang, kutubxonani qo'shing va kutubxonalarni boshqaring. Wifinina -ni qidiring va yuqoridagi protsessor kabi o'rnatib qo'ying.
Endi yangi Arduino kartasini ulang va Windows drayverini o'rnatishni tugatguncha kuting.
Asboblar-> Kengash menyusida siz yangi taxtalarni topasiz, MKR WiFi 1010-ni tanlang.
Bu loyiha uchun boshqa maxsus kutubxona kerak, bu - Jankarlo Bacchio tomonidan ESP8266TelegramBot kutubxonasi, kutubxona bu taxta bilan ishlash uchun biroz o'zgartirilgan, shuning uchun u eskizlar papkasida joylashgan.
To'g'ri portni tanlang va taxta ma'lumotini olish buyrug'i bilan taxtani sinab ko'ring.
Tabriklaymiz, IDE tugadi!
3 -qadam: Telegram botini yaratish
Yangi Telegram botini yaratish juda oddiy.
Telegram ilovasini oching va qidiruv satriga @BotFather yozing va u bilan suhbatni boshlang (image1). BotFather bu … Bot zavodi. Bu sizga yangi bot yaratishga va uning sozlamalarini o'zgartirishga yordam beradi.
/Start buyrug'idan so'ng siz yordam ro'yxatini ko'rasiz (image2).
- Type /newbot (image3) Endi botingizning nomini kiriting. Ism aloqa ma'lumotlarida va boshqa joylarda ko'rsatiladi.
- BotFather sizdan foydalanuvchi nomini so'raydi. Foydalanuvchi nomi - bu qisqa ism, uni eslatmalar va telegram.me havolalarida ishlatish mumkin. Foydalanuvchi nomlari 5-32 belgidan iborat va katta-kichik harflarga sezgir emas, lekin faqat lotin harflari, raqamlar va pastki chiziqlarni o'z ichiga olishi mumkin. Sizning botingizning foydalanuvchi nomi "bot" bilan tugashi kerak, masalan. "Tetris_bot" yoki "TetrisBot".
- Agar ism ham, foydalanuvchi nomi ham to'g'ri bo'lsa, sizga TOKEN deb nomlangan uzun satrlar beriladi. Bu Telegram serverlari bilan muloqot qilish uchun ishlatiladigan shaxsiy kalitingiz. Hozircha uni kompyuteringizga matnli faylga nusxalash va joylashtirish. Biz uni keyinroq Arduino kodiga ishlatamiz, agar uni yo'qotib qo'ysangiz, xavotir olmang, yangisini yaratish uchun suhbatni qayta oching va /tokenini kiriting.
Barcha qadamlar bu erda tasvirlangan:
Kengaytirilgan (ixtiyoriy)
Suhbatni qayta oching va yozing /yordam
Botingiz uchun rasm yuklash uchun (yoki yozing) /setuserpic -ni bosing. Botingiz haqidagi bo'limni o'rnatish uchun (yoki yozing) /setabouttext -ni bosing: Odamlar bu matnni bot profil sahifasida ko'rishadi va u bilan birga yuboriladi. kimdir bilan bo'lishganda, sizning botingizga havola.
Botingiz uchun tavsif bo'limini o'rnatish uchun (yoki yozing) /setdescription -ni bosing. Odamlar sizning botingiz bilan suhbatni ochganda, bu tavsifni ko'rishadi, "Bu bot nima qila oladi?".
4 -qadam: Eskizni o'zgartirish, yuklash va sinovdan o'tkazish
Dasturiy ta'minotni Arduino MKR WiFi 1010 kartasiga yuklash vaqti keldi.
Biriktirilgan fayllarni yuklab oling, negadir men ZIP yuklay olmayman, shuning uchun eskiz deb nomlangan papkani yarating va undagi 4 ta faylni nusxa ko'chiring, nima qilayotganingizni bilmasangiz, ismingizni o'zgartirmang.
O'zgartirish
Eskizni oching, biz ba'zi ma'lumotlarni to'ldirishimiz kerak (rasm1): arduino_secrets.h -ni Wi -Fi va telegram ma'lumotlari bilan to'ldiring.
- Wi -Fi ma'lumotlarini toping va tarmoq nomi (SSID) va parolni kiriting.
- Telegram Bot ma'lumotlarini toping va @BotFather tomonidan berilgan ism, foydalanuvchi nomi va tokenni kiriting
Yuklab olish
Kengashning ideada to'g'ri (rasm2) va ulanganligiga ishonch hosil qiling, keyin kodni kompilyatsiya qilib ko'ring. Agar kompilyatsiya yaxshi ketsa, uni taxtaga yuklang, atigi bir necha soniya kerak bo'ladi.
Muammo bo'lsa, matn terish xatoligini tekshiring va qaytadan urinib ko'ring.
Sinov
[MUHIM!] Eskiz jurnallarni IDE ga yuboradi. Protsessor mahalliy USB portiga ega (Leonardo platalari kabi). Quvvat yoqilgandan so'ng, kod ketma -ket monitor ishlashini kutadi. Shunday qilib, uni kompyuterga ulang va ketma -ket monitorni oching. Arduino avval internetga ulanadi, keyin Telegram serverida yangi xabarlar uchun so'rov o'tkazishni boshlaydi (image3).
Endi xohlagan qurilmangizda Telegram -ni oching va qidiruv maydoniga botingizning nomini kiriting ("bot" bilan tugaydigan foydalanuvchi nomini emas). U bilan suhbatni oching.
Bot bilan suhbatni boshlashning birinchi buyrug'i /start, bizning Arduino xush kelibsiz xabar bilan javob beradi. Endi yordamni yozing (chiziqsiz), u qo'llab -quvvatlanadigan buyruqlar ro'yxati bilan javob beradi, siz hammasini sinab ko'rishingiz mumkin (image4).
Siz testdan o'tdingiz, agar biror narsa ishlamasa, eskizga kiritilgan ma'lumotlarni tekshiring (ism, foydalanuvchi nomi, token …)
Agar siz telegram serveriga ulanishda xatolarga duch kelsangiz (jurnal: Bot ulanmagan):
- Asboblar-> Wifi101/wifinina yangilagichini oching
- Kengashingiz ulanganligiga ishonch hosil qiling, yangilash asbobining chap tomonidagi portlarni tekshiring, taxta u erda bo'lishi kerak
- Yangilash eskizini ochish -ni bosing va uni taxtaga yuklang
- Yuklab olgandan so'ng, yangilash panelida eng so'nggi dasturiy ta'minotni tanlang va dasturiy ta'minotni yangilash -ni bosing
- Yangilashdan so'ng, SSL sertifikatlari bo'limida, yangilanuvchi bo'limida, Domen qo'shish -ni bosing, muloqot oynasida telegram.org:443 yozing va OK tugmasini bosing.
- Wi -Fi moduliga sertifikat yuklash -ni bosing
- Ushbu eskizni taxtaga yuklang
5 -qadam: yaxshilanishlar
Kodga qaraganda, yangi buyruqlarni bajarish va foydalanuvchiga javob berish juda oddiy.
Yangi buyruqlar: Siz har bir yangi buyruq uchun sub yozishingiz mumkin. Har bir bo'lim buyruqni bajarishga g'amxo'rlik qiladi va (oxir -oqibat) foydalanuvchiga holat ma'lumotlarini qaytaradi.
Foydalanuvchilarni cheklash: Albatta, bu loyiha faqat demo. Har qanday Telegram foydalanuvchisi uyingizga ulanishi va keraksiz buyruqlarni yuborishi mumkin. Siz buni xohlamaysiz!.
Xo'sh, 1 -rasmga qarang, u 2 foydalanuvchi ulanganligini ko'rsatadi. Ko'rib turganingizdek, har bir foydalanuvchining shaxsiy identifikatori bor. Kod tomonida ozgina ishlash bilan siz faqat vakolatli foydalanuvchilar uchun filtrlashingiz (yoki ro'yxat tuzishingiz) mumkin. Faqat kodni o'rganing va foydalanuvchi identifikator raqamini to'xtatib ko'ring. Keyin buyruqlarni faqat taniqli foydalanuvchilardan bajaring.
Uskuna: apparat tomonida ko'plab sensorlar va o'rni Arduino kirish -chiqish pinlariga ulanishi mumkin.
Ehtiyot bo'ling: ushbu loyihada ishlatilgan taxta 3.3V bardoshli !!! Agar kerak bo'lsa, kuchlanish darajasini o'zgartirish moslamasidan foydalaning! Bu taxta haqida qo'shimcha ma'lumot va maslahatlar uchun bu yerdan o'qing:
Hammasi shu, zavqlaning!
Tavsiya:
NodeMCU (ESP8266) bilan Telegram Bot: 3 qadam
NodeMCU bilan Telegram Bot (ESP8266): Tizimdan bildirishnoma yuborish uchun bot kerakmi? yoki xabar yuborish orqali biror narsa qilyapsizmi? Telegram Bot - bu sizning yechimingiz! Bu o'quv qo'llanmada men o'z botimni yaratish uchun Telegram Web va BotFather -dan foydalanaman
Raspberry Pi bilan Arduino MKR qalqonlaridan foydalaning: 8 qadam
Raspberry Pi bilan Arduino MKR qalqonlaridan foydalaning: Bizning PiMKRHAT - bu Raspberry Pi bilan birgalikda Arduino MKR platalari va qalqonlarini ishlatish uchun HAT adapteri. Har xil Arduino MKR qalqonlarini Raspberry Pi kengaytmasi sifatida HAT orqali ishlatish mumkin. Men bu kichik loyihada Ardu -dan qanday foydalanishni ko'rsatmoqchiman
Arduino MKR ENV qalqoni bilan ob -havo monitor: 6 qadam
Arduino MKR ENV qalqoni bilan ob -havo monitor: Bir necha kun oldin bizda yangi MKR ENV qalqonlari bor edi. Bu qalqonlarning bortida bir nechta sensorlar (harorat, havo bosimi, namlik, UV ….) bor - bu bizning ArduiTouch MKR to'plamimiz bilan birgalikda oddiy ob -havo stantsiyasini yaratish uchun yaxshi to'plam. Biz
RaspberryPi va Telegram Bot bilan harakat sensori ishlatish: 4 qadam
RaspberryPi va Telegram Bot bilan harakat sensori ishlatish: Salom bolalar, bu xabarda biz Raspberry Pi telegram botidan PIR (harakat) sensori bilan foydalanmoqchimiz
Nodemcu bilan Smart House Telegram Bot (esp8266, Relay, Ds18b20): 8 qadam
Nodemcu bilan Smart House Telegram Boti (esp8266, Relay, Ds18b20): Bu darslikda men sizga telegram botini qanday yaratishni va undan foydalanib boshqaruv uyini ko'rsataman, lekin birinchi navbatda mening Telegram kanalimga obuna bo'ling va yangi loyihalarni boshqalardan tezroq kashf eting. Bu men uchun motivatsiya. Keling