جدول المحتويات:

O-Zone: مصباح بطارية بلوتوث DIY: 4 خطوات (مع صور)
O-Zone: مصباح بطارية بلوتوث DIY: 4 خطوات (مع صور)

فيديو: O-Zone: مصباح بطارية بلوتوث DIY: 4 خطوات (مع صور)

فيديو: O-Zone: مصباح بطارية بلوتوث DIY: 4 خطوات (مع صور)
فيديو: الراجل ده كان حلم حياته يمتلك عربية مرسيدس 🔥🔥 2024, يوليو
Anonim
Image
Image

O-Zone هو مصباح DIY Bluetooth. يمكنك تعديل لون المصباح وكذلك سطوع المصابيح. يمكنك استخدام هاتفك الذكي أو جهازك اللوحي لتشغيل الضوء وتعديل الألوان والمزاج في غرفتك.

مواد المصباح هي:

1 x Light BlueBean مع بطارية

1 × حلقة Adafruit Neopixel (16 × المصابيح)

تطبيق بلوتوث مفيد iOS

Bluethooth Terminal لنظام Android

مواد الهيكل هي:

3 مم (3.1 بوصة) خشب

1.5 مم (0.05 بوصة) زجاج شبكي أبيض

الخطوة 1: هيكل المكعب

قم ببرمجة الثقب من خلال Light Blue Bean
قم ببرمجة الثقب من خلال Light Blue Bean

بالنسبة لهيكل المصباح ، لقد صممت مكعبًا. مكعب خشب بسيط ولكن خطي. لقد قطعت الخشب باستخدام آلة النقش بالليزر الخاصة بي. أيضًا ، لقد قطعت دائرة داخل الوجه العلوي للمكعب. داخل القطع ، وضعت حلقة بيضاء من زجاج شبكي. لقد قطعت زجاج شبكي بقطع ليزر 40W. يمكنك استخدام زجاج شبكي أبيض ، حيث أن حلقة Adafruit تحتوي على العديد من الألوان. أيضًا ، يمكنك استخدام Plexi الشفاف ، لكنني أعتقد أن اللون الأبيض أفضل لجودة الإضاءة السهلة.

لقطع الهيكل ، يمكنك استخدام قاطع الليزر الخاص بك أو يمكنك استخدام خدمة القطع بالليزر مثل Fablab أو يمكنك أيضًا إرسال المشروع إلى خدمة عبر الإنترنت مثل Shapeways.

ضع القطع مع غراء الفينيل. بعد تجميع حلقة Adafruit Neopixel مع حلقة شبكي. بالنسبة للأجزاء البلاستيكية ، يمكنك استخدام غراء الأكريليك. التجميع جميعًا معًا.

بعد هذه الخطوة ، يصبح الهيكل الخاص بك جاهزًا!

الخطوة 2: قم ببرمجة الثقب من خلال Light Blue Bean

لبرمجة Light BlueBean ، يمكنك استخدام Arduino IDE. عندما تقوم بشحن البرنامج الثابت على Light BlueBean الخاص بك ، يجب عليك استخدام اتصال Bluetooth. يمكنك استخدام Arduino IDE ودمج هذا البرنامج مع محمل Punch Trough Light BlueBean. انظر الموقع الرسمي للحصول على التفاصيل.

ابدأ مع Light BLUEBean

يمكنك استخدام هذا الرمز لـ Light BlueBean:

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

* O-zone Bluethooth مصباح

* 31 مارس 2017

* جيوفاني جنتيلي

* لكمة من خلال Light BlueBean

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

# تضمين "Adafruit_NeoPixel.h"

// الدبوس المتصل بـ NeoPixels

#define PIN 5

// كمية مصابيح LED في NeoPixels

#define NUMPIXELS 16 int Bright = 20 ؛ لومي منطقي = 1 ؛ المنطقية السابقة Lumi = 1 ؛

أمر سلسلة

الأمر المنطقي Started = false ؛ Adafruit_NeoPixel pixels = Adafruit_NeoPixel (NUMPIXELS، PIN، NEO_GRB + NEO_KHZ800) ؛ LedReading ledColor ؛ قراءة previousLedColor ؛ إعداد باطل () {Serial.begin () ، // تهيئة NeoPixels pixels.begin () ؛ }

حلقة فارغة() {

getCommand () ، }

/*

تقرأ هذه الوظيفة المنفذ التسلسلي وتتحقق من وجود حرف البداية "#" إذا تم العثور على حرف البداية ، فإنه سيضيف جميع الأحرف المستلمة إلى مخزن الأوامر المؤقت حتى يتلقى أمر النهاية '؛' عند استلام أمر النهاية ، يتم استدعاء الوظيفة commandCompleted (). إذا تم العثور على حرف بدء ثانٍ قبل حرف نهاية ، فسيتم مسح المخزن المؤقت وتبدأ العملية من جديد. * / void getCommand () {while (Serial.available ()) {char newChar = (char) Serial.read ()؛ إذا (newChar == '#') {commandStarted = صحيح ؛ الأمر = "\ 0" ؛ } else if (newChar == '؛') {commandStarted = false؛ commandCompleted () ، الأمر = "\ 0" ؛ } else if (commandStarted == true) {command + = newChar؛ }}}

/*

تأخذ هذه الوظيفة الأمر المكتمل وتتحقق منه مقابل قائمة الأوامر المتاحة وتنفذ الكود المناسب. أضف عبارات 'if' إضافية لإضافة أوامر بالرمز الذي تريد تنفيذه عند تلقي هذا الأمر. يوصى بإنشاء دالة لأمر ما إذا كان هناك أكثر من بضعة أسطر من التعليمات البرمجية كما في مثال "إيقاف التشغيل". * / void commandCompleted () {if (command == "low") {bright = bright - 10؛ لومي = -لومي ؛ Serial.print (مشرق) ؛ } إذا (الأمر == "مرتفع") {مشرق = ساطع + 10 ؛ لومي = -لومي ؛ Serial.print (مشرق) ؛ } if (الأمر == "red") {Bean.setLed (255، 0، 0)؛ Serial.print ("LED تحول إلى اللون الأحمر") ؛ } if (الأمر == "green") {Bean.setLed (0، 255، 0)؛ Serial.print ("تحول LED إلى اللون الأخضر") ؛ } if (الأمر == "blue") {Bean.setLed (0، 0، 255)؛ Serial.print ("LED تحول إلى اللون الأزرق") ؛ } if (الأمر == "yellow") {Bean.setLed (255، 255، 0)؛ Serial.print ("تحول LED إلى اللون الأصفر") ؛ } if (command == "orange") {Bean.setLed (255، 60، 0)؛ Serial.print ("تحول LED إلى اللون البرتقالي") ؛ } إذا (الأمر == "أرجواني") {Bean.setLed (128، 0، 128)؛ Serial.print ("LED تحول إلى اللون الأرجواني") ؛ } if (الأمر == "white") {Bean.setLed (255، 255، 255)؛ Serial.print ("LED تحولت إلى اللون الأبيض") ؛ } if (الأمر == "off") {off ()؛ } if (Bean.getConnectionState ()) {// احصل على القيم من ledColor LED على متن Bean = Bean.getLed ()؛ } if (lumi! = previousLumi || ledColor.red! = previousLedColor.red || ledColor.green! = previousLedColor.green || ledColor.blue! = previousLedColor.blue) {لـ (int i = 0؛ i

/*

استخدم وظيفة منفصلة مثل هذه عندما يكون هناك أكثر من بضعة أسطر من التعليمات البرمجية. سيساعد هذا في الحفاظ على رمز نظيف وسهل القراءة. * / void off () {Bean.setLed (0، 0، 0)؛ Serial.print ("LED مطفأ") ؛ }

الخطوة 3: قم بتوصيل Light Blue Bean بحلقة Adafruit Neopixel

قم بتوصيل Light Blue Bean بحلقة Adafruit Neopixel
قم بتوصيل Light Blue Bean بحلقة Adafruit Neopixel

بعد تحميل البرنامج الثابت ، يمكنك استخدام Light BlueBean مع هاتفك الذكي. يمكنك تجربة البرنامج باستخدام rgb led onboard. بعد أن تتمكن من توصيل حلقة Adafruit 16x.

انتبه ، قم بتوصيل VCC بـ Light BlueBean 5v ، GND بـ Light BlueBean GND ودبوس البيانات على حلقة Adafruit Neopixel على رقم التعريف الشخصي 5

الخطوة 4: تطبيق Bluetooth والاتصال التسلسلي

تطبيق البلوتوث والاتصال التسلسلي
تطبيق البلوتوث والاتصال التسلسلي

يتلقى الكود الموجود داخل Light BlueBean البيانات بواسطة المسلسل. يمكنك إرسال السلسلة التسلسلية إلى BlueBean باستخدام بروتوكول Bluetooth. أستخدم Handy BLE لنظام iOS. يمكنك استخدام هذا التطبيق لإرسال أي سلسلة تريدها عن طريق بروتوكول Bluetooth. لقد أنشأت لوحة تحكم بها 6 ألوان دائرة ، وواحد خارج الدائرة واثنان مربعان ساطعان. أوامر المربّع مخصصة لرفع سطوع حلقة المصابيح لأعلى ولأسفل.

الأمر التسلسلي الذي يقبله BlueBean هو:

لتلوين المصابيح:

#أحمر؛

#نفسجي؛

#أزرق؛

#لون أخضر؛

#أصفر؛

#البرتقالي؛

لإغلاق المصابيح:

#إيقاف؛

لتنظيم السطوع:

#قليل؛

#عالي؛

موصى به: