Innehållsförteckning:

O-zon: DIY Bluetooth-batterilampa: 4 steg (med bilder)
O-zon: DIY Bluetooth-batterilampa: 4 steg (med bilder)

Video: O-zon: DIY Bluetooth-batterilampa: 4 steg (med bilder)

Video: O-zon: DIY Bluetooth-batterilampa: 4 steg (med bilder)
Video: DIY Ozone Generator 2024, Juli
Anonim
Image
Image

O-Zone är en DIY Bluetooth-lampa. Du kan ändra lampans färg och ljusstyrkan. Du kan använda din smartphone, din surfplatta för att slå på ljuset, ändra färgerna och stämningen i ditt rum.

Materialet till lampan är:

1 x Ljusblå böna med batteri

1 x Adafruit Neopixel ring (16 x lysdioder)

Praktisk Bluetooth -app iOS

Bluethooth -terminal för Android

Materialen för strukturen är:

3 mm (3,1 tum) trä

1,5 mm vit plexiglas

Steg 1: Kubens struktur

Programmera Punch Through Light Blue Bean
Programmera Punch Through Light Blue Bean

För lampans struktur har jag designat en kub. En enkel men linjär träkub. Jag har klippt träet med min lasergraver. Jag har också klippt en cirkel inuti kubens övre yta. Inuti skärningen har jag satt en vit plexiglasring. Jag skar plexiglas med 40W laserskärning. Du kan använda det vita plexiglaset, eftersom Adafruit ledringen har många färger. Du kan också använda en transparent Plexi, men jag tror att det vita är bättre för ljusets utjämningskvalitet.

För skärning av struktur kan du använda din laserskärare eller så kan du använda en laserskärningstjänst som Fablab eller också kan du skicka projektet till en onlinetjänst som Shapeways.

Lägg bitarna tillsammans med ett vinyllim. Efter montering Adafruit Neopixel -ringen med plexiglasringen. För plastdelarna kan du använda ett akryllim. Montering allt tillsammans.

Efter detta steg är din struktur klar!

Steg 2: Programmera Punch Through Light Blue Bean

För programmering av Light BlueBean kan du använda Arduino IDE. När du laddar firmware på din Light BlueBean måste du använda Bluetooth -kommunikationen. Du kan använda Arduino IDE och kombinera detta program med Punch Trough Light BlueBean -lastare. Se den officiella webbplatsen för detaljer.

Kom igång med Light BLUEBean

Du kan använda den här koden för Light BlueBean:

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

* O-zon Bluethooth-lampa

* 31 mars 2017

* Giovanni Gentile

* för Punch Through Light BlueBean

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

#inkludera "Adafruit_NeoPixel.h"

// Stiftet som är anslutet till NeoPixels

#definiera PIN 5

// Mängden lysdioder i NeoPixels

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

Strängkommando;

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

void loop () {

getCommand (); }

/*

Denna funktion läser den seriella porten och söker efter starttecknet '#' om starttecknet om det hittas lägger till alla mottagna tecken i kommandobufferten tills det tar emot kommandot ';' När kommandot slut tas emot kallas funktionen commandCompleted (). om ett andra starttecken hittas före ett sluttecken raderas bufferten och processen börjar om. */ void getCommand () {while (Serial.available ()) {char newChar = (char) Serial.read (); if (newChar == '#') {commandStarted = true; command = "\ 0"; } annars if (newChar == ';') {commandStarted = false; commandCompleted (); command = "\ 0"; } annars om (commandStarted == true) {kommando += newChar; }}}

/*

Denna funktion tar det avslutade kommandot och kontrollerar det mot en lista med tillgängliga kommandon och kör lämplig kod. Lägg till extra 'if' -satser för att lägga till kommandon med koden du vill köra när kommandot tas emot. Det rekommenderas att skapa en funktion för ett kommando om det finns mer än några rader kod för som i exemplet "av". */ void commandCompleted () {if (command == "low") {bright = bright - 10; lumi = -lumi; Serial.print (ljus); } if (command == "high") {bright = bright + 10; lumi = -lumi; Serial.print (ljus); } if (kommando == "röd") {Bean.setLed (255, 0, 0); Serial.print ("LED blev röd"); } if (kommando == "grönt") {Bean.setLed (0, 255, 0); Serial.print ("LED blev grön"); } if (kommando == "blå") {Bean.setLed (0, 0, 255); Serial.print ("LED blev blå"); } if (kommando == "gul") {Bean.setLed (255, 255, 0); Serial.print ("LED blev gul"); } if (kommando == "orange") {Bean.setLed (255, 60, 0); Serial.print ("LED blev orange"); } if (kommando == "lila") {Bean.setLed (128, 0, 128); Serial.print ("LED blev lila"); } if (kommando == "vit") {Bean.setLed (255, 255, 255); Serial.print ("LED blev vit"); } if (command == "off") {off (); } if (Bean.getConnectionState ()) {// Hämta värdena från Bean: s inbyggda LED ledColor = Bean.getLed (); } if (lumi! = previousLumi || ledColor.red! = previousLedColor.red || ledColor.green! = previousLedColor.green || ledColor.blue! = previousLedColor.blue) {for (int i = 0; i

/*

Använd en separat funktion som denna när det finns mer än bara några rader kod. Detta hjälper till att hålla ren och lättläst kod. */ void off () {Bean.setLed (0, 0, 0); Serial.print ("LED släckt"); }

Steg 3: Anslut den ljusblå bönan till Adafruit Neopixel Ring

Anslut den ljusblå bönan till Adafruit Neopixel -ring
Anslut den ljusblå bönan till Adafruit Neopixel -ring

Efter att firmware har laddats upp kan du använda Light BlueBean med din smartphone. Du kan prova programmet med hjälp av rgb LED ombord. Efter det kan du ansluta Adafruit 16x -ringen.

Var uppmärksam, anslut VCC till Light BlueBean 5v, GND till Light BlueBean GND och datapinnen på din Adafruit Neopixel ring på pin nummer 5

Steg 4: Bluetooth -appen och seriell kommunikation

Bluetooth -appen och seriell kommunikation
Bluetooth -appen och seriell kommunikation

Koden inuti Light BlueBean tar emot data från serien. Du kan skicka den seriella strängen till BlueBean med hjälp av Bluetooth -protokollet. Jag använder Handy BLE för iOS. Du kan använda den här appen för att skicka alla seriella strängar med Bluetooth -protokollet. Jag har skapat en instrumentpanel som har 6 cirkelfärger, 1 Av -cirkel och två fyrkantiga Bright. De fyrkantiga kommandona är för att sätta upp och ner ljusstyrkan på LED -ringen.

Det seriella kommandot som BlueBean accepterar är:

För färgning av lysdioderna:

#röd;

#lila;

#blå;

#grön;

#gul;

#orange;

För att stänga av lysdioderna:

#av;

För att reglera ljusstyrkan:

#låg;

#hög;

Rekommenderad: