Turinys:

Siųskite SMS naudodami ESP8266: 5 veiksmai
Siųskite SMS naudodami ESP8266: 5 veiksmai

Video: Siųskite SMS naudodami ESP8266: 5 veiksmai

Video: Siųskite SMS naudodami ESP8266: 5 veiksmai
Video: SKR 1.4 - Basics with new Marlin firmware 2.0.9.1 2024, Lapkritis
Anonim
Siųsti SMS naudojant ESP8266
Siųsti SMS naudojant ESP8266

Ši instrukcija nurodo, kaip siųsti SMS žinutes internetu iš ESP8266 „NodeMCU“modulio plokštės į mobilųjį telefoną. Norėdami išsiųsti pranešimą, turėsite atlikti veiksmus, kad gautumėte virtualų telefono numerį iš ryšių bendrovės „Twilio“. Nereikia kredito kortelės, nes „Twilio“turi nemokamą bandomosios paskyros parinktį. Tada atsisiųsite ir naudosite „Arduino IDE“programos pavyzdį SMS žinutėms siųsti.

Šios instrukcijos pavyzdinėje programoje yra funkcijų iškvietimų, kuriuos galima tiesiogiai kopijuoti, įklijuoti, redaguoti ir naudoti savo projektuose.

Prekės

Aš naudoju „NodeMCU ESP8266 CH340G ESP-12E“belaidžio WIFI interneto kūrimo plokštę. Jie parduoda už maždaug 3 USD „eBay“iš Kinijos tiekėjų.

1 veiksmas: išbandykite savo ESP8266 „NodeMCU“

Galite išbandyti su duonos lenta arba be jos. Be duonos lentos borto lemputė mirksės ir išsijungs, o tai veiksminga bandymui.

Savo pavyzdyje aš prijungiu „NodeMCU“prie „Breadboard“. Aš įkišu neigiamą šviesos diodo pusę į „NodeMCU“įžeminimo (G arba GND) kaištį. Teigiama šviesos diodo pusė yra prijungta per rezistorių (nuo 500 iki 5K omų) prie „NodeMCU“kaiščio D4. Kai vykdoma pavyzdinė programa, borto šviesos diodas įsijungs, išorinis šviesos diodas užges, tada įjungtas šviesos diodas išsijungs, o išorinis šviesos diodas užsidegs. LED lemputės pakaitomis įsijungs ir išsijungs.

Atsisiųskite ir paleiskite pagrindinę „Arduino“testavimo programą: nodeMcuTest.ino. Vykdant programą, įmontuota LED lemputė įsijungs 1 sekundei, išsijungs 1 sekundei ir nepertraukiamai veiks. Taip pat skelbiami pranešimai, kuriuos galima peržiūrėti naudojant „Arduino IDE Tools/Serial Monitor“.

+++ sąranka.

+ Inicializuotas LED skaitmeninis kaištis išėjimui. Šviesos diodas išjungtas. ++ Eiti į kilpą. + Ciklo skaitiklis = 1 + Ciklo skaitiklis = 2 + Ciklo skaitiklis = 3…

Kai patvirtinsite, kad jūsų IDE gali būti naudojamas programuoti „NodeMCU“, pereikite prie kito veiksmo.

Pastaba dėl bibliotekų, kurias įdiegiau ESP8266 projektams:

  • „Arduino WiFi“bibliotekos versija 1.2.7.
  • „PubSubClient“versija 2.7.0, autorius Nickas O'Leary, skirtas MQTT pranešimams. Šiam projektui nereikalingas.
  • IRremoteESP8266 2.6.3 versija, skirta infraraudonųjų spindulių. Šiam projektui nereikalingas.

Jei turite daugiau informacijos apie reikalingas bibliotekas, parašykite komentarą. Priežastis, kodėl neturiu specifikos, yra ta, kad neįrašiau to, ką įdiegiau, atsiprašau.

Apie ESP8266 „NodeMCU“

Funkcijos,

  • 80 MHz laikrodžio greitis
  • Darbinė įtampa: 3.3V
  • „Flash“atmintis: 4 MB, SRAM: 64 KB
  • 9 dažniausiai naudojami skaitmeniniai GPIO kaiščiai, pažymėti: nuo D0 iki D8.
  • Iš 9, 4 kaiščius galima naudoti SPI, o 2 kaiščius - I2C.
  • Nutraukite GPIO kaiščius D0-D8.
  • Nenaudokite 6 kaiščių: CLK, SD0, CMD, SD1, SD2, SD3 (GPIO 6-11), nes jie naudojami.
  • Išbandyta: mygtuko įvestis naudojant D0-D02.
  • Išbandyta: mirksi šviesos diodas naudojant D0-D08. Iš rezistoriaus, į šviesos diodą, į žemę.
  • Reikia išbandyti, UART1 (TX = GPIO2), Serial1 objektas: D4 arba D7 ir D8.

Smeigtuko detalės

„NodeMCU Label“GPIO kaištis# D0 16 Tik GPIO skaitymas/rašymas. Gali neturėti pertraukimo funkcijos. D1 5 Skaitmeninis GPIO. -------------------- D2 4 Skaitmeninis GPIO. D3 0 Skaitmeninis GPIO. ---------- D2 4 I2C: SCL, laikrodis DS3231, PCF8574 įvesties moduliai D3 0 I2C: SDA ---------- D4 (TX) 2 Integruotas, įmontuotas šviesos diodas. ---------- 3V 3v išėjimas G Įžeminimas -------------------- D5 14 Skaitmeninis GPIO. D6 12 Skaitmeninis GPIO. D7 (RX) 13 Veikia įvedant, pavyzdžiui, infraraudonųjų spindulių priėmimui. D8 (TX) 15 Neveikia įvesties, pavyzdžiui, infraraudonųjų spindulių priėmimo. ---------- D5 14 SD kortelė: SPI SCK D6 12 SD kortelė: SPI MISO D7 (RX) 13 SD kortelė: SPI MOSI D8 15 SD kortelė: CS, skirta SPI įjungti/išjungti įrenginį. Galima naudoti kitus skaitmeninius kaiščius. -------------------- RX 03 sistema buvo pašalinta iš IDE, todėl įkėlus iš naujo paleidžiama. TX 01 sistema pakelta. G Įžeminimas 3V 3v išėjimas

2 veiksmas: atidarykite nemokamą „Twilio“bandomąją sąskaitą ir gaukite savo telefono numerį

Image
Image

„Twilio“yra interneto ryšių platformos įmonė. Šioje instrukcijoje naudojami produktai yra programuojami „Twilio“pranešimai ir telefono numeriai. „Twilio“turi virtualių telefono numerių, kuriais galima siųsti ir gauti SMS žinutes į bet kurį mobilųjį telefoną, sąrašą.

Šiame žingsnyje jūs:

  • Atidarykite „Twilio“paskyrą, jei jos dar neturite. Bandomoji sąskaita yra nemokama ir nereikalauja kredito kortelės. Bandomojoje sąskaitoje bus bandomasis balansas, naudojamas mokėti už telefono numerius ir keistis tekstiniais pranešimais su mobiliaisiais telefonais.
  • Pirkite „Twilio“telefono numerį. Tai nemokama, nes mokama už bandomojo balanso naudojimą.
  • Siųskite pranešimą iš savo mobiliojo telefono į naują telefono numerį.
  • Kai „Twilio“gaus jūsų pranešimą, į jūsų mobilųjį telefoną bus išsiųstas automatinio atsakymo pranešimas.
  • Norėdami peržiūrėti pranešimų žurnalus, naudokite „Twilio Console“svetainės programą.

Pirmame vaizdo įraše parodyta, kaip atidaryti „Twilio“paskyrą. Antrame vaizdo įraše parodyta, kaip nusipirkti „Twilio“telefono numerį.

Nuoroda į „Twilio Console“svetainę, kad atidarytumėte paskyrą.

Nuoroda į „Twilio Console“svetainę, kur galima nusipirkti „Twilio“telefono numerį.

Jūsų naujasis „Twilio“SMS telefono numeris jau sukonfigūruotas automatiškai. Kaip testą, siųskite SMS žinutę iš savo mobiliojo telefono į savo „Twilio“telefono numerį. Gausite šį pranešimą:

Ačiū už tavo žinutę. Norėdami pakeisti šį pranešimą, sukonfigūruokite savo numerio SMS URL. Atsakyti Pagalba Pagalba. Atsakyti Sustabdyti, kad atsisakytumėte prenumeratos.

Dabar naudokite „Twilio Console“, kad peržiūrėtumėte pranešimų žurnalus iš aukščiau pateikto bandymo:

www.twilio.com/console/sms/logs

Daugiau apie „Twilio“naudojimą

Galite sukurti savo pasirinktinį automatinį atsakymą. Nuoroda į „Studio“instrukcijas, kaip sukurti pasirinktinį SMS atsakymo pranešimą. „Studio“yra mūsų „Twilio“konsolės įrankis.

Galite naudoti „Twilio“konsolę, kad peržiūrėtumėte savo žurnalo pranešimus, atsisiųstumėte žurnalus kaip CVS ir įkeltumėte juos į skaičiuoklę. Galite pasirinkti datą ir laiko intervalą, į telefonų numerius ir iš jų, taip pat būseną, pvz.: Nepristatytas arba Išsiųstas. Taip pat galite atsisiųsti žurnalus kaip CVS failus. Kadangi vienu metu gali būti 300 žurnalų, galite apriboti pasirinkimą pagal datą.

Kūrėjų nuorodos

Nuoroda į dokumentaciją ir pavyzdinės programos pranešimams siųsti.

Nuoroda į programų pavyzdžius pranešimų žurnalų sąrašui.

Nuoroda į programos pranešimų ypatybes. Nuosavybių, kurios siunčiamos HTTP užklausoje, sąrašas.

Nuoroda į SMS žurnalų sąrašą tam tikrą laiką.

3 veiksmas: siųskite SMS iš „NodeMCU“

Siųskite SMS iš „NodeMCU“
Siųskite SMS iš „NodeMCU“

Atsisiųskite programą: HttpTwPost.ino ir įkelkite ją į „Arduino IDE“. Į programą įveskite „WiFi“tinklo ID ir slaptažodį. Įveskite savo „Twilio“paskyros SID, autentifikavimo raktą ir telefono numerį. „Twilio“paskyros SID ir autentifikavimo prieigos raktą galima peržiūrėti „Twilio Console“prietaisų skydelyje. Spustelėkite „Rodyti“, kad peržiūrėtumėte autentifikavimo žetoną.

// Jūsų tinklo SSID ir slaptažodžio įrašas char* ssid = "YourNetworkId"; const char* password = "YourNetworkPassword"; const char* account_sid = "YourTwilioAccountSID"; const char* auth_token = "YourAuthToken"; Eilutė iš_numeris = "+16505551111"; // Pridėjus kodavimą, pridėkite „+“. Eilutė į_skaičius = "+16505552222"; String message_body = "Sveiki iš NodeMCU.";

Atkreipkite dėmesį, kad naudojant „Twilio“telefono numerius geriausia formatuoti numerius kaip E.164 formato telefonų numerius. E.164 suformatuoti telefono numeriai prasideda „+“ir šalies kodu. Telefono numeryje nėra tarpų, brūkšnelių ar skliaustų. Pavyzdys: +16505551111.

Paleiskite programą. Kai programa paleidžiama, ji išsiųs SMS žinutę jūsų mobiliojo telefono numeriu. Taip pat skelbiami pranešimai, kuriuos galima peržiūrėti naudojant „Arduino IDE Tools/Serial Monitor“. Monitoriaus pranešimuose yra „Twilio“atsakymas.

+++ Sąranka.+ Prisijunkite prie „WiFi“. …. + Prijungtas prie „WiFi“, IP adresas: 192.168.1.76 + Pirštų atspaudų naudojimas 'BC B0 1A 32 80 5D E6 E4 A2 29 66 2B 08 C8 E0 4C 45 29 3F D0' + Prisijungimas prie api.twilio.com + Prisijungta. + Paskelbkite HTTP siuntimo SMS užklausą. + Ryšys uždarytas. + Atsakymas: HTTP/1.1 201 Sukurta Data: Ketvirtadienis, 2020 m. Liepos 16 d. 20:39:49 GMT Turinio tipas: programa/xml Turinio ilgis: 878 Ryšys: uždaryti „Twilio-Concurrent-Requests“: 1 „Twilio-Request-Id“: RQe4fbdd142fca4b2fab24697e74006837 „Twilio“užklausos trukmė: 0,116 Prieigos valdymo leidimo kilmė: * Prieigos valdymo ir leidimo antraštės: Priimti, autorizacija, turinio tipas, „If-Match“, „If-Modified-Since“, „If-None-Match“, „If“Nemodifikuotas-nuo prieigos valdymo-leidimo metodų: GET, POST, DELETE, OPTIONS Access-Control-Expose-Headers: ETag Access-Control-Allow-Credentials: true X-Powered-By: AT-5000 X-Shenanigans: none X-Home-Region: us1 X-API-Domain: api.twilio.com Strict-Transport-Security: max-age = 31536000… + Ciklo pradžia.

Norėdami peržiūrėti išsiųstą pranešimą, galite peržiūrėti „Twilio“pranešimų žurnalus.

4 veiksmas: mygtukas siųsti SMS

Image
Image

Aukščiau pateiktame vaizdo įraše parodyta ESP8266 „NodeMCU“, naudojama pranešimams siųsti į mobilųjį telefoną. Vaizdo įraše „NodeMCU“jau paleistas ir prijungtas prie „WiFi“tinklo. Paspaudus mygtuką, užsidega įmontuota LED lemputė. SMS žinutės užklausa siunčiama „Twilio Messaging“paslaugai. Paslauga siunčia SMS žinutę į mano mobilųjį telefoną. Pranešimas gautas. Paslauga taip pat atsako „NodeMCU“, kad pranešimas buvo išsiųstas į eilę. Iki to laiko žinutė jau buvo gauta telefonu. Kai „NodeMCU“gauna atsakymą iš „Twilio“, borto lemputė užgęsta. Grandinė yra pasirengusi siųsti kitą pranešimą.

Toliau aprašoma, kaip vaizdo įraše įdiegti grandinę. Šiam žingsniui reikia duonos lentos, mygtuko ir laidų. Pridėkite mygtuką prie duonos lentos. Viena mygtuko pusė jungiama prie „NodeMCU D1“kaiščio. Prijunkite kitą mygtuko pusę prie „NodeMCU“įžeminimo kaiščio (mano plokštėje esantis kaištis G).

Atsisiųskite programą: HttpTwSendSms.ino ir įkelkite ją į „Arduino IDE“. Kaip ir ankstesniame žingsnyje, į programą įveskite „WiFi“tinklo ID ir slaptažodį. Įveskite savo „Twilio“paskyros SID, autentifikavimo raktą ir telefono numerį.

Kai programa bus paleista, „NodeMCU“prisijungs prie „WiFi“tinklo. Paspaudus mygtuką, mobiliojo telefono numeris išsiunčia pranešimą.

5 veiksmas: SMS iš „NodeMCU“yra puikus IoT įrankis

Dabar galite naudoti kodo pavyzdį ir „Twilio“paskyrą, norėdami siųsti SMS žinutes per „WiFi“.

Sveikinimai, Stacy Davidas

Rekomenduojamas: