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

ניטור טמפרטורות באמצעות MCP9808 ו- Raspberry Pi: 4 שלבים
ניטור טמפרטורות באמצעות MCP9808 ו- Raspberry Pi: 4 שלבים

וִידֵאוֹ: ניטור טמפרטורות באמצעות MCP9808 ו- Raspberry Pi: 4 שלבים

וִידֵאוֹ: ניטור טמפרטורות באמצעות MCP9808 ו- Raspberry Pi: 4 שלבים
וִידֵאוֹ: Sonoff SNZB-02 Zigbee датчик температуры и влажности, Tuya Smart, интеграция в Home Assistant 2024, נוֹבֶמבֶּר
Anonim
Image
Image

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

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

שלב 1: חומרה נדרשת:

חומרה נדרשת
חומרה נדרשת
חומרה נדרשת
חומרה נדרשת
חומרה נדרשת
חומרה נדרשת

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

1. MCP9808

2. פטל פטל

3. כבל I2C

4. מגן I2C לפאי פטל

5. כבל אתרנט

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

חיבור חומרה
חיבור חומרה
חיבור חומרה
חיבור חומרה

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

ה- MCP9808 יעבוד על I2C. להלן תרשים החיווט לדוגמה, המדגים כיצד לחבר כל ממשק של החיישן.

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

רק ארבעה חיבורים נדרשים סיכות Vcc, Gnd, SCL ו- SDA ואלו מחוברים בעזרת כבל I2C.

קשרים אלה מודגמים בתמונות למעלה.

שלב 3: קוד למדידת טמפרטורה:

קוד למדידת טמפרטורה
קוד למדידת טמפרטורה

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

בנוסף לנוחות המשתמשים, אנו מסבירים את הקוד גם כאן:

כשלב הראשון של קידוד עליך להוריד את ספריית SMBus במקרה של פייתון, מכיוון שספרייה זו תומכת בפונקציות המשמשות את הקוד. אז, כדי להוריד את הספרייה אתה יכול לבקר בקישור הבא:

pypi.python.org/pypi/smbus-cffi/0.5.1

תוכל להעתיק את קוד העבודה מכאן גם:

יבוא smbus

זמן יבוא

# קבל אוטובוס I2C = smbus. SMBus (1)

כתובת MCP9808, 0x18 (24)

# בחר רשם תצורה, 0x01 (1)

# 0x0000 (00) מצב המרה רציף, ברירת מחדל להפעלה

config = [0x00, 0x00] bus.write_i2c_block_data (0x18, 0x01, config)

כתובת MCP9808, 0x18 (24)

# בחר רזולוציה rgister, 0x08 (8)

# 0x03 (03) רזולוציה = +0.0625 / ג

bus.write_byte_data (0x18, 0x08, 0x03)

time.sleep (0.5)

כתובת MCP9808, 0x18 (24)

# קרא את הנתונים בחזרה מ 0x05 (5), 2 בתים

# MSB זמני, LSB TEMP

data = bus.read_i2c_block_data (0x18, 0x05, 2)

# המר את הנתונים ל -13 סיביות

ctemp = ((נתונים [0] & 0x1F) * 256) + נתונים [1]

אם ctemp> 4095:

ctemp -= 8192

ctemp = ctemp * 0.0625

ftemp = ctemp * 1.8 + 32

# פלט נתונים למסך

- הטמפרטורה בצלזיוס היא: %.2f C %ctemp

- הטמפרטורה בפרנהייט היא: %.2f F %ftemp

הקוד מבוצע באמצעות הפקודה הבאה:

$> python MCP9808.py gt; python MCP9808.py

gt; python MCP9808.py

פלט החיישן מוצג בתמונה למעלה לעיון המשתמש.

שלב 4: יישומים:

יישומים
יישומים

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

מוּמלָץ: