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

IronForge טוסטר NetBSD: 9 שלבים (עם תמונות)
IronForge טוסטר NetBSD: 9 שלבים (עם תמונות)

וִידֵאוֹ: IronForge טוסטר NetBSD: 9 שלבים (עם תמונות)

וִידֵאוֹ: IronForge טוסטר NetBSD: 9 שלבים (עם תמונות)
וִידֵאוֹ: World of Warcraft Soundtrack - Ironforge 2024, יולי
Anonim
IronForge טוסטר NetBSD
IronForge טוסטר NetBSD
IronForge טוסטר NetBSD
IronForge טוסטר NetBSD
IronForge טוסטר NetBSD
IronForge טוסטר NetBSD

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

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

www.embeddedarm.com/blog/netbsd-toaster-powered-by-the-ts-7200-arm9-sbc/

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

"מזמן נחשב כי מערכת ההפעלה NetBSD דמויית UNIX ניידת לכל סוגי מכונות פרט לאוסטרון המטבח שלך."

אז בואו ניצור טוסטר שמריץ NetBSD ו:

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

שלב 1: הפעלת טוסטר ובחירת החומרה

הפעלת טוסטר ובחירת החומרה
הפעלת טוסטר ובחירת החומרה
הפעלת טוסטר ובחירת החומרה
הפעלת טוסטר ובחירת החומרה
הפעלת טוסטר ובחירת החומרה
הפעלת טוסטר ובחירת החומרה
הפעלת טוסטר ובחירת החומרה
הפעלת טוסטר ובחירת החומרה

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

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

טוסטר Severin AT 2509 (1400W)

www.severin.de/fruehstueck/toaster/automati…

זהו מותג רחב בגרמניה, הוא עלה בסביבות 40-50 יורו בזמן הכתיבה כחדש.

תכונות עיקריות מה היצרן מפרסם:

● בית נירוסטה מבודד בחום

● מצורף משולב לצלייה

● 2 פירים לצלייה ארוכה עד 4 פרוסות לחם

● אלקטרוניקה של זמן צלייה עם חיישן טמפרטורה

● דרגת שיזוף מתכווננת

● רמת הפשרה עם נורית חיווי

● שלב חימום ללא שיזוף נוסף עם נורת בקרה

● כפתור שחרור נפרד עם נורית חיווי

● מרכז לחם לחם להשחמה אחידה של שני הצדדים

● כיבוי אוטומטי כאשר תקוע לחם נתקע

● מגש פירורים

● אחורה של כבלים

למרות שהיצרן לא טען שהטמפרטורה ניתנת להתאמה, הם מעלים 2 נקודות הטעיה:

● שלב חימום ללא שיזוף נוסף עם נורת בקרה

● אלקטרוניקה של זמן צלייה עם חיישן טמפרטורה

כדי לצטט טענות אלה בוא נראה כיצד פועלת המכונה:

1, במצב רגיל החשמל 230V מנותק לחלוטין, אין חלק מהטוסטר מופעל.

2, כאשר המשתמש מושך את הידית (שגם מושך את הלחמים), הוא מחבר את גוף החימום משני הצדדים.

עכשיו מה שהם עשו כאן הוא עיצוב זול אך גם חכם. אין שנאי בתוך הטוסטר אז אתה עשוי לתהות כיצד הוא מקבל את המתח הנמוך (10V AC ~) שלו אז. יש סליל נפרד יחד עם אחד מגוף החימום בצד השמאלי של הטוסטר המתנהג כמו שנאי למטה היוצר 10V AC.

לאחר מכן הוא משתמש במיישר דיודה יחיד ליצירת 10V DC המניע את לוח הבקרה הראשי של הטוסטר.

3, מה שחשבתי לראשונה - שמדובר בסולנואיד + שנאי ביחד - התברר כי מדובר בסולנואיד יחיד ממש מתחת לידית המופעלת כעת על ידי מעגל הבקרה ואחראית לדבר אחד בלבד (כדי להשאיר את הידית למטה).

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

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

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

שלב 2: רשימת חומרה

רשימת חומרה
רשימת חומרה
רשימת חומרה
רשימת חומרה
רשימת חומרה
רשימת חומרה

זה שוב לא מלא bom, אינו כולל את כל היסודות כמו חוטים וברגים:

  • 1x טוסטר AT 2509 (1400W) או כל טוסטר אחר שתבחר
  • 1x Arduino Pro Micro
  • 1x 5 אינץ 'מסך מגע התנגדות LCD תצוגת HDMI ל- Raspberry Pi XPT2046 BE
  • 1x פטל PI 2 או פטל PI 3
  • 1x SanDisk 16GB 32GB 64GB Ultra Micro SD SDHC כרטיס 80MB/s UHS-I Class10 w מתאם (עבור ה- PI)
  • 2x ממסר מתג קנים SIP-1A05
  • 1x 1 יחידות מודול MAX6675 + סוג תרמי חיישן טמפרטורה של זוג תרמו עבור Arduino (מומלץ לרכוש חלפים)
  • 1x פלט 24V-380V 25A SSR-25 DA ממסר מצב מוצק בקר טמפרטורה
  • 1x מיני DC-DC ממיר באק הורדת מודול אספקת חשמל לדירוג (קנה עוד כאלה להחלפות).
  • 2x לוח קוד פיתוח חיישן לבנים עבור Arduino (רוטרי + מתג אמצעי, מומלץ לקנות עוד כאלה להחלפות)
  • 2x WS2812B 5050 RGB טבעת LED 24 ביט RGB LED
  • 1x 1 מ"מ A5 שקוף פרספקס יריעה אקרילית פלסטיק פרספקס גזור 148x210 מ"מ מגרש
  • מתאם DC 1 x 12V 2A (1A אמור להספיק גם ל- Pi+Screen+Ardu אבל עדיף אם בטוח שתחבר מכשירים נוספים באמצעות USB הם ירוקנו זרם נוסף)
  • 1x PCS HC-SR501 מודול גלאי חיישן תנועה אינפרא אדום Pyroelectric IR PIR
  • 2 x חוט מגשר 5 פינים נקבה לנקבה כבל דופונט 20 ס"מ עבור Arduino (עבור הסיבובים, שווה לקנות עוד כאלה)
  • 2x ידית נפח סגסוגת אלומיניום 38x22 מ"מ לפיר פוטנציומטר 6 מ"מ כסף
  • ממסר 1x 230V
  • חבורה של נקבה בשורה אחת 2.54 מ"מ + מחברי כותרת לשבר זכרים לחיבורים
  • אופציונלי עבור Xbee mod: 1X10P 10pin 2mm נקבה אחת שורה ישר פין כותרת רצועה XBee Socket
  • אופציונלי ל- Xbee mod: 1 Xbee
  • אופציונלי עבור Xbee mod: 1x חוט מגשר 4 פינים נקבה לנקבה כבל דופונט 20 ס"מ עבור Arduino (בין Xbee Raspi)

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

אם תחליט להשתמש ברכיבים אחרים, למשל: מודול באק שונה להורדת מתח מ- 12V-> 5V, עליך לעצב מחדש את הלוח, הוא נוצר עבור אותו ממיר באק מרובע קטן אחד.

שלב 3: שינוי המארז: הגב הוא החזית

שינוי המארז: הגב הוא החזית
שינוי המארז: הגב הוא החזית
שינוי המארז: הגב הוא החזית
שינוי המארז: הגב הוא החזית
שינוי המארז: הגב הוא החזית
שינוי המארז: הגב הוא החזית

לאחר הסרת מעגל הבקרה הראשי עדיין היה חור מכוער גדול שהביט אל המקום של המתגים ולכן החלטתי שאשתמש רק בצד הזה כגב ותיקנתי את תיבת החיבור המכילה את SSR (ממסר מצב מוצק -> עבור בקרת חימום) + ממסר 230V AC (לגילוי חשמל) + מתאם 12V המניע את כל המעגל.

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

הכנסתי את קצה הגלאי של צמד התרמי MAX6675 בתחתית הטוסטר בקצה הנגדי לידית הראשית (היכן שהוא יהיה בניגוד למנגנון המנוף).

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

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

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

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

  • חוט אחד מגוף החימום -> עובר ל- SSR
  • חוט אחד מה 230V (רצוי נקודה חומה חמה) -> עובר ל- SSR
  • 2 חוטים מה- 230V עם מצב מתג סגור -> עובר ממסר התחלה
  • 2 חוטים מהחשמל הראשי של 230V -> עובר למתאם 12V מאחור
  • חוטים מוגנים מהחיישן התרמו

וזה כל מה שאתה צריך כדי לשלוט על הטוסטר.

עקב הלחמה תעשייתית החלטתי פשוט לחתוך את החוט בין גוף החימום לקצה אחד של החשמל הראשי (מגיע אחרי המתג) ועם רצועות מסוף חיברתי אותו ל- SSR.

יידרש ממסר הפועל מ- 230V (מתח החשמל). זהו ממסר ההתחלה שיאפשר ל- Arduino לדעת שהמשתמש הוריד את הידית aka החל את תהליך הקלייה. אל תשכח שמעגל הבקרה כבר אינו במקומו, הסולנואיד אינו מקבל כוח מה שיחזיק את הידית למטה וגם החימום מנותק (נשלט באמצעות ה- SSR). כל זה יהיה המשימה של הארדואינו מנקודה זו ואילך.

