Mündəricat:
2025 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2025-01-13 06:56
Bu təlimat, İnternet üzərindən bir ESP8266 NodeMCU modul lövhəsindən bir mobil telefona SMS göndərmək üçün addımlar atır. Mesajı göndərə bilmək üçün bir rabitə şirkəti olan Twilio -dan virtual telefon nömrəsi almaq üçün addımlardan keçməlisiniz. Twilio -da pulsuz sınaq hesabı seçimi olduğu üçün heç bir kredit kartına ehtiyac yoxdur. Daha sonra SMS mesajları göndərmək üçün nümunə bir Arduino IDE proqramını yükləyib istifadə edəcəksiniz.
Bu təlimatdakı nümunə proqram, kopyalamaq, yapışdırmaq, redaktə etmək və öz layihələrinizdə istifadə etmək üçün irəli gedən funksional zənglərə malikdir.
Təchizat
NodeMCU ESP8266 CH340G ESP-12E Simsiz WIFI İnternet İnkişaf etdirmə lövhəsindən istifadə edirəm. Çinli təchizatçılardan eBay -də təxminən 3 dollara satırlar.
Addım 1: ESP8266 NodeMCU'nuzu sınayın
Çörək taxtası ilə və ya olmadan test edə bilərsiniz. Çörək taxtası olmadan, göyərtədəki işıq yanıb sönəcək və bu test üçün təsirli olacaq.
Nümunəmdə NodeMCU -nu Çörək lövhəsinə qoşuram. Bir LED -in mənfi tərəfini NodeMCU üzərindəki yerə (G və ya GND) bağlayıram. LED -in müsbət tərəfi bir müqavimət vasitəsi ilə (500 ilə 5K ohm arasında) NodeMCU pin D4 -ə bağlanır. Nümunə proqramı işə salındıqda, göyərtədəki LED yanacaq, xarici LED sönəcək, sonra bortdakı LED sönəcək, xarici LED yanacaq. LED işıqları alternativ olaraq açılacaq və sönəcək.
Əsas Arduino test proqramını yükləyin və işə salın: nodeMcuTest.ino. Proqramı işləyərkən, göyərtədəki LED işığı 1 saniyə yanacaq, 1 saniyə sönəcək və davamlı olaraq dövr edəcək. Ayrıca, Arduino IDE Tools/Serial Monitorda baxıla bilən mesajlar yerləşdirilir.
+++ Quraşdırma.
+ Çıxış üçün lövhədə LED rəqəmsal pin işə salındı. LED sönüb. ++ Döngəyə keçin. + Döngü sayğacı = 1 + Döngü sayğacı = 2 + Döngə sayğacı = 3…
IDE -nin NodeMCU'nuzu proqramlaşdırmaq üçün istifadə edilə biləcəyini təsdiqlədikdən sonra növbəti addıma keçin.
Kitabxanalarla əlaqədar qeyd, ESP8266 layihələri üçün aşağıdakıları quraşdırdım:
- Arduino WiFi kitabxana versiyası 1.2.7.
- MQTT mesajlaşması üçün Nick O'Leary tərəfindən PubSubClient versiyası 2.7.0. Bu layihə üçün tələb olunmur.
- IRremoteESP8266 versiyası 2.6.3, infraqırmızı üçün. Bu layihə üçün tələb olunmur.
Lazımi kitabxanalar haqqında daha çox məlumatınız varsa, şərh yazın. Xüsusi xüsusiyyətlərimin olmamasının səbəbi, quraşdırdığımı yazmadığım üçün üzr istəyirəm.
ESP8266 NodeMCU haqqında
Xüsusiyyətləri,
- 80 MHz tezliyi
- İşləmə gərginliyi: 3.3V
- Yaddaş flash yaddaşı: 4 MB, SRAM: 64 KB
- D0 -dan D8 -ə qədər etiketlənmiş 9 ümumi istifadə olunan rəqəmsal GPIO pinləri.
- 9 -dan 4 sancaq SPI üçün, 2 pin isə I2C üçün istifadə edilə bilər.
- GPIO pinlərini D0-D8 ilə kəsin.
- 6 pin istifadə etməyin: CLK, SD0, CMD, SD1, SD2, SD3 (GPIO 6-11), çünki onlar istifadə olunur.
- Test edildi: D0-D02 istifadə edərək düymə girişi.
- Test edildi: D0-D08 istifadə edərək LED yanıb-sönür. Bir müqavimətçiyə, bir LEDə, yerə.
- Test etmək lazımdır, UART1 (TX = GPIO2), Serial1 obyekti: D4 və ya D7 və D8.
Detalları bağlayın
NodeMCU Etiketi GPIO pin# D0 16 GPIO yalnız oxumaq/yazmaq üçündür. Kəsmə xüsusiyyəti olmaya bilər. D1 5 Rəqəmsal GPIO. -------------------- D2 4 Rəqəmsal GPIO. D3 0 Rəqəmsal GPIO. ---------- D2 4 I2C: SCL, saat DS3231, PCF8574 giriş modulları D3 0 I2C: SDA ---------- D4 (TX) 2 Quraşdırılmış LED lövhədə. ---------- 3V 3v çıxış G Ground -------------------- D5 14 Digital GPIO. D6 12 Rəqəmsal GPIO. D7 (RX) 13 Giriş üçün işləyir, məsələn, infraqırmızı qəbul. D8 (TX) 15 Giriş üçün işləmir, məsələn, infraqırmızı qəbul. ---------- D5 14 SD kart: SPI SCK D6 12 SD kart: SPI MISO D7 (RX) 13 SD kart: SPI MOSI D8 15 SD kart: SPI üçün CS cihazı aktivləşdirir/söndürür. Digər rəqəmsal sancaqlar istifadə edə bilərsiniz. -------------------- Yükləndikdən sonra yenidən başlamağa səbəb olan IDE-dən RX 03 Sistemi yüksəldi. TX 01 Sistemin yüklənməsi. G Ground 3V 3v çıxışı
Addım 2: Pulsuz Twilio Sınaq Hesabını açın və Öz Telefon Nömrənizi əldə edin
Twilio, internet rabitə platforması şirkətidir. Bu təlimatda istifadə olunan məhsullar Twilio Programlanabilir Mesajlaşma və telefon nömrələridir. Twilio, hər hansı bir cib telefonuna SMS göndərmək və almaq üçün istifadə edilə bilən virtual telefon nömrələri inventarına malikdir.
Bu addımda siz:
- Bir hesabınız yoxdursa, Twilio hesabı açın. Bir sınaq hesabı pulsuzdur və kredit kartı tələb etmir. Sınaq hesabınızda telefon nömrələrini ödəmək və cib telefonları ilə mətn mesajları mübadiləsi üçün istifadə olunan sınaq balansı olacaq.
- Twilio telefon nömrəsi alın. Sınaq balansınızı istifadə etdiyiniz üçün ödənildiyi üçün pulsuzdur.
- Yeni telefon nömrənizə mobil telefonunuzdan bir mesaj göndərin.
- Twilio mesajınızı aldıqdan sonra cib telefonunuza avtomatik cavab mesajı göndərilir.
- Mesaj qeydlərinizi görmək üçün Twilio Console veb sayt tətbiqindən istifadə edin.
Yuxarıdakı ilk video Twilio hesabının necə açılacağını göstərir. İkinci video Twilio telefon nömrəsinin necə alınacağını göstərir.
Hesab açmaq üçün Twilio Console veb saytına keçid edin.
Twilio telefon nömrəsi almaq üçün Twilio Console veb saytına keçid edin.
Yeni Twilio SMS qabiliyyətli telefon nömrənizdə artıq konfiqurasiya edilmiş avtomatik cavab var. Test olaraq Twilio telefon nömrənizə cib telefonunuzdan SMS göndərin. Aşağıdakı mesajı alacaqsınız:
Mesajınız üçün təşəkkürlər. Bu mesajı dəyişdirmək üçün nömrənizin SMS URL -ni konfiqurasiya edin. Kömək üçün Kömək yazın. Abunəlikdən çıxmaq üçün Stop yazın.
İndi yuxarıdakı testdən mesaj qeydlərinizi görmək üçün Twilio Konsolundan istifadə edin:
www.twilio.com/console/sms/logs
Twilio istifadə haqqında daha çox
Şəxsi avtomatik cavabınızı yarada bilərsiniz. Xüsusi bir SMS cavab mesajını necə etmək olar, bir studiyaya necə keçmək olar. Studio Twilio Console alətimizdir.
Günlük mesajlarınızı görmək və qeydləri CVS olaraq yükləmək və elektron tabloya yükləmək üçün Twilio Konsolundan istifadə edə bilərsiniz. Telefon nömrələrinə və arasında bir tarix və vaxt aralığı seçə bilərsiniz, məsələn: Çatdırılmadı və ya Göndərildi. Günlükleri CVS faylları olaraq yükləmək seçiminiz də var. Bir anda 300 qeyd limiti olduğundan, tarixə görə seçimi məhdudlaşdıra bilərsiniz.
Geliştirici bağlantıları
Mesaj göndərmək üçün sənədlərə və nümunə proqramlara bağlantı.
Mesaj qeydlərini siyahıya salmaq üçün proqram nümunələrinə keçid.
Proqram mesaj xüsusiyyətlərinə keçid. HTTP sorğusunda göndərilən xüsusiyyətlərin siyahısı.
Bir müddət SMS qeydlərinin siyahısına keçid.
Addım 3: NodeMCU -dan SMS göndərin
Proqramı yükləyin: HttpTwPost.ino və Arduino IDE -yə yükləyin. Proqrama WiFi şəbəkə identifikatorunuzu və şifrənizi daxil edin. Öz Twilio hesabınızın SID -ini, kimlik kodunu və telefon nömrənizi daxil edin. Twilio hesabı SID və doğrulama əlaməti Twilio Console tablosundan görünür. Doğrulama nişanını görmək üçün Doğrulama Tokenini "göstər" düyməsini basın.
// Şəbəkənizin SSID və şifrəni qurmaq char* ssid = "YourNetworkId"; const char* parol = "Şəbəkə Şifrəniz"; const char* account_sid = "YourTwilioAccountSID"; const char* auth_token = "YourAuthToken"; String from_number = "+16505551111"; // Kodlaşdırma əlavə edildikdən sonra "+" əlavə edin. String to_number = "+16505552222"; String message_body = "NodeMCU -dan salam.";
Twilio notu, Twilio ilə telefon nömrələrindən istifadə edərkən nömrələri E.164 formatlı telefon nömrələri kimi formatlaşdırmaq daha yaxşıdır. E.164 formatlı telefon nömrələri "+" və ölkə kodu ilə başlayır. Telefon nömrəsində boşluq, defis və ya mötərizə yoxdur. Misal: +16505551111.
Proqramı işə salın. Proqram başladıqda mobil telefon nömrənizə SMS mesajı göndəriləcək. Ayrıca, Arduino IDE Tools/Serial Monitorda baxıla bilən mesajlar yerləşdirilir. Monitor mesajlarına Twilio -nun cavabı daxildir.
+++ Quraşdırma.+ WiFi -yə qoşulun. …. + WiFi, IP ünvanı: 192.168.1.76 + barmaq izi istifadə edərək 'BC B0 1A 32 80 5D E6 E4 A2 29 66 2B 08 C8 E0 4C 45 29 3F D0' + api.twilio.com saytına qoşulur + Bağlandı. + HTTP göndərmək üçün SMS göndərin. + Bağlantı bağlıdır. + Cavab: HTTP/1.1 201 Yaradılma tarixi: Per, 16 İyul 2020 20:39:49 GMT Məzmun Növü: proqram/xml Məzmun-Uzunluq: 878 Bağlantı: yaxın Twilio-Eşzamanlı İstəklər: 1 Twilio-İstək-İd: RQe4fbdd142fca4b2fab24697e74006837 Twilio-İstək-Müddəti: 0.116 Erişim-Nəzarət-İcazə-Mənşəyi: * Giriş-Nəzarət-İcazə-Başlıqlar: Qəbul et, İcazə vermə, Məzmun Tipi, Uyğun Əgər, Uyğunlaşdırılıbsa, Dəyişdirildiyindən Bəri, Heç Olmasa-Maç, Əgər Dəyişdirilməmiş-Giriş-Nəzarət-İcazə vermə üsulları: 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… + Döngə başlayır.
Göndərdiyiniz mesajı görmək üçün Twilio mesaj qeydlərinə baxa bilərsiniz.
Addım 4: SMS göndərmək üçün düymə
Yuxarıdakı videoda cib telefonuna mesaj göndərmək üçün ESP8266 NodeMCU istifadə olunur. Videoda NodeMCU artıq işə salınmış və WiFi şəbəkəsinə qoşulmuşdur. Düymə basıldıqda təyyarədəki LED işığı yanır. SMS mesajı sorğusu Twilio Mesajlaşma xidmətinə göndərilir. Xidmət mobil telefonuma SMS göndərir. Mesaj alınır. Xidmət həmçinin NodeMCU -ya mesajın göndərilmək üçün növbəyə qoyulduğunu cavablandırır. Bu vaxta qədər mesaj artıq telefona daxil olmuşdu. NodeMCU Twilio -dan cavab aldıqdan sonra təyyarədəki işıq sönür. Dövrə başqa bir mesaj göndərməyə hazırdır.
Videoda dövrə necə tətbiq olunacağı aşağıda verilmişdir. Bu addım çörək taxtası, düymə və tellər tələb edir. Çörək taxtasına bir düymə əlavə edin. Düymənin bir tərəfi NodeMCU D1 pininə bağlanır. Düymənin digər tərəfini NodeMCU topraklama pininə bağlayın (lövhəmdəki pin G).
Proqramı yükləyin: HttpTwSendSms.ino və Arduino IDE -yə yükləyin. Əvvəlki addımda olduğu kimi, proqrama WiFi şəbəkə identifikatorunuzu və şifrənizi daxil edin. Öz Twilio hesabınızın SID -ini, kimlik kodunu və telefon nömrənizi daxil edin.
Proqram işə salındıqda NodeMCU WiFi şəbəkəsinə qoşulacaq. Düymə basıldıqda mobil telefon nömrəsinə bir mesaj göndərilir.
Addım 5: NodeMCU -dan gələn SMS əla IoT vasitəsidir
İndi WiFi üzərindən SMS göndərmək üçün nümunə kodu və Twilio hesabınızı istifadə edə bilərsiniz.
Sağol, Stacy David