Talaan ng mga Nilalaman:

O-Zone: DIY Bluetooth Battery Lamp: 4 Hakbang (na may Mga Larawan)
O-Zone: DIY Bluetooth Battery Lamp: 4 Hakbang (na may Mga Larawan)

Video: O-Zone: DIY Bluetooth Battery Lamp: 4 Hakbang (na may Mga Larawan)

Video: O-Zone: DIY Bluetooth Battery Lamp: 4 Hakbang (na may Mga Larawan)
Video: 15 Most Innovative Vehicle Accessories and Car Gadgets 2024, Nobyembre
Anonim
Image
Image

Ang O-Zone ay isang lampara sa DIY Bluetooth. Maaari mong baguhin ang kulay ng ilawan at gayundin ang ningning ng mga leds. Maaari mong gamitin ang iyong smartphone, ang iyong tablet para sa switch ON ang ilaw, baguhin ang mga kulay at ang mood ng iyong silid.

Ang mga materyales para sa ilawan ay:

1 x Banayad na BlueBean na may baterya

1 x Adafruit Neopixel ring (16 x leds)

Madaling gamiting Bluetooth app iOS

Terminal ng Bluethooth para sa Android

Ang mga materyales para sa istraktura ay:

3 mm (3.1 pulgada) Kahoy

1.5 mm (0.05 pulgada) Puting Plexiglass

Hakbang 1: Ang Istraktura ng Cube

Program ang Punch Through Light Blue Bean
Program ang Punch Through Light Blue Bean

Para sa istraktura ng lampara, nagdisenyo ako ng isang kubo. Isang simple ngunit linear na cube ng kahoy. Pinutol ko ang kahoy sa aking laser engraver. Gayundin, pinutol ko ang isang bilog sa loob ng itaas na mukha ng kubo. Sa loob ng paggupit, naglagay ako ng puting singsing na plexiglass. Pinutol ko ang plexiglass na may 40W laser cutting. Maaari mong gamitin ang puting plexiglass, tulad ng singsing na pinangunahan ng Adafruit, ay may maraming mga kulay. Gayundin, maaari mong gamitin ang isang transparent na Plexi, ngunit sa palagay ko ang puti ay mas mahusay para sa kalidad ng ilaw na pag-aayos.

Para sa paggupit ng istraktura, maaari mong gamitin ang iyong pamutol ng laser o maaari mong gamitin ang isang serbisyo sa paggupit ng laser tulad ng Fablab o maaari mo ring ipadala ang proyekto sa isang online na serbisyo tulad ng Shapeways.

Isama ang mga piraso kasama ang isang vinyl glue. Pagkatapos ng pagpupulong ng Adafruit Neopixel ring na may singsing na plexiglass. Para sa mga plastik na bahagi, maaari kang gumamit ng isang acrylic na pandikit. Magkasama ang lahat.

Pagkatapos ng hakbang na ito, handa na ang iyong istraktura!

Hakbang 2: I-program ang Punch Through Light Blue Bean

Para sa programang Light BlueBean maaari mong gamitin ang Arduino IDE. Kapag naningil ka ng firmware sa iyong Light BlueBean dapat mong gamitin ang komunikasyon sa Bluetooth. Maaari mong gamitin ang Arduino IDE at pagsamahin ang program na ito sa Punch Trough Light BlueBean loader. Tingnan ang opisyal na site para sa mga detalye.

Magsimula sa Banayad na BLUEBean

Maaari mong gamitin ang code na ito para sa Light BlueBean:

/* ******************************************

* O-zone Bluethooth Lamp

* Marso 31, 2017

* Giovanni Gentile

* para sa Punch Through Light BlueBean

**********************************************/

# isama ang "Adafruit_NeoPixel.h"

// Ang pin na konektado sa NeoPixels

# tukuyin ang PIN 5

// Ang dami ng LEDs sa NeoPixels

# tukuyin ang NUMPIXELS 16 int maliwanag = 20; boolean lumi = 1; boolean nakaraangLumi = 1;

String utos;

boolean commandStarted = false; Adafruit_NeoPixel pixel = Adafruit_NeoPixel (NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800); LedReading ledColor; LedReading nakaraangLedColor; void setup () {Serial.begin (); // Initialize the NeoPixels pix.begin (); }

void loop () {

getCommand (); }

/*

Binabasa ng pagpapaandar na ito ang serial port at suriin para sa start character na '#' kung ang start character kung nahanap ay idaragdag ang lahat ng natanggap na mga character sa command buffer hanggang sa matanggap nito ang end command ';' Kapag natanggap ang pagtatapos na utos ay tinawag na ang function na Kumpleto (). kung ang isang pangalawang character ng pagsisimula ay natagpuan bago ang isang end character pagkatapos ang buffer ay nalinis at ang proseso ay nagsisimula muli. * / void getCommand () {habang (Serial.available ()) {char newChar = (char) Serial.read (); kung (newChar == '#') {commandStarted = true; utos = "\ 0"; } iba pa kung (newChar == ';') {commandStarted = false; nakumpleto ang command (); utos = "\ 0"; } iba pa kung (commandStarted == true) {command + = newChar; }}}

/*

Kinukuha ng pagpapaandar na ito ang nakumpletong utos at sinusuri ito laban sa isang listahan ng mga magagamit na utos at isinasagawa ang naaangkop na code. Magdagdag ng labis na mga pahayag na 'kung' upang magdagdag ng mga utos gamit ang code na nais mong ipatupad kapag natanggap ang utos na iyon. Inirerekumenda na lumikha ng isang pagpapaandar para sa isang utos kung mayroong higit sa ilang mga linya ng code para sa halimbawa ng 'off'. * / void commandCompleted () {if (command == "low") {bright = bright - 10; lumi = -lumi; Serial.print (maliwanag); } kung (utos == "mataas") {maliwanag = maliwanag + 10; lumi = -lumi; Serial.print (maliwanag); } kung (utos == "pula") {Bean.setLed (255, 0, 0); Serial.print ("LED naka pula"); } kung (utos == "berde") {Bean.setLed (0, 255, 0); Serial.print ("LED naging berde"); } kung (utos == "asul") {Bean.setLed (0, 0, 255); Serial.print ("LED naka-asul na"); } kung (utos == "dilaw") {Bean.setLed (255, 255, 0); Serial.print ("LED naging dilaw"); } kung (utos == "kahel") {Bean.setLed (255, 60, 0); Serial.print ("LED naging orange"); } kung (utos == "lila") {Bean.setLed (128, 0, 128); Serial.print ("LED naka lila"); } kung (utos == "puti") {Bean.setLed (255, 255, 255); Serial.print ("LED puting puti"); } kung (utusan == "off") {off (); } kung (Bean.getConnectionState ()) {// Kunin ang mga halaga mula sa onboard LED ledColor = Bean.getLed (); } kung (lumi! = nakaraangLumi || ledColor.red! = nakaraangLedColor.red || ledColor.green! = nakaraangLedColor.green || ledColor.blue! = nakaraangLedColor.blue) {para sa (int i = 0; i

/*

Gumamit ng isang hiwalay na pag-andar na tulad nito kapag mayroong higit sa ilang mga linya lamang ng code. Makakatulong ito na mapanatili ang malinis na madaling basahin ang code. * / void off () {Bean.setLed (0, 0, 0); Serial.print ("Naka-off ang LED"); }

Hakbang 3: Ikonekta ang Light Blue Bean sa Adafruit Neopixel Ring

Ikonekta ang Light Blue Bean sa Adafruit Neopixel Ring
Ikonekta ang Light Blue Bean sa Adafruit Neopixel Ring

Matapos ang pag-upload ng firmware, maaari mong gamitin ang Light BlueBean sa iyong smartphone. Maaari mong subukan ang programa sa pamamagitan ng paggamit ng rgb led onboard. Matapos mong maikonekta ang singsing na Adafruit 16x.

Magbayad ng ATTENTION, ikonekta ang VCC sa Light BlueBean 5v, GND sa Light BlueBean GND at ang data pin sa iyong singsing na Adafruit Neopixel sa pin number 5

Hakbang 4: Ang Bluetooth App at Serial Communication

Ang Bluetooth App at Serial Communication
Ang Bluetooth App at Serial Communication

Ang code sa loob ng Light BlueBean ay tumatanggap ng data sa pamamagitan ng serial. Maaari mong ipadala ang serial string sa BlueBean sa pamamagitan ng paggamit ng Bluetooth protocol. Gumagamit ako ng Handy BLE para sa iOS. Maaari mong gamitin ang app na ito para sa pagpapadala ng Bluetooth protocol ng anumang serial string na gusto mo. Lumikha ako ng isang dashboard na may 6 na kulay ng bilog, 1 Off circle, at dalawang parisukat na Maliwanag. Ang mga parisukat na utos ay para sa paglalagay at pagbaba ng ningning ng ring ng leds.

Ang serial command na tinatanggap ng BlueBean ay:

Para sa pangkulay ng mga leds:

#red;

#purple;

#bughaw;

# berde;

#yellow;

#orange;

Para isara ang mga leds:

#off;

Para sa pagsasaayos ng liwanag:

#low;

# mataas;

Inirerekumendang: