תוכן עניינים:
- שלב 1: סרטון אינטראקציה
- שלב 2: הצהרת בעיות
- שלב 3: סקירה כללית של אופן הפעולה
- שלב 4: רשימת חומרים וכלים
- שלב 5: התחל לבנות עם לוח הלחם
- שלב 6: הפעלת הקוד
- שלב 7: גימור נגיעות
וִידֵאוֹ: טיימר חדר לימוד: 7 שלבים
2024 מְחַבֵּר: John Day | [email protected]. שונה לאחרונה: 2024-01-30 09:16
הוראות כיצד ליצור טיימר לחדר עבודה.
שלב 1: סרטון אינטראקציה
drive.google.com/file/d/12z5zQR52AXILX2AGb3EplfbmZWANZiCl/view?usp=drivesdk
שלב 2: הצהרת בעיות
לרוב, חדרי לימוד תמיד נלקחים. זה קורה כי אנשים אוהבים להישאר בחדר הרבה יותר ממה שהם צריכים. עיצבנו טיימר המאפשר לכל אדם בסך הכל שעתיים ואנשים שמחכים ליכולת לבקש מהחדר להיות הקבוצה הבאה. השימוש ב- RGB ב- Neopixels יבטא את משך הזמן שנותר.
שלב 3: סקירה כללית של אופן הפעולה
הטיימר מורכב מחלקים שנחתכו על ידי חותך הלייזר, 3 כפתורים, 1 LED, פוטנציומטר אחד.
ה- Neopixels והפוטנציומטר מחוברים ל- NodeMCU. ה- NodeMCU מתוכנת לתאר מחדש את המרחק של הפוטנציומטר כדי לשנות את כמות נוריות ה- LED המוארות ברצועת ה- Neopixel העגולה. הלחצן בקשה מפסיק את הפונקציה של הפונקציה התחלה, עצירה והגדרת זמן. צבע הלדים על הטיימר בתוך החדר הוא באותו צבע של הנורית המוארת בצד הקופסה. ה- neopixel בצד הקופסה מייצג את התצוגה בלובי הבניין כדי לדעת איזה חדר נלקח וכמה זמן נותר. לכל חדר נקבעו 2 נוריות LED, נורית LED אחת מייצגת אם החדר נלקח וה LED השני משקף את צבע הנורות על הטיימר (ירוק הוא יותר זמן, אחר כך צהוב ואז אדום בפחות זמן).
שלב 4: רשימת חומרים וכלים
-אקריליק נקי
-כבל MicroUSB
www.digikey.com/product-detail/en/stewart-…
-קרש
www.amazon.com/gp/product/B01EV6LJ7G/ref=o…
-פוטנציומטר
www.alliedelec.com/honeywell-380c32500/701…
-3 כפתורים
www.digikey.com/product-detail/en/te-conne…
-NodeMCU
www.amazon.com/gp/product/B07CB4P2XY/ref=o…
- 2 רצועות Neopixel
www.amazon.com/Lighting-Modules-NeoPixel-W…
-מתנגדים
www.digikey.com/product-detail/en/te-conne…
- חוטים
www.digikey.com/product-detail/en/sparkfun…
-1 LED
www.mouser.com/ProductDetail/Cree-Inc/C512…
-אקדח דבק חם
www.walmart.com/ip/AdTech-Hi-Temp-Mini-Hot…
רצועות סקוטש מקומקות
www.amazon.com/VELCRO-Brand-90076-Fastener…
שלב 5: התחל לבנות עם לוח הלחם
A0 לסיכה האמצעית על הפוטנציומטר
טבעת Vin to Power on Neopixel
3v3 לצד אחד של הפוטנציומטר
כל העילה לקרקע ב- NodeMCU
לחצן בקשה D1
D2 לבקשת LED
D3 לחצן ההתחלה
D4 ללחצן עצירה
D5 לנגד לכניסת Neopixel על הטבעת
D6 לנגד לרצועת קלט Neopixel
שלב 6: הפעלת הקוד
זהו הקוד לוודא שהפרויקט שלך עובד עד כה. הטיימר צריך להיות רק כמה שניות לכל נורית על טבעת Neopixel. ברגע שאתה יודע שזה עובד עד לנקודה זו, כל שעליך לעשות הוא לשנות את הזמן אם הצהרות למטה לטווח שצוין. אשים '#שנה זמן' על כל פעם אם אמירות שעליך לשנות לצורך הקצאת הזמן שלך.
מנסה את הקוד:
זמן ייבוא
זמן יבוא
מ ADC יבוא מכונה
מכונת יבוא
ייבא neopixel
adc = ADC (0)
pin = machine. Pin (14, machine. Pin. OUT)
np = neopixel. NeoPixel (סיכה, 12)
pin2 = machine. Pin (12, machine. Pin. OUT)
np2 = neopixel. NeoPixel (pin2, 8)
l1 = machine. Pin (4, machine. Pin. OUT)
b1 = machine. Pin (5, machine. Pin. IN, machine. Pin. PULL_UP)
b3 = machine. Pin (2, machine. Pin. IN, machine. Pin. PULL_UP)
b2 = machine. Pin (0, machine. Pin. IN, machine. Pin. PULL_UP)
ערך l1.value (0)
def tglled (): # החלפת פונקציית LED 'בקשה'
אם l1.value () == 0:
l1.value (1)
אַחֵר:
ערך l1.value (0)
x = 0
b1temp1 = 0
b1temp2 = 0
t = 0
b2temp1 = 0
b2temp2 = 0
b3temp1 = 0
b3temp2 = 0
s = 0
בעוד שזה נכון:
# זהו הכפתור המחליף את נורית ה'בקשה '
b1temp2 = b1.value ()
אם b1temp1 ולא b1temp2:
tglled ()
time.sleep (0.05)
b1temp1 = b1temp2
# זהו הרשת
np2 [0] = np [11]
אם l1.value () == 1:
np2 [1] = (30, 0, 0)
אַחֵר:
np2 [1] = (0, 0, 30)
np2.write ()
# כאן אנו בוחרים כמה זמן אנו זקוקים
אם t == 0:
עבור i בטווח (-1, 12):
אם (l1.value () == 0):
אם (adc.read ()> = (85.34 * (i+1))):
np = (0, 0, 0)
np [11] = (0, 0, 30)
s = (i + 1)
אַחֵר:
np = (0, 0, 30)
np.write ()
אַחֵר:
np = (0, 0, 0)
np.write ()
# זהו הכפתור להפעלת הטיימר
אם (l1.value () == 0) ו- (t == 0):
b2temp2 = b2.value ()
אם b2temp1 ולא b2temp2:
x += 1
t += (s * 100)
time.sleep (0.05)
b2temp1 = b2temp2
# לחצן זה מסיים את הטיימר
אם (l1.value () == 0):
b3temp2 = b3.value ()
אם b3temp1 ולא b3temp2:
x = 0
t = 0
time.sleep (0.05)
b3temp1 = b3temp2
# זהו הטיימר
אם x> 0:
t += 1
אם (t> 0) ו- (t <= 100): #שנה זמן
np [0] = (5, 30, 0)
np [1] = (5, 30, 0)
np [2] = (5, 30, 0)
np [3] = (5, 30, 0)
np [4] = (5, 30, 0)
np [5] = (5, 30, 0)
np [6] = (5, 30, 0)
np [7] = (5, 30, 0)
np [8] = (5, 30, 0)
np [9] = (5, 30, 0)
np [10] = (5, 30, 0)
np [11] = (5, 30, 0)
np.write ()
אם (t> 100) ו- (t <= 200): #שנה זמן
np [0] = (0, 0, 0)
np [1] = (10, 30, 0)
np [2] = (10, 30, 0)
np [3] = (10, 30, 0)
np [4] = (10, 30, 0)
np [5] = (10, 30, 0)
np [6] = (10, 30, 0)
np [7] = (10, 30, 0)
np [8] = (10, 30, 0)
np [9] = (10, 30, 0)
np [10] = (10, 30, 0)
np [11] = (10, 30, 0)
np.write ()
אם (t> 200) ו- (t <= 300): #שנה זמן
np [0] = (0, 0, 0)
np [1] = (0, 0, 0)
np [2] = (15, 30, 0)
np [3] = (15, 30, 0)
np [4] = (15, 30, 0)
np [5] = (15, 30, 0)
np [6] = (15, 30, 0)
np [7] = (15, 30, 0)
np [8] = (15, 30, 0)
np [9] = (15, 30, 0)
np [10] = (15, 30, 0)
np [11] = (15, 30, 0)
np.write ()
אם (t> 300) ו- (t <= 400): #שנה זמן
np [0] = (0, 0, 0)
np [1] = (0, 0, 0)
np [2] = (0, 0, 0)
np [3] = (20, 30, 0)
np [4] = (20, 30, 0)
np [5] = (20, 30, 0)
np [6] = (20, 30, 0)
np [7] = (20, 30, 0)
np [8] = (20, 30, 0)
np [9] = (20, 30, 0)
np [10] = (20, 30, 0)
np [11] = (20, 30, 0)
np.write ()
אם (t> 400) ו- (t <= 500): #שנה זמן
np [0] = (0, 0, 0)
np [1] = (0, 0, 0)
np [2] = (0, 0, 0)
np [3] = (0, 0, 0)
np [4] = (25, 30, 0)
np [5] = (25, 30, 0)
np [6] = (25, 30, 0)
np [7] = (25, 30, 0)
np [8] = (25, 30, 0)
np [9] = (25, 30, 0)
np [10] = (25, 30, 0)
np [11] = (25, 30, 0)
np.write ()
אם (t> 500) ו- (t <= 600): #שנה זמן
np [0] = (0, 0, 0)
np [1] = (0, 0, 0)
np [2] = (0, 0, 0)
np [3] = (0, 0, 0)
np [4] = (0, 0, 0)
np [5] = (30, 30, 0)
np [6] = (30, 30, 0)
np [7] = (30, 30, 0)
np [8] = (30, 30, 0)
np [9] = (30, 30, 0)
np [10] = (30, 30, 0)
np [11] = (30, 30, 0)
np.write ()
אם (t> 600) ו- (t <= 700): #שנה זמן
np [0] = (0, 0, 0)
np [1] = (0, 0, 0)
np [2] = (0, 0, 0)
np [3] = (0, 0, 0)
np [4] = (0, 0, 0)
np [5] = (0, 0, 0)
np [6] = (30, 25, 0)
np [7] = (30, 25, 0)
np [8] = (30, 25, 0)
np [9] = (30, 25, 0)
np [10] = (30, 25, 0)
np [11] = (30, 25, 0)
np.write ()
אם (t> 700) ו- (t <= 800): #שנה זמן
np [0] = (0, 0, 0)
np [1] = (0, 0, 0)
np [2] = (0, 0, 0)
np [3] = (0, 0, 0)
np [4] = (0, 0, 0)
np [5] = (0, 0, 0)
np [6] = (0, 0, 0)
np [7] = (30, 20, 0)
np [8] = (30, 20, 0)
np [9] = (30, 20, 0)
np [10] = (30, 20, 0)
np [11] = (30, 20, 0)
np.write ()
אם (t> 800) ו- (t <= 900): #שנה זמן
np [0] = (0, 0, 0)
np [1] = (0, 0, 0)
np [2] = (0, 0, 0)
np [3] = (0, 0, 0)
np [4] = (0, 0, 0)
np [5] = (0, 0, 0)
np [6] = (0, 0, 0)
np [7] = (0, 0, 0)
np [8] = (30, 15, 0)
np [9] = (30, 15, 0)
np [10] = (30, 15, 0)
np [11] = (30, 15, 0)
np.write ()
אם (t> 900) ו- (t <= 1000): #שנה זמן
np [0] = (0, 0, 0)
np [1] = (0, 0, 0)
np [2] = (0, 0, 0)
np [3] = (0, 0, 0)
np [4] = (0, 0, 0)
np [5] = (0, 0, 0)
np [6] = (0, 0, 0)
np [7] = (0, 0, 0)
np [8] = (0, 0, 0)
np [9] = (30, 10, 0)
np [10] = (30, 10, 0)
np [11] = (30, 10, 0)
np.write ()
אם (t> 1000) ו- (t <= 1100): #שנה זמן
np [0] = (0, 0, 0)
np [1] = (0, 0, 0)
np [2] = (0, 0, 0)
np [3] = (0, 0, 0)
np [4] = (0, 0, 0)
np [5] = (0, 0, 0)
np [6] = (0, 0, 0)
np [7] = (0, 0, 0)
np [8] = (0, 0, 0)
np [9] = (0, 0, 0)
np [10] = (30, 5, 0)
np [11] = (30, 5, 0)
np.write ()
אם (t> 1100) ו- (t <= 1200): #שנה זמן
np [0] = (0, 0, 0)
np [1] = (0, 0, 0)
np [2] = (0, 0, 0)
np [3] = (0, 0, 0)
np [4] = (0, 0, 0)
np [5] = (0, 0, 0)
np [6] = (0, 0, 0)
np [7] = (0, 0, 0)
np [8] = (0, 0, 0)
np [9] = (0, 0, 0)
np [10] = (0, 0, 0)
np [11] = (30, 0, 0)
np.write ()
אם t> = 1300: #שנה זמן
t = 0
x = 0
שלב 7: גימור נגיעות
עכשיו, ברגע שאתה עד כאן, עליך להעלות את קוד העבודה ל- NodeMCU ואת כל החלקים מחוברים ללוח הלחם. לאחר שניסית את הקוד וחתך את כל החלקים שיש לך כלפי חוץ, כלומר מעטפת בחיתוך לייזר, כעת תוכל להלחם את החוטים ל- NodeMCU. ההלחמה היא אופציונלית אך עשויה להפוך אותה לאבטחה וקטנה יותר למעטפת שלך. להלן חלק מהחלקים לחיתוך הלייזר שיצרנו.
מוּמלָץ:
לימוד באדי: 10 שלבים
לימוד באדי: מדריך זה מסביר כיצד להפוך חבר לחבר תפקידו של חבר המחקר הזה הוא לסייע לבני נוער בגילאי 14 עד 18 ללמוד כיצד לתכנן וללמוד. המטרה היא שהרובוט יוכל ללמוד עם התלמידים. הכריכה צבועה ב
טיימר תדר רדיו 555 טיימר: 6 שלבים
מעגל חסימת תדר רדיו 555 טיימר: מעגל חסימות בתדר רדיו (RF) מסביר את עצמו במה שהוא עושה. זהו מכשיר שמפריע לקליטה של אותות RF של אלקטרוניקה מסוימת המשתמשים בתדרים דומים ונמצאים בקרבתו של המשבש. מעגל הפקקים הזה
מנוע צעד עם כפכפים D ו- 555 טיימר; החלק הראשון של המעגל טיימר 555: 3 שלבים
מנוע צעד עם כפכפים D ו- 555 טיימר; החלק הראשון של המעגל טיימר 555: מנוע הצעד הוא מנוע DC שזז בשלבים נפרדים. הוא משמש לעתים קרובות במדפסות ואפילו ברובוטיקה. אסביר את המעגל הזה בשלבים. החלק הראשון של המעגל הוא 555 שָׁעוֹן עֶצֶר. זוהי התמונה הראשונה (ראו למעלה) עם שבב 555 שבב
בקר מיקרו AVR. נוריות LED מהבהבות באמצעות טיימר. טיימרים מפריעים. מצב CTC טיימר: 6 שלבים
בקר מיקרו AVR. נוריות LED מהבהבות באמצעות טיימר. טיימרים מפריעים. מצב טיימר CTC: שלום לכולם! טיימר הוא מושג חשוב בתחום האלקטרוניקה. כל רכיב אלקטרוני פועל על בסיס זמן. בסיס הזמן הזה עוזר לשמור על כל העבודה מסונכרנת. כל בקרי המיקרו עובדים בתדר שעון מוגדר מראש
טיימר NE555 - הגדרת טיימר NE555 בתצורת Astable: 7 שלבים
טיימר NE555 | הגדרת טיימר NE555 בתצורת Astable: טיימר NE555 הוא אחד ממעגלי ה- IC הנפוצים ביותר בעולם האלקטרוניקה. זה בצורה של DIP 8, כלומר הוא כולל 8 סיכות