Mündəricat:
- Addım 1: Bu layihə üçün lazım olan hissələr
- Addım 2: PC qurun
- Addım 3: Layihənin kabel çəkilməsi
- Addım 4: Sonsuzluq Güzgüsünü yaradın
- Addım 5: Kod
Video: Sonsuzluq Saatı - Arduino - WS2813 və DS3231: 5 addım (şəkillərlə)
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:46
Sonsuzluq Saatı - Arduino - WS2813 və DS3231
Bir saat qurmaq istədim və Arduino ilə sonsuz bir saat hazırlamaqda əlimi sınamaq fikrini bəyəndim. İstədim ki, bunu ümumi elementlərdən düzəldim və proqramı özüm yazım.
Sonsuzluq Saatı nədir?
3D illüziya güzgü effekti, bir işıq şüasını qeyri -müəyyən (nəzəri olaraq sonsuz) dəfə dəfələrlə sıçraya bilən iki paralel yansıtıcı səth olduqda meydana gəlir. İşıq əslində məsafəni keçdiyi üçün əkslər uzaqlaşır. Infinity güzgüsünə rəngli LED -lər əlavə edərək, saat əqrəbləri kimi geri çəkilən rəngli işığı istifadə edərək analog saatı simulyasiya etməyə çalışırıq.
Bu təlimatda, Sonsuzluq Saatı yaratmaq üçün addımlar atacağam və sonra proqramdakı bəzi tənzimlənən parametrləri nəzərdən keçirəcəyəm.
Addım 1: Bu layihə üçün lazım olan hissələr
Parça siyahısı:
- Taydaelektronikada Arduino Uno 6 dollar
- Arduino uno üçün protoshield. Amazon -da 2.50 üçün birini buradan əldə edə bilərsiniz.
- DS3231 plus batareya. Amazon -da təxminən 3.00 üçün birini əldə edə bilərsiniz.
- 1 metr üçün WS2813 LED 144. Burada Amazonda 20 dollar.
- Taydaelectronics -də 470 OHM 1 W Karbon film müqaviməti.
- 1000uf 16V elektrolitik kondansatör Taydaelektronikada 9 qəpik
- 5v enerji təchizatı- Köhnə bir böyürtkən şarj cihazı istifadə etdim.
- 6 dairəvi güzgü. Amazonda təxminən 5 dollar
- Amazonda 10 ətrafında 6in Akril Disk
- Amazonda 2 - 6 "taxta tikmə halqaları (bəli doğru) hər biri 2 dollardır
- Gümüş bir tərəfli güzgü filmi. Ebay ən ucuzdur.
- Müxtəlif tellər.
- 3/8 "taxta kvadrat dübel HomeDepot 1.27 dollara
- köhnə taxta saat bazası və ya digər nümayiş stendi.
- 2 kiçik fermuar.
Prototip qalxanı tələb olunmur, ancaq Arduino -dan istifadə etmək istəsəniz, bu layihələrin hazırlanmasında çox lazımlı olduğunu görəcəksiniz. Gerekirse, prototip qalxanını çörək taxtası ilə dəyişdirin.
Bir lehimləmə dəmirinə də ehtiyacınız ola bilər.
Layihənin təxminən 40,00 dollara başa gələcəyini gözləyirdim
Addım 2: PC qurun
Bu ilk arduino layihənizdirsə:
- Arduino proqramını arduino.cc saytından yükləyin
- USB kabel ilə Arduino'yu PC -yə qoşun.
-
Proqramı işə saldıqdan sonra üç kitabxana qurmalısınız:
- "Eskiz" menyusuna, sonra "Kitabxanaları Daxil et" ə və sonra "Kitabxanaları İdarə et …" ə basın.
- İki kitabxananı quraşdırın: FastLED və RTClib. Daha ətraflı məlumat üçün şəkillərə baxın.
-
Github -dan Arduino eskizini alın
- Kodun sonunda nəzərdən keçirəcəyəm, buna görə də lazım olduqda onu dəyişdirə bilərsiniz.
- Bu nöqtədə proqramı yükləyin Infinity_Clock_DS3231_WS2813.ino
- Arduino yükləmək üçün Sketch və Yüklə bölməsinə keçin.
- Təlimatın son bölməsi konfiqurasiya edilə bilən bəzi parametrləri əhatə edir.
Eskizi indi yükləmək ən yaxşısıdır, çünki xarici güc əlavə edildikdən sonra onu PC -yə bağlamamaq daha yaxşıdır.
Addım 3: Layihənin kabel çəkilməsi
ProtoType Shield istifadə edirsinizsə, Arduino üzərinə qoyun.
Kablolama, layihənin ən mürəkkəb hissəsidir. Nə etdiyimi görməyinizə kömək etmək üçün şəkillər əlavə etdim. Yandırmadan əvvəl bütün əlaqələri iki dəfə yoxlamağı məsləhət görürəm.
DS3231 - Real vaxt saatı modulu
DS3231 modulunu çörək taxtasına qoyun və şəkildəki kimi bağlayın.
- Arduino Ground - GND
- Arduino 5V - VCC
- Arduino A4 -dən SDA -ya
- Arduino A5 -dən SCL -ə
Şəkildə 5v və Ground -u çörək taxtasında öz işinizlə əlaqələndirirəm, çünki sonradan xarici güc bağlamaq istəyəcəyik.
WS2813 LED şeridini bağlayın
- arduino 5V -dən 5V gücünə qədər.
-
Orta iki bağlayıcı artıq məlumat pinləridir. pin 7 -ə gedirlər
Pin7 və iki məlumat ucu arasında 470 OHM rezistor qoyduğunuzdan əmin olun
- Arduino Ground son bağlayıcıya qədər.
Xarici 5V enerji təchizatı bağlayın (LED şeridini arduino gücündən uzun müddət işlətmək məsləhət görülmür).
- Kabellərin arasına 1000uf elektrolitik kondansatör qoyun.
- Güc və zəmini Arduino Power (5V) və Ground (GND) ilə birləşdirin
Xarici gücü və USB -ni Arduino -ya eyni vaxtda bağlamağı məsləhət görmürəm.
Addım 4: Sonsuzluq Güzgüsünü yaradın
Sonsuzluq Güzgü qurmaq üçün addımlar:
- Filmi akril laklara tətbiq edin. Bu, bir tərəfli aynanız olacaq.
- Akrilik diski Nakış halqasına qoyun. Sürüşməməsi üçün vidayı sıxın
- Güzgünü digər Nakış halqasına qoyun. Vidayı aşağı salın.
- Kvadrat dübeli kiçik hissələrə kəsin. təxminən 1/2"
-
LED şeridini dairənin içərisinə işarə edərək döndərin.
- Ledi yerində saxlamaq üçün fermuar bağlarından istifadə edin.
- Fermuar bağlamaq üçün bir çentik kəsmək lazım ola bilər.
-
Döngəni güzgüyə qoyun
- Aralıq kimi taxta bloklardan istifadə edin
- Blokları yerə yapışdırın. Ledləri yerində saxlayacaq qədər etibarlı olmalıdırlar.
- Akrilik güzgünü güzgü/LED -lərin üstünə qoyun və yapışdırın.
Addım 5: Kod
Proqram Real Time Clock kitabxanasından və Fastled kitabxanasından istifadə edir.
Davranışı fərdiləşdirmək üçün bəzi kod parçaları.
- OFSET - üst -üstə düşmədir. Proqram, üst -üstə düşmənin LED0 -dən olmasını gözləyir. 3 LED ofsetim var.
- CLOCKSTART - günorta saatının olduğu yerdir. LED 30, elektrik əlaqələrinə zidd olaraq qoyur.
HTML rənglərindən istifadə etmək üçün proqramı yazdım. Onları https://htmlcolorcodes.com/ saytından əldə edə bilərsiniz, sadəcə proqramdakı # nömrəsini 0x ilə əvəz edin.
Səhər/axşam fonunu dəyişə bilərsiniz
- backgroundAM = 0x070707;
- backgroundPM = 0x646D7E;
Saat LED -ləri:
- hourHand = 0x000FFF;
- minHand = 0x00CC00;
- secHand = 0xcc0000;
Vurğulamaq üçün saat əli üçün 3 LED -ə malik olmaq üçün bir seçim əlavə etdim, ancaq fərqləndirmək üçün ortanın hər iki tərəfindəki rəngi dəyişməyə icazə verdim.
- theeledhour = doğru; // doğru və ya yanlış edə bilərsiniz
- extraHourHand = 0x00001F;
Başqa bir gözəl xüsusiyyət, RTClib, DS3231 -in batareyanın çıxarıldığını aşkarlayacaq və kompüterin tərtib edilmə vaxtını təyin edəcək. Yeni DS3231 üçün yaxşı bir xüsusiyyətdir.
Sənədin əvvəlində eskiz almamısınızsa, GitHub -da tapa bilərsiniz
Bu Təlimatı oxuduğunuz üçün təşəkkürlər. Oğlum kömək etdi və bizim üçün əyləncəli bir layihə oldu. Ümid edirəm ki, optik yarışmasında nəzərə alınacağıq.
Tövsiyə:
Sonsuzluq güzgü saatı hazırlayın: 15 addım (şəkillərlə)
Sonsuzluq Güzgü Saatı yaradın: Əvvəlki bir layihədə sonsuzluq güzgüsü qurmuşdum, burada əsas məqsədim onu saata çevirmək idi. (Rəngarəng Sonsuzluq Güzgüsü düzəldin) Bunu qurduqdan sonra bunu davam etdirmədim, çünki sərin görünsə də, bir neçə şey var idi
Potensiometrlərlə Sonsuzluq Güzgü Saatı: 3 addım
Potensiometrlərlə Sonsuzluq Güzgü Saatı: Sonsuzluq güzgüsünə rast gəldim və həqiqətən də sərin olduğunu gördüm. Bu mənə sonsuz güzgü düzəltmək üçün ilham verdi, amma bir məqsəd üçün buna ehtiyacım var idi. Beləliklə, işləyən bir sonsuz güzgü saatı düzəltmək qərarına gəldim. Bu imkan verən sonsuz güzgüdür
3D Çaplı Sonsuzluq Saatı: 3 Adım (Şəkillərlə birlikdə)
3D Çaplı Sonsuzluq Saatı: Deməli, bu saatın fikri, şəklin bir tərəfində saat əqrəbinin, digər tərəfində dəqiqənin göstəriləcəyi sonsuzluq simvolu şəklində etməkdir. dizayn və ya kod üçün
Sonsuzluq güzgü saatı: 5 addım (şəkillərlə)
Sonsuzluq Güzgü Saatı: Əsasən dekorasiya üçün əl işidir, saatda bir neçə LED işıq var, açıldıqda yataq otağı üçün gözəl bir bəzəkdir. Söndürüldükdə kiçik bir güzgüdür. Əlbəttə ki, bu bir saatdır
Öz BT Tətbiqi ilə RGB Sonsuzluq Saatı: 15 Addım (Şəkillərlə)
Öz BT Tətbiqi ilə RGB Sonsuzluq Saatı: Normal Rəqəmsal və Analog saatlar darıxdırıcıdır, buna görə Dial, Saat əli, Dəqiqə əli və İkinci əl üçün xüsusi rənglərlə sərin bir saat hazırlamağı planlaşdırın. Bunun üçün əvvəlcə Ünvanlı RGB LED şeridi istifadə edərək saatı inkişaf etdirmək istəyirəm. Sonra A ilə ünsiyyət üçün