آموزش رزبری پای اینترنت اشیا IOT خانه هوشمند رزبری پای نرم افزار Node Red پروژه رزبری پای

پروژه مانیتورینگ دما و رطوبت با DHT نرم افزار اینترنت اشیا Node-RED

monitor-humidity-temp-with-dht-in-node-red-dashboard-digispark-
نوشته شده توسط پریسا پوربلورچیان

پیش از این بارها در خصوص نرم افزار نودرد Node Red مطالب علمی ارایه کرده‌ایم. این نرم افزار یک پلتفرم اپن سورس برای راه اندازی پروژه‌های اینترنت اشیاء است. توسط IBM طرح ریزی و تولید شده است. نگرش طراحی این نرم افزار، ایجاد یک پلتفرم برای کاربران بدون نیاز به دانش فنی بوده است. از این رو کاربران بدون نیاز به دانستن دانش کدنویسی می‌توانند پروژه‌های ساده تا حرفه‌ای را طراحی و پیاده سازی کنند. در این پلت فرم همه چیز به صورت پازل به هم مرتبط می‌شوند. وب سایت دیجی اسپارک به عنوان مرجع تخصصی اینترنت اشیاء IOT به زبان فارسی اولین مرجع نرم افزار اینترنت اشیاء Node Red به زبان فارسی است. در مجموعه آموزش‌های نود رد Node Red به صورت بخش بندی شده کار با این نرم افزار را به صورت پروژه محور آموزش می‌دهیم. در ادامه با آموزش کار با نرم افزار اینترنت اشیاء Node Red با مرجع تخصصی اینترنت اشیاء دیجی اسپارک همراه باشید.

 


اهمیت مانیتورینگ دما


دما از انرژی بوجود می‌آید. امروزه تولید و مدیریت انرژی از مهم‌ترین فرایندها در تمامی سطوح می‌باشد. انرژی به صورت معمول از نوعی به نوع دیگر تبدیل می‌شود. در هر کدام از تبدیل‌های صورت گرفته شده، هزینه‌ای از جمله هزینه مالی، زیست محیطی و … در برخواهد داشت. از اینرو حفاظت از انرژی تبدیل شده بسیار اهمیت دارد. امروزه با گسترده شدن بستر اینترنت اشیا IoT روش‌های نوین و جذابی برای مدیریت مصرف انرژی بوجود آمده است. پیش از این در پروژه مدیریت مصرف انرژی با برد کنترل اینترنت اشیا Wemos D1 Mini مواردی را اجرا کردیم. امروز در این پروژه جذاب با برد رزبری پای Raspberry pi به صورت گرافیکی در یک داشبرد مناسب دما و رطوبت محیط را مشاهد یا به اصطلاح مانیتور می‌کنیم. این پروژه پیش نیاز بخش بعدی در خصوص کنترل و مدیریت مصرف انرژی خواهد بود. در این آموزش توسط سنسور دما سری DHT مانیتورینگ دما را در هر لحظه انجام می‍دهیم . برای اجرای این پروژه نیاز به یک سنسور دما داریم. در ادامه نودهای مورد نیاز برای طراحی محیط UI را توضیح خواهم داد.

نمایش محیط داشبورد در نرم افزار نود رد Node red - دیجی اسپارک

 

نود inject

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

تنظیمات نود inject مانیتورینگ دما رطوبت با Node red- دیجی اسپارک

 

کتابخانه BCM2835

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

 


نود DHT


نرم افزار نود رد Node-RED نودهایی از سنسورهای پرکاربرد و پر مصرف را شامل شده است. نود rpi-dht یکی از آن هاست. پس از نصب کتابخانه BCM2835 از طریق manage pallete نود سنسور دما و رطوبت DHT را انتخاب و نصب کنید. پس از نصب، نود rpi-dht در منو Raspberry Pi قرار می‌گیرد. آن را وارد صفحه کنید. با وارد شدن به تنظیمات نود rpi-dht در مرحله اول نوع سنسور را مشخص کنید. در این پروژه از سنسور DHT11 استفاده شده است. سپس Pin Numbering را بر روی bcm gpio انتخاب کنید. در قسمت شماره پین هر یک از پایه های gpio که به سنسور متصل شده است را انتخاب کنید:

تنظیمات نود DHT مانیتورینگ دما رطوبت با Node red- دیجی اسپارک

 

نود Debug

توسط نود debug دیتای دریافتی از سنسور با جزییات کامل نمایش داده می‌شود. نود را وارد صفحه کنید. سپس همانند تصویر زیر اتصالات را انجام دهید:

تنظیمات نود Debug مانیتورینگ دما رطوبت با Node red- دیجی اسپارک

 

تجزیه دیتا – نود فانکشن Function

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

تنظیمات نود function مانیتورینگ دما رطوبت با Node red- دیجی اسپارک

 

 


محیط گرافیکی Dashboard


جذاب ترین بخش پروژه دسترسی به محیط Dashboard و نمایش و تحلیل و بررسی دیتا در یک محیط گرافیکی است. همانطور که در توضیحات نود فانکشن Function گفته شد، برای نمایش هر یک از سه وضعیت سنسور اعم از دما، رطوبت و آی دی سنسور به نودهای UI نیاز خواهیم داشت. در این پروژه از دو نود Gauge و یک نود Text استفاده خواهیم کرد. یک تب Tab مشترک برای هر یک از پارامترها تعریف کرده و همانند تصویر زیر تنظیمات را انجام دهید.

 

محدودیت در دسترسی کامل به این مجموعه آموزش

 

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

 

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

 


اجرای پروژه مانیتورینگ دما


پس از آنکه تنطیمات تمامی نودها را انجام دادید، Flow را Deploy کنید. سپس وارد محیط Dashboard شوید. با انتخاب تب Tab ساخته شده می‌توانید وضعیت سنسور را در هر لحظه بررسی و کنترل کنید. با اعمال تفییرات دمایی بر روی سنسور متوجه خواهید شد که دیتا هر یک ثانیه یک بار تغییر خواهد کرد.

 

 

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


پروژه و دریافت بن ارسال رایگان


برای دریافت بن خرید از دانشجو کیت، کاربران بایستی با استفاده از وسایل این آموزش، پروژه را اجرا کرده و یا حتی مدار جدیدی تعریف کنید. سپس از اجرای کار فیلم گرفته و در شبکه‌های اجتماعی از جمله آپارات و اینستگرام، با هشتگ‌های دیجی_اسپارک   دانشجوکیت    digispark    daneshjookit منتشر کنند. سپس از طریق بخش نظرات در ادامه همین آموزش، جهت دریافت بن خرید ارسال رایگان به ارزش ۱۲۰۰۰ تومان از دانشجو کیت، لینک را زیر همین پست ارسال کنید.

 

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

 

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

پریسا پوربلورچیان

تولید کننده محتوا / کارشناس IOT

زندگی یعنی پژوهش و فهمیدن چیزی جدید

تلاشم بر این است تجربیاتم در زمینه IOT‌ را به بهترین شکل با شما در میان بگذارم.

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

۲۴ دیدگاه

  • سلام و تشکر از شما برای انتشار این آموزش
    مدت ها بود دنبال یاد گرفتن و کار کردن با این نرم افزار بودم ولی سر درنیاوردم.
    لطفا لینک کامل آموزش nodered را برای من ارسال کنید.
    با تشکر

  • چه جوری دیتاها را تجزیه کردید و هر کدومو جدا نشون دادین؟؟ من چند روز درگیر این قضیه شدم

    • سلام
      در این خصوص تنها کافیست از طریق نود Debug دیتا را به صورت طبقه بندی شده نمایش دهید. بررسی و نتیجه را از همین طریق اطلاع دهید.

  • سلام و خسته نباشید.
    من سنسورم dht22 چه نودی باید نصب بشه لطفا سریع جواب بدین که باید این پروژه رو ارائه بدم. لطفا توضیح کامل دهید . ارادتمند شما

    • سلام
      تنها یک نود DHT وجود دارد که در تنظیمات آن باید سنسور مورد استفاده خود را انتخاب کنید.
      بررسی و نتیجه را از همین طریق اطلاع دهید.

    • خواهش میکنم.
      پس از باز کردن تنظیمات نود Debug بر روی msg کلیک کرده و سپس complete msg object را انتخاب نمایید. دیتا به صورت طبقه بندی شده برای شما نمایش داده می‌شود.

  • با سلام اکانت اسپارکر پلاس خریداری کردم . ولی به کد های پروژه دسترسی ندارم.لطفا راهنمایی کنید برای این پروژه به جز رزبری چه سخت افزاری نیاز هست؟

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

  • سلام خسته نباشید.نرم افزار دیگه ای هم هست که مثل نود رد عمل کنه اما نیاز به برد مخصوصی نداشته باشه و برنامه رو به این صورت انجام بده

    • سلام
      نرم افزار نود رد Node-RED به برد خاصی نیاز ندارد و می‌توانید بر روی ویندوز هم نصب کنید.
      با نرم افزار blynk و cayenne می‌توانید پروژه های خود را کنترل کنید.

  • با سلام و ضمن تشکر از زحماتتان.
    به نظر می رسد مطالب ، کامل ارائه نمی شود مثلا در اینجا بیان نشده که برای نمایش رطوبت چه باید کرد.
    البته بنده با وقت زیادی که گذاشتم متوجه شدم باید در فانکشن دوم کدmsg.payload = msg.humidity نوشته شود.
    خواهش دارم مطالب کامل ارائه گردد.ریزه کاری ها بیا نمی شود.

    • با سلام
      با تشکر از شما
      مطالب دنباله دار هستند و در آموزش های قبل به این موارد اشاره شده است. همچنین در صورت هرگونه سوال از همین طریق بپرسید تا راهنمایی گردد.

  • سلام خسته نباشید. من از روی دستورالعمل پیشرفتم تا جایی که دستور نصب BCM2835 رو وارد میکنیم. اینجا مرحله نصب ظاهرا درست انجام میشه و فایل خونده میشه. اما حتی بعد از ری استارت نود رد، نود rpi-dht دیده نمیشه. یعنی به نظر میاد که خونده نشده یا نصب نشده. دستور رو دقیقا همونطوری که نوشته شده وارد کردیم و به جای xx عدد ۶۰ رو گذاشتم.

  • سلام
    من در قسمت install وقتی نصب dht رو میزنم پیغام خطا بهم میده باید چه کاری انجام بدم تا نصب بشه من تمام مراحلی که شما گفتید را به طور کامل رفتم اما جوابی نگرفتم ممنون میشم راهنمایی کنید.

    • با سلام
      از توجه شما ممنونم. مساعدت فرمایید و نظرات خود را به صورت فارسی بنویسید.