هک‌کردن یک ریموت کنترل بی‌سیم و کنترل دستگاه‌های با تغذیه AC

قسمت 59
مشاهده سایر جلسات آموزش
11 بازدید
۱۴۰۵-۰۷-۱۱
5 دقیقه
  • نویسنده: Sisoog Os
  • درباره نویسنده: کارآفرین, تولید کننده, طراح الکترونیک و ....

در قسمت قبل از آموزش آردوینو دیدیم چگونه می‌توان یک دوربین دیجیتال را با استفاده از Arduino و اپتوکوپلر کنترل کرد. در قسمت 59 آموزش آردوینو به سراغ موضوع دیگری از کنترل تجهیزات جانبی می‌رویم: کنترل دستگاه‌های AC با آردوینو، بدون اینکه Arduino را مستقیماً به برق شهر متصل کنیم.

در این روش، به‌جای دست‌کاری قسمت AC مدار، با ریموت کنترل، یک کلید یا پریز را بصورت بی‌سیم کنترل میکنیم و Arduino با استفاده از اپتوکوپلر، به دکمه‌های روشن و خاموش ریموت فرمان می دهد.

کنترل دستگاه‌های AC با آردوینو چگونه انجام می‌شود؟

هدف این پروژه این است که بتوانیم وسایلی مانند چراغ‌ها یا تجهیزات برقی را که با یک کلید یا پریز ریموت‌دار کنترل می‌شوند، توسط Arduino روشن و خاموش کنیم.

یکی از مزیت‌های این روش این است که Arduino مستقیماً با ولتاژ AC و برق شهر در تماس نیست. تنها بخشی که تغییر داده می‌شود، ریموت کنترل باتری‌خور دستگاه است.

از این روش قرار است برای کنترل ریموت های رادیویی استفاده گردد و نه ریموت های مادون قرمز

نکته ایمنی: Arduino را مستقیماً به سیم‌کشی برق شهر یا بخش ولتاژ AC دستگاه متصل نکنید. در این آموزش فقط بخش باتری‌خور ریموت کنترل تغییر می‌ کند تا ولتاژ خطرناک از Arduino ایزوله شود. 

چرا از اپتوکوپلر استفاده می‌کنیم؟

برای شبیه‌سازی فشار دادن دکمه‌های ریموت از اپتوکوپلر (Optocoupler) استفاده می‌شود.

سمت ورودی اپتوکوپلر که شامل LED داخلی است به Arduino متصل می‌شود و سمت ترانزیستوری آن به دو کنتاکت مربوط به دکمه ریموت اتصال پیدا می‌کند.

وقتی Arduino اپتوکوپلر را فعال می‌کند، ترانزیستور داخلی آن اتصال بین دو نقطه مدار ریموت را برقرار می‌کند؛ درست مشابه زمانی که کاربر دکمه روی ریموت را فشار می‌دهد.

اتصال Arduino به ریموت کنترل

ابتدا قاب ریموت کنترل را باز کنید و نقاط مربوط به کلیدهای ON و OFF را روی برد پیدا کنید.

در مدار نمونه کتاب، دو اپتوکوپلر استفاده شده است؛ یکی برای کلید روشن‌کردن دستگاه و دیگری برای کلید خاموش‌کردن آن.

سمت LED اپتوکوپلرها از طریق مقاومت‌های 220 اهم به خروجی‌های Arduino متصل می‌شود و سمت ترانزیستوری آن‌ها روی کنتاکت‌های کلیدهای ریموت قرار می‌گیرد.


تصال اپتوکوپلرها به کنتاکت‌های ON و OFF ریموت کنترل

شکل 59-1 – اتصال اپتوکوپلرها به کنتاکت‌های ON و OFF ریموت کنترل

در این مدار دو کلید فشاری نیز به پایه‌های Arduino متصل شده‌اند. با فشار دادن یکی از این کلیدها Arduino فرمان روشن‌شدن و با فشار دادن کلید دیگر فرمان خاموش‌شدن را به ریموت ارسال می‌کند.

کد کنترل ریموت با Arduino

کد زیر از دو کلید لحظه‌ای برای روشن و خاموش‌کردن وسیله استفاده می‌کند. پایه‌های 2 و 3 ورودی کلیدها هستند و پایه‌های 4 و 5 اپتوکوپلرهای مربوط به دکمه‌های ON و OFF ریموت را کنترل می‌کنند.

بررسی کد برنامه

در ابتدای برنامه چهار پایه تعریف شده‌اند. دو پایه اول برای خواندن وضعیت کلیدهای ورودی استفاده می‌شوند:

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

کلیدهای ورودی با حالت INPUT_PULLUP تعریف شده‌اند. به همین دلیل هنگام فشرده‌شدن کلید، مقدار خوانده‌شده LOW خواهد بود.

تابع pulseRemote چه کاری انجام می‌دهد؟

زمانی که یکی از کلیدها فشار داده می‌شود، تابع pulseRemote() اجرا می‌شود.

ابتدا خروجی Arduino فعال می‌شود و اپتوکوپلر روشن می‌شود. این وضعیت به مدت نیم ثانیه ادامه پیدا می‌کند و سپس خروجی مجدداً LOW می‌شود.

در عمل این نیم‌ثانیه مانند فشار دادن کوتاه یکی از دکمه‌های فیزیکی روی ریموت کنترل عمل می‌کند.

پیدا کردن کنتاکت‌های کلید روی ریموت

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

هنگامی که دکمه لاستیکی ریموت فشار داده می‌شود، بخش رسانای زیر دکمه این دو مسیر را به یکدیگر متصل می‌کند.

در برخی مدل‌ها نیز از کلیدهای فشاری معمولی استفاده می‌شود. کار با این نوع کلیدها ساده‌تر است، زیرا پایه‌های کلید نقاط مشخصی برای اتصال سیم در اختیار ما قرار می‌دهند.

اگر مدار در اولین تلاش کار نکرد چه کنیم؟

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

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

کلیدهای دارای اتصال مشترک

در بعضی ریموت کنترل‌ها، یک سمت چند کلید به یک مسیر مشترک متصل شده است که معمولاً با زمین مدار مشترک است.

برای بررسی این موضوع می‌توانید مسیرهای روی برد را دنبال کنید یا با استفاده از مولتی‌متر مقاومت بین نقاط مربوط به کلیدهای مختلف را اندازه‌گیری کنید.

اگر چند کلید دارای مسیر مشترک باشند، لازم نیست برای هر کدام یک سیم جداگانه به مسیر مشترک وصل شود و می‌توان تعداد سیم‌های موردنیاز را کاهش داد.

استفاده از چند اپتوکوپلر برای یک کلید

در برخی ریموت‌ها ممکن است یک دکمه بیش از دو کنتاکت داشته باشد. در چنین شرایطی ممکن است برای شبیه‌سازی کامل فشردن یک دکمه به بیش از یک اپتوکوپلر نیاز داشته باشیم.

در شکل زیر نمونه‌ای نشان داده شده که در آن سه اپتوکوپلر توسط یک خروجی Arduino کنترل می‌شوند.

کنترل چند اپتوکوپلر برای شبیه‌سازی یک کلید ریموت

شکل 59-2 – کنترل چند اپتوکوپلر برای شبیه‌سازی یک کلید ریموت

آیا می‌توان از رله برای کنترل دستگاه‌های AC استفاده کرد؟

روش دیگری که برای کنترل بارهای AC وجود دارد، استفاده از یک رله ایزوله است که بتوان آن را توسط Arduino کنترل کرد.

کتاب Arduino Cookbook به محصول Digital Loggers IoT Power Relay اشاره می‌کند که برای جداسازی بخش کنترل از برق AC طراحی شده است.

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

مزیت کنترل ریموت به‌جای برق شهر

