כיצד לחבר חיישן טמפרטורה ולחות DHT11 לארדואינו

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

כיצד לחבר חיישן טמפרטורה ולחות DHT11 לארדואינו
כיצד לחבר חיישן טמפרטורה ולחות DHT11 לארדואינו
Anonim

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

חיישן טמפרטורה ולחות DHT11
חיישן טמפרטורה ולחות DHT11

נחוץ

  • - ארדואינו;
  • - חיישן טמפרטורה ולחות DHT17.

הוראות

שלב 1

לכן, לחיישן DHT11 יש את המאפיינים הבאים:

- טווח לחות יחסית מדודה - 20..90% עם שגיאה של עד 5%, - טווח טמפרטורות מדוד - 0..50 מעלות צלזיוס עם שגיאה של עד 2 מעלות;

- זמן תגובה לשינויים בלחות - עד 15 שניות, טמפרטורה - עד 30 שניות;

- תקופת הקלפי המינימלית היא שנייה אחת.

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

האיור מראה את מראה החיישן ומידותיו במילימטרים.

מראה וממדים של חיישן DHT11
מראה וממדים של חיישן DHT11

שלב 2

שקול את תרשים החיבור של חיישן הטמפרטורה והלחות DHT11 למיקרו-בקר, במיוחד לארדואינו. על התמונה:

- MCU - מיקרו-בקר (למשל, Arduino או דומה) או מחשב לוח יחיד (Raspberry Pi או דומה);

- DHT11 - חיישן טמפרטורה ולחות;

- DATA - אוטובוס נתונים; אם אורך כבל החיבור מהחיישן למיקרו-בקר אינו עולה על 20 מטר, מומלץ למשוך את האוטובוס הזה לאספקת החשמל עם נגד 5, 1 kOhm; אם יותר מ -20 מטר, אז ערך אחר מתאים (קטן יותר).

- VDD - ספק כוח חיישן; מתח מותר מ- 3.0 עד ~ 5.5 וולט DC; אם משתמשים באספקת חשמל ~ 3.3 וולט, רצוי להשתמש בחוט אספקה לא יותר מ -20 ס מ.

אחד מוליכי החיישן - השלישי - אינו מחובר לשום דבר.

חיישן DHT11 נמכר לעיתים קרובות כמכלול שלם עם הצנרת הדרושה - נגד משיכה וקבל פילטר.

תרשים חיבור חיישן DHT11 למיקרו-בקר
תרשים חיבור חיישן DHT11 למיקרו-בקר

שלב 3

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

חיישן DHT11 וארדואינו
חיישן DHT11 וארדואינו

שלב 4

בוא נלך בדרך הפשוטה: הורד את הספרייה עבור חיישן DHT11 (קישור בסעיף "מקורות"), התקן אותה בצורה הסטנדרטית (פירוק אותה לספריה / ספריות / בסביבת הפיתוח של Arduino).

בואו נכתוב סקיצה כל כך פשוטה. בואו נטען את זה לארדואינו. שרטוט זה יפיק את הודעות ה- RH והטמפרטורה שנקראו מחיישן DHT11 ליציאה הטורית של המחשב כל 2 שניות.

סקיצה לעבודה עם חיישן טמפרטורה-לחות DHT11
סקיצה לעבודה עם חיישן טמפרטורה-לחות DHT11

שלב 5

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

חיישן הטמפרטורה והלחות של DHT11 משתמש בממשק טורי חד חוטי כדי לתקשר עם המיקרו-בקר. חילוף נתונים אחד אורך כ- 40 אלפי שניות ומכיל: סיבית בקשה אחת מהמיקרו-בקר, סיבית אחת מתגובת החיישן ו -40 סיביות נתונים מהחיישן. הנתונים כוללים: 16 סיביות של מידע לחות, 26 סיביות של מידע טמפרטורה ו- 8 סיביות בדיקה.

בואו נסתכל מקרוב על דיאגרמת התזמון של תקשורת Arduino עם חיישן DHT11.

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

אז שני הפולסים הראשונים הם בקשת הארדואינו ל- DHT11 ובהתאם לכך תגובת החיישן. הבא מגיע 16 פיסות לחות. יתר על כן, הם מחולקים לבתים, גבוה ונמוך, גבוה משמאל. כלומר, באיור שלנו, נתוני הלחות הם כדלקמן:

0001000000000000 = 00000000 00010000 = 0x10 = 16% לחות יחסית.

נתוני טמפרטורה דומים ל:

0001011100000000 = 00000000 00010111 = 0x17 = 23 מעלות צלזיוס.

בדיקת ביטים - סכום הבדיקה הוא רק סיכום של 4 בתים שנתקבלו:

00000000 +

00010000 +

00000000 +

00010111 =

00100111 בינארי או 16 + 23 = 39 בעשרוני.

מוּמלָץ: