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

מדידת טמפרטורה באמצעות MCP9803 ו- Raspberry Pi: 4 שלבים
מדידת טמפרטורה באמצעות MCP9803 ו- Raspberry Pi: 4 שלבים

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

וִידֵאוֹ: מדידת טמפרטורה באמצעות MCP9803 ו- Raspberry Pi: 4 שלבים
וִידֵאוֹ: Измерение 5A-30A переменного и постоянного тока с использованием ACS712 с библиотекой Robojax 2024, נוֹבֶמבֶּר
Anonim
Image
Image

MCP9803 הוא חיישן טמפרטורה דיוק גבוה בעל 2 חוטים. הם מגולמים ברשמים הניתנים לתכנות על ידי משתמשים המאפשרים יישומי חישת טמפרטורה. חיישן זה מתאים למערכת ניטור טמפרטורות מרובת אזורים מתוחכמת ביותר.

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

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

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

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

1. MCP9803

2. פטל פטל

3. כבל I2C

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

5. כבל אתרנט

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

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

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

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

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

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

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

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

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

היתרון בשימוש בפטל פאי הוא בכך שהוא מספק לך את הגמישות של שפת התכנות בה ברצונך לתכנת את הלוח על מנת לחבר אליו את החיישן. תוך ניצול היתרון הזה של הלוח הזה, אנו מדגימים כאן שהוא מתכנת ב- Java. ניתן להוריד את קוד java עבור MCP9803 מקהילת Github שלנו שהיא חנות Dcube.

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

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

pi4j.com/install.html

תוכל להעתיק מכאן גם את קוד ה- Java שעובד עבור חיישן זה:

ייבא com.pi4j.io.i2c. I2CBus;

ייבא com.pi4j.io.i2c. I2CDevice;

יבוא com.pi4j.io.i2c. I2CFactory;

יבוא java.io. IOException; מעמד ציבורי MCP9803

{

פוסט סטטי ציבורי ריק (String args ) זורק חריגה

{

// צור אוטובוס I2C

אוטובוס I2CBus = I2CFactory.getInstance (I2CBus. BUS_1);

// קבל מכשיר I2C, כתובת I2C MCP9803 היא 0x48 (72)

מכשיר I2CDevice = Bus.getDevice (0x48);

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

// מצב המרה רציף, הפעלה, מצב השוואה, רזולוציה של 12 סיביות

device.write (0x01, (בייט) 0x60);

Thread.sleep (500);

// קרא 2 בתים של נתונים מהכתובת 0x00 (0)

// זמני msb, temp lsb

בייט נתונים = בייט חדש [2];

device.read (0x00, data, 0, 2);

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

int temp = ((data [0] & 0xFF) * 256 + (data [1] & 0xF0)) / 16;

אם (טמפ '> 2047)

{

טמפ ' -= 4096;

}

cTemp כפול = טמפ ' * 0.0625;

כפול fTemp = cTemp * 1.8 + 32;

// נתוני פלט למסך

System.out.printf ("הטמפרטורה בצלזיוס היא: %.2f C %n", cTemp);

System.out.printf ("הטמפרטורה בפרנהייט היא: %.2f F %n", fTemp);

}

}

הספרייה המאפשרת תקשורת i2c בין החיישן ללוח היא pi4j, החבילות השונות שלה I2CBus, I2CDevice ו- I2CFactory עוזרות ביצירת החיבור.

ייבא com.pi4j.io.i2c. I2CBus;

ייבא com.pi4j.io.i2c. I2CDevice;

יבוא com.pi4j.io.i2c. I2CFactory;

יבוא java.io. IOException;

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

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

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

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

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

מוּמלָץ: