Sadržaj:
- Korak 1: Dijelovi
- Korak 2: SMS provajder
- Korak 3: Ožičite ga
- Korak 4: Kôd
- Korak 5: Obnovite kôd
- Korak 6: Pritisnite dugme
Video: Kako poslati SMS tekstualne poruke iz vašeg Arduino ESP projekta: 6 koraka
2024 Autor: John Day | [email protected]. Zadnja izmjena: 2024-01-30 08:05
Ovo uputstvo pokazuje kako slati SMS tekstualne poruke iz vašeg arduino projekta koristeći uređaj ESP8266 i WiFi vezu. Zašto koristiti SMS?* SMS poruke su mnogo brže i pouzdanije od poruka obavijesti aplikacije. * SMS poruke se mogu primati i tamo gdje mobilne podatkovne veze nisu dostupne * Nijedna aplikacija treće strane ne mora biti instalirana na pametnom telefonu. * SMS je bitan za kritične aplikacije vezane za ovaj projekt. Ovaj projekt jednostavno šalje SMS tekstualnu poruku pritiskom na ožičeno dugme na ESP uređaj. Za vaš projekt to bi se moglo pokrenuti na nekom drugom okidaču ili statusu događaja
Korak 1: Dijelovi
Za ovu demonstraciju trebat će vam:* ESP8266 uređaj. Odabrao sam paket ESP-01, ali bi trebao raditi i bilo koji drugi paket/uređaj ESP.* Napajanje od 3,3 V* WiFi veza* Kapow SMS račun* Arduino IDE* ESP8266 Modul za programiranje.
Korak 2: SMS provajder
U ovom projektu SMS tekstualne poruke šalju se putem SMS pristupnika na internetu. Za to ćete se morati pretplatiti na pružatelja SMS usluga. Pretplatnici se obično naplaćuju po tekstualnoj poruci. Moj odabrani pružatelj SMS usluga je KAPOW. Otkrio sam da će se većina SMS provajdera u Velikoj Britaniji baviti samo ograničenim kompanijama, a ne pojedincima. Međutim, KAPOW to čini i pruža pouzdanu i isplativu uslugu. Da biste otvorili Kapow SMS račun, posjetite donju vezu.
www.kapow.co.uk
Korak 3: Ožičite ga
Dijagram ožičenja za ovaj projekt je gore
Korak 4: Kôd
// ESP8266 Demo Project za slanje SMS -a putem KAPOW -a (www.kapow.co.uk)
// https://www.instructables.com/id/How-to-Send-SMS-… #include #include char _sKapow_Host = "kapow.co.uk"; int _iKapow_Port = 80; / * <<<< PROMENITE DETALJE ISPOD * * // Vaši WiFi detalji: char _sWiFi_SSID = "YourWifiPoint"; // <--- PROMJENA !!! char _sWiFi_Password = "VašaWifFiPassword"; // <--- PROMJENA !!! // Podaci o vašem Kapow korisničkom računu: char _sKapow_User = "VašKapowAccount"; // <--- PROMJENA !!! char _sKapow_Password = "VašaKapowPassword"; // <--- PROMJENA !!! char _sKapow_Mobile = "Vaš mobilni"; // >>> PROMJENITE DETALJE IZNAD */ // tipka je spojena na GP0 Pin const int gp0_Pin = 0; const int iMaxAttempts = 10; int gp0_State = 0; void setup () {Serial.begin (9600); Serial.println ("\ nDemo: Slanje SMS -a putem KAPOW -a"); // inicijalizira pin tastera kao ulaz // i povlači ga prema gore (interno) pinMode (gp0_Pin, INPUT_PULLUP); // uspostavljanje Wifi veze WifiConnect (); } void loop () {// čita stanje dugmeta gp0_State = digitalRead (gp0_Pin); // je li gumb pritisnut nisko? if (gp0_State == 0) {Serial.println ("Dugme pritisnuto za slanje SMS -a …"); SendSmsKapow (_sKapow_Mobile, "Ovo+je+test+SMS+poruka+poslana+sa+vašeg+ESP+uređaja"); } Serial.println ("Spavanje 1 sekunda"); kašnjenje (1000); } void WifiConnect () {Serial.print ("\ nPovezivanje na WiFi:"); Serial.println (_sWiFi_SSID); WiFi.begin (_sWiFi_SSID, _sWiFi_Password); while (WiFi.status ()! = WL_CONNECTED) {// ponovo pokušajte nakon drugog Serial.print ("."); kašnjenje (1000); } if (WiFi.status () == WL_CONNECTED) Serial.println ("Povezano na WiFi"); } bool SendSmsKapow (char* sMobile, char* sMessage) {WiFiClient clientSms; int iAttempts = 0; Serial.print ("Povezivanje na KAPOW host"); while (! clientSms.connect (_sKapow_Host, _iKapow_Port)) {Serial.print ("."); iAttempts ++; if (iAttempts> iMaxAttempts) {Serial.println ("\ nNije uspjelo povezivanje na KAPOW"); return true; } kašnjenje (1000); } Serial.println ("\ nPovezan na KAPOW"); kašnjenje (1000); Serial.println ("Slanje HTTP zahtjeva u KAPOW:"); // Primjer GET zahtjeva bio bi: //https://www.kapow.co.uk/scripts/sendsms.php?username=test&password=test&mobile=07777123456&sms=Test+message char sHttp [500] = ""; strcat (sHttp, "GET /scripts/sendsms.php?username="); strcat (sHttp, _sKapow_User); strcat (sHttp, "& password ="); strcat (sHttp, _sKapow_Password); strcat (sHttp, "& mobile ="); strcat (sHttp, sMobile); strcat (sHttp, "& sms ="); strcat (sHttp, sMessage); strcat (sHttp, "& returnnid = TRUE / n / n"); Serial.println (sHttp); clientSms.print (sHttp); Serial.println ("Čekanje na odgovor (10 sekundi) …"); kašnjenje (10 * 1000); char sReply [100] = ""; int iPos = 0; while (clientSms.available ()) {char c = clientSms.read (); Serial.print (c); sReply [iPos] = c; iPos ++; if (iPos == 99) break; } sReply [iPos] = '\ 0'; // provjeravamo sadrži li odgovor OK bool bResult = (strstr (sReply, "OK")! = NULL); if (bResult) Serial.println ("\ nSMS: Uspješno poslano"); else Serial.println ("\ nSMS: Slanje nije uspjelo"); if (! clientSms.connected ()) {Serial.println ("Odvajanje od KAPOW -a"); clientSms.stop (); } return bResult; }
Korak 5: Obnovite kôd
Postoje mnoge druge detaljne upute koje pokazuju kako programirati fleš program na ESP8266 uređaju. Zato ću samo dati pregled svog postavljanja. Ukratko, koristim aUSB za serijsko FTDI sučelje i povlačim GP0 pri resetiranju kako bih pokrenuo proces bljeskanja pokretačkog programa. Izgradio sam vlastiti uređaj za programiranje stripboard -a radi praktičnosti. Ima* utičnicu za ESP-01 uređaj* utičnicu za crveni FTDI interfejs za uključivanje u host računara putem USB-a.* Dugmad za RESET, GP0, GP2 DO UZEMLJA ESP uređaj možete bljeskati pomoću 3,3 V koje isporučuje FTDI interfejs. Uverite se da su postavke kratkospojnika FTDI takođe postavljene na 3,3 V.
Korak 6: Pritisnite dugme
Možete testirati projekt ili spojen na FTDI za serijski izlaz bilježenja, ili samostalno (na matičnoj ploči s vanjskim napajanjem). Ponovno se dodaje da koristite vanjsko napajanje od 3.3 V, jer je struja napajanja FTDI erak. Međutim, FTDI 3.3v napajanje mi je također pomoglo jer mi je wifi usmjerivač bio nadohvat ruke. Ostavite ESP povezan sa serijskim/usb portom kako biste mogli pratiti pokrenuti dnevnik serijskog otklanjanja grešaka pomoću serijskog monitora Arduino IDE -a. dugme spojeno na GP0. Ovo će poslati SMS poruku kao u nastavku. Provjerite na svom telefonu primljenu SMS tekstualnu poruku. Posao je gotov.
Preporučuje se:
Kako poslati podatke u oblak pomoću Arduino Etherneta: 8 koraka
Kako poslati podatke u oblak pomoću Arduino Etherneta: Ova instrukcija vam pokazuje kako objaviti svoje podatke na AskSensors IoT platformi koristeći Arduino Ethernet Shield. Ethernet štit omogućuje vašem Arduinu da se jednostavno poveže s oblakom, šalje i prima podatke putem internetske veze. Ono što smo
Save My Child: Pametno sjedalo koje šalje tekstualne poruke ako zaboravite dijete u automobilu: 8 koraka
Save My Child: Pametno sjedalo koje šalje tekstualne poruke ako zaboravite dijete u automobilu: Instalirano je u automobilima, a zahvaljujući detektoru postavljenom na dječije sjedište, upozorava nas - putem SMS -a ili telefonskog poziva - ako dobijemo daleko bez dovođenja djeteta sa sobom
Kako napraviti okvir za poruke u operativnom sistemu Windows: 4 koraka
Kako napraviti okvir za poruke u operativnom sistemu Windows: Naučio sam kako to učiniti prije nekoliko godina i mislio sam da ću vam to pokazati. Potrebno je samo 5 minuta i zaista je zabavno za napraviti
Micro: Bit Puppet "Tekstualne poruke"!: 5 koraka (sa slikama)
Micro: Bit Puppet "Tekstualne poruke"!: Gotovo sva naša bežična komunikacija odvija se pomoću radio valova*, uključujući telefonske pozive, tekstualne poruke i WiFi. Sa ugrađenim radio odašiljačima i prijemnicima, mikrokontrolnik Micro: Bit čini super lakim stvaranje svih vrsta projekata
Recikliranje vašeg starog prekidača za prigušivanje zraka kao varijabilne kontrole temperature vašeg lemilice: 7 koraka
Recikliranje vašeg starog prekidača za prigušivanje zraka kao promenljive kontrole temperature vašeg lemilice: Video sam mnogo profesionalnih kontrola promenljive temperature lemilice, ali preskupih. Tako sam napravio jedan od starog prekidača za prigušivanje, utičnice, ploče i utikača koji su već bili otpad i neke stare PVC kutije s prekidačima koja je došla s njim i tako