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

شروع به کار با میکروهای STM32 بر پایه ARM
ژانویه 7, 2018
استفاده از ربات تلگرام با استفاده از رزبری پای Raspberry Pi برای اشتراک گذاری فایل
دسامبر 9, 2017
نمایش همه

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

در این مقاله می خواهیم با استفاده از یک ربات تلگرام GPIO مربوط به یک رزبری پای را کنترل کنیم. در واقع از طریق چت با ربات می توانیم این کار را انجام دهیم. نحوه ایجاد یک ربات تلگرام و ارتباط دهی آن با Raspberry Pi را در مقاله “استفاده از ربات تلگرام با استفاده از رزبری پای Raspberry Pi برای اشتراک گذاری فایل” یاد گرفتیم. حال می خواهیم با استفاده از این رباتکارهای عملی تر و جذاب تری مانند روشن و خاموش کردن چندین LED را انجام دهیم. 😀

تجهیزات و قطعات مورد نیاز

  • چهار عدد LED
  • رزبری پای Raspberry Pi (متصل شده به اینترنت)
  • برد بورد Breadboard
  • سیم برای اتصال

قبل از اینکه ادامه مقاله را دنبال کنید باز هم پیشنهاد می کنیم مقاله “استفاده از ربات تلگرام با استفاده از رزبری پای Raspberry Pi برای اشتراک گذاری فایل” بخوانید. جدول زیر شماره پین ها و GPIO های رزبری پای را برای استفاده در مدار و برنامه نشان می دهد.

دیاگرام مدار

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

برنامه پایتون برای Raspberry Pi

بعد از بستن مدار فوق حال به سوی برنامه پایتون رزبری پای پیش می رویم. در این برنامه در رزبری پای ما داده (message) ارسالی از ربات تلگرام را می خوانیم و برطبق آن LED ها را روشن یا خاموش می کنیم. بنابراین برنامه باید دو کلمه on و off را چک کند و برطبق آن عمل نماید. حال که پیام on یا off را خواند باید به دنبال کلمه بعدی که رنگ LED است برود. رنگ ها عبارتند از white, yellow, green, red. بنابراین با توجه به رنگ و حالت روشن یا خاموش بودن LED دستور موردنظر اجرا خواهد شد. برای ارتباط بین ربات تلگرام و رزبری پای همانطور که در “استفاده از ربات تلگرام با استفاده از رزبری پای Raspberry Pi برای اشتراک گذاری فایل” نیز بیان شد باید telepot را در رزبری پای نصب و import کنیم.

کد موردنظر برای کنترل ورودی و خروجی های رزبری پای با استفاده از ربات تلگرام به صورت زیر است:

 

همانطور که از فایل کد معلوم است ربات فقط کلمات کلیدی را بررسی کرده و سایر کلمات را نادیده می گیرد.برای مثال در مثال های زیر ربات فقط کلمات BOLD را در نظر می گیرد:

  • Turn on Green and Red LED
  • On green and yellow
  • on Yellow

حال به بررسی قسمت هایی از کد فوق که شاید مبهم به نظر برسد، می پردازیم.

در قطعه کد فوق نام پین ها را بر روی رنگ ها تعیین کرده ایم. تا با فراخوانی هر رنگ پین مربوطه را فراخوانی کرده باشیم.

در قطعه کد فوق همه پین های LED ها را به صورت خروجی تعریف کرده ایم.

هر پیامی که از موبایل ارسال می شود دارای chat id و command می باشد. chat id موردنظر برای ارسال جواب به ارسال کننده پیام ضروری است و command موردنظر حاوی پیام دریافتی است بنابراین از قطعه کد زیر استفاده شده است.

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

این مطلب را به اشتراک بگذارید

پاسخ دهید

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

*