חיישן טמפרטורה – LM75
תוכן עניינים
מדריך מפורט לשימוש בחיישן טמפרטורה – LM75 העובד באמצעות הפרוטוקול I2C, החיישן מחובר למיקרו-בקר ארדואינו אונו, במדריך שלפניכם ניתן למצוא פירוט בשפה פשוטה:
1. מהו החיישן?
2. מאפיינים של החיישן.
3. כיצד לחבר את החיישן לארדואינו אונו.
4. קודי הפעלה לדוגמא של החיישן.
הפוסט מומלץ לכל תלמיד, סטודנט, מורה או מרצה בתחום ה- Arduino ובתחום הנחיית הפרויקטים.
הקדמה: מזה חיישן טמפרטורה
חיישן LM75 יכול למדוד את המעלות של הסביבה שהוא נמצא בה. החיישן משנה את ההתנגדות החשמלית שלו, בהתאם לטמפרטורה. ככל שיותר חם – כך ההתנגדות גדלה. ככל שיותר קר – כך ההתנגדות קטנה. אנחנו מחברים את חיישן הטמפרטורה LM75 לארדואינו. הארדואינו מקבל את מקבל את הטמפרטורה וכך הוא יכול לדעת בדיוק מהן המעלות, אנחנו יכולים להשתמש בחיישן הזה כדי למדוד המעלות בסביבה בפרויקטים של ארדואינו.
מאפיינים עיקריים:
1. טווח מדידת : ממינוס 55 מעלות צלזיוס עד פלוס 125 מעלות צלזיוס
2. ממשק תקשורת: I2C. כתובת החיישן היא 0x07.
3. דיוק: כדי פלוס או מינוס 2 מעלות צלזיוס.
4. צריכת זרם: 1 מיקרו-אמפר (מיליונית האמפר). צריכת זרם נמוכה מאוד.
5. זמן המרה: זמן מדידת והמרתה לאות דיגיטלי הוא כ-750 מילישניות.
6. גודל: החיישן קטן מאוד – רק 3 מ"מ על 3 מ"מ.
7. מחיר: מחיר החיישן נמוך מאוד, מחיר של כ-2-3 דולר באליאקספרס.
מאפיינים עיקריים:
אופן חיבור החיישן לכרטיס הארדואינו אונו
הסבר מדוע החיישן מחובר באמצעות הפרוטוקול I2C
I2C הוא פרוטוקול תקשורת שמאפשר לחבר התקנים שונים ללוח הארדואינו באופן פשוט יחסית. במקרה שלנו, החיישן LM75 מחובר לפינים SDA ו-SCL של הלוח. פינים אלה משמשים לתקשורת I2C. החיישן והארדואינו "מדברים" ביניהם דרך הפינים האלה, באמצעות פרוטוקול I2C.
כשאנחנו רוצים לקרוא את הטמפרטורה, הארדואינו שולח בקשה לחיישן דרך פיני ה- I2C. החיישן קורא את הטמפרטורה, ושולח חזרה את הערך דרך אותם פינים. כך אנחנו יכולים לקרוא את הטמפרטורה בקלות רבה, ללא צורך בחיווט מורכב.
I2C מאפשר לנו גם לחבר מספר התקנים דרך אותם פינים SDA ו-SCL, ולתקשר איתם באופן עצמאי.
הספרייה Temperature_LM75_Derived.h
ספרייה היא אוסף של קוד שכתב מישהו אחר, כדי שנוכל להשתמש בו בקלות בתכניות שלנו. במקרה הזה, הספרייה Temperature_LM75_Derived.h מכילה קוד שיודע לתקשר עם החיישן LM75 ולקרוא ממנו את המעלות בסביבת החיישן.
אנחנו כותבים include# כדי לצרף את הספרייה הזאת לקוד שלנו. כך יהיה לנו גישה לכל הפונקציות שבתוך הספרייה, כמו למשל ()readTemperatureC שקוראת את המעלות מסביבת החיישן.
בזכות הספרייה, אנחנו לא צריכים לכתוב בעצמנו קוד מורכב שמתקשר עם החיישן, אלא פשוט משתמשים בפונקציות מוכנות שיש בה. זה חוסך לנו זמן ומאפשר לנו להתמקד בקוד העיקרי של התוכנית שלנו.
להורדת הספרייה: לחץ כאן
קוד הפעלה לרכיב:
#include // כולל את הספרייה לחיישן הטמפרטורה LM75
Generic_LM75 LM75; // יוצר אובייקט של החיישן
void setup()
{
Serial.begin(9600); // פותח תקשורת עם קצב של 9600 באוד
delay(100); // השהייה של 100 מילישניות
}
void loop()
{
Serial.print("Temperature = "); // שולח ליציאת הסיריאל את המחרוזת
Serial.print(LM75.readTemperatureC()); // קורא את הטמפרטורה מהחיישן ושולח לסיריאל
Serial.println("C"); // שולח ליציאת הסיריאל את יחידת המדידה C
delay(300); // השהייה של 300 מילישניות
}