Talaan ng mga Nilalaman:

Pinapagana ng Arduino, Kinokontrol ng Sensor na Fading LED Light Strips: 6 Hakbang (na may Mga Larawan)
Pinapagana ng Arduino, Kinokontrol ng Sensor na Fading LED Light Strips: 6 Hakbang (na may Mga Larawan)

Video: Pinapagana ng Arduino, Kinokontrol ng Sensor na Fading LED Light Strips: 6 Hakbang (na may Mga Larawan)

Video: Pinapagana ng Arduino, Kinokontrol ng Sensor na Fading LED Light Strips: 6 Hakbang (na may Mga Larawan)
Video: Learn Arduino in 30 Minutes: Examples and projects 2024, Nobyembre
Anonim
Image
Image

Kamakailan-lamang na na-update ang aking kusina at nalaman na ang pag-iilaw ay 'maiangat' ang hitsura ng mga aparador. Nagpunta ako para sa 'True Handless' kaya't mayroon akong puwang sa ilalim ng ibabaw ng trabaho, pati na rin isang kickboard, sa ilalim ng aparador at sa tuktok ng mga aparador na magagamit at nais na sindihan sila. Matapos ang pagtingin sa paligid ay hindi ko makita kung ano mismo ang gusto ko, at nagpasyang bigyan ito ng sarili kong paraan.

Para sa pag-iilaw pumili ako ng solong kulay, maligamgam na puting LED strips (ang hindi tinatagusan ng tubig na uri na may isang kakayahang umangkop na plastik na patong para sa proteksyon).

Para sa mga aparador sa dingding, dahil ang mga ito ay patag sa ilalim, pumili ako ng napakababang mga ilaw ng profile at itinuro ang cable sa loob ng gabinete at sa likuran (sa loob ng mga aparador ay pinutol ko ang isang uka gamit ang isang Dremel para sa cable, pagkatapos ay pinunan ito pabalik sa isang beses ang cable ay nasa loob, kaya walang palatandaan nito).

NGUNIT … Hindi ko ginusto ang isang malaking switch, at nais ng isang premium na pagtingin sa kung paano lumitaw ang mga ilaw, kaya pagkatapos ng pagtingin sa paligid at paghanap ng ilang mga fade up / down switch, at isang naka-enable ang Alexa, hindi ko pa rin makita na maaaring patakbuhin ang lahat ng mga ilaw at gawin itong maganda pa rin, kaya't nagpasya akong gumawa ng sarili ko.

Ang aking proyekto samakatuwid ay upang makabuo ng isang aparato na kung saan ay maaaring kapangyarihan ang lahat ng apat na mga ilaw, na may isang staggered, mabilis fade up mula sa isang passive sensor - magpatuloy hanggang sa umalis ako sa kusina at alinman sa isang switch upang 'pilitin' ito upang manatili sa, o kung umalis ako sa kusina upang mawala sa isang paunang natukoy na oras kung wala itong nakikita.

(At hindi ito nagkakahalaga ng higit pa sa isang solong paunang naka-built na unit sa amazon - na may mga ekstrang!).

Narito ang isang video nito sa pagkilos

Hakbang 1: Mga Bahagi

Mayroon akong listahan ng mga bahagi na ginamit ko mula sa Amazon sa ibaba. Huwag mag-atubiling i-click ang link upang bilhin ang mga ito, ngunit kung mayroon kang mga katulad na item na nakabitin, gamitin ang mga ito !!! Tandaan na ang ilan sa mga ito ay 'maramihang' mga item kaya dapat mayroon kang sapat na spares para sa paggawa ng mga para sa mga kaibigan at pamilya, o para lamang sa iba pang mga proyekto - ngunit ang mga ito ay masyadong mura na upang bumili ng isang off ay madalas na mababawi ng mga singil sa karwahe…..

Mga bahagi para sa proyektong ito:

Buong hanay ng Arduino (Tandaan: hindi kinakailangan ngunit naglalaman ng maraming mga bagay para sa paglalaro sa hinaharap!):

Arduino NANO (Ginamit sa loob ng kahon):

PIR Sensor:

Mga LED Light Strip:

LED Driver (Power supply):

Mga board ng MOSFET:

Itulak upang gumawa ng mga switch:

Itim na kahon para sa naglalaman ng Arduino at MOSFETs:

Puting kahon para sa sensor at switch:

Pagkonekta ng kawad mula sa mga bahagi sa mga LED strip:

2.1mm plugs at sockets:

Wire para sa pagkonekta sa Arduino sa iba pang mga bahagi:

Mga thermal heatsink (para sa MOSFETs):

Thermal double-sided tape:

Init na pag-urong ang manggas

Hakbang 2: Teknolohiya at Paano Ito Magkakasama

Teknolohiya at Paano Ito Magkakasama
Teknolohiya at Paano Ito Magkakasama
Teknolohiya at Paano Ito Magkakasama
Teknolohiya at Paano Ito Magkakasama

Upang magawa ito, una, kailangan naming gawin ang circuit…

Kaya't upang magsimula sa, gumamit ako ng isang bread-board at isang buong sukat na Ardiuno Uno. Hindi pa nagamit ang isang Arduino bago, bumili ako ng isang pakete kasama ang isang third-party na Uno at isang buong kit ng mga bahagi (na pagkatapos nito, gagamitin ko ang para sa iba pang mga proyekto). Malinaw na hindi mo kailangang gawin ito kung sumusunod ka lang sa proyektong ito, ngunit magandang ideya kung maaari ka ring magtayo ng iba pang mga bagay.

Pinapayagan ka ng Bread-board na itulak lamang ang mga wire at sangkap sa isang plastic board upang hayaan kang masubukan ang iyong disenyo ng elektronikong bahagi.

Pinagsama ko ito kasama ang isang pares ng mga pulang LEDs, at pinapayagan akong suriin kung paano gumana ang pagkupas na bahagi ng programa (Pansamantalang itinakda ko ito upang mag-out pagkatapos ng 10 segundo upang makita ko ang epekto ng staggered fade in and out). Ang paraan ng paggana nito ay ang mga LEDs ay instant na naka-on / naka-off (hindi tulad ng tradisyunal na mga bombilya), kaya hindi mo kailangang ilagay sa isang variable na boltahe - maaari mo talagang i-on at i-off ang mga ito nang napakabilis na mukhang hindi sila gaanong maliwanag. Tinatawag itong Pulse Wave Modulation (maikli ang PWM). Talaga, kung mas matagal mong panatilihin ang mga ito para sa, mas maliwanag na nakukuha nila.

TANDAAN: sa sandaling na-wire ko ang aktwal na mga light strip, ang kasalukuyang gumuhit mula sa bawat isa sa mga kumpletong piraso ay sanhi ng mga ito upang maging isang maliit na hindi gaanong maliwanag AT naglaho sila nang bahagyang naiiba - sa gayon, ginawa ko ang programa sa ilang mga maaaring mai-configure na setting)

Bagaman maaari kang bumili ng maliit na plug sa mga power supply upang direktang ihimok ang mga LED strips, dahil mayroon akong apat sa kanila, nagpasya akong bumili ng isang LED driver (karaniwang isang power supply na may mas mataas na kasalukuyang output). Sobra kong na-rate ito dahil hindi ko talaga nakita ang totoong kasalukuyang gumuhit hanggang sa ito ay maitayo (habang ginagawa ko ito lahat bago mai-install ang kusina). Kung ikaw ay naka-angkop muli sa isang mayroon nang kusina (o kung anuman ang ginagamit mo para dito), maaari mong sukatin ang kasalukuyang pagguhit bawat strip, idagdag ang mga halaga nang magkasama at pagkatapos ay pumili ng isang naaangkop na LED driver (ang susunod na pag-rate ng power up).

Matapos ang pag-breadboard dito, napagtanto ko ang kasalukuyang gumuhit mula sa mga ilaw ay magiging masyadong mataas upang magmaneho nang direkta mula sa Arduino, kaya para sa totoong yunit na ginamit ko ang ilang mga MOSFET - ang mga ito ay kumikilos tulad ng isang relay - kung nakakakuha sila ng lakas (mula sa mababang bahagi ng kuryente), pagkatapos ay buksan nila ang koneksyon sa mataas na kasalukuyang bahagi.

Nagdaya ako dito - Maaari ko lang bumili ng mga aktwal na MOSFET ngunit may ilang naka-mount na sa mga maliit na circuit board na magagamit, kasama ang mga screw konektor at nakatutuwa na maliit na SMD LED na ilaw sa pisara upang makita mo ang kanilang katayuan. Makatipid ng oras sa paghihinang? Impiyerno oo!

Kahit na sa MOSFETs, ang maximum na rating ng haba ng mga LED strip ay gumuhit pa rin ng ilang mga AMP, at inirekomenda ng MOSFET na magdagdag ng isang heat-sink upang matulungan silang mapanlamig. Kaya kumuha ako ng ilang maliliit na heatsink at gumamit ng double-sided thermal tape upang idikit ito sa metal na bahagi ng heatsink. Sa buong lakas, nag-iinit pa rin sila, ngunit pagkatapos na ayusin ang maximum na ningning sa aking programa (ang mga LED ay masyadong MALINAW), nalaman kong ang MOSFETs ay hindi pa rin tumatakbo nang mainit ngunit sulit pa ring idagdag ang mga ito upang pahabain ang buhay ng mga sangkap o kung pipiliin mo ang isang mas maliwanag na antas kaysa sa ginawa ko.

Ang Sensor ay magagamit din na nakabalot sa isang maliit na circuit board, at kasama dito ang lahat ng suporta sa circuitry, pati na rin ang isang pares ng Jumpers (maliit na mga pin na may isang link, na maaari mong ilipat sa pagitan ng mga posisyon upang pumili ng iba't ibang mga pagpipilian) at isang variable pag-timeout Habang ginagamit namin ito upang ma-trigger ang aming sariling timer, maiiwan namin sila sa default na posisyon.

Nagdagdag ako ng isang maliit na Push to Make switch malapit sa sensor upang payagan akong 'mag-on' ng ilaw nang tuloy-tuloy at patayin ang mga ito sa isang pangalawang pindutin. Ito ang sangkap na pinakaproblema ko bilang isang kombinasyon ng mga bagay na nangangahulugang madalas na naisip ng Arduino na ang switch ay pinindot, kaya't bubukas at patayin ko ang mga ilaw nang sapalaran. Ito ay tila isang kumbinasyon ng ingay sa loob ng Arduino, haba ng cable, ingay sa linya ng Ground / 0V, at ang mga koneksyon sa loob ng mga switch ay maingay kaya kailangan nilang 'de-bounc'. Naglaro ako ng ilang mga bagay, ngunit sa wakas ay naayos na ang pag-check sa programa na pinipindot ko ang pindutan para sa ilang milliseconds - karaniwang de-bouncing, ngunit hindi rin pinapansin ang anumang ingay.

Para sa totoong yunit, nakakita ako ng isang maliit, hindi nakakaabala na kahon upang maitabi ang sensor at push switch, at isa pa na nilagyan ang lahat ng mga board at cable ng MOSFET. Upang gawing mas madali ang mga bagay, bumili ako ng ilang dalawang-core cable na maaaring magdala ng kasalukuyang (at minarkahan ang isang cable para sa madaling pagkakakilanlan) at pinatakbo ito sa paligid ng kusina sa mga panimulang punto ng bawat isa sa mga light strip. Bumili din ako ng ilang mga socket at plug, na pinapayagan akong wakasan ang mga cable sa isang plug, at na-install ang apat na sockets sa mas malaking kahon. Sa ganitong paraan ay maaari kong muling mag-order ng mga light strip upang magsimula sila mula sa kick-board, sa pamamagitan ng mga hawakan, sa ilalim ng aparador at higit sa mga ilaw ng aparador sa pamamagitan lamang ng pag-unplug sa kanila sa halip na baguhin ang code.

Ang kahon na ito ay agad na nilagyan ng isang Arduino NANO (muli ng isang third-party board na mas mababa sa £ 3) sa tuktok. Upang makuha ang maliliit na koneksyon mula sa NANO at sa MOSFETS atbp Gumamit ako ng iba't ibang mga may kulay na solong-core na cable (Gumamit ako ng isa na may pagkakabukod na may patunay na init ngunit hindi mo kailangan). Ginamit ko pa rin ang mas mataas na kasalukuyang na-rate na dalawang-core cable mula sa mga MOSFET hanggang sa mga socket.

Upang mai-drill ang mga kahon, sa kabutihang palad ay mayroon akong magagamit na isang drill ng haligi, ngunit kahit na wala ito, maaari kang mag-drill ng isang butas ng piloto na may isang maliit na bit ng drill at pagkatapos ay palawakin ang butas sa laki na kailangan mo gamit ang isang stepped drill bit (https:// amzn.to/2DctXYh). Sa ganitong paraan makakakuha ka ng mas malinis, mas maraming kontroladong mga butas, lalo na sa mga kahon ng ABS.

I-drill ang mga butas ayon sa diagram.

Ang puting kahon, minarkahan ko ang posisyon ng sensor at kung saan nakalagay ang puting fresnel lens. Pagkatapos ay nahanap ko kung saan ang gitna nito, nag-drill ako ng isang butas ng piloto at pagkatapos ay ginamit ang mas malaking stepped drill bit upang mapalawak ito (maaari mo lamang gamitin ang isang 'kahoy' na drill na bit ng mas malaking sukat na iyon). Pagkatapos ay kinailangan kong buhangin ang butas nang kaunti mas malaki NGUNIT hindi ko itinulak ang lahat ng fresnel lens sa butas - sa pamamagitan ng pagpapanatiling mas maliit ang butas, hindi nito ginagawang nakikita ang sensor.

Mahahanap mo rin sa puting kahon na mayroong ilang mga labad na dumidikit sa gilid upang payagan kang i-tornilyo ang kahon sa isang dingding, atbp ngunit pinutol ko ang mga ito. Pagkatapos ay pinalaki ko ang maliit na ginupit sa kahon na idinisenyo para sa isang cable sa isang gilid upang magkasya ang mas malaking 4 core cable na ginamit ko, at ang kabilang panig ng kahon ay pinalawak ko ito upang magkasya ang switch (tingnan ang larawan).

Hakbang 3: Pag-kable Nito

Kable It Up
Kable It Up

Tingnan ang naka-attach na diagram ng mga kable.

Talaga, maaari mong gamitin ang mga push-on na konektor at pagkatapos ay maghinang sa mga pin na kasama ng Arduino, o tulad ng ginawa ko, direktang maghinang lamang sa mga pin sa board ng Arduino. Tulad ng anumang trabaho sa paghihinang, kung wala kang karanasan, tingnan ang mga video sa Youtube at magsanay muna - ngunit mahalagang: 1) Gumamit ng isang mahusay na init (hindi masyadong mainit at hindi masyadong malamig) sa bakal at tiyaking hindi na-pite ang tip. 2) Huwag 'i-load' ang solder papunta sa dulo ng iron (bagaman mahusay na kasanayan na 'tin' ang dulo kapag kauna-unahang nagsimula pagkatapos ay punasan o i-knock off ang labis - pagsasanay na hawakan ang dulo ng iron sa bahagi at ilang sandali lamang pagkatapos ay hawakan ang solder sa tip at ang sangkap nang sabay at dapat itong 'dumaloy' papunta sa board. 3) Huwag labis na pag-init ang mga sangkap (MAHALAGA !!!) - kung tila hindi ito umaagos, iwanan ito upang palamig at subukang muli sa ilang sandali, at huwag ding gumana sa parehong lugar na masyadong mahaba. 4) maliban kung mayroon kang tatlong mga kamay o may karanasan sa paghawak ng mga chopstick, bumili ng isa sa mga bagay na tumutulong sa Mga Kamay na magkakasama sa mga sangkap (hal.

Upang gawing mas madali ang buhay, de-solder ko rin ang mga 3-pin na konektor sa mga board ng MOSFET. Upang magawa ito, matunaw ang ilang solder papunta sa umiiral na koneksyon ng solder upang matulungan itong dumaloy muli, pagkatapos ay gumamit ng isang pares ng pliers upang hilahin ang mga pin habang ang solder ay tinunaw pa rin. Makatutulong kung mayroon kang isang de-solder pump o wick upang iguhit ang tinunaw na solder bago mo hilahin ang sangkap (hal. Https://amzn.to/2Z8P9aT), ngunit magagawa mo ito nang wala ito. Katulad nito, maaari ka lamang maghinang nang direkta sa mga pin kung nais mong (mas neater kung direktang kawad ka o ang board).

Ngayon, tingnan ang diagram ng mga kable.

Kumuha ng isang piraso ng pinong solong core wire at kumuha ng kaunting pagkakabukod sa dulo (nakita ko ang mga strap ng rolson at pamutol https://amzn.to/2DcSkom mabuti) pagkatapos ay i-twist ang mga wire at matunaw ng isang maliit na panghinang sa kanila upang hawakan mo silang dalawa. Itulak ang kawad sa butas sa board at pagkatapos ay ihihinang ang kawad sa lugar.

Ipagpatuloy ito para sa lahat ng mga wires papunta sa Arduino na aking nakalista (gamitin ang bilang ng mga Digital pin na kailangan mo - Mayroon akong 4 na hanay ng mga ilaw ngunit maaari mong gamitin ang higit pa o mas kaunti). Mainam na gumamit ng may kulay na kable na tumutugma sa paggamit (hal. 12V Pula, itim na GND, atbp).

Upang gawing maayos ang mga bagay at maiwasan ang mga maikling circuit, inirerekumenda ko ang pagdulas ng isang maliit na piraso ng pag-urong ng init na manggas (https://amzn.to/2Dc6lD3) para sa bawat koneksyon sa kawad bago maghinang. Hawakan ito sa malayo habang naghihinang ka, pagkatapos ay cool na ang kasukasuan at pagkatapos subukan ang lahat, i-slide ito sa koneksyon at painitin ito ng isang heat gun sa loob ng ilang segundo. Paliit ito upang makagawa ng maayos na magkasanib.

TANDAAN: Nabasa ko sa isang lugar na mayroong ilang crosstalk sa pagitan ng ilan sa mga pin sa Arduino D12 o D8. Upang maging ligtas, ginamit ko ang D3 para sa pang-apat na output - ngunit kung nais mong subukan ang iba, huwag mag-atubiling, huwag kalimutan na i-update ito sa code.

Gupitin ang mga kable sa isang makatwirang haba upang magkasya sa loob ng kahon, pagkatapos ay i-cut at i-lata muli ang mga dulo. Sa oras na ito, maghinang ang mga cable sa mga board ng MOSFET sa mga pin tulad ng ipinakita. Ang bawat digital output (D9, D10, D11 at D3) ay dapat na solder sa isa sa apat na board. Para sa mga output ng GND, pinagsama-sama ko silang lahat at sumali sa kanila ng isang patak ng panghinang - hindi ang masinop na paraan, ngunit lahat ng ito ay nagtatago sa isang kahon …

Arduino sa MOSFETs

Ang boltahe ng pag-input ay nai-wire ko ang + 12V at GND sa parehong paraan, at inilagay ang mga ito at ilang maikling haba ng 2-core cable sa isang Chocblock. Pinapayagan akong gamitin ang Choblock bilang isang relief relief para sa papasok na lakas mula sa LED driver / PSU at pinayagan din ang mas makapal na 2-core na mga kable na mas maayos na pagsama. Una kong tinned ang mga dulo ng mga cable ngunit natagpuan na hindi magkasya ang mga ito sa loob ng mga koneksyon sa mga board ng MOSFET kaya't natapos ang pagputol ng mga naka-tin na dulo at mas mahusay silang nilagyan.

Kumuha ako ng higit pa, 4 cm ang haba ng 2-core cable at na-solder ang mga ito sa 2.1 sockets. Tandaan na ang mga ito ay may tatlong mga pin sa kanila at ang isa ay ginagamit upang magbigay ng isang feed kapag ang isang koneksyon ay tinanggal. Gamitin ang koneksyon para sa panloob na pin (12V) at panlabas (GND) at iwanan na naka-disconnect ang pangatlong pin. Pagkatapos ay ilagay ang bawat cable sa mga butas sa gilid ng kahon, magdagdag ng isang kulay ng nuwes, pagkatapos ay ipasok ang mga ito sa mga terminal ng output ng konektor ng MOSFET at higpitan ang mga ito.

Pagkonekta sa Sensor

Gumagamit ng ilang apat na pangunahing kable, gupitin ang haba ng sapat na haba upang maglakbay mula sa kung saan mo itinatago ang PSU at kahon papunta sa kung saan mo hinahanap na ilagay ang sensor (tiyaking ito ay isang lokasyon na mahuhuli ka habang naglalakad ka sa lugar, ngunit hindi nadapa kapag may dumaan sa susunod na silid!).

Paghinang ng mga wire sa mga pin sa board ng sensor (maaari mong alisin ang mga pin kung gusto mo), at gamit ang isang maikling haba ng cable (itim!), Wire isang link cable upang ipagpatuloy ang GND cable sa isang bahagi ng switch. Pagkatapos ay maghinang ng isa pang mga wires mula sa 4-core cable sa kabilang panig ng switch.

Ilagay ang sensor at lumipat sa puting kahon, pagkatapos ay ruta ang cable sa paligid ng iyong silid at pagkatapos ay itulak ang kabilang dulo ng cable sa pamamagitan ng butas sa itim na kahon at solder ang mga wire sa tamang mga pin sa Arduino.

Maglagay ng isang maliit na kurbatang kurdon sa paligid ng cable sa loob lamang ng kahon upang maiwasan na mahugot ang cable na ito at mapinsala ang iyong koneksyon sa Arduino.

Lakas

Ang LED Driver (Power supply) na binili ko ay may dalawang output buntot - na parehong may 12V at GND, kaya ginamit ko ang pareho sa mga ito at hinati ang paggamit upang ang 2 x LEDs ay dumaan sa dalawa sa mga MOSFET at pinapagana mula sa isa sa ang output output ng kuryente, at ang iba pang 2 LEDs mula sa iba pang mga output. Nakasalalay sa pag-load mula sa mga LED na iyong ginagamit, maaaring pumili ka ng iba't ibang suplay ng kuryente at mayroon lamang isang output.

Kaya, ang aking kahon ay mayroong 2 x hole kung saan pumasok ang mga cable mula sa Power Supply, at pagkatapos ay naglagay ako ng isang Chocblock sa loob upang makakonekta at makapagbigay din ng kaluwagan.

Hakbang 4: Ang Arduino Program

Ang Arduino Program
Ang Arduino Program

Ang programa (naka-attach) ay dapat na medyo nagpapaliwanag at sinubukan kong magbigay ng mga komento sa kabuuan. Mangyaring huwag mag-atubiling baguhin ito para sa iyong sariling mga kinakailangan sa proyekto.

MAHALAGA: Itinakda ko ito nang orihinal sa isang kit ng mga bahagi at isang Arduino UNO. Kung gumagamit ka ng Arduino NANO boards, ang bootloader sa kanila ay malamang na mas matanda. Hindi mo kailangang i-update ito (mayroong isang paraan upang magawa ito, ngunit hindi ito kinakailangan para sa proyektong ito). Ang kailangan mo lang gawin ay tiyakin na pinili mo ang Arduino NANO sa Mga Tool> Lupon, pagkatapos ay piliin mo rin ang tama sa Mga Tool> Processor. Kapag pinili mo ang COM port, maaari mo ring piliing makita kung ano ang nangyayari kung kumonekta ka sa serial console (Mga Tool> Serial Monitor).

Ito ang aking unang proyekto ng Arduino, at nasiyahan ako na napakadali nitong mag-download at mag-install at gumamit ng mga tool sa pag-program ng Arduino (ang bagay na hinahayaan kang i-type sa mga programa at i-upload ang mga ito sa board). (i-download ang IDE mula sa

Sa pamamagitan lamang ng pag-plug sa board sa isang USB port, lumilitaw ito bilang isang aparato maaari kang mag-upload ng isang programa sa board at tumatakbo ang code!

Paano gumagana ang code

Karaniwan mayroong isang piraso ng pag-set up sa tuktok kung saan ko tinukoy ang lahat. Dito mo mababago ang mga pin na ginagamit mo para sa mga ilaw, ang maximum na ningning ng mga ilaw (255 ay max), kung gaano kabilis maglaho, at kung gaano kabilis mawala ito.

Mayroon ding isang offset na halaga na kung saan ay ang puwang sa pagitan ng isang ilaw na kumukupas sa susunod - kaya hindi mo kailangang maghintay para sa bawat isa ay mawala - maaari mong simulan ang susunod na fade bago matapos ang naunang fading.

Pinili ko ang mga halagang gumagana para sa akin, ngunit mangyaring huwag mag-atubiling mag-eksperimento. Gayunpaman: 1) Hindi ko pinapayuhan na gawing masyadong mataas ang max na ningning - kahit na gumagana ito, nararamdaman kong ang mga ilaw ay masyadong maliwanag at hindi magulo (at, na may isang mahabang string ng LEDs, ang karagdagang kasalukuyang ginagawang mainit ang MOSFETs - kung saan kaso baguhin ang kahon para sa isang mas maaliwalas na isa). 2) gumagana ang offset para sa kasalukuyang mga halaga, ngunit dahil sa kung paano hindi pinapataas ng mga LED ang kanilang ningning sa isang linear na paraan batay sa inilapat na kapangyarihan, maaari mong makita na kailangan mo ring ayusin ang iba pang mga parameter hanggang sa makakuha ka ng isang mabuting epekto. 3) Sa fade up routine naitakda ko ang maximum na ningning ng aking mga ilaw sa counter upang ma-max out sa 255 (gumuhit sila ng mas kaunting kasalukuyang kaya huwag labis na pag-init ng MOSFETs at nais kong makita kung ano ang luto ko!).

Matapos ang bahagi ng pag-set up, mayroong isang malaking loop.

Nagsisimula ito sa isang flash o dalawa sa onboard LED (upang makita mong gumagana ito, at isang pagkaantala din upang mabigyan ka ng pagkakataong lumabas sa saklaw ng sensor). Ang code ay nakaupo sa isang loop, naghihintay para sa isang na-trigger na pagbabago mula sa sensor.

Kapag nakuha ito, inaanyayahan nito ang pagruruta sa TurnOn, kung saan binibilang ito hanggang 0 sa kabuuang halaga ng lahat ng 4 na aparato sa napiling maximum na halaga, na nagdaragdag ng halagang tinukoy mo sa halagang FadeSpeed1. Gumagamit ito ng pagpipilit na utos upang maiwasan ang bawat output na mas malaki kaysa sa maximum na ningning.

Pagkatapos ay nakaupo ito sa isa pang loop, na-reset ang isang halaga kung ang sensor ay nai-trigger muli. Kung hindi ito nai-reset, pagkatapos kapag ang timer ng Arduino ay tumama sa puntong ito, ito ay lumalabas sa loop at inanyayahan ang gawain ng TurnOff.

Sa anumang punto sa panahon ng loop na 'nasa estado', kung ang switch ay pinindot nang higit sa ilang milliseconds, pinapa-flash namin ang mga ilaw upang kumpirmahin at pagkatapos ay magtakda ng isang watawat na sanhi ng halaga ng timer na palaging ma-reset - kaya't hindi mawawala ang mga ilaw muli Ang pangalawang pagpindot ng switch ay nagsasanhi upang muling mag-flash ang mga ilaw at upang lumabas ang loop, na pinapayagan ang mga ilaw na mawala at para itong mai-reset.

Hakbang 5: Paglalagay ng Lahat sa Kahon

Paglalagay ng lahat sa kahon
Paglalagay ng lahat sa kahon
Paglalagay ng lahat sa kahon
Paglalagay ng lahat sa kahon

Kapag na-wire mo na ang lahat, oras na upang subukan ito.

Nalaman ko na ang aking orihinal na lokasyon para sa sensor ay hindi gagana, kaya pinapaikli ko ang cable at inilagay ito sa isang bagong lokasyon - Pansamantalang naitago ko ito sa isang patak ng pandikit na natunaw, ngunit gumagana ito ng maayos doon, mayroon akong iniwan itong natigil doon kaysa gumamit ng mga velcro pad.

Sa sensor, mayroong isang pares ng mga variable potentiometers na nagbibigay-daan sa iyo upang ayusin ang pagiging sensitibo ng PIR at kung gaano katagal na na-trigger ang sensor. Habang kinokontrol namin ang elemento na 'gaano katagal para' sa code, maiiwan mo ito sa pinakamababang halaga, ngunit huwag mag-atubiling ayusin ang pagpipiliang sensitibo. Mayroon ding isang lumulukso - Iniwan ko ito sa ito ay default na posisyon pati na rin pinapayagan ang sensor na 'ma-retriggered' - kung makikita ka lang nito minsan lagi na ring lumalabas, oras na upang ilipat ang switch na ito!

Upang matulungan sa pagsubok, pansamantala kong pinaikling ang oras na mananatili ang mga ilaw sa loob ng 12 segundo kaysa maghintay ng 2 minuto o mahigit pa. Tandaan na kung gagawin mo itong mas mababa kaysa sa oras na ginugol upang ganap na mawala, ang code ay palaging lumampas sa maximum na oras at agad na mawala.

Para sa mga LED strip, kailangan mong i-cut ang mga piraso sa mga puntong minarkahan sa strip. Pagkatapos, gamit ang isang matalim na kutsilyo (ngunit maingat na hindi gupitin ang lahat!), I-cut sa pamamagitan ng hindi tinatagusan ng tubig na patong sa metal strip at pagkatapos ay alisan ng balat, ilantad ang dalawang mga pad ng solder. Maglagay ng ilang panghinang sa mga ito (muli, mag-ingat na huwag masyadong kainin ang mga ito) at maglakip ng isang piraso ng kawad na dalawang-core. Pagkatapos sa kabilang dulo ng kawad, maghinang sa isang plug upang maaari mo itong mai-plug sa socket para magmaneho ang circuit.

Tandaan: kahit na bumili ako ng ilang mga 90 degree na konektor para sa mga LED strip na maaari mong i-slide on, NGUNIT natagpuan ko sila upang makagawa ng isang masamang koneksyon na mag-flicker o mabigo sila. Samakatuwid pinutol ko ang mga piraso sa laki na gusto ko at naghinang ng isang sumasamang cable sa pagitan ng mga piraso ng LED strip sa halip. Nakatulong din ito kapag kailangan kong patakbuhin ang under-cupboard strip, dahil kailangan kong gumawa ng mas mahabang pagsali kung nasaan ang makinang panghugas at palamigan.

I-plug ang lahat nang magkasama at pagkatapos ay isaksak ang Power Supply sa mains. Pagkatapos kung lumipat ka malapit sa sensor ng PIR, dapat itong mag-trigger at dapat mong makita ang mga ilaw na kumupas sa isang kaaya-aya na paraan.

Kung, tulad ng sa akin, ang mga ilaw ay kumukupas sa maling pagkakasunud-sunod, mag-ehersisyo lamang kung aling cable ang aling at i-plug / ipalitan ang mga kable sa isa pang socket hanggang sa masarap mo itong mawala.

Maaari mo ring ayusin ang mga setting ng programa (napansin kong mas matagal ang mga LED strip, mas madidilim na ipinapakita nila sa 'buong ilaw') at maaari mo lamang mai-plug ang arduino sa iyong computer at muling mag-upload ng isang bagong programa.

Kahit na nabasa ko sa isang lugar na hindi magandang ideya na magkaroon ng dalawang supply ng kuryente sa Arduino (ang USB ay nagbibigay din ng lakas), natapos ko ang paglalagay ng arduino sa Power Supply at pagkatapos ay isaksak din ang koneksyon sa USB sa computer upang ang Nasusubaybayan ko kung ano ang nangyayari gamit ang Serial Port monitor. Gumana ito nang maayos para sa akin, kaya kung nais mo ring gawin ito, naiwan ko ang mga serial message sa code.

Kapag nakumpirma mo na na gumagana ang lahat, oras na upang maiakma ang lahat sa mga kahon. Para sa mga ito simpleng ginamit ko ang mainit na pandikit.

Kung titingnan mo ang posisyon ng lahat sa kahon, makikita mo na ang mga board ng MOSFET ay maaaring umupo sa magkabilang panig ng kahon, at ang cable mula sa output ng mga loop na ito sa paligid at ang 2.1mm socket ay maaaring mailagay sa susunod sa MOSFET mismo sa pamamagitan ng butas at ang nut na nakakabit upang hawakan ito sa lugar. Ang isang maliit na patak ng pandikit ay tumutulong sa paghawak ng mga ito sa lugar ngunit maaari pa rin silang hilahin muli kung kinakailangan.

Ang Arduino ay dapat na site na patagilid-sa tuktok ng kahon, at ang chocblock para sa kuryente ay dapat umupo sa ilalim.

Kung mayroon kang oras upang masukat at muling maghinang ng lahat ng mga cable, huwag mag-atubiling gawin ito, ngunit dahil ito ay pareho sa loob ng isang kahon at nakatago sa ilalim ng aking mga pinagtatrabahuhan, iniwan ko ang aking 'pugad ng mga daga' ng mga wire sa gitnang puwang ng ang kahon (malayo sa mga heatsink sa MOSFET, kung sakaling uminit sila).

Pagkatapos ay ilagay lamang ang takip sa kahon, i-plug ito at mag-enjoy!

Hakbang 6: Buod at Hinaharap

Inaasahan kong nahanap mo itong kapaki-pakinabang at kahit na dinisenyo ko ito para sa aking bagong kusina (na may apat na elemento ng LED), madali itong madaling ibagay para sa iba pang mga layunin.

Nalaman kong hindi namin madalas gamitin ang pangunahing mga ilaw sa kusina dahil ang mga LED na ito ay nagbibigay ng sapat na ilaw para sa karamihan ng mga layunin, pati na rin ang paggawa ng kusina ng isang mas kawili-wiling lugar na naroroon.

Ito ang aking unang proyekto ng Arduino, at tiyak na hindi ako ang huli dahil pinapayagan ako ng bahagi ng pag-coding na gamitin ang aking (kalawangin!) Mga kasanayan sa pag-cod sa halip na mga proseso ng disenyo ng elektronik, at ang pagkakakonekta at suporta ng Arduino ay nagbibigay ng maraming talagang cool na mga pag-andar nang hindi nangangailangan upang makagawa ng maraming mga de-koryenteng circuit.

Maaari ko lang binili ang MOSFETs mismo (o gumamit ng ibang pamamaraan) upang himukin ang mataas na kasalukuyang mga LED strips, ngunit nangangahulugang pagbili ng mga bahagi ng suporta (diode, risistor, atbp), at ang SMD LED sa board ay kapaki-pakinabang, kaya naramdaman kong nagbabayad ng isang maliit na dagdag para sa mga board na nabibigyang katwiran.

Maaaring gusto mong baguhin ito upang maghimok ng iba pang mga uri ng circuit ng ilaw, o kahit na mga tagahanga o iba pang mga motor circuit sa iyong tukoy na proyekto. Dapat itong gumana nang pareho at ang pamamaraan ng Pulse Width Modulation ay dapat na gumana sa mga aparatong iyon.

Sa aming kusina, ang mga ilaw ay dapat para sa accenting, kaya't ginagamit namin ito palagi. Gayunpaman ako ay orihinal na isinasaalang-alang ang pagdaragdag ng isang light sensor upang paganahin lamang ang estado na 'ON' na nangyayari kung ito ay sapat na madilim. Dahil sa itinanghal na mga loop sa code, madali itong magdagdag ng isang Light Dependent Resistor sa isa sa mga Analogue pin sa Arduino at pagkatapos ay baguhin ang kondisyon ng breakout sa loop na 'OFF' upang hintayin lamang ang sensor AT ang LDR sa maging sa ibaba ng isang tiyak na halaga halimbawa habang ((digitalRead (SENSOR) == LOW) at (LDR <= 128));.

Ipaalam sa akin kung ano ang iniisip mo o kung ano ang iyong ginagawa dito at anumang iba pang mga mungkahi!

Inirerekumendang: