Mündəricat:

3x3x3 Arduino Lib ilə LED Küp: 4 Adım (Şəkillərlə)
3x3x3 Arduino Lib ilə LED Küp: 4 Adım (Şəkillərlə)

Video: 3x3x3 Arduino Lib ilə LED Küp: 4 Adım (Şəkillərlə)

Video: 3x3x3 Arduino Lib ilə LED Küp: 4 Adım (Şəkillərlə)
Video: Arduino Shield Üretiyoruz! HaberDuino LiPo Shield || JLCPCB #1 2024, Noyabr
Anonim
3x3x3 LED Küp Arduino Lib ilə
3x3x3 LED Küp Arduino Lib ilə

LED kublarının qurulması ilə bağlı digər təlimatlar var, bu bir neçə səbəbdən fərqlidir: 1. Az sayda hazır komponentdən və birbaşa Arduino-ya bağlanan kancalardan ibarətdir. 2. Aydın, çoxalmaq üçün asan bir sxem, çoxlu fotoşəkillərlə təmin edilmişdir. 3. Kubun proqramlaşdırılmasını asanlaşdıran və daha ifadəli edən proqram üçün unikal bir yanaşma istifadə olunur. Lazım olan hissələr: - 1 Perfboard - 3 NPN Transistor (2N2222, 2N3904, BC547 və s.) - 12 Rezistor (~ 220 ohm və ya ~ 10k ohm) - 13 Başlıq (kişi və ya qadın) - 27 LED - Tel

Addım 1: LEDləri hazırlayın

LEDləri hazırlayın
LEDləri hazırlayın
LEDləri hazırlayın
LEDləri hazırlayın

Bu addım böyük ölçüdə LED Cube 4x4x4 -ə uyğundur, amma bunun yerinə 3x3x3 kub tikəcəyik. Bu ölçülü bir kub, əlavə sxem və mürəkkəblik tətbiq etmədən əldə etdiyi qədər böyükdür. Üç doqquz dəstə qruplaşdırılacaq 27 LED -ə ehtiyacımız olacaq. Bu dəstlərin hər birinə "səviyyə" kimi müraciət edəcəyəm. Bir səviyyədəki doqquz LED -in hər biri anodları (müsbət qurğular) vasitəsilə digər iki səviyyədəki müvafiq LED -ə qoşulur. Bunlara "sütunlar" deyilir. Bunun mənası yoxdursa, kubu qurduğumuz zaman özünü izah edəcək. Başlamaq üçün kiçik bir hurda ağacından bir qazma qurmaq üçün bir qazma istifadə edəcəyik. Biz onları lehimləyərkən cihaz LEDləri yerində saxlayacaq. Delikləri 5/8 düym (~ 15 mm) aralığında boşaltmağa qərar verdim, ancaq dəqiq məsafə kritik deyil. Lehim edərkən hərəkət etmələrini istəmədiyimiz üçün çuxur LED ətrafında sıx bir şəkildə yerləşməlidir. Jig bitdikdən sonra hər bir LEDin katotunu 90 dərəcə bir açı ilə bükəcəyik. Katod üç şəkildə müəyyən edilə bilər: 1) Qısa ayağıdır, 2) Dairəvi LED -in düz tərəfindədir, 3) LED -in içərisindəki daha böyük parçaya bağlıdır. Bütün LEDlər üçün katodu eyni istiqamətdə əydiyinizə əmin olun. İndi lehimləməyə hazırıq.

Addım 2: LEDləri lehimləyin

LEDləri lehimləyin
LEDləri lehimləyin
LEDləri lehimləyin
LEDləri lehimləyin
LEDləri lehimləyin
LEDləri lehimləyin
LEDləri lehimləyin
LEDləri lehimləyin

Yeni qurduğunuz cihazda LED -lərdən doqquzunu birinci yerə qoyun. Ayaqları saat əqrəbinin əksinə eyni istiqamətə yönəldəcək şəkildə yerləşdirin. Fotoşəkillərdə, anodun üzü yuxarıya baxaraq, saat yönünde işarə edən katod var, ancaq ayağımın LED -in görünüşünü maneə törətməməsi üçün bunu təkrar etsəm LEDləri çevirərdim. Kenarları bir -birinə lehimləyin, hər tərəfdən bir cüt. Lehim tətbiq edərkən ayaqları bir -birinə sıxışdırmaq üçün kiçik kliplərdən istifadə edin. Dörd tərəfin hər biri lehimləndikdən sonra, küncləri bir yerdə tutmaq üçün klipləri hərəkət etdirin və hər birinə lehim tətbiq edin. Nəhayət, orta LED -in katotunu yanlardan birinə lehimləyin və artıqlığı kəsin. Üç dəfə təkrarlayın. İndi doqquz LEDdən ibarət üç dəstə sahib olmalısınız. İki dəsti bir -birinin üstünə qoyun. LEDlər arasındakı məsafəni bərabər tutun. Boşluqdan rahat olduqdan sonra, ayaqları lehim edərkən möhkəm bir şəkildə saxlamaq üçün hər istiqamətdə iki klip istifadə edərək hər bir ayaq dəstini sıxa bilərsiniz. Yaxşı bir əlaqə əldə etmək üçün bir LED ətrafında əyilməyiniz lazım ola bilər. Dokuz cütün hər birini bir -bir lehimləyin. Bunu bir dəfə daha edin və kubla işiniz bitdi. Kubu perfboardun bir tərəfinə qoyun. Hər birini bir çuxurdan keçirərkən, doqquz ayağın bərabər şəkildə yerləşdirildiyinə əmin olun. Lövhəmdə hər ayaq dəsti arasında beş deşik var. Müxtəlif komponentlərə uyğun olaraq, taxtanın digər ucunda mümkün qədər çox yer buraxmaq istəyirsiniz. Yerləşdirmədən məmnun olduqdan sonra ayaqları yerində tutmaq üçün bir neçə klip əlavə edin. Dibindən çoxlu ayaqları sıxaraq buraxın, çünki bu, sonradan rezistorların lehimlənməsini asanlaşdıracaq. Lövhəni çevirin və yerində saxlamaq üçün ayaqların hər birini lehimləyin. Bütün ayaqları lehimləndikdən sonra kubu geri çevirin. Nəhayət, lövhənin altından aşağıya doğru hər bir səviyyədən bir qurğuşun lehimləməliyik. Bir parça möhkəm tel çıxarın və bir ucunda kiçik bir çəngəl bükün. Çəngəlləri mərkəzi LED ayaqlarından birinə asın və pervane taxtasındakı bir çuxurdan keçirin. Telin yerində qalması üçün çəngəlin ucunu lehimləyin. Digər iki səviyyə üçün təkrarlayın. Növbəti addım dövrənin qalan hissəsini qurmaqdır.

Addım 3: Dövrə qurun

Dövrə qurun
Dövrə qurun
Dövrə qurun
Dövrə qurun
Dövrə qurun
Dövrə qurun
Dövrə qurun
Dövrə qurun

Dövrə olduqca sadədir. Doqquz sütunun hər biri, cərəyanı məhdudlaşdıran bir rezistor vasitəsilə Arduino üzərindəki bir pinə bağlanacaq. Üç səviyyənin hər biri bir Arduino pimi ilə işə salındıqda NPN tranzistoru ilə yerə bağlanır. Arduino'da cəmi 12 çıxış pinindən istifadə edəcəyik, ancaq güc üçün 18 LED var. Hiylə budur ki, bir anda yalnız bir səviyyə yandırıla bilər. Bir səviyyə yerə qoşulduqda, bu səviyyədəki LED -lərin hər biri ayrı -ayrı doqquz digər Arduino sancağından biri ilə ayrı -ayrılıqda işləyə bilər. Səviyyələri kifayət qədər tez yandırsaq, hər üç səviyyənin eyni anda yandığı görünür. Dövr quraq. İlk addım doqquz cərəyan məhdudlaşdıran rezistor hazırlamaqdır. Bir pin üçün 220 ohm istifadə edirəm, bu da 22mA ətrafında çəkəcəkdir. Dəyər, istifadə olunan LED -lərdən asılı olaraq dəyişə bilər, lakin təxminən 135 ilə 470 ohm arasında qalır. Hər pin 40 mA -a qədər qaynaq edə bilir. Otağa qənaət etmək üçün rezistorları şaquli vəziyyətdə lehimləmək istəyirik. Bir ucu aşağıya bükün ki, hər iki uc bir -birinə paralel olsun. Bunu doqquz rezistor üçün edin. Rezistorlar hazır olduqdan sonra onları bir -bir lehimləyəcəyik. Rezistoru hər biri üçün ayrı bir tel istifadə etmək əvəzinə birbaşa digər komponentlərə lehimləyəcəyik. Rezistorun bir ucu bir sütuna, digəri isə başlığa bağlanacaq. Rezistorlara ən yaxın olan LED -lərin ilk sırasından başlayın və geri dönün. Hər bir sətir bitdikdən sonra, qısa bir keçidin qarşısını almaq üçün üst -üstə düşən telləri təcrid etmək üçün kiçik bir bant parçası istifadə edə bilərsiniz. Bitirdikdən sonra bunun necə görünəcəyini görmək üçün fotoşəkillərə və diaqrama baxın. İndi sütunlar yoldan çıxdıqda, növbəti addım səviyyələri idarə edən komponentləri lehimləməkdir. NPN tranzistorunun bazası 10k (və ya orada) cərəyan məhdudlaşdıran bir rezistor vasitəsilə Arduino pimi ilə aktivləşdiriləcək. Bu, cərəyanın LED -lərdən keçməsinə imkan verən müvafiq səviyyəni yerə bağlayacaqdır. Fotoşəkillərə və diaqrama baxın. LED-lər Arduino-dakı 2-10-cu pinlərə, səviyyələr isə aşağıdan yuxarıya doğru 11-13-cü pinlərə bağlanmalıdır. Fərqli bir quruluşa ehtiyacınız varsa, pinlər də proqramda konfiqurasiya edilə bilər. Dövrə artıq tamamlandı, proqrama keçməyin vaxtıdır!

Addım 4: Proqramdan istifadə

Proqramdan istifadə
Proqramdan istifadə
Proqramdan istifadə
Proqramdan istifadə

Bir LED kubunu idarə etmək üçün şəbəkənin ətrafında gəzən bir neçə kod nümunəsi tapdım. LED -ləri idarə etmək üçün hamısı böyük ikili və ya hex məlumatları tələb edirdi. Daha asan bir yol olduğunu düşündüm və öz proqramımı yazmağa başladım. İlk qərarım, proqram təminatını aparata əks etdirmək oldu. Bu, hər bir LED -in xam port məlumatlarından və ya ənənəvi x, y, z -dən istifadə etmək əvəzinə sütun və səviyyə ilə ünvanlanması demək idi. İkinci qərar, bir işığı yandırıb söndürmək və oradan qurmaq kimi əsas funksiyalardan başlamaq idi. Nəhayət, daha maraqlı effektlər üçün faydalı olan iki xüsusiyyəti təqdim etmək qərarına gəldim. Biri, əsas funksiyaların daha mürəkkəb nümunələr qurmasına imkan verən bir tampondur. Digəri, bir sıra LEDləri bir anda və ya bir anda yandıran bir ardıcıllıq funksiyasıdır. Kitabxana prosedur kodu və boş funksiyalar olaraq başladı. Oradan təkrar istifadə edilə bilən Arduino kitabxanası yaratmaq üçün təlimatı izləmək çox asan idi. Kitabxananı yüklədiyinizə və eskiz kitabçasına/kitabxanalara açdığınızdan əmin olun. Düzgün qurulubsa, Arduino proqramında Fayl> Nümunələr> LedCube> ledcube altında bir nümunə tapmalısınız. Kod Github-da gzip/arduino-ledcube-də də mövcuddur. Oxuduğunuz üçün təşəkkürlər!

Tövsiyə: