Мазмуну:

O-Zone: DIY Bluetooth батарея лампасы: 4 кадам (сүрөттөр менен)
O-Zone: DIY Bluetooth батарея лампасы: 4 кадам (сүрөттөр менен)

Video: O-Zone: DIY Bluetooth батарея лампасы: 4 кадам (сүрөттөр менен)

Video: O-Zone: DIY Bluetooth батарея лампасы: 4 кадам (сүрөттөр менен)
Video: 12V Bluetooth Relay to control AC or DC load using mobile Phone 2024, Ноябрь
Anonim
Image
Image

O-Zone-бул DIY Bluetooth чырагы. Сиз лампанын түсүн, ошондой эле леддердин жарыгын өзгөртө аласыз. Жарыкты күйгүзүү үчүн смартфонуңузду, планшетиңизди колдоно аласыз, түстөрдү жана бөлмөнүн маанайын өзгөртө аласыз.

Лампа үчүн материалдар:

1 x Light BlueBean батарейкасы менен

1 x Adafruit Neopixel шакеги (16 x leds)

Ыкчам Bluetooth колдонмосу iOS

Android үчүн Bluethooth терминалы

Структурасы үчүн материалдар болуп төмөнкүлөр саналат:

3 мм (3.1 дюйм) Жыгач

1,5 мм (0,05 дюйм) Ак плексигласс

1 -кадам: Кубдун структурасы

Ачык көк буурчак аркылуу муштумду программалоо
Ачык көк буурчак аркылуу муштумду программалоо

Лампанын түзүлүшү үчүн мен кубдун дизайнын түздүм. Жөнөкөй, бирок сызыктуу жыгач куб. Мен жыгачты лазердик гравер менен кесип алдым. Ошондой эле, мен кубдун үстүңкү бетинин тегерегин кесип алдым. Кесүүнүн ичине ак плексигласс шакегин койдум. Мен 40W лазердик кесүү менен плексиглассты кесип салдым. Сиз ак плексиглассты колдоно аласыз, анткени Adafruit жетектелген шакеги көптөгөн түстөргө ээ. Ошондой эле, сиз тунук Plexi колдонсоңуз болот, бирок менин оюмча, жарыктын сапатын жакшыртуу үчүн ак түс жакшы.

Структураны кесүү үчүн сиз лазер кескичти колдоно аласыз же Fablab сыяктуу лазер кесүү кызматын колдонсоңуз болот же ошондой эле Shapeways сыяктуу онлайн кызматына долбоорду жөнөтө аласыз.

Бөлүктөрдү винил клей менен бириктириңиз. Adafruit Neopixel шакегин плексигласс шакеги менен чогулткандан кийин. Пластикалык бөлүктөр үчүн акрил клейин колдонсоңуз болот. Баары чогулуп.

Бул кадамдан кийин структураңыз даяр!

2 -кадам: Ачык көк буурчак аркылуу муштумду программалаңыз

Light BlueBean программалоо үчүн сиз Arduino IDE колдоно аласыз. Light BlueBean түзмөгүңүздө программаны кубаттоодо, сиз Bluetooth байланышын колдонушуңуз керек. Сиз Arduino IDE колдоно аласыз жана бул программаны Punch Trough Light BlueBean жүктөгүч менен бириктире аласыз. Чоо -жайын билүү үчүн расмий сайтты караңыз.

Light BLUEBean менен баштаңыз

Бул кодду Light BlueBean үчүн колдоно аласыз:

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

* O-зонасы Bluethooth чырагы

* 31 -март, 2017 -жыл

* Джованни Жентил

* Light BlueBean аркылуу муштум үчүн

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

#"Adafruit_NeoPixel.h" кошуу

// NeoPixelsке туташкан пин

#PIN 5ти аныктоо

// NeoPixelsтеги светодиоддордун саны

#define NUMPIXELS 16 int bright = 20; логикалык луми = 1; логикалык мурункуLumi = 1;

String командасы;

логикалык командаStarted = false; Adafruit_NeoPixel пикселдери = Adafruit_NeoPixel (NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800); LedReading ledColor; LedReading previousLedColor; void setup () {Serial.begin (); // NeoPixels пикселдерин баштоо.begin (); }

void loop () {

getCommand (); }

/*

Бул функция сериялык портту окуйт жана '#' баштоо белгисин текшерет, эгерде башталгыч символ табылган болсо, анда ал бүт буйрукту алганга чейин буйрук буферине бардык кабыл алынган символдорду кошот ';' Аяктоо буйругу алынганда commandCompleted () функциясы чакырылат. эгер экинчи тамга аяктаганга чейин табылса, анда буфер тазаланып, процесс кайра башталат. */ void getCommand () {while (Serial.available ()) {char newChar = (char) Serial.read (); if (newChar == '#') {commandStarted = true; команда = "\ 0"; } else if (newChar == ';') {commandStarted = false; commandCompleted (); команда = "\ 0"; } else if (commandStarted == true) {command += newChar; }}}

/*

Бул функция бүткөн буйрукту алат жана аны жеткиликтүү буйруктардын тизмеси менен текшерет жана тиешелүү кодду аткарат. Кошумча 'if' билдирүүлөрүн кошуңуз, бул буйрук алынганда аткаргыңыз келген коду бар буйруктарды кошуу. "Өчүрүү" мисалындагыдай коддун бир нече саптары бар болсо, буйрук үчүн функция түзүү сунушталат. */ void commandCompleted () {if (command == "low") {bright = bright - 10; lumi = -lumi; Serial.print (жарык); } if (command == "high") {bright = bright + 10; lumi = -lumi; Serial.print (жарык); } if (command == "red") {Bean.setLed (255, 0, 0); Serial.print ("LED кызылга айланды"); } if (command == "green") {Bean.setLed (0, 255, 0); Serial.print ("LED жашыл болуп калды"); } if (command == "blue") {Bean.setLed (0, 0, 255); Serial.print ("LED көккө айланды"); } if (command == "yellow") {Bean.setLed (255, 255, 0); Serial.print ("LED сарыга айланды"); } if (command == "orange") {Bean.setLed (255, 60, 0); Serial.print ("LED кызгылт сарыга айланды"); } if (command == "purple") {Bean.setLed (128, 0, 128); Serial.print ("LED кызгылт көккө айланды"); } if (command == "white") {Bean.setLed (255, 255, 255); Serial.print ("LED ак болуп калды"); } if (command == "off") {off (); } if (Bean.getConnectionState ()) {// Баалардын борттогу LED LEDColor = Bean.getLed () маанилерин алыңыз; } if (lumi! = previousLumi || ledColor.red! = previousLedColor.red || ledColor.green! = previousLedColor.green || ledColor.blue! = previousLedColor.blue) {for (int i = 0; i

/*

Бир нече коддон ашык код болгондо, ушул сыяктуу өзүнчө функцияны колдонуңуз. Бул таза кодду окууга оңой сактоого жардам берет. */ void off () {Bean.setLed (0, 0, 0); Serial.print ("LED өчүрүлдү"); }

3 -кадам: Ачык көк буурчакты Adafruit Neopixel Ring менен туташтырыңыз

Ачык көк буурчакты Adafruit Neopixel Ring менен туташтырыңыз
Ачык көк буурчакты Adafruit Neopixel Ring менен туташтырыңыз

Камтылган программа жүктөлгөндөн кийин, Light BlueBean'ды смартфонуңуз менен колдоно аласыз. Сиз rgb LED бортун колдонуу менен программаны сынап көрсөңүз болот. Сиз Adafruit 16x шакегин туташтыра аласыз кийин.

Көңүл буруңуз, VCCди Light BlueBean 5v, GNDди Light BlueBean GNDге жана 5 -пиндеги Adafruit Neopixel шакегиңиздеги маалымат түйүнүн туташтырыңыз

4 -кадам: Bluetooth колдонмосу жана сериялык байланыш

Bluetooth колдонмосу жана сериялык байланыш
Bluetooth колдонмосу жана сериялык байланыш

Light BlueBean ичиндеги код сериал боюнча маалыматтарды алат. Bluetooth протоколун колдонуу менен сериялык сапты BlueBeanге жөнөтө аласыз. Мен iOS үчүн Handy BLE колдоном. Бул колдонмону Bluetooth протоколу аркылуу каалаган сериялык сапты жөнөтүү үчүн колдоно аласыз. Мен 6 тегерек түстүү, 1 Өчүрүү тегерек жана эки чарчы Жаркырак болгон тактаны түздүм. Квадраттын буйруктары ледстин жарыгынын өйдө -ылдый болушуна арналган.

BlueBean кабыл алган сериялык буйрук:

Леддерди боёо үчүн:

#Кызыл;

#кызгылт көк;

#Көк;

#жашыл;

#Сары;

#ачык күрөң;

Леддерди өчүрүү үчүн:

#off;

Жарыкты жөнгө салуу үчүн:

#low;

#жогорку;

Сунушталууда: