- מגן Adafruit 5X8 NeoPixel לארדואינו
- הבנת תהליך התקשורת בין אפליקציית Blynk ל- Arduino
- רכיבים נדרשים
- Adafruit RGB LED מגן וארדואינו - חיבור חומרה
- הגדרת התצורה של יישום Blynk
- קוד Arduino השולט Adafruit WS2812B מגן LED LED
- העלאת הקוד ללוח Arduino
במשך כמה שנים, נוריות ה- RGB נהנות פופולריות מיום ליום בשל הצבע היפה שלה, הבהירות והאפקטים המפתים שלה. לכן הוא משמש במקומות רבים כפריט דקורטיבי, דוגמה יכולה להיות הבית או שטח משרדים. כמו כן, אנו יכולים להשתמש באורות ה- RGB במטבח וגם בקונסולת משחקים. הם נהדרים גם בחדר המשחקים של הילדים או בחדרי השינה מבחינת תאורת אווירה. בעבר השתמשנו במנורות ה- WS2812B NeoPixel ובמיקרו-בקר ARM לבניית Visualizer של ספקטרום מוסיקה, אז בדוק אם זה מעניין אותך.
לכן בפרויקט זה אנו הולכים להשתמש במגן מטריקס RGB LED מבוסס Neopixel, Arduino ו- Blynk כדי לייצר אפקטים ואנימציות מרתקות רבות וצבעים בהם נוכל לשלוט באמצעות אפליקציית Blynk. אז בואו נתחיל!!!
מגן Adafruit 5X8 NeoPixel לארדואינו
מגן NeoPixel תואם Arduino מכיל ארבעים נוריות RGB ניתנות להפניה בנפרד, ולכל אחת מהן הנהג WS2812b מובנה, המסודר במטריצה 5 × 8 ליצירת מגן NeoPixel זה. ניתן לחבר מגן NeoPixel מרובים ליצירת מגן גדול יותר אם זו דרישה. כדי לשלוט על נוריות ה- RGB, נדרש סיכה אחת של ארדואינו, ולכן במדריך זה החלטנו להשתמש בסיכה 6 של הארדואינו לשם כך.
במקרה שלנו, הנוריות מופעלות מהסיכה המובנית של ארדוינו, 5V, המספיקה להפעלת כשליש נוריות בהירות מלאה. אם אתה צריך להפעיל יותר נוריות, אתה יכול לחתוך את המעקב המובנה ולהשתמש באספקת 5V חיצונית להפעלת המגן באמצעות מסוף 5V חיצוני.
הבנת תהליך התקשורת בין אפליקציית Blynk ל- Arduino
מטריצת LED 8 * 5 RGB המשמשת כאן כוללת ארבעים נוריות RGB ניתנות לטיפול ניתנות בהתבסס על מנהל התקן WS2812B. יש לו שליטת צבע של 24 סיביות ו -16.8 מיליון צבעים לפיקסל. ניתן לשלוט בו באמצעות מתודולוגיית "בקרת חוט אחד". זה אומר שאנחנו יכולים לשלוט על כל פיקסל ה- LED באמצעות סיכת בקרה אחת. תוך כדי עבודה עם נוריות ה- LED עברתי את גליון הנתונים של נוריות ה- LED הללו, שם אני מוצא שטווח מתח ההפעלה של המגן הוא 4 וולט עד 6 וולט והצריכה הנוכחית מתגלה 50 mA לכל נורית LED ב -5 וולט עם אדום, ירוק, וכחול במלוא הבהירות. יש לו הגנה על מתח הפוך על סיכות החשמל החיצוניות וכפתור איפוס על המגן כדי לאפס את הארדואינו. יש לו גם סיכת כניסת חשמל חיצונית עבור נוריות נוריות אם אין כמות מספקת של כוח באמצעות מעגלים פנימיים.
כפי שמוצג בתרשים הסכימטי לעיל, עלינו להוריד ולהתקין את יישום Blynkבסמארטפון שלנו שם ניתן לשלוט בפרמטרים כמו צבע, בהירות. לאחר הגדרת הפרמטרים, אם קורים שינויים באפליקציה, זה לענן Blynk שם המחשב שלנו מחובר ומוכן לקבל את הנתונים המעודכנים. ה- Arduino Uno מחובר למחשב האישי שלנו באמצעות כבל USB עם יציאת תקשורת שנפתחה, עם יציאת תקשורת זו (יציאת COM), ניתן להחליף נתונים בין ענן Blynk ל- Arduino UNO. המחשב האישי מבקש נתונים מענן Blynk במרווחי זמן קבועים וכאשר מתקבלים נתונים מעודכנים, הוא מעביר אותם לארדואינו ומקבל החלטות מוגדרות על ידי המשתמש כמו שליטה על בהירות ה- RGB והצבעים. מגן ה- LED RGB ממוקם על נורית ה- Arduino ומחובר באמצעות סיכת נתונים אחת לתקשורת, כברירת מחדל הוא מחובר באמצעות סיכת D6 של Arduino.הנתונים הסידוריים שנשלחו מ- Arduino UNO נשלחים אל ה- Neopixel shied אשר משתקף אז על מטריצת ה- LED.
רכיבים נדרשים
- ארדואינו UNO
- 8 * 5 מגן מטריקס LED RGB
- כבל USB A / B ל- Arduino UNO
- מחשב נייד / מחשב
Adafruit RGB LED מגן וארדואינו - חיבור חומרה
נוריות ה- WS2812B Neopixel כוללות שלוש פינים, אחת מיועדת לנתונים ושנייה נוספת משמשת לחשמל, אך מגן ארדואינו ספציפי זה הופך את חיבור החומרה לפשוט מאוד, כל שעלינו לעשות הוא למקם את מטריצת LED Neopixel על גבי ארדואינו UNO. במקרה שלנו, ה- LED מופעל ממסילת ברירת המחדל של Arduino 5V. לאחר הצבת מגן Neopixel, ההתקנה נראית למטה:
הגדרת התצורה של יישום Blynk
Blynk הוא יישום שיכול לרוץ על מכשירי אנדרואיד ו- IOS כדי לשלוט על כל מכשירי IoT ומכשירים באמצעות הטלפונים החכמים שלנו. ראשית, יש ליצור ממשק משתמש גרפי (GUI) כדי לשלוט על מטריצת ה- RGB LED. היישום ישלח את כל הפרמטרים שנבחרו מממשק המשתמש לענן Blynk. בחלק המקלט, יש לנו Arduino מחובר למחשב באמצעות כבל תקשורת סדרתי. לפיכך, המחשב האישי מבקש נתונים מענן Blynk, ונתונים אלה נשלחים לארדואינו לעיבוד הכרחי. אז בואו נתחיל עם הגדרת היישום Blynk.
לפני ההתקנה, הורד את יישום Blynk מחנות Google Play (משתמשי IOS יכולים להוריד מחנות האפליקציות). לאחר ההתקנה, הירשם באמצעות מזהה הדוא"ל והסיסמה שלך.
יצירת פרויקט חדש:
לאחר התקנה מוצלחת, פתח את היישום, ושם נקבל מסך עם אפשרות " פרויקט חדש ". לחץ עליו והוא יופיע מסך חדש, שבו עלינו להגדיר את הפרמטרים כמו שם הפרויקט, הלוח וסוג החיבור. בפרויקט שלנו בחר את המכשיר כ- " Arduino UNO " וסוג החיבור כ- " USB " ולחץ על " צור".
לאחר היצירה המוצלחת של הפרויקט, נקבל מזהה אימות בדואר הרשום שלנו. שמור את מזהה האימות לעיון עתידי.
יצירת ממשק המשתמש הגרפי (GUI):
פתח את הפרויקט ב- Blynk, לחץ על הסימן "+" שם נקבל את הווידג'טים בהם נוכל להשתמש בפרויקט שלנו. במקרה שלנו, אנו זקוקים לבורר צבעים RGB אשר מופיע בתור "zeRGBa" כמוצג להלן.
הגדרת הווידג'טים:
לאחר גרירת היישומונים לפרויקט שלנו, כעת עלינו להגדיר את הפרמטרים שלו המשמשים לשליחת ערכי ה- RGB הצבעיים ל- Arduino UNO.
לחץ על ZeRGBa, ואז נקבל מסך בשם הגדרת ZeRGBa. לאחר מכן הגדר את אפשרות הפלט ל"מזג "והגדר את הסיכה ל" V2 "שמוצג בתמונה למטה.
קוד Arduino השולט Adafruit WS2812B מגן LED LED
לאחר השלמת חיבור החומרה, יש להעלות את הקוד לארדואינו. ההסבר צעד אחר צעד של הקוד מוצג להלן.
ראשית, כלול את כל הספריות הנדרשות. פתח את Arduino IDE, ואז עבור לכרטיסייה סקיצה ולחץ על האפשרות כלול ספרייה-> נהל ספריות . ואז חפש את Blynk בתיבת החיפוש ואז הורד והתקן את חבילת Blynk עבור Arduino UNO.
כאן משמשת ספריית " Adafruit_NeoPixel.h " לבקרת מטריקס ה- RGB LED. כדי לכלול אותו, תוכל להוריד את ספריית Adafruit_NeoPixel מהקישור הנתון. ברגע שקיבלתם את זה, תוכלו לכלול אותו עם האפשרות כלול ספריית ZIP.
#define BLYNK_PRINT DebugSerial #include #include
לאחר מכן אנו מגדירים את מספר הנוריות הנדרשות למטריצת ה- LED שלנו, כמו כן אנו מגדירים את מספר הסיכה המשמש לבקרת פרמטרי ה- LED.
#define PIN 6 #define NUM_PIXELS 40
לאחר מכן, עלינו להכניס את מזהה האימות המהבהב שלנו למערך אימות ששמרנו קודם.
char auth = "HoLYSq-SGJAafQUQXXXXXXXX";
כאן סיכות סדרתיות של תוכנה משמשות כמסוף ניפוי באגים. אז, הסיכות של ארדואינו מוגדרות להלן בתור סדרת ניפוי באגים.
#לִכלוֹל
בתוך ההתקנה, אתחול תקשורת טורית באמצעות פונקציה Serial.begin , blynk מחובר באמצעות Blynk.begin ובאמצעות pixels.begin (), מטריצת ה- LED מאותחל.
הגדרת חלל () { DebugSerial.begin (9600); pixels.begin (); Serial.begin (9600); Blynk.begin (סדרתי, אות); }
בתוך הלולאה () השתמשנו ב- Blynk.run () , אשר בודק פקודות נכנסות מממשק המשתמש של blynk ומבצע את הפעולות בהתאם.
לולאה בטלה () { Blynk.run (); }
בשלב הסופי, הפרמטרים שנשלחו מיישום Blynk צריכים להתקבל ולעבד. במקרה זה, הפרמטרים הוקצו לסיכה וירטואלית "V2" כפי שנדון קודם בסעיף ההתקנה. פונקציית BLYNK_WRITE היא פונקציה מובנית שמתקשרת בכל פעם שהמצב / הערך של הפין הווירטואלי המשויך משתנים. אנו יכולים להריץ קוד בתוך פונקציה זו בדיוק כמו כל פונקציית Arduino אחרת.
כאן נכתבת הפונקציה BLYNK_WRITE לבדיקת נתונים נכנסים בסיכה V2 הווירטואלית. כפי שמוצג בסעיף הגדרת Blink, נתוני פיקסל הצבעים מוזגו והוקצו לסיכת V2. אז אנחנו גם צריכים להתמזג שוב לאחר הפענוח. מכיוון כדי לשלוט על מטריצת הפיקסלים LED, אנו זקוקים לכל 3 נתוני הפיקסלים הצבעוניים האישיים כגון אדום, ירוק וכחול. כפי שמוצג בקוד שלהלן, שלושה אינדקסים של המטריצה נקראו כמו param.asInt () כדי לקבל את הערך של צבע אדום. באופן דומה, כל שני הערכים האחרים התקבלו ונשמרו ב -3 משתנים בודדים. ואז ערכים אלה מוקצים למטריצת פיקסל באמצעות פונקציית pixels.setPixelColor כפי שמוצג בקוד שלמטה.
כאן, פונקציית pixels.setBrightness () משמשת לשליטה בפונקציה בהירות ופיקסלים . Show () משמשת להצגת הצבע המוגדר במטריקס.
BLYNK_WRITE (V2) { int r = param.asInt (); int g = param.asInt (); int b = param.asInt (); פיקסלים.ברורים (); פיקסלים. setBrightness (20); עבור (int i = 0; i <= NUM_PIXELS; i ++) { pixels.setPixelColor (i, pixels.Color (r, g, b)); } פיקסלים. show (); }
העלאת הקוד ללוח Arduino
ראשית, עלינו לבחור את הנמל של הארדואינו בתוך ארדוינו IDE, ואז עלינו להעלות את הקוד לארדואינו UNO. לאחר העלאה מוצלחת, רשום את מספר הנמל שישמש להגדרת התקשורת הסדרתית שלנו.
לאחר מכן, מצא את תיקיית הסקריפט של ספריית Blynk במחשב האישי שלך. זה מותקן כשאתה מתקין את הספרייה, שלי היה, "C: \ Users \ PC_Name \ Documents \ Arduino \ ספריות \ Blynk \ scripts"
בתיקיית הסקריפט, צריך להיות קובץ בשם "blynk-ser.bat" שהוא קובץ אצווה המשמש לתקשורת סדרתית שעלינו לערוך באמצעות פנקס הרשימות. פתח את הקובץ באמצעות פנקס הרשימות ושנה את מספר היציאה למספר היציאה שלך ב- Arduino שציינת בשלב האחרון.
לאחר העריכה, שמור את הקובץ והפעל את קובץ האצווה על ידי לחיצה כפולה עליו. ואז אתה בטח רואה חלון כמו להלן:
הערה: אם אינך מסוגל לראות חלון זה המוצג לעיל והוא מתבקש להתחבר מחדש, ייתכן שהדבר נובע מהשגיאה בחיבור המחשב עם מגן Arduino. במקרה כזה, בדוק את חיבור ה- Arduino שלך עם המחשב האישי. לאחר מכן, בדוק אם מספר יציאת ה- COM מוצג ב- ID של Arduino או לא. אם הוא מציג את יציאת ה- COM התקפה, הוא מוכן להמשיך. עליך להריץ את קובץ האצווה שוב.
הפגנה סופית:
עכשיו הגיע הזמן לבדוק את המעגל ואת הפונקציונליות שלו. פתח את יישום Blynk ופתח את ממשק המשתמש ולחץ על כפתור ההפעלה. לאחר מכן, תוכל לבחור כל אחד מהצבעים הרצויים שלך שישתקף במטריקס LED. כפי שמוצג להלן, במקרה שלי בחרתי בצבע אדום וכחול, הוא מוצג במטריקס.
באופן דומה, אתה יכול גם לנסות ליצור אנימציות שונות באמצעות מטריצות LED אלה על ידי התאמה אישית של הקידוד מעט.