Innehållsförteckning:

Skicka SMS -textmeddelanden från ditt Arduino ESP -projekt: 6 steg
Skicka SMS -textmeddelanden från ditt Arduino ESP -projekt: 6 steg

Video: Skicka SMS -textmeddelanden från ditt Arduino ESP -projekt: 6 steg

Video: Skicka SMS -textmeddelanden från ditt Arduino ESP -projekt: 6 steg
Video: Introduktion till NodeMCU ESP8266 WiFi-utvecklingskort med exempel på HTTP-klient 2024, November
Anonim
Hur man skickar SMS -textmeddelanden från ditt Arduino ESP -projekt
Hur man skickar SMS -textmeddelanden från ditt Arduino ESP -projekt

Denna instruerbara visar hur du skickar SMS -textmeddelanden från ditt arduino -projekt med en ESP8266 -enhet och en WiFi -anslutning. Varför använder du SMS?* SMS -meddelanden är mycket snabbare och pålitligare än appmeddelanden. * SMS -meddelanden kan också tas emot där mobila dataanslutningar inte är tillgängliga * Ingen tredjepartsapplikation behöver installeras på en smartphone. * SMS är viktigt för meddelandekritiska applikationer. Detta projekt skickar helt enkelt ett SMS -textmeddelande när du trycker på en knapp som är ansluten till ditt ESP -enhet. För ditt projekt kan detta utlösas vid någon annan utlösare eller händelsestatus

Steg 1: Delar

Delar
Delar
Delar
Delar

För denna demo behöver du:* ESP8266 -enhet. Jag valde ESP-01-paketet, men alla andra ESP-paket/enheter borde också fungera.* 3.3v-försörjning* WiFi-anslutning* Kapow SMS-konto* Arduino IDE* ESP8266 Programmeringsmodul.

Steg 2: SMS -leverantör

I detta projekt skickas SMS -textmeddelanden via en SMS -gateway på internet. För detta måste du prenumerera på en SMS -leverantör. Prenumeranter debiteras normalt per SMS. Min valda SMS -tjänsteleverantör är KAPOW. Jag upptäckte att de flesta sms -leverantörer i Storbritannien endast kommer att hantera aktiebolag, och inte enskilda. Men KAPOW gör och tillhandahåller en pålitlig och kostnadseffektiv tjänst. För att öppna ett Kapow SMS -konto, besök länken nedan.

www.kapow.co.uk

Steg 3: Anslut det

Koppla upp det
Koppla upp det

Kopplingsschema för detta projekt är ovan

Steg 4: Koden

// ESP8266 Demoprojekt för att skicka 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; / * <<<< ÄNDRA DETALJERNA UNDER */ // Dina WiFi -detaljer: char _sWiFi_SSID = "YourWifiPoint"; // <--- ÄNDRA !!! char _sWiFi_Password = "YourWifFiPassword"; // <--- ÄNDRA !!! // Dina Kapow -användarkontouppgifter: char _sKapow_User = "YourKapowAccount"; // <--- ÄNDRA !!! char _sKapow_Password = "YourKapowPassword"; // <--- ÄNDRA !!! char _sKapow_Mobile = "YourMobile"; // >>> ÄNDRA DETALJERNA OVAN */ // -knappen är ansluten till GP0 Pin const int gp0_Pin = 0; const int iMaxAttempts = 10; int gp0_State = 0; void setup () {Serial.begin (9600); Serial.println ("\ nDemo: Skicka SMS via KAPOW"); // initiera tryckknappstappen som en ingång // och dra upp den höga (internt) pinMode (gp0_Pin, INPUT_PULLUP); // upprätta Wifi -anslutning WifiConnect (); } void loop () {// läs tryckknappstillstånd gp0_State = digitalRead (gp0_Pin); // är tryckknappen nedtryckt? if (gp0_State == 0) {Serial.println ("Knapp tryckt för att skicka SMS …"); SendSmsKapow (_sKapow_Mobile, "This+is+a+Test+SMS+Message+sent+from+your+ESP+device"); } Serial.println ("Sov i 1 sekund"); fördröjning (1000); } void WifiConnect () {Serial.print ("\ nAnsluter till WiFi:"); Serial.println (_sWiFi_SSID); WiFi.begin (_sWiFi_SSID, _sWiFi_Password); medan (WiFi.status ()! = WL_CONNECTED) {// försök igen efter ett andra Serial.print ("."); fördröjning (1000); } if (WiFi.status () == WL_CONNECTED) Serial.println ("Ansluten till WiFi"); } bool SendSmsKapow (char* sMobile, char* sMessage) {WiFiClient clientSms; int iAttempts = 0; Serial.print ("Ansluter till KAPOW -värd"); medan (! clientSms.connect (_sKapow_Host, _iKapow_Port)) {Serial.print ("."); iAttempts ++; if (iAttempts> iMaxAttempts) {Serial.println ("\ nKunde inte ansluta till KAPOW"); återvända sant; } fördröjning (1000); } Serial.println ("\ nAnsluten till KAPOW"); fördröjning (1000); Serial.println ("Skickar HTTP -begäran till KAPOW:"); // Ett exempel på en GET -begäran är: //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 ("Väntar på svar (10 sekunder) …"); fördröjning (10 * 1000); char sReply [100] = ""; int iPos = 0; medan (clientSms.available ()) {char c = clientSms.read (); Serial.print (c); sReply [iPos] = c; iPos ++; om (iPos == 99) går sönder; } sReply [iPos] = '\ 0'; // kontrollera om svaret innehåller OK bool bResult = (strstr (sReply, "OK")! = NULL); if (bResult) Serial.println ("\ nSMS: framgångsrikt skickat"); annars Serial.println ("\ nSMS: Det gick inte att skicka"); if (! clientSms.connected ()) {Serial.println ("Kopplar från KAPOW"); clientSms.stop (); } returnera bResult; }

Steg 5: Flasha koden

Flasha koden
Flasha koden
Flasha koden
Flasha koden

Det finns många andra detaljerade instruktioner som visar hur man flashprogrammerar en ESP8266 -enhet. Så jag kommer bara att ge en översikt över min inställning. I ett nötskal använder jag ett USB till Serial FTDI -gränssnitt och drar GP0 lågt vid återställning för att starta bootloader -blinkningsprocessen. Jag byggde min egen stripboard -programmeringsenhet för enkelhets skull. Den har* ett uttag för en ESP-01-enhet* ett uttag för det röda FTDI-gränssnittet för att ansluta till PC-värden via USB.* Knappar för RESET, GP0, GP2 TO GROUND Du kan blinka ESP-enheten med 3,3v från FTDI gränssnitt. Se till att FTDI -bygelinställningarna också är inställda på 3,3v.

Steg 6: Tryck på knappen

Tryck på knappen !
Tryck på knappen !
Tryck på knappen !
Tryck på knappen !
Tryck på knappen !
Tryck på knappen !
Tryck på knappen !
Tryck på knappen !

Du kan testa projektet antingen anslutet till FTDI för seriell loggning, eller fristående (på brödbräda med extern strömförsörjning). Det rekomenderas att du använder en extern 3.3v -strömförsörjning, eftersom FTDI -strömmen är erak. Men FTDI 3.3v -strömförsörjningen fungerade också för mig, eftersom min wifi -router var inom räckhåll. Lämna ESP -enheten ansluten till serie-/usb -porten så att du kan övervaka den seriella felsökningsloggen med Arduino IDE: s seriella bildskärm. Vid start … Tryck på knappen ansluten till GP0. Detta kommer att skicka ut SMS -meddelandet enligt nedan. Kontrollera din telefon för det mottagna SMS -meddelandet. Jobb gjort.

Rekommenderad: