Kazalo:

O-Zone: DIY Bluetooth baterijska svetilka: 4 koraki (s slikami)
O-Zone: DIY Bluetooth baterijska svetilka: 4 koraki (s slikami)

Video: O-Zone: DIY Bluetooth baterijska svetilka: 4 koraki (s slikami)

Video: O-Zone: DIY Bluetooth baterijska svetilka: 4 koraki (s slikami)
Video: ВСЯ НОЧЬ С ПОЛТЕРГЕЙСТОМ В ЖИЛОМ ДОМЕ, я заснял жуткую активность. 2024, November
Anonim
Image
Image

O-Zone je svetilka Bluetooth DIY. Lahko spremenite barvo svetilke in tudi svetlost LED. Za vklop luči lahko uporabite pametni telefon, tablični računalnik, spremenite barve in razpoloženje v svoji sobi.

Materiali za izdelavo svetilke so:

1 x Light BlueBean z baterijo

1 x prstan Adapruit Neopixel (16 x LED)

Priročna aplikacija Bluetooth za iOS

Bluethooth Terminal za Android

Materiali za konstrukcijo so:

3 mm (3,1 palca) les

1,5 mm (0,05 palca) belo pleksi steklo

1. korak: Struktura kocke

Programirajte udarec skozi svetlo modri fižol
Programirajte udarec skozi svetlo modri fižol

Za strukturo svetilke sem oblikoval kocko. Preprosta, a linearna lesena kocka. Les sem razrezal z laserskim graverjem. Prav tako sem izrezal krog znotraj zgornje ploskve kocke. Znotraj reza sem dal bel obroč iz pleksi stekla. Pleksi steklo sem rezala z laserskim rezanjem s 40 W. Uporabite lahko belo pleksi steklo, saj ima Adafruit led prstan veliko barv. Uporabite lahko tudi prozoren Plexi, vendar menim, da je bela boljša za kakovost glajenja svetlobe.

Za rezanje konstrukcije lahko uporabite laserski rezalnik ali pa uporabite storitev laserskega rezanja, kot je Fablab, ali pa projekt pošljete na spletno storitev, kot je Shapeways.

Kose zlepimo z vinilnim lepilom. Po montaži obroč Adapruit Neopixel s obročem iz pleksi stekla. Za plastične dele lahko uporabite akrilno lepilo. Sestavite vse skupaj.

Po tem koraku je vaša struktura pripravljena!

2. korak: Programirajte udarec skozi svetlo modri fižol

Za programiranje Light BlueBean lahko uporabite Arduino IDE. Ko polnite vdelano programsko opremo na napravi Light BlueBean, morate uporabiti komunikacijo Bluetooth. Uporabite lahko Arduino IDE in ta program združite z nakladalnikom Punch Trough Light BlueBean. Za podrobnosti obiščite uradno spletno stran.

Začnite z Light BLUEBean

Za Light BlueBean lahko uporabite to kodo:

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

* Bluethooth svetilka z O-cono

* 31. marec 2017

* Giovanni Gentile

* za Punch Through Light BlueBean

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

#include "Adafruit_NeoPixel.h"

// Pin, ki je povezan z NeoPixels

#define PIN 5

// Količina LED v NeoPixels

#define NUMPIXELS 16 int bright = 20; logična lumija = 1; boolean previousLumi = 1;

Ukaz niz;

boolean commandStarted = false; Piksli Adafruit_NeoPixel = Adafruit_NeoPixel (NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800); LedReading ledColor; LedReading previousLedColor; void setup () {Serial.begin (); // Inicializiramo NeoPixels pixels.begin (); }

void loop () {

getCommand (); }

/*

Ta funkcija prebere serijska vrata in preveri začetni znak '#', če bo začetni znak, če ga najde, dodal vse prejete znake v ukazni vmesnik, dokler ne prejme ukaz za konec ';' Ko prejmete ukaz end, se pokliče funkcija commandCompleted (). če se pred končnim znakom najde drugi začetni znak, se vmesni pomnilnik počisti in postopek se začne znova. */ void getCommand () {while (Serial.available ()) {char newChar = (char) Serial.read (); if (newChar == '#') {commandStarted = true; command = "\ 0"; } else if (newChar == ';') {commandStarted = false; commandCompleted (); command = "\ 0"; } else if (commandStarted == true) {command += newChar; }}}

/*

Ta funkcija vzame dokončan ukaz in ga preveri glede na seznam razpoložljivih ukazov ter izvede ustrezno kodo. Dodajte dodatne stavke "if", če želite dodati ukaze s kodo, ki jo želite izvesti, ko prejmete ta ukaz. Priporočljivo je, da ustvarite funkcijo za ukaz, če je več kot nekaj vrstic kode za kot v primeru "off". */ void commandCompleted () {if (ukaz == "nizko") {svetel = svetel - 10; lumi = -lumi; Serijski.tisk (svetel); } if (ukaz == "visoko") {svetel = svetel + 10; lumi = -lumi; Serijski.tisk (svetel); } if (ukaz == "rdeča") {Bean.setLed (255, 0, 0); Serial.print ("LED je postala rdeča"); } if (ukaz == "zeleno") {Bean.setLed (0, 255, 0); Serial.print ("LED je postala zelena"); } if (ukaz == "blue") {Bean.setLed (0, 0, 255); Serial.print ("LED je postala modra"); } if (ukaz == "rumena") {Bean.setLed (255, 255, 0); Serial.print ("LED je postala rumena"); } if (ukaz == "oranžno") {Bean.setLed (255, 60, 0); Serial.print ("LED je postala oranžna"); } if (ukaz == "vijolično") {Bean.setLed (128, 0, 128); Serial.print ("LED je postala vijolična"); } if (ukaz == "bela") {Bean.setLed (255, 255, 255); Serial.print ("LED je postala bela"); } if (ukaz == "off") {off (); } if (Bean.getConnectionState ()) {// Pridobite vrednosti iz Beanove vgrajene LED ledColor = Bean.getLed (); } if (lumi! = previousLumi || ledColor.red! = previousLedColor.red || ledColor.green! = previousLedColor.green || ledColor.blue! = previousLedColor.blue) {for (int i = 0; i

/*

Uporabite ločeno funkcijo, kot je ta, če je kode več kot le nekaj vrstic. To bo pomagalo vzdrževati čisto kodo, ki je enostavna za branje. */ void off () {Bean.setLed (0, 0, 0); Serial.print ("LED je izklopljena"); }

3. korak: Povežite svetlo modri fižol z obročem Adapruit Neopixel

Svetlo modri fižol povežite z obročem Adapruit Neopixel
Svetlo modri fižol povežite z obročem Adapruit Neopixel

Po nalaganju vdelane programske opreme lahko uporabite Light BlueBean s pametnim telefonom. Program lahko preizkusite z uporabo rgb led na krovu. Ko lahko povežete 16x obroč Adafruit.

Bodite pozorni, VCC priključite na Light BlueBean 5v, GND na Light BlueBean GND in podatkovni zatič na obroču Adapruit Neopixel na pin 5

4. korak: aplikacija Bluetooth in zaporedna komunikacija

Aplikacija Bluetooth in serijska komunikacija
Aplikacija Bluetooth in serijska komunikacija

Koda v notranjosti Light BlueBean prejema podatke po zaporedju. Serijski niz lahko pošljete BlueBeanu s protokolom Bluetooth. Za iOS uporabljam Handy BLE. To aplikacijo lahko uporabite za pošiljanje katerega koli serijskega niza po protokolu Bluetooth. Ustvaril sem nadzorno ploščo, ki ima 6 barv kroga, 1 krog Off in dva kvadratna svetla. Kvadratni ukazi so za povečanje in zmanjšanje svetlosti obroča LED.

Serijski ukaz, ki ga sprejme BlueBean, je:

Za barvanje LED diod:

#rdeča;

#purple;

#modra;

#zelena;

#žuta;

#oranžna;

Za izklop LED diod:

#off;

Za uravnavanje svetlosti:

#nizko;

#visoko;

Priporočena: