فهرست مطالب:

درک پروتکل IR کنترل از راه دور Air Conditoner: 9 مرحله (همراه با تصاویر)
درک پروتکل IR کنترل از راه دور Air Conditoner: 9 مرحله (همراه با تصاویر)

تصویری: درک پروتکل IR کنترل از راه دور Air Conditoner: 9 مرحله (همراه با تصاویر)

تصویری: درک پروتکل IR کنترل از راه دور Air Conditoner: 9 مرحله (همراه با تصاویر)
تصویری: Napoleonic Wars 1809 - 14: Downfall 2024, جولای
Anonim
درک پروتکل IR کنترل از راه دور Air Conditoner
درک پروتکل IR کنترل از راه دور Air Conditoner

مدتی است که در مورد پروتکل های IR یاد می گیرم. نحوه ارسال و دریافت سیگنالهای IR در این مرحله ، تنها چیزی که باقی می ماند پروتکل IR ریموت های AC است.

برخلاف ریموت های سنتی تقریباً همه دستگاه های الکترونیکی (به عنوان مثال تلویزیون) که در آن زمان اطلاعات فقط یک دکمه ارسال می شود ، در ریموت های کنترل AC همه پارامترها رمزگذاری و ارسال می شوند. بنابراین ، رمزگشایی سیگنال از میکروکنترلر کمی مشکل است.

در این دستورالعمل ، من توضیح خواهم داد که چگونه می توانیم پروتکل های IR را از راه دور AC به راحتی رمزگشایی کنیم. من از صفحه کلید HID IR خود برای خواندن و رمزگشایی سیگنال های IR با نوشتن یک برنامه جدید استفاده خواهم کرد. اما می توانید تقریباً از هر میکروکنترلری که با آن آشنا هستید استفاده کنید تا زمانی که از وقفه های خارجی همراه با یک دستگاه تعدیل کننده IR TSOP پشتیبانی می کند.

مرحله 1: ابزار مورد نیاز

ایستگاه لحیم کاری. (به عنوان مثال ، این)

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

انتخاب 2. (به عنوان مثال ، این)

همچنین می توانید از PICKIT 3 استفاده کنید ، اما سپس باید از یک مبدل USB-to-UART جداگانه برای خواندن خروجی از میکروکنترلر استفاده کنید.

یک اسیلوسکوپ

خوب ، من آن را ندارم. اما اگر یکی از آنها را داشته باشید ، زندگی شما بسیار ساده تر می شود. اگر می توانید یکی را خریداری کنید ، حتماً آن را خریداری کنید.

یک کامپیوتر

خوب.. Duh

مرحله 2: اجزای مورد نیاز

  • PIC18F25J50 (به عنوان مثال ، اینجا)
  • گیرنده TSOP IR. (به عنوان مثال ، اینجا)
  • تنظیم کننده LM1117 3.3v. (به عنوان مثال در اینجا)
  • خازن های 2x220nf
  • مقاومت 470 اهم
  • مقاومت 10 کیلو اهم

اینها اجزای مورد نیاز برای ساخت پروژه صفحه کلید HID IR من هستند.

ریموت AC

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

مرحله 3: نحوه کار (پروتکل IR)

چگونه کار می کند (پروتکل IR)
چگونه کار می کند (پروتکل IR)

قبل از ادامه ، بیایید برخی از اصول را درک کنیم.

از راه دور IR با استفاده از یک چراغ IR برای انتقال سیگنال از راه دور به گیرنده با روشن و خاموش کردن سریع LED. اما بسیاری از منابع نوری دیگر نیز نور IR تولید می کنند. بنابراین ، برای خاص شدن سیگنال ما ، از یک سیگنال PWM در فرکانس خاصی استفاده می شود.

فرکانس های مورد استفاده در تقریباً همه ریموت های IR 30 کیلو هرتز ، 33 کیلو هرتز ، 36 کیلو هرتز ، 38 کیلو هرتز ، 40 کیلو هرتز و 56 کیلو هرتز است.

اما رایج ترین آنها 38 کیلو هرتز و 40 کیلو هرتز هستند.

ماژول TSOP سیگنال حامل (به عنوان مثال 38khz) را به منطق مناسب تر TTL GND و VCC تغییر می دهد.

مدت زمان HIGH منطق LOW نشان دهنده بیت "1" یا "0" است. مدت زمان در هر پروتکل از راه دور متفاوت است. (به عنوان مثال ، NEC)

برای درک دقیق پروتکل IR ، می توانید به این سند مراجعه کنید.

مرحله 4: از راه دور

کنترل
کنترل

ریموت مورد استفاده من متعلق به یک کولر گازی قدیمی است که در اتاق من نصب شده است. بنابراین هیچ صفحه نمایش فانتزی ندارد اما تقریباً مانند هر ریموت AC با صفحه نمایش عمل می کند.

با استفاده از ریموت می توانیم تنظیمات زیر را تغییر دهیم.

  • روشن/خاموش کردن دستگاه
  • حالت خواب روشن/خاموش
  • روشن/خاموش کردن حالت توربو
  • روشن/خاموش شدن
  • سرعت فن (کم ، متوسط ، زیاد)
  • انتخاب حالت (سرد ، خشک ، فن)
  • دما (از 16 تا 30 درجه سانتیگراد)

مرحله 5: گرفتن نمونه های RAW

گرفتن نمونه های RAW
گرفتن نمونه های RAW
گرفتن نمونه های RAW
گرفتن نمونه های RAW

در تصویر ، نمونه های RAW را می بینید که توسط گیرنده TSOP ir بیرون می ریزد. اعداد نشان دهنده مدت زمان انفجار و علامت +/- نشان دهنده MARK و SPACE سیگنال است.

در اینجا 1 واحد 12 نشان می دهد (میکروثانیه)

بنابراین ، انفجار 80 نشان دهنده 960 درجه و غیره است.

کد زیر داده ها و خروجی ها را به مانیتور سریال pickit2 ضبط می کند. (IDE برای PIC MikroC PRO است)

به دلایلی ، ویرایشگر آموزشی با تگ کد اشتباه می کند. بنابراین ، من فقط تصویر کد را ضمیمه کرده ام ، لطفاً به تصویر دوم این مرحله مراجعه کنید.

من می خواهم کل پوشه پروژه را ضمیمه کنم ، اما در حال حاضر آشفته است و هنوز برای آنچه که من تلاش می کنم به دست آورم هنوز آمادگی کامل ندارد.

مرحله 6: مشاهده نمونه های RAW و تبدیل آن به فرمت قابل خواندن برای انسان

مشاهده نمونه های RAW و تبدیل آن به فرمت قابل خواندن برای انسان
مشاهده نمونه های RAW و تبدیل آن به فرمت قابل خواندن برای انسان
مشاهده نمونه های RAW و تبدیل آن به فرمت قابل خواندن برای انسان
مشاهده نمونه های RAW و تبدیل آن به فرمت قابل خواندن برای انسان
مشاهده نمونه های RAW و تبدیل آن به فرمت قابل خواندن برای انسان
مشاهده نمونه های RAW و تبدیل آن به فرمت قابل خواندن برای انسان

اگر به نمونه های RAW دقت کنیم ، می توانیم به راحتی مشاهده کنیم که چهار محدوده طول مدت انفجار وجود دارد.

~80

~45

~170

~250

سه مقدار آخر همیشه +250 -250 +250 است. بنابراین ، ما می توانیم با خیال راحت فرض کنیم که این بیت STOP داده پشت سر هم است. اکنون ، با استفاده از قطعه کد زیر ، می توانیم این چهار مدت پشت سر هم را به '-' ، 'تقسیم کنیم. و '1'

برای قطعه کد به تصویر سوم این مرحله مراجعه کنید.

شاید متوجه شده باشید که من عدد 80 ~ پشت سر هم در کد را نادیده گرفتم. این به این دلیل است که هر جایگذاری عجیب و غریب کد بی اهمیت است. با چاپ آرایه _rawprocess در مانیتور سریال ، (همانطور که در تصویر دوم این مرحله مشاهده می کنید.) ما تصویری بسیار واضح از داده های دریافت شده داریم. اکنون با فشار دادن دکمه های مختلف روی ریموت می توان تغییرات الگو را در داده ها مشاهده کرد که در مرحله بعد توضیح داده شده است.

مرحله 7: مشاهده الگوها با مقایسه چند نمونه خام

مشاهده الگوها با مقایسه چند نمونه خام
مشاهده الگوها با مقایسه چند نمونه خام
مشاهده الگوها با مقایسه چند نمونه خام
مشاهده الگوها با مقایسه چند نمونه خام
مشاهده الگوها با مقایسه چند نمونه خام
مشاهده الگوها با مقایسه چند نمونه خام

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

تنظیمات POWER SLEEP و TURBO فقط از یک بیت استفاده می کند. یعنی یا "." یا "1"

SWING از سه بیت مجاور یکدیگر استفاده می کند. که به صورت "…" یا "111" عمل می کند.

Fan and Mode select نیز از 3 بیت "1.." ".1." استفاده می کند. و '..1'

The Temperature از چهار بیت استفاده می کند که مقدار را با استفاده از بیت های کد شده باینری با افست 16 ارسال می کند که به معنی "…" است. مقدار 16 درجه سانتیگراد را در حالیکه '111' ارسال می کند 30 درجه سانتیگراد می فرستد

مرحله 8: داده های رمزگشایی شده را به مانیتور سریال خارج کنید

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

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

از اینجا به بعد ، کسانی که تجربه برخورد با پروتکل های ir را دارند از قبل می دانند چگونه سیگنال را مجدداً رمزگذاری کرده و ارسال آنها به AC را شروع کنند. اگر می خواهید ببینید چگونه می توان این کار را انجام داد ، منتظر دستورالعمل بعدی من باشید که تا یک هفته آینده ارسال خواهم کرد.

مرحله 9: پایان دهید

ممنون بابت وقتی که گذاشتید.

لطفا اگر از پروژه خوشتان آمد نظر خود را بنویسید. یا اگر متوجه اشتباه شده اید.

روز خوبی داشته باشید.

توصیه شده: