תוכן עניינים:
- אספקה
- שלב 1: פירוק
- שלב 2: חיווט
- שלב 3: אופני מקרה
- שלב 4: כוח
- שלב 5: התקנת תוכנת מצלמה תרמית
- שלב 6: התקנת תוכנת מסך LCD
- שלב 7: שינויי קוד
- שלב 8: סיום מגעים
- שלב 9: הרכבה
- שלב 10: זמני בדיקת טמפרטורות
וִידֵאוֹ: מצלמה תרמית אפולו פי 1979: 10 שלבים (עם תמונות)
2024 מְחַבֵּר: John Day | [email protected]. שונה לאחרונה: 2024-01-30 09:12
לגלאי המיקרוגל היוקרתי הזה של אפולו יש מטרה חדשה ומבריקה כמצלמה תרמית, המופעלת על ידי פטל פיי אפס עם חיישן מצלמה תרמית של Adafruit שמטיל את הטמפרטורות ומציג את התוצאות בזמן אמת על צג TFT בהיר בגודל 1.3 אינץ '.
יש לו מצב קבוע מראש ומצב דינאמי - בראשון הצבעים המוצגים על המסך מבוססים על ספי טמפרטורה מקודדים, ובשני ניתן להתאים את טווח הצבעים באמצעות מחוונים טמפרטורה בלוח המחוונים של Adafruit.io. לוח המחוונים גם באופן מיידי. מציג את כל התמונות שהועלה על ידי המכשיר, אשר נלכדות באמצעות כפתור האגודל המקורי באחיזה.
המערכת כולה מופעלת על ידי מארז סוללות USB גלילי דק שהוסתר באחיזת היד, הניתן להטענה בקלות על ידי ניפוח חרוט האף וחיבור כבל USB.
רק שלושה סקריפטים של פייתון שולטים בהגיון התפריט, בחיישן ובאינטגרציה של Adafruit.io, כאשר התצוגה מטופלת על ידי PyGame.
העבודה על הפרויקט הזה באמת עזרה לשמור על חיובי בזמן הנעילה, ועם הזמן הנוסף בידיים מצאנו הילדים ואני הרבה דברים מעניינים ברחבי הבית להצביע עליהם!
תסתכל על אפולו פי בפעולה בסרטון YouTube, למקרה שאתה לא יכול לראות את הגירסה המשובצת למעלה היא בכתובת
אספקה
צג מיקרוגל אפולו
Raspberry Pi Zero W
Adafruit AMG8833 פריצת מצלמה תרמית
מסך Adafruit Mini PiTFT 1.3 אינץ '
כבלי מגשר
דיסק רטט 3v
בנק כוח USB
שלב 1: פירוק
אספתי את אפולו מוניטור במכירה יד שנייה בקיץ שעבר, בגלל המראה הייחודי שלו ולא כל דבר אחר - וזה בדיוק כמו שהוא בהחלט ראה ימים טובים יותר! המעגלים בפנים לא היו שלמים וכל העניין היה מכוסה בבלגן של דבק, ניסיון היסטורי לתקן אותו.
הוא במקור היה משמש לבדיקת קיומה של קרינת מיקרוגל, ככל הנראה בסביבה תעשייתית כלשהי בהתחשב בעיצובו ובנדירותם של תנורי מיקרוגל באותה עת, אם כי לא יכולתי לברר עליו הרבה יותר. דבר אחד שכן ידעתי, זה יהווה את הבית האידיאלי עבור מצלמה תרמית.
ברגע שקפצתי מה"אף "החרוטי כל השאר ממש התפרקו, והמד הדוגמא והכפתור המלבני המודבק הוסרו בקלות. אבל שמרתי על הכפתור, הוא היה פונקציונלי לחלוטין ובצורה ממש מוזרה, כך שהייתי מתקשה להכניס מחליף לאותו חור.
שלב 2: חיווט
לפני קיצוץ המארז כדי שהכל יתאים רציתי קודם כל לוודא שאני יודע איך החלקים יתאחדו, אז ניגשתי לכבל את החיישן והמסך. החיישן עצמו היה בסדר, רק ארבעה כבלי מגשר היו נחוצים כדי לחבר אותו ל- Raspberry Pi.
המסך היה קצת יותר מסובך, תרשים ה- pinout הראה שאני צריך לחבר 13 חוטי מגשר - ברור שהוא נועד לשבת ישירות על גבי פי כך שהאשמתי רק את עצמי. החלטתי להוסיף חתיכת כותרת נקבה בין המסך לחיבורי Pi, כך שאוכל להוריד את המסך ולחבר אותו בקלות. זה היה רעיון מצוין, ואני עקבתי אחרי תרשים ה- pinout בזהירות רבה כדי לחבר את הכותרת אל ה- Pi.
לאחר מכן הלחמתי כמה כבלי מגשר טריים לכפתור המקורי, כך שניתן יהיה לחבר אותו ל- GPIO ולהשתמש בו לצילום תמונות תרמיות. לבסוף הלחנתי דיסק רוטט קטן ישירות לסיכות ה- GPIO, בכדי לספק קצת משוב מהטי ללחיצות הכפתורים.
שלב 3: אופני מקרה
אחד הדברים שקמו לתחייה את אפולו צג מתיבת ה"לעשות "שלי היה חור התצוגה בחלקו העליון - זה היה בערך בגודל שהייתי צריך למסך Adafruit הקטן. בְּעֵרֶך. לקח כשעה עם קובץ להאריך את החור לגודל הנכון, אך למרבה המזל הצלחתי לא להרוס את התיק בתהליך.
חתכתי גם חלקים מבפנים שהחזיקו במקור סוללת PP3, וחתכתי כמה מחסכים בתוך האחיזה כדי לפנות מקום לאריזה באמצעות כלי סיבוב.
לבסוף קידחתי כמה חורים גדולים כדי שהכבלים לחיישן ולכבל הטעינה יוכלו לפלס את דרכם מה"אף "כדי להצטרף לשאר המעגלים.
שלב 4: כוח
לפרויקט זה החלטתי שלא להשתמש בסוללת מתאם/מטען מסוג LiPo, מכיוון שהיה יותר מקום במקרה. החלטתי במקום זאת להשתמש בבנק כוח USB רגיל. רציתי לקבל אחד גלילי דק, שיתאים בתוך הידית, אז חיפשתי את הזול והדק ביותר שיכולתי למצוא באמזון. זה שהגיע, עם לפיד הלד הזעיר והעיצוב של סוללות מזויפות היה הדק ביותר שיכולתי למצוא, אבל כשפניתי אותו לארגז הבנתי שהוא עדיין עבה מדי מכדי להכניס אותו לידית. ואז הבנתי שזה התפרק - החלק העליון שנפרק והסוללה החשופה בפנים החליקו החוצה, חסכו לי בצורה מסודרת את ה -3 מ מ שהייתי צריך כדי להכניס אותו לידית, איזו תוצאה!
לאחר מכן לקחתי כבל מיקרו USB קצר, הפשטתי חלק מהבידוד, חתכתי את הכבל החיובי והלחמתי בכפתור נעילה מרובע ויפה, כך שניתן יהיה לשלוט על הכוח מבלי לנתק את מארז הסוללה. כפתור זה השתלב היטב במה שהיה במקור מכסה הסוללה, והתאים למדי לזה המקורי בחלק העליון של המארז. עכשיו, כשידעתי שהכל יתאים, הגיע הזמן שהכל יסתדר!
שלב 5: התקנת תוכנת מצלמה תרמית
החיישן התרמי עצמו הוא פריצת מצלמה תרמית של Adafruit AMG8833IR, המשתמשת במערך חיישנים 8x8 ליצירת תמונת החום. זה עובד עם Arduino ו- Raspberry Pi, אך היתרון הגדול ביותר בשימוש ב- Pi הוא שהתוכנה יכולה להשתמש במודול פייתון סקייפי לביצוע אינטרפולציה ביקובית על הנתונים שנלכדו, וגורמת לה להיראות כמו תמונה בגודל 32x32, מסודר!
הגדרת החיישן היא פשוטה למדי, אבל יש כמה חישוקים לקפוץ דרכם, זה מה שעבד בשבילי:
הפעל I2C ו- SPI ב- Raspberry Pi (תצורת Raspberry Pi> ממשקים)
התקן את ספריית Blinka CircuitPython:
pip3 התקן adafruit-blinka
התקן הבא את ספריית החיישנים AMG8XX:
sudo pip3 התקן adafruit-circuitpython-amg88xx#
כבה את ה- Pi וחבר את החיישן - רק 4 חוטים למרבה המזל!
לאחר מכן התקן את מודולי ה- scipy, pygame והצבע:
sudo apt-get install -y python-scipy python-pygamesudo pip3 התקן צבע
בשלב זה הקוד שלי הטיל שגיאה סתמית, אז התקנתי אותו מחדש עם:
Sudo Pip3 להתקין scipy
ואז קיבלתי את השגיאה: ImportError: libf77blas.so.3: אין אפשרות לפתוח קובץ אובייקט משותף: אין קובץ או ספרייה כאלו
זה נפתר על ידי התקנת:
sudo apt-get להתקין python-dev libatlas-base-dev
מכאן ואילך הקוד לדוגמא עבד מצוין, הפעלת הסקריפט מהקונסולה ולא מטוני:
sudo python3 /home/pi/FeverChill/cam.py
זה גרם לתצוגת החיישנים להופיע על המסך בחלון פיגמים, ואחרי כמה שיפוצים לספי הצבע/הטמפרטורה הופנטתי מתמונת חום של הפנים שלי.
שלב 6: התקנת תוכנת מסך LCD
זה היה ממש טוב לגרום לחיישן לפעול, אבל עכשיו הייתי צריך להציג אותו על המסך הקטן. המסך שהשתמשתי בו הוא Adafruit Mini PiTFT 1.3 אינץ '240x240 - בעיקר בגלל שהרזולוציה והצורה שלו מתאימים בדיוק למצלמה התרמית, הוא גם היה בגודל הנכון להתאים למארז והציע את שני הכפתורים המחוברים ל- GPIO שהייתי צריך.
ההוראות של Adafruit הציעו כאן שתי אפשרויות: דרך קלה וקשה - לאחר התנסות הבנתי שאני צריך להשתמש בדרך הקשה, כי החיישן דורש גישה ישירה למאגר המסגרות. בעקבות ההנחיות שלב אחר שלב היה לי בסדר עד שהגעתי לשאלה "האם תרצה שהקונסולה תופיע" - בתחילה בחרתי לא, אבל הייתי צריך להגיד כן. זה היה קצת כואב מכיוון שזה אומר שעלי לבצע את התהליך מחדש, אך הוא גרם לי להיות מודע לכך שברגע שהפי יוגדר להציג את הקונסולה ב- TFT הוא כבר לא יציג את שולחן העבודה באמצעות HDMI (לפחות זו הייתה החוויה שלי).
ובכל זאת, לאחר שההגדרה הושלמה, בעת אתחול מחדש, המסך הזעיר הציג גרסה מיניאטורית של תהליך ההפעלה הרגיל של פי, וכשהפעלתי את סקריפט המצלמה התרמית לדוגמה, חלון הפאוגים הציג את תמונת החום על המסך הקטן - מאוד מספק!
שלב 7: שינויי קוד
הקוד לדוגמה עבד מצוין, אבל רציתי שהוא יעשה קצת יותר, אז התחל לשנות את התסריטים לטעמי. התחלתי ביצירת תסריט תפריט שיטען בעת ההפעלה ויעשה שימוש טוב בשני הכפתורים המשולבים בלוח התצוגה.
menu.py
ראשית מצאתי באינטרנט קצת פייתון שיציג אפקט תפריט מונפש נחמד על המסך הקטן, באמצעות PyGame. היופי בתסריט זה הוא שהוא מחייה את כל התמונות בתיקייה מוגדרת, כך שיהיה קל לשנות את האנימציה בשלב מאוחר יותר (למשל להתאים את צבעי האנימציה למקרה). הגדרתי את תסריט התפריט כך שלחיצה על אחד מהכפתורים תעצור את האנימציה ותפתח את fever.py או chill.py, התסריטים להצגת תצוגת החיישן. בעבודה זו הגדרתי את התסריט לפעול בעת האתחול - בדרך כלל אני עושה זאת על ידי עריכה/etc/xdg/lxsession/LXDE -pi/autostart, אך מכיוון ששיטה זו מסתמכת על טעינת שולחן העבודה נזקקתי לאופציה אחרת הפעם.
אז קודם כל ערכתי את הקובץ rc.local …
sudo nano /etc/rc.local
… ואז הוסיף להלן ממש מעל לשורת היציאה …
sudo /home/pi/FeverChill/menu.py &
… לאחר שהבטיח לראשונה שלסקריפט menu.py יש את הדברים הבאים למעלה…
#!/usr/bin/env python3
… וגם לאחר הגדרת menu.py כתסריט הפעלה על ידי הקלדת:
chmod +x /home/pi/FeverChill/menu.py
לתוך הטרמינל.
fever.py (מוגדר מראש)
עבור הסקריפט המוגדר מראש הגדרתי לראשונה את סף הצבע / הטמפרטורה, והגדרתי את התחתון (כחול) ל -16 ואת העליון (אדום) ל -37.8. זה תיאורטית עדיין יראה את פניו של אדם בירוק, אך יזהר באדום אם הטמפרטורה הייתה מעל 37.8 מעלות. יש הרבה מחקר באינטרנט על דגימת טמפרטורת הגוף בשיטות שונות, אך מכיוון שהשונות של החיישן היא +/- 2.5 מעלות החלטתי פשוט להישאר עם טווח ה"חום "המקובל ביותר - קל לשנות זאת באמצעות ssh בתאריך מאוחר יותר.
לאחר מכן הגדרתי את שני לחצני המסך כדי לסגור את הסקריפט הנוכחי ולפתוח את menu.py. רציתי גם למצוא דרך ללכוד ולייצא את תמונת המצלמה, ומצאתי את הפקודה הנכונה של PyGame
pygame.image.save (lcd, "therm.jpg")
הגדרתי את זה לפעול כאשר לחצו על כפתור "האגודל" - זה שהיית משתמש בו במקור לצורך קריאת מיקרוגל. זה דאג ללכידת התמונה, לאחר מכן הוספתי בכמה שורות של פייתון כך שהתמונה תעלה מייד ללוח המחוונים של Adafruit IO לאחר שצולמה, כך שניתן יהיה לצפות בה במכשירים אחרים ולהוריד בקלות. עם "שמירה בשם" המהירה, התסריט שהוגדר מראש הושלם.
chill.py (דינמי)
במצלמה תרמית יש יותר מאשר לחפש טמפרטורות ספציפיות, ורציתי שהתסריט הדינאמי יהיה גמיש, כך שניתן יהיה להתאים בקלות את ספי הצבע העליונים והתחתונים. לא רציתי להוסיף לחצנים נוספים למכשיר ולסבך את הניווט, אז בחרתי להשתמש במחוונים בלוח המחוונים של Adafruit.io.
כבר היה לי את חלק הארי של קוד Adafruit בסקריפט הקבוע מראש, אז רק הייתי צריך להוסיף כמה שורות נוספות, כך שערכי המחוון הנוכחיים מלוח המחוונים יוחזרו בעת ההשקה ויוגדרו כברירת מחדל לתצוגה.
הקוד שבו השתמשתי זמין כולו ב- GitHub, כדי להשתמש בו מחדש אתה רק צריך להוריד את תיקיית FeverChill לתיקייה / pi / ב- Pi שלך ולהזין את פרטי הכניסה ושמות ההזנות של Adafruit.io בתסריטים, לאחר שהתצוגה שלך תהיה & חיישן מוגדרים.
כשהסקריפטים עובדים יפה הגיע הזמן לעבור למשהו מבולגן יותר!
שלב 8: סיום מגעים
במקור הפרויקט הזה נועד להסיח את הדעת מהשימוש בחיישן התרמי למשהו אחר, אך עם אירועים אקטואליים מצאתי את עצמי נמשך אליו יותר ויותר, ואת הפרטים הקטנים הנוספים שימתחו אותו ויהפכו אותו לאתגר יותר.
מארז אפולו מוניטור היה די נחמד לעבודה, קל לחיתוך ולשיוף, אבל כדי לסיים אותו יפה רציתי להכניס כמה מלוחות המעגל הגלויים מאחורי "מסכות" מצוירות. אלה עברו שנים, גילפו אותם מחתיכות של פלסטיק פסולת ביד, אבל זו הייתה עבודה מספקת. ראשית הכנתי אחד קטן שיכסה את לוח המסך אך ישאיר את המיקרו -מתגים גלויים. לאחר מכן הכנתי אחד לחיישן התרמי, כדי שלא תראה אלקטרוניקה חשופה אם תסתכל למטה "סוף העסק".
החלטתי על ערכת הצבעים כמה ימים לפני שבריטניה נכנסה לנעילה, ומזלי מצאתי את הצבעים שרציתי בחנות החומרה הסמוכה. מכיוון שהמקרה התחלק כל כך יפה לחצאים, הוצעה ערכת צבעים דו-גונית, ולאחר מכן הרחבתי את זה ל"קונוס האף "ולכיסוי החיישן. הציור היה כיף גדול, היום החם הראשון בשנה, אם כי זה אכן אומר ציור בזמן שהצרעות בסככה היו בוחשות וטוחנות. לא השתמשתי בעבר במסקינג טייפ עם ספריי אבל אני ממש מרוצה מאיך שיצאו החלקים שהתקבלו בשני הטונים.
למדתי את הלקחים של מבנים קודמים השארתי את החלקים הצבועים להתקשות במשך שבוע טוב לפני ניסיון הרכבה, והתחלתי להרכיב את הסרטון בינתיים.
שלב 9: הרכבה
בכל פעם שאני עובד על פרויקט אני אוהב להגיע לשלב שבו הכל מונח מוכן להרכבה כמו ערכת דגמים תוצרת עצמית. אין שום ערובה שהכל יתאים וההוראות קיימות רק בראש שלי, אבל זה החלק האהוב עלי בכל בנייה.
הפעם זה עבר בצורה חלקה מאוד - בעיקר כי היה לי זמן נוסף להשקיע בפרטים הקטנים ולוודא שהכל פשוט כך. הדבקתי קודם כל את המסך לתוך המארז ולאחר מכן הוספתי את כפתור ה"לכידה " - אלה היו החלקים היחידים המחוברים לחלק העליון של המארז כך שזו הייתה התחלה קלה ויפה.
לאחר מכן הדבקתי קלות את מארז הסוללה לתוך האחיזה, והצמדתי את הפי עם התושבת שלו לתוך המארז. לאחר מכן הודבק חיישן המצלמה בקפידה לתוך חרוט האף, מתג ההפעלה הוברג למכסה הסוללה והכל היה מחובר.
השתמשתי בכבלי מגשר לכל החיבורים אך רק ליתר זהירות הדבקתי את אלה במקומם, במקרה של תנועה כלשהי במהלך הסחיטה האחרונה של שני החצאים. בעצם זה היה קצת חריקות, אבל בלי קולות פיצוח, אז ברגע ששני החצאים היו מחוברים זה לזה, דחפתי את חרוט האף והבטחתי את הבורג דרך הידית - שני הדברים היחידים שמחזיקים את כל המכלול יחד..
זה לא עבד בפעם הראשונה, הצלחתי לנתק את המסך במהלך הסקישאתון הראשון, אבל עם כמה עיקולי כבלים אסטרטגיים הכל נגמר בשמחה בפעם השנייה. הגיע הזמן להצביע על דברים!
שלב 10: זמני בדיקת טמפרטורות
הזמן הנוסף בבית באמת עזר לי להתמקד (אובססיבית?) יותר מהרגיל בפרטים הקטנים של הפרויקט הזה, וזה בהחלט גרם לגימור נקי יותר ופחות הפתעות בזמן ההרכבה - כמו גם עזר לשמור על רווחתי הנפשית. הישר והצר. התוכנית המקורית של החיישן הייתה משהו אחר לגמרי, אז אני מאוד מרוצה מהתוצאה הסופית, בנייה איטית ומספקת.
ה- Apollo Pi נראה נהדר גם על מדף הפרויקט והוא בהחלט כלי מהנה ושימושי שיש בסביבה, אנחנו לא יכולים להפסיק להצביע עליו על דברים! בעולם אידיאלי זו תהיה ברזולוציה מעט גבוהה יותר, ואני צריך למצוא דרך "להעיף" את הצג כפי שהוא משתקף כרגע, אבל אלה ניגושים קטנים.
תודה שקראתם ושמרו על כולם.
שאר הפרויקטים הישנים של Old Tech, New Spec נמצאים כולם ב- Instructables בכתובת
פרטים נוספים נמצאים באתר בכתובת https://bit.ly/OldTechNewSpec. ואני בטוויטר @OldTechNewSpec.
מוּמלָץ:
מצלמה תרמית חסכונית: 10 שלבים
מצלמה תרמית חסכונית: פיתחתי מכשיר שניתן לחבר אותו למזל"ט ויכול להזרים מסגרת מעורבת עשויה מהתמונה התרמוגרפית המציגה קרינה תרמית וצילום רגיל עם אור נראה. הפלטפורמה מורכבת ממחלק אחד קטן בעל לוח אחד
מצלמה תרמית IR מסוג M5Stack באמצעות חיישן הדמיה של מערך אינפרא אדום AMG8833: 3 שלבים
מצלמה תרמית M5Stack IR באמצעות חיישן הדמיה מערך אינפרא אדום: כמו רבים היו לי קסם למצלמות תרמיות אבל הם תמיד היו מחוץ לטווח המחירים שלי - עד עכשיו !! בזמן הגלישה באתר Hackaday נתקלתי במבנה המצלמות הזה באמצעות M5Stack מודול ESP32 וזול יחסית
מצלמה תרמית AMG8833 (פטל פטל): 4 שלבים
מצלמה תרמית AMG8833 (Raspberry Pi): הדרכה בסיסית כיצד להתקין מצלמת IR (AMG833) באמצעות ה- Raspberry Pi
מצלמה תרמית IR: 16 שלבים
מצלמה תרמית IR: האם צפית פעם בסרט מדע בדיוני או באקשן, שבו הדמויות עוברות לחדר אפל ומפעילות את הראייה התרמית שלהן? או ששיחקת פעם ב- Metroid Prime וזוכר את המגן התרמי שהדמות הראשית קיבלה? ובכן
מצלמה תרמית משופרת של PiEyeR: 8 שלבים (עם תמונות)
מצלמה תרמית משופרת של PiEyeR: סקירה כללית לוח המצלמות התרמיות של Adafruit AMG8833 IR יכול לספק מצלמת הדמיה אינפרא אדומה רחוקה בדומה ל- FLIR במחיר של בערך 1/10 ממחירם של יחידות הדמיה תרמית קודמות מסוג IR. כמובן, הרזולוציה והרגישות אינם כה גבוהים