Cuprins:

Cum să trimiteți mesaje text SMS din proiectul dvs. Arduino ESP: 6 pași
Cum să trimiteți mesaje text SMS din proiectul dvs. Arduino ESP: 6 pași

Video: Cum să trimiteți mesaje text SMS din proiectul dvs. Arduino ESP: 6 pași

Video: Cum să trimiteți mesaje text SMS din proiectul dvs. Arduino ESP: 6 pași
Video: Funcția Arduino Millis explicată cu 3 exemplu 2024, Noiembrie
Anonim
Cum să trimiteți mesaje text SMS din proiectul dvs. Arduino ESP
Cum să trimiteți mesaje text SMS din proiectul dvs. Arduino ESP

Această instrucțiune demonstrează cum să trimiteți mesaje text SMS din proiectul dvs. arduino utilizând un dispozitiv ESP8266 și o conexiune WiFi. De ce folosiți SMS-uri? * Mesajele SMS pot fi recepționate și în cazul în care conexiunile de date mobile nu sunt disponibile * Nu trebuie instalată nicio aplicație terță parte pe un smartphone. * SMS-ul este esențial pentru aplicațiile critice pentru mesaje. Acest proiect trimite pur și simplu un mesaj SMS prin apăsarea unui buton conectat Pentru proiectul dvs., acest lucru ar putea fi declanșat în alte situații de declanșare sau eveniment

Pasul 1: Piese

Părți
Părți
Părți
Părți

Pentru această demonstrație, veți avea nevoie de: * dispozitiv ESP8266. Am ales pachetul ESP-01, dar orice alt pachet ESP / dispozitiv ar trebui să funcționeze. * Alimentare 3.3v * Conexiune WiFi * Cont Kapow SMS * Arduino IDE * Modul de programare ESP8266.

Pasul 2: furnizor de SMS

În acest proiect, mesajele text SMS sunt trimise printr-un gateway SMS pe internet. Pentru aceasta va trebui să vă abonați la un furnizor de SMS-uri. Abonații sunt taxați în mod normal pe bază de mesaje text. Furnizorul meu de servicii SMS ales este KAPOW. Am constatat că majoritatea furnizorilor de SMS-uri din Marea Britanie vor avea de-a face doar cu societăți cu răspundere limitată, și nu cu persoane fizice. Cu toate acestea, KAPOW oferă și oferă un serviciu fiabil și rentabil. Pentru a deschide un cont SMS Kapow, accesați linkul de mai jos.

www.kapow.co.uk

Pasul 3: Cablare

Cablarea acestuia
Cablarea acestuia

Schema de cablare pentru acest proiect este mai sus

Pasul 4: Codul

// Proiectul demonstrativ ESP8266 pentru a trimite SMS prin KAPOW (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; / * <<<< SCHIMBAȚI DETALIILE DE MAI JOS * / // Detaliile dvs. WiFi: char _sWiFi_SSID = "YourWifiPoint"; // <--- SCHIMBARE !!! char _sWiFi_Password = "Parola dvs. WifFiPassword"; // <--- SCHIMBARE !!! // Detaliile contului dvs. de utilizator Kapow: char _sKapow_User = "YourKapowAccount"; // <--- SCHIMBARE !!! char _sKapow_Password = "Parola dvs. Kapow_Password"; // <--- SCHIMBARE !!! char _sKapow_Mobile = "Mobilul tău"; // >>> SCHIMBĂ DETALIILE DE MAI SUS * Butonul // este conectat la GP0 Pin const int gp0_Pin = 0; const int iMaxAttempts = 10; int gp0_State = 0; void setup () {Serial.begin (9600); Serial.println ("\ nDemo: Trimiteți SMS prin KAPOW"); // inițializați pinul butonului ca intrare // și trageți-l în sus (intern) pinMode (gp0_Pin, INPUT_PULLUP); // stabilirea conexiunii Wifi WifiConnect (); } void loop () {// citirea stării butonului gp0_State = digitalRead (gp0_Pin); // este apăsat butonul apăsat? if (gp0_State == 0) {Serial.println ("Buton apăsat pentru a trimite SMS …"); SendSmsKapow (_sKapow_Mobile, "Acesta + este + un + Test + SMS + Mesaj + trimis + de la + dispozitivul + ESP +"); } Serial.println ("Dormit 1 secundă"); întârziere (1000); } void WifiConnect () {Serial.print ("\ nConectarea la WiFi:"); Serial.println (_sWiFi_SSID); WiFi.begin (_sWiFi_SSID, _sWiFi_Password); while (WiFi.status ()! = WL_CONNECTED) {// reîncercați după un al doilea Serial.print ("."); întârziere (1000); } if (WiFi.status () == WL_CONNECTED) Serial.println ("Conectat la WiFi"); } bool SendSmsKapow (char * sMobile, char * sMessage) {WiFiClient clientSms; int iAttempts = 0; Serial.print („Conectarea la gazda KAPOW”); while (! clientSms.connect (_sKapow_Host, _iKapow_Port)) {Serial.print ("."); iAttempts ++; if (iAttempts> iMaxAttempts) {Serial.println ("\ nNu s-a putut conecta la KAPOW"); întoarce-te adevărat; } întârziere (1000); } Serial.println ("\ nConectat la KAPOW"); întârziere (1000); Serial.println ("Trimiterea cererii HTTP către KAPOW:"); // Un exemplu de solicitare GET ar fi: //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, "& parola ="); strcat (sHttp, _sKapow_Password); strcat (sHttp, "& mobile ="); strcat (sHttp, sMobile); strcat (sHttp, "& sms ="); strcat (sHttp, sMessage); strcat (sHttp, "& returnid = TRUE / n / n"); Serial.println (sHttp); clientSms.print (sHttp); Serial.println („Se așteaptă răspunsul (10 secunde)…”); întârziere (10 * 1000); char sReply [100] = ""; int iPos = 0; while (clientSms.available ()) {char c = clientSms.read (); Serial.print (c); sRăspundeți [iPos] = c; iPos ++; if (iPos == 99) break; } sReply [iPos] = '\ 0'; // verifică dacă răspunsul conține OK bool bResult = (strstr (sRăspunde, "OK")! = NULL); if (bResult) Serial.println ("\ nSMS: trimis cu succes"); else Serial.println ("\ nSMS: Trimiterea nu a reușit"); if (! clientSms.connected ()) {Serial.println ("Deconectarea de la KAPOW"); clientSms.stop (); } returnează bRezultatul; }

Pasul 5: Flash codul

Blițează codul
Blițează codul
Blițează codul
Blițează codul

Există multe alte instrucțiuni detaliate care arată cum să programați flash un dispozitiv ESP8266. Așa că voi oferi o imagine de ansamblu asupra configurării mele. Pe scurt, folosesc interfața USB către Serial FTDI și trag GP0 jos la resetare pentru a porni procesul de intermitent al încărcătorului de boot. Are * o priză pentru un dispozitiv ESP-01 * o priză pentru interfața roșie FTDI pentru a se conecta la gazda PC-ului prin USB. * Butoane pentru RESET, GP0, GP2 TO GROUND Puteți bloca dispozitivul ESP utilizând 3.3v furnizat de FTDI interfață. Asigurați-vă că setările jumperului FTDI sunt, de asemenea, setate la 3.3v.

Pasul 6: Apăsați butonul

Apasa butonul !
Apasa butonul !
Apasa butonul !
Apasa butonul !
Apasa butonul !
Apasa butonul !
Apasa butonul !
Apasa butonul !

Puteți testa proiectul fie conectat la FTDI pentru ieșire de înregistrare serială, fie autonom (pe panou cu sursă de alimentare externă). Vă recomandăm să utilizați o sursă externă de 3.3v, deoarece curentul de alimentare FTDI este erak. Cu toate acestea, alimentarea cu FTDI 3.3v a funcționat și pentru mine, deoarece routerul meu wifi era la îndemână. Lăsați ESP-ul conectat la portul serial / USB, astfel încât să puteți monitoriza jurnalul de depanare serial în curs de desfășurare utilizând monitorul serial al Arduino IDE. La pornire … butonul conectat la GP0. Acest lucru va trimite mesajul SMS după cum urmează. Verificați telefonul pentru mesajul SMS primit.

Recomandat: