Përmbajtje:
2025 Autor: John Day | [email protected]. E modifikuara e fundit: 2025-01-13 06:58
Ky udhëzues demonstron se si të dërgoni mesazhe me tekst SMS nga projekti juaj arduino duke përdorur një pajisje ESP8266 dhe një lidhje WiFi. Pse të përdorni SMS?* Mesazhet SMS janë shumë më të shpejta dhe më të besueshme sesa mesazhet e njoftimit të aplikacionit. * Mesazhet SMS mund të merren edhe kur lidhjet e të dhënave celulare nuk janë të disponueshme * Asnjë aplikacion i palës së tretë nuk duhet të instalohet në një smartphone. * SMS është thelbësor për aplikacionet kritike të mesazheve. Ky projekt thjesht dërgon një mesazh me tekst SMS duke shtypur një buton të lidhur në pajisjen ESP. Për projektin tuaj kjo mund të aktivizohet në ndonjë shkas tjetër ose status të ngjarjes
Hapi 1: Pjesët
Për këtë demonstrim, do t'ju duhet:* Pajisja ESP8266. Zgjodha paketën ESP-01, por çdo pako/pajisje tjetër ESP duhet të funksionojë gjithashtu.* Furnizimi me 3.3v* Lidhje WiFi* Llogaria SMS Kapow* Arduino IDE* Moduli i programimit ESP8266.
Hapi 2: Ofruesi i SMS
Në këtë projekt, mesazhet me tekst SMS dërgohen përmes një porte SMS në internet. Për këtë ju do të duhet të regjistroheni në një ofrues SMS. Abonentët normalisht tarifohen në bazë të mesazheve me tekst. Ofruesi im i shërbimit SMS i zgjedhur është KAPOW. Kam gjetur se shumica e ofruesve të SMS në Mbretërinë e Bashkuar do të merren vetëm me Kompanitë e Kufizuara, dhe jo individët. Sidoqoftë, KAPOW bën dhe ofron një shërbim të besueshëm dhe me kosto efektive. Për të hapur një llogari SMS Kapow, vizitoni lidhjen më poshtë.
www.kapow.co.uk
Hapi 3: Instaloni atë
Diagrami i telave për këtë projekt është më lart
Hapi 4: Kodi
// ESP8266 Demo Project për të Dërguar SMS përmes 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; / * <<<< NDRYSHO DETAJET POSHT */ // Të dhënat e tua të WiFi: char _sWiFi_SSID = "YourWifiPoint"; // <--- NDRYSHO !!! char _sWiFi_Password = "YourWifFiPassword"; // <--- NDRYSHO !!! // Detajet e llogarisë suaj të përdoruesit Kapow: char _sKapow_User = "YourKapowAccount"; // <--- NDRYSHO !!! char _sKapow_Password = "YourKapowPassword"; // <--- NDRYSHO !!! char _sKapow_Mobile = "Mobilja jote"; // >>> NDRYSHO DETAJET E MOPARA */ // butoni është i lidhur me GP0 Pin const int gp0_Pin = 0; const int iMaxApërpjekjet = 10; int gp0_State = 0; void setup () {Serial.begin (9600); Serial.println ("\ nDemo: Dërgo SMS përmes KAPOW"); // inicializoni pinin e butonit si një hyrje // dhe tërhiqeni atë lart (brenda) pinMode (gp0_Pin, INPUT_PULLUP); // krijoni lidhje Wifi WifiConnect (); } void loop () {// lexo butonin shtypi gjendjen gp0_State = digitalRead (gp0_Pin); // a shtypet butoni i ulët? if (gp0_State == 0) {Serial.println ("Butoni Shtypur për të Dërguar SMS …"); SendSmsKapow (_sKapow_Mobile, "Kjo+është+një+Test+SMS+Mesazh+dërguar+nga+pajisja juaj+ESP+"); } Serial.println ("Fjetur për 1 sekondë"); vonesa (1000); } void WifiConnect () {Serial.print ("\ nLidhja me WiFi:"); Serial.println (_sWiFi_SSID); WiFi.filloni (_sWiFi_SSID, _sWiFi_Password); ndërsa (WiFi.status ()! = WL_CONNECTED) {// provoni përsëri pas një Serial.print të dytë ("."); vonesa (1000); } if (WiFi.status () == WL_CONNECTED) Serial.println ("I lidhur me WiFi"); } bool SendSmsKapow (char* sMobile, char* sMessage) {WiFiClient clientSms; int i Përpjekjet = 0; Serial.print ("Lidhja me hostin KAPOW"); ndërsa (! clientSms.connect (_sKapow_Host, _iKapow_Port)) {Serial.print ("."); Përpjekjet ++; if (iAttempts> iMaxAttempts) {Serial.println ("\ nNuk lidhet me KAPOW"); kthehet e vërtetë; } vonesa (1000); } Serial.println ("\ nI lidhur me KAPOW"); vonesa (1000); Serial.println ("Dërgimi i kërkesës HTTP në KAPOW:"); // Një shembull kërkese GET do të ishte: //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 = E VUERTET / n / n"); Serial.println (sHttp); clientSms.print (sHttp); Serial.println ("Në pritje të përgjigjes (10 sekonda) …"); vonesë (10 * 1000); char sReply [100] = ""; int iPos = 0; ndërsa (clientSms.available ()) {char c = clientSms.read (); Serial.print (c); sPërgjigje [iPos] = c; iPos ++; nëse (iPos == 99) prishet; } sPërgjigje [iPos] = '\ 0'; // kontrolloni nëse përgjigja përmban OK bool bResult = (strstr (sPërgjigje, "OK")! = NULL); if (bResult) Serial.println ("\ nSMS: U dërgua me sukses"); tjetër Serial.println ("\ nSMS: Dështoi në Dërgim"); if (! clientSms.connected ()) {Serial.println ("Shkëputja nga KAPOW"); clientSms.stop (); } kthimi bResult; }
Hapi 5: Ndizni kodin
Ka shumë udhëzime të tjera të hollësishme që tregojnë se si të programoni një pajisje ESP8266. Kështu që unë thjesht do të jap një përmbledhje të konfigurimit tim. Me pak fjalë, unë përdor aUSB në ndërfaqen Seriale FTDI, dhe tërheq GP0 të ulët në rivendosje për të filluar procesin e ndezjes së bootloader. Unë ndërtova pajisjen time të programimit të stripboard për lehtësi. Ka* një prizë për një pajisje ESP-01* një prizë për ndërfaqen e kuqe FTDI që të lidhet me hostin e kompjuterit përmes USB. ndërfaqja. Sigurohuni që cilësimet e bluzës FTDI të jenë vendosur gjithashtu në 3.3v.
Hapi 6: Shtypni butonin
Ju mund ta provoni projektin ose të lidhur me FTDI për dalje serike të prerjeve, ose të pavarur (në tabelë me furnizim me energji të jashtme). Ju rekomandohet të përdorni një furnizim të jashtëm 3.3v, pasi rryma e furnizimit FTDI është erak. Sidoqoftë, furnizimi me FTDI 3.3v gjithashtu funksionoi për mua, pasi ruteri im wifi ishte brenda mundësive të dorës. Lini ESP të lidhur me portën seriale/usb, në mënyrë që të monitoroni regjistrin e korrigjimit të serive që funksionon duke përdorur Monitoruesin Serial të Arduino IDE. Në fuqizim… Shtypni butoni i lidhur me GP0. Kjo do të dërgojë mesazhin SMS si më poshtë. Kontrolloni telefonin tuaj për mesazhin me tekst SMS të marrë. Punë e mbaruar.