آموزش Espآموزش ESP32آموزش اینترنت اشیاپروژه های Esp

سیستم بررسی کیفیت و میزان آب با esp32

کشور هند 16% از جمعیت کل دنیا را تشکل میدهد درحالیکه تنها 4% از منابع آب را در اختیار دارد. این وضعیت زمانی بدتر میشود که متوجه میشویم 70% از این منابع آبی آلوده هستند. در نتیجه هند از نظر شاخص کیفیت آب که توسط Water Aid منتشر شده است، رتبه 120 را در میان 122 کشور دارد. هر ساله در هند 580937500000 لیتر آب به دلیل سرریز آب مخزن (هم مخزن هوایی و هم مخزن سد) هدر میرود. این مقدار بیش از 30% از میزان کل آب هدر رفته در هند را تشکیل میدهد.

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

مدیریت درست آب

مدیریت درست آب

من قصد دارم به کمک سه استراتژی کلیدی در مدیریت آب، یعنی محدودکردن مقدار آب دردسترس هر خانه، مانیتورینگ مقدار آب مصرفی هر خانواده و اتوماسیون پمپ آب برای متوقف کردن سرزیر مخزن (هم هوایی و هم مخزن سد)،  معضل هدر رفتن بی رویه آب را حل کنم. دستگاه من شامل تمام ویژگی های ذکرشده است و به خوبی میتواند مشکل اتلاف آب به دلیل سرریز مخزن را حل کند.

پیاده سازی

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

من از یک فلومتر دیگر نیز در انتهای مخزن هوایی استفاده میکنم تا بر مقدار آب مصرفی روزانه هر خانواده نظارت کنم. حال برای اتوماسیون پمپ های آب چهار سوئیچ شناور را به کار میگیرم. برای اندازه گیری سطح آب ( سطح بالاتر و پایین تر)، از دو سوئیچ در مخزن سد و دو سوئیچ هم در مخزن هوایی استفاده شده تا با شروع و یا پایان پمپاژ آب، از سرریز شدن آن جلوگیری کنند. بیایید با یک مثال درمورد این مطلب بیشتر بحث کنیم. فرض کنید که یک خانه مشخص، میتواند تا 500 لیتر آب را ذخیره کند. (250 لیتر در مخزن هوایی و 250 لیتر در مخزن سد) اما آبی که درحالت عادی به این خانه میرسد 700 لیتر است. (200 لیتر بیشتر از ظرفیت ذخیره سازی که درنهایت به دلیل سرریز مخزن هدر خواهد رفت.)

وقتی مخزن سد پر شد، پمپ شروع به کار کرده و با پمپاژ آب درون مخزن هوایی، سعی میکند باقی مانده آب را در آن ذخیره کند. وقتی مخزن هوایی نیز به طور کامل پر شد، شیربرقی از ورود آب بیشتر به مخزن سد جلوگیری میکند. سطوح بالاتر و پایین تر آب توسط سوئیچ های شناور تشخیص داده میشوند. پس تا اینجا دریافتیم که 500 لیتر از 700 لیتر تامین شده برای این خانواده در مخزن های سد و هوایی ذخیره میشود. 200 لیتر آب باقی مانده از سهمیه آن ها نیز به جای سرریز شدن و هدر رفتن، توسط کاربر ذخیره میشود که این فرآیند در اپلیکیشن تلفن همراه قابل مشاهده است. تمام این اندازه گیری ها و اتوماسیون پمپ، توسط میکروکنترلر اصلی این پروژه یعنی ESP32 کنترل خواهد شد. ESP32 داده آب مصرفی را از طریق اینترنت به پایگاه داده ابری ارسال میکند. یک کاربر (خانه)، با استفاده از اپلیکیشن تلفن همراه میتواند مصرف روزانه آب و همچنین مقدار آب ذخیره شده خود را رویت کند.

یک کاربر میتواند برای هر مناسبتی از طریق همین اپلیکیشن درخواست آب اضافی کند. من این سیستم را Water NET مینامم زیرا که این سیستم یک شبکه و یک پایگاه داده برای داده آب مصرفی ایجاد میکند.

پیش از ادامه مطلب، لطفا دیگر پروژه های مربوط به سیستم های مانیتورینگ آب را نیز مرور کنید:

  • تشخیص نشتی مخزن آب داغ با رزبری پای و ماژول های SPI
  • سیستم مانیتورینگ کیفیت آب هوشمند مبتنی بر اینترنت اشیا
  • هشدار نگهداری و مانیتورینگ فاضلاب مبتنی بر اینترنت اشیا
  • کنترل کننده از راه دور پمپ آب (اتوماتیک)

قطعات لازم برای Water NET

سخت افزار استفاده شده در پروژه

  • ESP32 (WROOM32)
  • سنسور جریان آب (SAIER  HZ21WA)
  • سوئیچ شناور
  • رله sugar cube (JIH JIK JQC-3FC/T73) دوازده ولت دی سی
  • رله برق (Elecfuture EF93-12)
  • رله جک
  • ترانزیستور BC745
  • LM7805
  • LED قرمز 5 میلی متری
  • LED سبز 5 میلی متری
  • LED آبی 5 میلی متری
  • RGB LED کاتد مشترک 5 میلی متری
  • نگهدارنده LED 5 میلی متری
  • مقاومت THT 100 اهم و 0.25 وات
  • شیربرقی (1/2 اینچ و 230 ولت)
  • سوکت SMPS و جک
  • کانکتور ترمینال بلندگو
  • گلند کابل (PG7)
  • سوکت AC شانزده آمپر
  • کانکتورهای relimate
  • سوئیچ های فشاری
  • روکش حرارتی 1N4007
  • خازن های الکترولیتی 1000 میکروفاراد-25 ولت
  • پیچ و مهره
  • کابل برق سه هسته ای 1.5 میلی متر مربع با دوشاخه و پریز
  • اندکپ PVC – یک و نیم اینچی

نرم افزار استفاده شده در پروژه

  • IDE آردوینو
  • فایربیس گوگل
  • Easy EDA
  • Kodular

انتخاب سخت افزار/ نرم افزار استفاده شده در پروژه

انتخاب سخت افزار

یک باکس PVC با ابعاد 8*10 اینچ را به عنوان محفظه این سیستم به کار میبرم. برای لحیم کاری تمام قطعات به جز رله، از فیبر سوراخ دار (ویروبورد) استفاده کردم. زیرا که رله نمیتواند با ویروبورد به خوبی کار کند. رله ها را به کمک چسب پارچه ای دوطرفه به مدار چسباندم.

برای تغذیه رله راه انداز پمپ آب و رله sugar cube که شیربرق را راه اندازی میکند، از یک رله جک استفاده میکنیم.

برای اتصال شیربرقی به باکس PVC از یک سوکت SMPS و جک در سمت راست باکس استفاده کردم. ESP32 میکروکنترلر مرکزی کل سیستم است. به دلیل تعداد پایه های GPIO بیشتر و همچنین قدرت پردازش بالاتر این بورد که در توسعه های بعدی این سیستم نیز به کار می آید، ESP32 را به NodeMCU ترجیح دادیم.

اگر در مورد این مطلب سوالی دارید در قسمت نظرات بپرسید

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

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

کل سیستم را به کمک یک ترانسفورمر کاهنده 230/12 ولت به همراه یک رکتیفایر (یکسوساز پل)، فیلتر و چند رگولاتور ولتاژ، تغذیه میکنیم. ولتاژ 230 ولت و فرکانس 50 هرتز از طریق یک کابل برقی 3 هسته ای 1.5 میلی متر مربع تامین میشود. من از یک گلند کابل PG7 برای قرار دادن این کابل درون باکس استفاده کردم. یک سوکت 16 آمپری سه پایه هم برای اتصال پمپ آب به باکس موجود است. ESP32 به دلیل داشتن قابلیت اتصال به وایفای، میتواند به اینترنت متصل شود. اما دریافت وایفای در هر خانه ای امکان پذیر نیست. پس از یک روتر LTE که درون خود یک سیم کارت داشته و یک شبکه hotspot را تامین میکند، استفاده کردم. چند سیم از روتر LTE را به LED نشانگر شبکه لحیم کرده و آن را به RGB LED که روی پنل بالایی قرار گرفته، متصل کردم.

LED های نشانگر

LED های نشانگر این پروژه به ترتیب زیر هستند:

  • Power LED- قرمز
  • وضعیت شبکه -RGB
  • وضعیت پمپ- سبز
  • وضعیت مخزن سد- آبی

انتخاب نرم افزار

من از IDE آردوینو برای برنامه نویسی بورد ESP32 استفاده کردم. این پلتفرم بسیار کاربرپسند بوده و یک کلکسیون گسترده از کتابخانه های تقریبا تمام دستگاه های سخت افزاری و سیستم های نرم افزاری دارد.

برای سرویس ابری، از فایربیس گوگل استفاده کردم زیرا علاوه بر اینکه کار با آن بسیار راحت است، یک پلن رایگان نیز در اختیار کاربران قرار میدهد و میتواند به هر اپلیکیشن تلفن همراهی نیز متصل شود. من از RTDB در فایربیس گوگل برای ذخیره و واکشی (fetch) داده استفاده کردم. برای رسم شماتیک نیز Easy EDA را به کار بردم. Easy EDA شامل یک کلکسیون بزرگ از کتابخانه قطعات مختلف است. همچنین کتابخانه قطعات LCSC نیز به آن متصل هستند، پس انتخاب قطعات از این شبیه ساز کار راحتی است.

به کمک kodular برای این پروژه یک اپلیکیشن اندروید ساختم. Kodular یک پلتفرم آنلاین بوده که کاربران میتوانند با برنامه نویسی تصویری یا visual programming، اپلیکیشن های اندرویدی بسازند. لازم به ذکر است که این پلتفرم کاملا رایگان است. ما در این پروژه با دو اپلیکیشن کار میکنیم. یکی برای کاربران و دیگری برای مدیر یا ادمین سیستم.

اپلیکیشن کاربر

کاربر باید به حساب کاربری خود وارد شده و با اسکن کردن QR code موجود در گوشه سمت راست و پایین دستگاه، به دستگاه Water NET متصل شود. کاربران قادر به مشاهده داده میزان آب مصرفی فعلی و میزان مصرف هفتگی و ماهانه خود هستند. وضعیت مخزن هوایی و مخزن سد هم در این اپلیکیشن نمایش داده میشود. هر کاربر به میزان محدودی از آب دسترسی دارد، پس اگر به آب بیشتری نیاز پیدا کرد، باید از طریق اپلیکیشن برای دریافت آب بیشتر درخواست ارسال کند.

اپلیکیشن مدیر

مدیر باید با وارد کردن مشخصات درست وارد حساب خود شود. مدیر میتواند تمام داده های کاربر مانند ID دستگاه، نام کاربر و محدودیت آب روزانه او را مشاهده کند. مدیر همچنین میتواند با درخواست آب اضافه از سمت کاربران با توجه به شاخص آن ها و سیاست های موجود موافقت کند.

مدار اتصال Water NET

سنسورهای جریان آب با ولتاژ 3.3 ولت تغذیه میشوند. پایه پالس یا خروجی اولین سنسور جریان به پایه D12 و پایه پالس یا خروجی دومین سنسور جریان به پایه D13 بورد ESP32 متصل اند. سوئیچ شناور چهار سیم دارد. یک سیم به GND و یک سیم دیگر به پایه دیجیتال متصل است. تمام پایه های دیجیتال متصل به سوئیچ شناور به صورت داخلی پول آپ شده اند. چهار سوئیچ شناور به پایه های D15، D18، D1 و D21 بورد ESP32 متصل هستند.

رله ها به کمک ترانزیستورهای BC547 توسط ESP32 راه اندازی میشوند. برای محدودسازی جریان بیس ترانزیستورها، یک مقاومت 100 اهمی به کار رفته است.

بیس ترانزیستور متصل به رله های برقی به پایه D22  و بیس ترانزیستور متصل به رله پمپ آب به پایه D23 بورد ESP32 متصل هستند. LED مخزن سد خالی هم به پایه D24 میکروکنترلر متصل است.

LM7805 نیز برای تغذیه ESP32 ولتاژ را تا 5 ولت کاهش داده و رگوله میکند.

کاربرد

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

موارد موجود در فایل : سورس کامل

5 (1 نفر)

برای دریافت مطالب جدید کانال تلگرام یا پیج اینستاگرام ما را دنبال کنید.

محمد رحیمی

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

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

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *