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

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

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

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

HDC1000 הוא חיישן לחות דיגיטלי עם חיישן טמפרטורה משולב המספק דיוק מדידה מעולה בהספק נמוך מאוד. המכשיר מודד לחות על בסיס חיישן קיבולי חדש. חיישני הלחות והטמפרטורה מכוילים במפעל. הוא מתפקד בטווח הטמפרטורות המלא של -40 ° C עד +125 ° C.

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

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

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

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

1. HDC1000

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

3. כבל I2C

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

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

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

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

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

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

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

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

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

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

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

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

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

#לִכלוֹל

#לִכלוֹל

// כתובת HDC1000 I2C היא 0x40 (64)

#define Addr 0x40

cTemp כפול = 0.0, fTemp = 0.0, לחות = 0.0;

int temp = 0, hum = 0;

הגדרת חלל ()

{

// הגדר משתנה

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

Particle.variable ("לחות", לחות);

Particle.variable ("cTemp", cTemp);

// אתחול תקשורת I2C

Wire.begin ();

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

Serial.begin (9600);

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

Wire.beginTransmission (Addr);

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

Wire.write (0x02);

// טמפרטורה, לחות מופעלת, רזולוציה = 14 סיביות, חימום דולק

Wire.write (0x30);

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

Wire.endTransmission ();

עיכוב (300);

}

לולאת חלל ()

{

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

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

Wire.beginTransmission (Addr);

// שלח פקודת מדידת טמפ '

Wire.write (0x00);

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

Wire.endTransmission ();

עיכוב (500);

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

Wire.requestFrom (Addr, 2);

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

// זמני msb, temp lsb

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

{

data [0] = Wire.read ();

data [1] = Wire.read ();

}

// המר את הנתונים

temp = ((data [0] * 256) + data [1]);

cTemp = (טמפ ' / 65536.0) * 165.0 - 40;

fTemp = cTemp * 1.8 + 32;

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

Wire.beginTransmission (Addr);

// שלח פקודת מדידת לחות

Wire.write (0x01);

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

Wire.endTransmission ();

עיכוב (500);

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

Wire.requestFrom (Addr, 2);

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

// זמני msb, temp lsb

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

{

data [0] = Wire.read ();

data [1] = Wire.read ();

}

// המר את הנתונים

זמזום = ((נתונים [0] * 256) + נתונים [1]);

לחות = (זמזום / 65536.0) * 100.0;

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

הוצאה לאור Particle.publish ("לחות יחסית:", מחרוזת (לחות));

עיכוב (1000);

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

עיכוב (1000);

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

עיכוב (1000);

}

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

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

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

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

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

מוּמלָץ: