תוכן עניינים:

LEDura - שעון LED אנלוגי: 12 שלבים (עם תמונות)
LEDura - שעון LED אנלוגי: 12 שלבים (עם תמונות)

וִידֵאוֹ: LEDura - שעון LED אנלוגי: 12 שלבים (עם תמונות)

וִידֵאוֹ: LEDura - שעון LED אנלוגי: 12 שלבים (עם תמונות)
וִידֵאוֹ: Physical Therapy Strategies for People with Dysautonomia 2024, יולי
Anonim
LEDura - שעון לד אנלוגי
LEDura - שעון לד אנלוגי
LEDura - שעון לד אנלוגי
LEDura - שעון לד אנלוגי
LEDura - שעון לד אנלוגי
LEDura - שעון לד אנלוגי

פרויקטים של טינקרד »

לאחר זמן רב של יצירת פרויקטים שונים החלטתי להכין בעצמי מדריך. לראשונה, אני אלווה אותך בתהליך הכנת שעון אנלוגי משלך עם טבעת LED ניתנת להתייחסות מדהימה. הטבעת הפנימית מציגה את השעות, הטבעת החיצונית מציגה דקות ושניות.

לצד הצגת השעה, השעון יכול גם להציג את טמפרטורת החדר וזה יכול להיות קישוט נחמד מאוד בחדר. כל 15 דקות, השעון גם מכין כמה אפקטים מיוחדים - הווידאו מציג את כולם, הקפד לבדוק זאת. בעזרת 2 כפתורים ופוטנציומטר, המשתמש יכול לבחור בין מצב שונה וצבעים לשנות לפי רצונו. שדרגתי אותו גם כדי לעמעם אוטומטית את נוריות הלדים אם החדר חשוך, כך שהמשתמש לא יפריע במהלך הלילה.

ניתן להניח את השעון על השולחן, שולחן המיטה או לתלות אותו מהקיר.

הערה: תמונות אינן טובות כמו המראה במציאות בגלל בהירות גבוהה.

שלב 1: איך לקרוא אותו?

איך לקרוא אותו?
איך לקרוא אותו?

לשעון 2 טבעות - אחת קטנה יותר להצגת שעות וגדולה יותר להצגת דקות ושניות. כמה נוריות זוהרות כל הזמן - מצפן שנקרא מציין עמדות שעון ראשיות. על צלצול שעות הוא מייצג שעון 3, 6, 9 ו -12 שעות, על צלצול דקות הוא מייצג 15, 30, 45 ו -0 דקות.

שלב 2: מה תצטרך

מה תצטרך
מה תצטרך

חומרים:

  • 1x Arduino Nano (אתה יכול להשתמש בכל ארדואינו אחר גם כן)
  • 1 x מודול RealTimeClock DS3231
  • 1x טבעת לד כתובה - 60 נוריות LED
  • 1x טבעת לד כתובה - 24 נוריות LED
  • 2 כפתורים (לא - פתוחים כרגיל)
  • 1x פוטנציומטר של 100kOhm
  • ספק כוח 1x5V (מסוגל לספק 1 אמפר)
  • 1x מחבר אספקה
  • כמה חוטים
  • נגד 10kOhm 1x
  • 1x פוטורסיסטור
  • לוח מראש (אופציונלי)
  • מחברי תיל בלוק מסוף (אופציונלי)
  • עץ בעובי 25 מ"מ, גודל לפחות 22 ס"מ על 22 ס"מ
  • 1 מ"מ משטח פלסטיק PVC דק בגודל 20 ס"מ על 20 ס"מ

כלים:

  • כלים בסיסיים לבניית אלקטרוניקה (הלחמה, צבת, מברג, …)
  • מקדחה
  • אקדח דבק חם
  • נייר חול וקצת לכה מעץ
  • מכונת CNC (אולי יש לחבר כזה)

שלב 3: רכיבי אלקטרוניקה - רקע

רכיבי אלקטרוניקה - רקע
רכיבי אלקטרוניקה - רקע
רכיבי אלקטרוניקה - רקע
רכיבי אלקטרוניקה - רקע
רכיבי אלקטרוניקה - רקע
רכיבי אלקטרוניקה - רקע

DS3231

נוכל לקבוע את הזמן באמצעות Arduinos מובנה במתנד וטיימר, אבל החלטתי להשתמש במודול ייעודי של שעון בזמן אמת (RTC), שיכול לעקוב אחר הזמן גם אם ניתק את השעון ממקור החשמל שלו. ללוח DS3231 יש סוללה המספקת חשמל כאשר המודול אינו מחובר לאספקת חשמל. הוא גם מדויק יותר בפרקי זמן ארוכים יותר ממקור השעון של Arduinos.

DS3231 RTC משתמש בממשק I2C כדי לתקשר עם מיקרו-בקר-פשוט מאוד לשימוש ואנו צריכים רק 2 חוטים כדי לתקשר איתו. המודול מספק גם חיישן טמפרטורה, שישמש בפרויקט זה.

חשוב: אם אתה מתכנן להשתמש בסוללה לא נטענת עבור מודול RTC, עליך להסיר הלחמה של הנגד 200 אוהם או דיודה 1N4148. אחרת הסוללה שלך עלולה להתפוצץ. מידע נוסף ניתן למצוא בקישור הזה.

טבעת LED WS2812

החלטתי להשתמש בטבעת LED 60 כדי לעקוב אחר דקות ו -24 טבעות LED במשך שעות. אתה יכול למצוא אותם ב- Adafruit (טבעת neoPixel) או בכמה גרסאות זולות ב- eBay, Aliexpress או חנויות אינטרנט אחרות. יש מגוון גדול בין רצועות הלד הניתנות להתייחסות, ואם זו הפעם הראשונה שאתה משחק איתן, אני ממליץ לך לקרוא כמה תיאורי שימוש - להלן כמה קישורים שימושיים:

https://www.tweaking4all.com/hardware/arduino/adr…

https://randomnerdtutorials.com/guide-for-ws2812b…

רצועת LED הניתנת להתייחסות כוללת 3 מחברים: 5V, GND ו- DI/DO. שני הראשונים נועדו להפעלת נוריות הלדים, האחרונה היא לנתונים. היזהר בעת חיבור הטבעת ל- Arduino - קו הנתונים שלך חייב להיות מחובר לפין DI (data IN).

ארדואינו

אני משתמש ב- Arduino Nano מכיוון שהוא קטן ומספיק לפרויקט זה. אתה יכול להשתמש כמעט בכל ארדואינו אחר, אך עליך להיות זהיר בעת חיבור הכל אליו. הכפתורים וטבעות ה- LED יכולים להיות על אותם סיכות, אך מחברי I2C (עבור מודול RTC) עשויים להיות שונים מפלטפורמה לפלטפורמה - עיין בגיליון הנתונים שלהם.

שלב 4: אלקטרוניקה - ספק כוח

אלקטרוניקה - ספק כוח
אלקטרוניקה - ספק כוח

Arduino ורצועת LED חייבים להיות מסופקים עם מקור כוח של 5V כדי שנוכל לדעת איזה מתח נחוץ. מכיוון שצלצולי ה- LED הוא שואב לא מעט אמפר, לא נוכל להפעיל אותו ישירות עם Arduino, שיכול לעמוד 20mA לכל היותר על הפלט הדיגיטלי שלו. לפי המדידות שלי, טבעות LED יכולות יחד לצייר עד 500 mA. לכן קניתי מתאם שמסוגל לספק עד 1A.

עם אותו ספק כוח אנחנו רוצים להפעיל את Arduino ו- LED - כאן אתה צריך להיות זהיר.

אַזהָרָה! היזהר במיוחד כאשר אתה בודק את רצועת ה- LED - אסור לחבר מתאם מתח ל- Arduino, כאשר Arduino מחובר גם למחשב עם מחבר USB (אתה יכול לפגוע ביציאת ה- USB של המחשב שלך).

הערה: בתרשימים למטה השתמשתי במתג רגיל כדי לבחור אם Arduino מופעל באמצעות ספק כוח או באמצעות מחבר USB. אבל על לוח הלוח אתה יכול לראות שהוספתי כותרת סיכה לבחירה ממנה מקור החשמל של Arduino.

שלב 5: אלקטרוניקה - הלחמה

אלקטרוניקה - הלחמה
אלקטרוניקה - הלחמה
אלקטרוניקה - הלחמה
אלקטרוניקה - הלחמה
אלקטרוניקה - הלחמה
אלקטרוניקה - הלחמה
אלקטרוניקה - הלחמה
אלקטרוניקה - הלחמה

כאשר אתה אוסף את כל החלקים הגיע הזמן להלחם אותם יחד.

מכיוון שרציתי להפוך את החיווט למסודר, השתמשתי ב- perfboard ובמחבר של בלוק מסוף לחוטים, כך שאוכל לנתק אותם במקרה של שינויים. זה אופציונלי - אתה יכול גם להלחם את החוטים ישירות לארדואינו.

טיפ: קל יותר להדפיס את הסכימות כך שיהיה לפניך בזמן ההלחמה. ובדוק הכל לפני שתתחבר לאספקת חשמל.

שלב 6: תוכנה - רקע

Arduino IDE

אנו הולכים לתכנת את Arduino עם התוכנה הייעודית שלה: Arduino IDE. אם אתה משחק עם ארדואינו בפעם הראשונה, אני ממליץ לך לבדוק כמה הוראות כיצד לעשות זאת. יש כבר המון הדרכות באינטרנט, אז לא אפרט לפרטים.

סִפְרִיָה

החלטתי להשתמש בספריית FastLED במקום ב- Adafruit הפופולרית. יש לו כמה פונקציות מתמטיות מסודרות שבעזרתן תוכל לבצע אפקטים נהדרים (אגוד עד המפתחים!). אתה יכול למצוא את הספרייה במאגר GitHub שלהם, אבל הוספתי את קובץ ה- zip של הגרסה שבה אני משתמש בקוד שלי.

אם אתה תוהה כיצד להוסיף ספרייה חיצונית ל- Arduino IDE תוכל לבדוק כמה הוראות שכבר הוכנו

עבור מודול השעון השתמשתי בספריית Arduino עבור השעון בזמן אמת (RTC) DS3231 (קישור), אותו תוכל להתקין בקלות ב- Arduino IDE. כאשר אתה ב- IDE, לחץ על סקיצה → כלול ספרייה → נהל ספריות … ולאחר מכן סנן את החיפוש שלך בשם למעלה.

הערה: משום מה אינני יכול כרגע להוסיף קובצי.zip. תוכל למצוא את הספרייה במאגר GitHub שלי.

שלב 7: תוכנה - קוד

תוכנה - קוד
תוכנה - קוד
תוכנה - קוד
תוכנה - קוד

מִבְנֶה

האפליקציה בנויה עם 4 קבצים:

  • LEDclokc.ino זהו יישום Arduino הראשי, שבו אתה יכול למצוא פונקציות לשליטה על כל השעון - הם מתחילים עם הקידומת CLOCK_.
  • LEDclokc.h להלן הגדרות חיבור פינים וכמה תצורות שעון.
  • ring.cpp ו- ring.h הנה הקוד שלי לשליטה על טבעות ה- LED.

LEDclock.h

כאן תמצא את כל הגדרות השעון. בהתחלה, יש הגדרות לחיווט. וודא שהם זהים לחיבורים שלך. אז יש תצורות שעון - כאן תוכל למצוא את המאקרו למספר מצבים שיש לשעון.

LEDclock.ino

בתרשים, הלולאה הראשית מיוצגת. הקוד בודק קודם כל אם נלחץ על כפתור כלשהו. בגלל אופי המתגים, עלינו להשתמש בשיטת ניפוי דיבוקים כדי לקרוא את ערכיהם (תוכל לקרוא עוד על כך בקישור).

כאשר לוחצים על כפתור 1, מצב המשתנה יעלה ב- 1, אם לוחצים על כפתור 2, סוג המשתנה יעלה. אנו משתמשים במשתנים אלה כדי לקבוע איזה מצב שעון אנו רוצים לראות. אם לוחצים על שני הלחצנים בו זמנית, הפונקציה CLOCK_setTime () נקראת כך שתוכל לשנות את זמן השעון.

קוד מאוחר יותר קורא את ערך פוטנציומטר ומאחסן אותו במשתנה - כך שמשתנה משתנה זה יכול לשנות את צבעי השעון, בהירות וכו '.

לאחר מכן יש הצהרת מקרה-מעבר. כאן אנו קובעים באיזה מצב שעון נמצא כרגע, ובאותו מצב נקראת הפונקציה המתאימה, המגדירה את צבעי הלדים. אתה יכול להוסיף מצבי שעון משלך ולכתוב מחדש או לשנות את הפונקציות.

כפי שמתואר בספריית FastLED, עליך להתקשר בסוף לפונקציה FastLED.show (), מה שהופך את הנורות לצבע שהגדרנו אותן בעבר.

אתה יכול למצוא תיאורים מפורטים הרבה יותר בין שורות הקוד

הקוד המלא מצורף למטה בקבצים למטה.

טיפ: אתה יכול למצוא פרויקט שלם במאגר GitHub שלי. כאן הקוד יעודכן גם אם אוסיף לו שינויים.

שלב 8: הכינו את השעון

הכינו את השעון
הכינו את השעון
הכינו את השעון
הכינו את השעון
הכינו את השעון
הכינו את השעון

מסגרת שעון

בניתי את מסגרת השעון באמצעות מכונת CNC ועץ בעובי 25 מ מ. אתה יכול למצוא את הסקיצה המצוירת ב- ProgeCAD המצורפת להלן. החריצים לטבעת ה- LED מעט גדולים יותר, מכיוון שהייצרנים מספקים רק את המדידות של הקוטר החיצוני - הפנימי עשוי להשתנות לא מעט … בחלק האחורי של השעון, יש הרבה מקום לאלקטרוניקה ולחוטים.

טבעות PVC

מכיוון שנוריות די בהירות, טוב לפזר אותן איכשהו. ראשית ניסיתי עם סיליקון שקוף, שעושה את התפשטות העבודה, אבל הוא די מבולגן וקשה להחליק אותו למעלה. לכן הזמנתי חתיכת פלסטיק PVC "חלב" בגודל 20X20 ס"מ וחתכתי בה שתי טבעות בעזרת מכונת CNC. אתה יכול להשתמש בנייר זכוכית כדי לרכך את הקצוות כך שהטבעות יחליקו בחריצים.

חורים בצד

אז הגיע הזמן לקדוח את החורים לכפתורים, פוטנציומטר ומחבר ספק כוח. ראשית, צייר כל עמדה בעיפרון, ולאחר מכן קודח בחור. כאן זה תלוי איזה סוג של כפתורים יש לך - הלכתי עם כפתורי לחיצה עם ראש מעוקל מעט. יש להם קוטר 16 מ"מ אז השתמשתי במקדח עץ בסדר גודל כזה. כנ"ל לגבי פוטנציומטר ומחבר מתח. הקפד למחוק את כל ציורי העיפרון לאחר מכן.

שלב 9: צייר ביער

צייר ביער
צייר ביער
צייר ביער
צייר ביער
צייר ביער
צייר ביער

החלטתי לצייר כמה אינדיקטורים לשעון בעץ - כאן תוכלו להשתמש בדמיון ולעצב משלכם. שרפתי את העץ באמצעות מלחם, מחומם לטמפרטורה מקסימלית.

כדי שהעיגולים יהיו עגולים יפה השתמשתי בחתיכת אלומיניום, קידחתי לתוכה חור ועקבתי אחרי שולי החור עם ברזל הלחמה (תסתכל על התמונה). וודא שאתה מחזיק חזק באלומיניום כך שהוא לא יחליק בזמן הציור. והיה זהיר בזמן שאתה עושה זאת כדי למנוע פציעות.

אם אתה עושה ציורים ורוצה שהם יהיו מיושרים היטב לפיקסלי השעון, תוכל להשתמש ב"מצב תחזוקה "שיראה לך היכן הפיקסלים הולכים להיות ממוקמים (עבור לפרק הרכבה).

הגן על העץ

כאשר אתה מרוצה מהשעון הגיע הזמן לשייף אותו ולהגן עליו בלכה מעץ. השתמשתי בנייר זכוכית רך מאוד (ערך 500) לריכוך הקצוות. אני ממליץ לך להשתמש בלכה עץ שקופה, כך שצבע העץ לא ישתנה. הניחו כמות קטנה של לכה על המברשת ומשכו אותה לכיוון השנתיות בעץ. חזור על זה לפחות 2 פעמים.

שלב 10: הרכבה

הרכבה
הרכבה
הרכבה
הרכבה
הרכבה
הרכבה

אשוחים מניחים את הכפתורים ואת הפוטנציומטר על מיקומם - אם החורים שלך גדולים מדי, אתה יכול להשתמש בדבק חם כדי לתקן אותם במקומם. לאחר מכן הכנס את רצועת הטבעת לחריצים שלה וחבר את חוטיה לארדואינו. לפני שאתם מדביקים את טבעת ה- LED למקומה טוב להיות בטוחים כי פיקסלי LED נמצאים במקום הנכון - במרכז ובמישור עם הציור. לשם כך הוספתי את מצב התחזוקה המכונה את כל הפיקסלים החשובים (0, 5, 10, 15, … על צלצול דקות ו -3, 6, 9 ו -12 צלצול בשעה). תוכל להיכנס למצב זה על ידי לחיצה ממושכת על שני הכפתורים, לפני חיבור ספק הכוח למחבר. תוכל לצאת ממצב זה על ידי לחיצה על לחצן כלשהו.

כאשר יש לך את טבעות ה- LED שלך מיושרות, מרחי מעט דבק חם והחזק אותן בזמן שהדבק מתייצב. לאחר מכן קח את טבעות ה- PVC שלך ושוב: החל מעט דבק חם על הלדים, הצב אותם במהירות והחזק אותם למשך מספר שניות. בסופו של דבר, כאשר אתה בטוח שהכל עובד אתה יכול להדביק חם את הלוח (או ארדואינו) על העץ. טיפ: לא למרוח על הרבה דבק. רק כמות קטנה כך שהיא תחזיק במקום אחד אך תוכל להסיר אותה בקלות אם תרצה לשנות משהו מאוחר יותר.

בסופו של דבר הכנס סוללת מטבע למחזיקה.

שלב 11: שדרוג - פוטורססיסטור

שדרוג - פוטורסיסטור
שדרוג - פוטורסיסטור
שדרוג - פוטורססיסטור
שדרוג - פוטורססיסטור
שדרוג - פוטורסיסטור
שדרוג - פוטורסיסטור

אפקטים של השעון נחמדים במיוחד בחושך. אך הדבר עלול להפריע למשתמש שלו במהלך הלילה, בזמן שהוא או היא ישנים. לכן החלטתי לשדרג את השעון בתכונה של תיקון בהירות אוטומטי - כשהחדר חשוך; השעון מכבה את נוריותיו.

לשם כך השתמשתי בחיישן האור - נגד צילום. עמידותו תעלה משמעותית; עד כמה מגה אוהם כאשר הוא חשוך ויהיו לו רק כמה מאות אוהם כאשר יש אור בוהק עליו. יחד עם נגד רגיל הם יוצרים את מחלק המתח. כך שכאשר ההתנגדות של חיישן האור משתנה, כך משתנה המתח על הסיכה האנלוגית של Arduino (אותה אנו יכולים למדוד).

לפני הלחמה והרכבה של כל מעגל, חכם לדמות אותו תחילה, כך שתוכל לראות את ההתנהגות ולבצע תיקונים. בעזרת Autocad Tinkercad אתה יכול לעשות בדיוק את זה! בכמה לחיצות הוספתי את הרכיבים, חיברתי אותם וכתבתי את הקוד. בסימולציה אתה יכול לראות כיצד בהירות נוריות LED משתנה בהתאם לערך של נגד צילום. זה מאוד פשוט ופשוט - אתה מוזמן לשחק עם המעגל.

לאחר סימולציה הגיע הזמן להוסיף את התכונה לשעון. קידחתי חור במרכז השעון, הדבקתי את הנגד לצילום, חיברתי אותו כאילו אפשר לראות אותו במעגל והוספתי כמה שורות קוד. בקובץ LEDclock.h עליך להפעיל תכונה זו על ידי הצהרת USE_PHOTO_RESISTOR כ- 1. אתה יכול גם לשנות באיזו בהירות החדר השעון יעמעם את הנורות על ידי שינוי ערך CLOCK_PHOTO_TRESHOLD.

שלב 12: תהנה

כאשר תפעיל אותו בפעם הראשונה, השעון יראה זמן אקראי כלשהו. אתה יכול להגדיר אותו על ידי לחיצה על שני הכפתורים בו זמנית. סובב את הכפתור כדי לבחור את השעה הנכונה ולאשר אותו בלחיצת כפתור כלשהו.

מצאתי השראה באיזה פרויקט מאוד מסודר באינטרנט. אם תחליט לבנות את השעון בעצמך, בדוק גם אותם! (NeoClock, שעון וול, שעון צבעוני של Arduino) אם תחליט אי פעם לנסות לעקוב אחר הוראות, אני מקווה שתמצא את זה מהנה כמוני.

אם נתקלת בבעיה כלשהי בתהליך ההכנה, אל תהסס לשאול אותי כל שאלה בתגובות - אנסה להשיב עליה בשמחה!

מוּמלָץ: