Mündəricat:

Animasiyaların işlənməsini təmin edən Arduino LED Düyməli Pad: 36 addım (şəkillərlə)
Animasiyaların işlənməsini təmin edən Arduino LED Düyməli Pad: 36 addım (şəkillərlə)

Video: Animasiyaların işlənməsini təmin edən Arduino LED Düyməli Pad: 36 addım (şəkillərlə)

Video: Animasiyaların işlənməsini təmin edən Arduino LED Düyməli Pad: 36 addım (şəkillərlə)
Video: Qaraciyərin Öldüyünü Göstərən 14 Əlamət! 2024, Noyabr
Anonim
Image
Image
Qenerasiya animasiyalarını idarə edən Arduino LED düymə yastığı
Qenerasiya animasiyalarını idarə edən Arduino LED düymə yastığı
Qenerasiya animasiyalarını idarə edən Arduino LED Düyməli Pad
Qenerasiya animasiyalarını idarə edən Arduino LED Düyməli Pad

WhatThis düymə yastığı bir PCB və Sparkfun tərəfindən istehsal olunan digər komponentlərdən istifadə etməklə hazırlanır. Arduino Mega ilə idarə olunur. Hər bir düymə gözəl və çirkin və basmaqdan razıdır və içərisində bir RGB LED var! İşlətmədə kodladığım animasiyaları idarə etmək üçün istifadə edirəm. Düymələr paneli bir düyməyə basıldıqda hansı düymənin olduğunu bildirərək mesaj göndərir. İşləmə bu mesajları alır və basıldığından asılı olaraq eskizdəki dəyişənləri dəyişir.

Niyə

LED -lər sərindir. Düymələri basmaq əyləncəlidir. Cizgi həndəsi naxışlar gözəldir. Üçünü də birləşdirmək istədim. Bu layihəni bir partiyaya apardım, divardakı görüntüləri yansıtdım və insanların düymələrlə oynamasına icazə verdim. Bir VJ tərəfindən daha çox performanslı bir şəkildə istifadə edilə bilər, midi nəzarətçi kimi, lakin daha çox DIY.

Necə

Bu layihənin dörd əsas hissəsi var.

Əlavə edilmiş Youtube videosu, düymə düyməsinin necə bir araya gəldiyinə yaxşı baxmaq imkanı verir. Bu Təlimat Arduino və İşləmə kodunu əhatə edir - (bunlar üçün əlavə videolar işdədir)

  1. Düymə yastığını bir araya gətirmək - 1 -ci addımda başlayır

    Bu, komponentlərin hazırlanmasını və PCB -yə lehimlənməsini əhatə edir

  2. Arduino kodu - 10 -cu addımda başlayır

    Bunun üçün danışacağım matris tarama anlayışına ehtiyacımız var.

  3. İşləmə kodu - 24 -cü addımda başlayır

    Burada sonsuz imkanlar var, indiyə qədər etdiyim bir misalla danışacağam.

  4. Arduinonun Mesajların İşlənməsinə göndərilməsi - Göndərmək üçün 16 -cı addım, Qəbul üçün 30-31

    Bu gözəl və sadədir, mesajı serial bağlantısı ilə göndərir.

Səviyyə

Dərsliklərimi elə bir şəkildə yazıram ki, heç bir məlumatı olmayan biri ən azından izləyə bilsin. Əvvəlcə Qenerasiya haqqında bəzi giriş dərslərini izləməyiniz faydalı ola bilər. Daniel Shiffmanın YouTube kanalından başlayardım.

Kod

Bütün kodlar (Arduino və İşləmə) buradakı githubumdadır.

Kreditlər

Bu təlimatdan bir dəstə öyrəndim https://learn.sparkfun.com/tutorials/button-pad-ho… və Arduino kodunun çoxu oradadır, baxmayaraq ki, oradakı nümunələrdən bir az fərqli işləmək üçün redaktə etmişəm..

Addım 1: Komponentlər

Komponentlər!
Komponentlər!
Komponentlər!
Komponentlər!
Komponentlər!
Komponentlər!
Komponentlər!
Komponentlər!
  • 16 x 5 mm RGB LEDləri (ünvanlı olanlar deyil, adi adi katodlar)
  • 16 x 1N4148 diodları
  • Silikon düymə yastığı
  • Düymə yastığı PCB
  • Arduino Mega
  • Keçid kabelləri

(Sparkfun -dan hər şeyi bir az daha səliqəli saxlamaq üçün əldə edə biləcəyiniz bir çox şey var, amma mən bunu etməmişəm)

Addım 2: Diodları hazırlayın

Diodları hazırlayın
Diodları hazırlayın
Diodları hazırlayın
Diodları hazırlayın
Diodları hazırlayın
Diodları hazırlayın

Hər bir diodu bükün və sonra PCB -dən itələyin.

Ayaqları düyməni istədiyimiz tərəfə yapışdırır. Beləliklə, diodu yenidən çıxarın və ayaqları qısa kəsin. (Həyatınızı asanlaşdıracaq ayaqlarınızı lövhədə yuyulmasına imkan verən bəzi kəsikləriniz ola bilər, ancaq məndə normal qayçı vardı, buna görə də onları kifayət qədər qısa kəsmək üçün çıxartmalı oldum.)

Qısa kəsmədən əvvəl ayaqları əymək və PCB -dən itələmək çox vacibdir. Onları əvvəlcə qısaltsanız, şəklini bükə bilməyəcəksiniz.

Bu kiçik qarışqa bənzər şeylərdən 16 olun.

Addım 3: Diodları lövhəyə lehimləyin

Lövhəyə Diodları Lehimləyin
Lövhəyə Diodları Lehimləyin
Lövhəyə Diodları Lehimləyin
Lövhəyə Diodları Lehimləyin
Lövhəyə Diodları Lehimləyin
Lövhəyə Diodları Lehimləyin

Diodların hər birini yenidən taxtaya yerləşdirin. Diyotun istiqamətini yoxlamaq vacibdir. PCB üzərindəki xətt ilə üst -üstə düşən bir tərəfində qara bir xətt var. (Şəkilə baxın)

Diodları yerinə yetirmək çox çətindir, buna görə də dedim ki, ayaqlarınızı çıxarmadan yuyub kəsməyinizə imkan verən kəsikləriniz varsa, həyatınızı asanlaşdıracaq. Məndə yox idi, buna görə cımbızla yenidən yerləşdirdim, bu da bir az kömək etdi.

Diodların hər birini yerinə lehimləyin.

Addım 4: 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
LEDləri hazırlayın
LEDləri hazırlayın
LEDləri hazırlayın
LEDləri hazırlayın

LEDləri lövhədən itələyin və sonra ayaqlarınızı kəsin. Eynilə diodlarda olduğu kimi; Ayaqları taxtadan itələmək, ayaqları kəsmədən əvvəl düzgün açılara yaymaq vacibdir.

Ayaqları düzgün uzunluğa kəsməklə bir az sınaq və səhv var. Onları çox uzun etsəniz, yapışacaqlar, amma çox qısa və LED -i geri qaytarmaq çətindir.

Bu kiçik kəsilmiş adamlardan 16 -sı hazırlayın.

Addım 5: LEDləri lövhəyə lehimləyin

LEDləri lövhəyə lehimləyin
LEDləri lövhəyə lehimləyin
LEDləri lövhəyə lehimləyin
LEDləri lövhəyə lehimləyin
LEDləri lövhəyə lehimləyin
LEDləri lövhəyə lehimləyin

Bütün LEDləri lövhəyə geri itələyin.

Oriyentasiya burada yenidən vacibdir. LED -lərin bir tərəfi düz bir kənara malikdir və bu, PCB diaqramında dairənin düz kənarına uyğun olmalıdır. (Şəkilə baxın)

Silikon yastığı taxtanın üstünə qoyaraq və düymələrin basılmasına müdaxilə etmədiyini yoxlayaraq LED -lərin kifayət qədər uzaqlaşdırıldığına baxın.

LEDləri lövhəyə lehimləyin.

Qeyd: Mənə o vaxtdan bəri ayaqların arxadan yapışmasının o qədər də önəmli olmadığı üçün LED -ləri içəri itələyib arxadan lehimləyib sonra ayaqlarını kəsə biləcəyinizə işarə olundu..

Addım 6: Kifayət qədər Jumper Kabellərini Sıralayın

Kifayət qədər Jumper Kabellərini Sıralayın
Kifayət qədər Jumper Kabellərini Sıralayın

Gəlin lövhə haqqında bir az danışaq. Lövhə 4 sütun və 4 satır LED/Düymə ilə düzülmüşdür.

Sütunların hər biri 2 LED bağlantısı, digəri isə LED şeridi üçün, digəri isə düymə zəmini üçün. Hər satır üçün 4 əlaqə tələb olunur, çünki qırmızı, yaşıl və mavi kanallar üçün ayrıca bir əlaqə lazımdır. düymə girişi. Bu bağlantıların hər biri üçün seçdiyim kabel rəngləri və pin nömrələri.

Sıra Nə üçündür Kabel rəngi Pin nömrəsi PCB etiketi
Sıra 1 Qırmızı Qırmızı 22 QIRMIZI 1
Yaşıl Yaşıl 23 YAŞIL1
Mavi Mavi 30 MAVİ1
Düymə girişi Sarı 31 AÇIŞ 1
2 -ci sıra Qırmızı Qırmızı 24 QIRMIZI 2
Yaşıl Yaşıl 25 YAŞIL2
Mavi Mavi 32 MAVİ2
Düymə girişi Sarı 33 SWITCH2
3 -cü sıra Qırmızı Qırmızı 26 QIRMIZI 3
Yaşıl Yaşıl 27 YAŞIL3
Mavi Mavi 34 MAVİ 3
Düymə girişi Sarı 35 3 -ə keçin
4 -cü sıra Qırmızı Qırmızı 28 QIRMIZI 4
Yaşıl Yaşıl 29 YAŞIL4
Mavi Mavi 36 MAVİ 4
Düymə girişi Sarı 37 4 -ə keçin
Sütun Nə üçündür Kabel rəngi Pin nömrəsi PCB etiketi
Kol 1 LED torpaq 38 LED-GND-1
Düymə zəmini Qara 39 SWT-GND-1
Kol 2 LED torpaq 40 LED-GND-2
Düymə zəmini Qara 41 SWT-GND2
Kol 3 LED torpaq 42 LED-GND-3
Düymə zəmini Qara 43 SWT-GND3
Kol 4 LED torpaq 44 LED-GND4
Düymə zəmini Qara 45 SWT-GND4

Addım 7: Jumper Kabellərini hazırlayın

Jumper Kabellərini hazırlayın
Jumper Kabellərini hazırlayın
Jumper Kabellərini hazırlayın
Jumper Kabellərini hazırlayın

Hər bir tullanan kabelin bir kişi ucu və bir ucu bir neçə mm tel kəsilmiş olması lazımdır. Soyulmuş tel parçalarını tutmaq üçün bir növ konteynerdən istifadə etməyi sevirəm, əks halda mənzilimin hər tərəfinə axır və bəlkə də parıldamaqdan daha pisdir.

Adım 8: Tullanan Kabelləri Lövhəyə Lehimləyin və Onları Fişə Bağlayın

Jumper kabellərini lövhəyə lehimləyin və onları bağlayın
Jumper kabellərini lövhəyə lehimləyin və onları bağlayın
Jumper Kabellərini Lövhəyə Lehin və Onları Daxil Edin
Jumper Kabellərini Lövhəyə Lehin və Onları Daxil Edin

Kabelləri PCB -də düzgün yerlərə lehimləmək və Arduino -da düzgün sancaqlara bağlamaq üçün bir neçə addım geri çəkilmiş qrafikdən istifadə edin.

Addım 9: Hazır olun

Yaradıldı!
Yaradıldı!

Şənliklə bəzi (hələ də işləməyən) düymələri basmaq üçün bir az vaxt ayırın və sonra bəzi kodlara keçək!

Addım 10: Şematik

Sxematik
Sxematik

Bu, PCB -nin və ona lehimlədiklərimizin sxemidir.

Boz qutuların hər biri düymə / LED kombinasiyalarından birini təmsil edir. Əgər bu çox mürəkkəb görünürsə (ilk dəfə gördüyümdə mənə elə gəldi), narahat olmayın, parçalayacağam.

Yalnız kodu özünüz araşdırmaq istəyirsinizsə, burada mənim githubum var.

Addım 11: Sadəcə Düymələr

Sadəcə Düymələr
Sadəcə Düymələr
Sadəcə Düymələr
Sadəcə Düymələr

LEDlər və düymələr əslində bir -birindən ayrıdır (Arduino ilə əlaqəli olanların hamısı istisna olmaqla), buna görə əvvəlcə düymələrə baxaq.

Hər boz qutuda bir düymə və bir diod var (lehimlədiklərimiz - bunların məqsədini bir azdan izah edəcəyəm).

Qeyd: Əminəm ki, bu bəzi insanlar üçün çox açıqdır, amma bunu ilk dəfə anlamağa başlayanda əmin deyildim, ona görə də deyəcəyəm! Satırlar (yaşıl rəngdə) və sütunlar (mavi rəngdə) bir -birinə bağlı deyildir, sadəcə bir -birinin üstünə qoyulur. Əşyalar yalnız kiçik bir qara nöqtə olduqda bağlanır. Düymə açarlarından birinin bağlanması, satır və sütun arasında əlaqə yaradır.

Addım 12: Düymə pinlərini qurun

Düymə pinlərini qurun
Düymə pinlərini qurun
Düymə pinlərini qurun
Düymə pinlərini qurun
Düymə pinlərini qurun
Düymə pinlərini qurun

Düymələr üçün sütunları çıxış olaraq, satırları isə giriş olaraq istifadə edəcəyik.

Bir düymənin basıldığını yoxlaya biləcəyik, çünki bir satır və sütun arasında bir əlaqə varsa, çıxışdan gələn gərginlik girişə çatacaq. Başlamaq üçün, setup () bölməsində bütün sütunlara yüksək gərginlik veririk. Satırları girişləri çəkmək üçün təyin etdik ki, bu da standart olaraq yüksək oxuduqları deməkdir.

Addım 13: Tarama

Skan edilir
Skan edilir
Skan edilir
Skan edilir
Skan edilir
Skan edilir

Döngədə, scan () adlı bir funksiya bir anda bir sütundan keçir və gərginliyini aşağı olaraq təyin edir.

Sonra hər bir düymə bağlantısı satırına baxır, onlardan birinin aşağı oxuduğunu görmək üçün.

Bir düymə satırı aşağı oxuyursa, bu, o satırı və sütunu birləşdirən düymənin itildiyini bildirir.

Addım 14: Bütün düymələr eyni şəkildə yaradılmır

Düyməni tez və möhkəm basarsanız, sütundan satıra gərginlik ötürülməsi gözəl və təmiz olacaq.

Ancaq bir az yavaş və ya iri bir şəkildə itələsə, düymə paneli ilə PCB kontaktları arasında yaxşı bir əlaqə yaranana qədər gərginlik bir qədər sarsıla bilər.

Bu, bir insanın yalnız bir olduğunu düşündüyü bir düyməni basması arduino tərəfindən bir neçə ayrı basma kimi şərh edilə biləcəyi mənasına gəlir.

Tövsiyə: