كيفية توصيل مستشعر درجة الحرارة والرطوبة DHT11 بـ Arduino

جدول المحتويات:

كيفية توصيل مستشعر درجة الحرارة والرطوبة DHT11 بـ Arduino
كيفية توصيل مستشعر درجة الحرارة والرطوبة DHT11 بـ Arduino

فيديو: كيفية توصيل مستشعر درجة الحرارة والرطوبة DHT11 بـ Arduino

فيديو: كيفية توصيل مستشعر درجة الحرارة والرطوبة DHT11 بـ Arduino
فيديو: طريقة تعريف وبرمجة حساسين الحرارة والرطوبة DHT 22,DHT 11 مع الاردوينو Temperature and Humidity 2024, شهر نوفمبر
Anonim

يعد مستشعر درجة الحرارة والرطوبة DHT17 مستشعرًا شائعًا ورخيصًا يمكن استخدامه على نطاق واسع إلى حد ما من درجات الحرارة والرطوبة النسبية. دعونا نرى كيفية توصيله بـ Arduino وكيفية قراءة البيانات منه.

جهاز استشعار درجة الحرارة والرطوبة DHT11
جهاز استشعار درجة الحرارة والرطوبة DHT11

ضروري

  • - اردوينو
  • - جهاز استشعار درجة الحرارة والرطوبة DHT17.

تعليمات

الخطوة 1

لذلك ، يتمتع مستشعر DHT11 بالخصائص التالية:

- نطاق الرطوبة النسبية المقاسة - 20..90٪ بخطأ يصل إلى 5٪ ،

- نطاق درجات الحرارة المقاسة - 0..50 درجة مئوية مع خطأ يصل إلى درجتين ؛

- وقت الاستجابة للتغيرات في الرطوبة - حتى 15 ثانية ، درجة الحرارة - حتى 30 ثانية ؛

- أقل فترة اقتراع هي ثانية واحدة.

كما ترون ، مستشعر DHT11 ليس دقيقًا للغاية ، ولا يغطي نطاق درجة الحرارة القيم السالبة ، والتي بالكاد تكون مناسبة للقياسات الخارجية في موسم البرد في مناخنا. ومع ذلك ، فإن تكلفته المنخفضة وصغر حجمه وسهولة استخدامه يقابلان جزئياً هذه العيوب.

يوضح الشكل مظهر المستشعر وأبعاده بالمليمترات.

مظهر وأبعاد مستشعر DHT11
مظهر وأبعاد مستشعر DHT11

الخطوة 2

ضع في اعتبارك مخطط توصيل مستشعر درجة الحرارة والرطوبة DHT11 بالمتحكم الدقيق ، على وجه الخصوص ، إلى Arduino. على الصورة:

- MCU - متحكم دقيق (على سبيل المثال ، Arduino أو ما شابه) أو كمبيوتر لوحة واحدة (Raspberry Pi أو ما شابه) ؛

- DHT11 - مستشعر درجة الحرارة والرطوبة ؛

- البيانات - ناقل البيانات ؛ إذا كان طول كابل التوصيل من المستشعر إلى المتحكم الدقيق لا يتجاوز 20 مترًا ، فمن المستحسن سحب هذا الناقل إلى مزود الطاقة بمقاوم 5 ، 1 كيلو أوم ؛ إذا كان أكثر من 20 مترا ، ثم قيمة أخرى مناسبة (أصغر).

- VDD - مصدر طاقة المستشعر ؛ الفولتية المسموح بها من ~ 3.0 إلى ~ 5.5 فولت تيار مستمر ؛ إذا تم استخدام مصدر الطاقة ~ 3.3 فولت ، فمن المستحسن استخدام سلك إمداد لا يزيد طوله عن 20 سم.

أحد خيوط المستشعر - الثالث - غير متصل بأي شيء.

غالبًا ما يُباع مستشعر DHT11 كمجموعة كاملة مع الأنابيب اللازمة - المقاوم للسحب ومكثف المرشح.

رسم تخطيطي لتوصيل مستشعر DHT11 بالمتحكم الدقيق
رسم تخطيطي لتوصيل مستشعر DHT11 بالمتحكم الدقيق

الخطوه 3

دعونا نجمع المخطط المدروس. سأقوم أيضًا بتوصيل محلل منطقي بالدائرة حتى أتمكن من دراسة مخطط توقيت الاتصال مع المستشعر.

مستشعر DHT11 واردوينو
مستشعر DHT11 واردوينو

الخطوة 4

دعنا نذهب بالطريقة البسيطة: قم بتنزيل مكتبة مستشعر DHT11 (الرابط في قسم "المصادر") ، وقم بتثبيتها بالطريقة القياسية (تفريغها في دليل / libraries / لبيئة تطوير Arduino).

دعونا نكتب مثل هذا الرسم البسيط. لنقم بتحميله في Arduino. سينتج هذا الرسم التخطيطي رسائل RH ودرجة الحرارة المقروءة من مستشعر DHT11 إلى المنفذ التسلسلي للكمبيوتر كل ثانيتين.

رسم تخطيطي للعمل مع مستشعر درجة الحرارة والرطوبة DHT11
رسم تخطيطي للعمل مع مستشعر درجة الحرارة والرطوبة DHT11

الخطوة الخامسة

الآن ، باستخدام مخطط التوقيت الذي تم الحصول عليه من محلل المنطق ، دعنا نتعرف على كيفية تنفيذ تبادل المعلومات.

يستخدم مستشعر درجة الحرارة والرطوبة DHT11 واجهة تسلسلية أحادية السلك للتواصل مع المتحكم الدقيق. يستغرق تبادل البيانات حوالي 40 مللي ثانية ويحتوي على: بت طلب واحد من وحدة التحكم الدقيقة ، و 1 بت من استجابة المستشعر و 40 بت بيانات من المستشعر. تتضمن البيانات: 16 بتًا من معلومات الرطوبة ، و 26 بتًا من معلومات درجة الحرارة ، و 8 بتات فحص.

دعنا نلقي نظرة فاحصة على مخطط توقيت اتصال Arduino مع مستشعر DHT11.

يتضح من الشكل أن هناك نوعين من النبضات: قصيرة وطويلة. تشير النبضات القصيرة في بروتوكول التبادل هذا إلى الأصفار والنبضات الطويلة - الآحاد.

لذلك ، فإن النبضتين الأوليين هما طلب Arduino لـ DHT11 ، وبالتالي استجابة المستشعر. يأتي بعد ذلك 16 بتة من الرطوبة. علاوة على ذلك ، يتم تقسيمها إلى بايت ، مرتفع ومنخفض ، مرتفع على اليسار. أي ، في الشكل الخاص بنا ، تكون بيانات الرطوبة كما يلي:

0001000000000000 = 00000000 00010000 = 0x10 = 16٪ رطوبة نسبية.

بيانات درجة الحرارة مشابهة لـ:

0001011100000000 = 00000000 00010111 = 0x17 = 23 درجة مئوية.

بتات التحقق - المجموع الاختباري هو مجرد تجميع لأربع بايتات مستلمة من البيانات:

00000000 +

00010000 +

00000000 +

00010111 =

00100111 بالنظام الثنائي أو 16 + 23 = 39 في النظام العشري.

موصى به: