فهرست مطالب:

کنترل از راه دور جهانی با استفاده از ESP8266 (فای کنترل شده): 6 مرحله (همراه با تصاویر)
کنترل از راه دور جهانی با استفاده از ESP8266 (فای کنترل شده): 6 مرحله (همراه با تصاویر)

تصویری: کنترل از راه دور جهانی با استفاده از ESP8266 (فای کنترل شده): 6 مرحله (همراه با تصاویر)

تصویری: کنترل از راه دور جهانی با استفاده از ESP8266 (فای کنترل شده): 6 مرحله (همراه با تصاویر)
تصویری: Full Control of DC Motor with ESP8266 NodeMCU D1 Mini over WiFi 2024, جولای
Anonim
کنترل از راه دور جهانی با استفاده از ESP8266 (فای کنترل شده)
کنترل از راه دور جهانی با استفاده از ESP8266 (فای کنترل شده)
کنترل از راه دور جهانی با استفاده از ESP8266 (فای کنترل شده)
کنترل از راه دور جهانی با استفاده از ESP8266 (فای کنترل شده)
از راه دور جهانی با استفاده از ESP8266 (Wifi Controlled)
از راه دور جهانی با استفاده از ESP8266 (Wifi Controlled)

این پروژه جایگزین کنترل از راه دور معمولی برای همه لوازم خانگی مانند AC ، تلویزیون ، دستگاه پخش DVD ، سیستم موسیقی ، لوازم هوشمند است !!! ایجاد یک آشغال کامل از زباله های دور از راه دور ، ما را پازل می کند !!!

این پروژه با جایگزینی همه موارد با یک ریموت ، ما را از آشغال به راه دور نجات می دهد!

2 قسمت از این پروژه:

  • رمزگشایی هر راه دور
  • کدگذاری ESP8266 NODEMCU 1.0 (ماژول ESP-12E) یا هر نسخه esp8266 با اتصال ttl

مهم: لطفاً کل پروژه را به طور کامل بخوانید ، 3 دقیقه طول خواهد کشید ، اما به نصف نخوانید و به قطعات خود آسیب نرسانید…. من مسئولیت پذیر نخواهم بود

مرحله 1: پیکربندی Nodemcu با Arduino IDE

پیکربندی Nodemcu با Arduino IDE
پیکربندی Nodemcu با Arduino IDE
پیکربندی Nodemcu با Arduino IDE
پیکربندی Nodemcu با Arduino IDE
پیکربندی Nodemcu با Arduino IDE
پیکربندی Nodemcu با Arduino IDE
  • اول از همه Nodemcu (یکی از من lolin v3 است ، amica و سایر کلونها نیز کار خواهند کرد) را با کامپیوتر یا لپ تاپ وصل کنید.
  • اکنون درایور nodemcu را نصب کنید (جستجوی Google به شما کمک می کند).
  • پس از این Arduino IDE را باز کنید (البته باید آن را بارگیری و نصب کنید)
  • روی "Tools" در نوار ابزار Arduino کلیک کنید
  • روی "تابلو" کلیک کنید
  • "Board Board" را انتخاب کرده و عبارت esp8266 را نصب کنید جستجو کنید (اتمام آن کمی طول می کشد)
  • اکنون ، "Sketch" را از نوار ابزار arduino انتخاب کنید
  • "Include Library" را از آنجا "مدیریت کتابخانه ها" را انتخاب کنید
  • "IRremoteESP8266" را جستجو کرده و آن را نصب کنید

اکنون پیکربندی فقط از طریق "Tools" انجام می شود ، ما باید به "Boards" برویم "NodeMcu 1.0 (ESP 12-E)" یا نسخه دیگری از ESP8266 را انتخاب کنید.

مرحله 2: رمزگشایی از راه دور | CIRCUIT | کد

رمزگشایی از راه دور | CIRCUIT | کد
رمزگشایی از راه دور | CIRCUIT | کد
رمزگشایی از راه دور | CIRCUIT | کد
رمزگشایی از راه دور | CIRCUIT | کد
رمزگشایی از راه دور | CIRCUIT | کد
رمزگشایی از راه دور | CIRCUIT | کد
رمزگشایی از راه دور | CIRCUIT | کد
رمزگشایی از راه دور | CIRCUIT | کد

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

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

  • تخته نودمکو
  • گیرنده TSOP1738 IR یا برخی دیگر از گیرنده های IR
  • پرش کننده ها

اکنون ، مدار بالا را دنبال کنید ، اما پس از بارگذاری طرح در nodemcu از طریق آردوینو.

  • آردوینو را باز کرده و nodemcu را به لپ تاپ یا کامپیوتر متصل کنید
  • از "Files" مثال را انتخاب کنید پایین بروید و از IRremoteESP8266 IRrecvDump را انتخاب کنید
  • بارگذاری در nodemcu

TSOP1738 را به عنوان مدار به Nodemcu وصل کنید و "مانیتور سریال" را از آردوینو باز کنید تا کد هگز رمزگشایی شده هر ریموت را مانند تصاویر بالا مشاهده کنید. هنوز در حال بارگذاری کد برای مرجع ، آن را به روز کنید زیرا مدتهاست دیگر در این مورد نمی نویسم … با خیال راحت در github تغییر دهید

کد:

مرحله 3: رمزگذاری Nodemcu | جریان

رمزگذاری Nodemcu | جریان
رمزگذاری Nodemcu | جریان
رمزگذاری Nodemcu | جریان
رمزگذاری Nodemcu | جریان
رمزگذاری Nodemcu | جریان
رمزگذاری Nodemcu | جریان
رمزگذاری Nodemcu | جریان
رمزگذاری Nodemcu | جریان

پس از رمزگشایی کنترل از راه دور ، اکنون نوبت به بارگذاری کدهای هگز در Nodemcu است تا بتواند دستورات IR led را برای انتشار آن سیگنال های کد شش ضلعی بدهد.

  • توجه: نمی توان IR led را مستقیماً به Nodemcu وصل کرد زیرا نمی تواند جریان کافی را ارائه دهد.
  • بنابراین نیاز به ترانزیستور IR LED تعدیل شده است ، یعنی سیگنال Nodemcu به ترانزیستور و سپس IR LED می رود.
  • ترانزیستورهایی مانند 2N222 ، 2N3904 ، BC547 کار می کند اما

ترانزیستور 2N222 ، 2N3904 جریان جمع کننده: 600mA

جریان جمع کننده ترانزیستور BC547: 100 میلی آمپر

هر دو کار…

احتیاط جمع کننده ، امیتر ، ترمینال های پایه را مشاهده کنید زیرا BC547 و 2N222 دارای شرایط متفاوتی هستند. من از BC547 استفاده کردم زیرا به راحتی در دسترس است و خوب کار می کند.

کد از "IRremoteESP8266" نمونه "IRserver" که مطابق تصویر اصلاح شده است ، گرفته شده است.

مدار مطابق شکل لطفاً توجه داشته باشید که من از ترانزیستور BC547 و مقاومت NO بین پایه و پین D2 استفاده کرده ام.

گردآورنده ، امیتر ، BASE در تصویر نشان داده شده است. برای ترانزیستورهای دیگر همین کار را نکنید

ویرایش: اعتبار "3615JMD"

بهبود:

ممکن است 2 بهبود را پیشنهاد کنم: 1) اگر یکی جایگزین شود: uint32_t code = strtoul (server.arg (i).c_str () ، NULL ، 10) ؛ توسط این کد uint32_t = strtoul (server.arg (i).c_str () ، NULL ، 16) ؛ صفحه وب به طور مستقیم کدهای HEX را می پذیرد. بدون نیاز به تبدیل دستی به اعشاری!

2) من کنترل کننده را بهبود داده ام تا بتوانم با چندین فرمت IR کار کنم. بسیار خوب است وقتی می خواهیم چندین دستگاه از مارک های مختلف را کنترل کنیم: (می توان فرمت های بیشتری را با یک سوئیچ/کیس اضافه کرد)

void handleIr ()

{for (uint8_t i = 0؛ i <server.args ()؛ i ++) {if (server.argName (i) == "rcmm") {// format pour la freebox uint32_t code = strtoul (server.arg (i).c_str () ، NULL ، 16) ؛ irsend.sendRCMM (کد ، 32) ؛ Serial.println (کد) ؛ } else if (server.argName (i) == "rc6") {// format pour la TV phillips uint32_t code = strtoul (server.arg (i).c_str () ، NULL ، 16) ؛ irsend.sendRC6 (کد ، 20) ؛ Serial.println (کد) ؛ }} handleRoot ()؛ } البته پیوندهای HTTP باید بر اساس آن اصلاح شوند:…. href = / "ir؟ rcmm = 2400260C …….…. href = \" ir؟ rc6 = 0000C….

مرحله 4: کدگذاری

کد رمزگذاری
کد رمزگذاری
کد رمزگذاری
کد رمزگذاری

من کد را از نمونه های "IRremoteESP8266" ، "IRserver" گرفته ام.

اما باید تغییراتی در اعتبارنامه wifi انجام شود - Wifi ssid ، رمز Wifi

کدهای مبتنی بر سرور وب (برجسته شده با رنگ زرد) - این کدها فرم اعشاری کدهای IR هگزا دسیمال هستند. این مقادیر اعشاری به ESP8266 منتقل می شود تا آرگومان ها به کد هگز تبدیل شده و به IR LED منتقل شوند.

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

تصاویر گویا هستند !!! کد بسیار قدیمی تر (2017) ، در صورت تمایل ویرایش کنید..

کد:

مرحله 5: کنترل

کنترل
کنترل
کنترل
کنترل
کنترل
کنترل

ما می توانیم آن را از طریق پیوندهای سرور وب کنترل کنیم … IP ماژول ESP8266 در روتر ما با باز کردن مانیتور سریال پس از بارگذاری کد مشخص می شود. همانطور که در تصویر من است 192.168.0.1 است

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

یا به منظور سادگی و راحتی می توانیم از یک برنامه اندرویدی استفاده کنیم…

برنامه "HTTP REQUEST SHORTCUT" و آدرس را بنویسید تا کد به راحتی اجرا شود. همانطور که در تصویر است ، می توانیم ویجت را روی صفحه اصلی اضافه کنیم تا به راحتی به دکمه های مجازی دسترسی پیدا کرده و دکمه های راه دور لازم را دریافت کنیم.

تصاویر خود گویا هستند

بنابراین ، بدون نوشتن در برنامه ، می توانیم "کد" استدلال را با عدد اعشاری از رمزهای شش ضلعی که از راه دور رمزگشایی مستقیم در WIDGET استخراج شده است ، عبور دهیم

مهم: لطفاً کل پروژه را به طور کامل بخوانید ، 3 دقیقه طول خواهد کشید ، اما به نصف نخوانید و به قطعات خود آسیب نرسانید…. من مسئولیت پذیر نخواهم بود

مرحله 6: پروژه بسته بندی-g.webp" />

توصیه شده: