![مستشعر ألوان بسيط DIY من Magicbit: 5 خطوات مستشعر ألوان بسيط DIY من Magicbit: 5 خطوات](https://i.howwhatproduce.com/images/001/image-2886-12-j.webp)
جدول المحتويات:
2025 مؤلف: John Day | [email protected]. آخر تعديل: 2025-01-23 12:53
![Image Image](https://i.howwhatproduce.com/images/001/image-2886-14-j.webp)
![](https://i.ytimg.com/vi/OqeIHxYCTsM/hqdefault.jpg)
في هذا البرنامج التعليمي سوف نتعرف على كيفية صنع مستشعر ألوان بسيط باستخدام Magicbit مع Arduino.
اللوازم
- ماجيكبيت
- كابل USB-A إلى Micro-USB
الخطوة 1: القصة
![إعداد الأجهزة إعداد الأجهزة](https://i.howwhatproduce.com/images/001/image-2886-15-j.webp)
مرحبًا يا شباب ، في بعض الأحيان يتعين عليك استخدام مستشعرات الألوان لبعض الأغراض. لكن قد لا تعرف كيف تعمل. لذلك في هذا البرنامج التعليمي سوف تتعلم كيفية صنع مستشعر ألوان بسيط DIY باستخدام Magicbit مع Arduino. لنبدأ.
الخطوة الثانية: النظرية والمنهجية
نتوقع أن نعلمك في هذا المشروع كيفية بناء مستشعر ألوان يمكنه اكتشاف الألوان الأحمر والأخضر والأزرق. هذا مثال أساسي للغاية. فكيف للقيام بذلك. لهذا الغرض ، نستخدم وحدة RGB من Magicbit و LDR يحمل في ثناياه عوامل. بادئ ذي بدء ، عليك أن تتعلم بعض النظرية. هذا هو حول كمية انعكاس الضوء. الآن أطرح سؤالاً منك. ما هو السطح الملون الذي يعكس ضوء اللون الأحمر؟ وأيضًا الأسطح التي تعكس في الغالب الأضواء الخضراء والزرقاء. فكر قليلا. لكن الجواب بسيط. يعكس السطح الملون باللون الأحمر في الغالب ضوء اللون الأحمر. كما ستعكس الأسطح الخضراء والزرقاء الضوء الأخضر والأزرق. لذلك في هذا المشروع نستخدم تلك النظرية. للتعرف على اللون ، نصدر أضواء حمراء وخضراء وزرقاء واحدة تلو الأخرى. في كل مرة نقيس مقدار الانعكاس باستخدام قيمة LDR ، إذا كان بعض الضوء يعطي انعكاسًا أكبر من مصباحين آخرين ، فيجب أن ينعكس هذا السطح في الغالب على السطح الملون.
الخطوة 3: إعداد الجهاز
هذا بسيط جدا. قم بتوصيل وحدة RGB في المنفذ الأيمن العلوي من Magicbit. تحتوي هذه الوحدة على WS2812B Neopixel LED. هذا الصمام له 4 دبابيس. اثنان للطاقة واثنان للبيانات داخل وخارج. نظرًا لأننا نستخدم مؤشرًا واحدًا ، فإننا نحتاج فقط إلى دبابيس طاقة وبيانات في الدبوس. إذا لم يكن لديك هذه الوحدة ، يمكنك شراء وحدة Neopixel. إذا اشتريت هذا النوع من الوحدات ، فيجب عليك توصيل دبابيس الطاقة والبيانات في دبوس إلى Magicbit. هذا سهل جدا. قم بتوصيل VCC و GND الخاص بـ Magicbit بدبابيس الطاقة لوحدة RGB ودبوس D33 بدبوس البيانات.
الخطوة 4: إعداد البرنامج
الجزء الأكبر من البرمجة. نحن نستخدم Arduino IDE لبرمجة Magicbit الخاص بنا. في الكود نستخدم مكتبتين. إنها مكتبة Adafruit Neopixel للتحكم في Neopixel LED ومكتبة Adafruit OLED للتعامل مع OLED. في الإعداد نقوم بتكوين مدخلاتنا ومخرجاتنا. قم أيضًا بتكوين شاشة OLED المدمجة في Magicbit. في الحلقة ، نتحقق من الضغط على زر الضغط الأيسر أو عدم الضغط على Magicbit. إذا تم الضغط عليه ، تكون إشارة الإدخال 0. لأنه تم سحبها بالفعل بواسطة اللوحة. إذا تم الضغط عليه ، فإننا نقوم بفحص اللون. إذا لم يكن الأمر كذلك ، فستعرض الشاشة عبارة "بلا لون". عند الضغط على الزر ، قم تلقائيًا بتشغيل الأضواء الحمراء والخضراء والزرقاء واحداً تلو الآخر وتخزين مقدار انعكاس الألوان في ثلاثة متغيرات. بعد ذلك ، قمنا بمقارنة هذه القيم وتحديد اللون الأقصى للقيمة لعرضه كلون الإخراج.
لذا ، قم بتوصيل كبل USB الصغير بـ Magicbit وحدد نوع اللوحة ومنافذ com بشكل صحيح. الآن قم بتحميل الكود. ثم حان الوقت لاختبار المستشعر الخاص بنا. لاختبار ذلك ، احتفظ بالورق ذي السطح الأحمر أو الأخضر أو الأزرق أو الورقة أعلى وحدة LDR و RGB واضغط على زر الضغط الأيسر. ثم ستعرض شاشة OLED ما هو لون السطح. إذا كان هذا خاطئًا ، فالسبب هو أن بعض الألوان لها شدة إضاءة عالية. كمثال في كل سطح أخضر ، يكون الناتج أحمر ، ثم يتعين عليك تقليل سطوع الضوء الأحمر من بعض المقدار. لأن الضوء الأحمر له سطوع عالي جدًا في هذه الحالة. لذلك لديها انعكاس كبير. إذا كنت لا تعرف كيفية التحكم في السطوع ، فارجع إلى البرنامج التعليمي في الرابط أدناه.
magicbit-arduino.readthedocs.io/en/latest/
في هذا الرابط ، يمكنك العثور على كيفية التحكم في وحدة RGB هذه من Magicbit. وأيضًا يمكنك العثور على كيفية العمل مع LDR وزر الضغط باستخدام Magicbit. اقرأ هذا المستند وادرس المزيد حول كيفية تحسين مستشعر الألوان. لأن هذا مثال أساسي للغاية حول كيفية عمل مستشعرات الألوان. تعمل معظم أنواع مستشعرات الألوان بهذه الطريقة. لذا حاول تحسين ذلك عن طريق إزالة ضوضاء الإضاءة المحيطة والضوضاء الأخرى.
الخطوة 5: كود اردوينو لمستشعر الألوان
#يشمل
#define LED_PIN 33
#define LED_COUNT 1 Adafruit_NeoPixel LED (LED_COUNT ، LED_PIN ، NEO_RGB + NEO_KHZ800) ؛ # تضمين # تضمين # تضمين # تعريف OLED_RESET 4 عرض Adafruit_SSD1306 (128 ، 64) ؛ #define LDR 36 # زر تعريف 35 int R_value ، G_value ، B_value ؛ إعداد باطل () {LED.begin () ؛ LED.show () ؛ pinMode (LDR ، المدخلات) ؛ pinMode (زر ، الإدخال) ؛ display.begin (SSD1306_SWITCHCAPVCC ، 0x3C) ؛ display.display () ، تأخير (1000) ؛ display.clearDisplay () ، Serial.begin (9600) ؛ } حلقة فارغة () {if (digitalRead (Button) == 0) {// إذا تم الضغط على الزر LED.setPixelColor (0، LED. Color (0، 50، 0))؛ // في redcolour LED.show () ؛ تأخير (100) ؛ R_value = analogRead (LDR) ؛ // احصل على أحمر جبل LED.setPixelColor (0 ، LED. Color (150 ، 0 ، 0)) ؛ // على greencolour LED.show () ؛ تأخير (100) ؛ G_value = analogRead (LDR) ؛ // احصل على جبل أخضر LED.setPixelColor (0 ، LED. Color (0 ، 0 ، 255)) ؛ // على bluecolour LED.show () ؛ تأخير (100) ؛ B_value = analogRead (LDR)؛ // الحصول على Blue mount if (R_value> G_value && R_value> B_value) {// الأحمر هو العرض الأكثر انعكاسًا ("RED" ، 3) ؛ } else if (G_value> R_value && G_value> B_value) {// green هو العرض الأكثر انعكاسًا ("GREEN" ، 3) ؛ } else if (B_value> R_value && B_value> G_value) {// blue هو العرض الأكثر انعكاسًا ("BLUE" ، 3) ؛ } Serial.print ("RED =") ؛ Serial.print (R_value) ؛ Serial.print ("GREEN =") ؛ Serial.print (G_value) ؛ Serial.print ("BLUE =") ؛ Serial.println (B_value) ؛ } else {LED.setPixelColor (0 ، LED. Color (0 ، 0 ، 0)) ؛ // إيقاف RGB LED.show () ؛ العرض ("NO COLOR" ، 2) ؛ }} void Display (String commond، int size) {// display data display.clearDisplay ()؛ display.setTextSize (الحجم) ؛ // عرض مقياس 1: 1 بكسل عادي. setTextColor (أبيض) ؛ // رسم شاشة عرض النص الأبيض. setCursor (0 ، 20) ؛ // ابدأ من شاشة الزاوية العلوية اليسرى. println (commond) ؛ display.display () ، }
موصى به:
مستشعر التنفس DIY مع Arduino (مستشعر التمدد الموصل المحبوك): 7 خطوات (بالصور)
![مستشعر التنفس DIY مع Arduino (مستشعر التمدد الموصل المحبوك): 7 خطوات (بالصور) مستشعر التنفس DIY مع Arduino (مستشعر التمدد الموصل المحبوك): 7 خطوات (بالصور)](https://i.howwhatproduce.com/images/002/image-3942-6-j.webp)
مستشعر التنفس DIY مع Arduino (مستشعر التمدد الموصل المحبوك): سيأخذ مستشعر DIY هذا شكل مستشعر التمدد الموصل المحبوك. سوف يلتف حول صدرك / معدتك ، وعندما يتوسع صدرك / معدتك وينكمش ، فإن المستشعر ، وبالتالي بيانات الإدخال التي يتم تغذيتها إلى Arduino. وبالتالي
مستشعر إنذار باب التبديل المغناطيسي ، مفتوح عادة ، مشروع بسيط ، يعمل بنسبة 100٪ ، كود المصدر معطى: 3 خطوات
![مستشعر إنذار باب التبديل المغناطيسي ، مفتوح عادة ، مشروع بسيط ، يعمل بنسبة 100٪ ، كود المصدر معطى: 3 خطوات مستشعر إنذار باب التبديل المغناطيسي ، مفتوح عادة ، مشروع بسيط ، يعمل بنسبة 100٪ ، كود المصدر معطى: 3 خطوات](https://i.howwhatproduce.com/images/005/image-14192-j.webp)
مستشعر إنذار باب التبديل المغناطيسي ، مفتوح عادة ، مشروع بسيط ، يعمل بنسبة 100٪ ، رمز المصدر: الوصف: مرحبًا يا رفاق ، سأقوم بعمل برنامج تعليمي حول إنذار مستشعر التبديل المغناطيسي MC-18 الذي يعمل في الوضع المفتوح عادةً. نوع المفتاح: NO (نوع الإغلاق العادي) ، الدائرة مفتوحة بشكل طبيعي ، والدائرة متصلة عندما يكون المغناطيس قريبًا. القصب
مستشعر ضوء بسيط بمصباح LED (تناظري): 3 خطوات
![مستشعر ضوء بسيط بمصباح LED (تناظري): 3 خطوات مستشعر ضوء بسيط بمصباح LED (تناظري): 3 خطوات](https://i.howwhatproduce.com/images/009/image-26177-j.webp)
مستشعر الضوء البسيط بمصباح LED (تناظري): مرحبًا ، سأوضح لك في هذا الدليل كيفية صنع مستشعر ضوء بسيط بمصباح LED. بالنسبة لي ، هذه الدائرة عديمة الفائدة نوعًا ما لأنه لا يمكنك فعل الكثير بها ، لكنني أعتقد
مستشعر درجة حرارة DIY باستخدام Arduino و LM 35 بسيط: 5 خطوات
![مستشعر درجة حرارة DIY باستخدام Arduino و LM 35 بسيط: 5 خطوات مستشعر درجة حرارة DIY باستخدام Arduino و LM 35 بسيط: 5 خطوات](https://i.howwhatproduce.com/images/002/image-3681-49-j.webp)
مستشعر درجة الحرارة DIY باستخدام Arduino و LM 35 بسيط: مرحبًا يا أصدقاء ، سنقوم اليوم ببناء دائرة مستشعر لقياس درجة الحرارة حول متحكم Arduino UNO باستخدام مستشعر LM35. لذا دون إضاعة الوقت فلنبدأ
مستشعر ألوان يتحدث ، استنادًا إلى AIY Voice Kit: 4 خطوات
![مستشعر ألوان يتحدث ، استنادًا إلى AIY Voice Kit: 4 خطوات مستشعر ألوان يتحدث ، استنادًا إلى AIY Voice Kit: 4 خطوات](https://i.howwhatproduce.com/images/003/image-8235-19-j.webp)
مستشعر ألوان يتحدث ، استنادًا إلى مجموعة AIY الصوتية: بعد أن تعلمت قليلاً عن طريقة برايل مؤخرًا ، كنت أتساءل عما إذا كان بإمكاني إنشاء شيء باستخدام مجموعة أدوات الصوت AIY لـ Raspberry Pi ، والتي قد يكون لها فائدة حقيقية للمعاقين بصريًا . على النحو الموصوف في ما يلي ستجد نموذجًا أوليًا