חיישן טמפרטורה
חיישן טמפרטורה הוא אחד הנפוצים בשימוש בפרויקטים של מייקרים ותלמידים. הדוגמא הכי פופולרית זה מזגן או תנור חימום, שמיישמים חוג בקרה סגור כדי להביא את הטמפרטורה בחדר לטמפרטורה רצוייה כלשהיא. המשתמש מגדיר את הטמפרטורה הרצוייה דרך שלט או לוח עם כפתורים וחוגות ואילו מערכת הבקרה מודדת בעזרת חיישן טמפרטורה את הערך המצוי כרגע בחדר בקרבת החיישן, משווה אותו עם הערך הרצוי והבקר נותן פקודות למערכת החימום להמשיך לפעול או להכנס להשהייה עד לקיום התנאים.
מדידת טמפרטורה משתמשת במגוון רחב של טכנולוגיות משינוי התנגדות חשמלית כתלות בטמפרטורה, דרך השפעה על קליטת קרינה אינפרא אדומה (IR) ועד שינוי התארכות של חומר בהתאם לטמפרטורה. כל שיטה מותאמת לצרכים מסויימים ולתחום עבודה - תחום טמפרטורה בה פועלת המערכת (מזגן פועל בתחום קטן יחסית בו האדם מרגיש נוח, אבל תנור תעשייתי או מנגל יכול להגיע גם לטמפרטורות של מאות ואף אלפי מעלות צלסיוס).
אחד החיישן הבסיסים שניתן למצוא בהרבה ערכות התחלה למייקרים הוא DHT11 או DHT22.
חיישני טמפרטורה ולחות DHT11 או DHT22
שני חיישנים אלה דומים מאוד בצורתם החיצונית, הם סגורים בתוך מעטפת פלסטית מרושתת בצבע לבן (22) או
כחול (11). ההבדלים העיקריים בין הדגמים הוא תחום הטמפרטורות (דגם 22 בעל תחום רחב יותר במדידת טמפרטורה ולחות) וקצב דגימה (כמה פעמים בשנייה ניתן למדוד את הטמפרטורה - דגם 11 מאפשר יותר דגימות בשניה). הטבלה הבאה מראה את החיישנים ונתונים עיקריים:
חיווט חיישני טמפרטורה ולחות DHT11 או DHT22
חיבור שני החיישנים זהה. לחיישנים יש 4 רגליים אבל רק 3 מתוכן בשימוש. בתמונה הבאה ניתן לראות את אופן החיבור. ניתן לתקוע את החיישן על מטריצת חיבורים לנוחות חיווט.
כאשר הרשת של החיישן פונה אליכם, הרגל הימנית מתחברת ל-GND. הרגל השמאלית מתחברת ל-5V.
הרגל השניה משמאל (זו שצמודה לחיבור 5V) מתפצלת לשני חיבורים: חיבור אחד לפין דיגיטלי כלשהוא, חיבור שני לנגד של 10K אוהם שמצידו השני של הנגד מתחברים ל-5V נקרא PULLUP.
תכנות טמפרטורה ולחות DHT11 או DHT22
כדי להשתמש בחיישנים ולקבל קריאה יש צורך להתקין סיפריה בשם DHT של חברת ADAFRUIT ולהשתמש בפונקציות שנמצאות בה. בסביבת הפיתוח של ארדואינו לוחצים על תפריט SKETCH, בוחרים מהתפריט שנפתח את האפשרות INCLUDE LIBRARY, ונפתח תפריט נוסף ממנו בוחרים MANAGE LIBRARY כפי שרואים בתמונה
במסך שנפתח יש להקליד בשדה הטקסט בראש המסך את שם הסיפריה DHT (ראו תמונה)
מתוך רשימת התוצאות שמתקבלות יש לבחור את זו של חברת ADAFRUIT (ראו תמונה). כאשר תבחרו את הסיפרייה יופיע כפתור בצד ימין המאפשר לכם להתקין את הסיפריה.
כאשר מתקינים סיפרייה חדשה היא מגיעה בד"ב עם מגוון של תוכניות דוגמא. גשו עכשיו לתפריט קובץ -> דוגמאות -> DHT ובחרו את קובץ הדוגמא DHT TESTER (ראו תמונה)
נסביר כעט מה החלקים העיקריים בתוכנה הנדרשים להפעלת החיישן:
אזור ההגדרות משורה 1-31 רובו הסברים. השורות המעניינות הן, שורה 8 אנחנו מבקשים לצרף את הסיפרייה DHT לקוד שלנו כדי שנוכל להשתמש בפונקציות המפעילות את החיישן. בשורה 10 אנחנו מגדירים את מספר הפין הדיגיטלי שאליו חיווטנו את החיישן. בשורות 15-17 אנחנו מגדירים את סוג החיישן שחיווטנו. אם חיווטנו את DHT11 אז צריך למחוק את סימון // בשורה 15 ולהוסיף את אותו הסימון בתחילת שורה 16 (סימון זה קובע שהשורה היא הערה ויש להתעלם ממנה). אם חיווטנו את DHT22 אין צוך לעשות שום שינוי בשורות אלו.
שורה 31 מייצרת אובייקט בשם dht על בסיס סוג החיישן ומספר הפין שהגדרנו. אובייקט זה ישמש אותנו בהמשך להפעלת החיישן שלנו.
אם חיווטנו מספר חיישנים אז יש להגדיר מספר אובייקטים כאשר כל יצירת אובייקט תקרא בשם אחר ותקבל כפרמטרים את מספר הפין המתאים ואת סוג החיישן.
פונקצית SETUP מאוד קטנה כאן. היא עושה שני דברים : אתחול התקשורת הסיריאלית לטובת הדפסת ערכי הקריאות מהחיישן על מסך המחשב, ואתחול האובייקט של החיישן בשורה 37.
פונקציית LOOP עושה הרבה דברים ונתרכז כאן רק בחלקים הרלוונטים לקריאת הטמפרטורה.
שורה 47 - הגדרת משתנה בשם t בו נאחסן את קריאת הטמפרטורה במעלות צלסיוס המתקבלת מהפונקציה. אם רוצים לקבל טמפרטורה במעלות פרנהייט (כמקובל בארה"ב) ניתן להשתמש בפונקציה בשורה 49 או לעשות חישוב המרה בעצמנו.
שורות 51-54 מבצעות בדיקה האם לא הצלחנו לקרוא מידע מהחיישן. אם מתגלה בעיה בקריאת החיישן התוכנית חוזרת להתחלה. אם אין בעייה היא ממשיכה לשורות 55-70.
בשורות 61-64 התוכנית מדפיסה בצורה יפה את ערכי הטמפרטורות שנמדדו בצלסיוס ובפרנהייט.
סרטונים וחומר הסבר נוספים על חיישני טמפרטורה
חומר הסבר מתוך אתר ארדואינו
חומר הסבר מתוך אתר יצרנית הרכיבים ADAFRUIT
סרטון הסבר מתוך ערוץ יוטיוב dronebot workshop