جدول المحتويات:

ESP8266 ESP-12E UART Wireless WIFI Shield TTL Converter غير معقد: 5 خطوات
ESP8266 ESP-12E UART Wireless WIFI Shield TTL Converter غير معقد: 5 خطوات

فيديو: ESP8266 ESP-12E UART Wireless WIFI Shield TTL Converter غير معقد: 5 خطوات

فيديو: ESP8266 ESP-12E UART Wireless WIFI Shield TTL Converter غير معقد: 5 خطوات
فيديو: Wi-Fi модуль ESP8266 ESP-01: Обзор и подключение к компу с помощью Arduino 2024, يونيو
Anonim
ESP8266 ESP-12E UART Wireless WIFI Shield TTL محول غير معقد
ESP8266 ESP-12E UART Wireless WIFI Shield TTL محول غير معقد

يهدف هذا الدليل إلى مساعدة الأشخاص الذين اشتروا ESP8266 ESP-12E UART Wireless WIFI Shield TTL Converter ولا يعرفون كيفية استخدامه مع Arduino.

في البداية ، تمت كتابة هذا البرنامج التعليمي باللغة البرتغالية هنا في البرازيل. بذلت قصارى جهدي لكتابته باللغة الإنجليزية. لذا سامحني على بعض الأخطاء التي قد تكون في الكتابة.

تم تقسيم هذه التعليمات على النحو التالي:

الخطوة 1: التعرف على محول ESP8266 ESP-12E UART Wireless WIFI Shield TTL لـ Arduino

الخطوة 2: ترقية البرنامج الثابت على محول ESP8266 ESP-12E UART Wireless WIFI Shield TTL لـ Arduino

الخطوة 3: شيالد ، شيلد ، مور وموير؟ هل يهم؟

الخطوة 4: Shield Moer - حل الاتصال التسلسلي RX / TX

الخطوة 5: خادم الويب مع محول ESP8266 ESP-12E UART Wireless WIFI Shield TTL لـ Arduino

أوصي بقراءة جميع الخطوات لتتعلم قدر الإمكان عن هذا الدرع.

الخطوة 1: التعرف على محول ESP8266 ESP-12E UART Wireless WIFI Shield TTL لـ Arduino

يجعل محول ESP8266 ESP-12E UART Wireless WIFI Shield TTL (Shield WiFi ESP8266) من السهل توصيل Arduino بشبكات WiFi من خلال ESP8266. عند استخدامه ، لم يعد من الضروري تركيب دائرة بها العديد من المكونات والأسلاك لربط ESP8266 بـ Arduino ، ما عليك سوى توصيل اللوحة بـ Arduino ، ووضع مسار مفتاح DIP وفقًا لوضع تشغيل الدرع وبرمجة Arduino على الاتصال بشبكات WiFi. بالإضافة إلى ذلك ، يمكن استخدام اللوحة بدون Arduino ، حيث تتوفر جميع مخارج ESP-12E.

يوجد في الدرع المعلومات التي تم إنشاؤها بواسطة شخص يدعى WangTongze والذي يمتلك حقوقه هو elecshop.ml. في البداية حاول مبتكر الدرع جمع الأموال لمشروعه من خلال Indiegogo (موقع تمويل جماعي) ، لكنه لم ينجح في جمع الأموال.

مميزات موديل ESP8266 ESP-12E:

- بنية RISC 32 بت - يمكن للمعالج أن يعمل بسرعة 80 ميجاهرتز / 160 ميجاهرتز - ذاكرة فلاش 32 ميجابايت - 64 كيلو بايت للإرشادات - 96 كيلو بايت للبيانات - معيار WiFi 802.11b / g / n - يعمل في وضع AP أو Station أو AP + Station- لديه 11 دبوسًا رقميًا - يحتوي على دبوس تناظري واحد بدقة 10 بت - دبابيس رقمية باستثناء D0 بها مقاطعة ، PWM ، I2C وسلك واحد - قابل للبرمجة من خلال USB أو WiFi (OTA) - متوافق مع Arduino IDE - متوافق مع الوحدات والمستشعرات المستخدمة في اردوينو

أدناه يمكنك قراءة الميزات الرئيسية لهذا الدرع:

- حجم Arduino Uno R3 والتثبيت متوافق مع Arduino Uno و Mega 2560 و Leonardo والمشتقات. - الإصدارات الثانوية من Arduino (Nano و Pro Mini ، على سبيل المثال) متوافقة ، ولكن يجب إجراء التوصيلات من خلال وصلات العبور. - يستخدم جهد Arduino (5V) لتشغيل الدرع. - به منظم جهد AMS1117 3.3V ، لذلك يتم تقليل الجهد 5V الذي يوفره Arduino لتشغيل الدرع دون الحاجة إلى طاقة خارجية. - يحتوي على محول مستوى منطقي مدمج ، لذا فإن مستوى Arduino TTL (5V) لا يضر بـ ESP8266 الذي يعمل بمستوى TTL 3.3V. - يحتوي على مفتاح DIP رباعي الاتجاهات يعمل على تغيير أوضاع تشغيل اللوحة. - أوضاع التشغيل المتاحة: WiFi Shield لـ أوامر Arduino / إرسال AT من خلال ترقية Arduino / البرامج الثابتة من خلال محول USB التسلسلي الخارجي / المستقل. - يحتوي على مصابيح LED إرشادية (PWR / DFU / AP / STA). - نظرًا لأنه في تنسيق الدرع ، فإنه يسمح بإدراج الدروع والوحدات النمطية الأخرى.- يحتوي على الزر ESP-RST لإعادة ضبط ESP8266.- ث يتوفر دبوس e ESP8266 ADC في شكلين على اللوحة ، الأول على دبوس بنطاق قراءة من 0 إلى 1 فولت والنموذج الثاني في نطاق من 0 إلى 3.3 فولت.

في الصورة يتم تمييز الأجزاء الرئيسية للدرع:

صورة
صورة

A (DIGITAL PINS): سلسلة من المسامير التي يستخدمها Arduino.

B (ESP8266 PINS): ESP8266-12E ودبابيسها الخاصة. يوجد على ظهر اللوحة تسمية المسامير.

C (EXTERNAL SERIAL USB ADAPTER CONNECTION): تسلسل الدبوس المستخدم لتوصيل محول USB التسلسلي الخارجي لتحديث البرامج الثابتة أو تصحيح أخطاء ESP8266.

D (دبابيس صيانة الدرع): تسلسل ثلاثي المسامير محدد على أنه صيانة فقط ويستخدم للتحقق من أن منظم الجهد يستقبل الفولتية ويزودها بشكل صحيح. يجب عدم استخدامه كمصدر توريد.

E (DIP SWITCH TO MODIFY OPERATING MODIFY): مفتاح DIP رباعي الاتجاهات لتغيير أوضاع التشغيل.

CONTACT 1 (P1) و CONTACT 2 (P2): يستخدمان لتوصيل RX (يمثله P1) و TX (يمثله P2) من ESP8266 إلى دبابيس Arduino D0 (RX) و D1 (TX). P1 و P2 في وضع إيقاف التشغيل يقومان بتعطيل اتصال RX من ESP8266 إلى Arduino TX و TX من ESP8266 إلى Arduino RX.

CONTACT 3 (P3) and CONTACT 4 (P4): تستخدم لتمكين وتعطيل وضع ترقية البرنامج الثابت لـ ESP8266. لتمكين كتابة / تحميل البرنامج الثابت على ESP8266 ، يجب أن يكون P3 و P4 في وضع التشغيل. عندما يكون P4 في وضع التشغيل ، سيضيء مؤشر DFU LED ، مشيرًا إلى تمكين ESP8266 لاستقبال البرامج الثابتة. لتعطيل وضع تحديث البرنامج الثابت وتعيين ESP8266 على التشغيل العادي ، ما عليك سوى تعيين P3 و P4 على OFF.

ملاحظة: تشير جميع جهات الاتصال الأربعة في وضع إيقاف التشغيل إلى أن ESP8266 يعمل في الوضع العادي بجوار Arduino

F (AD8 من ESP8266): تعيين دبوس لـ ESP8266 ADC. دبوس يعمل في نطاق من 0 إلى 1 فولت ودبوس آخر يعمل في نطاق من 0 إلى 3.3 فولت. سيتم استخدام هذه المسامير فقط عند استخدام ESP8266 وحده (الوضع المستقل).

G (ESP8266 RESET): يستخدم الزر لإعادة تعيين ESP8266. عندما تقوم بتغيير موضع مفاتيح DIP ، يجب أن تضغط على زر ESP-RST.

H (ANALOG PIN AND POWER SUPPLY): تسلسل الدبابيس المستخدمة بواسطة Arduino.

يتميز هذا الدرع بخصوصية في جهات الاتصال P1 و P2 لمفتاح DIP وهذه الخصوصية ، في الواقع ، تولد شكًا كبيرًا لدى الأشخاص الذين يحاولون استخدام الدرع.

وفقًا لمنشئ الدرع ، عند توصيله بـ Arduino ، ستكون هناك حاجة إلى دبابيس 2 فقط. ستكون هذه المسامير D0 و D1 (Arduino's RX و TX على التوالي) وبالإضافة إلى ذلك ، يجب أن تكون جهات الاتصال P1 و P2 الخاصة بمفتاح DIP على الدرع في وضع التشغيل للاتصال.

في واحدة من الوثائق الصينية الوحيدة التي حصلت عليها حول هذا الدرع ، قال مبتكر اللوحة:

P1 و P2 عبارة عن ترميز بت وتستخدم لتحديد ما إذا كان المسلسل ESP8266 متصلًا بـ Arduino D0 و D1 أم لا.

ورد في قسم آخر من الوثيقة:

تحافظ لوحة التوسيع هذه على انشغال مسلسل Arduino ، حيث تقوم بتوصيل RX من ESP8266 إلى TX من Arduino و TX من ESP8266 إلى Arduino RX.

تتوافق دبابيس Arduino D0 (RX) و D1 (TX) مع الاتصال التسلسلي / USB الأصلي ، لذلك تظل هذه المسامير مشغولة عندما نرسل رمزًا إلى اللوحة أو نستخدم الشاشة التسلسلية. لذلك ، إذا كانت جهات الاتصال P1 و P2 للدرع في وضع التشغيل ، فسيستخدم ESP8266 Arduino D0 و D1 ولن يكون من الممكن إرسال الرموز أو استخدام المسلسل لأنه سيكون مشغولاً. بالإضافة إلى ذلك ، لإرسال أوامر AT إلى الدرع ، من الضروري توصيل ESP8266 RX بـ Arduino RX وأن ESP8266 TX متصل بـ Arduino TX. سيحدث هذا فقط إذا قلبنا التوصيلات كما هو موضح في الصورة أدناه:

صورة
صورة

انظر لقد ثنيت جهات الاتصال D0 و D1 للدرع ، وقمت بتوصيل Arduino D0 بـ D1 للدرع و D1 من Arduino بـ D0 للدرع. عند استخدام الاتصال بهذه الطريقة (يتم استخدام Arduino كجسر اتصال) ، تمكنت من إرسال أوامر AT إلى ESP8266 وأكدت ما تخيلته بالفعل.

يتطلب شكل التشغيل القياسي للدرع تحميل رمز (خادم ويب أو برنامج ثابت ، على سبيل المثال) في الدرع وتحميل رمز آخر في Arduino لإرسال واستقبال وتفسير البيانات الواردة من خلال المسلسل الأصلي. سيتم الاطلاع على مزيد من التفاصيل حول هذا النوع من الاتصال في الخطوات التالية.

على أي حال ، لا تتداخل ميزة الدرع هذه في تشغيلها ، نظرًا لأننا عادةً ما نحاكي المسلسل على دبابيس Arduino الرقمية الأخرى حتى نتمكن من توفير المسلسل الأصلي. بالإضافة إلى ذلك ، إذا كان من الضروري إرسال أوامر AT إلى الدرع ، فيمكننا توصيله بـ Arduino من خلال أربعة كبلات أو استخدام محول USB تسلسلي.

أخيرًا ، كان الدرع مستقرًا للغاية وجعل تجميع الدوائر أمرًا سهلاً للغاية. لقد اختبرت مع Arduino Uno R3 و Mega 2560 R3.

ستتعلم في الخطوة التالية كيفية ترقية / تغيير البرنامج الثابت للدرع.

الخطوة 2: ترقية البرنامج الثابت على محول ESP8266 ESP-12E UART Wireless WIFI Shield TTL لـ Arduino

لتوصيل الدرع بالكمبيوتر ، من الضروري استخدام محول USB تسلسلي. إذا لم يكن لديك محول USB تسلسلي تقليدي ، فيمكنك استخدام محول Arduino Uno R3 كوسيط. هناك عدة طرز من محولات USB التسلسلية في السوق ، لكن في هذا البرنامج التعليمي استخدمت محول PL2303HX TTL Serial USB Converter.

لترقية الدرع ، استخدم:

أدوات تنزيل فلاش ESP8266

البرامج الثابتة التي سيتم استخدامها هي:

برنامج Ai-Thinker_ESP8266_DOUT_32Mbit_v1.5.4.1-a AT Firmware

بمجرد تنزيل البرنامج والبرامج الثابتة ، انسخ كلاهما إلى جذر (محرك الأقراص C) لنظام Windows.

قم بفك ضغط flash_download_tools_v2.4_150924.rar وسيتم إنشاء مجلد FLASH_DOWNLOAD_TOOLS_v2.4_150924.

استخدام محول USB التسلسلي Arduino Uno R3 كوسيط:

الخطوة التالية هي توصيل الدرع بالكمبيوتر. إذا لم يكن لديك محول USB تسلسلي قياسي ، فيمكنك استخدام Arduino Uno R3 لتوصيل الدرع والكمبيوتر. بالإضافة إلى Arduino Uno R3 المزود بكابل USB ، ستحتاج إلى:

01 - ESP8266 ESP-12E UART Wireless WIFI Shield TTL Converter04 - كابلات توصيل ذكر وأنثى

ملاحظة: قبل تثبيت مخطط الأسلاك Arduino ، يجب عليك تحميل رمز فارغ على اللوحة للتأكد من عدم استخدام محول USB التسلسلي. قم بتحميل الكود أدناه في Arduino الخاص بك وتابع:

إعداد باطل () {// ضع كود الإعداد هنا ، للتشغيل مرة واحدة:} حلقة باطلة () {// ضع الكود الرئيسي هنا ، للتشغيل بشكل متكرر:}

صورة
صورة

ملاحظة: انتبه عند توصيل دبوس الدرع 3.3 فولت بـ Arduino.

استخدام Serial TTL USB Converter Adapter PL2303HX:

ستحتاج إلى العناصر التالية بالإضافة إلى محول PL2303HX TTL Serial USB Converter:

01 - ESP8266 ESP-12E UART Wireless WIFI Shield TTL Converter04 - كابلات توصيل ذكر وأنثى

صورة
صورة

ملاحظة: يحتوي PL2303 على طاقة 5 فولت و 3 فولت 3. استخدم طاقة 3V3 وتجاهل دبوس 5V

بعد إجراء أحد مخططات الاتصال المذكورة أعلاه ، ما عليك سوى توصيل كبل USB (بـ Arduino والكمبيوتر) أو محول USB التسلسلي بالكمبيوتر.

ثم انتقل إلى "لوحة التحكم" في Windows ، "إدارة الأجهزة" ، وفي النافذة التي تفتح انتقل إلى "المنافذ (COM و LPT)". يمكنك رؤية الجهاز المتصل ورقم منفذ COM الذي تم تخصيصه عليه. كتوضيح ، قمت بتوصيل كل من Arduino ومحول USB التسلسلي على الكمبيوتر وفي الصورة أدناه يمكنك رؤية كيفية ظهور الأجهزة في المدير:

صورة
صورة

إذا كنت تستخدم PL2303HX ولم يتعرف عليه Windows ، فقم بالوصول إلى Serial TTL USB Converter PL2303HX - التثبيت في نظام التشغيل Windows 10 ، واطلع على كيفية حلها ثم العودة للمتابعة.

انتقل الآن إلى المجلد FLASH_DOWNLOAD_TOOLS_v2.4_150924 وقم بتشغيل ESP_DOWNLOAD_TOOL_V2.4.exe:

صورة
صورة

على الدرع ، ضع جهات الاتصال P3 و P4 لمفتاح DIP في وضع التشغيل ثم اضغط على زر ESP-RST الموجود على البطاقة حتى يدخل الدرع في وضع ترقية البرنامج الثابت:

صورة
صورة

مع فتح البرنامج ، قم بإلغاء تحديد الخيار "SpiAutoSet" ، وحدد منفذ COM ، وحدد "BAUDRATE" 115200 ، وقم بإلغاء تحديد أي مربع اختيار محدد في "Download Path Config" ، وقم بتكوين الخيارات الأخرى كما هو موضح أدناه ، ثم انقر فوق "بدء":

صورة
صورة

إذا كان الاتصال بـ ESP8266 WiFi Shield على ما يرام ، فسترى معلومات في "DETECTED INFO" و "MAC Address" و "SYNC":

صورة
صورة

ملاحظة: إذا قام البرنامج بإرجاع "FAIL" ، فتحقق مما إذا كنت قد حددت منفذ COM الصحيح ، وتحقق مما إذا كان المفتاحان P3 و P4 لمفتاح DIP قيد التشغيل ، وانقر فوق الزر ESP-RST ، وانقر فوق إيقاف ثم انقر مرة أخرى فوق بدء.

في "Download Path Config" يجب عليك تحديد الملف "Ai-Thinker_ESP8266_DOUT_32Mbit_v1.5.4.1-a AT Firmware.bin" الذي تم تنزيله. انقر فوق "…" في الحقل الأول وفي النافذة التي تفتح ، انتقل إلى المجلد حيث وضعت البرنامج الثابت وحدد الملف "Ai-Thinker_ESP8266_DOUT_32Mbit_v1.5.4.1-a AT Firmware.bin". في حقل "ADDR" ، قم بتعبئة الإزاحة 0x00000 وحدد خانة الاختيار للإنهاء. عند الانتهاء ، سيكون لديك الإعدادات كما هو موضح أدناه:

صورة
صورة

الآن انقر فوق ابدأ لبدء العملية:

ملاحظة: إذا كنت تستخدم محول USB التسلسلي Arduino كوسيط بين الدرع والكمبيوتر ، فانقر فوق الزر ESP-RST الخاص بالدرع قبل النقر فوق ابدأ. إذا كنت تستخدم محول USB تسلسلي تقليدي ، فهذا الإجراء ليس ضروريًا

صورة
صورة

انتظر حتى تكتمل عملية ترقية البرنامج الثابت (سيستغرق الأمر سبع دقائق تقريبًا حتى تكتمل العملية):

صورة
صورة

بعد الانتهاء من عملية ترقية البرنامج الثابت ، أغلق نوافذ ESP_DOWNLOAD_TOOL_V2.4 ، وأعد جهات الاتصال P3 و P4 الخاصة بمفتاح DIP إلى وضع إيقاف التشغيل واضغط على الزر ESP-RST الموجود على الدرع حتى يتمكن من الخروج من وضع ترقية البرنامج الثابت.

افتح الآن Arduino IDE حتى تتمكن من إرسال أوامر AT إلى اللوحة للتحقق من تحديث البرنامج الثابت بشكل صحيح وأن اللوحة تستجيب للأوامر.

مع فتح IDE ، انتقل إلى قائمة "Tools" ثم في خيار "Port" ، حدد منفذ COM. لاحظ في الصورة أدناه أنني حددت منفذ COM7 (من المحتمل أن يكون المنفذ مختلفًا):

صورة
صورة

لا تحتاج إلى تحديد اللوحة في IDE لأن هذا لا علاقة له بإرسال أوامر AT.

افتح "Serial Monitor" وفي التذييل تحقق مما إذا كانت السرعة مضبوطة على 115200 وما إذا تم تحديد "كلاهما ، NL و CR":

صورة
صورة

اكتب الآن الأمر "AT" (بدون علامات اقتباس) وأدخل "ENTER" أو انقر فوق "إرسال". إذا كان الاتصال يعمل ، فسيتعين عليك إعادة رسالة "موافق":

صورة
صورة

ملاحظة: إذا لم يتلق إرسال الأمر أي ملاحظات أو تلقى سلسلة أحرف عشوائية ، فقم بتغيير السرعة من 115200 للشاشة التسلسلية إلى 9600 وأرسل الأمر مرة أخرى

في "Serial Monitor" اكتب الأمر "AT + GMR" (بدون علامات اقتباس) وأدخل "ENTER" أو انقر فوق "إرسال". إذا تلقيت ملاحظات كما هو موضح أدناه ، فقد تم تحديث ESP8266 WiFi Shield بنجاح:

صورة
صورة

إذا كنت ترغب في تغيير معدل البث بالباود مع درع 9600 ، أدخل الأمر "AT + UART_DEF = 9600 ، 8 ، 1 ، 0 ، 0" (بدون اقتباس) وأدخل "إدخال" أو انقر فوق "إرسال". إذا تلقيت المعلومات كما هو موضح أدناه ، فهذا يعني أن سرعة الاتصال قد تغيرت:

صورة
صورة

ملاحظة: عند تغيير معدل البث بالباود للدرع ، يجب أيضًا تغيير السرعة من 115200 إلى 9600 في تذييل تسلسل الشاشة. ثم أرسل الأمر "AT" مرة أخرى (بدون علامات اقتباس) واضغط على "إدخال" أو انقر فوق "إرسال". إذا تلقيت "موافق" كإرجاع ، فهذا يعني أن الاتصال يعمل

إذا كنت ترغب في استخدام الدرع لتعيين WiFi إلى Arduino ، فإن سرعة الاتصال المثالية هي 9600 باود.

في الخطوة التالية ، ستكتشف الدرع الذي لديك ، حيث من الممكن أن تجد ما لا يقل عن ثلاثة دروع في السوق تبدو متشابهة ، ولكن في الواقع ، تحتوي هذه اللوحات على بعض النقاط التي تختلف عنها ، حتى في مسألة العمل مع Arduino من خلال التواصل من خلال المسلسل الأصلي.

الخطوة 3: شيالد ، شيلد ، مور وموير؟ هل يهم؟

إذا كان محول ESP8266 ESP-12E UART Wireless WIFI Shield TTL ، فمن الممكن العثور على ثلاث لوحات على الأقل تبدو متشابهة ، ولكن في الواقع تحتوي هذه اللوحات على بعض النقاط التي تختلف عنها ، حتى في مسألة العمل مع اردوينو من خلال الاتصال التسلسلي الأصلي.

فيما يلي يمكنك رؤية ما يميز الألواح ومعرفة أي منها يخصك.

شيالد واي فاي ESP8266:

صورة
صورة

لاحظ أن كلمة Shield مكتوبة على هذا اللوحة "Shiald" وكلمة "more" بها الحرف "m" في الأحرف الصغيرة. في الاختبارات التي أجريتها لفترة طويلة ، لم تظهر اللوحة أي عيوب في عملها.

درع WiFi ESP8266:

صورة
صورة

لاحظ أنه في هذه اللوحة ، تمت كتابة كلمة Shield بشكل صحيح وأن كلمة "المزيد" بها حرف "M" بحروف كبيرة. فيما يتعلق بالتشغيل ، تتصرف هذه اللوحة بنفس طريقة عمل إصدار Shiald ، أي أن اللوحة ليست بها عيوب.

هل تقصد أن لوحتي Shiald و Shield لها اختلافات فقط في قضية حرير ثنائي الفينيل متعدد الكلور؟

نعم ، هاتان البطاقتان تختلفان فقط في مسألة كتابة كلمتين. الدائرة على كلا اللوحتين هي نفسها ويعمل كلاهما بشكل مثالي مع Arduino أو بمفرده (الوضع المستقل). بالنظر إلى أن Arduino يحتوي على الكود الصحيح الذي تم تحميله وأن أحد الدروع مزود أيضًا بالبرنامج الثابت الصحيح ، بعد توصيل الدرع بـ Arduino وتوصيل كبل USB ، ما عليك سوى وضع جهات الاتصال P1 و P2 لمفتاح DIP في وضع التشغيل وسيتم إجراء الاتصال من خلال المسلسل الأصلي (دبابيس D0 و D1) بين اللوحات.

يقول البعض أن إصدار Shiald هذا يحتوي على اتصال لاسلكي غير مستقر ، لكني أؤكد أنه لا يوجد عدم استقرار على الإطلاق.

درع WiFi ESP8266 (Moer):

صورة
صورة

لاحظ أنه في هذا المنتدى ، تمت كتابة كلمة Shield بشكل صحيح وأن كلمة "More" مكتوبة "Moer" ، أي خطأ. لسوء الحظ ، لا تعمل هذه اللوحة بالطريقة التي يجب أن تعمل بها ، وإذا تم توصيلها بـ Arduino (مع إيقاف تشغيل جهات اتصال DIP أو تشغيلها) ويحاول المستخدم تحميل رمز على Arduino ، ستظهر رسالة خطأ في IDE على أنها التحميل سيفشل.

إذا كان الدرع الخاص بك هو الذي يأتي مكتوبًا بلغة Moer وواجهت مشكلة في استخدامه مع Arduino من خلال الاتصال التسلسلي الأصلي ، فانتقل إلى الخطوة التالية وتعلم كيفية حل المشكلة. إذا لم يكن درعك هو الموير ، فانتقل إلى الخطوة 5.

الخطوة 4: Shield Moer - حل الاتصال التسلسلي RX / TX

إذا كانت هذه اللوحة (Moer) مقترنة بـ Arduino (مع إيقاف تشغيل أو إيقاف تشغيل جهات اتصال DIP) وحاول المستخدم تحميل رمز على Arduino ، فستظهر رسالة خطأ في IDE حيث سيفشل التحميل. هذا بسبب خطأ في المكون المستخدم في بناء الدرع.

لقد قام الدرع الذي يتميز بالبناء والتشغيل الصحيحين بلحام اثنين من وحدات MOSFET ذات القناة N وتم تحديدها على أنها J1Y. أحد الترانزستورات J1Y متصل بـ ESP8266 RX والآخر متصل بـ ESP8266 TX. في الصورة أدناه ، يمكنك رؤية الترانزستورين المميزين:

صورة
صورة

هذا الترانزستور J1Y هو BSS138 والغرض منه هو تمكين دوائر المستوى المنطقي 5 فولت من التواصل مع دوائر المستوى المنطقي 3.3 فولت والعكس صحيح. نظرًا لأن ESP8266 يحتوي على مستوى منطقي يبلغ 3.3 فولت وأن مستوى Arduino منطقيًا يبلغ 5 فولت ، فمن الضروري استخدام محول مستوى منطقي لضمان التشغيل المثالي لـ ESP8266.

في الدرع Moer ، يوجد ترانزستوران ملحومان على اللوحة تم تحديدهما على أنهما J3Y. في الصورة أدناه ، يمكنك رؤية الترانزستورين المميزين:

صورة
صورة

الترانزستور J3Y هو S8050 NPN وهذا النوع من الترانزستور شائع الاستخدام في دوائر مكبر الصوت.لسبب ما في وقت بناء الدرع Moer ، استخدموا الترانزستور J3Y بدلاً من محول المستوى المنطقي J1Y.

بهذه الطريقة ، لن تعمل دبابيس RX و TX الخاصة بـ ESP8266 كما ينبغي ، وبالتالي لن يكون للدرع أي اتصال تسلسلي مع Arduino. نظرًا لأن الدرع يتواصل مع Arduino من خلال المسلسل الأصلي (الدبابيس D0 و D1) ، فلن يتم إكمال تحميل كود Arduino (في Arduino) بنجاح أبدًا ، لأنه في بعض الحالات سيكون هناك دائمًا ما يقرب من 2.8 فولت في RX و Arduino TX أو ثابت 0V ، كل ذلك بسبب الترانزستورات الخاطئة.

بعد كل هذه المعلومات ، من الواضح أن الحل الوحيد للدرع Moer ، هو استبدال الترانزستورات J3Y بواسطة الترانزستورات J1Y. لهذا الإجراء ، ستحتاج بالإضافة إلى درع Moer للصبر ، و:

01 - لحام الحديد 01 - Tin01 - ملقط أو كماشة إبرة 01 - مصاصة اللحام 02 - BSS138 (J1Y)

يستخدم الترانزستور BSS138 (J1Y) في محول المستوى المنطقي 3.3 فولت / 5 فولت.

ملاحظة: يتطلب الإجراء التالي أن تعرف كيفية التعامل مع مكواة اللحام وأن يكون لديك أقل خبرة في اللحام. المكونات التي سيتم إزالتها وتلك التي سيتم استبدالها هي مكونات SMD وتتطلب مزيدًا من العناية والصبر عند اللحام بمكواة لحام عادية. احرص على عدم ترك مكواة اللحام لفترة طويلة عند أطراف الترانزستور لأن ذلك قد يؤدي إلى إتلافها

باستخدام مكواة اللحام الساخنة ، قم بتسخين أحد أطراف الترانزستور وضع بعض القصدير. نفذ هذا الإجراء لكل طرف من طرفي الترانزستورات. سوف يسهل اللحام الزائد في المحطات إزالة الترانزستورات:

صورة
صورة

الآن خذ ملاقط / كماشة ، أمسك الترانزستور من الجانبين ، وقم بتسخين جانب الترانزستور الذي يحتوي على طرف واحد فقط واجبر الترانزستور لأعلى حتى تنفصل المحطة عن اللحام. لا يزال مع الملاقط / الكماشة التي تمسك الترانزستور ، حاول وضع طرف مكواة اللحام على المحطتين الأخريين واجبر الترانزستور على الانتهاء من تحريره من اللوحة. افعل ذلك لكلا الترانزستورات وكن حذرًا جدًا:

صورة
صورة

قم بإزالة جهازي J3Y ICs من الدرع ، ببساطة ضع J1Y IC في مكانه ، وثبته بالملاقط / كماشة ، وقم بتسخين كل طرف من طرفي الدرع بحيث ينضم القصدير إلى جهة الاتصال. إذا كانت جهات الاتصال منخفضة اللحام ، فسخن كل واحدة وضع المزيد من القصدير. افعل ذلك لكلا الترانزستورات وكن حذرًا جدًا:

صورة
صورة

بعد الإصلاح ، بدأ الدرع الذي لم يكن له اتصال مباشر مع Arduino في السابق في الاتصال باللوحة من خلال المسلسل الأصلي (المسامير D0 و D1).

الاختبار الأول للتأكد من نجاح الإصلاح هو توصيل الدرع (مع إيقاف تشغيل جميع جهات اتصال DIP) بـ Arduino ، وتوصيل كبل USB باللوحة والكمبيوتر ، ومحاولة تحميل رمز في Arduino. إذا كان كل شيء على ما يرام ، فسيتم تحميل الكود بنجاح.

الخطوة 5: خادم الويب مع محول ESP8266 ESP-12E UART Wireless WIFI Shield TTL لـ Arduino

كشرط أساسي لمتابعة هذه الخطوة ، يجب أن تكون قد نفذت الخطوة 2.

كما ذكرت سابقًا ، من أجل استخدام الدرع مع Arduino من خلال المسلسل الأصلي (الدبابيس D0 و D1) ، من الضروري تحميل رمز في الدرع وتحميل Arduino رمز آخر لإرسال واستقبال وتفسير نقل البيانات من خلال المسلسل الأصلي. في الدرع ، يمكننا وضع برنامج ثابت لأوامر AT وبرمجة Arduino لإرسال الأوامر إلى الدرع من أجل الاتصال بشبكة WiFi والتحكم في مدخلات ومخرجات Arduino.

في هذه الخطوة ، سنستخدم مكتبة WiFiESP ، نظرًا لأنها تحتوي بالفعل على جميع الوظائف اللازمة لدمج ESP8266 (Shield WiFi ESP8266 في حالتنا) في Arduino وتعيين WiFi على اللوحة. تعمل مكتبة WiFiESP عن طريق إرسال أوامر AT ، ثم يؤدي اتصال الشبكة اللاسلكية للموجه وأي طلب يتم إجراؤه إلى خادم الويب إلى إرسال أوامر AT إلى الدرع.

لكي تعمل مكتبة WiFiESP ، يجب أن يكون إصدار البرنامج الثابت لأمر AT 0.25 أو أعلى على الأقل. لذلك إذا كنت لا تعرف إصدار أمر AT للدرع الخاص بك ، فانتقل إلى الخطوة 2 لتحديث اللوحة بالبرامج الثابتة التي تحتوي على إصدار أمر AT من 1.2.0.0 ثم ارجع للمتابعة.

أحد الأشياء التي حددتها أثناء اختباراتي مع الدرع و Arduino هو أنه نظرًا لأن الاتصال بينهما يحدث من خلال المسلسل الأصلي (الدبابيس D0 و D1) ، يصبح من الضروري أن يكون المسلسل للاستخدام الحصري للاتصال بينهما. لذلك ، لا أوصي باستخدام "Serial.print () / Serial.println ()" لطباعة المعلومات على الشاشة التسلسلية Arduino IDE أو أي برنامج آخر يعرض المعلومات التسلسلية.

بشكل افتراضي ، يتم تكوين مكتبة WiFiESP لعرض الأخطاء التسلسلية والتحذيرات ومعلومات الاتصال الأخرى بين Arduino و ESP8266. كما ذكرت من قبل ، يجب إصدار المسلسل للتواصل بين Arduino والدرع. لذلك ، قمت بتحرير ملف من المكتبة وتعطيل عرض جميع المعلومات في المسلسل. المعلومات الوحيدة التي سيتم عرضها على الشاشة التسلسلية هي أوامر AT التي ترسلها المكتبة إلى الدرع للاتصال بالشبكة اللاسلكية أو أوامر AT لتنفيذ الطلبات المقدمة إلى خادم الويب.

قم بتنزيل مكتبة WiFIESP المعدلة وقم بتثبيتها في Arduino IDE:

WiFIESP Mod

في مجلد تثبيت المكتبة ، ما عليك سوى الوصول إلى المسار "WiFiEsp-master / src / Utility" ويوجد بداخله الملف "debug.h" الذي تم تحريره لتعطيل عرض المعلومات على المسلسل. عند فتح الملف في Notepad ++ ، على سبيل المثال ، لدينا سطور 25 و 26 و 27 و 28 و 29 تعرض ترقيمًا مطابقًا لأنواع المعلومات التي سيتم عرضها على الشاشة التسلسلية. لاحظ أن الرقم 0 يعطل عرض جميع المعلومات الموجودة على الشاشة التسلسلية. أخيرًا ، في السطر 32 ، قمت بتكوين "_ESPLOGLEVEL_" بالقيمة 0:

صورة
صورة

إذا كنت تريد استخدام مكتبة WiFiESP في مشاريع أخرى باستخدام ESP8266 وتحتاج إلى المعلومات التي يتم عرضها على الشاشة التسلسلية ، فقم ببساطة بتعيين "_ESPLOGLEVEL_" على القيمة 3 (القيمة الافتراضية للمكتبة) وحفظ الملف.

نظرًا لأن الدرع الخاص بك يحتوي بالفعل على إصدار البرنامج الثابت لأمر AT 0.25 أو أعلى ، فلنستمر.

قم بتوصيل الدرع بـ Arduino (Uno أو Mega أو Leonardo أو أي إصدار آخر يسمح بإرفاق الدرع) ، ضع جميع جهات اتصال مفتاح DIP في وضع إيقاف التشغيل ، وقم بتوصيل مؤشر LED بين الدبوس 13 و GND ، وقم بتوصيل كبل USB بـ اردوينو والكمبيوتر:

صورة
صورة

لقد استخدمت Arduino Mega 2560 ، ومع ذلك ، ستكون النتيجة النهائية هي نفسها إذا كنت تستخدم لوحة Arduino أخرى تسمح بإقران الدرع.

قم بتنزيل الكود من الرابط وافتحه في Arduino IDE:

خادم ويب التعليمات البرمجية

إذا كنت تستخدم Arduino Leonardo ، فانتقل إلى السطرين 19 و 20 من الكود ، وقم بتغيير كلمة Serial إلى Serial1 ، كما هو موضح في الصورة أدناه:

صورة
صورة

في الرمز ، يجب إدخال اسم شبكة WiFi في السطر char * ssid = "اسم شبكة WIFI الخاصة بك" ؛ يجب إدخال كلمة المرور في السطر char * password = "كلمة مرور شبكة WIFI الخاصة بك" ؛ وعلى خط WiFi.config (عنوان IP … يجب إدخال عنوان IP متاح على شبكتك اللاسلكية حيث يستخدم هذا الرمز عنوان IP ثابتًا:

صورة
صورة

في قائمة "Tools" ، حدد "Board" وحدد طراز Arduino الخاص بك. لا يزال في قائمة "الأدوات" ، حدد خيار "المنفذ" وتحقق من منفذ COM الذي تم تخصيص Arduino فيه.

انقر فوق الزر لإرسال الرمز إلى Arduino وانتظر التحميل.

بعد تحميل الكود على Arduino ، افصل كبل USB عن البطاقة ، ضع جهات الاتصال P1 و P2 لمفتاح DIP للدرع في وضع التشغيل وقم بتوصيل كبل USB بـ Arduino مرة أخرى.

ملاحظة: طالما أن جهات الاتصال P1 و P2 للدرع في وضع التشغيل ، فلن تتمكن من إرسال الرموز إلى Arduino لأن المسلسل الأصلي سيكون مشغولاً. تذكر أنه في كل مرة تقوم فيها بتغيير موضع مفاتيح تبديل DIP ، اضغط على الزر ESP-RST

افتح شاشة Arduino IDE التسلسلية على الفور:

صورة
صورة

مع فتح الشاشة التسلسلية ، يمكنك اتباع أوامر AT التي يتم إرسالها إلى الدرع لتشغيل خادم الويب. إذا لم يتم عرض أي معلومات عند فتح الشاشة التسلسلية ، فاضغط على زر RESET الموجود على Arduino وانتظر.

لاحظ أنه على الشاشة التسلسلية ، يظهر الأمر "AT + CIPSTA_CUR" عنوان IP للاتصال بخادم الويب ويعرض الأمر "AT + CWJAP_CUR" اسم وكلمة مرور الشبكة اللاسلكية التي يتصل بها الدرع:

صورة
صورة

انسخ عنوان IP المعروض على الشاشة التسلسلية ، وافتح متصفح الإنترنت ، والصق عنوان IP واضغط على ENTER للوصول. سيتم تحميل صفحة ويب مشابهة للصفحة أدناه:

صورة
صورة

تحتوي صفحة الويب على زر سيكون مسؤولاً عن تشغيل / إيقاف تشغيل مؤشر LED المتصل بالدبوس 13 من Arduino. اضغط على الزر لتشغيل / إيقاف تشغيل LED ومعرفة أن الحالة الحالية يتم تحديثها على الصفحة.

يمكنك أيضًا الوصول إلى صفحة الويب من خلال هاتف ذكي أو جهاز لوحي ، على سبيل المثال.

شاهد الفيديو أدناه للنتيجة النهائية:

كانت هذه ممارسة بسيطة ، لأن الغرض كان إظهار مدى سهولة استخدام الدرع مع Arduino. جميع المشاريع التي تجدها على الإنترنت والتي تستخدم ESP8266 لتخصيص WiFi إلى Arduino ، يمكن إعادة إنتاجها باستخدام WiFi Shield ، والفرق هو أنك لن تحتاج إلى تركيب فواصل الجهد في اللوحة الأولية لتوصيل المنصات ، وبكل بساطة مشاريع لن تقلق بشأن تشغيل الدائرة بمصدر طاقة خارجي. بالإضافة إلى ذلك ، سيكون لمشروعك جمالية أكثر متعة.

الآن بعد أن عرفت كيفية دمج Shield WiFi ESP8266 مع Arduino من خادم ويب ، ما عليك سوى تعديل الكود وتنفيذ مشروع أكثر تفصيلاً أو البدء في تطوير الكود الخاص بك.

مرة أخرى ، آسف على الإخفاقات في اللغة الإنجليزية.

إذا كانت لديك أسئلة حول الدرع ، فقط اسأل وسأكون سعيدًا بالرد.

موصى به: