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

ניטור טמפרטורה באמצעות MCP9808 ופוטון חלקיקים: 4 שלבים
ניטור טמפרטורה באמצעות MCP9808 ופוטון חלקיקים: 4 שלבים

וִידֵאוֹ: ניטור טמפרטורה באמצעות MCP9808 ופוטון חלקיקים: 4 שלבים

וִידֵאוֹ: ניטור טמפרטורה באמצעות MCP9808 ופוטון חלקיקים: 4 שלבים
וִידֵאוֹ: כיצד ליצור מעגל חיישן טמפרטורה באמצעות דיודה 2024, נוֹבֶמבֶּר
Anonim
Image
Image

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

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

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

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

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

1. MCP9808

2. פוטון חלקיקים

3. כבל I2C

4. מגן I2C לפוטון חלקיקים

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

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

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

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

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

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

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

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

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

נתחיל עם קוד החלקיקים עכשיו.

בעת השימוש במודול החיישנים עם הארדואינו, אנו כוללים את ספריית application.h ו- spark_wiring_i2c.h. הספרייה "application.h" ו- spark_wiring_i2c.h מכילה את הפונקציות המאפשרות תקשורת i2c בין החיישן לחלקיק.

קוד החלקיקים כולו ניתן להלן לנוחות המשתמש:

#לִכלוֹל

#לִכלוֹל

// כתובת I2C MCP9808 היא 0x18 (24)

#define Addr 0x18

צף cTemp = 0, fTemp = 0;

הגדרת חלל ()

{

// הגדר משתנה

Particle.variable ("i2cdevice", "MCP9808");

Particle.variable ("cTemp", cTemp);

// אתחל תקשורת I2C כ- MASTER

Wire.begin ();

// אתחל תקשורת סדרתית, הגדר קצב שידור = 9600

Serial.begin (9600);

// התחל את שידור I2C

Wire.beginTransmission (Addr);

// בחר רשם תצורה

Wire.write (0x01);

// מצב המרה רציף, ברירת מחדל להפעלה

Wire.write (0x00);

Wire.write (0x00);

// עצור את שידור I2C

Wire.endTransmission ();

// התחל את שידור I2C

Wire.beginTransmission (Addr);

// בחר רזולוציית רזולוציה

Wire.write (0x08);

// רזולוציה = +0.0625 / C

Wire.write (0x03);

// עצור את שידור I2C

Wire.endTransmission ();

עיכוב (300);

}

לולאת חלל ()

{

נתוני int ללא חתום [2];

// מתחיל תקשורת I2C

Wire.beginTransmission (Addr);

// בחר רישום נתונים

Wire.write (0x05);

// עצור את שידור I2C

Wire.endTransmission ();

// בקש 2 בתים של נתונים

Wire.requestFrom (Addr, 2);

// קרא 2 בתים של נתונים

// זמני msb, temp lsb

אם (Wire.available () == 2)

{

data [0] = Wire.read ();

data [1] = Wire.read ();

}

עיכוב (300);

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

int temp = ((data [0] & 0x1F) * 256 + נתונים [1]);

אם (טמפ '> 4095)

{

טמפ ' -= 8192;

}

cTemp = טמפ ' * 0.0625;

fTemp = cTemp * 1.8 + 32;

// נתוני פלט ללוח המחוונים

Particle.publish ("טמפרטורה בסלסיוס:", מחרוזת (cTemp));

Particle.publish ("טמפרטורה בפרנהייט:", מחרוזת (fTemp));

עיכוב (500);

}

הפונקציה Particle.variable () יוצרת את המשתנים לאחסון הפלט של החיישן והפונקציה Particle.publish () מציגה את הפלט בלוח המחוונים של האתר.

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

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

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

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

מוּמלָץ: