Talaan ng mga Nilalaman:

HALO: Madaling magamit na Arduino Lamp Rev1.0 W / NeoPixels: 9 Mga Hakbang (na may Mga Larawan)
HALO: Madaling magamit na Arduino Lamp Rev1.0 W / NeoPixels: 9 Mga Hakbang (na may Mga Larawan)

Video: HALO: Madaling magamit na Arduino Lamp Rev1.0 W / NeoPixels: 9 Mga Hakbang (na may Mga Larawan)

Video: HALO: Madaling magamit na Arduino Lamp Rev1.0 W / NeoPixels: 9 Mga Hakbang (na may Mga Larawan)
Video: Using Arduino Turn AC bulb with push button On and OFF toggle with relay 2024, Setyembre
Anonim
Image
Image
HALO: Madaling gamiting Arduino Lamp Rev1.0 W / NeoPixels
HALO: Madaling gamiting Arduino Lamp Rev1.0 W / NeoPixels
HALO: Madaling gamiting Arduino Lamp Rev1.0 W / NeoPixels
HALO: Madaling gamiting Arduino Lamp Rev1.0 W / NeoPixels

Sa itinuturo na ito, ipapakita ko sa iyo kung paano bumuo ng HALO, o Handy Arduino Lamp Rev1.0.

Ang HALO ay isang simpleng lampara, pinalakas ni Arduino Nano. Mayroon itong kabuuang bakas ng paa na halos 2 "by 3", at isang weighted base ng kahoy para sa matinding katatagan. Pinapayagan ng kakayahang umangkop na leeg at 12 super-maliwanag na NeoPixels na madaling maipaliwanag ang bawat detalye sa anumang ibabaw. Nagtatampok ang HALO ng dalawang mga push-button upang paikot sa iba't ibang mga light mode, kung saan mayroong 15 preprogrammed. Dahil sa paggamit ng Arduino Nano bilang processor, mayroong kakayahang i-reprogram ito ng mga karagdagang tampok. Ang solong potensyomiter ay ginagamit upang ayusin ang ningning at / o bilis kung saan ipinakita ang isang mode. Ang isang simpleng konstruksiyon ng metal ay gumagawa ng HALO isang napakatagal na lampara, na angkop para magamit sa anumang pagawaan. Ang kadalian ng paggamit ay pinagsama ng onboard power regulator ng Nano, kaya ang HALO ay maaaring pinalakas sa pamamagitan ng alinman sa USB o ang karaniwang 5mm na bar ng jack sa likuran.

Inaasahan kong makita ang maraming tao na gumagamit ng mga lamp na ito sa malapit na hinaharap, sapagkat maraming mga posibilidad na magbukas sa disenyo na ito. Mangyaring mag-iwan ng isang boto sa Microcontroller Contest kung nais mo ito o hanapin itong kapaki-pakinabang sa ilang paraan, talagang pahalagahan ko ito.

Bago kami makarating sa Instructable na ito, nais kong sabihin ang isang maikling Salamat sa lahat ng aking mga tagasunod at sinumang kailanman na nagkomento, pinaburan, o bumoto sa alinman sa aking mga proyekto. Salamat sa inyong mga tao, ang aking itinuturo sa Cardboard ay naging isang malaking tagumpay, at ako ngayon, tulad ng pagta-type nito na umaabot sa 100 mga tagasunod, isang malaking milyahe sa aking palagay. Talagang pinahahalagahan ko ang lahat ng suporta na nakukuha ko sa inyong mga kalalakihan kapag inilagay ko ang aking Ible, at pagdating sa ito, hindi ako magiging nasaan ako ngayon kung wala kayo. Sa nasabing iyon, salamat, lahat!

TANDAAN: Sa buong Tagapagtuturo na ito ay mga parirala na naka-bold. Ito ang mga mahahalagang bahagi ng bawat hakbang, at hindi dapat balewalain. Hindi ako ito sumisigaw o sadyang bastos, sinusubukan ko lang ang isang bagong diskarte sa pagsusulat upang mas mabibigyang diin ang dapat gawin. Kung hindi mo gusto ito at mas gusto mo kung paano ko dating naisulat ang aking mga hakbang, ipaalam sa akin sa mga komento, at babalik ako sa aking dating istilo.

Hakbang 1: Mga Kagamitan sa Pagtitipon

Mga Kagamitan sa Pagtitipon
Mga Kagamitan sa Pagtitipon
Mga Kagamitan sa Pagtitipon
Mga Kagamitan sa Pagtitipon
Mga Kagamitan sa Pagtitipon
Mga Kagamitan sa Pagtitipon
Mga Kagamitan sa Pagtitipon
Mga Kagamitan sa Pagtitipon

Ilang beses ko bang sasabihin ito? Palaging magkaroon ng kailangan mo, at garantisadong makakagawa ka ng isang bagay hanggang sa matapos.

Tandaan: Ang ilan sa mga ito ay mga link ng kaakibat (minarkahang "al"), makakakuha ako ng isang maliit na kickback kung bumili ka sa kanila, nang walang karagdagang gastos sa iyo. Salamat kung bumili ka sa pamamagitan ng mga link

Mga Bahagi:

1x Arduino Nano Nano - al

1x 10k Rotary Potentiometer 5 pack 10k Potentiometers - al

1x 5mm barrel jack (ang minahan ay na-recycle mula sa isang piniritong Arduino Uno) Babae na Barrel Jack (5 pack) - al

2x 2-pin pansamantalang push-button 10 pack SPST Pushbutton Switch - al

12x NeoPixels mula sa isang 60 LED / meter strand (anumang katumbas, hal. WS2812B, gagana) Adafruit NeoPixels

Isang sheet ng 0.5 mm Aluminium

Ang nababaluktot na leeg mula sa isang luma na mas magaan na flex

Ang singsing sa itaas na takip mula sa isang "stick and Click" LED cabinet light LED Cabinet Light - al

Isang maliit na sheet ng 1/4 pulgada na Plywood

Isang mabigat, patag na metal na bigat ng mga sukat (halos) 1.5 "by 2.5" ng.25"

Maiiwan tayo na pangunahing wire ng kuryente

Mga tool:

Mainit na Pandikit at Pandikit

Panghinang na Bakal at Maghinang

Ang cordless power drill at iba't ibang maliliit na piraso ng pag-ikot

X-acto kutsilyo (o isang kutsilyo ng utility)

Mga striper ng wire

Mga Plier

Mga cutter / snip ng wire

Malakas na Gunting ng tungkulin

Kung wala kang flat metal weight, kailangan mo rin:

1 rolyo ng murang panghinang (hindi ang mga bagay na gagamitin mo para sa paghihinang) Murang Lead-Free Solder

Kandila sa Alkohol (o isang Bunsen burner)

Isang maliit na pinggan na pinatigas na bakal na hindi mo naisip na sirain (o isang maliit na tunawan kung mayroon ka)

Isang tripod para sa nasabing ulam / tunawan (Ginawa ko ang minahan mula sa 12 gauge steel wire)

Isang ulam ng halaman na luwad (isa sa mga bagay na napupunta sa ilalim ng palayok)

Ang ilang mga aluminyo palara

TANDAAN: Kung mayroon kang isang welding kit o isang 3D printer, maaaring hindi mo kailangan ng lahat ng mga tool na nakalista dito.

Hakbang 2: Paggawa ng Timbang

Paggagawa ng Timbang
Paggagawa ng Timbang
Paggagawa ng Timbang
Paggagawa ng Timbang
Paggagawa ng Timbang
Paggagawa ng Timbang

Ito ay isang medyo mahirap na hakbang, at dapat mong gamitin ang matinding pag-iingat sa paggawa nito. Kung mayroon kang isang mabibigat na timbang ng metal o isang patag na neodymium magnet na humigit-kumulang sa 2.75 "ng 1.75" ng 0.25 ", inirerekumenda kong gamitin iyon sa halip (at papayagan ka rin ng pang-akit na iposisyon ang lampara sa mga patag na metal!).

Pagwawaksi: Hindi ako mananagot para sa anumang pinsala sa iyo, kaya't mangyaring gumamit ng bait

Gayundin, gawin ito sa labas sa ibabaw ng isang kongkretong ibabaw na hindi mo aalalahanin kung medyo nasunog ito (pag-iingat lamang ito). Wala akong mga larawan para sa prosesong ito dahil ang isang kamera ay maaaring isang labis na paggambala na hindi ko kailangan o gusto.

Una, gumawa ng isang maliit na hulma mula sa aluminyo palara o basang luad, mga 2 3/4 pulgada ng 1 3/4 pulgada ng 1/4 pulgada sa panloob na sukat. Maaari itong maging isang hugis ng hugis-itlog na tulad ng sa akin, o isang rektanggulo. Gumamit ng maraming mga layer ng foil o makapal na mga layer ng luwad.

Ilagay ang hulma sa ulam ng ceramic plant, at punan ang parehong amag at tray sa malamig na tubig.

Kunin ang iyong hindi nakasindi na alkohol na kandila / bunsen burner, at ilagay ang bakal na pinggan / tunawan sa yelo upang maiinit ng apoy ang gitna ng pinggan (kapag naiilawan). Bago i-ilaw ang burner, tiyaking mayroon kang hindi bababa sa 1 pares ng pliers o metalworking tongs sa kamay, kung hindi 2.

Magandang ideya na magsuot ng guwantes na katad, mahabang manggas, mahabang pantalon, sapatos na pang-daliri ng paa, at proteksyon sa mata habang ginagawa ang mga susunod na hakbang

Coil up at putulin ang isang bungkos ng murang panghinang mula sa spool at ilagay ito sa ulam na bakal, pagkatapos ay sindihan ang burner. Maghintay hanggang sa tuluyang matunaw ang likaw, pagkatapos ay simulang magpakain ng natitirang panghinang sa ulam sa katamtamang bilis. Kung ang solder ay mayroong anumang rosin dito, maaari itong kusang magsunog sa init, na gumagawa ng isang maputlang dilaw na apoy at itim na usok. Huwag magalala, nangyari ito sa akin ng maraming beses at perpektong normal.

Magpatuloy na pakainin ang panghinang sa ulam hanggang sa matunaw ang huli.

Hayaan ang anumang apoy mula sa pagkasunog ng rosin na tuluyan nang mamatay, at gamitin ang mga pliers / sipit upang makuha ang ulam at dahan-dahang iikot ang natunaw na metal sa loob habang maingat na pinapanatili ito sa apoy.

Pagkatapos mong matiyak na ang lahat ng solder ay ganap na natunaw at sa isang magandang mainit na temperatura, mabilis at maingat na alisin ito mula sa apoy at ibuhos ito sa hulma. Magkakaroon ng malakas na tunog ng singsing at singaw dahil ang ilan sa tubig ay nai-singaw at ang natitira ay pinilit na lumabas ng hulma upang mapalitan ng tinunaw na solder.

Hinahayaan ang cool na solder, patayin ang iyong burner / ilabas ang iyong kandila at ilagay ang ulam na bakal sa isang lugar na ligtas upang palamig. Maaaring gusto mong ibuhos ang malamig na tubig sa paglamig na panghinang upang mapabilis ang paglamig at upang patigasin ito. (Ginagawa ng malamig na tubig ang panlabas na cool na mas mabilis kaysa sa loob, na lumilikha ng panloob na pag-igting na ginagawang mas mahirap at matigas ang metal, katulad ng isang Drop ng Prince Rupert.) Maaari mo ring mapadalhan ang tubig sa iyong metal na ulam, ngunit magreresulta ito sa pagiging malutong, lalo na kung nagawa ng maraming beses.

Matapos ang cooled na solder (mga 20 minuto upang maging ligtas), alisin ito mula sa foil mold.

Ang akin ay natapos na mas makapal sa isang gilid kaysa sa kabilang panig, kaya gumamit ako ng martilyo upang pantayin ito at patagin ang mga gilid (na nagreresulta sa hugis na nakikita mo sa mga larawan). Pagkatapos ay gaanong binasahin ko ito sa ilalim ng umaagos na tubig upang makintab ito, at isantabi ito sa paglaon.

Hakbang 3: Pagbuo ng Pabahay ng Electronics, Hakbang 1

Pagbuo ng Pabahay ng Elektroniko, Hakbang 1
Pagbuo ng Pabahay ng Elektroniko, Hakbang 1
Pagbuo ng Pabahay ng Elektroniko, Hakbang 1
Pagbuo ng Pabahay ng Elektroniko, Hakbang 1
Pagbuo ng Pabahay ng Elektroniko, Hakbang 1
Pagbuo ng Pabahay ng Elektroniko, Hakbang 1
Pagbuo ng Pabahay ng Elektroniko, Hakbang 1
Pagbuo ng Pabahay ng Elektroniko, Hakbang 1

Ito ang mga bahagi para sa shell na mapapasukan ang Nano, i-mount ang interface, at karaniwang pinagsasama ang HALO Lamp. Ginawa ko ang minahan gamit ang aking 0.5mm Aluminium at Mainit na Pandikit, ngunit kung mayroon kang isang 3D printer (isang bagay na sinusubukan kong makuha para sa aking tindahan nang ilang sandali) gumawa ako ng isang bersyon na. STL sa Tinkercad na ikinabit ko dito para sa iyo mag-download Dahil wala akong printer mismo, hindi ko masubukan i-print ang modelo upang makita kung ang lahat ay naka-print nang maayos, ngunit sa palagay ko ay maayos kung idaragdag mo ang tamang mga istraktura ng suporta sa iyong slicer. Maaari mo ring kopyahin at i-edit ang pinagmulan ng file dito kung kailangan mo o nais ng isang bahagyang naiibang disenyo o aesthetic.

Ang mga sukat ay talagang nagmula sa bigat na metal na itinapon ko para sa aking sarili sa labas ng panghinang, hindi mula sa laki ng electronics, ngunit naging maayos pa rin ito at ang mga sukat ay lubos na pinakamainam.

Ang mga larawan ay naglalarawan ng isang bahagyang magkakaibang pagkakasunud-sunod ng pagpapatakbo sa kung ano ang isusulat ko rito, ito ay sapagkat naisip ko ang isang pinabuting pamamaraan batay sa mga resulta ng aking orihinal na pamamaraan.

Kung nagtitipon ka mula sa sheet metal tulad ko, narito ang kailangan mong gawin:

Hakbang 1: Mga plate ng Mukha

Gupitin ang dalawang magkatulad na kalahating bilog-ish na mga hugis tungkol sa 1.5 "taas at 3" ang lapad. (Pinagbigyan ko ang akin, kaya't kamukha nila ang harap ng isang kahon na juke).

Sa isa sa dalawang plato, drill ang tatlong butas para sa mga pindutan at potensyomiter. Ang minahan ay bawat 1/4 pulgada ang lapad. Maaari itong maging sa anumang layout, ngunit mas gusto ko ang aking potensyomiter na bahagyang itaas sa gitna, na may mga pindutan sa magkabilang panig na bumubuo ng isang tatsulok na isosceles. Kapag ang pagbabarena, palagi akong gumagawa ng isang maliit na butas ng piloto bago pumunta sa kinakailangang laki ng sukat, tumutulong ito sa gitna ng mga butas at ginagawang mas malinis ang mga ito.

Hakbang 2: Arched Cover

Bend sa isang piraso ng aluminyo upang magkasya sa paligid ng curve ng isa sa mga plate ng mukha, at markahan ang tamang haba ng gilid.

Gupitin ang isang strip ng haba na ito at tungkol sa 2 pulgada ang lapad, at gawin ito sa isang arko na tumutugma sa anyo ng curve ng mga plate ng mukha sa magkabilang panig.

Hanapin ang gitnang punto sa tuktok ng curve, at mag-drill ng isang butas upang magkasya ang flex leeg ng mas magaan. Pinapalitan ko ang mga holetowards sa likuran dahil ang aking lampara ay halos ikiling ang leeg habang ginagamit, kaya nais kong magdagdag ng kaunting counterbalance doon. Ang aking kakayahang umangkop na leeg ay medyo higit sa 1/4 ng isang pulgada ang lapad, kaya gumamit ako ng 1/4 pulgada na bit (ang pinakamalaking bit ng pag-aari na pagmamay-ari ko na nasa ilalim ng 3/4 ng isang pulgada) at maingat na angulo at baluktot ang mag-drill upang 'maipanganak' ang butas hanggang sa magkasya ang leeg.

Ngayon na mayroon kaming mga bahagi para sa shell, ang susunod na hakbang ay upang magdagdag ng electronics at isama ito!

Hakbang 4: Pagbuo ng Pabahay ng Electronics, Hakbang 2

Pagbuo ng Pabahay ng Elektroniko, Hakbang 2
Pagbuo ng Pabahay ng Elektroniko, Hakbang 2
Pagbuo ng Pabahay ng Elektroniko, Hakbang 2
Pagbuo ng Pabahay ng Elektroniko, Hakbang 2
Pagbuo ng Pabahay ng Elektroniko, Hakbang 2
Pagbuo ng Pabahay ng Elektroniko, Hakbang 2
Pagbuo ng Pabahay ng Elektroniko, Hakbang 2
Pagbuo ng Pabahay ng Elektroniko, Hakbang 2

Ngayon ay idinagdag namin ang mga pindutan at potensyomiter, at pinagsama namin ang lahat.

Hakbang 1: Mga Pindutan at Bolts

Alisin ang siksik ng hex nut mula sa iyong mga pindutan at potensyomiter. Dapat mayroong isang gripping ring device sa ilalim ng nut, iwanan ito sa lugar.

I-slot ang bawat isa sa mga bahagi sa pamamagitan ng kani-kanilang butas, pagkatapos ay i-tornilyo muli ang mga mani upang ma-secure ang bawat isa sa lugar. Higpitan ang mga mani sa punto na sigurado ka na ang bawat bahagi ay ganap na ligtas.

Hakbang 2. Flex Leeg

I-slot ang leeg sa leeg sa butas sa tuktok ng hubog na piraso. Mainit na pandikit o hinangin (kung mayroon kang kagamitan) ang leeg na ligtas na nakalagay.

Kung gumagamit ng mainit na pandikit na tulad ko, magandang ideya na idikit ito sa maraming mga pandikit na gilid na kumakalat sa isang malaking lugar upang maiwasan ang pagdikit na malagkit sa paglaon.

Hakbang 3: Shell Assembly (Hindi nalalapat sa 3D naka-print na shell)

Gamit ang alinman sa welding rod o mainit na pandikit, i-fasten ang harap at likod na mga plate ng mukha sa kani-kanilang mga lugar sa may arko na takip. Kinuha ako ng isang pagsubok sa isang pares para dumikit ang aking pandikit, at tulad ng dati, ang bilis ng kamay ay ang paggamit ng maraming pandikit sa magkabilang panig ng magkasanib, tulad ng leeg. Kung mas malaki ang lugar na natatakpan ng pandikit, mas mabuti itong dumidikit.

Ngayon na mayroon kaming shell, maaari kaming magpatuloy upang idagdag ang lahat ng mga circuitry bits.

Hakbang 5: Pagdaragdag ng Electronics

Pagdaragdag ng Elektronika
Pagdaragdag ng Elektronika
Pagdaragdag ng Elektronika
Pagdaragdag ng Elektronika
Pagdaragdag ng Elektronika
Pagdaragdag ng Elektronika

At narito ang nakakatuwang bahagi: Paghihinang! Sa mga nagdaang linggo matapat na lumago ako ng medyo pagod sa paghihinang, sapagkat ginagawa ko ito noong huli upang subukan at tapusin ang isa pang proyekto na dapat kong mailagay sa lalong madaling panahon (abangan ang isang radikal na bagong bersyon ng aking robotic display mga platform), na nagreresulta sa aking pagkasira ng isang bakal at pagkuha ng isa pa … Gayunpaman, walang gaanong maghinang dito, kaya't dapat itong maging prangka.

Tandaan: Kung ang iyong Nano ay mayroon nang mga header ng pin, inirerekumenda ko na masira ang mga ito para sa proyektong ito, makagagambala lamang sila.

Mayroong isang diagram sa mga larawan sa itaas, maaari mong sundin iyon kung nais mo.

Hakbang 1: Interface

Mula sa bawat isa sa mga switch, maghinang ng isang kawad mula sa isang solong pin sa isang gilid na pin ng potensyomiter. Maghinang ng isang kawad mula sa parehong gilid na pin sa isang Ground pin sa Nano.

Maghinang ng isang kawad mula sa gitnang pin ng potentiometer hanggang A0 sa Nano.

Maghinang ng isang kawad mula sa hindi magkakaugnay na pin ng alinman sa lumipat sa A1 sa Nano.

Maghinang ng kawad mula sa hindi magkakaugnay na pin sa kabilang switch sa A2 sa Nano.

Tandaan: Hindi mahalaga kung aling switch ang alin, madali mong mababago ang mga ito sa code, bukod sa ang katotohanan na ang isang switch ay ginagawa lamang ng kabaligtaran ng isa pa.

Gupitin ang isang haba ng kawad na 4 na pulgada mas mahaba kaysa sa flex leeg, at i-strip ang magkabilang panig. Gamit ang isang Sharpie, markahan ang isang gilid na may isang solong linya.

Maghinang ng isang kawad sa huling hindi magkakaugnay na pin ng potensyomiter, iikot ang hindi magkakaugnay na dulo ng kawad na ito kasama ang walang marka na dulo ng kawad mula sa huling substep.

Naghinang ito sumali sa pagtatapos sa 5V sa Nano.

Hakbang 2: Mga Display at Power Wires

Gupitin ang 2 haba ng kawad na 4 na pulgada mas mahaba kaysa sa baluktot na leeg, at hubaran ang magkabilang dulo.

Gamit ang isang Sharpie, markahan ang mga dulo ng bawat kawad, isang kawad na may 2 linya, at isa na may 3.

Paghinang ng kawad na may 2 linya sa digital pin 9 sa Nano.

Sa iyong jack ng 5mm na bariles, maghinang ng isang kawad mula sa gitnang pin (positibo) hanggang sa Vin sa Nano.

Maghinang ng isa pang kawad sa isang gilid na pin (ground / negatibo) ng barel jack.

I-twist ang mahabang kawad na may 3 linestogether gamit ang kawad mula sa gilid na pin ng barrel jack.

Nag-solder ng mga software sa bukas na pin ng GND sa Nano.

Ihiwalay ang mga koneksyon sa electrical tape o mainit na pandikit kung kinakailangan.

Hakbang 3: Mga Gupit na Butas (sa metal na bersyon lamang, kung na-print mo ang 3D sa takip dapat kang maging maayos)

Gamit ang isang drill bit at isang X-acto o Utility Knife, maingat na gumawa ng isang butas sa gilid ng takip para sa USB port ng Nano.

Gumawa ng isa pang butas tungkol sa laki ng mukha ng jack ng bariles sa likod ng takip, mas mabuti na malapit sa gilid sa tapat ng butas para sa USB port.

Hakbang 4: Mga Bahaging Pag-mount

Pakainin ang tatlong mahahabang wires sa pamamagitan ng leeg na luwad at palabas sa kabilang panig.

Paggamit ng maraming mainit na pandikit, i-mount ang bar ng jack sa lugar na nakaharap ang mga pin sa tuktok ng takip.

Muli na gumagamit ng maraming mainit na pandikit, i-mount ang Nano sa lugar, na nakaharap pababa ang pindutan ng pag-reset at ang USB port sa puwang nito. Gumawa ako ng isang "mainit na tulay ng pandikit" sa pagitan ng bar ng jack at ng Nano, na ginagawang panatilihing matatag sa isa't isa ang isa pa.

Ngayon ay maaari na tayong magpatuloy upang gawin ang weighted base!

Hakbang 6: Timbang na Base

Tinimbang na Base
Tinimbang na Base
Tinimbang na Base
Tinimbang na Base
Tinimbang na Base
Tinimbang na Base

Tiwala ako sa aking mga kasanayan sa paghihinang at naplano nang maayos ito, kaya't nagpatuloy ako at idinagdag ang base bago subukan ang code. Kung hindi ka gaanong tiwala sa iyong mga kasanayan, iminumungkahi ko na laktawan ang hakbang na ito at bumalik dito sa dulo kapag alam mong gumagana ang lahat.

Kung ginawa mo ang naka-print na bersyon ng 3D, maaari mong laktawan ang unang hakbang at magpatuloy sa pangalawa.

Hakbang 1: Kahoy

Mula sa isang sheet ng 1/4 pulgada na playwud, gupitin ang isang base tungkol sa 3 pulgada ng 2 pulgada.

Buhangin ang mga gilid upang makinis ang mga ito at alisin ang mga burs.

Hakbang 2: Timbang

Una, tiyakin ang iyong bigat na napili, maging isang magnet, metal, o ang pasadyang solder, na umaangkop sa loob ng mga gilid ng takip na gawa sa metal na ginawa namin. Ang minahan ay medyo malaki sa isang direksyon, kaya't nag-ahit ako ng kaunti mula sa tagiliran gamit ang isang X-acto na kutsilyo. Kung ang iyo ay hindi ang uri kung saan mo magagawa ito, maaaring kailanganin mong maglibot sa ibang disenyo ng base.

Mainit na pandikit ang iyong timbang sa gitna ng piraso ng playwud, o sa kaso ng naka-print na disenyo ng 3D, sa gitna ng "tray" na lugar na dinisenyo ko para sa hangaring ito.

Hakbang 3: Batayan

Pagkasyahin ang takip ng metal sa bigat at isentro ito sa base ng kahoy. (Sa kaso ng naka-print na disenyo ng 3D, ipasok ito sa mga paunang gawa na uka.)

Tiyaking ang timbang ay hindi makagambala sa alinman sa mga electronics

Gumamit ng mainit na pandikit upang ma-secure ang base sa lugar. Gumamit ng sapat upang matiyak ang isang matatag na koneksyon.

Ngayon na mayroon tayong ganap na ginawa ng aming control box, magpatuloy tayo sa mga ilaw.

Hakbang 7: NeoPixel Halo Ring

NeoPixel Halo Ring
NeoPixel Halo Ring
NeoPixel Halo Ring
NeoPixel Halo Ring
NeoPixel Halo Ring
NeoPixel Halo Ring
NeoPixel Halo Ring
NeoPixel Halo Ring

Ang inspirasyon para sa pangalan ng lampara na ito, ang bahaging ito ay ang singsing na NeoPixel halo na gagamitin namin bilang aming mapagkukunan ng pag-iilaw. Ang partikular na piraso na ito ay maaaring mabago o mapalitan ng anumang NeoPixel o isa-isang addressing LED ring, kung nais.

Hakbang 1: Paghihinang

Gupitin ang isang strip ng NeoPixels 12 LEDs ang haba.

Paghinang ang pin ng GND sa kawad mula sa baluktot na leeg na may 3 mga linya.

Paghinang ang Din pin sa kawad na may 2 linya.

Paghinang ang 5V pin sa kawad na may 1 linya.

Hakbang 2: Subukan ang mga Ilaw

I-download at i-install ang Adafruit_NeoPixel library, at buksan ang "strandtest" code.

Baguhin ang pare-pareho na PIN sa 9.

Baguhin ang linya kung saan tinukoy ang strip upang mai-configure ito para sa 12 LEDs.

I-upload ang code sa Nano, at tiyaking maayos ang paggana ng lahat ng iyong mga LED.

Palitan ang anumang mga may sira na LED sa mga nagtatrabaho, hanggang sa gumana ang buong strip.

Hakbang 3: Singsing

Kunin ang tuktok na singsing mula sa isang ilaw na "stick and Click" at putulin ang anumang mga tornilyo na nai-mount sa interior rim.

Gupitin ang isang maliit na bingaw sa gilid para sa mga wires mula sa strip.

Peel off ang takip para sa malagkit na tape sa likod ng NeoPixels (kung mayroon man) at idikit ang mga ito sa loob ng singsing, na may alinman sa dulo ng guhit guhit mismo sa bingaw na ginawa namin.

Gumamit ng mainit na pandikit upang matatag na ma-secure ang mga gilid ng strip

Matapos ang cool na cool na kola, subukan muli ang mga pixel. Ito ay upang matiyak na walang makakulit tungkol sa init at pagkukulot (ang ilan sa akin ay).

Hakbang 4: Bundok

Gupitin ang dalawang maliliit na parihaba ng 1/4 pulgada na kahoy, tungkol sa taas ng singsing at 1 2/3 beses ang lapad.

Kola ang mga kahilera sa bawat isa sa magkabilang panig ng mga wire mula sa singsing, pinupunan ang puwang at tinatakpan ang mga wire sa pagitan ng ganap na may pandikit.

Maingat na itulak ang anumang labis na haba ng kawad pabalik sa leeg, at pagkatapos ay idikit ang mga piraso ng kahoy sa dulo ng leeg, gamit ang maraming pandikit at maingat na pinupunan ang anumang mga puwang (nang hindi pinupunan ang leeg ng kola).

Hakbang 6: Pagtatapos

Maaari mong pintura ang singsing at i-mount ang anumang kulay kung nais mo, ginusto ko ang pagtatapos ng pilak kaya gumamit ako ng isang Sharpie upang takpan ang logo na (nakakainis) na naka-print sa singsing. Ang parehong napupunta para sa natitirang lampara.

Ngayon ay maaari na tayong magpatuloy upang tapusin ang pangwakas na code!

Hakbang 8: Mga Code at Pagsubok

Mga Code at Pagsubok
Mga Code at Pagsubok
Mga Code at Pagsubok
Mga Code at Pagsubok

Kaya ngayon ang kailangan lang nating gawin ay i-program ang lampara at subukan ito. Nakalakip ang kasalukuyang bersyon ng code (rev1.0), nasubukan ko nang malawakan ang code na ito at gumagana ito ng napakahusay. Nagtatrabaho ako sa isang rev2.0 kung saan ang mga pindutan ay na-configure bilang panlabas na pagkagambala upang ang mga mode ay mas madaling mailipat sa pagitan, ngunit ang bersyon na ito ay maraming surot at hindi pa handa para sa paglabas. Gamit ang kasalukuyang bersyon kailangan mong hawakan ang pindutan hanggang sa patakbuhin nito ang loop ng Debounce at makilala ang pagbabago ng estado, na maaaring nakakainis sa mas mahabang mga "Dynamic" na mga loop. Nasa ibaba ang code na may ilang mga paliwanag na nakasulat sa (may mga parehong paliwanag sa naida-download na bersyon).

# isama ang # ifdef _AVR_ #include #endif

# tukuyin ang PIN 9

#define POT A0 #define BUTTON1 A1 #define BUTTON2 A2

// Parameter 1 = bilang ng mga pixel sa strip

// Parameter 2 = Arduino pin number (karamihan ay may bisa) // Parameter 3 = mga flag na uri ng pixel, idagdag nang sama-sama kung kinakailangan: // NEO_KHZ800 800 KHz bitstream (karamihan sa mga produktong NeoPixel w / WS2812 LEDs) // NEO_KHZ400 400 KHz (klasiko ' v1 '(hindi v2) FLORA pixel, mga driver ng WS2811) // NEO_GRB Pixels ay naka-wire para sa GRB bitstream (karamihan sa mga produktong NeoPixel) // Ang NEO_RGB Pixels ay naka-wire para sa RGB bitstream (v1 FLORA pixel, hindi v2) // NEO_RGBW Ang mga Pixel ay naka-wire para sa RGBW bitstream (mga produktong NeoPixel RGBW) Adafruit_NeoPixel halo = Adafruit_NeoPixel (12, PIN, NEO_GRB + NEO_KHZ800);

// At ngayon, isang mensahe sa kaligtasan mula sa aming mga kaibigan sa Adafruit:

// MAHALAGA: Upang mabawasan ang panganib sa NeoPixel burnout, magdagdag ng 1000 uF capacitor sa kabuuan

// lead ng pixel power, magdagdag ng 300 - 500 Ohm risistor sa input ng unang pixel // at i-minimize ang distansya sa pagitan ng Arduino at unang pixel. Iwasang kumonekta // sa isang live circuit … kung kailangan mo, ikonekta muna ang GND.

// Mga variable

int buttonState1; int buttonState2; // ang kasalukuyang pagbabasa mula sa input pin int last ButtonState1 = LOW; // ang nakaraang pagbabasa mula sa input pin int last ButtonState2 = LOW; int mode; // ang mode ng aming mga ilaw, maaaring maging isa sa 16 mga setting (0 hanggang 15) int brightVal = 0; // ang ningning / bilis, tulad ng itinakda ng potensyomiter

// ang mga sumusunod na variable ay mahaba dahil ang oras, sinusukat sa miliseconds, // ay mabilis na magiging isang mas malaking bilang kaysa maimbak sa isang int. mahabang hulingDebounceTime = 0; // ang huling oras na ang output pin ay na-toggle ng mahabang debounceDelay = 50; // ang oras ng pag-debate; dagdagan kung ang output ay pumitik

void debounce () {

// basahin ang estado ng paglipat sa isang lokal na variable: int pagbabasa1 = digitalRead (BUTTON1); int pagbabasa2 = digitalRead (BUTTON2); // Kung ang alinman sa mga pindutan ay nagbago, dahil sa ingay o pagpindot: kung (pagbabasa1! = Last ButtonState1 || pagbabasa2! = Last ButtonState2) {// i-reset ang debouncing timer lastDebounceTime = millis (); } kung ((millis () - lastDebounceTime)> debounceDelay) {// kung ang estado ng pindutan ay tiyak na nagbago dahil sa pagpindot / paglabas: kung (read1! = buttonState1) {buttonState1 = reading1; // itakda ito bilang pagbabasa kung binago kung (buttonState1 == LOW) {// itinakda ito bilang aktibong low switch switch mode ++; kung (mode == 16) {mode = 0; }}} kung (nagbasa2! = buttonState2) {buttonState2 = nagbasa2; kung (buttonState2 == LOW) {mode = mode - 1; kung (mode == -1) {mode = 15; }}}} // i-save ang pagbabasa para sa susunod na oras sa pamamagitan ng loop lastButtonState1 = pagbabasa1; lastButtonState2 = nagbasa2; }

void getBright () {// aming code upang basahin ang potensyomiter, naglalagay ng halaga sa pagitan ng 0 at 255. Ginamit upang maitakda ang ningning sa ilang mga mode at bilis sa iba.

int potVal = analogRead (POT); brightVal = mapa (potVal, 0, 1023, 0, 255); }

// Narito ang aming mga mode ng kulay. Ang ilan sa mga ito ay nagmula sa napakahusay na halimbawa, ang iba ay orihinal.

// Punan ang mga tuldok nang sunod-sunod sa isang kulay (colorwipe, nagmula sa strandtest)

void colorWipe (uint32_t c, uint8_t wait) {para sa (uint16_t i = 0; i

// mga function ng bahaghari (nagmula rin sa strandtest)

walang bisa ang bahaghari (uint8_t wait) {

uint16_t i, j;

para sa (j = 0; j <256; j ++) {para sa (i = 0; i

// Bahagyang naiiba, ginagawa nitong pantay na ipinamamahagi ang bahaghari

walang bisa ang rainbowCycle (uint8_t maghintay) {uint16_t i, j;

para sa (j = 0; j <256 * 5; j ++) {// 5 cycle ng lahat ng mga kulay sa gulong para sa (i = 0; i <halo.numPixels (); i ++) {halo.setPixelColor (i, Wheel (((i * 256 / halo.numPixels ()) + j) & 255)); } halo.show (); antala (maghintay); }}

// Magpasok ng halagang 0 hanggang 255 upang makakuha ng halagang kulay.

// Ang mga kulay ay isang paglipat r - g - b - pabalik sa r. uint32_t Wheel (byte WheelPos) {WheelPos = 255 - WheelPos; kung (WheelPos <85) {return halo. Color (255 - WheelPos * 3, 0, WheelPos * 3); } kung (WheelPos <170) {WheelPos - = 85; ibalik ang halo. Kulay (0, WheelPos * 3, 255 - WheelPos * 3); } WheelPos - = 170; ibalik ang halo. Color (WheelPos * 3, 255 - WheelPos * 3, 0); }

walang bisa ang pag-setup () {

// Ito ay para sa Trinket 5V 16MHz, maaari mong alisin ang tatlong mga linya na ito kung hindi ka gumagamit ng isang Trinket #if na tinukoy (_AVR_ATtiny85_) kung (F_CPU == 16000000) clock_prescale_set (clock_div_1); #endif // End of trinket special code pinMode (POT, INPUT); pinMode (BUTTON1, INPUT_PULLUP); pinMode (BUTTON2, INPUT_PULLUP); pinMode (PIN, OUTPUT); Serial.begin (9600); // debugging stuff halo.begin (); halo.show (); // Initialize all pixel to 'off'}

void loop () {

debounce ();

//Serial.println(mode); // more debugging //Serial.println(last ButtonState1); //Serial.println(last ButtonState2);

kung (mode == 0) {

getBright (); para sa (int i = 0; i <halo.numPixels (); i ++) {halo.setPixelColor (i, halo. Color (brightVal, brightVal, brightVal)); // itakda ang lahat ng mga pixel sa puti} halo.show (); }; kung (mode == 1) {getBright (); para sa (int i = 0; i <halo.numPixels (); i ++) {halo.setPixelColor (i, halo. Color (brightVal, 0, 0)); // itakda ang lahat ng mga pixel sa pula} halo.show (); }; kung (mode == 2) {getBright (); para sa (int i = 0; i <halo.numPixels (); i ++) {halo.setPixelColor (i, halo. Color (0, brightVal, 0)); // itakda ang lahat ng mga pixel sa berde} halo.show (); }; kung (mode == 3) {getBright (); para sa (int i = 0; i <halo.numPixels (); i ++) {halo.setPixelColor (i, halo. Color (0, 0, brightVal)); // itakda ang lahat ng mga pixel sa asul} halo.show (); }; kung (mode == 4) {getBright (); para sa (int i = 0; i <halo.numPixels (); i ++) {halo.setPixelColor (i, halo. Color (0, brightVal, brightVal)); // itakda ang lahat ng mga pixel sa cyan} halo.show (); }; kung (mode == 5) {getBright (); para sa (int i = 0; i <halo.numPixels (); i ++) {halo.setPixelColor (i, halo. Color (brightVal, 0, brightVal)); // itakda ang lahat ng mga pixel sa lila / magenta} halo.show (); }; kung (mode == 6) {getBright (); para sa (int i = 0; i <halo.numPixels (); i ++) {halo.setPixelColor (i, halo. Color (brightVal, brightVal, 0)); // itakda ang lahat ng mga pixel sa orange / dilaw} halo.show (); }; kung (mode == 7) {// ngayon ang mga dynamic na mode getBright (); colorWipe (halo. Color (brightVal, 0, 0), 50); // Pula}; kung (mode == 8) {getBright (); colorWipe (halo. Kulay (0, brightVal, 0), 50); // Green}; kung (mode == 9) {getBright (); colorWipe (halo. Kulay (0, 0, brightVal), 50); // Bughaw }; kung (mode == 10) {getBright (); colorWipe (halo. Color (brightVal, brightVal, brightVal), 50); // maputi}; kung (mode == 11) {getBright (); colorWipe (halo. Color (brightVal, brightVal, 0), 50); // orange / dilaw}; kung (mode == 12) {getBright (); colorWipe (halo. Color (0, brightVal, brightVal), 50); // cyan}; kung (mode == 13) {getBright (); colorWipe (halo. Color (brightVal, 0, brightVal), 50); // purple / magenta}; kung (mode == 14) {// ang huling dalawa ay ang kontrol sa bilis, sapagkat ang ningning ay pabago-bago getBright (); bahaghari (brightVal); }; kung (mode == 15) {getBright (); bahaghariCycle (brightVal); }; antala (10); // payagan ang processor ng kaunting pahinga}

Hakbang 9: Ang Grand Finale

Ang Grand Finale
Ang Grand Finale

At ngayon mayroon kaming kamangha-manghang, sobrang maliwanag na maliit na lampara!

Maaari mong baguhin ito nang higit pa mula dito, o iwanan ito ngayon. Maaari mong baguhin ang code, o kahit na ganap na magsulat ng bago. Maaari mong palakihin ang base at magdagdag ng mga baterya. Maaari kang magdagdag ng isang fan. Maaari kang magdagdag ng higit pang mga NeoPixels. Ang listahan ng lahat ng magagawa mo dito ay halos walang katapusan. Sinasabi ko na "halos" dahil sigurado akong wala pa tayong tech na i-convert ito sa isang mini portal generator (sa kasamaang palad), ngunit bukod sa mga bagay na tulad nito, ang tanging limitasyon ay ang iyong imahinasyon (at sa ilang sukat, tulad ng nalaman ko kamakailan, ang mga tool sa iyong pagawaan). Ngunit kung wala kang mga tool, huwag hayaan na huminto iyon, kung talagang nais mong gumawa ng isang bagay palaging may paraan.

Bahagi iyon ng punto ng proyektong ito, upang mapatunayan sa aking sarili (at sa isang mas maliit na lawak, ang mundo) na maaari akong gumawa ng mga kapaki-pakinabang na bagay na nais din ng ibang tao, kahit na ang mayroon ako ay isang patunay na basura ng basura ng luma at nawasak mga sangkap at isang basurahan ng mga supply ng Arduino.

Aalis ako dito, dahil sa palagay ko ang isang ito ay naging maayos. Kung mayroon kang isang mungkahi para sa pagpapabuti, o isang katanungan tungkol sa aking mga pamamaraan, mangyaring mag-iwan ng komento sa ibaba. Kung ginawa mo ito, kumuha ng litrato, lahat kami ay nais na makita ito!

Mangyaring huwag kalimutan na Bumoto kung gusto mo ito!

Tulad ng dati, ito ang mga proyekto ng Mapanganib na Paputok, ang kanyang panghabambuhay na misyon, "Upang matapang na buuin ang nais mong buuin, at higit pa!"

Mahahanap mo ang natitirang mga proyekto ko dito.

Salamat sa pagbabasa, at Maligayang Paggawa!

Inirerekumendang: