آموزش رزبری پای پروژه رزبری پای رزبری پای

کنترل وسایل الکترونیکی از راه دور بدون برنامه نویسی – بخش سوم خانه هوشمند

bms-iot-with-Nodered---digispark
نوشته شده توسط پریسا پوربلورچیان

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

 

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

محیط گرافیکی UI ، یک محیط گرافیکی جذاب برای مشاهده Result پروژه و کنترل گجت‌ها می‌باشد. برای دسترسی یه این محیط تنها نیاز به IP Address برد رزبری پای Raspberry pi داریم. به این صورت که همانند تصویر زیر این آی پی را وارد مرورگر کرده و سپس وارد محیط UI می‌شویم. برای اطلاعات بیشتر و بررسی محیط UI، می‌توانید از آموزش کنترل وسایل الکترونیکی از راه دور ، استفاده نمایید.

کنترل وسایل الکترونیکی از راه دور بدون برنامه نویسی با نود رد – رابط گرافیکی خانه هوشمند - دیجی اسپارک

 

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

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

برد رزبری پای Raspberry Pi

ماژول رله ۴ کاناله

ال ای دی اوال

سنسور تشخیص حرکت PIR

چند رشته سیم

آموزش مدیریت وسایل منزل از راه دور دیجی اسپارک - نودرد

 

راه اندازی محیط Node-RED

در ابتدا وارد منو رزبری پای، Programming شده و Node Red را فعال می‌کنیم. این پروسه با توجه به سرعت اینترنت شما چند دقیقه طول خواهد کشید. سپس وارد ترمینال رزبری پای Raspberry Pi شده و با دستور ifconfig آی پی رزبری پای را به دست می‌آوریم. حال با توجه به IP Addrress رزبری پای، وارد مرورگر شده و ip رزبری پای را با پورت ۱۸۸۰ وارد می‌کنیم. محیط نرم افزار node red در دسترس شما است.

 

استفاده از نو Node Switch

در ابتدا برای تعریف ورودی و کنترل گجت‌ها نیاز به نود Switch داریم. نود Switch یکی از زیر شاخه‌های Node UI می‌باشد. از این نود برای کنترل و تغییر وضعیت عملکرد خروجی‌ها تنها با کلیک بر روی آن ،می‌توانید استفاده نمایید. در این آموزش نیاز به تعریف ۶ نود Switch داریم. برای اینکار باید ۵ بار دیگر این Node را در محیط Node-RED کپی نمایید. همانند تصویر زیر از شاخه‌ی UI، نود Switch را انتخاب کرده و واردمحیط Node-RED کنید.

کنترل وسایل الکترونیکی از راه دور بدون برنامه نویسی با نود رد – بخش سوم خانه هوشمند - دیجی اسپارک

 

حال هر یک از این Switchها باید به یکی از پین‌های GPIO رزبری پای متصل گردد. برای این منظور نیاز به Node rpi out از شاخه Raspberry_Pi داریم. به همین صورت همانند تصویر زیر برای هر نود Switch، یک نود GPIO تعریف می‌کنیم.

کنترل وسایل الکترونیکی از راه دور بدون برنامه نویسی با نود رد – بخش سوم خانه هوشمند - دیجی اسپارک

 

استفاده از سنسور تشخیص حرکت pir sensor

در این مرحله از سنسور تشخیص حرکت برای تشخیص فرد و اعلام هشدار ورود استفاده می‌کنیم. به اینصورت ، به محض اینکه تشخیص انجام شد، متن هشدار ورود را به عنوان Text برروی موبایل نشان

خواهد داد. برای اتصال این سنسور به برد رزبری پای، نیاز به نود rpi in از شاخه Raspberry_ pi داریم و سپس برای خروجی آن از نود rpi out استفاده می‌کنیم.

 

تنظیمات Node Switch

روی نود کلیک کنید. سپس روی Tab کلیک کرده و یک Tab جدید در UI برای خود انتخاب نمایید. حال در قسمت Name اسم گجت مورد نظر خود را وارد کنید. سپس در Group، اسم گروهی خاص را برای گروه بندی گجت‌ها انتخاب نمایید. در قسمت آخر value خود را به ۱ و ۰ تغییر دهید. ۱ و ۰ به ترتیب بیانگر روشن و خاموش شدن گجت‌ها می‌باشد. به همین ترتیب، پنج switch دیگر را نیز به همین ترتیب تنظیم نمایید با این تفاوت که در قسمت Name، اسم‌های انتخابی را بنا بر گجت مورد نظر خود تغییر دهید.

کنترل وسایل الکترونیکی از راه دور بدون برنامه نویسی با نود رد – نود سوئیچ خانه هوشمند - دیجی اسپارک

 

تنظیمات Node rpi gpio out

همانطور که در توضیحات بالا گفته شد، برای هر نود Switch یک GPIO تعریف می‌کنیم. من در تصویر زیر اسم هر یک از نودهای GPIO را با پین مربوط به آن ها مشخص کرده‌ام. به عنوان مثال برای روشنایی پذیرایی از GPIO 4 یعنی PIN 7 استفاده کردم.

کنترل وسایل الکترونیکی از راه دور بدون برنامه نویسی با نود رد – بخش سوم خانه هوشمند - دیجی اسپارک

 

تنظیمات سنسور تشخیص حرکت PIR sensor

برای تنظیمات PIR نیاز به نود Function داریم. نود function برای کد نویسی می‌باشد. در این قسمت، می‌خواهیم به محض تشخیص فرد، عبارت هشدار ورود نمایش داده شود. نود Function را باز کنید و کدهای زیر را در آن وارد نمایید.

سپس از نود rpi in به نود Function و از نود فانکشن به نود Text (از شاخه UI) وصل می‌کنیم. در ادامه توضیحات مربوط به Node Text را خواهم گفت.

کنترل وسایل الکترونیکی از راه دور بدون برنامه نویسی با نود رد – بخش سوم خانه هوشمند - دیجی اسپارک

 

تنظیمات نود Node Text

حال برای نمایش این متن نیاز به Node Text خواهیم داشت. این Node را از شاخه UI انتخاب نمایید. سپس روی Node کلیک کرده و در قسمت Group، گروه خود را وارد نمایید. در قسمت Name، نامی دلخواه برای این نود در نظر بگیرید. سپس Done را بزنید.

کنترل وسایل الکترونیکی از راه دور بدون برنامه نویسی با نود رد – نود تکست2 خانه هوشمند - دیجی اسپارک

 

کنترل وسایل الکترونیکی از راه دور بدون برنامه نویسی با نود رد – نود تکست2 خانه هوشمند - دیجی اسپارک

 

پروژه ی ما آماده است. حال وارد محیط UI شده و Result پروژه را مشاهده نمایید.

کنترل وسایل الکترونیکی از راه دور بدون برنامه نویسی با نود رد – رابط گرافیکی خانه هوشمند - دیجی اسپارک

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

 

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

 

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

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

۲۶ دیدگاه

  • بسیار عالی بود
    تشکر میکنم
    یه سوال داشتم
    با چه شیلد یا ماژولی میشه توان مصرفی وسایل رو هم حساب کرد و بتوان مدیریت مصرف کرد؟

    • سلام
      امیدوارم مفید و کاربردى باشه.
      برای اینکار باید باید از ماژول های جریان سنج از جمله ACS استفاده کرد. و از طریق ui کنترل کرد.

    • سلام
      از اینکه مفید بوده براى شما ، خوشحالم
      در آموزش قبلى راجع به پروتکل MQTT صحبت کردم و به صورت مثال روشن و خاموش شدن ال ای دى از طریق پروتکل MQTT را کامل آموزش دادم. به همین ترتیب میتونین براى این آموزش هم استفاده کنید. سعى میکنم همین مبحث را با MQTT هم آموزش بدهم.

  • با سلام
    شرمنده نحوه نصب نود ui به چه صورته من هر چه تلاش به دانلود کتابخانه ui کردم موفق نشدم
    در منو سرچ نود ui را نوشتم ولی چیز یافت نکرد
    ممنون می شوم کمک کنید

    • سلام
      براى نصب نود UI , باید ابتدا نود رد خود را آپدیت کنید، سپس از منو نود رد ، manage pallete را انتخاب کنید و در قسمت install , نود Ui را سرچ کنید و سپس نصب کنید . در لینک آموزش نصب نودهاى UI تمام این مراحل را کامل آموزش داده ام .

  • از آموزشهاتون بینهایت تشکر می‌کنم.
    سوال من :
    زمانی که با موبایل به رزبری نت میدم با خود گوشی می‌تونم وارد محیط نود رد بشم،چرا؟

    • سلام
      امیدوارم مفید باشه
      در جواب سوالتون باید بگم که ، نرم افزار Node-RED به صورت پیش فرض ، امن نیست و به همین ترتیب هر کسی که آی پى و پورت را داشته باشد، میتواند وارد محیط نود رد و ui شود. حال براى بحث امنیت Node-RED میتوانید از دو روش استفاده کنید، یکى از طریق API که همان تعریف ادمین و ادیتور می باشد که میتوانید یوزر و پسورد براى ورود به محیط نود رد و ui تعریف کنید و روش دوم HTTP Node security می باشد . در آموزش هاى بعدی حتما این دو روش را کاملا توضیح خواهم داد.

  • سلامی دوباره
    راستش من جواب سوالمو نگرفتم،اولا من برای ورود به آی پی نودرد از مرورگر رزبین استفاده می‌کنم وبا موبایل نت میدم، در همین حین هم می‌تونم با مرورگر موبایل هم وارد آی پی بشم،ولی زمانی که نت رزبری از دستگاه دیگری باشه دیگه مرورگر گوشی وارد آی پی نمیشه!!
    ثانیاً زمانی که توی نودرد یک برنامه اجرا کردیم چطور میشه متوقفش کرد،و برنامه دیگه اجرا کرد، برای من خطای مشغول بودنflow میده که بعضی از نودها مشغولند،
    با تشکر

    • با سلام، در مورد سوال اول همانطور که در پاسخ قبلى گفتم، با تنظیمات لایه هاى مدیریتى این موضوع رفع میشود. که باید منتظر انتشار آموزش باشید و یا به کانال دانشجوکیت در فرانش مراجعه کنید.
      چنانچه بخواهید به حالت over ip مدیریت کنید باید تنظیمات dns ست کنید و یا ip static در این صورت از هرنقطه اى که به اینترنت متصل باشید، میتوانید ارتباط برقرار کنید.
      در مورد سوال آخر، منظورتان را دقیق تر بیان کنید، همچنین میتوانید به تعداد دلخواد flow تعریف کنید.

  • سلام و خسته نباشید خدمت شما
    ip wlan0 من همیشه ثابت است،و تا به حال با کابل network lanرزبری را به pc متصل نکرده ام و همیشه به صورت wifi به رزبری نت دادم،آیا ip من استاتیک است؟

  • سلام
    همون «ابتدا وارد منو رزبری پای، Programming شده و Node Red را فعال می‌کنیم» رو میشه توضیح بدین؟
    مگه بجز node-red که local اجرا میشه محیط دیگه ای هم داریم؟ توی node-red که programming نداریم
    الان بایستی node-red رو چجوری به raspberry وصل کنیم؟
    ضمنا دسته نودهای raspberry رو هم در فهرست نودهای node-red بعد از وصل شدن به raspberry اضافه میشه؟
    خیلی متشکرم

    • سلام
      ضمن تشکر از توجه شما، نرم افزار Node-RED به صورت پیش فرض روی رزبری پای از طریق سیستم عامل رزبین نصب می باشد. برای اجرای آن کافیست از منو رزبری پای، گزینه programming ، نودرد (Node-RED) را انتخاب نمایید و صبر کنید تا آی پی برای ورود به نرم افزار را به شما نمایش دهد و سپس وارد محیط Node-RED شوید.
      منظورتون رو از اتصال نودرد به رزبری نفهمیدم.لطفا واضح تر بیان نمایید. برای سوال اخر نیز بله نود Raspberry_pi به صورت پیش فرض در نوار سمت چپ Node-RED قرار گرفته شده است.

        • سلام
          چنانچه تمایل دارید پروژه های ساده با نودرد را جهت آموزش اینترنت اشیا و کار کردن به صورت عملی را دارید پیشنهاد میشود حتما از برد رزبری پای استفاده کنید. سپس در مراحل حرفه ای تر در کنار رزبری پای میتوانید از نودرد در ویندوز هم استفاده بنمایید.

  • با سلام و عرض خسته نباشید
    من ال ای دی رو به راحتی روشن میکنم با پین ها با همین نود Switch ولی بجای ال ای دی وقتی یک موتور DC وصل میکنم،روشن نمیشه.یا فقط زیر یک ثانیه روشن و سپس خاموش میشه و دیگه هم روشن نمیشه.
    میخوام بدون رله و مستقیما موتور رو روشن کنم.چیکار کنم؟
    و نود slider هم وقتی به ال ای دی وصل میکنم،فقط روشن و خاموش میشه و نور ال ای دی کم و زیاد نمیشه.!؟
    با تشکر

    • سلام
      برای استفاده از موتور DC نیاز به درایور راه انداز خواهید داشت. برای این منظور میتوانید از درایور موتور استفاده نمایید. نود اسلایدر نیز باید بین دو مقدار MAX , MIN تغییر کند. اتصالات را چک کنید.

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

    • سلام
      براى سوال اول لطفا دقیقتر بیان کنید اینکه پروژه ى شما چیست؟
      براى lcd میتونین از شیلد ال سی دى هاى مخصوص رزبرى پاى استفاده کنید مثلا از مدل pcd8544 استفاده کنید. براى اینکار باید نود مخصوص این شیلد را نصب کنید.

      • میخوام نتایج آزمایشگاه رو که توسط رزبری آنالیز کردم براش رابط کاربری بسازم
        Qt رو هم نوشتن .. labview هم هست..ولی node خیلی آسونتره..
        به نظر شما این میتونه رابط کاربری مناسبی باشه؟
        مثلا رسم نمودارا و عملکرد دستگاها
        ممنون میشم جامع تر توضیح بدین ..

        • بله از طریق Dashboard و محیط UI میتوانید Result پروژه را مشاهده کنید و میتونه رابط کاربری راحت تری در دسترس شما قرار دهد و از هر جایی که هستید آن را کنترل نمایید. برای رسم نمودار هم میتوانید از نود chart شاخه UI استفاده کنید.
          برای عملی سازی از آموزش های داخل سایت استفاده کنید و سوالات فنی را از همین طریق اعلام کنید.لازم به ذکر است چنانچه به مشکل مواجه شدید میتوانید از خدمات فنی تیم دانشجوکیت استفاده کنید.

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