Turinys:

[IoT] Telegramos robotas su „Arduino MKR WiFi 1010“: 5 žingsniai
[IoT] Telegramos robotas su „Arduino MKR WiFi 1010“: 5 žingsniai

Video: [IoT] Telegramos robotas su „Arduino MKR WiFi 1010“: 5 žingsniai

Video: [IoT] Telegramos robotas su „Arduino MKR WiFi 1010“: 5 žingsniai
Video: Reduce el 90% del peso de tus Gifs convirtiéndolo en video con FFmpeg 2024, Liepa
Anonim
Image
Image
Ko tau reikia
Ko tau reikia

Šis projektas parodo, kaip sujungti „Arduino“su „Telegram Bot“API. Projektas sukurtas aplink naująją „MKR WiFi 1010“plokštę, aprūpintą „U-BLOX“moduliu ESP32.

Šiame etape projektas yra tik koncepcijos įrodymas, tik norint parodyti, ką galėtumėte padaryti, todėl jums reikia tik „Arduino“plokštės.

Bet kas yra „Telegram Bot“? Na, robotai yra tiesiog „Telegram“paskyros, valdomos programinės įrangos, o ne žmonių, ir jie dažnai turės AI funkcijas. Jie gali bet ką - mokyti, žaisti, ieškoti, transliuoti, priminti, prisijungti, integruotis su kitomis paslaugomis ar net perduoti komandas daiktų internetui. („Telegram“kreditai:

Mūsų atveju mes perduosime komandas „Arduino“, kuriančiam paprastą daiktų interneto įrenginį. Jis atsakys į paprastas komandas ir taip pat įjungs/išjungs įmontuotą „Led“. Leisiu jūsų vaizduotei daugiau nuveikti … (įsivaizduokite, kad, pavyzdžiui, prijungiate vieną ar daugiau relių prie įvesties/išvesties kaiščių ir įjungiate/išjungiate šildytuvą arba oro kondicionavimo sistemą su savo išmaniuoju telefonu).

1 žingsnis: ko jums reikia

Ko tau reikia
Ko tau reikia

Šiam projektui jums reikia:

  • „Arduino MKR WiFi 1010“iš „Arduino“parduotuvės:
  • „Arduino IDE 1.8.5“arba naujesnė versija:
  • Mikro-usb kabelis, skirtas „Arduino“prijungti prie kompiuterio
  • Norint prisijungti prie interneto, reikalingas SSID ir slaptažodis. Geriau, jei naudojate savo namų maršrutizatorių, kad įsitikintumėte, jog jis nėra užblokuotas.
  • Telegrama programa įdiegta jūsų išmaniajame telefone, nepriklausomai nuo prekės ženklo. Čia taip pat rasite kompiuterio ir žiniatinklio versijas!

2 žingsnis: Įdiekite IDE

IDE diegimas
IDE diegimas
IDE diegimas
IDE diegimas
IDE diegimas
IDE diegimas

Taip, aš žinau, aš žinau… dauguma jūsų jau turi „Arduino IDE“kompiuteryje, tačiau ši instrukcija taip pat skirta pradedantiesiems. Taigi, pirmiausia atsisiųskite pasirinktą „Arduino IDE 1.8.5“(zip failas „ne administratoriai“arba exe failas)

Rekomenduojama 1.8.5 versija, aš neišbandžiau senų versijų, o naujoji projekte naudojama plokštė negalėjo būti palaikoma.

Dabar turite įdiegti naujas plokštes su jų tvarkyklėmis:

  1. paleiskite IDE
  2. Meniu Įrankiai pasirinkite Lentos, tada procesorių sąrašo viršuje pasirinkite Lentų tvarkyklė.
  3. Slinkite naują langą (žr. Paveikslėlį), kol rasite „Arduino SAMD“plokštes, kuriose yra nauja „MKR WiFi 1010“.
  4. Spustelėkite tą skirtuką arba spustelėkite Daugiau informacijos skirtuko viduje, pasirinkite naujausią versiją ir įdiekite.
  5. Palaukite, kol diegimas bus baigtas. Ji taip pat pasirūpins tvarkyklių diegimu
  6. Šiai lentai taip pat reikia naujos „WiFi“bibliotekos: pasirinkite „Eskizas“, „Įtraukti biblioteką“ir „Tvarkyti bibliotekas“. Ieškokite „Wifinina“ir įdiekite, kaip tai darėte naudodami aukščiau esantį procesorių.

Dabar prijunkite naują „Arduino“plokštę ir palaukite, kol „Windows“užbaigs tvarkyklės diegimą.

Meniu Įrankiai-> Lentelė rasite naujas plokštes, pasirinkite MKR WiFi 1010.

Šiam projektui reikalinga dar viena speciali biblioteka, tai ESP8266 „TelegramBot“biblioteka, kurią sukūrė Giancarlo Bacchio. Biblioteka buvo šiek tiek pakeista, kad veiktų su šia lenta, todėl ji įtraukta į eskizo aplanką.

Pasirinkite tinkamą kom portą ir išbandykite plokštę naudodami komandą Get Board Info.

Sveikiname, baigėte IDE!

3 žingsnis: sukurkite telegramos robotą

Telegramos roboto kūrimas
Telegramos roboto kūrimas
Telegramos roboto kūrimas
Telegramos roboto kūrimas
Telegramos roboto kūrimas
Telegramos roboto kūrimas

Sukurti naują „Telegram Bot“yra gana paprasta.

Atidarykite programą „Telegram“ir paieškos juostoje įveskite @BotFather ir pradėkite su juo pokalbį (image1). „BotFather“yra… „Bot“gamykla. Tai padės sukurti naują robotą ir pakeisti jo nustatymus.

Po /start komandos pamatysite pagalbos sąrašą (image2).

  • Įveskite /newbot (3 paveikslėlis) Dabar įveskite savo roboto pavadinimą. Vardas rodomas kontaktiniuose duomenyse ir kitur.
  • „BotFather“paprašys jūsų vartotojo vardo. Vartotojo vardas yra trumpas vardas, naudojamas paminėjimuose ir telegram.me nuorodose. Vartotojų vardai yra 5–32 simbolių ilgio ir neskiriami didžiosios ir mažosios raidės, tačiau gali būti tik lotyniški simboliai, skaičiai ir pabraukimai. Jūsų roboto naudotojo vardas turi baigtis „bot“, pvz. „Tetris_bot“arba „TetrisBot“.
  • Jei vardas ir vartotojo vardas galioja, gausite ilgą simbolių eilutę, pavadintą TOKEN. Tai yra jūsų asmeninis „raktas“, naudojamas bendrauti su „Telegram“serveriais. Nukopijuokite ir įklijuokite jį į teksto failą savo kompiuteryje. Vėliau naudosime jį į „Arduino“kodą. Jei jį prarasite, nesijaudinkite, tiesiog atidarykite pokalbį ir įveskite /įveskite, kad sukurtumėte naują.

Visi veiksmai aprašyti čia:

Išplėstinė (neprivaloma)

Atidarykite pokalbį ir įveskite /help

Spustelėkite (arba įveskite) /setuserpic, kad įkeltumėte savo roboto paveikslėlį. Spustelėkite (arba įveskite) /setabouttext, kad nustatytumėte „Bot“skiltį „Apie“: žmonės matys šį tekstą roboto profilio puslapyje ir jis bus išsiųstas kartu su nuoroda į jūsų robotą, kai jie su kuo nors bendrina.

Spustelėkite (arba įveskite) /setdescription, kad nustatytumėte savo roboto aprašymo skyrių. Žmonės pamatys šį aprašymą, kai atidarys pokalbį su jūsų robotu, bloku pavadinimu „Ką šis robotas gali padaryti?“.

4 veiksmas: modifikuokite, įkelkite ir išbandykite eskizą

Keiskite, įkelkite ir išbandykite eskizą
Keiskite, įkelkite ir išbandykite eskizą
Keiskite, įkelkite ir išbandykite eskizą
Keiskite, įkelkite ir išbandykite eskizą
Keiskite, įkelkite ir išbandykite eskizą
Keiskite, įkelkite ir išbandykite eskizą

Atėjo laikas įkelti programinę įrangą į „Arduino MKR WiFi 1010“plokštę.

Atsisiųskite pridėtus failus, dėl kokių nors priežasčių negaliu įkelti ZIP, todėl sukurkite aplanką, pavadintą eskizu, ir nukopijuokite visus 4 jame esančius failus, nepakeiskite pavadinimų, nebent žinote, ką darote.

Keisti

Atidarykite eskizą, turime užpildyti tam tikrą informaciją (1 vaizdas): užpildykite arduino_secrets.h naudodami „Wi -Fi“ir telegramos kredencialus.

  • Raskite „WiFi“tinklo informaciją ir įveskite savo tinklo pavadinimą (SSID) ir slaptažodį.
  • Raskite telegramos „Bot“informaciją ir įveskite @BotFather pateiktą vardą, vartotojo vardą ir prieigos raktą

Įkelti

Įsitikinkite, kad plokštė yra teisinga (vaizdas 2) ide ir prijungta, tada pabandykite surinkti kodą. Jei kompiliacija bus sėkminga, įkelkite ją į lentą, tai užtruks tik kelias sekundes.

Iškilus problemoms patikrinkite, ar nėra rašybos klaidos, ir bandykite dar kartą.

Bandymas

[SVARBU!] Eskizas siunčia žurnalus IDE. Procesorius turi vietinį USB prievadą (kaip ir „Leonardo“plokštės). Įjungus kodą, lauks, kol veiks serijinis monitorius. Taigi, leiskite jam prisijungti prie kompiuterio ir atidarykite nuoseklųjį monitorių. „Arduino“pirmiausia prisijungs prie interneto, tada pradės apklausti „Telegram“serverį dėl naujų pranešimų (3 paveikslas).

Dabar atidarykite „Telegram“savo pageidaujamame įrenginyje ir paieškos laukelyje įveskite savo roboto pavadinimą (o ne vartotojo vardą, kuris baigiasi „bot“). Atidarykite pokalbį su juo.

Pirmoji komanda pradėti pokalbį su robotu yra /pradėti, mūsų „Arduino“atsakys sveikinimo pranešimu. Dabar įveskite pagalbą (be pasvirojo brūkšnio), ji atsakys su palaikomų komandų sąrašu, galite jas išbandyti (4 paveikslėlis).

Baigėte testą, jei kažkas neveikia, patikrinkite eskize įvestą informaciją (vardas, vartotojo vardas, prieigos raktas …)

Jei prisijungdami prie telegramų serverio patiriate klaidų (žurnalas: robotas neprisijungęs):

  • Atidarykite Įrankiai-> „Wifi101“/„wifinina“atnaujinimo programą
  • Įsitikinkite, kad jūsų plokštė prijungta, patikrinkite prievadus kairėje atnaujinimo įrankio pusėje, plokštė turi būti ten
  • Spustelėkite Atidaryti atnaujinimo eskizą ir įkelkite jį į lentą
  • Po įkėlimo atnaujinime pasirinkite naujausią savo plokštės programinę -aparatinę įrangą ir spustelėkite atnaujinti programinę -aparatinę įrangą
  • Po atnaujinimo atnaujinimo priemonės skiltyje SSL sertifikatai spustelėkite Pridėti domeną, dialogo lange parašykite telegram.org:443, tada paspauskite Gerai.
  • Spustelėkite Įkelti sertifikatus į „Wi -Fi“modulį
  • Įkelkite šį eskizą į lentą

5 žingsnis: patobulinimai

Patobulinimai
Patobulinimai

Žvelgiant į kodą, labai paprasta įgyvendinti naujas komandas ir atsakyti vartotojui.

Naujos komandos: kiekvienai naujai komandai galite parašyti antrinę dalį. Kiekvienas antrinis asmuo pasirūpins komandos užbaigimu ir (galiausiai) grąžins naudotojui būsenos informaciją.

Vartotojų apribojimas: Žinoma, šis projektas yra tik demonstracinė versija. Bet kuris „Telegram“vartotojas gali prisijungti prie jūsų namų ir siųsti nepageidaujamas komandas. Tu to nenori !.

Na, pažiūrėkite į paveikslėlį1, jame matyti 2 prisijungę vartotojai. Kaip matote, kiekvienas vartotojas turi savo vartotojo ID. Šiek tiek padirbėję kodo pusėje, galite filtruoti (arba sudaryti sąrašą) tik įgaliotiems vartotojams. Tiesiog išstudijuokite kodą ir pabandykite perimti vartotojo ID numerį. Tada vykdykite komandas tik iš gerai žinomų vartotojų.

Techninė įranga: Iš aparatūros pusės prie „Arduino“įvesties/išvesties kaiščių galima prijungti daug jutiklių ir relių.

Būkite atsargūs: šiame projekte naudojama plokštė toleruoja 3.3V !!! Jei reikia, naudokite įtampos lygio perjungiklį! Norėdami gauti daugiau informacijos ir patarimų apie šią plokštę, skaitykite čia:

Tai viskas, mėgaukitės!

Rekomenduojamas: