• کنترل از راه دور IR. ریموت IR تئوری کنترل

    کنترل از راه دور مادون قرمز یکی از بهترین ها است راه های سادهتعامل با دستگاه های الکترونیکی بنابراین، تقریباً در هر خانه چندین دستگاه وجود دارد: تلویزیون، مرکز موسیقی، پخش کننده ویدیو، تهویه مطبوع. اما جالب ترین کاربرد ریموت کنترل مادون قرمز، کنترل از راه دور ربات است. در واقع، در این درس سعی می کنیم با استفاده از کنترلر محبوب Arduino Uno چنین روش کنترلی را پیاده سازی کنیم.

    1. ریموت IR

    چه چیزی برای آموزش ربات برای اطاعت از کنترل از راه دور مادون قرمز (IR) لازم است؟ ابتدا به خود کنترل از راه دور نیاز داریم. می توانید از یک کنترل از راه دور تلویزیون معمولی استفاده کنید یا می توانید یک کنترل از راه دور رادیویی ماشین مینیاتوری خریداری کنید. این ریموت ها هستند که اغلب برای کنترل ربات ها استفاده می شوند.

    این ریموت دارای 10 دکمه دیجیتال و 11 دکمه برای دستکاری موسیقی ولوم، عقب، پخش، توقف و غیره است. برای اهداف ما بیش از اندازه کافی است.

    2. سنسور IR

    در مرحله دوم، برای دریافت سیگنال از کنترل از راه دور، به یک سنسور IR ویژه نیاز داریم. به طور کلی، ما می‌توانیم تشعشعات مادون قرمز را با یک فتودیود/فتوترانزیستور معمولی تشخیص دهیم، اما برخلاف آن، سنسور مادون قرمز ما فقط سیگنال مادون قرمز را در فرکانس 38 کیلوهرتز (گاهی اوقات 40 کیلوهرتز) تشخیص می‌دهد. این ویژگی است که به سنسور اجازه می دهد تا نویز نور اضافی ناشی از لامپ های روشنایی و خورشید را نادیده بگیرد.

    برای این آموزش از سنسور محبوب IR استفاده خواهیم کرد. VS1838B، که دارای ویژگی های زیر است:

    • فرکانس حامل: 38 کیلوهرتز؛
    • ولتاژ تغذیه: 2.7 - 5.5 ولت؛
    • مصرف فعلی: 50 uA.

    سنسورهای دیگری را می توان استفاده کرد، به عنوان مثال: TSOP4838، TSOP1736، SFH506.

    3. اتصال

    سنسور دارای سه خروجی (سه پایه) می باشد. همانطور که در شکل نشان داده شده است، اگر از سمت گیرنده سیگنال IR به سنسور نگاه کنید،

    • سپس در سمت چپ - خروجی به کنترلر خواهد بود،
    • در مرکز - تماس با قدرت منفی (زمین)،
    • و در سمت راست - یک تماس برق مثبت (2.7 - 5.5V).

    نمودار اتصال اصلی

    ظاهر چیدمان

    4. برنامه

    با اتصال سنسور IR برنامه ای برای Arduino Uno می نویسیم. برای این کار از کتابخانه استاندارد استفاده می کنیم IRRemote، که صرفا برای ساده سازی کار با دریافت و ارسال سیگنال های IR طراحی شده است. با کمک این کتابخانه، دستورات را از کنسول می‌پذیریم و برای شروع، کافیست آن‌ها را در پنجره مانیتور نمایش دهیم. درگاه سریال. این برنامه برای ما مفید است تا بفهمیم هر دکمه چه کدی را می دهد.

    #include "IRremote.h" IRrecv irrecv(2); // خروجی را مشخص کنید که گیرنده به آن متصل است decode_results results; void setup() ( Serial.begin(9600); // set سرعت COMپورت irrecv.enableIRIn(); // شروع به دریافت ) void loop() ( if (irrecv.decode(&results)) ( // اگر داده ها در Serial.println (results.value, HEX) آمده اند؛ // print data irrecv.resume(); // قبول دستور بعدی ))

    بارگیری برنامه در آردوینو پس از آن سعی می کنیم دستورات را از کنسول دریافت کنیم. نمایشگر پورت سریال (Ctrl+Shift+M) را باز کنید، کنترل از راه دور را بردارید و آن را به سمت سنسور بگیرید. با فشردن دکمه های مختلف در پنجره مانیتور کدهای مربوط به این دکمه ها را مشاهده می کنیم.

    مشکل دانلود برنامه

    در برخی موارد، هنگام تلاش برای دانلود یک برنامه در کنترلر، ممکن است یک خطا ظاهر شود:

    TDK2 نبوددر محدوده خود اعلام کرد

    برای رفع آن، فقط دو فایل را از پوشه کتابخانه حذف کنید. به سمت کنداکتور می رویم. به پوشه ای که برنامه در آن نصب شده است بروید آردوینو IDE(به احتمال زیاد "C:\Program Files (x86)\Arduino" است). سپس به پوشه کتابخانه:

    …\Arduino\libraries\RobotIRremote

    و فایل ها را پاک کنید: IRremoteTools.cppو IRremoteTools.h.سپس، IDE آردوینو را مجددا راه اندازی می کنیم و دوباره سعی می کنیم برنامه را در کنترلر آپلود کنیم.

    5. LED را با کنترل از راه دور IR کنترل کنید

    اکنون که می دانیم کدهای مربوط به دکمه های کنترل از راه دور هستند، سعی می کنیم کنترل کننده را طوری برنامه ریزی کنیم که با فشار دادن دکمه های تنظیم صدا، LED را روشن و خاموش کند. برای انجام این کار، به کدهایی نیاز داریم (بسته به کنترل از راه دور ممکن است متفاوت باشد):

    • FFA857 - افزایش حجم؛
    • FFE01F - کاهش صدا.

    به عنوان یک LED، ما از LED داخلی در پین شماره 13 استفاده می کنیم، بنابراین نمودار سیم کشی ثابت می ماند. بنابراین برنامه:

    #include "IRremote.h" IRrecv irrecv(2); // خروجی را مشخص کنید که گیرنده به آن متصل است decode_results results; void setup() (irrecv.enableIRIn(); // شروع دریافت) void loop() (اگر (irrecv. decode(&results)) (// اگر داده وارد سوئیچ شد (نتایج. مقدار) (مورد 0xFFA857: digitalWrite (13، HIGH)؛ شکست؛ مورد 0xFFE01F: digitalWrite(13، LOW؛ break؛ ) irrecv.resume(); // دستور زیر را بپذیرید) )

    در آردوینو آپلود کنید و تست کنید. کلیک vol+- LED روشن می شود. کلیک جلد-- میره بیرون اکنون، با دانستن اینکه همه اینها چگونه کار می کند، به جای LED، می توانید موتورهای ربات یا سایر دستگاه های میکروالکترونیک خانگی را کنترل کنید!

    سلام به همه! در اینجا ما در مورد نحوه ساخت ساده ترین کنترل IR () صحبت خواهیم کرد. حتی می توانید این مدار را با یک کنترل از راه دور تلویزیون معمولی کنترل کنید. فوراً به شما هشدار می دهم ، فاصله زیاد نیست - حدود 15 سانتی متر ، اما حتی چنین نتیجه ای یک مبتدی را در کار خوشحال می کند. با یک فرستنده خانگی، برد دو برابر می شود، یعنی تقریباً 15 سانتی متر دیگر افزایش می یابد. واحد کنترل از راه دور به سادگی ساخته شده است. ما یک LED IR را از طریق یک مقاومت 100-150 اهم به یک "تاج" 9 ولتی وصل می کنیم، در حالی که تنظیم می شود دکمه معمولیبدون تثبیت، آن را با نوار برق به باتری می چسبانیم، در حالی که نوار الکتریکی نباید با تابش مادون قرمز LED IR تداخل داشته باشد.

    عکس تمام عناصری را که برای مونتاژ مدار نیاز داریم نشان می دهد

    1. فتودیود (تقریباً هر کدام ممکن است)
    2. مقاومت برای 1 اهم و برای 300-500 اهم (برای وضوح، من مقاومت های 300 و 500 اهم را در عکس قرار داده ام)
    3. مقاومت تریمر 47 کوم.
    4. ترانزیستور KT972A یا مشابه در جریان و ساختار.
    5. از هر LED کم ولتاژ می توان استفاده کرد.

    نمودار شماتیک گیرنده کنترل IR روی یک ترانزیستور:


    بیایید شروع به ساخت ردیاب نور کنیم. طرح او از یک کتاب مرجع گرفته شده است. ابتدا تخته را با یک نشانگر دائمی بکشید. اما شما می توانید آن را حتی با نصب لولایی انجام دهید، اما توصیه می شود این کار را روی textolite انجام دهید. تابلو من شبیه این است:


    خوب، اکنون، البته، ما به لحیم کاری عناصر می پردازیم. لحیم کاری ترانزیستور:



    ما یک مقاومت 1 کیلو اهم (کیلو اهم) و یک مقاومت تریم را لحیم می کنیم.


    و در نهایت، ما آخرین عنصر را لحیم می کنیم - این یک مقاومت 300 - 500 اهم است، من 300 اهم تنظیم کردم. آن را با سمت معکوس تخته مدار چاپیچون به خاطر پنجه های جهشیش اجازه نداد از جلو پریپیات کنم =)


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

    در ویدیو، فاصله کم است، زیرا لازم بود همزمان به دوربین و کنترل از راه دور نگاه کنید. بنابراین، نمی‌توانم جهت‌های کنترل از راه دور را متمرکز کنم. اگر به جای فتودیود یک مقاومت نوری قرار دهید، به نور واکنش نشان می دهد، که شخصاً تأیید شده است، حساسیت حتی بهتر از مدارهای مقاومت نوری اصلی است. من 12 ولت را به مدار اعمال کردم، خوب کار می کند - LED به شدت روشن می شود، روشنایی و حساسیت مقاومت نوری تنظیم می شود. در حال حاضر طبق این طرح المان هایی را انتخاب می کنم که بتوانم گیرنده IR را از 220 ولت تغذیه کنم و خروجی به لامپ نیز 220 ولت بود. با تشکر از نمودار ارائه شده: thehunteronghosts . مواد ارائه شده توسط:

    مدرن ترین خانه تجهیزات الکترونیکیدارای یک کنترل از راه دور که از اشعه مادون قرمز (IR) به عنوان روشی برای انتقال اطلاعات استفاده می کند. کانال داده IR در برخی از دستگاه های سیستم " " که ما تولید می کنیم استفاده می شود.

    اصل انتقال IR اطلاعات

    تابش مادون قرمز یا حرارتی است تابش الکترومغناطیسی، که هر جسمی را که تا دمای معینی گرم شده است ساطع می کند. محدوده IR در نزدیک ترین ناحیه طیف به نور مرئی، در قسمت طول موج بلند آن قرار دارد و منطقه را از حدود 750 نانومتر تا 1000 میکرومتر اشغال می کند. تشعشعات فروسرخ بیشتر تابش ساطع شده توسط لامپ های رشته ای را تشکیل می دهد، تقریباً نیمی از تابش خورشید. خواص نوری مواد در تابش مادون قرمز با خواص آنها در نور مرئی متفاوت است. به عنوان مثال، برخی از شیشه ها در برابر اشعه مادون قرمز مات هستند و پارافین، بر خلاف نور مرئی، نسبت به اشعه مادون قرمز شفاف است و برای ساخت عدسی های مادون قرمز استفاده می شود. برای ثبت آن از گیرنده های حرارتی و فوتوالکتریک و مواد مخصوص عکاسی استفاده می شود. منبع پرتوهای IR، علاوه بر اجسام گرم شده، معمولاً از تابشگرهای حالت جامد استفاده می شود - لیزرهای IR؛ فتودیودها، فروتیستورها یا بولومترها برای ثبت استفاده می شوند. برخی از ویژگی های اشعه مادون قرمز آن را برای استفاده در دستگاه های انتقال داده مناسب می کند:

    • ساطع کننده های حالت جامد مادون قرمز (IR LED) فشرده، تقریباً بدون اینرسی، مقرون به صرفه و ارزان هستند.
    • گیرنده های IR کوچک و همچنین ارزان هستند
    • پرتوهای IR به دلیل نامرئی بودن، توجه فرد را منحرف نمی کند
    • با وجود شیوع اشعه IR و سطح بالا"پس زمینه"، منابع کمی از نویز ضربه ای در منطقه IR وجود دارد
    • تابش IR کم توان بر سلامت انسان تأثیری ندارد
    • پرتوهای IR به خوبی از اکثر مواد (دیوارها، مبلمان) منعکس می شوند.
    • تشعشعات IR به دیوارها نفوذ نمی کند و در عملکرد سایر دستگاه های مشابه تداخلی ایجاد نمی کند

    همه اینها امکان استفاده موفقیت آمیز از روش IR برای انتقال اطلاعات را در بسیاری از دستگاه ها فراهم می کند. فرستنده ها و گیرنده های IR در الکترونیک مصرفی و صنعتی استفاده می شوند. فناوری رایانه، سیستم های امنیتی، سیستم های انتقال داده در فواصل طولانی از طریق فیبر نوری. اجازه دهید عملکرد سیستم های کنترل الکترونیکی مصرفی (ریموت) را با جزئیات بیشتری در نظر بگیریم.

    هنگامی که دکمه ای فشار داده می شود، کنترل از راه دور IR یک پیام رمزگذاری شده منتشر می کند و گیرنده نصب شده در دستگاه کنترل شده آن را دریافت کرده و اقدامات لازم را انجام می دهد. به منظور انتقال یک توالی منطقی، کنترل از راه دور یک بسته پالسی از پرتوهای IR تولید می کند، اطلاعاتی که در آن توسط مدت یا فاز پالس هایی که بسته را تشکیل می دهند، مدوله یا کدگذاری می شود. اولین دستگاه های کنترلی از دنباله هایی از پالس های کوتاه استفاده می کردند که هر کدام بخشی از آنها بود اطلاعات مفید. با این حال، در آینده، آنها شروع به استفاده از روش تعدیل یک فرکانس ثابت با یک دنباله منطقی کردند که در نتیجه آن پالس های منفرد به فضا منتشر نمی شوند، بلکه بسته هایی از پالس های فرکانس مشخصی منتشر می شوند. داده ها قبلاً با مدت زمان و موقعیت این انفجارهای فرکانس رمزگذاری شده ارسال می شوند. گیرنده IR چنین دنباله ای را دریافت می کند و برای به دست آوردن یک پاکت، دمدولاسیون را انجام می دهد. این روش انتقال و دریافت با ایمنی بالای نویز مشخص می شود، زیرا گیرنده که بر روی فرکانس فرستنده تنظیم شده است، دیگر به تداخل با فرکانس متفاوت پاسخ نمی دهد. امروزه معمولاً از یک ریزمدار ویژه برای دریافت سیگنال IR استفاده می شود که ترکیبی از آشکارساز نوری، تقویت کننده با فیلتر باند گذر تنظیم شده به فرکانس حامل خاص، تقویت کننده با AGC و آشکارساز برای به دست آوردن پوشش سیگنال است. علاوه بر فیلتر الکتریکی، چنین ریز مداری دارای یک فیلتر نوری تنظیم شده با فرکانس تابش IR دریافتی است که امکان استفاده از فرکانس تابش LED را که طیف انتشار آن دارای عرض کمی است، تا حداکثر میزان ممکن می سازد. . در نتیجه چنین راه حل های فنی، دریافت سیگنال مفید کم مصرف در پس زمینه تابش IR از منابع دیگر امکان پذیر شد. لوازم خانگی، رادیاتورهای گرمایشی و غیره کار دستگاه های مدرنکنترل IR کاملا قابل اعتماد است و بسته به اجرا و میزان تداخل، برد آن از چند متر تا 40 متر یا بیشتر است.

    فرستنده سیگنال IR

    فرستنده سیگنال IR، کنترل از راه دور IR، اغلب توسط باتری یا باتری تغذیه می شود. بنابراین مصرف آن باید تا حد امکان کم باشد. از سوی دیگر، سیگنال ساطع شده باید از قدرت قابل توجهی برای اطمینان برخوردار باشد دوربردانتقال. چنین مشکلاتی که از نظر هزینه انرژی مخالف هستند، با روش انتقال بسته های رمزگذاری شده پالس کوتاه با موفقیت حل می شوند. بین انتقال، کنترل از راه دور عملاً انرژی مصرف نمی کند. وظیفه کنترل از راه دور این است که دکمه های صفحه کلید را نظرسنجی کند، اطلاعات را رمزگذاری کند، فرکانس مرجع را تعدیل کند و یک سیگنال به امیتر صادر کند. برای ساخت کنسول های مختلف میکرو مدارهای تخصصیبا این حال، میکروکنترلرهای همه منظوره مدرن مانند AVR یا PIC نیز می توانند برای این اهداف استفاده شوند. نیاز اصلی برای چنین میکروکنترلرهایی در دسترس بودن حالت خواب بسیار کم انرژی و امکان احساس فشار دکمه در این حالت است.

    فرستنده سیگنال IR تحت اثر جریان تحریک، اشعه مادون قرمز ساطع می کند. جریان به امیتر معمولاً از قابلیت های میکروکنترلر فراتر می رود، بنابراین برای تولید جریان مورد نیاز، ساده ترین جریان روی یک ترانزیستور نصب می شود. برای کاهش تلفات، هنگام انتخاب ترانزیستور، باید به ضریب تقویت فعلی آن - β یا h21 توجه کنید. هر چه این ضریب بیشتر باشد، کارایی دستگاه بیشتر می شود. فرستنده های مدرن از ترانزیستورهای میدانی یا CMOS استفاده می کنند که کارایی آنها در فرکانس های مورد استفاده محدود کننده است.

    طرح فوق بدون اشکال نیست، به ویژه، هنگامی که سطح شارژ باتری کاهش می یابد، قدرت تابش کاهش می یابد، که منجر به کاهش برد خواهد شد. برای کاهش وابستگی به ولتاژ تغذیه، می توانید از ساده ترین تثبیت کننده جریان استفاده کنید.

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

    به منظور افزایش توان پالس فرستنده، و بر این اساس، دامنه آن، سیگنال فرکانس اصلی با پیچ و خم متفاوت است و دارای چرخه کاری 3 - 6 است. بنابراین، قدرت پالس با حفظ یا حتی کاهش افزایش می یابد. توان متوسط. جریان ضربه ای LED بر اساس مقادیر پاسپورت آن انتخاب می شود و می تواند به یک یا چند آمپر برسد. جریان پالس در اکثر ریموت های IR از 100 میلی آمپر تجاوز نمی کند. در این حالت، از آنجایی که فرکانس مرجع نیز دارای چرخه کاری کم است و مدت زمان پیام کدگذاری شده از 20 تا 30 میلی‌ثانیه تجاوز نمی‌کند، جریان متوسط ​​هنگام فشار دادن دکمه از یک میلی آمپر تجاوز نمی‌کند. بالا بردن جریان ضربه ای LED با کاهش راندمان و کاهش طول عمر همراه است. LED های مادون قرمز مدرن دارای راندمان 100-200 میلی وات انرژی تابشی در جریان 50 میلی آمپر هستند. جریان متوسط ​​مجاز نباید از 10-20 میلی آمپر تجاوز کند. منبع تغذیه LED باید دارای یک فیلتر RC باشد که اثر نویز ضربه ای را بر منبع تغذیه میکروکنترلر کاهش می دهد. محدوده LED های مورد استفاده برای کنترل از راه دور IR در اکثر تجهیزات خانگی حداکثر در منطقه 940 نانومتر است.

    مدت زمان یک بسته واحد از فرکانس مرجع برای پذیرایی مطمئننه کمتر از 12-15 و نه بیشتر از 200 دوره. هنگام ارسال یک پیام رمزگذاری شده، فرستنده در ابتدا مقدمه ای را تشکیل می دهد که یک یا چند بسته از فرکانس مرجع است و به گیرنده اجازه می دهد سطوح بهره و پس زمینه مورد نیاز را تنظیم کند. داده ها در یک بسته کدگذاری شده به صورت صفر و یک منتقل می شوند که با مدت یا فاز (فاصله بین بسته های مجاور) تعیین می شوند. مدت زمان کل پیام کدگذاری شده اغلب از چند بیت تا چند ده بایت متغیر است. ترتیب توالی، علامت شروع و مقدار داده ها با فرمت پیام تعیین می شود.

    گیرنده سیگنال IR

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

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

    • ردیاب نوری - فتودیود
    • تقویت کننده یکپارچه که سیگنال مفید را در سطح پس زمینه استخراج می کند
    • محدود کننده ای که سیگنال را به سطح منطقی می رساند
    • فیلتر باند گذر که روی فرکانس فرستنده تنظیم شده است
    • دمدولاتور - آشکارساز که پوشش سیگنال مفید را استخراج می کند.

    محفظه چنین گیرنده ای از ماده ای ساخته شده است که به عنوان یک فیلتر اضافی عمل می کند که پرتوهای مادون قرمز با طول موج مشخص را منتقل می کند. گیرنده های یکپارچه مدرن دریافت سیگنال مفید را در سطح پس زمینه ای که چندین ده بار بیشتر از آن است امکان پذیر می کند و در عین حال انفجارهای فرکانسی را که فقط 4 تا 5 دوره دارند احساس می کنند.

    گیرنده تابش باید با فیلتر RC تغذیه شود تا حساسیت افزایش یابد. میکروکنترلر دامنه وسیعی از تداخل در خطوط برق ایجاد می کند که می تواند بر عملکرد گیرنده تأثیر بگذارد.

    فرمت های انتقال IR

    سازندگان مختلف لوازم خانگی از ریموت کنترل های IR مختلف در محصولات خود استفاده می کنند. زیرا ریموت فقط باید با آن ارتباط برقرار کند دستگاه خاص، توالی داده ای را تولید می کند که منحصر به نوع تجهیزات آن است. داده های ارسالی، علاوه بر فرمان کنترل واقعی، آدرس دستگاه، داده های آزمایشی و غیره را شامل می شود اطلاعات خدمات. علاوه بر این، تولید کنندگان مختلف استفاده می کنند راه های مختلفتوالی داده ها و روش های مختلف انتقال حالت های منطقی. رایج‌ترین روش‌های رمزگذاری بیت‌های اطلاعاتی، تغییر مدت زمان مکث بین بسته‌ها (روش فاصله) و کدگذاری با ترکیبی از حالت‌ها (روش دو فازی) است. با این حال، راه هایی برای رمزگذاری بیت های اطلاعات بر اساس مدت زمان، ترکیبی از مدت زمان و مکث و غیره وجود دارد. رایج ترین فرمت های انتقال

    تاریخچه کنترل از راه دور

    یکی از اولین نمونه های دستگاه های کنترل از راه دور توسط نیکولا تسلا در سال 1893 اختراع و ثبت شد.

    اولین کنترل از راه دور تلویزیون توسط یک شرکت آمریکایی ساخته شد شرکت رادیویی زنیتدر اوایل دهه 1950 با کابل به تلویزیون وصل شد. در سال 1955 یک کنترل از راه دور بی سیم ساخته شد. فلش‌ماتیک، بر اساس ارسال یک پرتو نور در جهت فتوسل. متأسفانه، فتوسل نتوانست نور را از کنترل از راه دور از نور از منابع دیگر تشخیص دهد. علاوه بر این، لازم بود که کنترل از راه دور دقیقاً به سمت گیرنده باشد.

    کنترل از راه دور Zenith Space Commander 600

    ریموت جهانی هارمونی 670

    جنگ

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

    توسط کابلی به طول چندین مایل که به قرقره کشتی بسته شده است. این هواپیما برای هدایت دقیق آنها مورد استفاده قرار گرفت. این قایق ها حامل مواد منفجره بزرگ در کمان بودند و با سرعت 30 گره دریایی حرکت می کردند.

    • ارتش سرخ کارگران و دهقانان در جنگ 1939-1940 شوروی و فنلاند و در آغاز جنگ بزرگ میهنی از تانک های کنترل از راه دور استفاده کردند. تله تانک توسط رادیو از مخزن کنترل در فاصله 500-1500 متری کنترل می شد، بنابراین یک گروه تله مکانیکی به دست آمد. ارتش سرخ حداقل دو گردان تله تانک را در آغاز جنگ جهانی دوم وارد میدان کرد. ارتش سرخ همچنین دارای قایق های کنترل از راه دور و هواپیماهای آزمایشی بود. در همین حال، گردان های تانک آلمانی کاملاً مجهز به رادیو بودند، هر تانک دارای یک دستگاه واکی تاکی بود که نشان دهنده برتری عظیم فناوری و صنعت آلمان در آغاز جنگ است.
    • اطلاعات دقیق در مورد استفاده از کنترل از راه دور برای اهداف خاص در زمان ما عمدتا طبقه بندی شده است

    هواپیمایی

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

    حمل و نقل آب

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

    راه آهن و مترو

    کنترل از راه دور برای کنترل تجهیزات قطار، تجهیزات مسیر، تجهیزات ایستگاه (پله برقی، روشنایی و غیره) استفاده می شود.

    تولید صنعتی و ساختمانی

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

    آزمایشگاه های فنی تحقیق و تولید

    برخی از انواع تجهیزات آزمایشگاهی با کنترل از راه دور کنترل می شوند

    فضا

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

    ارتباطات و سایر سیستم های فناوری اطلاعات

    کنترل از راه دورممکن است دارای تکرار کننده، چراغ های رادیویی، و همچنین ایستگاه های رادیویی ارتباطی، رادارها و سایر سیستم ها باشد

    صنعت برق

    در صنعت برق از واحدهای کنترل از راه دور برای کنترل تاسیسات سیستم قدرت و مدیریت مصرف انرژی استفاده می شود

    طرح یا "چگونه دستگاه شروع شد"

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

    مفهوم
    دستگاه ما باید بتواند سیگنالی را از کنترل از راه دور IR دریافت کند، دکمه "خود" را از سایرین تشخیص دهد و بار را کنترل کند. اولین و آخرین نقطه مانند یک تبر ساده است. اما مورد دوم کمی جالب تر است. تصمیم گرفتم محدود به کنترل از راه دور خاصی نباشم (چرا؟ - "جالب نیست!")، بلکه سیستمی بسازم که بتواند با آن کار کند. مدل های مختلفاز راه دور از تجهیزات مختلف. اگر فقط گیرنده IR تسلیم نمی شد و با اطمینان سیگنال را می گرفت.

    ما سیگنال را با استفاده از ردیاب نوری می گیریم. و هر گیرنده مناسب نیست - فرکانس حامل باید با فرکانس کنترل از راه دور مطابقت داشته باشد. فرکانس حامل گیرنده در علامت گذاری آن نشان داده شده است: TSOP17xx - 17 مدل گیرنده است و xx فرکانس بر حسب کیلوهرتز است. و فرکانس حامل کنترل از راه دور را می توان در اسناد یا در اینترنت یافت. در اصل، سیگنال دریافت می شود حتی اگر فرکانس ها مطابقت نداشته باشند، اما حساسیت آن بیهوده است - باید کنترل از راه دور را مستقیماً به گیرنده فشار دهید.

    هر شرکت تولید کننده لوازم خانگی، مجبور به رعایت استانداردها در ساخت "آهن" است. و فرکانس های مدولاسیون کنسول ها نیز استاندارد هستند. اما توسعه دهندگان از سمت نرم افزار خارج می شوند - تنوع پروتکل های تبادل بین کنترل از راه دور و دستگاه به سادگی شگفت انگیز است. بنابراین، مجبور شدم یک الگوریتم جهانی بیابم که به پروتکل تبادل اهمیتی نمی دهد. اینطوری کار میکنه:

    حافظه دستگاه ذخیره می شود پست های بازرسی. برای هر نقطه، باید زمان و وضعیت خروجی را از گیرنده IR - 0 یا 1 ضبط کنید.
    هنگام دریافت سیگنال از کنترل از راه دور، MK هر نقطه را به صورت متوالی بررسی می کند. اگر همه نقاط مطابقت داشتند، این همان دکمه ای بود که دستگاه برای آن برنامه ریزی شده بود. و اگر خروجی از گیرنده حداقل در یک نقطه با قالب مطابقت نداشته باشد، دستگاه به هیچ وجه واکنشی نشان نخواهد داد.

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

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

    ثانیاً، نویز کوچک (معمولاً مانند پالس های کوتاه نادر به نظر می رسد) در بیشتر موارد مانند یک جنگل است - زیرا اگر مستقیماً روی نقطه کنترل نیفتد ، هیچ چیز روی سیستم تأثیر نمی گذارد. بنابراین ما حفاظت از نویز طبیعی داریم.

    خطای نوع دوم (معروف به Command Missing) به این دلیل است که نقطه بسیار نزدیک به لبه پالس (به محلی که سیگنال در خروجی گیرنده سطح خود را تغییر می دهد) قرار دارد.
    تصور کنید که چند میکروثانیه پس از نقطه شکست، سیگنال باید از HIGH به LOW تغییر کند. حالا تصور کنید که کنسول یک فرمان را کمی سریعتر از حد معمول صادر کند (اغلب این اتفاق می افتد). جبهه ضربه در زمان جابجا شده است و اکنون قبل از ایست بازرسی رخ می دهد! خروجی گیرنده با الگو مطابقت ندارد و سیستم ریست می شود.
    برای جلوگیری از این اتفاق، باید نقاط کنترل را دور از جلو قرار دهید.

    شما می گویید: «همه چیز عالی است، اما نقاط کنترل را از کجا بیاورم؟». بنابراین من برای مدت طولانی در این مورد گیر کرده ام. در نتیجه تصمیم گرفتم قرار دادن امتیاز را به شما بسپارم.
    دستگاه دارای جامپر J1 می باشد. اگر در هنگام روشن شدن بسته شود، دستگاه به طرز احمقانه ای همه چیزهایی را که گیرنده IR خروجی می دهد از طریق UART منتقل می کند. در طرف دیگر سیم، این داده ها توسط برنامه من دریافت می شود که پالس هایی را از TSOP روی صفحه کامپیوتر نمایش می دهد. شما فقط باید نقاط بازرسی این نمودار را با ماوس پراکنده کنید و آنها را در EEPROM فلش کنید. اگر راهی برای استفاده از UART وجود ندارد، جامپر J2 به کمک می آید. هنگامی که بسته است، دستگاه داده ها را از طریق UART خروجی نمی دهد، بلکه آن را به EEPROM اضافه می کند.


    طرح
    ساده تا زشتی من ATTiny2313 را به عنوان یک کنترلر گرفتم. فرکانس 4 مگاهرتز، از کوارتز، یا زنجیره RC داخلی.
    خطوط RX و TX برای ارتباط و برق به یک کانکتور جداگانه آورده می شوند. در آنجا - RESET نیز نمایش داده می شود تا بتوانید MK را بدون حذف آن از دستگاه reflash کنید.
    خروجی ردیاب نوری به INT0 متصل است، از طریق یک مقاومت 33k به برق کشیده می شود. اگر تداخل قوی وجود داشته باشد، می توانید یک مقاومت کوچکتر را در آنجا قرار دهید، به عنوان مثال، 10k.
    روی پین های D4 و D5 جامپرهایی وجود دارد. Jumper1 به D5 و Jumper2 به D4.

    یک ماژول پاور به پایه D6 متصل است. علاوه بر این ، من کوچکترین مواردی را که داشتم - BT131 را گرفتم. جریان آن 1A است - خنک نیست، اما مورد خیلی بزرگ نیست - TO92. برای یک بار کوچک، همین. من یک اپتوکوپلر روی MOC3023 ساختم - سنسور عبور از صفر ندارد، یعنی برای کنترل صافبارگذاری (در اینجا من آن را اجرا نکردم).

    پورت B تقریباً به طور کامل به کانکتور خروجی می شود - می توانید یک نشانگر یا چیز دیگری را در آنجا وصل کنید. من از همین کانکتور برای فلش کردن دستگاه استفاده می کنم. پین B0 توسط LED اشغال شده است.

    انرژی کل از طریق LM70L05 و پل دیودی تامین می شود. یعنی می توانید وارد شوید ولتاژ ACبه عنوان مثال، از یک ترانسفورماتور. نکته اصلی این است که از 25 ولت تجاوز نمی کند، در غیر این صورت یا تثبیت کننده یا کندر می میرند.

    پرداخت به این صورت است:


    بله با بردی که در آرشیو هست کمی متفاوت است. اما این به این معنی نیست که من خودم را به یک برد پیشرفته تبدیل کردم و یک نسخه دمو برای شما قرار دادم :). برعکس، برد من چند اشکال دارد که در نسخه نهایی وجود ندارد: من پین RESET را روی پین ندارم و LED روی PB7 آویزان است. و این برای برنامه نویسی درون مدار چندان مناسب نیست.

    سیستم عامل
    این دستگاه می تواند در دو حالت کار کند. در اول - زمانی که J2 بسته است - به سادگی پالس هایی را از آشکارساز نوری به UART منتقل می کند. بیایید با آن شروع کنیم:

    UART با سرعت 9600 کار می کند، یعنی در فرکانس 4 مگاهرتز، ما 25 را در رجیستر UBRR می نویسیم.

    ... صبر می کنیم تا پای ردیاب فوت شود. به محض اینکه سقوط کرد (در ابتدا به یک مقاومت کششی آویزان می شود)، تایمر (TIMER / COUNTER1، 16 بیتی) را راه اندازی می کنیم و وقفه INT0 را برای هر تغییری در ورودی روشن می کنیم - هر تغییر منطقی. (ICS00 = 1). تایمر در حال تیک تیک است... ما منتظریم.

    ضربه کنترل از راه دور به پایان رسید - خروجی ردیاب نور بالا رفت، وقفه کار کرد. حالا مقدار تایمر را در حافظه می نویسیم و تایمر را ریست می کنیم. همچنین باید نشانگر نوشتن را افزایش دهید تا در وقفه بعدی در محل حافظه دیگری بنویسید.

    یک پالس دیگر ... خروجی انقباض ... وقفه ... نوشتن مقدار تایمر در حافظه ... تنظیم مجدد تایمر ... اشاره گر + 2 (هر بار دو بایت می نویسیم) ...

    و به همین ترتیب ادامه می یابد تا زمانی که مشخص شود پایان (رم) نزدیک است. یا تا زمانی که سیگنال تمام شود. در هر صورت تایمر را متوقف می کنیم و وقفه ها را غیرفعال می کنیم. سپس، به آرامی، همه چیزهایی را که جمع آوری کرده ایم در UART بیرون می اندازیم. یا، اگر J2 بسته است - در EEPROM.

    در انتها می توانید صریح کنید چرخه بی پایانو منتظر تنظیم مجدد باشید - ماموریت کامل شده است.
    و خروجی دنباله ای از اعداد خواهد بود. هر یک از آنها زمان بین تغییرات در وضعیت خروجی TSOP است. با دانستن اینکه این دنباله چگونه شروع شد (و ما می دانیم! این یک انتقال از HIGH به LOW است)، می توانیم کل تصویر را بازیابی کنیم:

    پس از مقداردهی اولیه، می نشینیم و منتظر می مانیم تا TSOP بچرخد. به محض این که این اتفاق افتاد، اولین نکته را از EEPROM خواندیم و در یک چرخه ساده به همان اندازه که در آنجا نوشته شده است، بلاانت می کنیم. در این مورد، زمان را در بسته های 32 us در نظر می گیریم. با بیرون آمدن از گیجی، بررسی می کنیم - چیزی در خروجی گیرنده وجود دارد.

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

    اگر خروجی با انتظارات ما مطابقت داشت، نقطه بعدی را بارگذاری می کنیم و آن را بررسی می کنیم. بنابراین تا زمانی که به نقطه ای برخورد کنیم که زمان آن = 0 است. این به این معنی است که هیچ نقطه دیگری وجود ندارد. بنابراین کل تیم همزمان شد و شما می توانید بار را بکشید.

    بنابراین، به نظر می رسد، یک الگوریتم ساده است. اما هر چه ساده تر، قابل اعتماد تر!

    سافتینا
    در ابتدا فکر کردم که قالب را به صورت خودکار ذخیره کنم. یعنی شما جامپر را می بندید، ریموت کنترل را داخل TSOP می کنید و MK خودش نقاط کنترل را تنظیم می کند و به EEPROM اضافه می کند. سپس مشخص شد که این ایده دیوانه کننده است: یک الگوریتم کم و بیش کافی بسیار پیچیده خواهد بود. یا جهانی نخواهد بود.

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


    به دستگاه آموزش می دهیم که به دکمه مورد نظر روی ریموت کنترل پاسخ دهد:

    1) جامپر J1 را ببندید.

    2) UART را وصل کنید. اگر راهی برای اتصال آن وجود ندارد، جامپر J2 را می بندیم. سپس دستگاه داده ها را در EEPROM پرتاب می کند.

    3) برق را روشن کنید.

    4) اگر تصمیم گرفتیم از UART استفاده کنیم، نرم افزار را راه اندازی کرده و به نوار وضعیت (در پایین پنجره) نگاه می کنیم. باید بگوید " پورت COMباز کن." اگر نوشته نشده باشد، ما به دنبال یک گیره در اتصال هستیم و دکمه "اتصال" را فشار می دهیم.

    5) کنترل از راه دور را بردارید و فشار دهید دکمه مورد نظردر TSOP به محض اینکه دستگاه تشخیص داد که سیگنال از بین رفته است، LED روشن می شود. بلافاصله پس از آن، دستگاه شروع به انتقال داده از طریق UART (یا نوشتن به EEPROM) می کند. وقتی انتقال تمام شد، LED خاموش می شود.

    6.1) اگر از طریق UART کار می کنیم، دکمه "دانلود از طریق UART" را فشار دهید. و ما از کتیبه "آپلود نمودار ..." در نوار وضعیت خوشحال می شویم.

    6.2) اگر از طریق EEPROM کار می کنیم، سپس حافظه EEPROM را با برنامه نویس می خوانیم و آن را در * ذخیره می کنیم. فایل bin. (دقیقا بن!). سپس دکمه Load.bin را در برنامه فشار داده و فایل را از EEPROM انتخاب می کنیم.

    7) ما به نمودار بارگذاری شده نگاه می کنیم - این یک سیگنال از TSOP است. یک نوار لغزنده در نوار کناری وجود دارد - می توانید مقیاس را با آن تغییر دهید. اکنون ماوس را روی نمودار فشار می دهیم - نقاط کنترل را تنظیم می کنیم. امتیازها با دکمه سمت راست حذف می شوند. فقط آنها را خیلی نزدیک به جلو قرار ندهید. چیزی شبیه به این معلوم می شود:


    8) روی "Save.bin" کلیک کنید و امتیازها را ذخیره کنید. سپس این فایل را در EEPROM فلش می کنیم. از آنجایی که زمان بین دو نقطه را به 7 بیت تقسیم می کنیم، به 4 میلی ثانیه محدود می شود. اگر زمان بین دو نقطه از این مقدار بیشتر شود، برنامه از فشار دادن نقاط به فایل خودداری می کند.

    9) جامپرها را بردارید. دستگاه را دوباره راه اندازی می کنیم. آماده!

    ویدئوی تست