Talaan ng mga Nilalaman:

LED Audio Visual Display: 8 Mga Hakbang
LED Audio Visual Display: 8 Mga Hakbang

Video: LED Audio Visual Display: 8 Mga Hakbang

Video: LED Audio Visual Display: 8 Mga Hakbang
Video: New! Cheapest Human Tracking Security Camera Icsee Xmeye 2024, Hulyo
Anonim
Image
Image
LED Audio Visual Display
LED Audio Visual Display
LED Audio Visual Display
LED Audio Visual Display

Sa pamamagitan ng beckslelandsimpsonMasunod Dagdag ng may-akda:

Magsimula ng isang Hardin Mula sa Scratch Mula sa Mga Scrapbook
Magsimula ng isang Hardin Mula sa Scratch Mula sa Mga Scrapbook
Magsimula ng isang Hardin Mula sa Scratch Mula sa Mga Scrapbook
Magsimula ng isang Hardin Mula sa Scratch Mula sa Mga Scrapbook

[WARNING: FLASHING LIGHTTS IN VIDEO]

Ang RGB LED matrices ay isang pangkaraniwang proyekto para sa mga libangan na nais mag-eksperimento sa mga light display, ngunit madalas ay mahal, o mahigpit sa kanilang laki at pagsasaayos. Ang layunin ng proyektong ito ay upang lumikha ng isang muling mai-configure na display na maaaring gumana bilang sarili nitong piraso ng nag-iisa o bilang isang interactive na display na kinokontrol ng isang console gamit ang isang assortment ng Joysticks at Buttons. Maaaring isaayos ang display sa iba't ibang mga layout mula sa isang pagbuo ng matrix sa isang mas static na pandekorasyon na linear strip.

Sa pamamagitan ng paglakip ng isang assortment ng Audio Sensors, Buttons at Joysticks ang display ay maaaring mailipat sa pagitan ng interactive at awtomatikong mga mode, na may nai-configure na mga kulay, epekto, mode, bilis, ningning at mga pattern.

Ang mga gumagamit ay maaaring lumipat sa pagitan ng mga mode at pagsasaayos gamit ang MODE at CONFIG na mga pindutan, gamit ang Joystick at SELECT button upang magawa ang kanilang mga pagpipilian. Ang kasalukuyang pagpipilian ng mga gumagamit ay ipinapakita sa 16x2 LCD screen sa gitna ng console.

Ang proyektong ito ay kasangkot sa isang LED strip na binubuo ng 250 LEDs ngunit ang code ay madaling mabago upang payagan ang isang strip ng anumang laki.

Mga mode

  • Mga Laro: Maaaring i-play ang mga laro gamit ang led matrix bilang isang screen
  • Ingay: Ang mga LED ay nag-iilaw alinsunod sa dami ng tunog at dalas ng kapaligiran.
  • Kulay: Ang mga LED na ginamit bilang isang ilaw na nagpapakita ng isang paunang natukoy na paleta ng kulay.
  • Ulan: Mga Bumagsak na Epektong Banayad na Ulan

Mga Configurasyon ng Mode

  • Kulay - Nagtatakda ng color palette ng strip

    • Pride Flag - Rainbow
    • Trans Flag - Blue, Pink, White
    • Sunog - Pula, Kahel, Dilaw
    • Magaan - Puti
  • Estilo - Itinatakda ang epekto sa pagpapakita ng strip

    • I-block - Kung sa kulay ng mode, ang mga kulay ng mga LED ay mananatiling pare-pareho, sa ingay ng mode, sanhi ito upang maitakda ang lahat ng mga LEDs ng pinakahuling halaga ng kulay ng ingay, na lumilikha ng isang flashing effect.
    • Shimmer - Mga kahaliling LED oscillate, pagkupas sa pagitan at pag-off.
    • Subaybayan - Kung sa kulay ng mode, ang scheme ng kulay para sa mga LEDs ay gumagalaw sa buong strip. Sa ingay ng mode sanhi ito ng mga kulay ng ingay upang maglakbay sa buong strip bilang isang gumagalaw na alon.
  • Epekto ng Pag-ulan - Paano nabuo ang mga pattern ng ulan

    • Random - Ang mga bagong guhitan ng ulan ay random na nakaposisyon, at magkakaiba ang pattern.
    • Patuloy - Umuulit ang pattern ng ulan.
  • Laro - Aling mga laro ang maaari mong i-play sa matrix

    Ahas - Viva la Nokia, puwede lang i-play kapag ang strip ay nasa pagsasaayos ng matrix

  • Kulay ng Epekto - Anong mapagkukunan para sa kulay ang ginagamit ng mga epekto?

    • Itakda ang Kulay - Ang mga Epekto (hal. Ulan) ay kukuha ng isang random na kulay mula sa itinakdang paleta ng kulay.
    • Noise Freq - Ang mga epekto kapag nabuo ay kukuha ng kulay na naaayon sa kasalukuyang freq ng ingay.
    • Ingay Vol - Ang mga epekto kapag nabuo ay kukuha ng kulay na naaayon sa kasalukuyang dami ng ingay.
  • Laki - Paano nakaayos ang display?

    • 250x1 Strip
    • 50x5 Matrix
    • 25x10 Matrix

Bilis at Liwanag

Kinokontrol sa pamamagitan ng nakakaikot na mga potensyal ng analog, upang mabago ang ningning ng mga LED at ire-rate ang mga pag-update sa display. Higit na nakakaapekto ito sa tindi ng mga light effects at paghihirap ng mga laro.

Katayuan ng Strobe at LED

Ang mga console sa itaas na kaliwang Switch ay nagpapahintulot sa mga LED na i-off, bilang isang pagpipilian para sa kapag ang display ay nai-configure. Ang ibabang kaliwang Switch ay binubuksan ang Strobe Effect, i-flashing ang display sa itinakdang bilis.

Hakbang 1: Mga Kinakailangan

Mga Bahagi:

  • BreadBoard ~ £ 5
  • StripBoard ~ £ 10 para sa set 5
  • Arduino Mega (gagawin ang anumang clone) ~ £ 20
  • 2x 1M potentiometer resistors
  • 300 RGB Indibidwal na Maipapakita Strip ~ £ 30
  • Mga Pin Header ~ £ 5
  • 10x 10K, 1x 300 Resistors
  • I2C LCD Module ~ £ 5
  • 4-Switch Joystick ~ £ 10
  • Audio Sensor ~ £ 5
  • 1x 1μF, 1x 10μF, 1x 100nF Capacitors
  • 3x (Sandali) Mga Pindutan. Mga Rekomendasyon: Arcade, Mini ~ £ 3
  • 2x Switch. Mga Rekomendasyon: Toggle ~ £ 5
  • Power Jack
  • Box ~ 20x20x15cm - Ang karton ay pinakamadali, ngunit kung mayroon kang access sa isang laser cutter, ginagawa mo ito.

Ang aking mga rekomendasyon sa Joystick / Button ay pulos mga pagpipiliang pangkakanyahan, pagkatapos ng isang arcade na tema; panandalian switch ng anumang kalikasan ay gagawin. Maaaring makuha ang mas murang mga joystick na nag-uulat ng kanilang posisyon sa pamamagitan ng mga analog signal na ginawa gamit ang 2 potentiometers (isa para sa bawat axis). Kung handa kang baguhin ang code, maaari kang gumamit ng mga thumbstick na hinlalaki tulad nito.

Habang ginamit ko ang isang maliit na porsyento ng mga pin ng Arduino Megas I / O, napili ito para sa mas malaking dinamikong at laki ng memorya ng programa, kung saan napatunayan ng Arduino Uno na hindi sapat.

Pagpipilian sa LEDStrip

Ang ginamit kong LEDstrip ay isang 300 RGB na isa-isa na maaaring addressing WS2813 LED na may kakayahang umangkop na strip. isang na-upgrade na bersyon ng WS2812, Ang format na ito habang medyo mas mahal, ay nagpapabuti sa WS2812 na may dalwang signal transmission na nangangahulugang kung ang isang LED ay tumitigil sa paggana, ang natitirang strip pagkatapos pa rin itong gumana. Dahil dito mayroon itong 4 na mga pin: 5V, GND, DI (data input) at BI (backup input).

Kabuuang Gastos: ~ £ 100

Kagamitan:

  • Panghinang na Bakal + Maghinang
  • Multimeter (opsyonal, ngunit inirerekumenda)
  • Mga cutter at wire ng wires
  • Wire: mas mabuti solong core, kakayahang umangkop (LOTS)
  • Scalpel
  • Ruler / Pencil
  • 1x 5V Power Supply
  • Mga manu-manong screwdriver
  • Printer A hanggang B USB Cable

Software:

Arduino IDE

Kasanayan:

  • Paghihinang
  • Ang ilang Arduino Karanasan lahat ngunit ganap na kinakailangan

Hakbang 2: Schematic & Code

Schematic at Code
Schematic at Code
Schematic at Code
Schematic at Code
Schematic at Code
Schematic at Code

Ang proyektong ito ay binubuo ng 2 Potentiometers, 1 Audio Sensor, 1 LED Strip, 3 Momentary Buttons, 1 Joystick (4 Momentary Buttons), 1 LCD Module at 2 Switch.

Inirerekumenda kong tiyakin na nauunawaan mo ang mga kable at i-set up ang pangunahing circuitry sa isang breadboard, bago ang paghihinang ng electronics sa stripboard sa susunod na hakbang para sa pangmatagalang tibay. Dapat mong maikontento kahit papaano ang iba't ibang mga pin ng Arduino sa default na mga HATAAS (5V) / LOW (GND) na mga halaga at eksperimento sa magkakaibang mga orihinal na setting ng LEDStrip sa code (ito ay minarkahan - tingnan ang hakbang sa code) upang makita ilan sa mga paunang ilaw na epekto.

Audio Circuit

Tinalakay ang audio circuit sa susunod na hakbang at kinakailangan lamang kung nais mo ang mga audio effects, kung hindi ay maaari mo lamang ikonekta ang AUDIO analog input pin na A0, A1 sa GND sa pamamagitan ng isang pull down risistor (~ 300 Ohm). Hinahangad ng circuitry na ito na kunin ang Frequency at Volume ng sinusukat na tunog, na nagbibigay ng dalawang magkakaibang halaga ng pag-input upang makontrol ang mga visualization ng audio hal. taas (vol amplitude) at kulay (dalas).

LED Strip

Inilakip ko ang datasheet para sa WS2813 strip, nagtatampok ito ng perpektong mga kable. Ang pin ng BI ay maaaring hilahin pababa sa pamamagitan ng isang risistor sa lupa at ang isang kapasitor ay dapat na konektado sa pagitan ng GND at + 5V at mailagay malapit sa strip. Pinapakinig nito ang biglaang pagbabago sa kasalukuyang pangangailangan ng strip, halimbawa kung may biglaang malaking pagtaas kapag ang lahat ng mga LED ay nakabukas, ang capacitor na gumagamit ng nakaimbak na singil ay maaaring mas mabilis na maibigay ito kaysa sa Arduino, binabawasan ang pilay sa mga bahagi ng board.

Ang strip ay kinokontrol gamit ang FASTLED library (tingnan ang hakbang sa code para sa higit pang detalye) at konektado sa pin 5.

Module ng LCD

Ang module ng LCD na inirekumenda ko ay gumagamit ng isang panloob na circuit upang ito ay nangangailangan lamang ng 2 mga input pin, lubos na binabawasan ang pagiging kumplikado ng paghihinang nito sa circuit. Ito ay konektado sa mga SCL, SDA na pin.

Mga Potenometro

Ang mga potensyal ay variable resistors, na nagbibigay-daan sa iyo upang makontrol ang boltahe na sinusukat sa panloob na pin, maaaring mabasa ito ng Arduino bilang isang halagang analog. Ginamit ko ito bilang isang interactive na paraan upang manu-manong makontrol ang bilis at ningning ng display at nakakonekta ang mga ito sa mga analog input pin: A3, A2.

Lakas ng Panlabas

Para sa mas maliit na mga proyekto (<20 LEDs) ang Arduino ay maaaring pinalakas sa pamamagitan ng USB lamang, ngunit para sa mas malaking kaso ng paggamit na ito (250 LEDs), dahil sa malaking kasalukuyang hinihiling isang kinakailangan ng panlabas na mapagkukunan ng 5V ay kinakailangan. Pinagana ko ang Arduino sa pamamagitan ng isang panlabas na jack na konektado sa GND at VIN ng Arduino. Kapag pinalakas lamang sa pamamagitan ng USB, ang mga kulay ng LEDs ay warped at ang LCD screen ay hindi ganap na mag-iilaw.

Mga Pindutan / switch / Joystick

Sa walang kinikilingan na posisyon, ang mga pindutan ng INPUT pin ay hinila pababa sa GND at binabasa ng Arduino ang digital na LOW, ngunit kapag pinindot, ang mga pin ay konektado sa + 5V na nagbabasa ng digital HIGH. Tingnan dito para sa isang tipikal na halimbawa ng pindutan ng Arduino. Ang mga nabasang halagang ito ay maaaring magamit bilang mga kondisyunal na halaga ng boolean para sa programa, na nagiging sanhi ng pagpapatupad ng iba't ibang mga segment ng code. Ang mga pindutan / switch ay konektado sa mga sumusunod na digital input pin: Mode / Config: 3/2. Joystick L / R / U / D: 10/11/13/12. Piliin ang: 9.

Hakbang 3: Mga Epekto sa Audio

Mga Epekto sa Audio
Mga Epekto sa Audio
Mga Epekto sa Audio
Mga Epekto sa Audio
Mga Epekto sa Audio
Mga Epekto sa Audio

Ang pinaka-kumplikadong bahagi ng circuitry ay ang Audio Voltage - Frequency Converter. Sinundan ko ang eskematiko na ipinakita sa itaas (Tingnan dito para sa karagdagang impormasyon). Ang ilang pagbabago ng capacitor, ang mga halaga ng paglaban ay maaaring kailanganin depende sa lakas ng iyong audio signal. Ang halimbawang ibinigay, ginamit ang isang alternating 12V signal, nakakita ako ng mahusay na mga resulta sa pamamagitan ng paggamit ng 3.3V bilang supply voltage, at pagpapakain ng 5V sa audio sensor.

Ang dalawang signal na nakuha ko mula sa circuit na ito ay ang dalas (VOUT) at dami (V2 +).

Nakatutulong na Tala

Ang mga mas malalaking Capacitor (ang threshold na humigit-kumulang sa itaas ng 1µF, hindi ceramic) ay naka-polarisa, kasama dito ang mga Electrolytic Capacitor, kasalukuyang dumadaloy sa kanila mula sa + hanggang - panig. Sa diagram ay napansin ko ang direksyon na dapat nilang ayusin.

Ang ginamit na transistor sa circuit na ito ay ang PNP, pinapayagan ng mga transistor na ito na dumaloy mula sa emitter patungo sa kolektor kapag inilapat ang isang negatibong polarity sa kanilang base na nauugnay sa emitter.

Kalungkutan # 1

Orihinal na sinubukan kong pakainin ang audio sa circuit gamit ang isang audio jack, ang pangarap na ikonekta ang audio nang direkta mula sa aking telepono. Sa kasamaang palad ang senyas na ginawa nito ay lumitaw na masyadong mahina, at makalipas ang isang linggo na nagpupumilit na gumana ito, gumamit ako ng module ng tunog sensor. Sigurado ako na may mga diskarteng pampalaki na maaaring ginamit ko, at ito talaga ang pangunahing isyu sa aking proyekto na nais kong iwasto sa hinaharap.

Hakbang 4: Disenyo at Paglikha ng Console

Disenyo at Paglikha ng Console
Disenyo at Paglikha ng Console
Disenyo at Paglikha ng Console
Disenyo at Paglikha ng Console
Disenyo at Paglikha ng Console
Disenyo at Paglikha ng Console
Disenyo at Paglikha ng Console
Disenyo at Paglikha ng Console

Ang disenyo ng aking console ay binigyang inspirasyon ng mga lumang arcade ng paaralan, na may retro Joystick, mga pindutan at mga switch ng toggle. Itinayo ko ito gamit ang isang lumang kahon ng headphone ng karton, (ang paggamit ng hoarding); ito ay lubos na epektibo dahil ang kahon ay may isang foam panloob na lining, kaya't sa sandaling naka-out sa loob ito ay gumawa ng isang mahusay na pinakintab na epekto.

  1. Iguhit ang pangkalahatang layout ng gusto mong console.
  2. Sukatin at markahan ang mga posisyon ng iba't ibang mga bahagi sa tuktok ng kahon. Tiyaking kukunin mo ang panloob na mga sukat ng mga pindutan / switch / joystick na nais mo ang mga puwang sapat lamang upang mapindot ang mga bahagi ngunit mayroon pa ring mga panlabas na gilid na nahuli sa karton. Inirerekumenda ko ang paggamit ng isang scalpel upang i-cut ang mga butas na ito, ngunit ang matalas na gunting na kasama ng mga distornilyador para sa mga pabilog na butas ay dapat gawin ang trick. Dahan-dahang gupitin, sinusubukang magkasya ang sangkap at dahan-dahang lumalaki ang sukat, gawin ang bawat bahagi nang paisa-isa.
  3. Para sa mas malaking mga sangkap tulad ng display ng joystick at LCD, inirerekumenda kong i-screw ang ilang mga mani / bolts sa console top upang hawakan ang mga ito nang ligtas sa posisyon.
  4. Gupitin ang tatlong butas sa ilalim ng likod ng console, ito ay para sa input ng kuryente, input ng USB upang opsyonal na iprograma ang Arduino at LEDStrip output konektor.

Nangungunang Mga Tip

Inirerekumenda ko ang paunang pag-solder ng bawat bahagi ng mga konektor ng metal bago ilagay ang mga ito sa console para sa kadalian ng pag-access at upang mabawasan ang panganib na sunugin ang karton.

Hakbang 5: Solder Schematic

Solder Schematic
Solder Schematic
Solder Schematic
Solder Schematic
Solder Schematic
Solder Schematic
Solder Schematic
Solder Schematic

Kakailanganin mo ang isang piraso ng strip board ng hindi bababa sa 25 mga hilera sa pamamagitan ng 20 cols sa laki. Gayunpaman sa pamamagitan ng pagpili ng isa na mas malaki magagawa mong i-blue-tack ang iyong Micro-Controller papunta sa Stripboard sa tabi ng mga wire, nangangahulugan ito na ang tanging hindi matatag na koneksyon ay ang nasa pagitan ng Stripboard at ng mga sangkap na nakakabit sa ibabaw ng mga console. Ano ang mahalaga sa bawat hakbang ng prosesong ito kung saan ang posibleng pagbawas ng pilay ng anumang mga kable ay maaaring nasa ilalim upang matiyak ang isang pangmatagalang panghuling produkto.

Gumamit ako ng mga header ng pin upang malinis na ayusin ang mga wire sa mga pangkat at ikonekta ang mga ito sa Arduino sa isang paraan na madaling maalis sa pag-debug.

Bahagyang sinusuportahan ko ang Stripboard na humahawak sa pinakamabigat na circuitry sa pamamagitan ng paggamit ng ilang string / wire upang ikonekta ito sa panloob na dingding ng karton na kahon.

Ang pangunahing kapangyarihan at mga LEDStrip wires na lumabas sa console ay mayroong mga konektor ng midwire na maaaring hiwalay, nangangahulugan ito na ang mga wire ay maaaring mai-thread sa pamamagitan ng mga butas sa ilalim ng console at payagan pa ring buksan ang kahon.

Mga Tip sa Paghinang

Ang isang clamp upang hawakan ang mga Wires / Stripboard habang ang paghihinang ay gagawing mas madali ang proseso. Palaging pre-solder bawat wire bago subukan na ikonekta ang mga ito.

Mga Tip sa Layout

Ang lahat ng mga outwire (pagpunta sa mga pin ng Arduinos) ay matatagpuan sa gilid ng board.

Kung maaari ang paggamit ng iba't ibang kulay na kawad sa kalapit na mga hilera ay nakakatulong na maiwasan ang pagkalito ng mga kable.

Ang GND, + 3.3V, + 5.5V ay dapat palaging mailagay sa mga gilid ng gilid, para sa madaling pagkakakilanlan, ang paglalagay ng GND at + 3.3 / 5V sa kabaligtaran na gilid ay nakakatulong na maiwasan ang potensyal na pagkukulang ngunit sa personal hindi ko inabala at inilagay ang mga ito sa tuktok na 3 mga hilera. Ang layout ng console ay maaaring bahagyang matukoy ang pagkakasunud-sunod ng mga wire row, malapit na mga bahagi ng mapa sa kalapit na mga hilera, ang mga numero ng PIN sa Arduino IDE ay laging maaaring muling maisulat.

Sa pamamagitan ng paghihinang ng lahat ng mga + 5V na pin ng mga pindutan / resistor na magkakasama sa likuran ng console sa bawat isa sa isang daisy chain, isa lamang + 5V na wire ang kinakailangan sa pagitan ng Stripboard at ng tuktok ng console, na pinapabawas nang malaki ang bilang ng mga mahina na koneksyon na mga wire. Halimbawa para sa 4 na switch ng Joystick na magkonekta ko lahat ng kanilang 5V terminal.

Maging mapagbigay sa haba ng mga wire na umaabot sa pagitan ng Stripboard at console, mas madaling mabawasan sa paglaon, kaysa subukang tumaas.

Kung posible gumamit ng kakayahang umangkop na kawad sa pagitan ng mga bahagi ng Stripboard at console, ginagawang mas madali upang buksan at i-debug ang console sa paglaon.

Hakbang 6: Extension 1: LED Matrix

Extension 1: LED Matrix
Extension 1: LED Matrix
Extension 1: LED Matrix
Extension 1: LED Matrix
Extension 1: LED Matrix
Extension 1: LED Matrix

Sa pamamagitan ng pagkonekta sa LED Strip tulad ng sa console, ang karamihan ng mga epekto ng ulan, kulay, strobo at ingay ay maaaring ipakita, ngunit ang porma ng visualization ay limitado. Pinapayagan ng code ang display na karagdagang mai-configure sa mga pag-aayos ng 250x1, 50x5, at 25x10, pinapayagan nito ang mga visualization ng matrix. Maaaring ipakita ang ingay bilang paggalaw ng mga alon, mga laro ay maaaring i-play sa matrix tulad ng isang mababang resolusyon na screen. Ang pagpili ng isang 25 pixel na indibidwal na haba ng strip ay isang personal, at maaari mong piliin ito sa iyong sarili at itakda ito sa code. Ang nais ko higit sa lahat ay kakayahang umangkop, upang ang anumang graphic na epekto na napagpasyahan kong mag-code sa ibang araw, maaari kong tipunin ang HW sa kinakailangang pag-aayos.

Kalungkutan # 2

Nagkaroon ako ng panaginip, at ito ay ang paggamit ng isang conductive ink upang ipinta ang mga koneksyon sa circuit papunta sa karton, na maaaring mapindot laban sa magkadugtong na mga dulo ng mga LED strip.

Benepisyo:

  1. Mukhang sobrang cool, at maaari kong gumamit ng iba't ibang kulay na karton
  2. Nakaguhit ako ng mga circuit
  3. Ultimate pagpapasadya, mag-isip ng isang bagong pag-aayos, iguhit lamang ito.

Mga drawbacks:

  1. Hindi ito gumana.
  2. Ni kahit konti.
  3. Bakit ka makakaguhit sa pamamagitan ng kamay ng isang tumpak na sapat na mga kable at pagkatapos ay maglapat ng isang tumpak at pare-parehong sapat na presyon sa isang maaaring mai-compress na materyal tulad ng karton?

Pinapanatili ko kung nagtrabaho ito ay magiging talagang cool at bahagyang pinagsisisihan ko ang 2 oras na inilalaan sa pagsisikap na ito.

Tunay na Solusyon

Napagpasyahan kong gumamit ng isang sistema ng maipapalit na mga header ng lalaki / babae, katulad ng ginagamit upang ikonekta ang mga wire ng Stripboard sa Arduino. Sa pamamagitan ng paglalagay ng M / F na kahalili sa bawat dulo, ang mga indibidwal na piraso ay maaaring opsyonal na mai-plug sa bawat isa sa muling paggawa ng orihinal na hindi pinutol na strip. O maaaring magamit ang intermediate na nababaluktot na mga konektor ng kawad upang ang mga strips ay maaaring nakatiklop pabalik sa kanilang sarili upang makabuo ng isang matrix, o anumang iba pang pag-configure ng spacial.

  1. Gupitin ang Led Strip sa mga segment, pumili ako ng 10 piraso ng haba 25, naiwan ang 50 LEDs na ekstrang para sa isa pang proyekto
  2. Paghinang ng bawat koneksyon sa tanso sa bawat dulo ng strip. Mag-ingat na hindi matunaw ang plastik, kung bumili ka ng isa na may hindi tinatagusan ng tubig na takip, kakailanganin mong i-cut ang isang maliit na tuktok na seksyon sa bawat dulo.
  3. Ang aking LEDStrip ay mayroong 4 na konektor sa bawat dulo, at 10 piraso kaya pinutol ko ang 10 mga lalaki, 10 na mga segment ng header ng babae bawat isa sa haba 4. Para sa bawat strip ay naghinang ako ng lalaki sa isang dulo at babae sa isa pa. Tiyaking ang parehong mga dulo ay lalaki / babae para sa bawat strip, papayagan ka nitong ikonekta ang mga ito sa isang daisy chain tulad ng fashion.
  4. Subukan ang mga koneksyon sa pamamagitan ng pagsaksak ng 10 strips nang magkasama, itama nang may higit pang paghihinang kung kinakailangan.
  5. Kailangan namin ngayon ang mga konektor ng kawad, gagamitin ito upang ikonekta ang mga indibidwal na piraso nang magkakasama sa mga nababaluktot na pag-aayos, maging ang pagkamit ng distansya mula sa bawat isa o pag-iipon ng isang matrix ang layunin. Ang kanilang haba ang tutukoy kung gaano kalayo ang maaari mong ilagay ang bawat tuloy-tuloy na seksyon ng LEDStrip; gupitin ang kawad nang medyo mas mahaba kaysa sa gusto mo dahil ang ilang haba ay mawawala kapag kumokonekta sa mga wire. Gupitin ang isa pang 10 lalaki, 10 babaeng mga segment ng header ng haba 4. Gupitin ang 40 piraso ng kawad (perpektong maraming kulay, nababaluktot), hubarin ang bawat dulo at paunang maghinang.
  6. Upang lumikha ng isang wired na koneksyon, kumuha muna ng 4 na mga wire (perpektong magkakaibang mga kulay upang paganahin ang pagkakakilanlan kung aling mga kawad ang kumokonekta sa kung aling pin) at solder ang mga ito sa isang header ng lalaki. Pagkatapos ay nais mong itrintas ang 4 na mga wire na ito, pinapanatili nitong maayos ang mga kable. Kapag tinirintas (sapat na ang kalidad na hinahanap namin dito), maaari mong solder ang iba pang mga dulo sa babaeng konektor. Tiyaking ang parehong mga wires ay solder sa parehong mga pin. Kung ang lahat ng iyong kawad ay magkatulad na kulay, gumawa ng mga marka o gumamit ng isang multi-meter upang matukoy kung aling kawad ang alin, tulad ng matapos itrintas hindi ito magiging malinaw. Ulitin ang prosesong ito para sa bawat wired na koneksyon na kailangan mo.
  7. Subukan muli ang mga koneksyon, sa pamamagitan ng pagkonekta sa lahat ng mga piraso ng mga wired na koneksyon, maglaro kasama ang setting ng laki ng console at ayusin ang LEDStrips sa iba't ibang mga formasyon ng matrix. Mas mahusay na masira at kilalanin ang mga mahihinang koneksyon nang mas maaga kaysa sa paglaon.

Mayroon ka na ngayong 10 indibidwal na mga piraso, na maaaring direktang mai-plug sa bawat isa upang muling likhain ang isang mahabang solong strip, o muling ayusin sa mga formasyon ng matrix.

Hakbang 7: Pag-configure at Pag-setup

Pag-configure at Pag-setup
Pag-configure at Pag-setup
Pag-configure at Pag-setup
Pag-configure at Pag-setup

Ang pinakabagong bersyon ay maaaring laging matagpuan sa aking github: rs6713 / leddisplay /, huwag mag-atubiling mag-fork ito / mag-download at maglaro.

I-install ang Arduino IDE

Sa milagrosong kaganapan sa paanuman nakumpleto mo ang tutorial na ito na walang paunang Karanasan sa Arduino, maaaring ma-download ang Arduino IDE dito. I-install lamang at buksan ang code sa IDE, i-plug ang board sa pamamagitan ng printer cable sa computer. (Maaaring mag-install ka ng isang driver para makilala ng computer ang Arduino Board, ngunit ito ay dapat na awtomatikong mangyari sa unang pagkakataon na na-plug mo ang isang Arduino sa iyong computer). Piliin ang uri ng board, at piliin ang aktibong Comm Port na naka-plug in ang Arduino.

Pag-configure

Upang baguhin ang iba't ibang mga setting ng display ay hindi nangangailangan ng sopistikadong kaalaman sa programa.

Ang mga lugar sa program na madaling kapitan sa pagsasaayos ay minarkahan ng / *** KONFIGURO AKO *** /

Madali mong mababago / mai-configure ang mga sumusunod na lugar ng programa:

  • Ang mga pin ng mga sangkap ay konektado sa
  • Ang laki ng mga indibidwal na LEDStrips
  • Kabuuang bilang ng mga LED sa mga piraso ng pangkalahatang
  • Ang mga mode na nais mong payagan para sa programa
  • Ang haba ng patak ng ulan para sa epekto ng ulan.

Ang mga pin, at kabuuang bilang ng mga LED ay mahalaga upang makakuha ng tama upang gumana ang code sa iyong bersyon ng electronic circuit na tinalakay sa mga nakaraang hakbang. Kapaki-pakinabang din ito upang masubukan mo ang iba't ibang mga mode ng pagpapakita sa pamamagitan ng pagtatakda ng mga ito sa panahon ng pagsisimula ng code kaysa sa pagkakaroon upang maitayo at ikonekta ang lahat ng mga pindutan ng joystick, mode at pagsasaayos.

I-upload

Kapag naitakda mo na ang mga tamang numero ng PIN para sa mga bahagi, laki ng Strip at bilang ng mga LED, maaari mong mai-upload ang programa sa Arduino sa pamamagitan ng pagpindot sa pag-upload. Inaasahan kong nagawa mo na ito sa puntong ito bilang isang bagay ng kurso sa panahon ng pagsubok. I-plug ang panlabas na 5V power supply at dapat ay mabuti kang pumunta.

Pagde-debug

Kung ang LEDStrip / Console ay hindi gumagana tulad ng inaasahan mayroong isang bilang ng mga potensyal na sanhi.

Ang LEDStrip ay ganap / bahagyang naka-off:

  • Suriin ang LEDStrip Switch ay naka-set sa,
  • Kung pinahaba mo ang strip, at ang huling maraming mga segment ng pagtatapos ng LEDStrip ay hindi nag-iilaw, malamang na ito ay dahil sa isang sira na koneksyon. Suriin ang iyong mga koneksyon para sa mga dry joint at resolder, subukang ilipat ang pagkakasunud-sunod ng mga piraso, at kung ito ay isang wired na koneksyon, subukang ilipat ang isang wired na koneksyon para sa isa pa.

Ang liwanag ng LCD Screen ay mababa / mali ang mga kulay ng LEDStrip:

  • Suriin ang panlabas na koneksyon ng kuryente ay naka-on / maayos na konektado. Kapag ang lakas ay mababa hindi lahat ng mga kulay ng RGB LEDs ay pare-pareho ang pag-iilaw at ang LCD screen ay nagpupumilit na maliwanagan ang sarili nito.
  • Maaari ding maging mali ang mga kulay kung ang pagsasaayos ng laki hal. Ang 250x1 ng programa ay hindi nagpapakita ng pag-aayos ng totoong buhay na LED.
  • Pinakamasamang sitwasyon sa kaso maaari mong baguhin ang programa upang mabawasan ang bilang ng mga piraso ng ilaw na naiilawan.

Random na Kakilabutan

Bilang isang huling paraan, nagkomento ng Serial. Ang mga print ay naiwan sa buong code, ang pag-aaliw sa mga ito ay magbibigay sa iyo ng puna sa iba't ibang mga bahagi ng estado at panloob na programa.

Ang isang malamang na sitwasyon ay ang isang input na dapat na saligan, naging disconnect at naiwan na lumulutang, lilikha ito ng maling pag-trigger ng kaganapan (random na pag-oscillate ng pagbabasa ng pin sa pagitan ng MALI at TUNAY) at hindi mahuhulaan na pag-uugali ng programa.

Mga Pagbabago ng Programa

Ang mga karagdagang lugar ng mga posibleng pagbabago ay minarkahan ng / ** PALITAN AKO ** /

Ang mga lugar na ito ay pangunahing halimbawa kung saan maaari kang magdagdag ng iyong sariling mga pagpapasadya:

  • Magdagdag ng mga bagong pagpipilian sa color palette
  • Magdagdag ng mga bagong epekto hal. shimmer
  • Magdagdag ng mga bagong laro

Ito ay mga mungkahi lamang, huwag mag-atubiling baguhin ang code subalit nais mo.

Hakbang 8: Extension 2: OpenProcessing

Extension 2: OpenProcessing
Extension 2: OpenProcessing

** Sa oras ng pagsulat, ang tampok na ito ay mananatiling hindi naipatupad, kaya ang hakbang na ito ay inilaan upang i-highlight ang mga plano / pagpapakita sa hinaharap ng proyektong ito at upang mai-highlight ang kahalagahan ng pagpapalawak ng LEDStrip upang payagan ang mga display ng matrix. **

Ang isa sa mga kadahilanang nasasabik ako na pinahihintulutan ang pag-iabot ng LEDStrip na isagawa ito bilang isang matrix, ay ang pagkakaroon ng isang display sa screen ay magbubukas ng maraming mga pagkakataon upang mapa ang mga visualization ng 2D mula sa iba pang software sa Arduino HW.

Ang OpenProcessing ay isang komunidad ng 2D interactive graphics batay sa wikang Pagproseso. Sa pamamagitan ng paggamit ng isang simpleng pagpapaandar ng Serial Print, ang hitsura ng bawat frame ay maaaring mailipat na pixel ng pixel sa Arduino. Samakatuwid maaaring magkaroon ng isang mode sa hinaharap para sa console, kung saan nakikinig lamang ang Arduino sa koneksyon ng Serial at ina-update lamang ang LED Matrix frame ayon sa frame ayon sa animasyong tinukoy ng programang Pagproseso. Marami itong pakinabang sa Pagproseso na ito ay isang dalubhasang wika para sa mga visual arts at madaling malaman, ginagawa itong napakabilis upang lumikha ng mga kumplikadong visualization ng sining. Ginagalaw din nito ang memorya at pagiging kumplikado ng pagproseso sa iyong computer na may limitadong kapangyarihan / memorya ng pagproseso na limitado sa Arduino na kinakailangang hawakan lamang ang impormasyong naipasa sa Serial.

Sa pamamagitan ng pag-outsource ng iyong mga visualization na LED Display sa isang paunang mayroon nang library ng 2D Graphic Effects, ang mga posibilidad ay walang katapusang. Suriin ang openprocessing.org catalog para sa inspirasyon.

Inirerekumendang: