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

ایستگاه هواشناسی وای‌فای با انرژی خورشیدی

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

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

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

قلب تپنده این مدار، برد محبوب Wemos D1 Mini (مبتنی بر تراشه وای‌فای ESP8266) هست که در کنار سنسور دقیق BME280 و یه مدار شارژ خورشیدی، یه سیستم پایدار و بی‌نقص رو تشکیل می‌ده. پس وسایلت رو آماده کن تا بریم سراغ ساخت این ایستگاه هواشناسی جذاب!

  1. نسخه الکترونیکی
  2. نسخه چاپی - سیاه‌وسفید
  3. نسخه چاپی - رنگی

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

  • برد Wemos D1 Mini Pro
  • ماژول شارژر باتری لیتیومی TP4056
  • سنسور دما، رطوبت و فشار هوا BME280
  • پنل خورشیدی کوچک (حدود 5 ولت)
  • برد سوراخ‌دار (Perforated Board)
  • ترمینال‌های پیچی و اسپیسرهای پلاستیکی
  • باتری لیتیوم یون سایز 14500
  • جاباتری سایز قلمی (AA)
  • سیم‌های جامپر یا سیم نمره 22
  • چسب قطره‌ای، چسب نواری محکم و چسب حرارتی
  • فیلامنت پرینتر سه‌بعدی (مثل PLA)
مرحله ۱

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

برای ساخت این ایستگاه هواشناسی به یه سری قطعات الکترونیکی نیاز داریم. قطعه اصلی ما برد Wemos D1 Mini Pro هست که به خاطر داشتن وای‌فای و ابعاد کوچیکش یه انتخاب عالی برای پروژه‌های اینترنت اشیاست. برای شارژ باتری از ماژول معروف TP4056 استفاده می‌کنیم و اطلاعات آب‌وهوا رو هم با سنسور BME280 می‌خوانیم.

یه پنل خورشیدی کوچیک، برد سوراخ‌دار، باتری لیتیومی 14500 (که هم‌اندازه باتری قلمی هست) به همراه جاباتری، مقداری سیم، اسپیسر و ترمینال پیچی هم لازم داریم.

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

اگر پرینتر سه‌بعدی نداری، می‌تونی فایل‌های قاب رو به شرکت‌های خدمات پرینت سه‌بعدی بدی تا برات چاپ کنن. حالا که وسایل رو آماده کردی، بریم سراغ ساخت و مونتاژ مدار.

مرحله ۲

سیستم تامین انرژی با پنل خورشیدی

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

برای باتری به جای مدل‌های بزرگ 18650، از مدل 14500 استفاده کردیم چون جمع‌وجوره و دقیقا تو جاباتری‌های معمولی سایز قلمی جا می‌شه و باعث می‌شه کل پروژه کوچیک‌تر دربیاد.

درباره ماژول TP4056 باید بدونی که تو دو مدل ساخته می‌شه: یکی با تراشه محافظ باتری و یکی بدون اون. پیشنهاد می‌کنم حتما مدلی رو بخری که مدار محافظ (Protection) داره. ماژول شارژر TP4056 دقیقا چه‌کار می‌کند؟

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

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

مرحله ۳

سنجش دقیق اطلاعات آب‌وهوا با سنسور

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

اما تو این پروژه ما رفتیم سراغ یه مدل حرفه‌ای‌تر یعنی سنسور BME280. این قطعه یه سنسور پیشرفته از شرکت بوش (Bosch) هست که نسل جدیدتر سنسورهای قبلی محسوب می‌شه. دقتش تو اندازه‌گیری دما و فشار فوق‌العاده است و زمان پاسخ‌دهی خیلی سریعی داره.

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

مرحله ۴

نصب آنتن خارجی برای برد بیشتر

برد Wemos D1 Mini Pro روی خودش یه آنتن سرامیکی داره که کار راه‌اندازه، اما برای اینکه دستگاه بتونه از فضای باز با روتر وای‌فای داخل خونه ارتباط بگیره، بهتره از یه آنتن خارجی تقویت‌کننده استفاده کنیم. روی این برد یه سوکت مخصوص اتصال آنتن هست، ولی قبل از استفاده باید مسیر سیگنال رو از آنتن داخلی به این سوکت تغییر بدی.

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

مرحله ۵

لحیم‌کاری پین‌هدرها

بردهای الکترونیکی معمولا با پین‌هدرهای لحیم‌نشده به دستت می‌رسن تا بتونی بر اساس نیازت اون‌ها رو مونتاژ کنی. اول از همه باید دو ردیف پین‌هدر نری رو روی پایه‌های برد Wemos لحیم کنی. حواست باشه پایه‌ها کاملا صاف باشن.

بعد برو سراغ ماژول BME280 و یه پین‌هدر 4 تایی نری هم به اون لحیم کن. حالا قطعات اصلی ما مثل عکس‌ها برای نصب روی برد سوراخ‌دار آماده هستن.

مرحله ۶

آماده‌سازی برد سوراخ‌دار و پایه‌ها

حالا باید برد Wemos و بقیه قطعات رو روی برد سوراخ‌دار قرار بدیم. برد Wemos رو موقتا روی برد سوراخ‌دار بذار تا جای دقیق پایه‌هاش مشخص بشه.

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

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

مرحله ۷

جاگذاری ماژول شارژر TP4056

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

برای اتصال سیم‌های پنل خورشیدی هم یه ترمینال پیچی کوچیک نزدیک پورت میکرو یو‌اس‌بی ماژول شارژر لحیم کن تا بعدا وصل کردن پنل راحت باشه.

مرحله ۸

سیم‌کشی و اتصالات نهایی مدار

بریم سراغ بخش اصلی مدار، یعنی سیم‌کشی! چند تا سیم جامپر با رنگ‌های مختلف بردار و سر و ته‌شون رو لخت کن. طبق نقشه شماتیک بالا این اتصالات رو انجام بده: پین 3.3 ولت سنسور BME280 به Vin روی Wemos، و پایه GND به GND.

برای دیتای سنسور، پایه SCL به پین D1 و پایه SDA به پین D2 برد Wemos وصل می‌شن. برای شارژر خورشیدی هم پایه‌های مثبت و منفی ترمینال پنل خورشیدی رو به پدهای ورودی کنار پورت USB ماژول وصل کن. پایه‌های B+ و B- ماژول رو هم به ترمینال پیچی باتری لحیم کن.

حالا برای تغذیه برد اصلی، خروجی‌های Out+ و Out- ماژول شارژر رو به ترتیب به پایه‌های 5 ولت و GND برد Wemos متصل کن. راستی نیازی نیست بین پنل خورشیدی و شارژر دیود قرار بدی، چون خود ماژول TP4056 تو ورودی‌اش دیود محافظ داره.

مرحله ۹

طراحی بدنه و قاب دستگاه

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

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

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

مرحله ۱۰

پرینت سه‌بعدی قطعات

حالا وقتشه که فایل‌های سه‌بعدی بدنه رو بفرستیم برای پرینتر. فایل‌ها رو تو یه نرم‌افزار اسلایسر (مثل Cura) باز کن تا تنظیمات چاپ رو انجام بدی. بهتره از فیلامنت‌های رایج و مقاوم مثل PLA با رنگ دلخواهت استفاده کنی.

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

بهترین تنظیمات برای این پرینت به این صورته: سرعت چاپ 40 میلی‌متر بر ثانیه، ارتفاع لایه 0.2 میلی‌متر، تراکم داخلی (Infill) 15 درصد، دمای نازل 195 درجه و دمای بستر چاپ 55 درجه سانتی‌گراد.

مرحله ۱۱

جاگذاری پنل خورشیدی و جاباتری

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

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

مرحله ۱۲

نصب پایه آنتن

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

در نهایت خود آنتن رو بردار و به صورت پیچی روی این سوکت ببند.

مرحله ۱۳

نصب مدار اصلی داخل قاب

بریم سراغ مداری که لحیم‌کاری کرده بودیم. چهار تا اسپیسر پلاستیکی رو به چهار گوشه برد سوراخ‌دار پیچ کن. کف قاب چهار تا شیار مخصوص برای این اسپیسرهای قرار داره.

کمی چسب قطره‌ای داخل این شیارها بریز و برد رو با دقت سر جاش قرار بده. مطمئن شو که اسپیسرها دقیقا روی شیارها نشستن. کمی صبر کن تا چسب خشک بشه و برد کاملا محکم بشه تا در اثر جابه‌جایی تکون نخوره.

مرحله ۱۴

بستن درپوش قاب

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

در نهایت برای محکم‌کاری می‌تونی از یه نوار چسب محکم در قسمت پایین قاب استفاده کنی تا مطمئن بشی درپوش تو شرایط محیطی باز نمی‌شه.

مرحله ۱۵

برنامه‌نویسی و فعال‌سازی خواب عمیق (Deep Sleep)

برای برنامه‌نویسی برد Wemos باید از محیط آردوینو (Arduino IDE) استفاده کنی. اول مطمئن شو که پکیج بردهای ESP8266 رو نصب کردی. تنظیمات برد رو روی فرکانس 80 مگاهرتز تنظیم کن. اندازه حافظه فلش رو هم روی 4 مگابایت (با 3 مگابایت SPIFFS) تنظیم کن و سرعت آپلود رو روی 921600 قرار بده.

تراشه ESP8266 مصرف برق نسبتا بالایی داره. اگه بخوای دستگاهت فقط با یه باتری کوچیک روزها و ماه‌ها کار کنه دو تا راه داری: یا از باتری خیلی بزرگ استفاده کنی...

یا اینکه خیلی هوشمندانه دستگاه رو به حالت خواب بفرستی! گزینه دوم منطقی‌تره. با حالت خواب عمیق (Deep Sleep)، برد بعد از فرستادن اطلاعات خاموش می‌شه و دوباره سر زمان مشخص بیدار می‌شه. فقط یادت باشه برای این قابلیت، حتما باید پین D0 روی برد رو به پین RST متصل کنی تا برد بتونه خودش رو ریستارست کنه.

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

مرحله ۱۶

نصب اپلیکیشن و کتابخانه Blynk

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

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

نوع برد رو روی ESP8266 تنظیم کن. بعد از ساخت پروژه، اپلیکیشن یه کد تأیید (Auth Token) به ایمیلت می‌فرسته که خیلی مهمه و باید اون رو تو کدهای آردوینو وارد کنی تا ارتباط بین برد و گوشیت برقرار بشه.

مرحله ۱۷

طراحی داشبورد اختصاصی در بلینک

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

مثلا برای دما، اسمش رو بذار Temperature، پین رو روی حالت مجازی (Virtual) و شماره V1 تنظیم کن و بازه اعداد رو بین 0 تا 50 قرار بده. همین کار رو برای رطوبت و فشار هوا با پین‌های مجازی دیگه انجام بده.

در آخر می‌تونی یه ویجت نمودار (Graph) هم اضافه کنی تا روند تغییرات رو در طول زمان ببینی. حتی می‌تونی رنگ‌های هر ویجت رو به سلیقه خودت تغییر بدی تا داشبوردت دقیقا شبیه عکس بالا بشه.

مرحله ۱۸

ارسال داده‌ها به پلتفرم ThingSpeak

اگه دوست داری دیتای آب‌وهوا روی فضای ابری هم ذخیره بشه تا همیشه بتونی آنالیزشون کنی، می‌تونی از سایت ThingSpeak استفاده کنی. تو این سایت ثبت‌نام کن و یه کانال جدید بساز. فیلدهای 1 تا 3 رو به ترتیب به دما، رطوبت و فشار اختصاص بده. تو صفحه کانالت روی تب API Keys کلیک کن و کلید Write API Key رو کپی کن.

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

مرحله ۱۹

تست نهایی ایستگاه هواشناسی

وقت تست نهایی رسیده! دستگاه رو ببر بیرون زیر نور آفتاب؛ می‌بینی که چراغ قرمز روی ماژول TP4056 روشن می‌شه و باتری شروع به شارژ شدن می‌کنه. حالا اپلیکیشن بلینک رو روی گوشیت باز کن. اگه همه‌چیز درست باشه، می‌بینی که عقربه‌ها به صورت زنده دما، رطوبت و فشار رو نشون می‌دن و نمودار شروع به رسم می‌کنه.

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

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

INO Solar_Powered_Weather_Station.ino
INO Solar_Powered_Weather_Station_2.ino
INO Solar_Weather_Station_ThingSpeak.ino

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

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

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

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

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

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