Inhoudsopgave:
- Stap 1: Onderdelen
- Stap 2: SMS-provider
- Stap 3: Bedrading Het Up
- Stap 4: De code
- Stap 5: Flash de code
- Stap 6: Druk op de knop
Video: Sms-tekstberichten verzenden vanuit uw Arduino ESP-project - Ajarnpa
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:16
Deze instructable laat zien hoe je sms-berichten kunt verzenden vanuit je arduino-project met behulp van een ESP8266-apparaat en een wifi-verbinding. Waarom sms gebruiken? * Sms-berichten zijn veel sneller en betrouwbaarder dan app-meldingsberichten. * Sms-berichten kunnen ook worden ontvangen waar geen mobiele dataverbindingen beschikbaar zijn * Er hoeft geen applicatie van derden op een smartphone te worden geïnstalleerd. * Sms is essentieel voor berichtkritische toepassingen. Dit project stuurt eenvoudig een sms-bericht door op een bekabelde knop te drukken naar het ESP-apparaat. Voor uw project kan dit worden geactiveerd op een andere trigger- of gebeurtenisstatus
Stap 1: Onderdelen
Voor deze demo heeft u het volgende nodig:* ESP8266-apparaat. Ik koos voor het ESP-01-pakket, maar elk ander ESP-pakket/apparaat zou ook moeten werken.* 3.3v voeding* WiFi-verbinding* Kapow SMS-account* Arduino IDE* ESP8266 programmeermodule.
Stap 2: SMS-provider
In dit project worden sms-berichten verzonden via een sms-gateway op internet. Hiervoor dient u zich te abonneren op een sms-provider. Abonnees worden normaal per sms in rekening gebracht. De door mij gekozen sms-serviceprovider is KAPOW. Ik ontdekte dat de meeste sms-providers in het VK alleen met naamloze vennootschappen omgaan, en niet met individuen. KAPOW doet dat echter wel en biedt een betrouwbare en kosteneffectieve service. Om een Kapow SMS-account te openen, gaat u naar de onderstaande link.
www.kapow.co.uk
Stap 3: Bedrading Het Up
Bedradingsschema voor dit project is hierboven:
Stap 4: De code
// ESP8266-demoproject om sms te verzenden 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; /* <<<< WIJZIG DE DETAILS HIERONDER */ // Uw WiFi-gegevens: char _sWiFi_SSID ="YourWifiPoint"; // <--- VERANDERING!!! char _sWiFi_Password ="YourWifFiPassword"; // <--- VERANDERING!!! // Uw Kapow-gebruikersaccountgegevens: char _sKapow_User ="YourKapowAccount"; // <--- VERANDERING!!! char _sKapow_Password ="YourKapowPassword"; // <--- VERANDERING!!! char _sKapow_Mobile ="UwMobiel"; // >>> WIJZIG DE BOVENSTAANDE DETAILS */ // knop is verbonden met GP0 Pin const int gp0_Pin = 0; const int iMaxAttempts = 10; int gp0_State = 0; void setup() { Serial.begin(9600); Serial.println("\nDemo: SMS versturen via KAPOW"); // initialiseer de drukknoppin als invoer // en trek hem omhoog (intern) pinMode (gp0_Pin, INPUT_PULLUP); // maak wifi-verbinding WifiConnect(); } void loop () {// lees de status van de drukknop gp0_State = digitalRead (gp0_Pin); // is de drukknop laag ingedrukt? if (gp0_State==0) { Serial.println("Knop ingedrukt om SMS te verzenden…"); SendSmsKapow(_sKapow_Mobile, "Dit+is+een+Test+SMS+Bericht+verzonden+van+uw+ESP+apparaat"); } Serial.println("Slapen voor 1 seconde"); vertraging (1000); } void WifiConnect() { Serial.print("\nVerbinding maken met wifi: "); Seriële.println(_sWiFi_SSID); WiFi.begin(_sWiFi_SSID, _sWiFi_Password); while (WiFi.status() != WL_CONNECTED) { // probeer het opnieuw na een tweede Serial.print("."); vertraging (1000); } if (WiFi.status() == WL_CONNECTED) Serial.println("Verbonden met wifi"); } bool SendSmsKapow (char* sMobile, char* sMessage) { WiFiClient clientSms; int iAttempts=0; Serial.print("Verbinding maken met KAPOW-host"); while (!clientSms.connect(_sKapow_Host, _iKapow_Port)) { Serial.print("."); iAttempts++; if (iAttempts > iMaxAttempts) { Serial.println("\nKan geen verbinding maken met KAPOW"); retourneer waar; } vertraging (1000); } Serial.println("\nVerbonden met KAPOW"); vertraging (1000); Serial.println ("HTTP-verzoek verzenden naar KAPOW:"); //Een voorbeeld van een GET-verzoek zou zijn: //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?gebruikersnaam="); 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"); Seriële.println(sHttp); clientSms.print(sHttp); Serial.println("Wachten op reactie (10 sec)…"); vertraging (10 * 1000); char sReply[100] = ""; int iPos = 0; while (clientSms.available()) { char c = clientSms.read(); Serieafdruk(c); sAntwoord[iPos] = c; iPos++; als (iPos == 99) breken; } sAntwoord[iPos] = '\0'; // controleer of het antwoord OK bevat bool bResult = (strstr(sReply, "OK") != NULL); if (bResult) Serial.println("\nSMS: succesvol verzonden"); else Serial.println("\nSMS: kan niet worden verzonden"); if (!clientSms.connected()) { Serial.println("Verbinding met KAPOW verbreken"); clientSms.stop(); } bResultaat; }
Stap 5: Flash de code
Er zijn veel andere gedetailleerde instructables die laten zien hoe je een ESP8266-apparaat kunt flashen. Dus ik zal gewoon een overzicht geven van mijn setup. In een notendop, ik gebruik een USB naar Seriële FTDI-interface en trek GP0 laag bij reset om het flashing-proces van de bootloader te starten. Ik heb voor het gemak mijn eigen stripboard-programmeerapparaat gebouwd. Het heeft * een socket voor een ESP-01-apparaat * een socket voor de rode FTDI-interface om via USB op de pc-host aan te sluiten. * Knoppen voor RESET, GP0, GP2 NAAR GROND U kunt het ESP-apparaat flashen met behulp van de 3.3v geleverd door de FTDI koppel. Zorg ervoor dat de FTDI-jumperinstellingen ook zijn ingesteld op 3.3v.
Stap 6: Druk op de knop
U kunt het project testen, ofwel aangesloten op FTDI voor seriële logging-output, of standalone (op breadboard met externe voeding). Het wordt aanbevolen om een externe 3.3v-voeding te gebruiken, aangezien de FTDI-voedingsstroom slecht is. FTDI 3.3v voeding werkte echter ook voor mij, omdat mijn wifi-router binnen handbereik was. de knop verbonden met GP0. Hiermee wordt het onderstaande sms-bericht verzonden. Controleer uw telefoon op het ontvangen sms-bericht. Taak gedaan.
Aanbevolen:
Sms verzenden als er rook wordt gedetecteerd (Arduino+GSM SIM900A: 5 stappen)
Sms verzenden als rook wordt gedetecteerd (Arduino+GSM SIM900A: Hallo allemaal! In mijn eerste instructable zal ik een gasalarm maken dat een bericht naar de gebruiker stuurt als er vervuiling wordt gedetecteerd. Dit zal een eenvoudig prototype zijn met behulp van Arduino, GSM-module en elektrochemische rooksensor.In de toekomst kan dit worden uitgebreid tot
Een sms verzenden met een ESP8266: 5 stappen
Een sms verzenden met een ESP8266: deze instructie leidt u door de stappen om sms-berichten via internet te verzenden vanaf een ESP8266 NodeMCU-modulekaart naar een mobiele telefoon. Om het bericht te kunnen verzenden, moet u de stappen doorlopen om een virtueel telefoonnummer te krijgen van
Gegevens verzenden naar het AskSensors IoT-platform vanuit de webbrowser: 6 stappen
Gegevens naar het AskSensors IoT-platform verzenden vanuit de webbrowser: ik heb onlangs een instructie gepost met een stapsgewijze handleiding voor het verbinden van een ESP8266-node-MCU met het AskSensors IoT-platform. Ik heb wat feedback gekregen van mensen die meer geïnteresseerd zijn in het AskSensors-platform, maar ze hebben geen node-MCU bij de hand. Dit ik
Hoe SIM800L te gebruiken om sms en stuurrelais per sms te verzenden: 3 stappen:
Hoe SIM800L te gebruiken om sms en besturingsrelais per sms te verzenden: Beschrijving: Deze tutorial laat zien hoe u SIM800L kunt gebruiken om sms te verzenden en sms te ontvangen om relais te besturen. SIM800L-module is klein van formaat en kan worden gebruikt om te communiceren met Arduino om sms te verzenden, sms te ontvangen, te bellen, oproepen te ontvangen en meer. In deze zelfstudie
Laad uw Arduino/ESP Config-webpagina vanuit de cloud: 7 stappen
Laad uw Arduino/ESP Config-webpagina vanuit de cloud: bij het maken van een Arduino / ESP (ESP8266/ESP32)-project, kunt u alles gewoon hardcoderen. Maar vaker wel dan niet duikt er iets op en sluit je je IoT-apparaat weer aan op je IDE. Of je hebt zojuist meer mensen toegang gekregen tot de configuratie