Πίνακας περιεχομένων:

Στείλτε ένα SMS χρησιμοποιώντας ένα ESP8266: 5 βήματα
Στείλτε ένα SMS χρησιμοποιώντας ένα ESP8266: 5 βήματα

Βίντεο: Στείλτε ένα SMS χρησιμοποιώντας ένα ESP8266: 5 βήματα

Βίντεο: Στείλτε ένα SMS χρησιμοποιώντας ένα ESP8266: 5 βήματα
Βίντεο: Πώς να φτιάξετε ρελέ Wi-Fi 4 καναλιών ESP8266 ESP01 | ESP01 Οικιακός Αυτοματισμός | RemoteXY |FLProg 2024, Ιούλιος
Anonim
Στείλτε ένα SMS χρησιμοποιώντας ένα ESP8266
Στείλτε ένα SMS χρησιμοποιώντας ένα ESP8266

Αυτό το οδηγό σας οδηγεί στα βήματα για να στείλετε μηνύματα SMS μέσω Διαδικτύου από έναν πίνακα μονάδων ESP8266 NodeMCU, σε ένα κινητό τηλέφωνο. Για να μπορέσετε να στείλετε το μήνυμα, θα πρέπει να ακολουθήσετε τα βήματα για να λάβετε έναν εικονικό αριθμό τηλεφώνου από την Twilio, μια εταιρεία επικοινωνιών. Δεν απαιτείται πιστωτική κάρτα επειδή το Twilio διαθέτει δωρεάν επιλογή δοκιμαστικού λογαριασμού. Στη συνέχεια, θα κατεβάσετε και θα χρησιμοποιήσετε ένα δείγμα προγράμματος Arduino IDE για την αποστολή μηνυμάτων SMS.

Το δείγμα προγράμματος σε αυτό το εκπαιδευτικό έχει κλήσεις λειτουργιών που είναι άμεσες για αντιγραφή, επικόλληση, επεξεργασία και χρήση στα δικά σας έργα.

Προμήθειες

Χρησιμοποιώ έναν πίνακα ανάπτυξης NodeMCU ESP8266 CH340G ESP-12E Wireless WIFI Internet. Πωλούνται για περίπου $ 3 στο eBay από Κινέζους προμηθευτές.

Βήμα 1: Δοκιμάστε το ESP8266 NodeMCU

Μπορείτε να δοκιμάσετε με ή χωρίς σανίδα ψωμιού. Χωρίς το breadboard, το φως του σκάφους θα αναβοσβήνει και θα σβήνει, πράγμα που είναι αποτελεσματικό για τη δοκιμή.

Στο δείγμα μου, συνδέω το NodeMCU στο Breadboard. Συνδέω την αρνητική πλευρά ενός LED στην ακίδα γείωσης (G ή GND) στο NodeMCU. Η θετική πλευρά του LED συνδέεται μέσω μιας αντίστασης (500 έως 5K ohm) με τον ακροδέκτη D4 του NodeMCU. Όταν εκτελείται το δείγμα προγράμματος, η ενδεικτική λυχνία LED θα ανάψει, η εξωτερική λυχνία LED θα σβήσει, στη συνέχεια η ενδεικτική λυχνία LED θα σβήσει και η εξωτερική LED θα ανάψει. Οι λυχνίες LED εναλλάσσονται και σβήνουν.

Κατεβάστε και εκτελέστε το βασικό πρόγραμμα δοκιμής Arduino: nodeMcuTest.ino. Κατά την εκτέλεση του προγράμματος, η ενδεικτική λυχνία LED θα ανάψει για 1 δευτερόλεπτο, θα σβήσει για 1 δευτερόλεπτο και θα κάνει συνεχώς κύκλο. Επίσης, δημοσιεύονται μηνύματα τα οποία μπορούν να προβληθούν στο Arduino IDE Tools/Serial Monitor.

+++ Ρύθμιση.

+ Αρχικοποίησε την ψηφιακή ακίδα LED για έξοδο. Η λυχνία LED είναι σβηστή. ++ Μετάβαση στον βρόχο. + Μετρητής βρόχου = 1 + Μετρητής βρόχου = 2 + Μετρητής βρόχου = 3…

Αφού επιβεβαιώσετε ότι το IDE σας μπορεί να χρησιμοποιηθεί για τον προγραμματισμό του NodeMCU, μεταβείτε στο επόμενο βήμα.

Σημείωση σχετικά με τις βιβλιοθήκες, έχω εγκαταστήσει στα ακόλουθα για έργα ESP8266:

  • Arduino WiFi βιβλιοθήκη έκδοση 1.2.7.
  • PubSubClient έκδοση 2.7.0, από τον Nick O'Leary, για μηνύματα MQTT. Δεν απαιτείται για αυτό το έργο.
  • IRremoteESP8266 έκδοση 2.6.3, για υπέρυθρες ακτίνες. Δεν απαιτείται για αυτό το έργο.

Εάν έχετε περισσότερες πληροφορίες σχετικά με τις απαιτούμενες βιβλιοθήκες, κάντε ένα σχόλιο. Ο λόγος που δεν έχω συγκεκριμένα είναι ότι δεν κατέγραψα αυτό που εγκατέστησα, συγνώμη.

Σχετικά με το ESP8266 NodeMCU

Χαρακτηριστικά,

  • Ταχύτητα ρολογιού 80 MHz
  • Τάση λειτουργίας: 3.3V
  • Μνήμη flash αποθήκευσης: 4 MB, SRAM: 64 KB
  • 9 κοινές ψηφιακές καρφίτσες GPIO με ετικέτα: D0 έως D8.
  • Από τις 9, 4 ακίδες μπορούν να χρησιμοποιηθούν για SPI και 2 ακίδες για I2C.
  • Διακόψτε τις καρφίτσες GPIO D0-D8.
  • Μη χρησιμοποιείτε τις 6 ακίδες: CLK, SD0, CMD, SD1, SD2, SD3 (GPIO 6-11), επειδή χρησιμοποιούνται.
  • Δοκιμασμένο: είσοδος κουμπιού χρησιμοποιώντας D0-D02.
  • Δοκιμασμένο: αναβοσβήνει LED χρησιμοποιώντας D0-D08. Έξω σε μια αντίσταση, σε ένα LED, στη γείωση.
  • Χρειάζεται δοκιμή, UART1 (TX = GPIO2), αντικείμενο Serial1: D4 ή D7 και D8.

Καρφίτσωμα λεπτομερειών

NodeMCU Label GPIO pin# D0 16 GPIO read/write, only. Μπορεί να μην έχει λειτουργία διακοπής. D1 5 Digitalηφιακό GPIO. -------------------- D2 4 Digitalηφιακό GPIO. D3 0 Digitalηφιακό GPIO. ---------- D2 4 I2C: SCL, ρολόι DS3231, μονάδες εισόδου PCF8574 D3 0 I2C: SDA ---------- D4 (TX) 2 Ενσωματωμένο, ενσωματωμένο LED. ---------- Έξοδος 3V 3v G Ground -------------------- D5 14 Digitalηφιακό GPIO. D6 12 Digitalηφιακό GPIO. D7 (RX) 13 Λειτουργεί για είσοδο, για παράδειγμα, υπέρυθρη λήψη. D8 (TX) 15 Δεν λειτουργεί για είσοδο, για παράδειγμα, υπέρυθρη λήψη. ---------- D5 14 κάρτα SD: SPI SCK D6 12 κάρτα SD: SPI MISO D7 (RX) 13 κάρτα SD: SPI MOSI D8 15 κάρτα SD: CS για SPI ενεργοποίηση/απενεργοποίηση μιας συσκευής. Μπορεί να χρησιμοποιήσει άλλες ψηφιακές ακίδες. -------------------- Το σύστημα RX 03 ανέβηκε από το IDE, το οποίο προκαλεί επανεκκίνηση μετά τη μεταφόρτωση. TX 01 System uplod. G Έξοδος 3V 3v 3v

Βήμα 2: Ανοίξτε έναν δωρεάν δοκιμαστικό λογαριασμό Twilio και αποκτήστε τον δικό σας αριθμό τηλεφώνου

Image
Image

Η Twilio είναι μια εταιρεία πλατφόρμας επικοινωνιών στο Διαδίκτυο. Τα προϊόντα που χρησιμοποιούνται σε αυτό το εγχειρίδιο είναι τα προγραμματιζόμενα μηνύματα Twilio και αριθμοί τηλεφώνου. Το Twilio διαθέτει έναν κατάλογο εικονικών αριθμών τηλεφώνου που μπορούν να χρησιμοποιηθούν για την αποστολή και λήψη μηνυμάτων SMS σε οποιοδήποτε κινητό τηλέφωνο.

Σε αυτό το βήμα, θα:

  • Ανοίξτε έναν λογαριασμό Twilio, εάν δεν τον έχετε ήδη. Ο δοκιμαστικός λογαριασμός είναι δωρεάν και δεν απαιτεί πιστωτική κάρτα. Ο δοκιμαστικός σας λογαριασμός θα έχει ένα δοκιμαστικό υπόλοιπο που χρησιμοποιείται για την πληρωμή αριθμών τηλεφώνου και την ανταλλαγή μηνυμάτων κειμένου με κινητά τηλέφωνα.
  • Αγοράστε έναν αριθμό τηλεφώνου Twilio. Είναι δωρεάν επειδή πληρώνεται για τη χρήση του δοκιμαστικού σας υπολοίπου.
  • Στείλτε ένα μήνυμα από το κινητό σας τηλέφωνο στον νέο αριθμό τηλεφώνου σας.
  • Μόλις το Twilio λάβει το μήνυμά σας, αποστέλλεται ένα μήνυμα αυτόματης απάντησης στο κινητό σας τηλέφωνο.
  • Χρησιμοποιήστε την εφαρμογή ιστότοπου Twilio Console για να προβάλετε τα αρχεία καταγραφής των μηνυμάτων σας.

Το πρώτο παραπάνω βίντεο δείχνει πώς να ανοίξετε έναν λογαριασμό Twilio. Το δεύτερο βίντεο δείχνει πώς να αγοράσετε έναν αριθμό τηλεφώνου Twilio.

Σύνδεση με τον ιστότοπο της κονσόλας Twilio για να ανοίξετε έναν λογαριασμό.

Σύνδεση με τον ιστότοπο της κονσόλας Twilio για να αγοράσετε έναν αριθμό τηλεφώνου Twilio.

Ο νέος σας αριθμός τηλεφώνου με δυνατότητα Twilio SMS έχει ήδη διαμορφωθεί μια αυτόματη απόκριση. Ως δοκιμή, στείλτε ένα μήνυμα SMS από το κινητό σας τηλέφωνο στον αριθμό τηλεφώνου Twilio. Θα λάβετε το ακόλουθο μήνυμα:

Ευχαριστώ για το μήνυμά σου. Διαμορφώστε τη διεύθυνση URL SMS του αριθμού σας για να αλλάξετε αυτό το μήνυμα. Απάντηση Help for Help. Απάντηση Διακοπή για κατάργηση εγγραφής.

Τώρα χρησιμοποιήστε την κονσόλα Twilio για να δείτε τα αρχεία καταγραφής των μηνυμάτων σας από την παραπάνω δοκιμή:

www.twilio.com/console/sms/logs

Περισσότερα για τη χρήση του Twilio

Μπορείτε να δημιουργήσετε τη δική σας προσαρμοσμένη αυτόματη απόκριση. Σύνδεση με ένα Studio πώς, πώς να δημιουργήσετε ένα προσαρμοσμένο μήνυμα απάντησης SMS. Το Studio είναι το εργαλείο μεταφοράς και απόθεσης Twilio Console.

Μπορείτε να χρησιμοποιήσετε την κονσόλα Twilio για να δείτε τα μηνύματα καταγραφής σας και να κατεβάσετε τα αρχεία καταγραφής ως CVS και να τα φορτώσετε σε υπολογιστικό φύλλο. Μπορείτε να επιλέξετε ένα εύρος ημερομηνίας και ώρας, από και προς τους αριθμούς τηλεφώνου και κατάσταση, όπως: Μη παραδοθείσα ή Απεσταλμένα. Έχετε επίσης την επιλογή να κατεβάσετε τα αρχεία καταγραφής ως αρχεία CVS. Δεδομένου ότι έχει όριο 300 ημερολογίων κάθε φορά, μπορείτε να περιορίσετε την επιλογή κατά ημερομηνία.

Σύνδεσμοι προγραμματιστών

Σύνδεση με τεκμηρίωση και δείγματα προγραμμάτων για αποστολή μηνυμάτων.

Σύνδεση με δείγματα προγράμματος για να εμφανίσετε αρχεία καταγραφής μηνυμάτων.

Σύνδεση με τις ιδιότητες μηνυμάτων προγράμματος. Η λίστα των ιδιοτήτων που αποστέλλονται στο αίτημα

Σύνδεσμος προς λίστα καταγραφών SMS για μια χρονική περίοδο.

Βήμα 3: Στείλτε ένα SMS από το NodeMCU σας

Στείλτε ένα SMS από το NodeMCU σας
Στείλτε ένα SMS από το NodeMCU σας

Κατεβάστε το πρόγραμμα: HttpTwPost.ino και φορτώστε το στο Arduino IDE. Στο πρόγραμμα εισαγάγετε το αναγνωριστικό και τον κωδικό πρόσβασης του δικτύου WiFi. Εισαγάγετε το δικό σας SID λογαριασμού Twilio, διακριτικό εγγραφής και αριθμό τηλεφώνου. Το αναγνωριστικό SID και το διακριτικό του λογαριασμού Twilio είναι ορατά από τον πίνακα ελέγχου της κονσόλας Twilio. Κάντε κλικ στο κουμπί Auth Token "show", για να δείτε το διακριτικό έγκρισης.

// Το SSID του δικτύου σας και το passwordconst char* ssid = "YourNetworkId"; const char* password = "YourNetworkPassword"; const char* account_sid = "YourTwilioAccountSID"; const char* auth_token = "YourAuthToken"; String from_number = "+16505551111"; // Αφού προστεθεί η κωδικοποίηση, προσθέστε "+". String to_number = "+16505552222"; String message_body = "Γεια σας από το NodeMCU.";

Σημείωση Twilio, όταν χρησιμοποιείτε αριθμούς τηλεφώνου με το Twilio, είναι καλύτερο να μορφοποιείτε αριθμούς ως αριθμούς τηλεφώνου μορφοποιημένους E.164. Οι αριθμοί τηλεφώνου με μορφοποίηση E.164 ξεκινούν με "+" και τον κωδικό χώρας. Ο αριθμός τηλεφώνου δεν έχει κενά, παύλες ή αγκύλες. Παράδειγμα: +16505551111.

Εκτελέστε το πρόγραμμα. Όταν ξεκινήσει το πρόγραμμα, θα στείλει ένα μήνυμα κειμένου SMS στον αριθμό του κινητού σας τηλεφώνου. Επίσης, δημοσιεύονται μηνύματα τα οποία μπορούν να προβληθούν στο Arduino IDE Tools/Serial Monitor. Τα μηνύματα της οθόνης περιλαμβάνουν την απάντηση από το Twilio.

+++ Ρύθμιση.+ Σύνδεση σε WiFi. …. + Συνδεδεμένο με WiFi, διεύθυνση IP: 192.168.1.76 + Χρήση δακτυλικών αποτυπωμάτων 'BC B0 1A 32 80 5D E6 E4 A2 29 66 2B 08 C8 E0 4C 45 29 3F D0' + Σύνδεση στο api.twilio.com + Συνδεδεμένο. + Δημοσίευση αιτήματος αποστολής SMS HTTP. + Η σύνδεση είναι κλειστή. + Απάντηση: HTTP/1.1 201 ΔΗΜΙΟΥΡΓΗΘΗΚΕ Ημερομηνία: Πέμ, 16 Ιουλ 2020 20:39:49 GMT Τύπος περιεχομένου: εφαρμογή/xml Περιεχόμενο-Διάρκεια: 878 Σύνδεση: κλείσιμο Twilio-Παράλληλα-Αιτήματα: 1 Twilio-Αίτηση-Αναγνωριστικό: RQe4fbdd142fca4b2fab24697e7400 Twilio-Αίτημα-Διάρκεια: 0.116 Access-Control-Allow-Origin: * Access-Control-Allow-Headers: Accept, Authorization, Content-Type, If-Match, If-Modified-since, If-None-Match, If- Unmodified-since Access-Control-Allow-Methods: GET, POST, DELETE, OPTIONS Access-Control-Expose-Headers: ETag Access-Control-Allow-Credentials: true X-Powered-By: AT-5000 X-Shenanigans: none X-Home-Region: us1 X-API-Domain: api.twilio.com Strict-Transport-Security: max-age = 31536000… + Εκκίνηση του βρόχου.

Μπορείτε να προβάλετε τα αρχεία καταγραφής μηνυμάτων Twilio, για να δείτε το αποσταλμένο σας μήνυμα.

Βήμα 4: Κουμπί για αποστολή SMS

Image
Image

Το παραπάνω βίντεο δείχνει μια χρήση ESP8266 NodeMCU για αποστολή μηνυμάτων σε κινητό τηλέφωνο. Στο βίντεο, το NodeMCU έχει ήδη ξεκινήσει και είναι συνδεδεμένο στο δίκτυο WiFi. Όταν πατηθεί το κουμπί, ανάβει η ενδεικτική λυχνία LED. Το αίτημα μηνύματος SMS αποστέλλεται στην υπηρεσία μηνυμάτων Twilio. Η υπηρεσία στέλνει SMS στο κινητό μου τηλέφωνο. Το μήνυμα ελήφθη. Η υπηρεσία απαντά επίσης στο NodeMCU ότι το μήνυμα ήταν στην ουρά για αποστολή. Μέχρι εκείνη τη στιγμή, το μήνυμα είχε ήδη ληφθεί στο τηλέφωνο. Αφού το NodeMCU λάβει την απάντηση από το Twilio, η ενδεικτική λυχνία σβήνει. Το κύκλωμα είναι έτοιμο να στείλει άλλο μήνυμα.

Ακολουθεί ο τρόπος υλοποίησης του κυκλώματος στο βίντεο. Αυτό το βήμα απαιτεί ένα breadboard, κουμπί και καλώδια. Προσθέστε ένα κουμπί στο breadboard. Η μία πλευρά του κουμπιού συνδέεται με την ακίδα NodeMCU D1. Συνδέστε την άλλη πλευρά του κουμπιού με τον πείρο γείωσης NodeMCU (ο ακροδέκτης G στον πίνακα μου).

Κατεβάστε το πρόγραμμα: HttpTwSendSms.ino και φορτώστε το στο Arduino IDE. Όπως και στο προηγούμενο βήμα, στο πρόγραμμα εισάγετε το αναγνωριστικό και τον κωδικό πρόσβασης του δικτύου WiFi. Εισαγάγετε το δικό σας SID λογαριασμού Twilio, διακριτικό εγγραφής και αριθμό τηλεφώνου.

Όταν εκτελείται το πρόγραμμα, το NodeMCU θα συνδεθεί στο δίκτυο WiFi. Όταν πατηθεί το κουμπί, αποστέλλεται ένα μήνυμα στον αριθμό του κινητού τηλεφώνου.

Βήμα 5: SMS από ένα NodeMCU είναι υπέροχο εργαλείο IoT

Τώρα μπορείτε να χρησιμοποιήσετε δείγμα κώδικα και λογαριασμό Twilio για να στείλετε μηνύματα SMS μέσω WiFi.

Στην υγειά σας, Στέισι Ντέιβιντ

Συνιστάται: