آموزش رزبری پای اینترنت اشیا IOT اینترنت اشیاء عملی پروژه رزبری پای رزبری پای

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

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

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

led node red - rpi -digispark

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

رزبری پای ۳

ال ای دی Oval

بردبورد

چند رشته سیم

 

راه اندازی Node-RED در برد رزبری پای

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

 

استفاده از Node inject

نود inject در واقع نود استارت و ورودی اولیه ما می‌باشد، که از شاخه input قابل دسترسی است. مانند تصویر زیر این Node را انتخاب کرده و وارد محیط Node-RED میکنیم.

Node-Red--inject--digispark

همانطور که میبینید این Node به صورت پیشفرض بر روی حالت Timestamp قرار دارد. بر روی Node کلیک میکنیم. حالت اول Payload برای تغییر وضعیت ورودی مانند عدد ، متن ، فلو و ..و می‌باشد. در قسمت Topic میتوانید اسمی دلخواه برای این Node انتخاب نمایید.

node-red---inject-2-digispark

حالت سوم Repeat می‌باشد که برای زمانبندی نمایش دیتا استفاده می‌شود؛ شامل ۳ فسمت است.

۱: interval در این حالت نمایش دیتا با زمانبندی به صورت ثانیه ، دقیقه و ساعت قابل تنظیم خواهد بود، به این صورت که مثلا خروجی عدد یا اسم ما هر ۵ ثانیه یک بار تکرار شود.

۲: interval between times در این حالت نمایش دیتا با فواصل زمانی تعریف شده بین ساعت های مختلف و همچنین تعیین روز های هفته زمانبندی میشود.

۳: at a specific time  در این حالت نمایش دیتا فقط در یک زمان مشخص با قابلیت تعیین روز زمانبندی میشود.

 

تا اینجا با Node inject در نرم افزار نود رد آشنا شدیم. حال از این نود به عنوان ورودی اولیه استفاده می‌کنیم. من در این آموزش میخواهم ال ای دی ها به ترتیب مقادیر ۱ و ۰ را به عنوان دیتا ورودی دریافت کنند. پس مانند تصویر زیر از دو ،  Node inject برای مقدار دهی استفاده میکنیم و برای اتصال به رزبری پای از نود Node RPI out استفاده می‌کنیم.

node-red-rpi-gpio1--digispark

 

اتصال به رزبری پای Raspberry Pi

ال ای دی دارای ۲ پایه کوتاه و بلند می‌باشد. پایه‌ی کوتاه، منفی و پایه‌ی بلندتر، + می‌باشد. حال پایه‌ی منفی ال ای دی را به GND رزبری پای وصل کرده و پایه‌ی + را به پین ۱۱ رزبری پای (GPIO 17 ) وصل می‌کنیم. دقت کنید برای اتصال ال ای دی‌های دیگر، تمام ال ای دی‌ها از سر منفی با یکدیگر اشتراک داشته و به پایه‌ی GND رزبری پای وصل می‌شوند و به ترتیب ال ای دی دوم به پین ۱۳ (GPIO 27) و ال ای دی سوم به پین ۱۵ (GPIO22) وصل می‌کنیم. همانند دو تصویر زیر

Node-red---led rpi-digispark

 

Raspberry-Pi-GPIO-Digispark

تنظیمات Node-RED

کلیه مراحل بالا را یکجا مجددا شرح می‌دهم. روی Node inject کلیک می‌کنیم. حالت payload را روی number گذاشته و مقدار ۱ را به معنی روشن شدن ال ای دی به آن می‌دهیم. حال برای حالت دوم دوباره از node inject استفاده کرده و به آن مقدار ۰ به معنی خاموش شدن ال ای دی را می‌دهیم. سپس از طریق Drag & Drop از دو، نود inject به خروجی Node RPI out اتصال می‌دهیم. به همین ترتیب برای ال ای دی های دیگر همین روند را تکرار می‌کنیم.

در آموزش بعدی کنترل ال ای دی از طریق محیط گرافیکی UI با موبایل را به شما آموزش خواهم داد.

 

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

 

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

 

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

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

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

۱۹ دیدگاه

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

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

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

    • سلام
      برای این منظور باید از ماژول رله استفاده نمایید و به پین رله وصل نمایید. در آموزش کنترل وسایل الکترونیکی از راه دور بخش سوم توضیح داده شده است.

  • سلام
    سپاس از مطلب مفید
    من به مشکلی بر خوردم که علی رغم اتصال LED و صحت آن، LED روشن نمی شود و عملا gpio را با ترمینال، پایتون و الان هم نود امتحان کردم اما انگار سیگنال ارسال نمی شود.

  • سلام ببخشید بسیار اموزش مفیدی بود فقط برای راه اندازی نود ها به چه سیستم عاملی برای رزبری نیاز داریم؟؟؟

  • سلام
    نود Gpio out را انتخاب کنید. تیک گزینه ی initialise pin state را بزنید. حال چک کنید LEVEL روی حالت LOW هست یا High . سپس بر روی حالت initial level of pin high-1 انتخاب نمایید.

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

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

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

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

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

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