Mündəricat:

Arduino əsaslı çox rəngli yüngül rəngli çubuq: 13 addım (şəkillərlə)
Arduino əsaslı çox rəngli yüngül rəngli çubuq: 13 addım (şəkillərlə)

Video: Arduino əsaslı çox rəngli yüngül rəngli çubuq: 13 addım (şəkillərlə)

Video: Arduino əsaslı çox rəngli yüngül rəngli çubuq: 13 addım (şəkillərlə)
Video: CS50 2013 - Week 9 2024, Iyul
Anonim
Arduino əsaslı çox rəngli yüngül rəngli çubuq
Arduino əsaslı çox rəngli yüngül rəngli çubuq
Arduino əsaslı çox rəngli yüngül rəngli çubuq
Arduino əsaslı çox rəngli yüngül rəngli çubuq
Arduino əsaslı çox rəngli yüngül rəngli çubuq
Arduino əsaslı çox rəngli yüngül rəngli çubuq

Yüngül rəsm, Fotoqraflar tərəfindən istifadə olunan bir texnikadır, burada maraqlı nümunələr çəkmək üçün bir işıq mənbəyindən istifadə olunur və Kamera bunları bir araya gətirir. Nəticədə Şəkil içərisində işıq izlərini ehtiva edəcək ki, nəticədə İşıqdan istifadə edərək rəsmə baxsın.

Fotoqraflar İşıq rəsmləri yaratmaq üçün məşəl işıqları, boru işıqları və digər işıq mənbələri kimi vasitələrdən istifadə edirlər, lakin bu alətlər dar rəng aralığı, sərt idarəetmə və idarəetmə ilə ciddi şəkildə məhduddur. Hazırladığım yüngül rəsm çubuğu bu məhdudiyyətləri asanlıqla aşa bilər.

Yüngül rəsm çubuğumuzun əsas xüsusiyyətləri bunlardır:

  • WiFi İşlətmə - Bu yüngül rəngləmə çubuğu, hər hansı bir WiFi aktiv cihazı içərisində sadə bir brauzerdən istifadə edərək çox asanlıqla idarə edilə bilər (AÇILIR/KAPALI, Rənglərin dəyişdirilməsi). Beləliklə, bu WiFi cihazları uzaqdan idarəetmə funksiyasını yerinə yetirəcək və Fotoqraflar öz ustalarını hazırlayarkən müxtəlif rənglərlə oynaya bilərlər.
  • Standart rənglər - Bu çubuq sadə düymə girişindən istifadə edərək (Qırmızı, Mavi, Yaşıl, Qızıl, Gökkuşağı, Ağ) kimi standart rənglər yaymaq üçün kodlaşdırılmışdır.
  • Xüsusi Rənglər - Standart rənglərdən başqa, bu çubuq Fotoqrafın istəyinə uyğun olaraq istənilən rəng yarada bilir. Mavi, magenta, firuzə, zeytun, tünd qırmızı və s. Kimi istədiyiniz hər hansı bir rəngin RGB kodunu daxil etmək xüsusiyyəti ilə əlavə edildi. "Burada RGB rəng kodlarını" axtarın və xüsusi rənginizi əldə etmək üçün istifadə edin.

Addım 1: Lazımi materiallar

Tələb olunan materiallar
Tələb olunan materiallar
Tələb olunan materiallar
Tələb olunan materiallar

Bu layihəni hazırlamaq üçün lazım olan materialları sadaladım. Amazon.com -dan satın ala biləcəyiniz bağlantıları da əlavə etdim. Aşağıdakı linklərdən material almaq mənə bir qədər komissiya qazandıracaq və öz növbəmdə gələcək layihələrimdə mənə dəstək olacaq:)

  1. Arduino Uno - Buradan alın
  2. RGB WS2812 LED şeridi (25 LED) - Buradan alın
  3. Power bank (5v, 10000mAh) - Buradan alın
  4. ESP8266 modulu - Buradan alın
  5. İki yönlü məntiq çevirici modulu - Buradan alın
  6. Bağlayıcı tellər

WS2812 RGB LED şeridi - Bu RGB LEDləri bir -birinə zəncirlə bağlanır və 60/120 ədəd ədədində satılır. Ən çox diqqət çəkən odur ki, bu RGB LED -in inteqrasiya olunmuş çipi var ki, bu da idarəedici hissəni olduqca asanlaşdırır. Bu barədə ətraflı izahat bu çərçivənin xaricindədir. Ətraflı məlumat üçün "WS2812 LED şeridi işləyir" linkinə baxın.

ESP8266 modulu: Bu, IOT layihələrində geniş istifadə olunan kiçik bir WiFi inkişaf etdirmə lövhəsidir. Daha əvvəl ESP8266 istifadə etməmisinizsə, "ESP8266 moduluna başlayın" mövzusunda bu linki yoxlayın.

İki istiqamətli Məntiq çevirici modulu: Bu modul Arduino -ya siqnalı 5V səviyyəsindən 3.3v məntiq səviyyəsinə çevirərək ESP8266 modulları ilə əlaqə qurmağa imkan verir.

Addım 2: Blok Şeması

Blok diaqram
Blok diaqram

Bu Light rəsm layihəsi, iki şəbəkə cihazının bir -biri ilə əlaqə quraraq bir şəbəkə yaratmaq üçün bir -biri ilə əlaqə quraraq IOT anlayışına əsaslanır. Burada Arduino bir web səhifəsinə ev sahibliyi edəcək və server kimi çıxış edəcək. Bu veb səhifə, istifadəçidən LED nəzarət girişlərini (Rənglər: Qırmızı, Mavi, Yaşıl və AÇMA/KAPALI) götürmək üçün hazırlanmışdır. Bu yerləşdirilən veb səhifəyə, Arduino ilə əlaqəli WiFi ilə işləyən cihaz vasitəsilə daxil olmaq və ona qoşulmuş RGB LED şeridini idarə etmək olar.

Bu layihəni daha yaxşı başa düşmək üçün sizə "ESP8266 ilə Arduino veb -serverinin yaradılması" mövzusunda oxumağı məsləhət görürəm. Bu, bu layihənin necə işlədiyinə dair əsas konseptual anlayış təmin edəcək. Bir sözlə, Arduino bu layihədə aşağıdakı işləri həyata keçirəcək:

  1. Cihazımızın WiFi qaynar nöqtəsinə qoşulmaq üçün ESP8266 əmrini verin.
  2. ESP lövhəsini istifadə edərək veb səhifəni Arduinonun özündə yerləşdirin və xarici müştərilərin (Cihaz brauzeri) sorğu etməsini gözləyin.
  3. Müştəri istəyi daxil olduqdan sonra Arduino veb səhifəni müştəriyə (cihaz brauzeri) ESP8266 modulu vasitəsilə göndərəcək.
  4. Sonra müştəridən LED əmrlərini (veb interfeysi bölməsində izah ediləcək) sonsuzca yoxlayacaq.
  5. LED əmrləri alındıqdan sonra Arduino bunu emal edəcək və ona bağlı RGB LED şeridini aktivləşdirəcək.

Addım 3: Dövrə Şeması

Dövrə diaqramı
Dövrə diaqramı
Dövrə diaqramı
Dövrə diaqramı

Yuxarıdakı sxem, Arduino'nun ESP8266 və RGB LED şeridi ilə necə bağlanacağını göstərir. Gördüyünüz kimi, siqnalların alınacağı Məntiq çeviricisinə daxil olacaq Arduinonun TX və RX -i ESP8266 ilə uyğun 3.3v -ə keçir. PWM pin olan Arduino 6 -cı pin, RGB LED şeridinin rəngini idarə etmək üçün vaxt nəzarət pulsunu qidalandırır.

Bu layihə üçün göstərici olaraq xidmət edən iki LED var. LED D2, layihənin nə vaxt açıldığını göstərir. LED D1, Arduinonun uğurla bir veb server yaratdığını göstərir. Bu yaşıl LED istifadəçiyə serverin müştəridən (brauzerdən) sorğu almağa hazır olduğunu anlamağa kömək edəcək.

Powerbank seçimi həqiqətən vacibdir, çünki dövrə təxminən 1700ma ətrafında maksimum cərəyan çəkə bilər. İstənilən anda 2A cari çıxışı olan 5.1/10000mah batareya istifadə etdim.

Addım 4: ESP8266 cihazınızı WiFi Hotspot -a bağlayın

ESP8266 cihazınızı WiFi Hotspot -a qoşun
ESP8266 cihazınızı WiFi Hotspot -a qoşun
ESP8266 cihazınızı WiFi Hotspot -a qoşun
ESP8266 cihazınızı WiFi Hotspot -a qoşun

ESP8266 modulu qoşalaşmış qaynar nöqtələri xatırlaya bilir. Bu layihə, əvvəllər qoşulmuş qaynar nöqtələrlə əlaqə qurmaq üçün avtomatik əlaqə qabiliyyətinə əsaslanaraq işləyir. ESP8266 modulu, xüsusi AT əmrlərindən istifadə etməklə idarə oluna bilər. Arduino -dan istifadə edərək bu əmrləri ötürə və ESP modulunu cihazımızın Hotspot -a qoşulmağa məcbur edə bilərik.

Bunu etmək üçün "Bareminimum" kodunu Arduinoya yükləyin. İndi məntiq dəyişdiricisini istifadə edərək ESP8266 -nı aşağıda qeyd edildiyi kimi Arduino ilə bağlayın.

Arduino RX -> Məntiq dəyişdiricisi -> ESP8266 RX

Arduino TX -> Məntiq dəyişdiricisi -> ESP8266 TX

İndi 57600 (ESP8266 modullarının standart baud sürəti) və "Həm NL, həm də CR" seçilmiş baud dərəcəsi ilə serial monitorunuzu açın. Aşağıdakı əmrləri daxil edin.

  1. AT
  2. AT+RST
  3. AT+CWJAP = "Cihazınızın SSID", "Şifrəniz"

Serial monitorunuzda "WIFI CONNECTED" və "WIFI GOT IP" təsdiqini aldıqdan sonra. Bu addım tamamlandı və ESP modulunuz növbəti dəfə açıldıqda avtomatik olaraq cihazıma qoşulacaq.

Addım 5: Veb interfeysi və onun kodu

Veb interfeysi və onun kodu
Veb interfeysi və onun kodu
Veb interfeysi və onun kodu
Veb interfeysi və onun kodu
Veb interfeysi və onun kodu
Veb interfeysi və onun kodu

Veb interfeysi, ESP8266 vasitəsi ilə əmrlərin Arduino -ya getdiyi bir istifadəçi interfeysi kimi xidmət edəcəyi üçün böyük əhəmiyyət kəsb edir. Veb interfeysimiz olduqca sadədir və düz HTML ilə kodlaşdırılmışdır. Bu interfeysdəki düymələr hər düyməni basdıqda URL parametri olan GET əmrini keçir. Aşağıda müvafiq URL parametrləri olan düymələrin siyahısı verilmişdir.

  1. Standart rənglər üçün 6 düymə - "/Qırmızı", "/Gre", "Blu", "/Whi", "/Gol", "Rai"
  2. RGB Dəyərlərindən istifadə edərək xüsusi rəng girişi - “? R = 255 & G = 255 & B = 255”
  3. Zolağı söndürün - "/Off"

Bəzi səbəblərdən Veb interfeys kodunu bura yerləşdirə bilmədim, bu kodu bu linkdən əldə edə bilərsiniz.

Addım 6: Alqoritm və Kod

Alqoritm və Kod
Alqoritm və Kod

Donanımı qurmadan əvvəl Arduinoya yüklənmiş kodu əldə etməlisiniz, çünki onu bir konteynerə yığmaq lazımdır və heç vaxt sonra edilə bilməz. Arduino kodunu başa düşməyinizə kömək edəcək alqoritmi yazdım.

Alqoritm:

  1. "AT+RST / r / n" əmrini göndərərək ESP8266 modulunu sıfırlayın.
  2. Cihazımızın qaynar nöqtəsinə bağlantının uğurlu olub -olmadığını öyrənmək üçün ESP8266 -dan verilən cavabı yoxlayın. Bağlandıqdan sonra "Server yaradılması" (aşağıya baxın) əmr sırasını ESP8266 -a verməyə başlayın.
  3. Hər giriş əmrləri üçün cavabı izləyin.
  4. Bütün bu əmrlər "OK / r / n" cavabı verməlidir, səhv cavab verildikdə əmri səhv cavab və ya "ERROR" ilə təkrarlayın.
  5. Bütün server yaradılması əmrləri ardıcıllığı uğurla yerinə yetirildikdə, Arduino'nun pin 12 -də Yaşıl LED -i yandırın. İstifadəçinin müştəri sorğusunu təmin etməsinə işarə olacaq.
  6. Arduinonu LAN və ya Şəbəkə daxilində hər hansı bir brauzerdən müştəri istəyini gözləməyə məcbur edin.
  7. Müştəri istəyi daxil olduqdan sonra əlaqə ID -ni yoxlayın və "AT+CIPSEND …" əmrini göndərin. uyğun bağlantı ID -ni daxil edərək.
  8. ESP8266, simvolları almağa hazır olduğunu göstərən '>' işarəsi ilə cavab verir. Bunu aldıqdan sonra əvvəlki addımda gördüyümüz veb səhifənin kodunu ESP8266 modulu vasitəsilə müştəri brauzerinə göndərin.
  9. İndi veb səhifə istifadəçinin müştəri brauzerində görünəcək, Arduino daha sonra müştəridən gələn "LED əmrləri" üçün müddətsiz bir tarama vəziyyətinə girəcək.
  10. Veb səhifə hər düyməni basmaq üçün unikal URL parametri təmin etmək üçün yazılmışdır, buna görə bir düyməyə basıldıqda ESP modulu bu unikal URL parametri ilə GET sorğusunu ötürəcəkdir.
  11. Arduino bu URL -ni emal etməli və buna uyğun olaraq RGB LED şeridinə nəzarət etməlidir.

Server yaradılması əmrləri:

  • AT
  • AT+CWMODE = 3
  • AT+CIPSTA = 192.168.43.253 (Android cihazı üçün)
  • AT+CIPMUX = 1
  • AT+CIPSERVER = 1, 80

Kod:

Bu layihənin işləməsi üçün bu "Adafruit Neopixel kitabxanasını" yükləməli, yükləməli və quraşdırmalısınız.

Bu layihə üçün Arduino kodunu bu linkdən əldə edə bilərsiniz -> "Arduino ilə işləyən yüngül rəngləmə çubuğu"

Addım 7: İşıq çubuğunu hazırlayın

Image
Image
İşıq çubuğunun hazırlanması
İşıq çubuğunun hazırlanması
İşıq çubuğunun hazırlanması
İşıq çubuğunun hazırlanması
İşıq çubuğunun hazırlanması
İşıq çubuğunun hazırlanması

Bu "Yüngül rəsm çubuğu" nu düzəltmək üçün bir video hazırladım, daha aydınlıq üçün baxın.

LED şeridinin ucuna telləri lehimləməklə başlayın. Əlaqəni gücləndirmək üçün üzərinə bir az isti yapışqan tətbiq etməyə davam edin. LED şeridinizi yapışdıra biləcəyiniz bir plastik zolaq tapın. IC -nin gəldiyi plastik qablaşdırma borusundan istifadə etdim. Evimdə çox şey var, buna görə də bundan istifadə etmək qərarına gəldim və mükəmməl uyğun gəldi.

Qablaşdırma borusunu və ya lazım olan ölçüdə istifadə edə biləcəyiniz hər şeyi kəsin. LED şeridini bəzi güclü yapışqanlardan istifadə edərək qablaşdırma borusuna yapışdırdım. İsti yapışqan bunun üçün yaxşı bir fikir ola bilməz, çünki həddindən artıq istilik LED -lərə zərər verə bilər və bu, baş vermək istədiyimiz son şeydir. Sonra qurutmaq üçün təxminən 20 dəqiqə qurudum.

Addım 8: Konteyner seçimi və çubuğun qurulması

Konteyner seçimi və çubuğun qurulması
Konteyner seçimi və çubuğun qurulması
Konteyner seçimi və çubuğun qurulması
Konteyner seçimi və çubuğun qurulması
Konteyner seçimi və çubuğun qurulması
Konteyner seçimi və çubuğun qurulması
Konteyner seçimi və çubuğun qurulması
Konteyner seçimi və çubuğun qurulması

Powerbank, Arduino, göstərici LEDləri və ESP8266 modulları bu konteynerə girəcəyi üçün bu olduqca vacib bir addımdır. Yuxarıdakıların hamısını yerləşdirə bilməsi üçün uyğun ölçüdə bir qab seçin. Silindrik bir qab seçmişəm ki, işləyərkən tutmağım asan olsun.

Silindrik bir seçim seçdiyim üçün, LED şeridinin üz tutacağı istiqaməti ox işarəsi ilə qeyd etdim. Məzmunu konteynerin içərisinə yerləşdirərkən mənə yol göstərəcək konteyneri işarələdim. Lehim silahı ilə konteyner qapağına kiçik bir çuxur qoyun. İçərisindəki işıq çubuğunu yerləşdirmək üçün kifayət qədər böyük bir çuxur hazırladığınızdan əmin olun.

Çubuğu qapağın içərisinə qoyduqdan sonra, yapışqan tabancası ilə möhürləyin və çubuğun sabit olduğundan və hərəkət etmədiyindən əmin olun.

Addım 9: Power Bank və Göstərici LED -lərin yığılması

Power Bank və Göstərici LED -lərin yığılması
Power Bank və Göstərici LED -lərin yığılması
Power Bank və Göstərici LED -lərin yığılması
Power Bank və Göstərici LED -lərin yığılması
Power Bank və Göstərici LED -lərin yığılması
Power Bank və Göstərici LED -lərin yığılması

Power Bank, bu layihədəki digər komponentlərə nisbətən olduqca ağır olacaq. Güc bankını konteynerdə çəkilmiş xəttin sol tərəfinə yerləşdirin. Bu səbəbdən əməliyyat zamanı hərəkət etməyəcəyinə əmin olmaq vacibdir. Bu məqsədlə bir Velcro yaması istifadə etdim və güc bankının ətrafına möhkəm sardım. Konteynerə başqa bir cüt Velcro yaması qoydum. Güc bankını Velcro yamasına yapışdırdım və onu olduqca möhkəm saxlayır və ehtiyacım budur.

Çəkilən xəttin tam əksinə bir keçid qoyun. Bu keçid bütün layihəni AÇMA/SÖNDÜRMƏK məqsədi daşıyır. Şalterin altında. İki LED -i (Qırmızı və Yaşıl) yerləşdirin və istinad üçün hər birini bir rezistorla lehimləyin (3 -cü addımda dövrə diaqramına baxın). LED və Şalter, işıq çubuğunun daxil olacağı istiqamətin düz əksinə olmalıdır. Bu, işıq çəkərkən LED -lərin istənməyən işıq müdaxiləsinin qarşısını almaq üçündür. Sökülmüş USB kabelini və bir neçə konnektoru son şəkildə göstərildiyi kimi düyməyə bağlayın. Arduino və ESP8266 modullarını gücləndirmək üçün bağlayıcı kabellər var.

Addım 10: Arduino və ESP8266 modullarını konteynerin içərisinə yığmaq

Arduino və ESP8266 Modullarının Konteynerin İçində Birləşdirilməsi
Arduino və ESP8266 Modullarının Konteynerin İçində Birləşdirilməsi
Arduino və ESP8266 Modullarının Konteynerin İçində Birləşdirilməsi
Arduino və ESP8266 Modullarının Konteynerin İçində Birləşdirilməsi
Arduino və ESP8266 Modullarının Konteynerin İçində Birləşdirilməsi
Arduino və ESP8266 Modullarının Konteynerin İçində Birləşdirilməsi

Arduino lövhəsini və iki yönlü məntiq səviyyəsi dəyişdiricisini tutan ESP8266 plagin modulunu bir araya gətirin. Tel çəkin, yapışdırın və bir araya gətirin. Bunu konteynerin içinə qoyduqdan sonra, bunu çox diqqətlə etdim, çünki tellərin heç birinin dolaşmadığından əmin olmalıyam. Bunun səbəbi daha az diametrli bir qab seçməyimdir. Ancaq parlaq tərəfdə konteyner çox rahatdır və ovuclarıma asanlıqla uyğun gəlir.

İşıq boyama çubuğundan olan telləri elektrik terminallarına və Arduinonun 6 -cı pininə qoşun. Bitirdikdən sonra konteynerin qapağını diqqətlə bağlayın.

Addım 11: Gizlət

Üstünü örtün
Üstünü örtün
Üstünü örtün
Üstünü örtün
Üstünü örtün
Üstünü örtün

Konteyneri qara lent və ya başqa bir material ilə örtün. Bu, işıq müdaxiləsinin işıq boyama işini pozmaması üçündür. Bunun səbəbi Arduino, ESP8266 və Power bankın içərisində LED -lərin olmasıdır. Onları açıq saxlamaq Fotoşəkillərə müdaxilə edə və korlaya bilər.

Bunun üçün qara lent istifadə etdim. İstədiyiniz hər hansı bir şeyi bu məqsədlə istifadə edə bilsəniz də. Bir dəfə WiFi ilə işləyən yüngül rəngləmə çubuğu artıq bəzi sərin rənglər çəkməyə hazırdır.

Addım 12: Test edin

Test edin
Test edin
Test edin
Test edin
Test edin
Test edin
Test edin
Test edin
  1. Açarı açın və Qırmızı LED yanmalıdır
  2. Yaşıl LED -in yanmasını gözləyin, bu ümumiyyətlə 5-10 saniyə ərzində baş verir və Arduino serverinin yaradıldığını göstərir.
  3. Yaşıl LED Yandırıldıqdan sonra brauzerinizi cihazınızda açın və 192.168.43.253 IP ünvanını daxil edin, URL -i işə salın.
  4. 5 -ci addımda gördüyümüz internet səhifəsi ekranınızda göstərilməlidir.
  5. İndi veb interfeysi ilə qarşılıqlı əlaqə qurun və LED şeridini idarə edin
  6. Gedin və sərin bir yüngül rəsm çəkin.

Addım 13: Yadda saxlamalı olduğunuz şeylər və daha çox şəkil

Yadda saxlamalı şeylər və daha çox fotoşəkil
Yadda saxlamalı şeylər və daha çox fotoşəkil
Yadda saxlamalı şeylər və daha çox şəkil
Yadda saxlamalı şeylər və daha çox şəkil
Yadda saxlamalı şeylər və daha çox şəkil
Yadda saxlamalı şeylər və daha çox şəkil
  • Bu layihə, ESP8266 -nın açıldıqdan sonra WiFi qaynar nöqtəsi ilə avtomatik əlaqə qurma qabiliyyətinə əsaslanır. ESP8266 və hotspot cihazınız bu layihədə istifadə etməzdən əvvəl ən azı bir dəfə cütləşməlidir.
  • Arduino, yalnız bir müştəri ünsiyyətini idarə etmək üçün proqramlaşdırılmışdır, yəni yalnız bir brauzer Arduino -dan LED -ləri idarə etməyi tələb edə bilər.
  • ESP8266 ilə Arduino tərəfindən server yaratmaq üçün gözləmə vaxtı var. Bu gözləmə müddətinin sonu yaşıl LED ilə bilinə bilər.
  • Yaşıl LED yandıqdan sonra brauzerinizdən müştəri sorğusunu başlatmağınız yaxşıdır. Problemsiz işləməsi üçün bütün layihəni ən az 2A mənbəyi ilə təmin etməlisiniz.
  • Bu layihə masa üstü Google Chrome və smartfonlar üçün Opera ilə uğurla sınaqdan keçirildi.

Ümid edirəm hamınız bu Təlimatlandırmanı bəyənirsiniz, bunu sınayın və nəticəsini mənə bildirin. Bu layihə üçün bir PCB dizayn etməyi planlaşdırırdım və tezliklə burada nəşr edəcəyəm. Əlavə təkmilləşdirmə fikirləri çox xoşdur.

Bu layihə, Təlimatlandırıcı yaratmaq üçün sənədlərin hazırlanması üçün çox vaxt sərf etdi. Buna dəyər olduğunu düşünürsünüzsə "LED Yarışması", "Arduino Müsabiqəsi" və "Uzaqdan idarəetmə yarışması" nda mənə səs verin. Başqa bir təlimatçı ilə görüşmək ümidi ilə

LED müsabiqəsi 2017
LED müsabiqəsi 2017
LED müsabiqəsi 2017
LED müsabiqəsi 2017

LED yarışmasında 2017 -ci ildə ikinci yeri tutdu

Tövsiyə: