سنسور دما و رطوبت DHT17 یک سنسور محبوب و ارزان قیمت است که می تواند در طیف نسبتاً وسیعی از دما و رطوبت نسبی مورد استفاده قرار گیرد. بیایید ببینیم چگونه می توان آن را به Arduino متصل کرد و چگونه داده ها را از آن خواند.
ضروری است
- - آردوینو ؛
- - سنسور دما و رطوبت DHT17.
دستورالعمل ها
مرحله 1
بنابراین ، سنسور DHT11 دارای ویژگی های زیر است:
- دامنه رطوبت نسبی اندازه گیری شده - 20..90٪ با خطای تا 5٪ ،
- دامنه دمای اندازه گیری شده - 0..50 درجه سانتیگراد با خطای تا 2 درجه ؛
- زمان پاسخ به تغییرات رطوبت - تا 15 ثانیه ، دما - تا 30 ثانیه ؛
- حداقل دوره نظرسنجی 1 ثانیه است.
همانطور که مشاهده می کنید ، سنسور DHT11 بسیار دقیق نیست و دامنه دما مقادیر منفی را پوشش نمی دهد ، که به سختی برای اندازه گیری فضای باز در فصل سرد در آب و هوا مناسب است. با این حال ، کم هزینه بودن ، اندازه کوچک و سهولت استفاده تا حدی این معایب را جبران می کند.
شکل شکل سنسور و ابعاد آن را بر حسب میلی متر نشان می دهد.
گام 2
نمودار اتصال سنسور دما و رطوبت DHT11 به میکروکنترلر ، به ویژه به Arduino را در نظر بگیرید. روی تصویر:
- MCU - میکروکنترلر (به عنوان مثال ، Arduino یا موارد مشابه) یا کامپیوتر تک صفحه ای (Raspberry Pi یا مشابه) ؛
- DHT11 - سنسور دما و رطوبت ؛
- داده ها - گذرگاه داده ؛ اگر طول کابل اتصال از سنسور به میکروکنترلر بیش از 20 متر نباشد ، توصیه می شود که این باس را با یک مقاومت 5 ، 1 کیلو اهم به منبع تغذیه بکشید. اگر بیش از 20 متر باشد ، مقدار مناسب دیگری نیز وجود دارد (کوچکتر).
- VDD - منبع تغذیه سنسور ؛ ولتاژهای مجاز از 3.0 to تا 5.5 ~ ولت DC؛ در صورت استفاده از منبع تغذیه 3.3 ولت ولتاژ ، توصیه می شود از سیم برق بیش از 20 سانتی متر استفاده نکنید.
یکی از لامپ های سنسور - سوم - به هیچ چیز متصل نیست.
سنسور DHT11 اغلب به عنوان یک مجموعه کامل با لوله کشی لازم - مقاومت کششی و خازن فیلتر فروخته می شود.
مرحله 3
بیایید طرح در نظر گرفته شده را جمع آوری کنیم. من همچنین یک تجزیه و تحلیل منطق را به مدار متصل می کنم تا بتوانم نمودار زمان بندی ارتباط با سنسور را مطالعه کنم.
مرحله 4
بیایید به روش ساده برویم: کتابخانه را برای سنسور DHT11 بارگیری کنید (پیوند در بخش "منابع") ، آن را به روش استاندارد نصب کنید (بسته بندی آن را در دایرکتوری / libraries / محیط توسعه آردوینو انجام دهید).
بیایید یک طرح ساده را بنویسیم. بیایید آن را در آردوینو بارگذاری کنیم. این طرح هر 2 ثانیه پیام های RH و Temperature خوانده شده از سنسور DHT11 را به پورت سریال کامپیوتر منتقل می کند.
مرحله 5
حال ، با استفاده از نمودار زمان بندی به دست آمده از تحلیلگر منطق ، بیایید نحوه انجام تبادل اطلاعات را بفهمیم.
سنسور دما و رطوبت DHT11 از یک رابط سریال تک سیم برای برقراری ارتباط با میکروکنترلر استفاده می کند. یک تبادل داده حدود 40 میلی ثانیه طول می کشد و شامل: 1 بیت درخواست از میکروکنترلر ، 1 بیت پاسخ سنسور و 40 بیت داده از سنسور است. داده ها شامل: 16 بیت اطلاعات رطوبت ، 26 بیت اطلاعات دما و 8 بیت چک است.
بیایید نگاهی دقیق تر به نمودار زمان بندی ارتباطات آردوینو با سنسور DHT11 بیندازیم.
از شکل می توان دریافت که دو نوع تکانه وجود دارد: کوتاه و بلند. پالس های کوتاه در این پروتکل تبادل نشانگر صفر ، پالس های طولانی - یک است.
بنابراین ، دو پالس اول درخواست آردوینو از DHT11 و به همین ترتیب ، پاسخ سنسور است. بعد 16 بیت رطوبت می آید. علاوه بر این ، آنها به بایت تقسیم می شوند ، بالا و پایین ، بالا در سمت چپ. یعنی ، در شکل ما ، داده های رطوبت به شرح زیر است:
0001000000000000 = 00000000 00010000 = 0x10 = 16٪ RH.
داده های دما مشابه:
0001011100000000 = 00000000 00010111 = 0x17 = 23 درجه سانتیگراد.
بیت های چک - مجموع چک تنها جمع 4 بایت داده دریافت شده است:
00000000 +
00010000 +
00000000 +
00010111 =
00100111 به صورت دودویی یا 16 + 23 = 39 به صورت اعشاری.