فهرست مطالب:

سریال UDP/IP Gateway برای آردوینو بر اساس ESP8266 Shield: 8 مرحله
سریال UDP/IP Gateway برای آردوینو بر اساس ESP8266 Shield: 8 مرحله

تصویری: سریال UDP/IP Gateway برای آردوینو بر اساس ESP8266 Shield: 8 مرحله

تصویری: سریال UDP/IP Gateway برای آردوینو بر اساس ESP8266 Shield: 8 مرحله
تصویری: آموزش کاربردی برد های ESP8266 و ESP32 2024, جولای
Anonim
سریال UDP/IP Gateway برای Arduino بر اساس ESP8266 Shield
سریال UDP/IP Gateway برای Arduino بر اساس ESP8266 Shield

من قبلاً این دستورالعمل "چگونه می توان دروازه Wifi خود را برای اتصال Arduino خود به شبکه IP" منتشر کرد. از آنجا که من برخی از بهبودهای کد را انجام دادم و هنوز از این راه حل استفاده می کنم.

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

این دستورالعمل نحوه استفاده از این سپرهای ESP82 را به عنوان دروازه سریال UDP/IP توضیح می دهد.

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

اطلاعات بیشتر در مورد سپر با این دستورالعمل

تدارکات

1 آردوینو مگا (بهترین این است که حداقل 1 مگا برای توسعه و 1 Uno برای مرحله اجرا داشته باشید)

1 Rokoo ESP8266 ESP-12E UART WIFI Convertisseur

1 FTDI 3.3v

2 سیم تخته نان

مرحله 1: چگونه کار می کند؟

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

Gateway بر اساس یک ماژول ESP8266 ساخته شده است

این ماژول از یک طرف با پیوند سریال از طرف دیگر به شبکه IP با Wifi متصل می شود.

مانند یک جعبه سیاه عمل می کند. بسته های داده ای که از پیوند سریال دریافت می شوند به درگاه IP/Udp ارسال می شوند و برعکس.

فقط باید اولین بار که Gateway را روشن می کنید ، پیکربندی خود را (IP ، WIFI …) تنظیم کنید.

می تواند ASCII خام و داده های باینری را منتقل کند (بدون HTTP ، JSON …)

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

مرحله 2: عملکردهای اصلی چیست؟

بیشتر آن یک جعبه سیاه است که داده های سریال را به هر دو صورت به بسته UDP تبدیل می کند.

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

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

علاوه بر این ، GPIO را ارائه می دهد که می تواند توسط آردوینو مورد استفاده قرار گیرد تا بررسی کند که Gateway به درستی به WIFI متصل شده است و Gateway می تواند در صورت خرابی به طور خودکار 2 SSID مختلف را با هم جابجا کند.

Gateway دارای 2 حالت مختلف اجرا است که با تنظیم GPIO انتخاب می شوند

تنظیم GPIO روی زمین و ورود Gateway به حالت پیکربندی

تنظیم GPIO رایگان و ورود Gateway به حالت درگاه در حال اجرا.

علاوه بر این ، پیکربندی UDP/IP Gateway را می توان از راه دور تغییر داد

مرحله 3: ساخت مواد

ساخت از مواد
ساخت از مواد

موارد بسیار کمی مورد نیاز است

1 ESP8266 Shield - من این UNO R3 ESP8266 Serial WiFi Shield Extend Board Module را در کمتر از 9 یورو پیدا کردم

1 UNO که هدف آردوینو است

1 مگا که ابزار توسعه arduino است (می توانید بدون آن کار کنید اما اشکال زدایی آن بسیار دشوار است)

1 FTDI 3.3/5v برای توسعه

برخی از سیم ها

مرحله 4: کد Gateway را بارگیری کنید

کد Gateway را بارگیری کنید
کد Gateway را بارگیری کنید

در این مرحله ، آردوینو فقط برای تغذیه (با USB یا منبع تغذیه دیگر) در سپر ESP8266 استفاده می شود.

ESP8266 GPIO4 را به زمین وصل کنید (برای ورود به حالت پیکربندی)

توجه داشته باشید که FTDI را بر اساس نیاز سپر روی 3.3v تنظیم کنید

FTDI را به سپر وصل کنید (RX به TX)

کلید محافظ را روی 1: خاموش 2: خاموش 3: روشن 4: روشن تنظیم کنید

سمت USB FTDI را به رایانه خود وصل کنید

با دکمه ESP-RST سپر را بازنشانی کنید

کد Gateway را در GitHub در آنجا بارگیری کنید

Arduino IDE را باز کنید

  • پورت مانیتور FTDI را انتخاب کنید
  • IDE Serial Monitor را باز کنید - سرعت را روی 38400 تنظیم کنید
  • برد ماژول Generic ES8266 را انتخاب کنید
  • سیستم عامل سپر را با کد دروازه ارتقا دهید

کلید 3 را خاموش کنید: 4 را خاموش کنید

IDE Serial Monitor را باز کنید

با دکمه ESP-RST سپر را بازنشانی کنید

شما باید پیام هایی را در صفحه نمایش با "راه اندازی EEPROM" "شروع اولیه به پایان رسید" مشاهده کنید …

زمان انجام تنظیمات رسیده است

مرحله 5: اجازه دهید پیکربندی Gateway را انجام دهیم

هنگام بارگیری کد دروازه برای اولین بار ، ESP8266 Eeprom با مقادیر پیش فرض راه اندازی می شود. این نوع پیامها "تنظیم پارامتر: x اندازه: yy" را مشاهده خواهید کرد

این مقادیر را می توانید در داخل تعریف کد paramValue پیدا کنید. البته می توانید قبل از بارگیری کد ، این مقادیر پیش فرض را تغییر دهید ، اما می توانید پیکربندی خود را بعداً با فرمان تنظیم کنید. این بهتر است اگر قصد دارید دروازه های چندمنظوره داشته باشید و فقط یک نسخه از کد را نگه دارید.

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

از آنجا که SSID در حال حاضر تعریف نشده است منتظر باشید "متصل به yoursecondssid دوباره امتحان کنید: 5"

سپس اسکن WIFI به طور خودکار شروع می شود

زمان آن رسیده است که SSID های خود را با دستورات زیر تنظیم کنید:

  • SSID1 = yourchoice1
  • PSW1 = yourpsw1
  • SSID2 = yourchoice2
  • PSW2 = yourpsw2
  • SSID = 1 (برای انتخاب کد SSID برای شروع)
  • RestartWifi

پس از چند ثانیه می توانید اتصال را با دستور "ShowWifi" بررسی کنید. شما باید آدرس IP را ببینید که دروازه از سرور DNS شما دریافت کرده است. اگر چنین است ، وقت آن است که بیشتر برویم

زمان آن رسیده است که آدرس سرور IP خود را با وارد کردن 4 زیر آدرس (سروری که کد تست جاوا را اجرا می کند) تعریف کنید. برای مثال:

  • "IP1 = 192"
  • "IP2 = 168"
  • "IP3 = 1"
  • "IP4 = 10"

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

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

سپر در حال حاضر به عنوان یک دروازه کار می کند

مرحله 6: نمونه کد Arduino را بارگیری کنید

نمونه کد آردوینو را بارگیری کنید
نمونه کد آردوینو را بارگیری کنید

ابتدا کد اصلی آردوینو را در GitHub بارگیری کنید

سپس کد آردوینو را با این دستورات و این کد پیوند سریال را در کتابخانه های خود بارگیری کنید

سپس کد اصلی را با یک Arduino IDE جدید باز کنید

کلید محافظ 1 و 2 را خاموش کنید تا لینک سریال Arduino 0 برای اتصال USB آزاد شود

سپر را بازنشانی کنید

سیمهای FTDI را به Mega Serial 2 وصل کنید (TX FTDI به RX Mega و غیره)

یک Arduino IDE (یا ابزار TTY) جدید راه اندازی کنید ، FTDI Usb را وصل کنید و شروع به نظارت بر پیوند سریال کنید

کد Arduino را در داخل Mega بارگذاری کنید

سوئیچ محافظ 1 و 2 را برای اتصال پیوند سریال Arduino 0 روشن کنید

سپر را بازنشانی کنید

شما باید این پیام "start usb print" را در مانیتور مشاهده کنید

مرحله 7: اجازه دهید سمت سرور را انجام دهیم

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

فقط آن را اجرا کرده و به کنسول جاوا نگاه کنید و به مانیتور FTDI نگاه کنید

تبادل داده بین سرور و آردوینو را مشاهده خواهید کرد

مرحله 8: برای رفتن بیشتر

فراتر رفتن
فراتر رفتن
فراتر رفتن
فراتر رفتن

این مثال کد آردوینو بر اساس بخش چارچوبی از زیرساخت های اتوماسیون خانه من است.

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

اگر می خواهید از دروازه استفاده کنید ، می توانید کد آردوینو را ساده کنید.

پس از توسعه و آزمایش کد خود در Arduino Mega ، می توانید به راحتی آن را با Uno جایگزین کنید!

اگر می خواهید Arduino شما اتصال Wifi را بررسی کند ، می توانید یک سیم بین Arduino GPIO 7 و ESP8266 GPIO 5 متصل کنید.

توصیه شده: