Mündəricat:
- Addım 1: Materiallar
- Addım 2: Node MCU nədir?
- Addım 3: NodeMcu ilə işə başlayın
- Addım 4: Veb saytdan məlumatları necə çəkmək olar
- Addım 5: Məlumatların göstərilməsi
- Addım 6: Bir qutu qurun
Video: NodeMcu ilə Wifi (Şimal İşıqları Göstəricisi) üzərindən İstənilən Veb Saytdan Verilənləri çəkin və Ambi: 6 Addım
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:43
Motivasiyam: IoT (əşyaların interneti) layihələri hazırlamaq üçün NodeMCU (ESP8266 modulu üzərində qurulmuş) qurmaq/ istifadə etməklə bağlı çoxlu təlimatlar gördüm. Ancaq bu dərsliklərin çox az birində, yeni başlayanlar üçün başlanğıcdan sona qədər izləmək üçün bütün detallar/ kodlar/ diaqramlar var idi və heç biri mənim istədiyim kimi etmirdi.
Bu nə əhatə edəcək ?: Bu, bilməlisiniz (və bilmədiyim) hər şeyi əhatə edəcək, o cümlədən:
- Materiallar (xüsusi olaraq istifadə etdiyim)
- Arduino, NodeMcu, ESP8266, fərq nədir?
-
NodeMcu ilə işə başlayın
- Proqramın qurulması (Arduino IDE)
- Bir LED yanıb -sönmək
- NodeMcu -nu gücləndirmək üçün seçimlər
- İnternetə qoşulma
-
Veb saytdan məlumatları necə çəkmək olar
- Veb saytında istədiyiniz məlumatlara "işarə"
- Thingspeak/ ThingHTTP/ API (qorxma, kodlaşdırma lazım deyil)
- Bu məlumatlara NodeMCU -dan daxil olmaq
-
Məlumatların göstərilməsi
- İstifadə etdiyim (7 seqmentli ekranı necə bağlamaq olar)
- Daha çox vaxt keçdikcə edəcəyi bəzi fikirlər/ işlər
- Bir qutu necə qurulacağını düşünürəm
DISCLAIMER: Bunu necə edəcəyimi öyrənmək üçün çoxlu video izlədim və demək olar ki, bütün kodlar digər mənbələrdən toplanmışdır və hamısını xatırlaya bilmirəm. Əsl ilham mənbəyi, təsvir etdiyim eyni şeyi edən bu adam idi, amma toxunma ekranı və qarışıq olmayan şeyləri süzərək tapdım. Bu təlimatı daha çox xüsusi bir obyektdən çox NodeMcu və bir növ IoT layihələrinə giriş hesab edirəm, amma bu xüsusi (Şimal İşıqları) göstəricisinin ilham mənbəyi 2008 -ci ildən bu qədər öyrədici idi. adamın mühit kürəsi , telefonlar və ya digər müdaxilə vasitələri olmadan səhmlər, youtube baxışları və ya hava kimi mühit məlumatlarını göstərir.
Addım 1: Materiallar
Bunlara ehtiyacınız olacaq:
1. NodeMcu lövhəsi
2. Kodu taxtaya yükləmək və istəsəniz son məhsulu gücləndirmək üçün mikro USB kabeli.
3. LEDlər, tullanan tellər (kişi-kişi, kişi-qadın) və əşyaları birləşdirmək üçün bir çörək taxtası … bu bir növdür, ancaq "çıxarmaq" istədiyiniz hər şey (məlumatlardan asılı olaraq göstərmək və ya etmək) üçün avadanlıq lazımdır. Ətrafdakı kürəni yenidən yaratmaq və ya tam olaraq etdiyimi etmək istəyirsinizsə, 7 seqmentli bir ekran və ya bəzi LEDlər kifayət qədər incədir. Çörək taxtası, hər şeyi 4 real olaraq bağlamadan əvvəl "prototip hazırlamaq" üçün lazımdır və mən onların necə işlədiyini/ işlərin necə əlaqəli olduğunu müvafiq bölmədə izah edəcəyəm. Yalnız bir başlanğıcsınızsa, arduino başlanğıc dəsti alın, çünki içərisində çoxlu kiçik şeylər (istifadə etdiyim hər şey daxil olmaqla) və başqa bir layihə üçün arduino uno var.
Ehtiyac duyduğunuz şeylər:
4. Çörək taxtası enerji təchizatı modulu (NodeMcu -nu standart bir güc adapteri ilə gücləndirmək istəyirsinizsə… bunu etməzdim, çünki onu daha rahat olan mikro USB ilə işlədə bilərsiniz. Layihənizi etmək istəyirsinizsə. Tamamilə simsiz, əlbəttə ki, bir batareya paketinə ehtiyacınız olacaq, amma bunu güc bölməsində həll edəcəyəm.
5. 1/4 düymlük çam ağacı (istəsəniz)
6. Qutunuzu örtmək və/və ya LEDiniz və ya ekranınız üçün diffuzor rolunu oynamaq üçün bəzi örtüklər
7. Super (CA) və/və ya taxta yapışqan 5. və 6.
Addım 2: Node MCU nədir?
Əgər mənim kimi elektronikaya əsl başlanğıc edirsinizsə, bir Arduino lövhəsi ilə NodeMcu lövhəsi arasındakı fərqin nə olduğunu və bəlkə də ESP8266 haqqında eşitdiyinizi düşünə bilərsiniz … bunlar arasındakı fərq nədir?!?
Bu heç də texniki deyil, amma bunu bilmək lazımdır.
Arduino, bir sıra sancaqlardakı girişləri oxumaq, bu girişləri istifadə edərək "işlər görmək" və sonra bir sıra pinlərə çıxarmaq qabiliyyətinə malikdir. Əsasən kiçik bir kompüterdir. Arduino, çox sayda fərqli lövhə və əlavə işlər görmək üçün lövhələrə qoşulan bir çox "qalxan" hazırlayır. Hal -hazırda internetə qoşulan satdıqları məhsullar çox bahadır və onları izləyən bir cəmiyyət yoxdur. Kod, C və C ++ - ı dəstəkləyən "Arduino IDE" proqramından lövhələrə yazılır və yüklənir, başqa xüsusi formatlar səpilir. C və ya C ++ proqramını necə proqramlaşdıracağınızı bilməyinizə ehtiyac yoxdur. İnternetdə çox sayda kod var, ancaq proqramlaşdırma ilə tanışlıq (xüsusən döngələr, dəyişkən bəyannamə və əhatə dairəsi və s. kimi) anlayışı sürətləndirməyə kömək edir. Arduino IDE, fərqli lövhələr üçün lazım olan kitabxanaları yükləmək üçün tək bir yer də təmin edir (daha sonra NodeMcu qurarkən).
ESP8266, əsasən internetə qoşulan arduino qalxanlarını köhnəltmiş son dərəcə ucuz bir WiFi moduludur (hələ də wifi quraşdırılmış arduino lövhələrini görürsünüz). ESP8266 ətrafındakı DIY icması o qədər böyükdür ki, İnternetə qoşulan qurğular hazırlamaq üçün demək olar ki, yeganə məntiqi seçimdir. Çox vaxt serial pinləri (Rx və Tx) vasitəsilə bir arduino lövhəsi ilə birlikdə istifadə olunur, baxmayaraq ki, bəzilərinin "tək başına" istifadə etdiyini düşünürəm, amma mikroçipin o qədər kiçik və əlaqəsi çətin olduğundan (əsasən 6 sancağa malikdir): 2 serial üçün (şeylərlə danışmaq üçün), 2 güc üçün (torpaq və VCC) və 2 GPIO (ümumi təyinatlı giriş çıxışı), üstəgəl 3.3V -də işləyir və buna görə də 5V onu məhv edəcək) sürətlə əvəz edildi …
ESP8266 üzərində qurulma istisna olmaqla, Arduino kimi açıq mənbə inkişaf etdirmə lövhəsi olan NodeMcu. Əlavə etdiyim şəkillərdə NodeMcu lövhəsinə quraşdırılmış ESP8266 -nı görə bilərsiniz. Bu lövhə proqramı və interfeysi ilə mükəmməl dostdur və əsasən bir arduino nano ilə müqayisə olunur. Daha çox sancağa malikdir və başqa bir lövhədən keçmədən birbaşa kompüterinizdən USB vasitəsilə proqramlaşdırıla bilər. Ayrıca, lövhə texniki olaraq hələ də 5V məntiqi ilə deyil, 3.3V məntiqlə işləsə də, bu gərginliyi idarə etmək üçün quraşdırılmış çiplərə malikdir, buna görə də istər USB vasitəsilə, istərsə də VCC (gərginlik) pinləri ilə arduino kimi işləyə bilər.. Əsasən, hər hansı bir IoT üçün, NodeMcu istifadə etmək üçün yaxşı, sadə, tək bir lövhədir və WiFi aktivdir … baxmayaraq ki, wifi olmayan layihələr üçün də yaxşı bir seçimdir. Texniki olaraq NodeMcu-nun "qutudan kənar" dili LUA-dır, ancaq Arduino IDE-də 1 dəfə qurulduqdan sonra onu digər Arduino-da olduğu kimi proqramlaşdıra biləcəksiniz.
Addım 3: NodeMcu ilə işə başlayın
NodeMcu ilə ilk dəfə işə başlamağım üçün aşağıdakı videodan istifadə etdim və onun bütün göstərişlərinə dəqiq əməl etsəniz, hər şey yaxşı işləməlidir.
1. Proqramın qurulması (Arduino IDE)
- Yuxarıdakı linkdən Arduino IDE -ni yükləyin və ianə edə bilməsəniz "sadəcə endir" seçin
- Arduino IDE proqramını açın
- Fayl -> Tercihlər, Əlavə Kartlar Meneceri URL -lərinin altına aşağıdakı linki yapışdırın "https://arduino.esp8266.com/versions/2.5.0-beta2/package_esp8266com_index.json"
- Alətlər -> İdarə Heyəti -> Lövhələr Meneceri (yuxarıda) altında aşağıya doğru sürüşdürün və ya ESP8266 axtarın və quraşdırma düyməsini basın.
- Bunun görünməsi üçün Arduino IDE-ni yenidən başlatmanız lazım ola bilər, amma indi Tools-> Board-a vurun və əldə etdiyiniz lövhəni, yəni NodeMcu 1.0 ESP12-E modulunu seçin.
- Bu addımı atmağınıza ehtiyac olmaya bilər, ancaq usb -i NodeMcu -dan kompüterinizə qoşun (işıqlar yanıb -sönəcək) və İdarəetmə Paneli-> Cihaz meneceri -> Limanlar -> və sonra etiketli COM portuna QEYD edin. "Silikon Labs …" bu NodeMcu -nun istifadə etdiyi COM portudur
- Arduino IDE-yə və Alətlər-> Limana qayıdın və bu portun seçildiyindən əmin olun
- Hər şey yaxşı olmalıdır, ancaq Alətlər altında flaş ölçüsünün 4 olmasını təmin edin (SPIFFS haqqında narahat olmayın, seçilən hər şey yaxşıdır) və yükləmə sürətinin 115200 olduğunu düşünürəm … NodeMcu əslində bir ötürmə sürətindən istifadə edir. Məlumatı seriyalı monitora ötürmək üçün 9600 (bunun nə demək olduğunu bilmirsinizsə, narahat olmayın, nümunədə görünəcək), ancaq kodda və sonra monitorda varsa 9600, bu yaxşıdır.
2. Bir LED -in yanıb -sönməsi
Bu, "Hello World" (yəni $ $ h1t) proqramlaşdırma kimidir, ancaq lövhədə hər şeyin yaxşı olduğunu bildirir və Arduino IDE ilə tanış olmağınıza kömək edir. Bu, lövhənin WiFi imkanlarını nümayiş etdirmir (bunu növbəti nümunədə edirik), sadəcə bağlı olduğunu və işləyə biləcəyini və s.
- Arduino IDE -ni açın, NodeMcu -nuzu qoşun
- Bir şey etməzdən əvvəl, arduino -ya yaza biləcəyiniz ən əsas kod üçün bir dəfə işləyən bir quraşdırma () döngəsi və sonsuza qədər davam edəcək başqa bir döngə () ilə çərçivə olduğunu unutmayın. Yekun kodumuz, yuxarıda bir neçə şey əlavə edilərək və aşağıda müəyyən edilmiş bir funksiya ilə belə qurulacaq
- Fayl-> Nümunələr-> (NodeMcu 1.0 bölməsinin altında) ESP8266-> Göz qırp
- Bu, pəncərədə bir az kod açacaq. Bir yerdə saxlamaqdan çekinmeyin.
- Bu kodda, setup () loopu, lövhədə quraşdırılmış LED -in bir çıxış kimi tərifini ehtiva edir və loop bu LED -ə yüksək və aşağı çıxış edir. Diqqət yetirin ki, lövhəyə quraşdırılmış LED -lər üçün (yalnız! Bu tipik hal deyil) "LOW" çıxışı (0 volt) onu yandıracaq, çünki standart olaraq yanır və "HIGH" (3.3V in. bu halda məncə), söndürüldü
- Hər şey yuxarıda göstərildiyi kimi düzgün qurulubsa, heç bir səhv olmadığından əmin olmaq üçün "Doğrula" düyməsini (sol üst küncdəki dairədə olan işarəni) vurmalısınız (bunu etmədiyiniz vaxtdan bəri belə bir şey olmayacaq) t yaz, amma sənin yazacaq!) və hər şey yaxşı olanda, yanında "Yüklə"
- Yükləmə düyməsini tıkladığınızda, altındakı qara bölgədə bir şeylərin oxunduğunu və nöqtələrin/ % tamamlandığını görəcəksiniz
- Yaddaşın 33% -ni tutacağını söylədiyindən narahat olmayın … bu, ən sadə kodla belə "sabit" bir məbləğdir, yazdıqlarım yalnız əlavə 1% yer tutur
- Lövhədəki LED -in yanıb -sönməyə başladığını görəcəksiniz (bu, bir az əvvəl etmiş ola bilər), buna görə də skriptin gecikmə hissəsindəki saniyənin mində bir hissəsini (milisaniyələr) dəyişdirməkdən çekinmeyin. İlk dəfə proqramlaşdırmağınızdırsa, LED-in bir az fərqli tezlikdə yanıb-sönməsini seyr etmək, ehtimal ki, əsl həyəcan verici bir səyahət olacaq.
3. NodeMcu -nu gücləndirmək üçün seçimlər
Bunu əvvəlcə niyə başa düşmədiyimi bilmirəm, amma lövhəyə yüklədiyiniz kod orada qalacaq və ona verilən enerji olduğu müddətdə əbədi olaraq işləyəcək. Məsələn, 2 -ci addımı tamamladıqdan sonra onu kompüterinizdən ayırsanız, başqa yerə bağlasanız, yenidən yanıb sönməyə başlayacaq. NodeMcu -nu işə salmağın ən asan yolu, sadəcə bir mikro USB -ni, sonra da cib telefonunuz üçün divardakı kimi istifadə etdiyiniz bir şarj blokuna (5V 1A bloku və ya hər nə ola bilər) bağlamaqdır. Əşyaları necə gücləndirə biləcəyiniz, DC jaklarının polaritesi və s. Haqqında məlumat almaq üçün digər təlimatçılığa baxmaqdan çekinmeyin, amma əsas odur ki, hər şeyi gücləndirmək üçün kifayətdirsə, istədiyiniz amperdən istifadə edə bilərsiniz (1A daha çoxdur) Bu lövhə və məsələn, istifadə etdiyiniz hər hansı bir LED üçün çoxdur), lakin hər şeyin düzgün işləməsi üçün gərginlik çox sıx bir diapazonda olmalıdır. NodeMcu -da, lövhədə bu gərginliyi aşağı salan bir tənzimləyici olduğu üçün 3.3V -dan 20V -a qədər olan hər hansı bir gərginliklə etibarlı şəkildə istifadə edə bilərsiniz (bu gözəl bir xüsusiyyətdir). Amper ilə, keçmək yaxşıdır, çünki lövhə yalnız ehtiyac duyduğu şeyi çəkəcək, ancaq gərginliklə lazım olan #-ə girmədən gərginliyi istifadə etmək daha etibarlıdır, buna görə daha az iş görmək lazımdır/ güc boşa gedir gərginliyi aşağı salmaq. Bir batareya paketi istifadə etmək və ya bir DC elektrik jakı istifadə etmək istəyirsinizsə (bəlkə də gözəl uzun bir kabel ola bilər), istifadə ediləcək pinlər VIN bitişik Ground pinləridir.
4. İnternetə qoşulma
Yuxarıdakı youtube videosunun kodunu (nəsil xatirinə, video uzaqlaşacağı təqdirdə) əlavə etdim, amma lütfən youtube linkindən keçin və ona kodun görünüşünü verin. Vaxtınıza dəyər, lövhənin tarixini çox əyləncəli bir şəkildə izah edir.
"Wifi_connect" adlı arduino kod faylını açın və SSID və şifrənizi özünüzə dəyişdirin, sonra gedin
- Döngələrin yuxarı hissəsində Arduinoya ESP8266 üçün WiFi məhsulları ilə dolu bir kitabxana daxil etməyi söyləyən bir #include xətti var. Bunlar əsasən bir araya gətirilmiş bir çox köməkçi və şeylərdir və kitabxanada olan əvvəlcədən yazılmış materiallardan istifadə edərək müəyyən işləri nisbətən sadə bir şəkildə etməyə imkan verir. Məsələn, bir qalxan və ya lövhəyə əlavə satın alsanız, ehtimal ki, onunla əlaqəli kitabxanalar var, buna görə də onunla daha asan əlaqə qura bilərsiniz.
- Alətlər-> Serial Monitor
- Serial monitörün 9600 -də oxunacaq şəkildə qurulduğundan əmin olun. Düzgün sürətdə deyilsə, seriyalı monitor çirkli bir qarışığı tüpürəcək, buna görə də serial monitorunuzun serialın təyin etdiyi sürətlə eyni olmadığını göstərir. kodda
- Doğrulama və işə salma düyməsini vurun və tamamlandıqca serial monitorunu izləyin … işlədiyi təqdirdə əlaqə haqqında bir çox detal söyləyəcək və NodeMcu -dakı ESP8266 -nın WiFi -yə qoşulmağa qadir olduğunu nümayiş etdirəcək! Bu heç bir iş görmür, amma bu lövhəni bir yerə divara bağlasanız, 30 saniyə gözləyə və internetlə də həyəcan verici bir əlaqə qurduğundan əmin ola bilərsiniz.
- Özünüzü sınamaq üçün, "bllink" kodu ilə "wifi_connect" kodunu bir araya gətirməyə çalışın ki, göyərtədəki LED -i yandırın və ya internetə qoşulduqda yanıb -sönün. Bu öyrənmək üçün əla bir yoldur!
Yuxarıda göstərilənlərin hamısını etdinizsə, təbrik edirəm! NodeMCU -ya kod yükləyə biləcəyinizi və NodeMcu'nun WiFi -yə qoşula biləcəyini göstərdiniz. Həqiqətən köhnə Wifi kitabxanasından çox MultiWifi kitabxanasından istifadə edərək WiFi -yə qoşulmaq üçün bir az fərqli bir üsuldan istifadə edəcəyik, çünki asanlıqla WiFis -in siyahısını əlavə edə bilərsiniz və istədiyiniz yerə qoşulmağa cəhd edə bilərsiniz.
Addım 4: Veb saytdan məlumatları necə çəkmək olar
Veb saytlardakı məlumatlar çox qorxunc şəkildə saxlanılır. Bunu istədiyiniz şeylərə süzmək və ya "təhlil etmək" eyni dərəcədə qorxuncdur və HTML haqqında ciddi bir məlumat olmadan bunu etməyə çalışmaq çətin ola bilər … buna görə də məqsəd ürkütücü yerdən istədiyiniz məlumatları əldə etməkdir çox təmiz və xoşbəxt bir yer. Funksional olaraq bunun mənası, bütün veb saytı göstərən bir URL -dən, yalnız istədiyiniz bir məlumat parçasını göstərən bir URL -ə keçməkdir.
1. Veb saytında istədiyiniz məlumatı "işarə edərək"
Maraqlandığınız veb sayta keçin, məsələn burada
www.timeanddate.com/worldclock/canada/edmonton
sonra istədiyiniz məlumatlara gedin, üzərinə sağ vurun və "yoxlayın" seçin. Brauzerinizdə HTML görüntüleyicisini açacaq və məlumatlarınızın gəldiyi ağacın son budağını sizə göstərəcək. Bunun üçün istifadə edə biləcəyiniz ən asan brauzerin xrom olduğunu görürəm, amma yəqin ki, firefox-un daha yaxşı hala gətirən bəzi uzantıları var … amma idk deyərəm ki, bu sadəcə klassik bir firefox adamı demək üçün bir şeydir?
Məlumatların yaşadığı yer budur. Bəzən istinad etdiyi şəxsiyyət vəsiqəsi var, bəzən sadəcə yazılır. Bəs bunu necə çıxaracağıq?
2. Thingspeak/ ThingHTTP/ API (qorxmayın, kodlaşdırmağa ehtiyac yoxdur)
API -lərin nə olduğunu və onları necə hazırladığınızdan belə danışmayacağam, ancaq bunları aranızdakı (əlaqə istəklərinizlə) və tələb etdiyiniz şeylərin harada olduğunu faktiki olaraq təsəvvür edə bilərsiniz. Klassik bənzətmə bir restoranda ofisiant olmaqdır. Bunu heç bir kodlaşdırmadan həyata keçirmək üçün "ThingSpeak" adlı pulsuz bir xidmətdən və xüsusi olaraq "ThingHTTP" tətbiqindən istifadə edəcəksiniz. Sadəcə bir hesab yaradın, sonra tətbiqlərə gedin və aşağıya doğru bir şey yazın və birini yaradın.
Etməyiniz lazım olan tək şey veb saytın URL -ni kopyalayıb yapışdırmaqdır, məsələn, yuxarıdakı tarix və vaxt veb saytı və sonra "String Parse" -in son sahəsinə qədər aşağı diyirləyin. İstədiyiniz məlumatların yolu budur.
Düşünürəm ki, bu yol bir neçə yolla verilə bilər, amma bildiyim ən sadə və yeganə yol, yuxarıda təsvir edildiyi kimi bu məlumat parçasını sağ tıklayaraq yoxlamaq və sonra həmin məlumatlara uyğun olaraq vurğulanmış xətti sağ vurmaqdır. HTML görüntüleyicisi və gedən Copy-> x yolu. Bu əlavə edilmiş şəkildə göstərilmişdir.
Bitirdikdən sonra, sizin üçün yaradılan URL -yə getməyə çalışın və ən azından işləyə biləcəyiniz bir şəkildə istədiyiniz məlumatları ehtiva etdiyinə baxın. Məsələn, mənimki temperaturun Selsi dərəcəsi deyil, "XX F" olaraq olduğunu söyləyir, ancaq ədədlər və sonunda F asanlıqla kod daxilində dəyişdirilə bilər. TƏHSİL EDİLMƏYƏCƏK HATAYI ALMAK SON MÜTLƏQDİR. Əgər belədirsə, xpath daxilindəki bəzi başlıqları silməyə çalışın, məlumatları başqa yerdə tapa biləcəyinizə baxın və ya təhlil xəttinizin "pozulmuş" tərəflərini müəyyən edə biləcəkləri bir forumla məsləhətləşin. Bu üsul, istədiyiniz məlumatları veb saytı ilə yükləməyən bir veb saytında işləməyəcək, əksinə (özü) yükləmək üçün bir az vaxt tələb edən bəzi xarici mənbələrdən çəkir. Ancaq işlər üçün yaxşı işləməlidir. youtube materialları, hava və s.
3. Bu məlumatlara NodeMCU -dan daxil olmaq
Mən artıq çox şey yazmışam, buna görə çoxlu şərhləri olan və hazırda Edmonton AB, Kanada üçün aurora borealis ehtimalını oxumaq üçün qurulmuş əlavə edilmiş koda baxın (Yalnız!). Etməli olduğunuz ilk çimdikcə URL -ni (əslində URL -nin yalnız 16 rəqəmli api açar hissəsini) öz şeyinizə dəyişdirməkdirhttp.
Düzəltməyiniz lazım olan ikinci şey, əsl "dəyərin" gətirildiyi və bir sətir (mətn) olan "dəyəriniz" dəyişəni olaraq saxlandığı loop () dadır. Oradan istədiyiniz tərzdə istifadə oluna bilər. Yüzdə simvolunu sildim, % -in 2 rəqəmini 2 dəyişənə böldüm (məsələn, 14 % -i 1, 4 -ə) və bunların hər birini tam ədəd kimi saxladım, ancaq bir neçə sürətli google axtarışları və ya şərhləri ilə bunu bacarmalısan whathttp yaradılmış simdən istədiyiniz ədədləri tam olaraq çıxarmaq üçün. Bir şeyi açmaq, söndürmək və ya göstərmək üçün kifayət qədər böyük və ya kiçik və ya bölünən bir şey olduğuna qərar vermək kimi şeyləri edə bilmək üçün nömrələrə ehtiyacınız olacaq. Kodun o vaxtdan qalan hissəsi, altdakı sevenseg () adlı funksiya da daxil olmaqla 2 ədədin göstərilməsi üçün istifadə olunur.
Kod haqqında suallar verməkdən çəkinməyin və ya istədiyiniz şeyi necə çıxara və ya göstərə biləcəyinizi və ya bu rəqəmləri necə istifadə edə biləcəyinizi, məsələn bir rgb LEDinin spektrini bölmək və fərqli dəyərləri fərqli rənglərə uyğunlaşdırmaq.
Addım 5: Məlumatların göstərilməsi
1. İstifadə etdiyim şey (7 seqmentli ekranı necə bağlamaq olar)
Əlavə edilmiş diaqramı aldım/ bu digər təlimatla izah olunan naqilləri izlədim.
Kablolama olduqca sadədir, amma heç bir çörək taxtası istifadə etməmisinizsə, baş verənləri qarışdırmaq olar. Əslində bir çörək taxtası əlaqələri aydın və müvəqqəti etmək üçün nəzərdə tutulmuşdur.
Aşağıdakı təsvirlərin hamısı əlavə edilmiş diaqramla əlaqəli olacaq: Çörək taxtası hər biri 2 fərqli seqmentdən ibarət olan üfüqi olaraq 2 təkrarlanan yarıya bölünə bilər: üfüqi - və + çörək taxtasının uzunluğunu uzadan (güc üçün istifadə olunan) və şaquli sütunlar nömrələnmiş və əlaqələri işarələmək üçün istifadə olunan sütun başına 5 nöqtədən ibarətdir. Sonra kiçik bir boşluq var və sonra eyni xüsusiyyətlər xəyali bölmə xəttinin digər tərəfində ikiqat artdı. Üfüqi + satırdakı bütün ləkələr bir -birinə bağlıdır və üfüqi sətirlərin hamısı bir -birinə bağlıdır. Bu, çörək taxtasının bir ucuna güc bağlamağa və sonra elektrik prizləri üçün uzun bir elektrik çubuğu kimi + çıxarmaq üçün hər hansı bir yerə + hər şeyi qoşa biləcəyinizə imkan verir. Eyni şeyləri yerə qoymaq üçün istifadə olunan sıra üçün də keçərlidir. Nömrələnmiş sütunlar üçün nömrələnmiş sütundakı hər bir nöqtə digər 4 nöqtəyə bağlanır. Diqqət yetirin ki, bir sütundakı beş ləkə xəyali yarı yol xəttinin əksinə olan beşə bağlı deyil. Çörək taxtası uzunlamasına kəsilə bilər və heç bir elektrik əlaqəsi kəsilməz.
NodeMcu, çörək taxtasının iki yarısını mükəmməl şəkildə bükür, hər bir pin gücə və ya giriş/çıxışa uyğun olaraq nömrələnmiş bir sütuna malikdir, buna görə də telləri qalan əlçatan yerə qoşub çörək taxtasının başqa bir yerinə bağlaya bilərsiniz. Eyni şey diaqramda göstərilən 7 seqmentli ekran üçün də keçərlidir. Məsələn, diaqramdakı 7 seqmentli ekrana qədər yerin yolunu izləyin.
- NodeMcu -dan torpaq pin 2 -ci sütuna bağlanır
- 2 -ci sütundan -ve üfüqi güc sırasına qədər tel (konvensiya zəmini ilə təyin olunmuşdur)
- yer sətrindən (bütün sıra bağlı olduğu üçün sütun nömrəsinin əhəmiyyəti yoxdur) bir rezistor vasitəsilə 22 -ci sütuna
- 22 -ci sütuna da qoşulan 7 seqmentli ekrandakı "torpaq" pininə
Diaqramdakı rezistorun məqsədi, əslində, ekranı söndürmək üçün işləyən LED -lərdəki artıq güc çıxışının bir hissəsini "islatmaq" dır. "1" və "8" ə qarşı işıqlandırıldıqda, 1 -in daha parlaq olduğunu görürsən, çünki daha az LED yanır. LED -i nə qədər az işıqlandırsanız, o qədər uzun sürəcək, buna görə də rezistor lazımdır. 7 seqmentli ekranların əksər diaqramları, hər seqmentin hər biri ilə birlikdə bir müqavimətçi olduğunu göstərir, lakin bu yaxşı işləyir. 1K ohm rezistor istifadə etdim.
Hansı sancaqların ekranda hansı pinlə uyğun gəldiyindən çox xəbərdar olun, çünki bunlar kodda əks olunur.
2. Bəzi fikirlər/ işlər, daha çox zamanla edərdim
Bu, dayandığım yerdir, ancaq məlumatlarınızın dəyərinə əsaslanaraq çıxarmaq üçün bir çox başqa şey seçə bilərsiniz:
- rəngdən dəyərindən asılı olaraq dəyişən və ya bir gradient əhatə edən rgb LED, məsələn yaşıldan qırmızıya
- tam LED ekran
- bir şeyi göstərmək üçün açılan və ya sönən doğru/yanlış LED üzərində/altında bir məntiqi açma/söndürmə
- Günün müəyyən bir vaxtında dönən bir mühərrik, məsələn, suvarma sistemindəki bir klapan və ya köpəyinizə bir müalicə vermək üçün … Əminəm ki, Wi -Fi vasitəsilə vaxtı şərh etməkdən daha səmərəli yollar var, amma bu bir seçimdir!
Növbəti addım (təəccüblü olaraq daha çox dərslik var) məlumatları öz serverinizə göndərmək (bunu da danışmaqla etmək olar) və sonra bu məlumatları istifadə etmək (məsələn, avtomatlaşdırılmış bağ və ya ağıllı ev əşyaları kimi).
Addım 6: Bir qutu qurun
Çörək taxtası vasitəsilə edilən bütün əlaqələr ya lövhə ilə çıxış arasındakı telləri birbaşa lehimləməklə (LED kimi), ya da daha kiçik bir taxta taxtadan və ya PCB -dən istifadə edərək uyğun ola biləcək bir miqyasda əlaqələr qurmaqla daimi edilə bilər. sizin layihəniz. Bağladığım dəstə daxil olan və yalnız bir telin ucuna bir rezistor lehimləmək üçün lazım olan kiçik bir çörək taxtasından istifadə etməyi seçdim … çox möhkəm deyil, işləkdir!
3,5 düymlük (yanlarda) 4 ədəd 1/4 "x 3,5" çam və 4 "(üst) hissəsini kəsdim və bütün üzləri düzbucaqlı hala gətirdiyimizdən əmin olaraq onları bir -birinə yapışdırdım. hər üzün mümkün qədər təmiz olması üçün. Ön və ya arxa hissələri yapışdırmadan əvvəl, ekranın və lövhənin görüləcək/ taxılacağı qədər yapışması üçün yerlər kəsdim. Aldığım kiçik çörək taxtasının arxa tərəfində yapışqan bant var idi ki, yan divarlardan birinə yapışdırılsın və 7 seqmentli displey əvvəlcə parçanı qablaşdırma lentinin üzərinə qoyaraq ekranı bu lentə qoyaraq yerində tutula bilsin, və sonra bütün boşluqların üzərinə çörək pudrası səpin. Sonra boşluqlara CA (super) yapışqan tökdüm, çörək soda ilə təmasda olduqda ekranı yerində tutmaq üçün dərhal sərtləşdi, ön hissənin ön tərəfinə doğru yuyuldu. Qablaşdırma lenti, ekranla üzü aşağı baxan səth arasında heç bir yapışqanın sızmasını və quruduqdan sonra örtülməsini maneə törətmək idi.
Hər tərəfə şam kaplama yapışdırdım (fikrimcə ağac yapışqanından daha yaxşı işləyən CA yapışqan istifadə edərək) və vahid görünməsini təmin etmək üçün kənarlarını zımparaladım. bu videodakı kimi göstərin.
Tövsiyə:
Uno ilə ESP8266 WeMos D1 R1 Wifi Prosessoru istifadə edərək ESP32-Cam ilə Şəkillər çəkin və göndərin: 7 addım
Uno ilə ESP8266 WeMos D1 R1 Wifi Prosessorundan istifadə edərək ESP32-Kamera ilə Şəkillər çəkin və göndərin: Uno ilə ESP8266 WeMos D1 R1 WiFI Prosessoru istifadə edərək ESP32-Cam (OV2640) istifadə edərək şəkil çəkin və e-poçtla göndərin, Google Diskə qeyd edin və göndərin Twilio istifadə edən Whatsapp.Tələblər: Uno ilə ESP8266 WeMos D1 R1 WiFI Prosessoru (https: // protosupplies
İnteraktiv həyət işıqları, keçid işıqları: 3 addım
İnteraktiv həyət işıqları, keçid işıqları: Arxa həyətim üçün bir növ interaktiv həyət işıqları qurmaq istəyirdim. Fikir, kimsə bir tərəfə getdiyi zaman, getdiyin istiqamətdə bir animasiya quracaqdı. Dollar General 1.00 dollarlıq günəş işığı ilə başladım
İşıqları NES Zapper (RF 433MHz) ilə çəkin: 6 addım (şəkillərlə)
İşıqları NES Zapper (RF 433MHz) ilə Çək: NES Zapperinizlə çəkə bilsəniz niyə işığı bir açarla söndürün! Bu fikir beynimə girəndə köhnə bir qırıq NES Zapperdə artıq bir lazer işığı qurdum. Daha çox xoşuma gəldi, buna görə lazer işığını bununla əvəz etdim. İdeal bir pro
İstənilən MP3 Çalar və ya Kompüterlə İstənilən 5.1 Dinamik Sistemindən İstifadə Edin, Ucuz!: 4 Addım
İstənilən MP3 Çalar və ya Kompüterlə İstənilən 5.1 Dinamik Sistemindən İstifadə Edin, Ucuz! 5.1 səs kartı (PCI) olan masaüstümlə istifadə etdim. Sonra noutbukumla birlikdə istifadə etdim
İstənilən Kamera Telefon Kamerası ilə İnanılmaz Makro Şəkillər çəkin Xüsusilə bir IPhone: 6 Addım
İstənilən Kamera Telefon Kamerası ilə Mükəmməl Makro Şəkillər çəkin … Xüsusilə də bir iPhone: Heç inanılmaz yaxınlıqdakı fotoşəkillərdən birini almaq istəyirdiniz … VAY!? … bir kamera telefon kamerası ilə !? Əsasən, bu, hər hansı bir kamera telefonu kamerasının, mövcud kamera obyektivini böyütmək üçün bir artırma əlavəsidir