ماژول ESP8266 یک SOC مستقل با پروتکل TCP/PI یکپارچه است که می‌تواند به هر میکروکنترلر امکان اتصال به شبکه WiFi را بدهد. از این ماژول‌ها عمدتا در تجهیز شبکه‌های اینترنت اشیاء استفاده می‌شود. بخصوص در صنایع، تجهیز الکترونیکی و هوشمند سازی عملیات و تجهیزات از طریق ابزارهایی چون ماژول ESP8266 ممکن می‌شود.
ماژول ESP8266 این قابلیت را دارد که میزبان یک برنامه اختصاصی باشد یا اینکه همه عملکردهای شبکه WiFi را از یک پردازنده دیگر در اپلیکیشن مرکزی دریافت و پیاده‌سازی کند. هر ماژول ESP8266 از قبل و با استفاده از سیستم عامل اختصاصی شرکت سازنده و در قالب مجموعه دستوری AT برنامه‌ریزی شده است.
بنابراین، شما می‌توانید آن را به سادگی با دستگاه آردوینو خود ارتباط دهید و تقریبا به همان اندازه‌ای که یک WiFi Shield به شما خدمات وایفای می‌دهد، از این قابلیت‌ و تنها با استفاده از ماژول ESP8266 بهره ببرید.

خصوصیات اختصاصی ماژول ESP8266

موارد زیر اصلی‌ترین اجزای سازنده یک ماژول ESP8266 هستند:

  • پردازنده: هسته ریز پردازنده ۳۲ بیتی RISC L106 مبتنی بر Tensilica Xtensa Diamond Standard 106Mincro که با فرکانس ۸۰ مگاهرتزی فعالیت می‌کند.

حافظه

  • رم ۳۲ کیلوبایتی اختصاصی برای دستورالعمل‌ها
  • رم کش دستورالعمل ۳۲ کیلوبایتی
  • ۸۰ کیلوبایت رم برای داده‌های کاربر
  • رم ۱۶ کیلو بایتی ETS سیستم داده

فلش خارجی QSPI

در این ماژول، از فلش‌های خارجی تا حافظه ۱۶ مگابایت پشتیبانی می‌شود (معمولا ۵۱۲ کیلوبایت تا ۴ مگابایت)

سیستم وایفای IEEE 802.11 b/g/n

  • سوئیچ TR یکپارچه، LNA، balun، تقویت‌کننده قدرت و انطباق شبکه
  • احراز هویت WEP یا WPA/WPA2 یا شبکه‌های باز

موارد دیگر شامل قسمت‌های زیر هستند

  • ۱۶ پین GPIO
  • SPI
  • I^2G برای اجرای نرم‌افزار
  • رابط‌های I^2S به عنوان پین‌های اشتراک گذاری با GPIO
  • UART روی پین‌های اختصاصی، به علاوه یک URT که با استفاده از آن می‌توان موقعیت ارسال را در GPIO2 فعال کرد.
  • یک ADC 10 بیتی

ماژول ESP8266 به خودی خود یک فرستنده و گیرنده وایفای کم‌هزینه است که می‌توان از آن برای استفاده در پلتفرم‌های مختلف اینترنت اشیاء بهره گرفت.

کاربردهای ماژول ESP8266

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

  • استفاده برای اتصال انواع میکروکنترلرها به شبکه‌های اینترنت و اینترانت
  • پورتال‌های نقاط دسترسی
  • انواع مختلف پروژه‌های اینترنت اشیاء
  • ثبت داده‌های بی سیم
  • استفاده در آموزش اصول شبکه
  • سوکت و لامپ هوشمند
  • سیستم‌های هوشمند خانگی
  • خودروها و تجهیزات خودکار در صنایعی چون معدنکاری
خازن چیست؟ چه کاربرد و انواعی دارد؟ و ویژگی هایی که در مورد آن نمی دانید.
خواندن این مقاله

راه‌اندازی ماژول ESP8266

برای برقراری ارتباط با ماژول ESP8266، میکروکنترلر باید از مجموعه‌ای از دستورات AT استفاده کند. میکروکنترلر با استفاده از UART با نرخ Baud مشخص، با ماژول ESP8266 ارتباط برقرار می‌کند. شرکت‌های مختلف انواع ماژول‌های این خانواده را تولید می‌کنند که کم‌ و بیش قابلیت‌های مشابهی دارند، اما تعداد پین‌ها و برخی خصوصیات دیگر متفاوت است.
بنابراین، در ادامه ما به آموزش نحوه راه‌اندازی ماژول ESP8266 -01 می‌پردازیم که جزء اولین ماژول‌ها در دنیای وایفای هستند.
تصویر زیر نمایشی از پین‌های این ماژول است.

نحوه راه‌اندازی ماژول ESP8266 -01
  • ۳V3: پین برق ۳٫۳ ولت
  • GND: پین زمین
  • RST: پین بازنشانی پایین فعال
  • EN: پین فعال بالا
  • TX: پین انتقال سریال UART
  • RX: پین دریافت سریال UART
  • GPIO0 و GPIO2: پین‌های ورودی و خروجی عمومی.

 این پین‌ها وظیفه تصمیم‌گیری درباره وضعیت ماژول (حالت بوت یا عادی) را بر عهده دارند. همچنین، مشخص می‌کنند که پین‌های TX/RX باید برای برنامه‌نویسی ماژول استفاده شوند یا برای هدف I/O سریال به کار گرفته شوند.

برای برنامه‌ریزی ماژول با استفاده از GPIO0، UART را به زمین و GPIO2 را به VCC وصل کنید یا آن را باز بگذارید. برای استفاده از UART برای I/O معمولی سریال، هر دو پین را باز بگذارید.

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

دانلود Firmware

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

  • Espressif AT Firmware
  • Espressif FreeRTOS Firmware
  • ESpressif NO-OS SDK Firmware
  • NodeMCU

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

Firmware

پس از تکمیل فرایند کامپایل، از پین سریال برای دانلود Firmware بر روی ESP8266 استفاده کنید. در مرحله بعد، باید ESPressif NON-OS-SDK Firmware  را دانلود کنید.

حال فایل‌های پین را متناظر با آدرس‌های آن‌ها که در ادامه می‌آیند، انتخاب کنید:

boot_v1.2.bin                            --------------------------------------------->           ۰x00000

user1.1024.new.2.bin                ---------------------------------------------->          ۰x01000

esp_init_data_default.bin           ----------------------------------------------->          ۰xfc000

blank.bin                                  ---------------------------------------------->          ۰x7e000

blank.bin                                  ----------------------------------------------->          ۰xfe000

توجه داشته باشید که همه فایل‌های باینری (BIN) در پوشه ESP8266_NONOS_SDK master\bin موجود هستند؛ به جز user1.1024.new.2.bin که می‌توانید آن را نیز از کامپایل SDK به دست آورید.

معرفی کامل قطعات SMD و انواع آن
خواندن این مقاله

در ادامه، مطمئن شوید که پورت COM و نرخ BAUD صحیح انتخاب شده‌اند (پیش فرض عدد ۱۱۵۲۰۰ است).

در مرحله بعد، ماژول ESP8266 را با پورت سریال استاندارد RS232 (با استفاده از USB و اتصال به مبدل سریال در لپتاپ) به رایانه متصل کنید. نحوه اتصال باید کم و بیش شبیه تصویر زیر باشد.

توجه داشته باشید که برای قرار دادن ESP8266 در حالت فلش، اتصالات را مطابق شکل بالا (بین ESP8266 و مبدل USB به سریال) انجام دهید و اتصال باید فقط به لپتاپ یا کامپیوتر خانگی باشد. فراموش نکنید که پین GPIO0 باید به زمین وصل شود.
در نهایت، روی تب START در ESP8266 Download Tool کلیک کنید و منتظر بمانید تا فرایند به اتمام برسد. پس از اتمام خودکار فرایند فلش کردن، ماژول ESP8266 را از کامپیوتر یا لپتاپ جدا کرده و اتصال به زمین را نیز حذف کنید.
پس از دانلود موفقیت آمیز سیستم عامل (کانفینگ)، حال می‌توانید از دستورات AT زیر ارتباط سرور و تجهیزات با استفاده از ESP8266 را برقرار کنید.

 

 

Function

AT Commands

Response

Working

AT

OK

Restart

AT+RST

OK

.......

Ready

Firmware Version

AT+GMR

<AT version info> information about AT version

<SDK version info> information about SDK version

<compile time> time of the bin was compiled

OK

List Access Point

AT+CWLAP

+CWLAP:<ecn>,<ssid>,<rssi>,<mac>,<ch>,<freq offset>

OK

Query Joined Access Point

AT+CWJAP?

+CWJAP:<ssid>,<bssid>,<channel>,<rssi>

OK

Join Access Point

AT+CWJAP=”SSID”,”Password”

WIFI CONNECTED

WIFI GOT IP

OK

Quit Access Point

AT+CWQAP

OK

WIFI DISCONNECTED

Get IP Address

AT+CIFSR

(Assuming AT+CWMODE=3)

+CIFSR:APIP,<IP address>

+CIFSR:APMAC,<mac address>

+CIFSR:STAIP,<IP address>

+CIFSR:STAMAC,<mac address>

OK

Query WiFi Mode

AT+CWMODE?

+CWMODE:<mode>

Set WiFi Mode

AT+CWMODE=<mode>

Mode: -

۱ = STA (station)

۲ = AP (Access Point)

۳ = BOTH i.e. STA & AP

OK

Query TCP/UDP Connection

AT+CIPMUX?

+CIPMUX:<mode>

Set TCP/UDP Connection

AT+CIPMUX=<mode>

Mode: -

۰ = Single Connection

۱ = Multiple Connection

OK

TCP/IP Connection status

AT+CIPSTATUS

STATUS:<status>

Possible statuses are

۲: Got IP

۳: Connected

۴: Disconnected

Query TCP transmission mode

AT+CIPMODE?

+CIPMODE:<mode>

Set TCP transmission mode

AT+CIPMODE=<mode>

Mode: -

۰ = Normal mode

۱ = Transparent mode

OK

Set up TCP/UDP connection

(CIPMUX=0) AT+CIPSTART = <type>,<addr>,<port>

(CIPMUX=1) AT+CIPSTART= <id>,<type>,<addr>, <port>

Example (CIPMUX=0):

AT+CIPSTART="TCP","192.168.101.110",80

CONNECT

OK

Send Data

(CIPMUX=0) AT+CIPSEND=<data length>

(CIPMUX=1) AT+CIPSEND=<id>,<data length>

OK

>

(Note: write your data after > and enter it to send it will return status like.)

Recv <data length> bytes

SEND OK

(after we receive response from server if any for default auto receive mode)

(CIPMUX=0): + IPD, <length>: <data>

(CIPMUX=1): + IPD, <id>, <length>: <data>

Close TCP/UDP Connection

AT+CIPCLOSE

CLOSED

OK

اشتراک‌گذاری

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *