תוכן עניינים:
- שלב 1: בנה מעגל הדגמה TLC5940
- שלב 2:
- שלב 3: שליטה ב- TLC5940
- שלב 4:
- שלב 5: שימוש בשני TLC5940 או יותר
- שלב 6: שליטה בסרוווס באמצעות TLC5940
- שלב 7: ניהול זרם וחום
וִידֵאוֹ: Arduino ו- TLC5940 PWM LED Driver IC: 7 שלבים
2024 מְחַבֵּר: John Day | [email protected]. שונה לאחרונה: 2024-01-30 09:13
במאמר זה אנו הולכים לבחון את טקסס אינסטרומנטס TLC5940 16-channel LED driver IC. הסיבה שלנו לעשות זאת היא להפגין דרך קלה נוספת לנהוג נוריות רבות - וגם סרווס. ראשית, הנה כמה דוגמאות ל- TLC5940. אתה יכול להזמין TLC5940 מ- PMD Way עם משלוח חינם לכל רחבי העולם.
ה- TLC5940 זמין בגרסת DIP, וגם הרכבה על פני השטח. זה באמת חלק נוח, המאפשר לך להתאים את הבהירות של שישה עשר נוריות בודדות באמצעות PWM (אפנון רוחב דופק)-ואתה יכול גם לרשת יותר מחיי TLC5940 לשלוט אפילו יותר.
במהלך הדרכה זו נסביר כיצד לשלוט במעגלי TLC5940 אחד או יותר עם נוריות וגם להסתכל על סרוו שליטה. בשלב זה, אנא הורד עותק של TLC5940 (.pdf) כפי שתתייחס אליו בתהליך זה. יתר על כן, אנא הורד והתקן את ספריית ה- TLC5940 Arduino מאת אלכס לאון שניתן למצוא כאן. אם אינך בטוח כיצד להתקין ספרייה, לחץ כאן.
שלב 1: בנה מעגל הדגמה TLC5940
המעגל הבא הוא המינימום הנדרש לשליטה על שש עשרות נוריות מהארדואינו שלך או תואם. אתה יכול להשתמש בו כדי להתנסות בפונקציות שונות ולקבל מושג מה אפשרי. אתה תצטרך:
- לוח Arduino Uno או לוח תואם
- 16 נוריות נורמליות יומיומיות שיכולות להיות בעלות זרם קדימה של עד 20 mA
- נגד 2 kΩ (לתת או לקחת 10%)
- קרמיקה של 0.1uF וקבל אלקטרוליטי 4.7uF
שימו לב לכיוון ה- LED-וזכרו TLC5940 הוא מנהל התקן LED-אנודה משותפת-כך שכל האנודות LED מחוברות יחד ואז ל- 5V.
שלב 2:
עבור מעגל מסוים זה, לא תזדקק לספק כוח חיצוני של 5V - אולם ייתכן שתזדקק לכזה בעתיד. מטרת הנגד היא לשלוט בכמות הזרם שיכולה לזרום דרך הלדים. ערך הנגד הנדרש מחושב לפי הנוסחה הבאה:
R = 39.06 / Imax כאשר R (באוהם) הוא ערך הנגד ו- Imax (באמפר) הוא כמות הזרם המרבית שתרצה לזרום דרך הנורות.
לדוגמה, אם יש לך נוריות עם זרם קדימה של 20 mA - חישוב הנגד יהיה: R = 39.06 / 0.02 = 1803 אוהם. לאחר שהמעגל מורכב - פתח את Arduino IDE והעלה את הסקיצה BasicUse.pde שנמצאת בתיקיית הדוגמא של ספריית TLC5940.
עליך להציג פלט הדומה למה שמוצג בסרטון.
שלב 3: שליטה ב- TLC5940
כעת, כשהמעגל פועל, כיצד אנו שולטים ב- TLC5940? ראשית, פונקציות החובה - כלול את הספרייה בתחילת המערכון עם:
#כלול "Tlc5940.h"
ולאחר מכן אתחל את הספרייה על ידי הכנסת הדברים הבאים להגדרת חלל ():
Tlc.init (x);
x הוא פרמטר אופציונלי - אם ברצונך להגדיר את כל הערוצים לבהירות מסוימת ברגע שהסקיצה מתחילה, תוכל להכניס ערך בין 0 ל- 4095 עבור x בפונקציה Tlc.init ().
עכשיו כדי להדליק או לכבות ערוץ/לד. כל ערוץ ממוספר בין 0 ל -15, וניתן להתאים את בהירותו של כל ערוץ בין 0 ל- 4095. זהו תהליך דו-חלקי … ראשית-השתמש באחת או יותר מהפונקציות הבאות כדי להגדיר את הערוצים הנדרשים ובהירות בהתאמה (PWM רָמָה):
Tlc.set (ערוץ, בהירות);
לדוגמה, אם ברצונך להפעיל את שלושת הערוצים הראשונים במלוא הבהירות, השתמש ב:
Tlc.set (0, 4095); Tlc.set (1, 4095); Tlc.set (2, 4095);
החלק השני הוא להשתמש בדברים הבאים כדי לעדכן את TLC5940 עם ההוראות הנדרשות מחלק ראשון:
Tlc.update ();
אם אתה רוצה לכבות את כל הערוצים בבת אחת, פשוט השתמש ב:
Tlc.clear ();
שלב 4:
אין צורך להתקשר ל- TLC.update () לאחר הפונקציה clear. להלן סקיצה לדוגמא מהירה המגדירה את ערכי הבהירות/PWM של כל הערוצים לרמות שונות:
#כלול הגדרת חלל "Tlc5940.h" () {Tlc.init (0); // לאתחל את TLC5940 ולכבות את כל הערוצים}
לולאת חלל ()
{for (int i = 0; i <16; i ++) {Tlc.set (i, 1023); } Tlc.update (); עיכוב (1000); for (int i = 0; i <16; i ++) {Tlc.set (i, 2046); } Tlc.update (); עיכוב (1000); for (int i = 0; i <16; i ++) {Tlc.set (i, 3069); } Tlc.update (); עיכוב (1000); for (int i = 0; i <16; i ++) {Tlc.set (i, 4095); } Tlc.update (); עיכוב (1000); }
היכולת לשלוט על בהירות הפרט של כל ערוץ/לד יכולה להיות שימושית גם בעת שליטה על נוריות RGB - לאחר מכן תוכל לבחור בקלות את הצבעים הנדרשים באמצעות רמות בהירות שונות עבור כל אלמנט. בסרטון מוצגת הפגנה.
שלב 5: שימוש בשני TLC5940 או יותר
ניתן לחבר דייזי שרשרת לא מעט TLC5940 יחד כדי לשלוט בנורות נוספות. ראשית - העבר את ה- TLC5940 הבא לארדואינו כפי שמוצג במעגל ההדגמה - למעט חבר את סיכת SOUT (17) של ה- TLC5940 הראשון לסיכת SIN (26) של ה- TLC5940 השנייה - כשהנתונים עוברים מהארדואינו, דרך הראשון TLC5940 לשני וכן הלאה. לאחר מכן חזור על התהליך אם יש לך שלישי וכו '. אל תשכח את resisotr שמגדיר את הזרם!
לאחר מכן, פתח את הקובץ tlc_config.h הממוקם בתיקיית הספרייה TLC5940. שנה את הערך של NUM_TLCS למספר TLC5940 שחיברת יחד, ולאחר מכן שמור את הקובץ וגם מחק את הקובץ Tlc5940.o הממוקם באותה תיקייה. לבסוף הפעל מחדש את IDE. לאחר מכן תוכל להתייחס לערוצי ה- TLC5940 השני ובהמשך ברציפות מהראשון. כלומר, הראשון הוא 0 ~ 15, השני הוא 16 ~ 29 וכן הלאה.
שלב 6: שליטה בסרוווס באמצעות TLC5940
מכיוון שה- TLC5940 מייצר פלט PWM (אפנון רוחב דופק), הוא מצוין גם לנהיגת סרוו. בדיוק כמו נוריות LED - אתה יכול לשלוט בעד שש עשרה בבת אחת. אידיאלי ליצירת רובוטים דמויי עכביש, שעונים מוזרים או רעש.
בעת בחירת הסרוו שלך, וודא שהוא לא ימשוך יותר מ -120 mA בעת ההפעלה (הזרם המרבי לכל ערוץ) ושם לב גם לקטע "ניהול זרם וחום" בסוף מדריך זה. והשתמש בחשמל חיצוני עם סרוו, אל תסתמך על קו 5V של הארדואינו.
חיבור סרוו הוא פשוט - קו GND מתחבר ל- GND, 5V (או מוביל מתח אספקה) מתחבר ל- 5v שלך (או לאספקה מתאימה אחרת) וסיכת השליטה בסרוו מתחברת לאחד היציאות של TLC5940. לבסוף - וזה חשוב - חבר נגד 2.2kΩ בין סיכת הפלט TLC5940 הנמצאת בשימוש לבין 5V. שליטה בסרוו אינה שונה כל כך מנורת LED. אתה צריך את שתי השורות הראשונות בתחילת הסקיצה:
#כלול "Tlc5940.h"#כולל "tlc_servos.h"
לאחר מכן את ההגדרות הבאות ():
tlc_initServos ();
לאחר מכן, השתמש בפונקציה הבאה כדי לבחור איזה סרוו (ערוץ) להפעיל ואת הזווית הנדרשת (זווית):
tlc_setServo (ערוץ, זווית);
בדיוק כמו נוריות ה- LED, אתה יכול לחבר כמה כאלה יחד ולאחר מכן לבצע את הפקודה באמצעות:
Tlc.update ();
אז בואו נראה את כל זה בפעולה. הסקיצה לדוגמא הבאה גורפת ארבעה סרוו על פני 90 מעלות:
#כלול "Tlc5940.h"#כולל "tlc_servos.h"
הגדרת חלל ()
{tlc_initServos (); // הערה: פעולה זו תוריד את תדירות ה- PWM עד 50 הרץ. }
לולאת חלל ()
{for (int angle = 0; angle = 0; angle--) {tlc_setServo (0, זווית); tlc_setServo (1, זווית); tlc_setServo (2, זווית); tlc_setServo (3, זווית); Tlc.update (); עיכוב (5); }}
הסרטון מציג את המערכון הזה בפעולה עם ארבעה סרוו.
אם אתם סרוו לא מסתובבים בזווית הנכונה - למשל אתם מבקשים 180 מעלות והם מסתובבים רק עד 90 או בערך, נדרשת מעט עבודה נוספת.
עליך לפתוח את הקובץ tlc_servos.h המצוי בתיקיית ספריית TLC5940 Arduino ולהתנסות בערכים עבור SERVO_MIN_WIDTH ו- SERVO_MAX_WIDTH. לדוגמה, שנה את SERVO_MIN_WIDTH מ- 200 ל- 203 ו- SERVO_MAX_WIDTH מ- 400 ל- 560.
שלב 7: ניהול זרם וחום
כפי שצוין קודם לכן, ה- TLC5940 יכול להתמודד עם מקסימום של 120 mA לכל ערוץ. לאחר כמה ניסויים אתה עשוי להבחין כי TLC5940 אכן מתחמם - וזה בסדר.
שים לב שיש גבול מרבי לכמות ההספק שניתן לפזר לפני שהורסים את החלק. אם אתה משתמש רק ב נוריות מסוג נוריות בגינה או סרוו קטנים יותר, החשמל לא תהיה בעיה. עם זאת, אם אתה מתכנן להשתמש ב- TLC5940 למקסימום - עיין בהערות שסופקו על ידי מחברי הספרייה.
סיכום
שוב אתה בדרך לשלוט בחלק שימושי להפליא עם הארדואינו שלך. עכשיו עם קצת דמיון אתה יכול ליצור כל מיני תצוגות ויזואליות או ליהנות עם הרבה סרוו.
את הפוסט הזה מביאה לכם pmdway.com - המציעה מוצרים TLC5940 יחד עם הכל ליצרנים ולחובבי אלקטרוניקה, עם משלוח חינם לכל רחבי העולם.
מוּמלָץ:
רומיאו: Una Placa De Control Arduino Para Robótica Con Driver Incluidos - Robot Seguidor De Luz: 26 שלבים (עם תמונות)
רומאו: Una Placa De Control Arduino Para Robótica Con Driver Incluidos - Robot Seguidor De Luz: Que tal amigos, siguiendo con la revisiones de placas y sensores, con el aporte de la empresa DFRobot, hoy veremos una placa con prestaciones muy interesante, y es ideal para el desarrollo de prototipos robóticos y el control de motores y servos, d
Visuino RAMPS לאפנון רוחב הדופק (PWM) באמצעות LED: 8 שלבים
Visuino RAMPS לאפניית רוחב הדופק (PWM) באמצעות LED: במדריך זה נשתמש במנורת LED המחוברת ל- Arduino UNO ו- Visuino כדי לעמעם את ה- LED באמצעות אפנון רוחב הדופק (PWM) ורכיב Ramps. צפה בסרטון הדגמה
PWM עם ESP32 - עמעום LED עם PWM ב- ESP 32 עם Arduino IDE: 6 שלבים
PWM עם ESP32 | עמעום LED עם PWM ב- ESP 32 עם Arduino IDE: במדריך זה נראה כיצד לייצר אותות PWM באמצעות ESP32 באמצעות Arduino IDE & PWM משמש בעצם ליצירת פלט אנלוגי מכל MCU וכי פלט אנלוגי יכול להיות בין 0V ל -3.3V (במקרה של esp32) & מ
פתרון העדכני ביותר ל- MacOS/Hackintosh High Sierra 10.13 USB WiFi Driver "הוכחה עתידית" באמצעות פטל פטל: 4 שלבים
העדכון האחרון ל- MacOS/Hackintosh High Sierra 10.13 USB Wifi Driver "הוכחה עתידית" באמצעות פטל פטל: אחת הבעיות המתסכלות ביותר עם ה- macOS/Hackintosh העדכניות ביותר היא זמינות נהג ה- wifi של usb. יש לי 3 wifi usb מהם לא עובד על האחרונה macOS High Sierra 10.13 ה- wifi העדכני ביותר של usb הוא פנדה אלחוטי אולם התמיכה במנהלי ההתקן עבור macO
עיצוב מנורת LED מרובת צומת LED PWM: 6 שלבים (עם תמונות)
עיצוב מנורת LED PWM LED רב צומת: מדריך זה יראה כיצד עיצבתי בקר מנורת PWM LED. ניתן לחבר מנורות מרובות יחד כדי ליצור מחרוזות אור גדולות. יצירת כמה מנורות LED מהבהבות לחג המולד תמיד הייתה ברשימת המשאלות שלי. בעונת חג המולד האחרונה אני באמת