Innholdsfortegnelse:

Slik sender du SMS -tekstmeldinger fra ditt Arduino ESP -prosjekt: 6 trinn
Slik sender du SMS -tekstmeldinger fra ditt Arduino ESP -prosjekt: 6 trinn

Video: Slik sender du SMS -tekstmeldinger fra ditt Arduino ESP -prosjekt: 6 trinn

Video: Slik sender du SMS -tekstmeldinger fra ditt Arduino ESP -prosjekt: 6 trinn
Video: Введение в плату разработки NodeMCU ESP8266 WiFi с примером HTTP-клиента 2024, Juli
Anonim
Slik sender du tekstmeldinger fra ditt Arduino ESP -prosjekt
Slik sender du tekstmeldinger fra ditt Arduino ESP -prosjekt

Denne instruksen viser hvordan du sender SMS -meldinger fra arduino -prosjektet ditt ved hjelp av en ESP8266 -enhet og en WiFi -tilkobling. Hvorfor bruke SMS?* SMS -meldinger er mye raskere og påliteligere enn appvarslingsmeldinger. * SMS -meldinger kan også mottas der mobildatatilkoblinger ikke er tilgjengelige * Ingen tredjepartsapplikasjon må installeres på en smarttelefon. * SMS er avgjørende for meldingskritiske applikasjoner. Dette prosjektet sender ganske enkelt en SMS -tekstmelding ved å trykke på en knapp som er koblet til ESP -enheten. For prosjektet ditt kan dette utløses på en annen trigger- eller hendelsesstatus

Trinn 1: Deler

Deler
Deler
Deler
Deler

For denne demoen trenger du:* ESP8266 -enhet. Jeg valgte ESP-01-pakken, men enhver annen ESP-pakke/enhet burde også fungere.* 3.3v forsyning* WiFi-tilkobling* Kapow SMS-konto* Arduino IDE* ESP8266 Programmeringsmodul.

Trinn 2: SMS -leverandør

I dette prosjektet sendes SMS -tekstmeldinger via en SMS -gateway på internett. For dette må du abonnere på en SMS -leverandør. Abonnenter belastes normalt per tekstmelding. Min valgte SMS -tjenesteleverandør er KAPOW. Jeg fant ut at de fleste SMS -leverandører i Storbritannia bare vil håndtere aksjeselskaper, og ikke enkeltpersoner. Imidlertid gjør KAPOW en pålitelig og kostnadseffektiv tjeneste. For å åpne en Kapow SMS -konto, gå til lenken nedenfor.

www.kapow.co.uk

Trinn 3: Koble den til

Kabling den opp
Kabling den opp

Koblingsskjema for dette prosjektet er ovenfor

Trinn 4: Koden

// ESP8266 Demoprosjekt for å sende SMS via 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; / * <<<< ENDRE DETALJENE NEDENFOR */ // Dine WiFi -detaljer: char _sWiFi_SSID = "YourWifiPoint"; // <--- ENDRE !!! char _sWiFi_Password = "YourWifFiPassword"; // <--- ENDRE !!! // Detaljer om din Kapow -brukerkonto: char _sKapow_User = "YourKapowAccount"; // <--- ENDRE !!! char _sKapow_Password = "YourKapowPassword"; // <--- ENDRE !!! char _sKapow_Mobile = "YourMobile"; // >>> ENDRE DETALJENE OVER */ // -knappen er koblet til GP0 Pin const int gp0_Pin = 0; const int iMaxAttempts = 10; int gp0_State = 0; ugyldig oppsett () {Serial.begin (9600); Serial.println ("\ nDemo: Send SMS via KAPOW"); // initialiser trykknapppinnen som en inngang // og dra den opp høyt (internt) pinMode (gp0_Pin, INPUT_PULLUP); // opprette Wifi -tilkobling WifiConnect (); } void loop () {// lese trykknappstatus gp0_State = digitalRead (gp0_Pin); // er trykknappen nede? if (gp0_State == 0) {Serial.println ("Trykk på knappen for å sende SMS …"); SendSmsKapow (_sKapow_Mobile, "This+is+a+Test+SMS+Message+sent+from+your+ESP+device"); } Serial.println ("Sove i 1 sekund"); forsinkelse (1000); } ugyldig WifiConnect () {Serial.print ("\ nKobler til WiFi:"); Serial.println (_sWiFi_SSID); WiFi.begin (_sWiFi_SSID, _sWiFi_Password); mens (WiFi.status ()! = WL_CONNECTED) {// prøv igjen etter et annet Serial.print ("."); forsinkelse (1000); } if (WiFi.status () == WL_CONNECTED) Serial.println ("Koblet til WiFi"); } bool SendSmsKapow (char* sMobile, char* sMessage) {WiFiClient clientSms; int iAttempts = 0; Serial.print ("Koble til KAPOW -vert"); mens (! clientSms.connect (_sKapow_Host, _iKapow_Port)) {Serial.print ("."); iAttempts ++; if (iAttempts> iMaxAttempts) {Serial.println ("\ nKlarte ikke å koble til KAPOW"); returner sant; } forsinkelse (1000); } Serial.println ("\ nKoblet til KAPOW"); forsinkelse (1000); Serial.println ("Sender HTTP -forespørsel til KAPOW:"); // Et eksempel på en GET -forespørsel vil være: //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, "& returnid = TRUE / n / n"); Serial.println (sHttp); clientSms.print (sHttp); Serial.println ("Venter på svar (10 sekunder) …"); forsinkelse (10 * 1000); char sReply [100] = ""; int iPos = 0; mens (clientSms.available ()) {char c = clientSms.read (); Serial.print (c); sReply [iPos] = c; iPos ++; hvis (iPos == 99) går i stykker; } sReply [iPos] = '\ 0'; // sjekk om svaret inneholder OK bool bResult = (strstr (sReply, "OK")! = NULL); if (bResult) Serial.println ("\ nSMS: Sendt med hell"); ellers Serial.println ("\ nSMS: Kunne ikke sende"); if (! clientSms.connected ()) {Serial.println ("Koble fra KAPOW"); clientSms.stop (); } returner bResult; }

Trinn 5: Flash -koden

Flash -koden
Flash -koden
Flash -koden
Flash -koden

Det er mange andre detaljerte instrukser som viser hvordan du blinkerprogrammerer en ESP8266 -enhet. Så jeg vil bare gi en oversikt over oppsettet mitt. I et nøtteskall bruker jeg aUSB til Serial FTDI -grensesnitt, og trekker GP0 lavt ved tilbakestilling for å starte bootloader -blinkprosessen. Jeg bygde min egen stripboard -programmeringsenhet for enkelhets skyld. Den har* en kontakt for en ESP-01-enhet* en kontakt for det røde FTDI-grensesnittet for å koble til PC-vert via USB.* Knapper for RESET, GP0, GP2 TO GROUND Du kan blinke ESP-enheten ved å bruke 3.3v levert av FTDI grensesnitt. Sørg for at FTDI -jumperinnstillingene også er satt til 3,3v.

Trinn 6: Trykk på knappen

Trykk på knappen !
Trykk på knappen !
Trykk på knappen !
Trykk på knappen !
Trykk på knappen !
Trykk på knappen !
Trykk på knappen !
Trykk på knappen !

Du kan teste prosjektet enten koblet til FTDI for seriell loggutgang, eller frittstående (på brødbrett med ekstern strømforsyning). Det rekommenderes at du bruker en ekstern 3.3v forsyning, ettersom FTDI -strømmen er erak. Imidlertid fungerte FTDI 3.3v -forsyning også for meg, ettersom wifi -ruteren min var innen rekkevidde. La ESP -en være koblet til seriell/usb -porten, slik at du kan overvåke den serielle feilsøkingsloggen som kjører ved hjelp av Arduino IDEs serielle skjerm. På oppstart … Trykk på knappen som er koblet til GP0. Dette sender ut SMS -meldingen som beskrevet nedenfor. Sjekk telefonen din for den mottatte SMS -meldingen. Jobben er utført.

Anbefalt: