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

מדידת לחות באמצעות HYT939 ו- Raspberry Pi: 4 שלבים
מדידת לחות באמצעות HYT939 ו- Raspberry Pi: 4 שלבים

וִידֵאוֹ: מדידת לחות באמצעות HYT939 ו- Raspberry Pi: 4 שלבים

וִידֵאוֹ: מדידת לחות באמצעות HYT939 ו- Raspberry Pi: 4 שלבים
וִידֵאוֹ: Linptech ES1 - микроволновый датчик присутствия для mihome, интеграция Home Assistant Gateway 3 2024, יולי
Anonim
Image
Image

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

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

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

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

החומרה הנדרשת לביצוע המשימה היא כדלקמן:

1. HYT939

2. פטל פטל

3. כבל I2C

4. מגן I2C עבור פטל פטל

5. כבל אתרנט

-

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

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

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

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

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

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

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

שלב 3: קוד ג'אווה למדידת לחות:

קוד ג'אווה למדידת לחות
קוד ג'אווה למדידת לחות
קוד ג'אווה למדידת לחות
קוד ג'אווה למדידת לחות

היתרון בשימוש בפטל פאי הוא בכך שהוא מספק לך את הגמישות של שפת התכנות בה ברצונך לתכנת את הלוח על מנת לחבר אליו את החיישן. תוך ניצול היתרון הזה של הלוח הזה, אנו מדגימים כאן את התכנות שלו ב- Java. ניתן להוריד את קוד ה- Java עבור HYT939 מקהילת 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;

מעמד ציבורי HYT939

{

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

{

// צור I2CBus

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

// קבל מכשיר I2C, כתובת I2C HYT939 היא 0x28 (40)

מכשיר I2CDevice = bus.getDevice (0x28);

// שלח פקודה במצב רגיל

device.write ((בייט) 0x80);

Thread.sleep (500);

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

// לחות msb, לחות lsb, temp msb, temp lsb

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

device.read (נתונים, 0, 4);

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

לחות כפולה = (((נתונים [0] & 0x3F) * 256) + (נתונים [1] & 0xFF)) * (100.0 / 16383.0);

cTemp כפול = ((((נתונים [2] & 0xFF) * 256) + (נתונים [3] & 0xFC)) / 4) * (165.0 / 16383.0) - 40;

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

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

System.out.printf ("לחות יחסית היא: %.2f %% RH %n", לחות);

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;

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

// שלח פקודה במצב רגיל device.write ((בייט) 0x80); Thread.sleep (500); // קראו 4 בתים של נתונים // msb לחות, lsb לחות, msb טמפי, temp lsb byte data = byte new [4]; device.read (נתונים, 0, 4);

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

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

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

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

מוּמלָץ: