Cuprins:
- Pasul 1: Componentele
- Pasul 2: Pregătiți diodele
- Pasul 3: lipiți diodele pe tablă
- Pasul 4: Pregătiți LED-urile
- Pasul 5: lipiți LED-urile pe placă
- Pasul 6: Sortează suficient cabluri jumper
- Pasul 7: Pregătiți cablurile Jumper
- Pasul 8: lipiți cablurile jumper pe placă și conectați-le
- Pasul 9: Construiți terminat
- Pasul 10: Schematic
- Pasul 11: Doar butoanele
- Pasul 12: Configurați pinii butonului
- Pasul 13: scanare
- Pasul 14: Nu toate butoanele sunt create la fel
Video: Buton LED Arduino care conduce procesarea animațiilor: 36 de pași (cu imagini)
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:44
Ce acest buton este fabricat folosind un PCB și alte componente fabricate de Sparkfun. Este condus de un Arduino Mega. Fiecare buton este apăsat și plăcut și satisfăcător de apăsat și are un LED RGB în interior! L-am folosit pentru a controla animațiile pe care le-am codat în Procesare. Tasta de butoane trimite un mesaj ori de câte ori este apăsat un buton, spunând care buton este. Prelucrarea primește aceste mesaje și modifică variabilele în schiță în funcție de ceea ce a fost apăsat.
De ce
LED-urile sunt reci. Butoanele sunt distractive de împins. Modelele geometrice animate sunt frumoase. Am vrut să le combin pe toate trei. Am dus acest proiect la o petrecere, am proiectat imaginile pe perete și am lăsat oamenii să se joace cu butoanele. Ar putea fi, de asemenea, utilizat de un VJ într-un mod mai performant, la fel ca un controler midi, dar mai mult DIY.
Cum
Acest proiect are patru părți principale.
Videoclipul Youtube atașat oferă o privire bună asupra modului în care butonul de butoane merge împreună. Acest instructable acoperă atât codul Arduino, cât și codul de procesare - (videoclipuri suplimentare pentru acestea sunt în lucru)
-
Punerea butonului împreună - Începe la Pasul 1
Aceasta implică pregătirea componentelor și lipirea acestora pe PCB
-
Codul Arduino - Începe la Pasul 10
Pentru aceasta, avem nevoie de o înțelegere a scanării matriciale, prin care voi vorbi.
-
Codul de procesare - Începe la Pasul 24
Există nenumărate posibilități aici, voi vorbi printr-un exemplu pe care l-am făcut până acum.
-
Obținerea Arduino-ului să trimită mesaje către Procesare - Pasul 16 pentru trimitere, Pasul 30-31 pentru primire
Acest lucru este frumos și simplu, trimite mesajul printr-o conexiune serială.
Nivel
Încerc să îmi scriu tutorialele în așa fel încât cineva fără absolut cunoștințe să poată urma cel puțin. S-ar putea să vă fie de ajutor să vizionați mai întâi câteva tutoriale introductive despre procesare. Aș începe cu canalul YouTube al lui Daniel Shiffman.
Cod
Tot codul (Arduino și Procesare) se află aici pe github.
credite
Am învățat o grămadă din acest tutorial https://learn.sparkfun.com/tutorials/button-pad-ho… și o mare parte din codul Arduino este de acolo, deși l-am editat pentru a funcționa ușor diferit de oricare dintre exemplele de acolo.
Pasul 1: Componentele
- LED-uri RGB 16 x 5 mm (nu sunt adresabile, doar cele obișnuite cu catod obișnuit)
- 16 x diode 1N4148
- Buton din silicon
- PCB cu buton
- Arduino Mega
- Cabluri jumper
(Există, de asemenea, o grămadă de lucruri pe care le poți obține de la Sparkfun pentru a adăuga totul mai îngrijit, dar nu am făcut asta)
Pasul 2: Pregătiți diodele
Îndoiți fiecare diodă și apoi împingeți-o prin PCB.
Picioarele ies din partea butonului, ceea ce nu vrem. Deci scoateți din nou dioda și tăiați picioarele scurt. (S-ar putea să aveți câteva tăieturi care vă vor permite să tăiați picioarele la culoare cu scândura în timp ce este încă acolo, ceea ce vă va ușura viața, dar am avut doar foarfece normale, așa că a trebuit să le scot pentru a le tăia suficient de scurt.)
Este foarte important să îndoiți picioarele și să le împingeți prin PCB înainte de a le tăia scurt. Dacă le tai mai întâi scurt, nu le vei putea îndoi în formă.
Faceți 16 dintre aceste mici chestii asemănătoare furnicilor.
Pasul 3: lipiți diodele pe tablă
Așezați fiecare dintre diode înapoi în tablă. Este important să verificați orientarea diodei. Are o linie neagră pe o parte care se aliniază cu linia de pe PCB. (Vezi imaginea)
Punerea în funcțiune a diodelor este oarecum complicată, motiv pentru care am spus că dacă aveți fragmente care vă vor permite să tăiați picioarele la culoare fără a le îndepărta, vă va ușura viața. Nu aveam asta, așa că am folosit o pensetă pentru a le pune înapoi, ceea ce a ajutat puțin.
Lipiți fiecare dintre diode în loc.
Pasul 4: Pregătiți LED-urile
Împingeți LED-urile prin tablă și apoi tăiați picioarele. La fel ca în cazul diodelor; Este important să împingeți picioarele mai întâi prin tablă, pentru a le răspândi la unghiurile corecte, înainte de a tăia picioarele.
Există un pic de încercare și eroare cu tăierea picioarelor la lungimea potrivită. Dacă le faceți prea lungi, vor ieși, dar prea scurte și este dificil să readuceți LED-ul înăuntru.
Pregătiți 16 dintre acești băieți amputați.
Pasul 5: lipiți LED-urile pe placă
Împingeți toate LED-urile înapoi în placă.
Orientarea este din nou importantă aici. O parte a LED-urilor are o margine plană și aceasta ar trebui să se alinieze cu marginea plană a cercului de pe diagrama PCB. (Vezi imaginea)
Vedeți dacă LED-urile sunt împinse suficient de mult, punând tamponul de silicon peste bord și verificând dacă nu interferează cu butoanele care sunt apăsate.
Lipiți LED-urile pe placă.
Notă: De atunci mi s-a subliniat că, din moment ce nu contează atât de mult dacă un picior de picioare iese pe spate, ai putea să împingi LED-urile prin ele, să le lipi în spate și apoi să le tai.
Pasul 6: Sortează suficient cabluri jumper
Să vorbim puțin despre tablă. Placa este aranjată în 4 coloane și 4 rânduri de LED-uri / Butoane.
Fiecare dintre coloane necesită 2 conexiuni, una pentru masa LED și una pentru masa butonului. Fiecare dintre rânduri necesită 4 conexiuni, deoarece avem nevoie de o conexiune separată pentru canalele roșu, verde și albastru, precum și o conexiune pentru Iată culorile cablului și numerele de pin pe care le-am selectat pentru fiecare dintre aceste conexiuni.
Rând | Pentru ce este | Culoarea cablului | Numarul pin | Etichetă PCB |
Rândul 1 | roșu | roșu | 22 | RED1 |
Verde | Verde | 23 | VERDE1 | |
Albastru | Albastru | 30 | ALBASTRU1 | |
Introducere buton | Galben | 31 | COMUTATOR 1 | |
Rândul 2 | roșu | roșu | 24 | ROSU 2 |
Verde | Verde | 25 | VERDE2 | |
Albastru | Albastru | 32 | ALBASTRU2 | |
Introducere buton | Galben | 33 | COMUTATOR2 | |
Rândul 3 | roșu | roșu | 26 | RED3 |
Verde | Verde | 27 | VERDE3 | |
Albastru | Albastru | 34 | ALBASTRU3 | |
Introducere buton | Galben | 35 | COMUTATOR3 | |
Rândul 4 | roșu | roșu | 28 | RED4 |
Verde | Verde | 29 | VERDE4 | |
Albastru | Albastru | 36 | ALBASTRU4 | |
Introducere buton | Galben | 37 | COMUTATOR4 |
Coloană | Pentru ce este | Culoarea cablului | Numarul pin | Etichetă PCB |
Col 1 | Masă cu LED | alb | 38 | LED-GND-1 |
Buton la sol | Negru | 39 | SWT-GND-1 | |
Col 2 | Masă cu LED | alb | 40 | LED-GND-2 |
Buton la sol | Negru | 41 | SWT-GND2 | |
Col 3 | Masă cu LED | alb | 42 | LED-GND-3 |
Buton la sol | Negru | 43 | SWT-GND3 | |
Col 4 | Masă cu LED | alb | 44 | LED-GND4 |
Buton la sol | Negru | 45 | SWT-GND4 |
Pasul 7: Pregătiți cablurile Jumper
Fiecare cablu jumper are nevoie de un capăt tată și un capăt care este dezbrăcat de câțiva mm de sârmă. Îmi place să folosesc un fel de container pentru a captura biți de sârmă dezbrăcate, altfel ajung în tot apartamentul meu și este probabil mai rău decât sclipici.
Pasul 8: lipiți cablurile jumper pe placă și conectați-le
Utilizați diagrama de la câțiva pași înapoi pentru a obține cablurile lipite în locurile corecte de pe PCB și conectate la pinii corecți de pe Arduino.
Pasul 9: Construiți terminat
Luați un moment mic pentru a apăsa celebrativ câteva butoane (încă nefuncționale) și apoi să intrați în cod!
Pasul 10: Schematic
Aceasta este o schemă a PCB-ului și a lucrurilor pe care le-am lipit.
Fiecare casetă gri reprezintă una dintre combinațiile de butoane / LED-uri. Dacă acest lucru pare foarte complicat (mi-a făcut-o prima dată când l-am văzut), atunci nu vă faceți griji, o să vă descompun.
Dacă doriți doar să căutați singur codul, este pe github-ul meu aici.
Pasul 11: Doar butoanele
LED-urile și butoanele sunt de fapt separate una de cealaltă (în afară de toate fiind conectate la Arduino), așa că permiteți să ne uităm mai întâi la butoane.
Fiecare cutie gri conține un buton și o diodă (pe cele pe care am lipit - voi explica puțin scopul celor).
Notă: Sunt sigur că acest lucru este foarte evident pentru unii oameni, dar nu eram sigur de asta când am început să descopăr acest lucru, așa că o să spun! Rândurile (în verde) și coloanele (în albastru) nu sunt conectate, sunt doar așezate una peste cealaltă. Lucrurile sunt conectate numai acolo unde există un punct negru mic. Închiderea unuia dintre butoanele de comutare creează o conexiune între rând și coloană.
Pasul 12: Configurați pinii butonului
Pentru butoane, vom folosi coloanele ca ieșiri și rândurile ca intrări.
Vom putea verifica dacă este apăsat un buton, deoarece dacă există o conexiune între un rând și o coloană, atunci tensiunea de la ieșire va ajunge la intrare. Pentru a începe, în setare () vom emite o tensiune înaltă la toate coloanele. Am setat rândurile să fie intrări în sus, ceea ce înseamnă că, în mod implicit, citesc, de asemenea, mare.
Pasul 13: scanare
În buclă, o funcție numită scan () trece printr-o coloană la un moment dat și setează tensiunea sa să fie scăzută.
Apoi se uită la fiecare rând de conectare a butoanelor, pentru a vedea dacă vreunul dintre ele citește jos.
Dacă un rând de butoane este redus, atunci înseamnă că butonul care conectează rândul și coloana respectivă a fost apăsat.
Pasul 14: Nu toate butoanele sunt create la fel
Dacă butonul este apăsat rapid și ferm, atunci transferul de tensiune de la coloană la rând va fi frumos și curat.
Cu toate acestea, dacă este împins un pic încet sau înfricoșător, atunci tensiunea ar putea să tremure puțin până când există o conexiune bună între butonul și contactele de pe PCB.
Aceasta înseamnă că o apăsare de buton pe care un om crede că este doar una, ar putea fi interpretată de arduino ca mai multe apăsări separate.
Recomandat:
556 Time oferă intrare de ceas la 2 contoare de decenii care vor conduce 20 de LED-uri: 6 pași
Timpul 556 asigură intrarea ceasului la 2 contoare de decenii care vor conduce 20 de LED-uri: Acest instructable va arăta cum un temporizator 556 va furniza intrări de ceas la 2 contoare de deceniu. Contoare de deceniu va acționa 20 de LED-uri
Robotul SCARA: Aflați despre Foward și cinematica inversă !!! (Plot Twist Aflați cum să creați o interfață în timp real în ARDUINO folosind PROCESAREA !!!!): 5 pași (cu imagini)
Robotul SCARA: Aflați despre Foward și cinematica inversă !!! (Plot Twist Aflați cum să creați o interfață în timp real în ARDUINO folosind PROCESAREA !!!!): Un robot SCARA este o mașină foarte populară în lumea industriei. Numele înseamnă atât brațul robotului de asamblare conform cu selecție, fie brațul robot articulat conform cu selecție. Este practic un robot de trei grade de libertate, fiind primele două deplasări
Buton Amazon Dash Buton silențios: 10 pași (cu imagini)
Buton Amazon Dash Buton silențios: Privind constant pe fereastră, astfel încât să puteți intercepta vizitatorii înainte de a suna la sonerie? V-ați săturat că câinii și bebelușul înnebunesc oricând sună? Nu doriți să cheltuiți o avere pe un „inteligent” soluție? Efectuarea unui sunet silențios este la fel de
Gesture Hawk: Robot controlat prin gesturi manuale folosind interfața bazată pe procesarea imaginilor: 13 pași (cu imagini)
Gesture Hawk: Robot controlat prin gesturi manuale folosind interfața bazată pe procesarea imaginilor: Gesture Hawk a fost prezentat în TechEvince 4.0 ca o interfață simplă bazată pe procesarea imaginilor om-mașină. Utilitatea sa constă în faptul că nu sunt necesari senzori suplimentari sau portabili, cu excepția unei mănuși, pentru a controla mașina robotică care rulează pe diferite
Realitate virtuală mobilă folosind procesarea pentru Android (TfCD): 7 pași (cu imagini)
Realitatea virtuală mobilă utilizând procesarea pentru Android (TfCD): Realitatea virtuală (VR) este una dintre noile tehnologii care ar putea fi interesante în viitorul produselor. Are o mulțime de oportunități și nici nu aveți nevoie de ochelari VR scumpi (Oculus Rift). Poate părea foarte greu să te faci singur, dar elementele de bază sunt