آردوینو اینترنت اشیا IOT برد Esp32 برد ESP8266 برد Nodemcu خانه هوشمند نمایشگر OLED

نمایش دما رطوبت با سنسور DHT22 و OLED با برد ESP32 و ESP8266

نمایش دما در OLED با 8266/ESP 32
نوشته شده توسط CiferTech

پیش از این روش‌های راه اندازی سنسور دما رطوبت و همچنین نمایشگر OLED در دیجی اسپارک منتشر شده است. اما در این آموزش قصد داریم توسط برد ESP32 و ESP8266 اقدام به راه اندازی سنسور دما رطوبت کنیم. در این پروژه دما رطوبت محیط توسط سنسور DHT22 سنجش شده و سپس روی نمایشگر OLED نمایش داده می‌شود. به عبارتی توسط oled با برد ESP32 گجت کوچک جهت مانیتور کردن دما رطوبت طراحی میکنیم. در ادامه این آموزش با مرجع تخصصی آردوینو به زبان فارسی، دیجی اسپارک همراه باشید.

 


برد ESP32


تراشه ESP32 نسل پیشرفته ESP8266 است. یکی از تفاوت‌های آن بلوتوث داخلی‌اش است. همچنین دارای هسته وایفای ۲,۴ گیگا هرتزی و بلوتوث داخلی تولید شده با تکنولوژی ۴۰ نانومتری شرکت TSMC است. این ماژول دارای بهترین کارایی در مصرف انرژی بوده و با کمترین مصرف جریان برق بهترین نتیجه را برای ما به همراه دارد. اگر بخواهیم دقیق‌تر به این برد نگاه کنیم باید بگوییم تراشه‌ای است که پلتفرم NodeMCU در آن پیاده سازی شده که به این نوع چیپ ها System on a chip microcontrollers هم گفته می‌شود.

برد Nodemcu بر پایه تراشه ESP32 و ESP8266 - دیجی اسپارک

 


سنسور دما رطوبت DHT22


برای سنجش دما رطوبت سنسورهای مختلفی طراحی شده است. اما سنسورهای DHT22 یکی از بهترین نوع برای اندازه گیری دما و رطوبت هستند. از دو بخش رطوبت خازنی و یک مقاومت گرمایی تشکیل شده اند، همچنین یک واحد مبدل آنالوگ به دیجیتال در DHT22 وجود دارد، که خروجی دیجیتال تولید میکند که کاربر می توانید از آن در میکروکنترلرها از آن برای خواندن مقادیر استفاده کند.

برخی از ویژگی‌های سنسور DHT22

  • ولتاژ عملیاتی ۳ تا ۵ ولت
  • مناسب برای رطوبت ۰ تا ۱۰۰% همچنین با دقت ۲ تا ۵%
  • حداکثر جریان مصرفی ۲٫۵ میلی آمپر
  • مناسب برای دمای ۴۰- تا ۱۲۵ درجه سانتی گراد

سنسور و ماژول DHT22 - دیجی اسپارک

 


برد ESP8266


ماژول های ESP32 و ESP8266 ساخت شرکت Espressif Systems از در دسترس ترین تراشه های اینترنت اشیا هستند. و همچنین قیمت پایین تری نسبت به دیگر تراشه های اینترنت اشیا دارند و برای توسعه کد های آن میتوانیم از نرم افزار Arduino استفاده کنیم که دسترسی آسان تری را برای کاربر فراهم میکند.

برخی از ویژگی های ESP8266

  • ماژول شبکه و میکروکنترولر ESP8266 یکی از معروفترین و ارزان ترین و دردسترس ترین تراشه های اینترنت اشیا میباشد.
  • این ماژول با دارا بودن میکروکنترولر قدرتمند بهمراه ارتباط شبکه WIFI داخلی،
  • پشتیبانی کامل فول استک TCP/IP
  • و همچنین با ارائه رابط های سخت افزاری کافی گزینه مناسبی برای کاربرد های کوچک و کم مصرف اینترنت اشیا میباشد.
  • این میکروکنترولر در سال ۲۰۱۴ به بازار عرضه گردید.

افزودن سیستم احراز هویت به وب سرور ESP32/8266

 


ماژول نمایشگر Oled 1306


معمولا در پروژه های اینترنت اشیا و دیگر پروژه های امبدد از برای نمایش متن و مقادیر مختلف از نمایشگر های Oled استفاده می شود، این ماژول ها بدر انواع مختلق بسته به نوع ذرایور  اندازه یافت می شوند که یکی از پرطرفدار ترین آن ها SSD1306 می باشد، این نوع از Oled ها معمولا در اندازه های ۰٫۹۶ و ۱٫۳ اینچ ساخته می شوند همچنین پروتکل ارتباطی Oled ها I2C می باشد.

نمایش دما در OLED با 8266/ESP 32

 


وسایل مورد نیاز


برد Nodemcu ESP32

برد Nodemcu ESP8266

نمایشگر OLED

سنسور DHT22

۱۰k مقاومت

نمایش دما در OLED با 8266/ESP 32 - دیجی اسپارک

 


شماتیک و اتصالات


اگر از برد nodemcu 32 استفاده می کنید طبق شماتیک زیر پیش بروید. برای راه اندازی oled با برد ESP32 به این که پین SDA به GPIO 21 و SDK به GPIO 22 متصل می گردد، همچنین GPIO 14 نیز به سنسور DHT متصل می گردد. توجه داشته باشد از nodemcu 8266 استفاده می کنید اتصالات تفاوتی ندارند بجز اینکه SDA به GPIO4 و SDK به GPIO5 متصل می گردد.

اتصالات ماژول OLED و سنسور دما رطوبت به برد Nodemcu - دیجی اسپارک

 


نصب افزونه و کتابخانه مورد نیاز


ابتدا در نرم افزار Arduino IDE اقدام به نصب کتابخانه مرجع سنسور های DHT می کنیم. مراحل زیر را دنبال کنید:

  1. این مسیر را دنبال کنید Sketch Include Library > Manage Libraries
  2. کلمه DHT sensor را جستجو کنید.
  3. کتابخانه را نصب کنید.

وب سرور ESP32: مانیتورینگ دما با سنسور DHT22

  • در ادامه با جستجوی کلمه “ssd1306” اقدام به نصب این کتابخانه کنید.

نمایش دما در OLED با 8266/ESP 32

  • سپس کلمه “GFX” را جستجو کنید و آن را نصب کنید.

نمایش دما در OLED با 8266/ESP 32

 

  • در نهایت با جستجوی کلمه “Adafruit Unified Sensor” این کتابخانه را نیز نصب کنید.

نمایش دما در OLED با 8266/ESP 32

 


نصب افزونه برد ESP32


 

  • ابتدا در نرم افزار Arduino IDE به مسیر FilePreferences بروید.

وب سرور ESP32: کنترل نور LED

  • لینک زیر را در بخش مشخص شده قرار دهید.

وب سرور ESP32: کنترل نور LED

  • سپس به مسیر Tools > Board > Boards Manager بروید.

وب سرور ESP32: کنترل نور LED

  • در بخش board manager  کلمه ESP32  را سرچ کنید و بر روی install  کلیک کنید.

وب سرور ESP32: کنترل نور LED

 


کد پروژه


در ابتدای کد کتابخانه هایی که نصب کرده بودیم را اضافه می کنیم.

 

در این بخش اگر از Oled با اندازه متفاوتی استفاده می کنید تغییرات را اعمال کنید.

 

در این بخش سنسور ذمایی را که استفاده می کنیم را مشخص می کنیم.

 

کد کامل پروژه

 

جهت دسترسی به این بخش، اشتراک اسپارکر پلاس تهیه کنید.

 

 


جمع بندی


در نهایت پس از آپلود کد و برقرای اتصالات دما و میزان رطوبت به درصد بر روی نمایشگر Oled به نمایش درمی آید، توجه داشته باشد که می توانید از سنسور های دمایی که در کد نام برده شده نیز استفاده کنید مانند DHT11 ولی ما در این پروژه تنها سنسور DHT22 را پوشش داده ایم، و همچنین برای استفاده از Oled با اندازه متفاوت باید اندازه دقیق آن در کد مشخص شود.

  • تنظیمات منوی tools در نرم افزار آردوینو نیز مانند تصویر زیر می باشد.

وب سرور ESP32: کنترل نور LED

 

چنانچه در مراحل راه اندازی و انجام این پروژه با مشکل مواجه شدید، بدون هیچ نگرانی در انتهای همین پست، به صورت ثبت نظر سوالتان را مطرح کنید. من در سریع‌ترین زمان ممکن پاسخ رفع مشکل شما را خواهم داد. همچنین اگر ایرادی در کدها و یا مراحل اجرایی وجود دارند می‌توانید از همین طریق اطلاع رسانی کنید.

 

در پایان نظرات و پیشنهادات خود را با ما درمیان بگذارید و با اشتراک گذاری این آموزش در شبکه های اجتماعی , از وبسایت دیجی اسپارک حمایت کنید.

 

درباره نویسنده

CiferTech

سلام، معمولا من رو با اسم سایفر می شناسند، دانشجوی الکترونیک هستم، و علاقمند به هک، البته این لفظ همیشه به این معنا نیست که کارهایی که به اصطلاح غیر قانونی هستند رو انجام بدم، هک برای من مثل حل کردن یک پازل یا پیدا کردن راه حل در موقعیت مختلف هست و در کل یک ابزار قدرتمند. پس دوست دارم از هر چیزی سر دربیارم و اطلاعاتی داشته باشم :)

تبادل نظر و رفع عیب با ثبت دیدگاه