جدول المحتويات:
2025 مؤلف: John Day | [email protected]. آخر تعديل: 2025-01-13 06:56
في هذه المقالة سأقوم بعمل مؤشر دوران لمقياس الجهد باستخدام حلقة RGB Nano pixel.
لذا ، كم عدد الثورات التي تم إجراؤها على مقياس الجهد سيتم عرضها على حلقة RGB
الخطوة 1: المكونات المطلوبة
المكونات اللازمة لصنعه:
- اردوينو نانو v.3
- RGB RIng NeoPixels
- مقياس فرق الجهد
- سلك الطائر
- USB صغير
- مجلس المشروع
الخطوة 2: مخطط الدائرة
قم بتجميع جميع المكونات وفقًا لمخطط السحب أعلاه.
Arduino إلى Potensio & RGB Ring
+ 5V ==> 3-بوتنسيو و VCC
GND ==> 1. Potensio & GND
A0 ==> 2-بوتنسيو
D12 ==> IN
الخطوة الثالثة: البرمجة
انسخ الكود أدناه ، والصقه في الرسم التخطيطي الخاص بك
#include #ifdef _AVR_ #include // مطلوب لـ 16 ميجا هرتز Adafruit Trinket #endif
# تعريف رقم التعريف الشخصي 12
#define NUMPIXELS 16
Adafruit_NeoPixel pixels (NUMPIXELS، PIN، NEO_GRB + NEO_KHZ800) ؛
#define DELAYVAL 10
الإعداد باطل() {
# إذا تم تعريفها (_ AVR_ATtiny85_) && (F_CPU == 16000000)
clock_prescale_set (clock_div_1) ؛ #إنهاء إذا
pixels.begin () ،
pixels.setBrightness (10) ،
Serial.begin (9600) ؛ }
حلقة فارغة()
{pixels.clear () ؛ int val = analogRead (A0) ؛ فال = خريطة (val ، 0 ، 1023 ، 0 ، 18) ؛
إذا (val == 1) {for (int i = 0؛ i <1؛ i ++) {pixels.setPixelColor (i، pixels. Color (0، 225، 0)) ؛ تأخير (10) ؛ }}
إذا (فال == 2)
{for (int i = 0؛ i <2؛ i ++) {pixels.setPixelColor (i، pixels. Color (32، 225، 0)) ؛ تأخير (10) ؛ }}
إذا (فال == 3)
{for (int i = 0؛ i <3؛ i ++) {pixels.setPixelColor (i، pixels. Color (64، 225، 0)) ؛ تأخير (10) ؛ }}
إذا (فال == 4)
{for (int i = 0؛ i <4؛ i ++) {pixels.setPixelColor (i، pixels. Color (96، 225، 0)) ؛ تأخير (10) ؛ }}
إذا (فال == 5)
{for (int i = 0؛ i <5؛ i ++) {pixels.setPixelColor (i، pixels. Color (128، 225، 0)) ؛ تأخير (10) ؛ }}
إذا (فال == 6)
{for (int i = 0؛ i <6؛ i ++) {pixels.setPixelColor (i، pixels. Color (160، 225، 0)) ؛ تأخير (10) ؛ }}
إذا (فال == 7)
{for (int i = 0؛ i <7؛ i ++) {pixels.setPixelColor (i، pixels. Color (192، 225، 0)) ؛ تأخير (10) ؛ }}
إذا (فال == 8)
{for (int i = 0؛ i <8؛ i ++) {pixels.setPixelColor (i، pixels. Color (225، 225، 0)) ؛ تأخير (10) ؛ }}
إذا (فال == 9)
{for (int i = 0؛ i <9؛ i ++) {pixels.setPixelColor (i، pixels. Color (225، 225، 0)) ؛ تأخير (10) ؛ }}
إذا (فال == 10)
{for (int i = 0؛ i <10؛ i ++) {pixels.setPixelColor (i، pixels. Color (225، 192، 0)) ؛ تأخير (10) ؛ }}
إذا (فال == 11)
{for (int i = 0؛ i <11؛ i ++) {pixels.setPixelColor (i، pixels. Color (225، 160، 0)) ؛ تأخير (10) ؛ }}
إذا (فال == 12)
{for (int i = 0؛ i <12؛ i ++) {pixels.setPixelColor (i، pixels. Color (225، 128، 0)) ؛ تأخير (10) ؛ }}
إذا (فال == 13)
{for (int i = 0؛ i <13؛ i ++) {pixels.setPixelColor (i، pixels. Color (225، 96، 0)) ؛ تأخير (10) ؛ }}
إذا (فال == 14)
{for (int i = 0؛ i <14؛ i ++) {pixels.setPixelColor (i، pixels. Color (225، 64، 0)) ؛ تأخير (10) ؛ }}
إذا (فال == 15)
{for (int i = 0؛ i <15؛ i ++) {pixels.setPixelColor (i، pixels. Color (225، 32، 0)) ؛ تأخير (10) ؛ }}
إذا (فال == 16)
{for (int i = 0؛ i <16؛ i ++) {pixels.setPixelColor (i، pixels. Color (225، 0، 0)) ؛ تأخير (10) ؛ }}
إذا (فال == 17)
{for (int i = 0؛ i <17؛ i ++) {pixels.setPixelColor (i، pixels. Color (225، 0، 0)) ؛ تأخير (10) ؛ }}
إذا (فال == 18)
{for (int i = 0؛ i <18؛ i ++) {pixels.setPixelColor (i، pixels. Color (225، 0، 0)) ؛ تأخير (10) ؛ }} pixels.show ()؛ تأخير (تأخير) ؛ }
يمكن تنزيل ملف Sketch أدناه:
الخطوة 4: النتيجة
للحصول على نتائج يمكن رؤيتها في الفيديو أعلاه.
لذلك في كل مرة يتم فيها تدوير مقياس الجهد ، سيضيء عدد ولون مصابيح LED على الحلقة وفقًا لعدد الدورات التي يتم إجراؤها على مقياس الجهد.