מתאם DC 12V מחובר ישירות לחשמל הראשי (הוספתי מתג הפעלה/כיבוי נוסף מאחור). זה יספק כוח קבוע למעגל. הטוסטר במצב המתנה צורך רק: 5.5 וואט כשהמסך מופעל ו -5.4 וואט כשהוא כבוי.

שלב 4: לוח Arcyclic קדמי

לוח ארציקלי קדמי
לוח ארציקלי קדמי
לוח ארציקלי קדמי
לוח ארציקלי קדמי
לוח ארציקלי קדמי
לוח ארציקלי קדמי

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

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

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

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

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

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

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

שלב 5: מעגל בקרת טוסטר

מעגל בקרת טוסטר
מעגל בקרת טוסטר
מעגל בקרת טוסטר
מעגל בקרת טוסטר
מעגל בקרת טוסטר
מעגל בקרת טוסטר

זה היה אחד מאותם פרויקטים שהוציאו למעשה את כל סיכות ה- Arduino:) ה- RX וה- TX היו שמורים להרחבת מודולי תקשורת עתידיים.

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

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

שני ממסרי הקנים המעולים האלה מגיעים עם דיודות flyback מובנות וצורכים לא יותר מ- 7mA כך שניתן לחבר אותם ישירות לכל סיכות ארדואינו (אמשיך להמליץ על אלה גם בפרויקטים עתידיים שלי). תפקידם של הממסרים:

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

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

הבנתי שהפעלת מסך HDMI זה 24/7 לא תספק תוחלת חיים ארוכה (במיוחד מה שאני משתמש בו הוא רק זיוף זול, לא ה- WaveShare המקורי:

והאם המחשב האישי שלך יכול להפעיל את המסך כשאתה נכנס לחדר? אני לא חושב שכן, טוסטר ה- BSD יכול!

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

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

בעיצוב המקורי היה ממסר נוסף על הלוח להפעלת מערכת רמקולים 2.1 לפני ש- Raspberry pi משמיע את צליל האזעקה בבוקר (גם קל מאוד להוסיף שיר בעת סיום הקלייה) אך מכיוון שזוהי IoT מדוע לְהטרִיד? זה רק מבקש עוד raspi ברשת שלי לעשות זאת בשבילי עם RCSwitch רגיל של 433Mhz.

כרגיל היו כמה שגיאות קטנות יותר בגרסת ה- 0.4 של הלוח, מה שניתן לראות בתמונות. כלומר נותרו בחוץ 2 מחברים נוספים של 5V ומחבר לממסר כניסה על פין Arduino 10.

תיקנתי את אלה בגרסה 0.5 ועשיתי גם גרסה שאינה Xbee.

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

שלב 6: Mod Xbee

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

זה ממש לא קשור לטוסטר או לקוד הטוסטר.

אודות mod Xbee: זה אופציונלי לחלוטין, לכן אני כולל את התרשימים ללוח זה עם ובלי ה- Xbee. ה- Xbee מולחם ישירות ביציאת UART חומרת RX/TX של Raspberry PI (ttyAMA0) שלמרות שמוציאה למחברי המסך, המסך אינו משתמש בו (הוא משתמש בממשק SPI כדי לתקשר את קואורדינטות המגע בין ה- PI לעצמו).

הקדשתי יציאה טורית נפרדת ב- PI לתקשורת Xbee במקום להעביר את ההודעות דרך פטל -> ארדואינו -> ממיר 5v3v -> Xbee -> מכשירים אחרים. בדרך זו גם אין בעיה שתהליך הקלייה חוסם את כל ה- MCU.

שלב 7: קוד בקרת טוסטר

הקוד פשוט למדי, זאת בשל העובדה שיש בעצם תקשורת חד כיוונית בין ה- Arduio -> Raspberry PI.

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

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

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

בתוך משתני rotary_read_temp () ו- rotary_read_time () ישתנו המשתנים global_temp ו- global_time. זהו המקום היחיד בקוד בו ניתן לשנות ערכים אלה והם ישמרו את ערכיהם בין אירועי קלייה.

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

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

הצירוף של 2 פונקציות אלה יביא את הדברים הבאים:

1, בהנחה שמצב סרק

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

3, אם תהליך הקליטה אינו מתחיל ואין אירועי התאמה נוספים הנורות יחשכו שוב

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

תהליך הקלייה העיקרי (צד Arduino):

פעולה זו תתבצע כאשר המערכת מופעלת מממסר התחלת הכניסה (230V) (וגם הזמן והטמפ 'שונים מאפס). זרימת התוכנית היא הבאה בצד Arduino:

1, הפעל את סולנואיד להחזקת הידית

2, הפעל SSR לחימום

3, בהתאם לזמן התחל לולאת קלייה אשר נספרת לאחור. בכל לולאה שלח את הנתונים הבאים למחשב:

-TEMPERATURE (ערך נקודה צפה במקור אך נשלח כ -2 מחרוזות CSV)

-זמן נשאר (תוך שניות, זה יומר בחזרה לפורמט mm: ss בצד השני)

4, בכל לולאה בהתאם לטמפרטורה שנקבעה הפעל או כבה את SSR כדי לשלוט על תהליך הקלייה

5, בסוף לולאת הקלייה הפקודה IRONFORGE_OFF תישלח למחשב

6, כבה את SSR ושחרר את הסולנואיד

7, שחקו משחק LED להפגנה (כאן תוכלו גם להוסיף מוזיקה או כל פעולה אחרת שתרצו)

8, נוריות האפלה

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

תהליך הקליטה העיקרי (Raspberry PI Side):

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

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

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

-קונקי אוהב להתרסק, במיוחד כשאתה ממשיך להרוג אותו ולהטעין אותו מחדש

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

Lua הסרק הבסיסי משתמש בשתי חבילות נפרדות (אחת לנתוני מזג האוויר ואחת נוספת לשעון).

ברגע שהקלייה מתחילה:

1, Arduino מאותת לתוכנית פטל p C באמצעות סידורי עם IRONFORGE_ON

2, תוכנית C השליטה עוצרת את 2 החוטים הקונקים והעומסים ב- lua conky השלישית לקלייה

3, תוכנית הבקרה C כותבת הן את הטמפרטורה והן את ערכי הזמן לקבצי טקסט נפרדים הממוקמים על ramdisk (לא לבצע פעולות RW מיותרות בכרטיס ה- SD), מה הקונקים קוראים ומוצגים באופן אוטומטי. התוכנית אחראית ליצירת הזמן הנותר גם לפורמט MM: SS.

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

5, לאיתור אזעקה תוכנית C יכולה לעצור ישירות את תהליך השמעת המוסיקה מ- cron כאשר במצב סרק כל אחד מהסיבובים נדחק פנימה

שלב 8: כל הטוסטים שלך שייכים לנו: NetBSD נגד Raspbian

כל הטוסטים שלך שייכים לנו: NetBSD נגד Raspbian
כל הטוסטים שלך שייכים לנו: NetBSD נגד Raspbian

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

שבב המגע של ה- LCD הוא XPT2046. המסך משתמש ב- SPI כדי לשלוח את קואורדינטות קלט הסמן בחזרה לפטל.

www.raspberrypi.org/documentation/hardware…

  • 19 קלט נתוני TP_SI SPI של לוח מגע
  • 21 פלט נתוני TP_SO SPI של לוח מגע
  • 22 לוח מגע TP_IRQ מפריע, רמה נמוכה בזמן שמגע המגע מזהה נגיעה
  • 23 שעון TP_SCK SPI של לוח המגע
  • 26 בחירת שבבי לוח מגע TP_CS, פעילה נמוכה

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

שלב 9: סגירת רשימת מטלות

סגירת רשימת מטלות
סגירת רשימת מטלות

כמו תמיד כל עזרה, תרומה, תיקונים בקוד יתקבלו בברכה.

זו הייתה פריצה שהסתיימה לאחרונה אז אעדכן את הפרויקט בחתיכות הקוד החסרות בהמשך (קוד בקרה של Raspberry pi C, Conky luas וכו '). כמו כן אני מתכנן ליצור תמונות sdcard בגודל 8GB/16GB הניתנות לשינוי אוטומטי המכילות הכל. בשל העובדה ש- Raspberry PI היא חומרה סטנדרטית כל מי שמחליט לבנות את הפרויקט יכול פשוט להוריד את התמונות, לכתוב אותן לכרטיס sd והטוסטר יפעל לאחר האתחול בדיוק כמו שלי. יש צורך בהגדרת רשת רק לזמן הנכון (NTP) ותצוגת הטמפרטורה.

צעד אחד שנותר יהיה למדוד את הטמפרטורות בפנים עם FLIR ולהוסיף את ההתאמות לקריאה של חיישן התרמוס MAX מכיוון שאני מאמין שהוא מתחמם לאט מדי למשך 5 דקות הקטנה של מקסימום 5 דקות.

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

מוּמלָץ: