Cuprins:

Zonă O: Lampă DIY pentru baterie Bluetooth: 4 pași (cu imagini)
Zonă O: Lampă DIY pentru baterie Bluetooth: 4 pași (cu imagini)

Video: Zonă O: Lampă DIY pentru baterie Bluetooth: 4 pași (cu imagini)

Video: Zonă O: Lampă DIY pentru baterie Bluetooth: 4 pași (cu imagini)
Video: Ce înseamna semnul tau din nastere 2024, Iulie
Anonim
Image
Image

O-Zone este o lampă Bluetooth DIY. Puteți modifica culoarea lămpii și, de asemenea, luminozitatea ledurilor. Puteți utiliza smartphone-ul, tableta pentru a porni lumina, modifica culorile și starea camerei.

Materialele pentru lampă sunt:

1 x Light BlueBean cu baterie

1 x inel Adafruit Neopixel (16 x leduri)

Aplicație Bluetooth la îndemână iOS

Terminalul Bluethooth pentru Android

Materialele pentru structură sunt:

Lemn de 3 mm (3,1 inci)

Plexiglas alb de 1,5 mm (0,05 inch)

Pasul 1: Structura cubului

Programați Punch Through Light Blue Bean
Programați Punch Through Light Blue Bean

Pentru structura lămpii, am proiectat un cub. Un cub de lemn simplu, dar liniar. Am tăiat lemnul cu gravorul meu laser. De asemenea, am tăiat un cerc în fața superioară a cubului. În interiorul tăieturii, am pus un inel de plexiglas alb. Am tăiat plexiglasul cu tăiere cu laser de 40W. Puteți folosi plexiglasul alb, deoarece inelul cu LED Adafruit are multe culori. De asemenea, puteți utiliza un Plexi transparent, dar cred că albul este mai bun pentru calitatea netezii luminii.

Pentru tăierea structurii, puteți utiliza tăietorul cu laser sau puteți utiliza un serviciu de tăiere cu laser, cum ar fi Fablab sau puteți trimite proiectul la un serviciu online, cum ar fi Shapeways.

Puneți piesele împreună cu un lipici de vinil. După asamblare, inelul Adafruit Neopixel cu inelul de plexiglas. Pentru piesele din plastic, puteți utiliza un adeziv acrilic. Adunare toate împreună.

După acest pas, structura dvs. este gata!

Pasul 2: Programați Punch Through Blue Light Bean

Pentru programarea Light BlueBean puteți utiliza ID-ul Arduino. Când încărcați firmware-ul pe Light BlueBean, trebuie să utilizați comunicația Bluetooth. Puteți utiliza Arduino IDE și puteți combina acest program cu încărcătorul Punch Trough Light BlueBean. Consultați site-ul oficial pentru detalii.

Începeți cu Light BLUEBean

Puteți utiliza acest cod pentru Light BlueBean:

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

* Lampă Bluethooth din zona O

* 31 martie 2017

* Giovanni Gentile

* pentru Punch Through Light BlueBean

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

#include "Adafruit_NeoPixel.h"

// Pinul care este conectat la NeoPixels

#define PIN 5

// Cantitatea de LED-uri din NeoPixels

#define NUMPIXELS 16 int luminos = 20; lumi boolean = 1; boolean previousLumi = 1;

Comandă șir;

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

bucla nulă () {

getCommand (); }

/*

Această funcție citește portul serial și verifică caracterul de start '#' dacă caracterul de start, dacă este găsit, va adăuga toate caracterele primite în memoria tampon de comandă până când primește comanda de final ';' Când se primește comanda de final, se apelează funcția commandCompleted (). dacă se găsește un al doilea caracter de început înainte de un caracter de sfârșit, atunci bufferul este șters și procesul începe de la început. * / 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; }}}

/*

Această funcție preia comanda finalizată și o verifică cu o listă de comenzi disponibile și execută codul corespunzător. Adăugați instrucțiuni suplimentare „if” pentru a adăuga comenzi cu codul pe care doriți să-l executați la primirea acelei comenzi. Este recomandat să creați o funcție pentru o comandă dacă există mai mult de câteva linii de cod pentru ca în exemplul „dezactivat”. * / void commandCompleted () {if (command == "low") {luminos = luminos - 10; lumi = -lumi; Serial.print (luminos); } if (comanda == "mare") {luminos = luminos + 10; lumi = -lumi; Serial.print (luminos); } if (comanda == "roșu") {Bean.setLed (255, 0, 0); Serial.print („LED-ul a devenit roșu”); } if (comanda == "verde") {Bean.setLed (0, 255, 0); Serial.print („LED-ul a devenit verde”); } if (comanda == "albastru") {Bean.setLed (0, 0, 255); Serial.print („LED-ul a devenit albastru”); } if (comanda == "galben") {Bean.setLed (255, 255, 0); Serial.print („LED-ul a devenit galben”); } if (comanda == "portocaliu") {Bean.setLed (255, 60, 0); Serial.print („LED-ul a devenit portocaliu”); } if (comanda == "violet") {Bean.setLed (128, 0, 128); Serial.print („LED-ul a devenit violet”); } if (comanda == "alb") {Bean.setLed (255, 255, 255); Serial.print („LED-ul a devenit alb”); } if (comanda == "off") {off (); } if (Bean.getConnectionState ()) {// Obțineți valorile din LED-ul integrat al LED-ului Bean ledColor = Bean.getLed (); } if (lumi! = previousLumi || ledColor.red! = previousLedColor.red || ledColor.green! = previousLedColor.green || ledColor.blue! = previousLedColor.blue) {for (int i = 0; i

/*

Folosiți o funcție separată ca aceasta atunci când există mai mult decât câteva linii de cod. Acest lucru va ajuta la menținerea unui cod curat, ușor de citit. * / void off () {Bean.setLed (0, 0, 0); Serial.print („LED-ul oprit”); }

Pasul 3: Conectați bobul albastru deschis la inelul Adafruit Neopixel

Conectați bobul albastru deschis la inelul Neafixel Adafruit
Conectați bobul albastru deschis la inelul Neafixel Adafruit

După încărcarea firmware-ului, puteți utiliza Light BlueBean împreună cu smartphone-ul. Puteți încerca programul utilizând ledul rgb de la bord. După ce puteți conecta inelul Adafruit 16x.

Acordați atenție, conectați VCC la Light BlueBean 5v, GND la Light BlueBean GND și pinul de date de pe inelul Adafruit Neopixel de la pinul 5

Pasul 4: Aplicația Bluetooth și comunicarea în serie

Aplicația Bluetooth și comunicarea în serie
Aplicația Bluetooth și comunicarea în serie

Codul din interiorul Light BlueBean primește date prin serial. Puteți trimite șirul serial către BlueBean utilizând protocolul Bluetooth. Folosesc Handy BLE pentru iOS. Puteți utiliza această aplicație pentru a trimite prin protocolul Bluetooth orice șir de serie dorit. Am creat un tablou de bord care are 6 culori de cerc, 1 cerc Off și două pătrate Bright. Comenzile pătrate sunt pentru ridicarea și coborârea luminozității inelului ledurilor.

Comanda serial acceptată de BlueBean sunt:

Pentru colorarea ledurilor:

#roșu;

#Violet;

#albastru;

#verde;

#galben;

#portocale;

Pentru oprirea ledurilor:

# off;

Pentru reglarea luminozității:

#scăzut;

#înalt;

Recomandat: