ورکشاپ آموزشی - آیسی مدار
رفتن به محتوا

گجت رومیزی هواشناسی با برد ESP8266 و نمایشگر OLED

ابزار و گجت
۰ نظر
۱۲ نفر
کد ۴۳۵۸

داشتن یه نمایشگر کوچیک و جمع‌وجور روی میز کار که همیشه وضعیت لحظه‌ای آب‌وهوا رو بهت نشون بده، هم خیلی کاربردیه و هم ظاهر جذابی به محیط میده. گجت‌های هواشناسی امروزه حسابی پرطرفدار شدن و خبر خوب اینه که نیازی نیست برای داشتنشون هزینه زیادی بکنی؛ می‌تونی خودت یکی از اونا رو با امکانات عالی بسازی.

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

قلب تپنده این گجت جذاب، تراشه محبوب و قدرتمند ESP8266 هست. توی این آموزش دو روش مختلف رو برای ساختش بررسی می‌کنیم؛ یکی با استفاده از ماژول فشرده ESP-01 و دومی با استفاده از برد پرکاربرد NodeMCU که کار رو حسابی راحت می‌کنه. پس وسایلت رو آماده کن تا بریم سراغ ساخت این پروژه دوست‌داشتنی!

  1. نمایش وضعیت لحظه‌ای آب‌وهوا
  2. طراحی فشرده با نمایشگر سیاه‌سفید جذاب
  3. ارتباط بی‌سیم و پایدار با اینترنت
مرحله ۱

قطعات و ابزارهای مورد نیاز

برای ساخت این گجت به چند تا قطعه الکترونیکی ساده نیاز داری. مغز اصلی مدار ماژول وای‌فای ESP8266-01 هست، البته می‌تونی از برد NodeMCU هم استفاده کنی که کار رو خیلی راحت‌تر می‌کنه.

برای نمایش اطلاعات به یه نمایشگر OLED نیاز داریم. در کنار این‌ها یه رگولاتور ولتاژ AMS1117، چند تا کلید فشاری و کشویی، مقاومت‌های 10 کیلو و 330 اهم، پین‌هدر و یه برد سوراخ‌دار (پروتوبورد) برای پیاده‌سازی مدار هم لازمه. ابزارهای لحیم‌کاری مثل هویه، سیم‌چین، سیم‌لخت‌کن و مقداری سیم جامپر رو هم دم دستت بذار تا بریم سراغ بخش جذاب مونتاژ.

مرحله ۲

طراحی و مونتاژ مدار الکترونیکی

حالا باید مدار رو طبق شماتیک روی یه برد سوراخ‌دار پیاده کنی. خوبی این مدار اینه که خودش یه پروگرامر کامل برای ماژول ESP8266-01 محسوب می‌شه و می‌تونی برای پروژه‌های دیگه‌ت هم ازش استفاده کنی. قلب مدار همون ماژول وای‌فایه که کنارش نمایشگر OLED و چند تا قطعه محافظتی و کنترلی قرار می‌گیرن.

رگولاتور AMS1117 ولتاژ 5 ولت ورودی رو به 3.3 ولت که برای تغذیه استاندارد ماژول نیازه تبدیل می‌کنه. یه کلید فشاری برای ریست کردن برد و یه کلید کشویی برای تغییر حالت بین مود کاری (Normal Mode) و مود پروگرام (Program Mode) در نظر گرفته شده.

مقاومت‌ها برای پول‌آپ کردن و محدود کردن جریان استفاده می‌شن و یه هدر هم برای اتصال مبدل سریال (مثل CP2102) به منظور برنامه‌ریزی مدار تعبیه شده.

برای تغذیه گجت می‌تونی از یه باتری لیتیومی استفاده کنی تا دستگاهت کاملا پرتابل بشه. البته اگر دوست داشتی کار خیلی تمیزتر دربیاد، می‌تونی یه برد مدار چاپی (PCB) اختصاصی هم براش طراحی کنی. قطعاتی که روی برد قرار می‌گیرن شامل این موارد هستن: رگولاتور ولتاژ، خازن‌های 100 نانوفاراد برای نویزگیری. خازن‌های الکترولیت 10 میکروفاراد برای تثبیت ولتاژ.

دقت کن که مسیرهای ارتباطی رو با حوصله لحیم کنی تا بعدا تو ارتباط با اینترنت دچار قطعی و مشکل نشی.

مرحله ۳

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

برای راه‌اندازی این گجت به محیط برنامه‌نویسی آردوینو (Arduino IDE) نیاز داری. اول از همه باید کتابخونه‌های مربوط به پروژه رو نصب کنی. کتابخونه Json Streaming Parser برای تحلیل داده‌های دریافتی از اینترنت و کتابخونه ESP8266 Oled Driver برای راه‌اندازی گرافیکی نمایشگر استفاده می‌شن. این موارد رو می‌تونی به راحتی از بخش Library Manager آردوینو پیدا و نصب کنی.

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

مرحله ۴

دریافت کلید API برای اطلاعات آب‌وهوا

این گجت اطلاعات زنده آب‌وهوا رو از سرویس‌های آنلاین هواشناسی می‌گیره. برای این کار باید یه کلید API اختصاصی داشته باشی. دریافت نسخه پایه این کلیدها از بیشتر سرویس‌های هواشناسی کاملا رایگانه و برای پروژه‌های شخصی کفایت می‌کنه. کافیه وارد سایت یکی از این ارائه‌دهنده‌های اطلاعات هواشناسی بشی و یه حساب کاربری رایگان بسازی.

ایمیل، رمز عبور و نام کاربریت رو وارد کن و بعد از دریافت ایمیل تایید، حسابت رو فعال کن. حالا با حسابی که ساختی وارد پنل کاربری شو. به بخش دریافت کلید API برو.

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

مرحله ۵

تنظیمات و شخصی‌سازی کدهای برنامه

حالا که کلید API رو ساختی، فایل کد رو تو محیط آردوینو باز کن. اول از همه، کلید API رو تو متغیر مربوطه‌اش کپی کن. بعد باید نام (SSID) و رمز عبور شبکه وای‌فای خونه رو وارد کنی تا گجت بتونه به اینترنت وصل بشه.

در نهایت نام شهر و کشورت رو دقیقا مطابق با استانداردهای سایت هواشناسی وارد کن و میزان اختلاف زمان محلی (UTC offset) رو برای منطقه خودت تنظیم کن تا ساعت دستگاه دقیق باشه.

مرحله ۶

اتصال پروگرامر و آپلود کدها

برای آپلود کد روی ماژول ESP-01 باید از یه مبدل USB به سریال مثل CP2102 استفاده کنی. اتصالات خیلی ساده‌ست؛ پایه‌های VCC و GND پروگرامر رو به تغذیه و زمین ماژول وصل کن. پایه Tx پروگرامر رو به Rx ماژول و پایه Rx پروگرامر رو به Tx ماژول بزن.

حالا کلید کشویی روی مدار رو روی حالت پروگرام قرار بده. تو نرم‌افزار آردوینو، برد رو روی Generic ESP8266 Module تنظیم کن و دکمه آپلود رو بزن.

مرحله ۷

تست و راه‌اندازی اولیه گجت

آپلود که تموم شد، پروگرامر رو از مدار جدا کن. حالا کلید کشویی رو برگردون به حالت عادی. وقتشه که تغذیه مدار رو با یه باتری لیتیومی یا آداپتور وصل کنی.

چند ثانیه بعد از روشن شدن، ماژول به شبکه وای‌فای متصل می‌شه و می‌بینی که صفحه تاریک OLED روشن می‌شه و پارامترهای آب‌وهوایی رو با آیکون‌های جذاب بهت نشون می‌ده.

مرحله ۸

روش جایگزین و ساده‌تر با برد NodeMCU

اگر حوصله سیم‌کشی‌های شلوغ و استفاده از ماژول ESP-01 رو نداری، یه راه خیلی بی‌دردسرتر هست؛ استفاده از برد NodeMCU. این برد یه پلتفرم اینترنت اشیای کامل بر پایه تراشه ESP-12 هست که خودش پورت میکرو USB داره. یعنی برای پروگرام کردنش به هیچ مبدل خارجی نیاز نداری و با همون کابل شارژر موبایل به کامپیوتر وصل می‌شه.

برای ساخت مدار با این برد، کافیه پایه‌های تغذیه (3.3 ولت و GND) نمایشگر رو به پایه‌های مشابه روی برد متصل کنی. پایه SDA نمایشگر رو به پین D5 و پایه SCL رو به پین D6 برد NodeMCU وصل کن. حالا کابل USB رو به برد و کامپیوتر بزن و تنظیمات کد رو مثل مراحلی که قبلا گفتیم انجام بده.

در نهایت تو نرم‌افزار آردوینو برد رو روی NodeMCU 1.0 تنظیم کن و دکمه آپلود رو بزن. به همین راحتی یه گجت هواشناسی بی‌نقص ساختی!

مرحله ۹

ساخت قاب و نتیجه‌گیری پروژه

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

حالا گجت هواشناسی اختصاصی تو آماده‌ست! داشتن یه نمایشگر کوچیک که همیشه وضعیت آب‌وهوا رو نشون می‌ده، روی میز کار خیلی جذابه. امیدوارم از ساخت این پروژه دوست‌داشتنی و کاربردی لذت برده باشی.

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

فایل‌های پیوست

ZIP ESP8266_meteo_oled_V2 - CADCAM.ZIP
3DS ESP8266_meteo_oled_V2r.3DS
ZIP ESP8266 Weather Widget.zip

تو میتونی اولین سازنده باشی!

اگه پروژه رو ساختی به اشتراک بزار و اعتبار هدیه بگیر

این آموزش با استانداردهای اختصاصی آیسی‌مدار بازنویسی و بهینه‌سازی شده و تمامی حقوق انتشار آن متعلق به این مجموعه است و در صورت کپی یا بازنشر پیگرد قانونی خواهد داشت.

آموزش‌های مشابه

گفتگو‌های کاربران

هنوز نظری ثبت نشده؛ تو شروع کن!