Innehållsförteckning:
- Steg 1: Delar
- Steg 2: SMS -leverantör
- Steg 3: Anslut det
- Steg 4: Koden
- Steg 5: Flasha koden
- Steg 6: Tryck på knappen
Video: Skicka SMS -textmeddelanden från ditt Arduino ESP -projekt: 6 steg
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:41
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
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
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
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
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:
Skicka data från M5Stack StickC till Delphi: 6 steg
Hur man skickar data från M5Stack StickC till Delphi: I den här videon lär vi oss hur man skickar värden från StickC -kort till Delphi VCL -applikation med Visuino. Titta på videon
Skicka data från Arduino till Excel (och plotta det): 3 steg (med bilder)
Skicka data från Arduino till Excel (och planera det): Jag har sökt i stor utsträckning efter ett sätt som jag kan plotta min Arduino -sensoravläsning i realtid. Inte bara plotta, utan också visa och lagra data för ytterligare experiment och korrigeringar. Den enklaste lösningen jag har hittat var att använda excel, men med
Skicka stora filer från dator till dator: 6 steg
Hur man skickar stora filer från dator till dator: Filstorlekar fortsätter att öka i storlek när tekniken utvecklas. Om du är i ett kreativt hantverk, som design eller modellering, eller bara en hobbyist, kan det vara svårt att överföra stora filer. De flesta e -posttjänster begränsar maximalt antal bifogade filer till cirka 25
Skicka numerisk data från en Arduino till en annan: 16 steg
Skicka numeriska data från en Arduino till en annan: Introduktionav David Palmer, CDIO Tech. vid Aston University. Behövde du någonsin skicka några nummer från en Arduino till en annan? Denna instruerbara visar hur. Du kan enkelt testa att det fungerar genom att helt enkelt skriva en rad nummer som ska skickas på S
Så här använder du SIM800L för att skicka SMS och styra relä via SMS: 3 steg
Så här använder du SIM800L för att skicka SMS och styra relä via SMS: Beskrivning: Denna handledning visar hur du använder SIM800L för att skicka sms och ta emot sms för att styra relä. SIM800L -modulen är liten i storlek och kan användas för att ansluta till Arduino för att skicka sms, ta emot sms, ringa, ta emot samtal och annat. I den här självstudien