Talaan ng mga Nilalaman:

Arduino LED Button Pad Na Nagmamaneho ng Mga Pagproseso ng Mga Animasyon: 36 Hakbang (na may Mga Larawan)
Arduino LED Button Pad Na Nagmamaneho ng Mga Pagproseso ng Mga Animasyon: 36 Hakbang (na may Mga Larawan)

Video: Arduino LED Button Pad Na Nagmamaneho ng Mga Pagproseso ng Mga Animasyon: 36 Hakbang (na may Mga Larawan)

Video: Arduino LED Button Pad Na Nagmamaneho ng Mga Pagproseso ng Mga Animasyon: 36 Hakbang (na may Mga Larawan)
Video: How to Turn a TV Remote into a LED Bulb Controller without using Arduino | DIY Electronics Project 2024, Nobyembre
Anonim
Image
Image
Arduino LED Button Pad Na Nagmamaneho ng Mga Animation sa Pagproseso
Arduino LED Button Pad Na Nagmamaneho ng Mga Animation sa Pagproseso
Arduino LED Button Pad Na Nagmamaneho ng Mga Animation sa Pagproseso
Arduino LED Button Pad Na Nagmamaneho ng Mga Animation sa Pagproseso

AngThis button pad ay ginawa gamit ang isang PCB at iba pang mga sangkap na gawa ng Sparkfun. Ito ay hinihimok ng isang Arduino Mega. Ang bawat pindutan ay maganda at banayad at kasiya-siya upang pindutin, at mayroon itong RGB LED sa loob! Ginagamit ko ito upang makontrol ang mga animasyon na naka-code sa Pagproseso. Ang button pad ay nagpapadala ng isang mensahe sa tuwing pinindot ang isang pindutan, na sinasabi kung aling pindutan ito. Natatanggap ng pagproseso ang mga mensaheng ito at binabago ang mga variable sa sketch depende sa pinindot.

Bakit

Ang mga LED ay cool. Ang mga pindutan ay nakakatuwang itulak. Ang mga animated na geometric pattern ay maganda. Nais kong pagsamahin ang lahat. Dinala ko ang proyektong ito sa isang pagdiriwang, inaasahan ang mga visual sa dingding at hinayaan ang mga tao na maglaro ng mga pindutan. Maaari din itong magamit ng isang VJ sa isang mas madaling maisagawa na paraan, kagaya ng isang Midi controller ngunit mas DIY.

Paano

Mayroong apat na pangunahing bahagi sa proyektong ito.

Ang naka-attach na video sa Youtube ay nagbibigay ng isang mahusay na pagtingin sa kung paano magkakasama ang button pad. Saklaw ng Instructable na ito pati na rin ang Arduino at Pagproseso ng code - (mga karagdagang video para sa mga iyon ay gumagana)

  1. Pagsasama-sama ng button pad - Nagsisimula sa Hakbang 1

    Kasama dito ang paghahanda ng mga sangkap at paghihinang sa mga ito sa PCB

  2. Ang Arduino code - Nagsisimula sa Hakbang 10

    Para sa mga ito, kailangan namin ng isang pag-unawa sa pag-scan ng matrix, na pag-uusapan ko.

  3. Ang Processing code - Nagsisimula sa Hakbang 24

    Mayroong walang katapusang mga posibilidad dito, kakausapin ko ang isang halimbawang nagawa ko sa ngayon.

  4. Pagkuha ng Arduino upang magpadala ng mga mensahe sa Pagproseso - Hakbang 16 para sa pagpapadala, Hakbang 30-31 para sa pagtanggap

    Ito ay maganda at simple, nagpapadala ito ng mensahe sa isang serial na koneksyon.

Antas

Sinusubukan ko at isulat ang aking mga tutorial sa paraang ang isang tao na walang ganap na kaalaman ay maaring masundan man lang. Maaari mong makita na kapaki-pakinabang ang panonood muna ng ilang mga panimulang tutorial tungkol sa Pagproseso. Magsisimula ako sa channel sa YouTube ni Daniel Shiffman.

Code

Ang lahat ng mga code (Arduino at Pagproseso) ay nasa aking github dito.

Mga Kredito

Natutunan ko ang isang bungkos mula sa tutorial na ito https://learn.sparkfun.com/tutorials/button-pad-ho… at marami sa Arduino code ay nagmula doon, kahit na na-edit ko ito upang gumana nang bahagyang naiiba sa alinman sa mga halimbawa doon..

Hakbang 1: Ang Mga Sangkap

Ang Mga Sangkap!
Ang Mga Sangkap!
Ang Mga Sangkap!
Ang Mga Sangkap!
Ang Mga Sangkap!
Ang Mga Sangkap!
Ang Mga Sangkap!
Ang Mga Sangkap!
  • 16 x 5mm RGB LEDs (hindi matugunan, regular na karaniwang mga katod)
  • 16 x 1N4148 diode
  • Silicone button pad
  • Button pad PCB
  • Arduino Mega
  • Mga kable ng jumper

(Mayroon ding isang pangkat ng mga bagay-bagay na maaari mong makuha mula sa Sparkfun upang maiwan ang buong bagay nang medyo mas maayos, ngunit hindi ko nagawa ito)

Hakbang 2: Ihanda ang Mga Diode

Ihanda ang Diode
Ihanda ang Diode
Ihanda ang Diode
Ihanda ang Diode
Ihanda ang Diode
Ihanda ang Diode

Bend ang bawat diode at pagkatapos ay itulak ito sa pamamagitan ng PCB.

Ang mga binti ay dumidikit sa gilid ng pindutan, na hindi namin nais. Kaya't ilabas muli ang diode at gupitin ang mga binti. (Maaari kang magkaroon ng ilang mga snip na hahayaan kang gupitin ang mga binti sa pisara habang nandiyan pa rin ito na magpapadali sa iyong buhay, ngunit mayroon lamang akong normal na gunting kaya't dapat ko silang hilahin upang gupitin ito ng sapat.)

Napakahalaga na yumuko ang mga binti at itulak ang mga ito sa pamamagitan ng PCB bago mo ito gupitin ng maikli. Kung gupitin mo muna ang mga ito maikli hindi mo magagawang ibaluktot ang mga ito sa hugis.

Gumawa ng 16 sa maliliit na mala-anties na mga bagay na ito.

Hakbang 3: Paghinang ng mga Diode Sa Lupon

Paghinang ng mga Diode Sa Lupon
Paghinang ng mga Diode Sa Lupon
Paghinang ng mga Diode Sa Lupon
Paghinang ng mga Diode Sa Lupon
Paghinang ng mga Diode Sa Lupon
Paghinang ng mga Diode Sa Lupon

Ilagay muli ang bawat isa sa mga diode sa pisara. Mahalaga nitong suriin ang oryentasyon ng diode. Mayroon itong isang itim na linya sa isang gilid kung saan nakahanay kasama ang linya sa PCB. (Tingnan ang imahe)

Ang pagkuha ng mga diode sa lugar ay isang uri ng fiddly kung kaya't sinabi ko kung mayroon kang mga snip na hahayaan kang i-cut ang mga paa na mapula nang hindi inaalis ang mga ito, gagawing mas madali ang iyong buhay. Wala ako niyan kaya gumamit ako ng tweezers upang ibalik sila, na medyo nakatulong.

Maghinang sa bawat diode sa lugar.

Hakbang 4: Ihanda ang mga LED

Ihanda ang mga LED
Ihanda ang mga LED
Ihanda ang mga LED
Ihanda ang mga LED
Ihanda ang mga LED
Ihanda ang mga LED
Ihanda ang mga LED
Ihanda ang mga LED

Itulak ang mga LED sa pisara at pagkatapos ay putulin ang mga binti. Tulad ng sa mga diode; mahalaga na itulak muna ang mga binti sa pisara, upang kumalat ang mga ito sa tamang mga anggulo, bago i-cut ang mga binti.

Mayroong kaunting pagsubok at error sa paggupit ng mga binti sa tamang haba. Kung gagawin mo silang masyadong mahaba sila ay mananatili, ngunit masyadong maikli at mahirap na ibalik ang LED.

Maghanda ng 16 sa maliliit na naputol na fellas na ito.

Hakbang 5: Paghinang ng mga LED Sa Lupon

Paghinang ng mga LED Sa Lupon
Paghinang ng mga LED Sa Lupon
Paghinang ng mga LED Sa Lupon
Paghinang ng mga LED Sa Lupon
Paghinang ng mga LED Sa Lupon
Paghinang ng mga LED Sa Lupon

Itulak pabalik sa board ang lahat ng mga LEDs.

Mahalaga muli ang oryentasyon dito. Ang isang bahagi ng mga LED ay may isang patag na gilid at dapat itong pumila sa patag na gilid ng bilog sa diagram ng PCB. (Tingnan ang imahe)

Tingnan kung ang mga LED ay itinulak sa sapat na malayo sa pamamagitan ng paglalagay ng silicone pad sa pisara at suriin na hindi sila makagambala sa mga pindutan na itinulak.

Paghinang ng mga LED papunta sa pisara.

Tandaan: Simula nang maituro sa akin na dahil hindi mahalaga kung magkano ang mga binti ay dumikit sa likuran, maaari mo lamang itulak ang mga LED, solder ang mga ito sa likuran, at pagkatapos ay putulin ang mga binti.

Hakbang 6: Pagbukud-bukurin ang Sapat na Mga Jumper Cables

Pagbukud-bukurin ang Sapat na Mga Jumper Cables
Pagbukud-bukurin ang Sapat na Mga Jumper Cables

Pinapayagan nating pag-usapan ang board nang kaunti. Ang board ay nakaayos sa 4 na haligi at 4 na hanay ng LEDs / Buttons.

Ang bawat isa sa mga haligi ay nangangailangan ng 2 koneksyon, isa para sa LED ground at isa para sa ground button. Ang bawat hilera ay nangangailangan ng 4 na koneksyon, dahil kailangan namin ng magkakahiwalay na koneksyon para sa pula, berde at asul na mga channel, pati na rin isang koneksyon para sa pag-input ng pindutan. Narito ang mga kulay ng cable at mga numero ng pin na pinili ko para sa bawat isa sa mga koneksyon na iyon.

Hilera Para saan ito Kulay ng cable Numero ng pin PCB Label
Hilera 1 Pula Pula 22 RED1
Berde Berde 23 GREEN1
Bughaw Bughaw 30 BLUE1
Pag-input ng pindutan Dilaw 31 SWITCH1
Hilera 2 Pula Pula 24 PULA2
Berde Berde 25 GREEN2
Bughaw Bughaw 32 BLUE2
Pag-input ng pindutan Dilaw 33 SWITCH2
Hilera 3 Pula Pula 26 RED3
Berde Berde 27 GREEN3
Bughaw Bughaw 34 BLUE3
Pag-input ng pindutan Dilaw 35 SWITCH3
Hilera 4 Pula Pula 28 RED4
Berde Berde 29 GREEN4
Bughaw Bughaw 36 BLUE4
Pag-input ng pindutan Dilaw 37 SWITCH4
Haligi Para saan ito Kulay ng cable Numero ng pin PCB Label
Col 1 LED ground Maputi 38 LED-GND-1
Button ground Itim 39 SWT-GND-1
Col 2 LED ground Maputi 40 LED-GND-2
Button ground Itim 41 SWT-GND2
Col 3 LED ground Maputi 42 LED-GND-3
Button ground Itim 43 SWT-GND3
Col 4 LED ground Maputi 44 LED-GND4
Button ground Itim 45 SWT-GND4

Hakbang 7: Ihanda ang Jumper Cables

Ihanda ang Jumper Cables
Ihanda ang Jumper Cables
Ihanda ang Jumper Cables
Ihanda ang Jumper Cables

Ang bawat jumper cable ay nangangailangan ng isang male end, at isang dulo na nakuha ang ilang mm ng kawad. Gusto kong gumamit ng ilang uri ng lalagyan upang makuha ang mga hubad na mga wire wire na kung hindi man ay natapos ang mga ito sa buong aking patag at posibleng mas masahol kaysa sa kinang.

Hakbang 8: I-solder ang Jumper Cables sa Lupon at I-plug Inm Sila

I-solder ang Jumper Cables sa Lupon at I-plug ang Mga Ito
I-solder ang Jumper Cables sa Lupon at I-plug ang Mga Ito
Paghinang ng Jumper Cables sa Lupon at I-plug ang Mga Ito
Paghinang ng Jumper Cables sa Lupon at I-plug ang Mga Ito

Gamitin ang tsart mula sa isang pares ng mga hakbang pabalik upang makuha ang mga cable na hinang sa mga tamang lugar sa PCB, at isaksak sa tamang mga pin sa Arduino.

Hakbang 9: Bumuo ng Tapos na

Bumuo Tapos!
Bumuo Tapos!

Gumawa ng isang maliit na sandali upang masalubong itulak ang ilang mga (bilang hindi pa nagagamit) na mga pindutan at pagkatapos ay hinayaan ang makakuha sa ilang mga code!

Hakbang 10: Skematika

Skematika
Skematika

Ito ay isang eskematiko ng PCB at mga bagay na nahinang namin dito.

Ang mga kulay-abo na kahon ay kumakatawan sa bawat isa sa mga kombinasyon ng pindutan / LED. Kung mukhang sobrang kumplikado ito (ginawa sa akin ito sa unang pagkakataon na nakita ko ito) pagkatapos ay huwag mag-alala, babaliin ko ito.

Kung nais mo lamang tingnan ang code sa iyong sarili, nasa aking github dito.

Hakbang 11: Ang Mga Pindutan lamang

Ang Mga Pindutan lamang
Ang Mga Pindutan lamang
Ang Mga Pindutan lamang
Ang Mga Pindutan lamang

Ang mga LED at ang mga pindutan ay talagang hiwalay sa bawat isa (bukod sa lahat na nakakonekta sa Arduino) kaya hinayaan lamang nating tingnan muna ang mga pindutan.

Ang bawat kulay-abo na kahon ay naglalaman ng isang pindutan at isang diode (ang mga na-solder namin - Ipapaliwanag ko ang layunin ng mga medyo).

Tandaan: Sigurado ako na ito ay sobrang halata sa ilang mga tao, ngunit hindi ako sigurado nito noong una kong sinimulan ito upang masabi ko ito! Ang mga hilera (sa berde) at ang mga haligi (sa asul) ay hindi konektado, inilalagay lamang sa bawat isa. Ang bagay ay konektado lamang kung saan mayroong isang maliit na itim na tuldok. Ang pagsara ng isa sa mga switch ng pindutan gayunpaman, ay lumikha ng isang koneksyon sa pagitan ng hilera at haligi.

Hakbang 12: I-set up ang Mga Pins ng Button

I-set up ang Mga Pin ng Button
I-set up ang Mga Pin ng Button
I-set up ang Mga Pin ng Button
I-set up ang Mga Pin ng Button
I-set up ang Mga Pin ng Button
I-set up ang Mga Pin ng Button

Para sa mga pindutan, gagamitin namin ang mga haligi bilang mga output at ang mga hilera bilang mga input.

Magagawa naming suriin kung ang isang pindutan ay naitulak dahil kung mayroong isang koneksyon sa pagitan ng isang hilera at haligi pagkatapos ay ang boltahe mula sa output ay maabot ang input. Upang magsimula, sa pag-setup () naglalabas kami ng isang mataas na boltahe sa lahat ng mga haligi. Itinakda namin ang mga hilera upang hilahin ang mga pag-input na nangangahulugang bilang default ay mataas din silang nagbasa.

Hakbang 13: Pag-scan

Pag-scan
Pag-scan
Pag-scan
Pag-scan
Pag-scan
Pag-scan

Sa loop, ang isang pagpapaandar na tinatawag na scan () ay dumadaan sa isang haligi nang paisa-isa at itinatakda ang boltahe nito upang maging mababa.

Pagkatapos ito ay tumingin sa bawat hilera ng koneksyon ng pindutan, upang makita kung alinman sa mga ito ay mababa ang pagbabasa.

Kung ang isang hilera ng pindutan ay nagbabasa nang mababa, pagkatapos ay nangangahulugan iyon na ang pindutan na kumokonekta sa hilera at haligi ay na-push.

Hakbang 14: Hindi Lahat ng Mga Push ng Button ay nilikha na pantay

Kung ang pindutan ay itulak nang mabilis at matatag pagkatapos ang paglipat ng boltahe mula sa haligi sa hilera ay magiging maganda at malinis.

Gayunpaman, kung itulak ito nang medyo dahan-dahan o winkily, kung gayon ang boltahe ay maaaring mag-jitter nang kaunti hanggang sa may isang mahusay na koneksyon sa pagitan ng button pad at ng mga contact sa PCB.

Nangangahulugan ito na ang isang pindutan na itulak na iniisip ng isang tao na isa lamang, ay maaaring bigyang kahulugan ng arduino bilang maraming magkakahiwalay na pagtulak.

Inirerekumendang: