» Electronics » Arduino »Gabi ng gabi mula sa isang dating ilaw na bombilya batay sa Arduino at WS2812

Gabi ng ilaw mula sa isang dating ilaw na bombilya batay sa Arduino at WS2812

Gabi ng ilaw mula sa isang dating ilaw na bombilya batay sa Arduino at WS2812




Magandang araw o gabi, kahit sino tulad nito. Ngayon magbabahagi ako ng mga tagubilin sa kung paano gumawa ng isang maliit na nightlight. Ang batayan ay isang diffuser ng matte mula sa isang nasunog na LED bombilya. At sa loob inilagay namin Arduino Pro Mini at SW2812 LEDs. Mag-post lamang ako ng isang sketsa, ngunit maaaring magkaroon ng maraming mga pagpipilian para sa mga kulay o pagsasalin. Magsimula tayo, tulad ng dati, kasama ang listahan ng mga kinakailangan:

- diffuser mula sa LED lamp, E27 base
- 5V power supply
- Arduino Pro Mini 5V
- USB-TTL (para sa pag-upload ng isang sket sa arduino)
- WS2812 LEDs
- Manipis na plastik
- Double-panig na tape
- Ang pagsingil mula sa telepono ay hindi kinakailangan, ngunit nagtatrabaho
- paghihinang bakal
- mga wire
- Solder, rosin
- Mainit na baril na pandikit

Hakbang 1. Paggawa ng kaso.
Para sa mga nagsisimula, kailangan nating makakuha ng isang diffuser. Kinukuha namin ang LED bombilya na may E27 base. Siyempre mas mahusay, kumuha ng bombilya na nagtrabaho na:


Sa pamamagitan ng isang kamay hawak namin ang bombilya sa pamamagitan ng takip at ang kaso ng plastik, kasama ang iba pang kinukuha namin ng diffuser at sinira ang bombilya. Ang diffuser ay dapat na madaling lumayo sa katawan, dahil nakasalalay lamang ito sa sealant:


Ngayon kailangan nating gumawa ng isang batayan kung saan ididikit namin ang mga LED. Upang gawin ito, kumuha ng isang manipis na plastik, ang isang takip mula sa isang plastic folder ay angkop. Ngayon sinusukat namin ang panloob na diameter ng landing hole ng diffuser, at kailangan din nating sukatin ang lalim ng diffuser. Nagpapatuloy kami sa paggawa ng mga pangunahing kaalaman. Ito ay sa anyo ng isang silindro, ang diameter ng kung saan ay dapat na 5 mm mas mababa kaysa sa panloob na diameter ng bore ng diffuser. At ang taas ay 7 mm mas mababa kaysa sa lalim ng diffuser. Dapat itong magmukhang ganito:


Susunod, ginagawa namin at nakadikit sa silindro ang isang takip na gupitin sa parehong plastik:


Dito natapos kami.

Hakbang 2. Mga tela.
Tulad ng sinabi ko kanina, ang magsusupil ay ang Arduino Pro Mini, isang bersyon na tumatakbo sa 5 volts. Ang LED strip ay konektado nang simple, para dito kailangan mong ikonekta ang + 5V contact sa plus mula sa 5 volt power supply, at GND sa minus. Ang DIN pin (input) kumonekta sa pin 6 ng Arduino. Ang port koneksyon port ay maaaring mabago sa anumang maginhawa sa sketch. Ang Arduino ay pinapagana ng parehong supply ng kuryente. Dahil gumagamit kami ng isang nagpapatatag na suplay ng kuryente, ikinonekta namin ang plus mula sa power supply sa 5V pin sa Arduino. Ang minus power supply ay dapat na konektado sa GND Arduino. Ang scheme ay ang mga sumusunod:


Kaya, ang isang LED, sa maximum na ningning ng lahat ng tatlong mga kulay, kumokonsumo ng 60 mA. Nababagay ako sa 25, kaya lumiliko ito:

25 x 60 mA = 1500 mA = 1.5 A

Iyon ay, kailangan ko ng 5 V, 1.5 Isang suplay ng kuryente.Ito ang pinakamataas na kasalukuyang lakas na magiging kapag ang lahat ng mga LED ay naka-on sa maximum na mode ng ningning ng lahat ng tatlong mga kulay.

Kung interesado ka, maaari mong basahin ang lahat ng mga pagtutukoy sa datasheet:
ws2812b_datasheet_en.pdf [420.94 Kb] (mga pag-download: 109)
Tingnan ang online na file:


Bilang suplay ng kuryente, kinukuha namin ang lumang singilin mula sa telepono. Ang suplay ng kuryente ay dapat mapili sa 5 volts, at sa mga tuntunin ng kapangyarihan, kalkulahin kung gaano karaming mga LED na akma mo:


Pinutol namin ang plug mula dito at ang nagbebenta ng mga wire nang direkta sa tape, huwag kalimutang suriin ang polaridad na may isang tester o multimeter. Dapat ka ring gumuhit ng wire ay humahantong sa kapangyarihan ng Arduino. At ang signal wire mula sa tape hanggang sa Arduino.

Sa ilalim ng silindro gumawa kami ng isang puwang upang laktawan ang mga contact ng tape gamit ang mga soldered wires sa loob:


Ipinasok ko ang dulo ng tape na may mga wire sa slot, ayusin namin ito ng mainit na pandikit. Susunod, idikit ang Lena sa isang bilog, bahagyang itinaas ito upang makuha ang isang spiral ng tape. Idikit din namin ang tape sa tuktok ng silindro, ang bilang ng mga diode ay nakasalalay sa diameter, mayroon akong maximum na dalawang LED na inilagay nang pahilis sa tuktok, at sa gayon ang mga contact ay nakabitin:


Kung ganoon ang ginawa mo, huwag panghinaan ng loob, gupitin lamang ang laso na nakabitin sa mga gilid at ibebenta ang mga wire nang direkta sa mga LED. Makipag-ugnay sa WS2812:


Bigyang-pansin, ang LED strip sa WS2812B ay may isang direksyon, sa isang banda (simula o input) mayroon itong mga contact DIN, + 5V, GND. At sa kabilang banda (dulo o exit) GAWIN, + 5V, GND. Kung ikaw ay nagbebenta nang direkta sa mga LED, tingnan ang lokasyon ng mga contact, na nakatuon sa key (cut ng sulok). Upang gawing simple ang pag-install, ang mga arrow ay iginuhit sa tape na nagpapahiwatig ng direksyon. Bigyang-pansin ang paglipat sa tuktok, lumiliko ito ng isang napaka matalim na liko, malamang na masira ang tape. Nakuha ko ito ng ganito:



Mula sa itaas, ito ay ibinebenta nang direkta sa mga LED:


At sa gitna, isang pangalawang antas, ang higit pang mga LEDs:


At para sa pagiging maaasahan, punan ang mga wire na may mainit na pandikit:


Ngayon ay inilalagay namin ang aming silindro na may mga LED sa loob ng bola mula sa bombilya. Gamit ang mainit na natutunaw na malagkit, inaayos namin ang silindro sa loob ng bola sa isang bilog:


Huwag kalimutan na gumawa ng isang slot upang ma-output ang wire ng kuryente:


Hakbang 3. Paghahanda ng kapaligiran at firmware.
Upang i-download ang sketch (o firmware) gagamitin namin ang Arduino IDE. I-download ang pinakabagong bersyon mula sa opisyal at i-install ito.

Susunod, kailangan mong magdagdag ng silid-aklatan para sa pakikipagtulungan sa WS2812 mula sa Adafruit NeoPixel-master:
adafruit_neopixel-master.rar [27.83 Kb] (mga pag-download: 86)


Upang gawin ito, i-download muna ang archive. Pagkatapos ay i-unpack ang archive na ito. At inililipat namin ang mga hindi naka-unpack na mga file sa folder na "mga aklatan", na matatagpuan sa folder na naka-install ang Arduino IDE. Maaaring gawing mas madali. Ilunsad ang Arduino IDE. Huwag i-unpack ang nai-download na archive. Kanan sa Arduino IDE, piliin ang item na Sketch - Kumonekta ng Library. Sa pinakadulo tuktok ng listahan ng drop-down, piliin ang item na "Idagdag .Zip library". Dapat lumitaw ang isang kahon ng diyalogo. Susunod, pipiliin namin ang aming library, Adafruit_NeoPixel-master. Isang maliit na halaga ng paghihintay. Muli, buksan ang menu item Sketch - Kumonekta ng Library. Ngayon sa pinakadulo ibaba ng drop-down list ay makakakita ka ng isang bagong library. Sa pamamagitan ng pag-restart ng Arduino IDE, maaaring magamit ang library.

I-download ang aking sketch:
ard_rgb_shar.rar [1.63 Kb] (mga pag-download: 136)


Ito ay nananatiling punan ang sketsa sa Arduino. Ginagamit namin ang Arduino Pro Mini. Ang bersyon na ito ng tanyag na Arduino ay walang isang USB-TTL chip na ibinebenta sa board. Samakatuwid, upang makipag-usap sa computer at i-upload ang sketch, dapat kang gumamit ng isang hiwalay na USB-TTL. Ang koneksyon tulad ng sumusunod:

Arduino - USB-TTL
RX (P0) - TX
TX (P1) - RX
GND - GND

Ang kapangyarihan ng USB-TTL ay mula sa USB port ng computer. Ang Arduino ay maaaring pinalakas mula sa USB-TLL o gumamit ng isang panlabas na mapagkukunan ng kuryente. Ang pangunahing bagay ay ang GND USB-TTL pin at ang Arduino ay konektado. Kadalasan, ang USB-TTL nang walang isang DTR pin ay ibinebenta. Ang DTR pin ay dapat na konektado sa I-reset ang Arduino upang awtomatikong i-reboot bago mag-load ang sketch. Kung ikaw, tulad ng minahan, ay walang konklusyon na ito, dapat mong manu-manong i-reboot bago mag-upload ng sketch. Kumilos kami tulad nito: ikinonekta namin ang lahat ayon sa pamamaraan na inilarawan sa itaas, buksan ang Arduino IDE, buksan ang sketch na iyong nai-download, pindutin ang pindutan - I-download - at makita kung ano ang nakasulat sa ibaba. Habang ang "pagsasama-sama" ay umuusad, wala kaming ginagawa, naghihintay lamang kami na lumitaw ang salitang "paglo-load", kailangan nating pindutin ang pindutan ng I-reset sa Arduino.Kung hindi maginhawa upang pindutin ang isang pindutan sa board, maaari kang magpakita ng isang pindutan na konektado sa GND at I-reset. O dalhin lamang ang mga wire sa parehong konklusyon at isara ang mga ito sa tamang oras.

Nais kong sabihin na maraming mga pagpipilian para sa pag-iilaw ng ilaw sa gabi, kakaunti lang ang isinulat ko sa sketch na gusto ko mismo. Maaari mong i-edit ang sketch ayon sa gusto mo. Eksperimento at piliin kung ano ang gusto mo.
8.8
9.2
7

Magdagdag ng isang puna

    • ngitinakangitixaxaok langhindi alamyahoonea
      bosskumamottangaoooo-ooagresibolihim
      sorrysayawsayaw2sayaw3kapatawarantumulonginumin
      humintomga kaibiganmabutigoodgoodsipolswoondila
      usokpumapalakpakkrayolaipahayagnakakainisdon-t_mentionpag-download
      initnakakainistumawa1mdapagpupulongnakikipag-usapnegatibo
      hindi_ipopcornparusahanbasahintakottakotpaghahanap
      panunuyasalamat_youitoto_clueumniktalamaksumang-ayon
      masamabeeeblack_eyeblum3namulamagyabanginip
      censoredkaaya-ayalihim2nagbabantatagumpayyusun_bespectacled
      shokrespektlolnagustuhanmaligayang pagdatingkrutoyya_za
      ya_dobryikatulongne_huliganne_othodimapusokpagbabawalmalapit

Pinapayuhan ka naming basahin:

Ipasa ito para sa smartphone ...