در این آموزش، ما یاد خواهیم گرفت که چگونه از ماجیول SunFounder ESP32 با حساس(حس کننده) DHT11 یا DHT22 برای اندازهگیری دما و رطوبت استفاده کنیم. این پروژه به ما این امکان را میدهد که دادههای حساس(حس کننده) را در دستگاههای موبایل یا مرورگرهای خود از طریق وایفای بخوانیم و قابلیتهای ESP32 را به عنوان یک سرور وب نمایش دهیم. ما ESP32 را راهاندازی خواهیم کرد، اجزا را به درستی متصل خواهیم کرد و شِفر (کود) لازم را برای راهاندازی روان همه چیز خواهیم نوشت (در ویدیو در :15).
esp32-51-dht-wifi
میکروکنترلر ESP32 یک دستگاه قدرتمند با Wi-Fi و Bluetooth داخلی است. این امکان را فراهم میکند تا به اینترنت متصل شویم و دادههای حساس(حس کننده) را به صورت بیسیم ارسال کنیم. حساس(حس کننده) DHT دما و رطوبت را اندازهگیری کرده و سپس بر روی یک صفحه وب که از طریق آدرس IP ESP32 قابل دسترسی است، نمایش داده میشود. این تنظیمات برای نظارت بر شرایط محیطی به صورت دور از دسترس ایدهآل است.
توضیحاتی درباره سختافزار
برای این پروژه، ما از اجزای اصلی زیر استفاده خواهیم کرد:
میکروکنترلر ESP32:این هسته پروژه است که اتصال Wi-Fi را مدیریت میکند و به عنوان یک سرور وب برای نمایش دادههای حساس(حس کننده) عمل میکند.
حساس(حس کننده) DHT11 یا DHT22این سنسورها دما و رطوبت را اندازهگیری میکنند. DHT11 برای برنامههای اساسی مناسب است، در حالی که DHT22 دقت بهتری و دامنه وسیعتری را ارائه میدهد.
حساس(حس کننده) DHT با ESP32 از طریق یک پایه دادهی واحد ارتباط برقرار میکند. این حساس(حس کننده) دما و رطوبت را در قالب دیجیتال ارسال میکند که ESP32 میتواند به راحتی آن را تفسیر کند. سپس ESP32 یک صفحه وب میزبانی میکند که این خوانشها را به صورت آنی نمایش میدهد.
جزئیات برگه مشخصات
تولیدکننده
آدافرودیت
شماره قطعه
دی اتچ تی ۱۱/دی اتچ تی ۲۲
ولتاژ منطق/ورودی و خروجی
۳.۳ ولت - ۵.۵ ولت
ولتاژ تأمین
۳.۳ ولت - ۵.۵ ولت
جریان خروجی (به ازای هر کانال)
۰.۵ میلیآمپر (بهطور متوسط)
جریان اوج (به ازای هر کانال)
۲.۵ میلی آمپر (حداکثر)
زمان پاسخدهی
۱ ثانیه (معمولی)
محدوده رطوبت
20٪ تا 90٪ رطوبت نسبی
دامنه دما
-۴۰°C تا ۸۰°C
بسته
DIP-4
اطمینان حاصل کنید که حساس(حس کننده) DHT به پایه GPIO صحیح بر روی ESP32 متصل است.
از مقاومتهای Pull-up برای تثبیت خط داده استفاده کنید.
به ولتاژ منبع تغذیه توجه کنید؛ هم DHT11 و هم DHT22 در ۳.۳ ولت به خوبی کار میکنند.
سیمکشی را کوتاه نگهدارید تا از کاهش کیفیت سیگنال جلوگیری شود.
بررسی نصب صحیح کتابخانه برای سنسورهای DHT در محیط توسعه آردوینو.
دستورالعملهای سیمکشی
ESP32-28_dht_temperature-sensor-wiring
برای اتصال حساس(حس کننده) DHT به ESP32، پایههای زیر را به هم متصل کنید:
سرزمین حساس(حس کننده) DHT:به پایه GND روی ESP32 متصل شوید.
دادههای حساس(حس کننده) DHT:به GPIO 14 در ESP32 وصل شوید (این در شِفر (کود) به عنوانDHTPIN).
اطمینان حاصل کنید که مقاومت صحیح (معمولاً 4.7kΩ) بین VCC و پایانه داده متصل شده است تا سیگنال به درستی حفظ شود. اگر از DHT22 استفاده میکنید، به سادگی تغییری درDHTTYPEدر شِفر (کود) ازDHT11بهDHT22برای سازگاری با تفاوتهای ویژگیهای حساس(حس کننده).
نمونههای شِفر (کود) و راهنمایی
در شِفر (کود)، ما با از جمله کردن کتابخانههای لازم و تعریف چند شناسه کلیدی شروع میکنیم. به عنوان مثال،refreshبه ۳ ثانیه تنظیم شده است، که تعیین میکند دما و رطوبت چه زمانی بهروزرسانی میشوند.
const int refresh=3; // read every 3 seconds
boolean showSerial = true; // true or false
TheshowSerialاین متغیر به ما این امکان را میدهد که کنترل کنیم آیا خوانشها به مانیتور سری چاپ شوند یا خیر. سپس، ما پایه حساس(حس کننده) و نوع آن را تعریف میکنیم:
#define DHTPIN 14 // Set the pin connected to the DHT11 data pin
#define DHTTYPE DHT11 // DHT 11
DHT dht(DHTPIN, DHTTYPE);
اینجا، راDHTیک شیء ایجاد میشود که به پایه مشخص شده و نوع حساس(حس کننده) مرتبط است. تابع اصلی برای ارسال دادههای دما از طریق وب به عنوان تعریف میشودsendTemp():
این عملکرد یک صفحه HTML ایجاد میکند که خوانشهای دما و رطوبت را نمایش میدهد. صفحه بر اساسrefreshفاصلهای که قبلاً تعریف شده است. برای جزئیات کامل شِفر (کود)، لطفاً به شِفر (کود) کامل بارگذاری شده در پایین مقاله مراجعه کنید.
نمایش / چه انتظاری باید داشت
DHT_مرورگر_Wifi
پس از بارگذاری شِفر (کود) روی ESP32، باید آدرس IP در نمایشگر مسلسل نمایش داده شود. یک مرورگر وب باز کنید و آدرس IP را وارد کنید تا خوانشهای دما و رطوبت را مشاهده کنید. مقادیر هر ۳ ثانیه بهروز میشوند و دادههای واقعی زمان را ارائه میدهند (در ویدئو در ۱۲:۳۰).
از افتهای رایج احتیاط کنید، مانند اطمینان از اینکه ESP32 و دستگاه شما به یک شبکه Wi-Fi متصل هستند. اگر با مشکلاتی مواجه شدید، سیمکشی را بررسی کرده و اطمینان حاصل کنید که حساس(حس کننده) DHT به درستی کار میکند.