آموزش رزبری پای اینترنت اشیا IOT اینترنت اشیاء تئوریک نرم افزار نرم افزار Node Red

آشنایی با نرم افزار Node-Red مخصوص اینترنت اشیا

نوشته شده توسط پریسا پوربلورچیان

NODE-RED یک ابزار برنامه نویسی جهت اتصال دیوایس های سخت افزاری، API و سرویس های آنلاین با متد و شیوه جدید می‌باشد. Node-RED یک مرورگر با قابلیت ادیتور را فراهم می‌کند و توسط آن میتوانید پروژه های مختلفی را در بستر نودهای تعریف شده در آن پیاده سازی کنید. در این حالت از توابع جاوا اسکریپت جهت ساخت محیط گرافیکی استفاده می‌شود. در ادامه با مرجع تخصصی رزبری پای Raspberry Pi، دیجی اسپارک همراه باشید.

 


معرفی Node-RED


Node-RED یک محیط گرافیکی ساده و حرفه ای با رابط کاربری قوی را در اختیار کاربر قرار میدهد. Node-RED از Node.js توسعه یافته و بیس زبان برنامه نویسی آن Javascript می‌باشد. برنامه نویسی در سیک Node-RED به اصطلاح Even-Driven نیز گفته می‌شود. در برنامه نویسی even-driven به برنامه نویسی گفته می‌شود که جریان برنامه توسط رفتار کاربر، خروجی سنسورها و یا دریافت پیام از دیگر برنامه ها تعیین می‌گردد. به عنوان مثال تعریف یک Event در طول برنامه جهت اجرای یک یا چند خط کد، میتواند تعریف عامیانه و ساده ای از این سبک برنامه نویسی باشد. زبان برنامه نویسی Javascript از سبک برنامه نویسی شی گرا Event-driven پشتیبانی می‌کند. این امر این امکان را قرار میدهد تا بتوان Node-RED را در لبه شبکه با سخت افزارهای کم مصرف مانند رزبری پای Raspberry Pi و یا سرویس های Cloud اجرا کرد. در حال حاضر بیش از ۲۲۵۰۰۰ هزار ماژول در Node-RED قابل دسترسی است و امکان افزایش آن وجود دارد. در Node-RED امکان ساخت فلوهای محتلف وجود دارد که با Json ذخیره شده و قابلیت ارسال دیتا از طریق Json وجود دارد. یک فلو آنلاین به شما این امکان را میدهد تا بتوانید فلو خود را با دنیای اطلاعات به اشتراک بگذراید. در حالت کلی نود رد Node-RED بر روی سه حالت زیر قابل اجرا و پیاده سازی است:

  • Run Locally

 

 

  • on a Device

  • in the cloud

 


چه کسانی از Node-RED استفاده می‌کنند؟


با رشد و توسعه Node-RED در حال حاضر کمپانی های به نامی از این ابزار قدرتمند استفاده می‌کنند:

  • sence tecnic
  • AGILIT-E
  • Go-IOT
  • Spirit
  • Multitech
  • opto22
  • iaconnects

 


اجرای Node-RED بر روی رزبری پای


با توجه به اینکه رزبری پای Raspberry Pi یک کامپیوتر بسیار قدرتمند و کم مصرف با قابلیت های منحصر به فرد می‌باشد، در بین کاربران بسیار طرفدار دارد. با نصب سیستم عامل های مانند لینوکس، رزبین دسترسی به ابزار گرافیکی Node-RED را خواهید داشت. سیستم عامل رزبین در بین کاربران عادی محبوب و رابط کاربری آن بسیار ساده است و از اینرو در محیط رزبین محیط گرافیکی Node-RED را بررسی خواهیم کرد. در منو رزبین Raspbian در قسمت Programming، ابزار Node-RED قرار گرفته شده است. با کلیک بر روی آن پنچره زیر باز می‌گردد.

در خط اول یک آدرس URL جهت دسترسی به Node-RED برای شما نمایش داده می‌شود. پورت URL برابر با ۱۸۸۰ می‌باشد که جهت اجرای برنامه بر روی مرورگر بایستی URL را وارد نمایید.

با فعال شدن Node-RED محیط گرافیکی نمایش داده شده و آماده اجرا خواهد بود.

 

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

 


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


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

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

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

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

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

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

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

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

۳۰ دیدگاه

  • سلام.چطور میشه نود را اپدیت کرد؟
    مثلا من برای (ارتباط برد رزبری پای Raspberry Pi با ربات تلگرام Bot ) باکس telegram را کلا ندارم.
    ممنون

    • سلام
      برای اینکار ابتدا باید کامند آپدیت NodeRed را در ترمینال وارد کنید :
      sudo npm install -g node-red
      سپس NodeRed را Refresh کنید، حال در منوی NodeRed بر روی گزینه ی pallete کلیک کنید و در قسمت install ، نود تلگرام را سرچ و نصب نمایید.
      اگر در طی مراحل به مشکل برخوردید منتظر آموزش کامل باشید.

      • salam, baraye daryafte input(number) az tarafe user ba estefade az ghesmate url http va ferestadan e input be function be che soorat bayad amal konim?mamnoon
        (:

  • سلام متاسفانه من نمی تونم پنل ui رو ببنیم یعنی وقتی میزنم ۱۲۷٫۰٫۰٫۱۰/ui صفحه سفید برام میاره درصورتیکه من node ui و dashboard رو نصب کردم.

    • با سلام
      چنانچه در نودهای برنامه از نودهای UI استفاده نکرده باشید. طبیعتا در محیط مرور گر چیزی نمایش نمیدهد.

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

          • در واقع من می خوام دمای cpu رو با node-red نمایش بدم. از آموزشهای خود سایت digispark.ir استفاده کردم برای آموزش دقیقا همین کارا می کنم فقط باید بگم که چون بصورت default نود ui نصب نیست من آنرا نصب کردم

            • اگر در آموزش نمایش دمای CPU مشکل دارید لطفا در همان آموزش سوالتان را ثبت کنید، تا بررسی شود. در ضمن شیوه اتصالات را دقیق اعلام کنید.

  • سلام خوبید شما
    ببخشید من node red کار میکرد . اومدم npm رو نصب کنم و node red رو اپدیت کنم . دیگه node red کار نمیکنه .
    ممنون میشم کمکم کنید .
    اینو توی نود رد میده
    failed to start node-red graphical event wiring tool
    unit nodered.service entered failed state

    • سلام
      ضمن تشکر از توجه شما
      برای آپدیت Node-RED از کامند زیر استفاده نمایید؛ مشکل برطرف خواهد شد.
      Sudo apt-get install npm -g -unsafe-perm node-red

  • سلام
    من این سناریو را درست کردم ولی تا دکمه ها را میرنم اتفاقی نمیفته وال ای دی ثابت هست
    یکی از پایه های ال ای دی را به پایه ۳ که تعریف کردم زدم و دیگری را به GND
    ممنون میشم راهنمایی کنید

  • سلام

    ضمن تشکر از آموزش های شما در فرادرس
    بنده موفق شدم نود mysql را به دیتابیسم متصل کنم و علامت connected در زیر این نود و در محیط نود-رد نمایش داده می شود. اما متاسفانه موفق نشدم با هیچکدام از نودهای Inject، SQL Select به متغیرهایم در دیتابیس دسترسی داشته باشم. ممنون می شوم اگر راهنمایی ام کنید.

    لینک نود mysql در سایت نود-رد:
    https://flows.nodered.org/node/node-red-node-mysql

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

  • درود بر شما و زحماتتون
    من روی رزبری نود رو به صورت پیش فرض ندارم چه کاری باید انجام بدم

    پیشاپیش ممنون

    • سلام
      از توجه شما ممنونم.
      دستور update-nodejs-and-nodered را در ترمینال وارد کرده و منتظر بمانید تمامی مراحل کامل نصب گردد.
      سپس نتیجه را از همین طریق اعلام کنید.

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

    • سلام
      دقت کنید برای دسترسی به محیط Node-RED در موبایل امکان استفاده از آی پی لوکال نیست و باید آی پی آدرس را پیدا کنید. برای اینکار cmd را انتخاب کرده و عبارت ipconfig را وارد کنید. سپس آی پی ipv4 address را همراه با ۱۸۸۰ وارد مرورگر موبایل کنید، مشکل برطرف خواهد شد.

  • سلام ببخشید شاید سوالم به این فروم مرتبط نباشه ولی دیگه اینجا پرسیدم.
    من تو vnc سیستم عامل رزبری م صفحه ش زوم شده.چی کار کنم درست بشه؟
    همه چی بزرگ دیده میشه. از بخش resolution هم تغییر دادم درست نشد.

    • با سلام
      در این خصوص از منو vnc بر روی properties کلیک کنید و سپس Scaling را تغییر داده و بر روی اتوماتیک بگذراید.

  • سلام . ممنون از آموزشای خوبتون. چندتا سوال کلی در مورد node red داستم لطفا منو راهنمایی کنید .
    ۱٫ ما با node red می تونیم به برنامه کامل bms بنویسیم ؟ یعنی بتونیم سناریو های مختلف رو اجرا کنیم سنسور های pir برای حالت اعلام سرقت بذاریک ، در صد تنظیم یکسری پرده اتوماتیک رو بدیم و تمام کارهایی که یک سیستم هوشمند خانگی میتونه بکنه ؟
    ۲٫ ایا node red اینترفیس قدرتمند و مشتری پسندی داره ؟ که بتونیم اشکال گرافیکی مورد نیازمون رو بهش وارد کنیم و در صفحه نمایشگرمونه نمایشش بدیم؟
    نرم افزار های دیگه ای هستند که میتونن به رزبری پای ارتباط بگیرن مثل home seer که متاسفانه پولی هستند . اگر node red مناسب نبود نرم افزار دیگه هم پیشنهاد می کنید که بتونیم در خانه هوشمند استفاده کنیم؟
    پیشاپیش سپاس از توجه تون.

    • با سلام
      بله نود رد Node-RED یک محیط گرافیکی در اختیار شما قرار میدهد و میتوانید مدیریت کل پروژه را از طریق داشبورد ساخته شده در دست بگیرید.
      تا به حال پروژه های مختلفی در حوزه مدیریت خانه هوشمند با Node-Red پیاده سازی شده است که در بخش آموزش های Node-Red سایت برخی از آنها را میتوانید مطالعه و بررسی کنید.