یکی از جذاب‌ترین نکات این روش آن است که برای اضافه‌کردن Arduino به سیستم، نیازی به دست‌کاری بخش ولتاژ بالای دستگاه نداریم.

Arduino فقط با یک مدار با تغذیه باتری و با ولتاژ پائین در ارتباط است و ریموت کنترل موجود، وظیفه ارسال فرمان بی‌سیم به پریز یا کلید اصلی را بر عهده دارد.

به همین دلیل این روش برای بسیاری از پروژه‌های اتوماسیون ساده، نمونه‌سازی و کنترل از راه دور گزینه مناسبی است.

جمع‌بندی

در قسمت 59 آموزش آردوینو یاد گرفتیم چگونه می‌توان یک دستگاه AC مجهز به ریموت کنترل را بدون اتصال مستقیم Arduino به برق شهر کنترل کرد.

برای این کار دکمه‌های ON و OFF ریموت توسط اپتوکوپلر شبیه‌سازی شدند. Arduino با فعال‌کردن کوتاه اپتوکوپلر دقیقاً همان کاری را انجام می‌دهد که با فشار دادن دکمه روی ریموت اتفاق می‌افتد.

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

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

اطلاعات
11
0
0
اشتراک و حمایت
جلسات دیگر
آردوینو

کنترل دوربین دیجیتال با آردوینو | کنترل شاتر...

profile نویسنده: Sisoog Os متخصص الکترونیک

کارآفرین, تولید کننده, طراح الکترونیک و ....


مقالات بیشتر

slide

پالت | بازار خرید و فروش قطعات الکترونیک

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

آیسی | موتور جستجوی قطعات الکترونیک

سامانه آی سی سیسوگ (Isee) قابلیتی جدید و کاربردی از سیسوگ است. در این سامانه سعی شده است که جستجو، انتخاب و خرید مناسب تر قطعات برای کاربران تسهیل شود. جستجو در آیسی
family

سیسوگ‌شاپ | فروشگاه محصولات Quectel

فروشگاه سیسوگ مجموعه ای متمرکز بر تکنولوژی های مبتنی بر IOT و ماژول های M2M نظیر GSM، GPS، LTE، NB-IOT، WiFi، BT و ... جایی که با تعامل فنی و سازنده، بهترین راهکارها انتخاب می شوند. برو به فروشگاه سیسوگ
family

سیسوگ فروم | محلی برای پاسخ پرسش‌های شما

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

سیکار | اولین مرجع متن باز ECU در ایران

بررسی و ارائه اطلاعات مربوط به ECU (واحد کنترل الکترونیکی) و نرم‌افزارهای متن باز مرتبط با آن برو به سیکار
become a writer
نویسنده شو !

سیسوگ با افتخار فضایی برای اشتراک گذاری دانش شماست. برای ما مقاله بنویسید.

ارسال مقاله
become a writer
نویسنده شو !

سیسوگ با افتخار فضایی برای اشتراک گذاری دانش شماست. برای ما مقاله بنویسید.

ارسال مقاله

خانواده سیسوگ

سیسوگ‌شاپ

فروشگاه محصولات Quectel

پالت
سیسوگ فروم

محلی برای پاسخ پرسش‌های شما

سیسوگ جابز
سیسوگ
سیسوگ فروم
سی‌کار

اولین مرجع متن باز ECU در ایران

سیسوگ مگ
آی‌سی

موتور جستجوی قطعات الکترونیکی

سیسوگ آکادمی
پالت

بازار خرید و فروش قطعات الکترونیک

دیدگاه ها

become a writer
نویسنده شو !

سیسوگ با افتخار فضایی برای اشتراک گذاری دانش شماست. برای ما مقاله بنویسید.

ارسال مقاله
become a writer
نویسنده شو !

سیسوگ با افتخار فضایی برای اشتراک گذاری دانش شماست. برای ما مقاله بنویسید.

ارسال مقاله