חיישן טמפרטורה הוא רכיב אלקטרוני המאפשר לבקר המחשב לקרוא מהיא טמפרטורה אליה חשוף החיישן
כיצד חיישן הטמפרטורה עובד?
ישנם מספר סוגים שונים של חיישני טמפרטורה, וכל אחד מתבסס על תופעה פיזיקלית אחרת בכדי לעמוד את הטמפ'.
בסופו של דבר בקרי המחשב מסוגלים לקרוא רק עוצמות של מתחים וזרמים חשמלים - כדי לקרוא את הטמפ' צריך
להשתמש בתופעה פיזיקאלית שתאפשר לנו להמיר את השינוי בטפמ' לשינוי במתחי לחשמלי.
מדחום כספית?
אחת השיטות העתיקות ביותר למדידת חום הוא מד חום הכספית. מכניסים נוזל לצינורת זכוכית דקה, כאשר הטמפ'
הנוזל עולה, מהירות החלקיקים בנוזל גדלה, מה שמגדיל את נפח הנוזל. לפי גובה הנוזל בתוך הצינורית ניתן לחשב
את טמפרטורת החדר. לאחר שהתגלה כי כספית היא חומר מסוכן, החליפו את הנוזל במד החום אך עיקרון הפעולה
נשאר זהה. מד חום זה נקרא גם מד חום אנלוגי - והוא כבר לא כל כך נפוץ בימינו.
מה זה צמד- תרמי?
במרבית מדי הטמפרטורה הדיגיטלים בימינו, מדידית הטמפ' נעשת על ידי צמד-תרמי. צמד-תרמי הן זוג מתכות מסוגים שונים
המחוברות זו לזו, נקודת החיבור נקראת צומת.
כאשר יש על חוט מתכת הפרש טמפרטורות, הפרש הטמפרטורות גורם להפרש מתחים חשמלים. הפרש המתחים תלוי בהפרש
הטמפרטורות ובחומר המתכתי. כאשר אנו לוקחים שתי מתכות שונות מחברים אותם באופן הזה, נוצר מתח חשמלי בשתי הקצוות
החופשיים, שהוא פרופורציונלי לטמפרטורה בצומת החיבור.
הפרש המתחים שנוצר בקצה הוא מתח נמוך מאוד, לכן בדרך כלל משתמשים במעגל שתפקידו להגביר את האות. לאחר מכאן
המחשב מסוגל להמיר את המתח שמתקבל לערך מעלות הטמפ' בצלזיוס או פרנהייט.
סרטון שמסביר איך בנוי חיישן טמפרטורה
היכן ניתן לפגוש חיישני הטמפרטורה בחיי היום יום?
חיישן הטמפרטורה נמצא במכשירים רבים שכולנו מכירים, למשל בתנור האפיה בבית שלנו קיים חיישן טמפרטורה שמאפשר
לתנור לכיוון את עוצמת גוף החימום בהתאם לפרש בין הטמפרטורה הרצויה והטמפרטורה בפועל. מכשיר נוסף שכולנו מכירים
הוא המזגן שבבית שלנו - כאשר הטמפרטורה בחדר מגיעה לטמפרטורה הרצויה המזגן נכנס להשהיה. מכשיר נוסף הוא מד-חום,
שמאפשר לנו לדעת מה היא טמפרטורת הגוף שלנו.
כיצד מחברים חיישן הטמפרטורה לארדואינו?
ראשית נאתר את חיישן הטמפרטורה בקופסאת החיישנים.
חיישן הטמפרטורה שלנו עובד בדרך מעט שונה, בחיישן עצמו יש ציפ קטן שמחשב בעצמו את הטמפרטורה
ושולח את המידע בצורת תקשורת דיגיטלית ישירות לבקר הארדואינו.
לאחר מכן נחבר את החיישן ללוח הארדואינו באופן הבא:
מה זה ספרית קוד?
השיעור אנו נתקלים בפעם הראשונה קוד שמשתמש בספריות. בקוד הבא ניתן לראות בשתי השורות הראשונות שימוש בפקודה include#,
פקודה זאת מוסיפה ספריה.
ספריית קוד של ארדואינו היא אוסף של קוד, פונקציות ומחלקות שנכתבו על ידי מפתחים כדי לאפשר למשתמשי ארדואינו להוסיף פונקציונליות לפרויקטים שלהם בקלות.
אנו מוסיפים ספריות קוד לפרויקטים שלנו ממספר סיבות:
1. חיסכון בזמן פיתוח - השימוש בספריות קיימות חוסך מאיתנו את הצורך לכתוב הכל מההתחלה. אם אנו צריכים לדוגמה לשלוט במנוע או
לקרוא נתונים מחיישן, יש ספריות המספקות פונקציונליות זו ואנו יכולים להשתמש בהן בקלות.
2. קוד מבוקר ויציב - ספריות שעברו בדיקות ושימוש רב הן בדרך כלל יציבות ואמינות, וחוסכות מאיתנו באגים ובעיות בקוד.
3. מודולריות - שימוש בספריות מאפשר לנו לפצל את הקוד שלנו למודולים נפרדים במקום קוד ארוך אחד גדול. זה הופך אותו לקריא וניתן
לתחזוקה יותר.
4. חיסכון בזיכרון - ספריות מאפשרות שימוש חוזר בקוד וניצול טוב יותר של משאבי המערכת המוגבלים שיש בארדואינו.
כיצד מוסיפים ספריה?
ספריות באופן כללי ניתן להוריד מהאנטרנט, ניתן לחפש ספריות שונות בעזרת מנהל הספריות ואפילו אפשר לכתוב ספריות בעצמנו.
בקורס הזה נוריד את הספריות מאתר הארה ביחד עם הקוד שלנו. ונוסיף את הספריה למחשב באופן הבא:
נלחץ על Sketch > Include Library > Add .ZIP Library...
נבחר את קובץ הZIP הרלוונטי שמכיל את הספריה שאנחנו צריכים ונלחץ אישור. כעת שנרשום בקוד include# המחשב ידע להשתמש
באותה הספריה הרלוונטית.
כעת נחבר את לוח הארדואינו למחשב ונעלה את הקוד הבא לארדואינו:
כעת שנפתח את מוניטור התקשורת נוכל לראות את קריאת הטמפרטורה. במידה והערך בצג לא מתעדכן נלחץ מדי פעם
על הכפתור האדום בלוח הארדואינו שנמצא ליד חיבור הכבל למחשב. זהו כפתור האתחול שמריץ את הקוד מהתחלה.
נשים לב שאם נחזיק את ריבוע הפלסטיק השחור של החיישן ונרענן את ההבקר נראה איך הטמפרטורה על הצג עולה
מטמפרטורת החדר (24-27 מעלות) לטמפרטורת כף היד שלנו (30-33).
אתגר
1. שנה את הקוד כך שהטמפרטורה תופיע בפרנהייט במקום בצלזיוס.
2. הוסף לקוד שורות כך שיהיה ניתן לחבר נורת לד וכאשר הטמפרטורה בה חש החיישן גדולה מ 26 מעלות
נורת הלד נדלת וכאשר הטמפרטורה נמוכה יותר מערך זה הנורה כבויה.
פתרון
1. נשנה את שורה 38. במקום האות C גדולה נרדום F גדולה. ;(Serial.println(sensors.getTempFByIndex(0.
2. פתרון בקוד הבאה:
נורת הלד מתחברת בצידה החיובי לפין מספר 13 ובצידה השלילי ל GND.