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

دليل المبتدئين لـ ESP8266 والتغريد باستخدام ESP8266: 17 خطوة (بالصور)
دليل المبتدئين لـ ESP8266 والتغريد باستخدام ESP8266: 17 خطوة (بالصور)

فيديو: دليل المبتدئين لـ ESP8266 والتغريد باستخدام ESP8266: 17 خطوة (بالصور)

فيديو: دليل المبتدئين لـ ESP8266 والتغريد باستخدام ESP8266: 17 خطوة (بالصور)
فيديو: ESP8266 Various Connection Issues: ESP8266 for Beginners Start Guide 2022 2024, ديسمبر
Anonim
دليل المبتدئين إلى ESP8266 والتغريد باستخدام ESP8266
دليل المبتدئين إلى ESP8266 والتغريد باستخدام ESP8266

لقد تعلمت عن Arduino منذ عامين ، لذلك بدأت في اللعب بأشياء بسيطة مثل مصابيح LED والأزرار والمحركات وما إلى ذلك ، ثم اعتقدت أنه لن يكون من الرائع الاتصال بالقيام بأشياء مثل عرض الطقس في اليوم وأسعار الأسهم وتوقيت القطارات. شاشة LCD ، وجدت أنه يمكن القيام بذلك عن طريق إرسال واستقبال البيانات عبر الإنترنت ، لذا كان الحل هو الاتصال بـ intenet. هناك بدأت بحثي حول كيفية توصيل Arduino بالإنترنت وإرسال البيانات واستلامها ، وتعرفت على وحدات wifi على الإنترنت ووجدتها مكلفة للغاية ، ثم تعلمت عن ESP8266.

لقد قرأت الكثير على الإنترنت حول وحدة ESP8266 منذ حوالي عام واشتريت واحدة ولكني كنت على وشك العمل معهم الشهر الماضي فقط ، في ذلك الوقت لم تكن هناك معلومات شاملة متاحة ، ومع ذلك ، تتوفر الآن الكثير من الوثائق ومقاطع الفيديو على الإنترنت فيما يتعلق بالبرامج الثابتة وأوامر AT والمشاريع وما إلى ذلك ، لذا قررت البدء.

لقد كتبت هذا الدليل كدليل للمبتدئين حيث واجهت الكثير من المشاكل في توصيل الأسلاك والبدء في ESP8266. لذلك قررت أن أكتب هذا Instructable حتى يتمكن الأشخاص الآخرون الذين يواجهون مشاكل مع وحداتهم من حلها بشكل أسرع

في هذا Instructable سأحاول أن أظهر

  • كيفية ربط ESP8266 والتواصل معه من خلال Arduino Uno.
  • سأحاول أيضًا إظهار كيف يمكن إرسال تغريدة من خلالها باستخدام Thingspeak.

ما الذي يمكن أن يفعله ESP8266؟ إنه مقيد بخيالك ، لقد رأيت مشاريع ودروسًا تعليمية على الإنترنت توضح كيفية إحضار درجة حرارة المدينة وأسعار الأسهم وإرسال رسائل البريد الإلكتروني واستلامها وإجراء المكالمات الهاتفية وغير ذلك الكثير. هذا Instructable كيفية إرسال تغريدة.

الخطوة 1: الأشياء التي سوف تحتاجها

الأشياء التي سوف تحتاجها
الأشياء التي سوف تحتاجها

إليك الأشياء التي ستحتاج إليها ، ويمكن شراء معظمها من أي متجر أدوات كهربائية أو عبر الإنترنت (لقد قدمت الروابط للرجوع إليها).

  • 1xESP8266 (ESP-01) -باي
  • 1xBreadboard محول (تعرف على كيفية صنع واحد هنا أو استخدام بعض أسلاك العبور)
  • 1xLM2596-ebay
  • 1 محول مستوى xLogic -ebay
  • 1xArduino أونو
  • كابل USB لـ Arduino Uno
  • 1xBreadboard -ebay
  • أسلاك - باي
  • اردوينو IDE
  • حساب في موقع Thingspeak

ستكون التكلفة الإجمالية حوالي 600 روبية (حوالي 9 دولارات) ، وقد استبعدت تكلفة Arduino Uno لأنها تعتمد على ما إذا كنت تريد نسخة أصلية أو مستنسخة ، وتتوفر أرخص الحيوانات المستنسخة بحوالي 500 روبية (حوالي 4 دولارات).

الخطوة 2: بعض المعلومات عن ESP8266

تم إطلاق ESP8266 في عام 2014 قبل عام واحد فقط ، لذا فهو جديد تمامًا. تم تصنيع الرقائق بواسطة Espressif.

مميزات

ربما تكون أكبر ميزة لـ ESP8266 هي تكلفتها ، فهي رخيصة جدًا ويمكنك شراء اثنين منها دفعة واحدة.. يتم إصدار إصدارات جديدة من ESP8266 بشكل متكرر وأحدثها هو ESP 12 ، ومع ذلك في Instructable سأركز فقط على ESP 01 وهو شائع جدًا ، علاوة على ذلك ، عند شراء ESP8266 ، فإنه يأتي محملاً مسبقًا بالبرنامج الثابت الافتراضي AT. أنت جيد للبدء بمجرد شراء واحدة.. كما سترى من هذه التعليمات ، من السهل جدًا التفاعل معها.

عيب

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

لاحظ أن هناك الكثير من الوثائق المتاحة على الإنترنت وجزءًا منها متضارب. أيضًا) لكنها عملت بشكل جيد.

الخطوة 3: Pinout من ESP8266

Pinout من ESP8266
Pinout من ESP8266

يحتوي ESP8266 على 8 دبابيس كما هو موضح.

يجب توصيل Gnd و Vcc كالمعتاد بالأرض والتزويد على التوالي. يعمل ESP8266 على 3.3 فولت.

يستخدم RESET pin لإعادة ضبط ESP يدويًا ، يجب أن يكون متصلاً بشكل طبيعي 3.3 فولت ، إذا كنت تريد إعادة تعيين ESP ، فقم بتوصيل هذا الدبوس بالأرض للحظات ثم مرة أخرى إلى 3.3 فولت.

CH_PD هي طاقة الشريحة لأسفل والتي يجب توصيلها عادة بـ 3.3 فولت.

GPIO0 و GPIO2 عبارة عن دبابيس إخراج للأغراض العامة ، يجب توصيلها عادةً بـ 3.3 فولت ، ولكن عند وميض البرنامج الثابت ، قم بتوصيل GPIO0 بـ gnd.

دبابيس Rx و Tx هي دبابيس الإرسال والاستقبال لـ ESP8266 ، وهي تعمل على منطق 3.3 فولت ، أي 3.3 فولت هي المنطق HIGH لـ ESP8266.

يتم توفير اتصالات مفصلة في خطوات لاحقة.

الخطوة 4: ما الذي يجب استخدامه للتواصل مع ESP8266؟

ما الذي يجب استخدامه للتواصل مع ESP8266؟
ما الذي يجب استخدامه للتواصل مع ESP8266؟
ما الذي يجب استخدامه للتواصل مع ESP8266؟
ما الذي يجب استخدامه للتواصل مع ESP8266؟
ما الذي يجب استخدامه للتواصل مع ESP8266؟
ما الذي يجب استخدامه للتواصل مع ESP8266؟

هناك الكثير من الأجهزة التي يمكن استخدامها للتواصل مع ESP8266 مثل مبرمجي FTDI ، ومحول USB إلى TTL التسلسلي ، و Arduino وما إلى ذلك ، ومع ذلك فقد استخدمت Arduino Uno ببساطة لأنه الأسهل ويمتلكه الجميع تقريبًا. لديك Arduino لديك أيضًا Arduino IDE ويمكن استخدام الشاشة التسلسلية للتواصل مع ESP8266. لذلك لا تنفق الأموال على مبرمجي FTDI وما إلى ذلك.

ومع ذلك ، إذا كنت تريد أو إذا كان لديك بالفعل ، فيمكنك استخدام مبرمج FTDI أو محول تسلسلي من USB إلى TTL (المزيد حول كيفية توصيلها لاحقًا) ، وهناك أيضًا الكثير من البرامج مثل RealTerm أو المعجون. هذه بنفس طريقة الشاشة التسلسلية لـ Arduino IDE.

الخطوة 5: تركيب ESP8266 على اللوح

تركيب ESP8266 على اللوح
تركيب ESP8266 على اللوح
تركيب ESP8266 على اللوح
تركيب ESP8266 على اللوح

لاحظ أن دبابيس ESP8266 ليست صديقة للوح التجارب ، ويمكن التغلب على هذا بطريقتين.

استخدم أسلاك توصيل من الإناث إلى الذكور والتي يمكن أن تجعل الأشياء فوضوية أو

افعل كما هو موضح في Instructable أو

استخدم لوحة مهايئ ، اصنع واحدة بنفسك (يوجد الكثير منها على Instructables) وهي أنيقة.

الخطوة 6: مزود الطاقة

مزود الطاقة
مزود الطاقة

يعمل ESP8266 على إمداد 3.3 فولت. لا تقم بتوصيله بمنفذ 5 فولت على Arduino ، فمن المحتمل أن يحترق.

اقترحت بعض البرامج التعليمية إنشاء دائرة مقسم للجهد باستخدام مقاومات 1k و 2k مع 5V كمدخلات والحصول على 3.3V عبر المقاوم 2k وتزويده بـ Arduino ومع ذلك ، وجدت أن ESP لم يتم تشغيله حتى عندما قمت بذلك.

تمكنت من تشغيله باستخدام 3.3 فولت على Arduino ، لكنني وجدت أن ESP أصبح ساخنًا بعد مرور بعض الوقت.

يمكنك استخدام منظم جهد 3.3 فولت.

أو يمكنك استخدام محول التنحي LM2596 dc-dc ، هذه رخيصة جدًا ، وقد استخدمتها ، أعط 5 فولت من Arduino إلى الإدخال ، اضبط مقياس الجهد في الوحدة ، حتى يصبح الإخراج 3.3VI ، ووجدت أنه يمكن تشغيل ESP من واحدة من هؤلاء لساعات. قم بإجراء التوصيلات كما هو موضح في الشكل.

الخطوة 7: تحويل المستوى المنطقي

تحويل المستوى المنطقي
تحويل المستوى المنطقي

يذكر أن ESP لديه منطق 3.3V بينما Arduino لديه منطق 5V.

هذا يعني أنه في ESP 3.3V يكون المنطق مرتفعًا بينما في Arduino 5V يكون المنطق مرتفعًا ، وقد يتسبب هذا في بعض المشكلات أثناء توصيلهما معًا.

لقد وجدت على الإنترنت أن تحويل المستوى المنطقي يجب أن يتم تطبيقه أثناء ربط ESP Rx و Tx مع Arduino.

ذكرت بعض البرامج التعليمية أن التحويل على مستوى المنطق مطلوب أثناء توصيل دبوس ESP Rx.

ومع ذلك ، وجدت أن توصيل دبابيس ESP Rx و Tx بـ Arduino بشكل طبيعي لا يسبب أي مشاكل

لقد قمت بتوصيل Rx و Tx من خلال محول المستوى المنطقي وكذلك Rx وحده ولكن لم أحصل على أي استجابة.

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

لذلك قد يتم استخدام محول المستوى المنطقي وقد لا يتم استخدامه.

استخدم أي طريقة تناسبك من خلال التجربة والخطأ.

الخطوة 8: التوصيلات

روابط
روابط

وصلات ESP8266 هي:

ESP8266

Gnd ------------------- Gnd

GPIO2 --------------- 3.3 فولت

GPIO0 --------------- 3.3 فولت

Rx -------------------- Rx من Arduino

TX --------------------- Tx of Arduino (مباشر أو من خلال محول المستوى المنطقي)

CH_PD -------------- 3.3 فولت

إعادة تعيين -------------- 3.3 فولت

Vcc -------------------- 3.3 فولت

(لاحظ أنه في بعض الإصدارات ، يجب توصيل ESP Rx بـ Arduino Tx ويجب توصيل ESP Tx بـ Arduino Rx).

إذا كنت تستخدم مبرمج FTDI أو محول USB إلى TTL التسلسلي ، فقم بتوصيل Tx و Rx بـ Rx و Tx لـ ESP8266 على التوالي.

الخطوة 9: البدء

بعد إجراء الاتصالات ، قم بالتحميل

الإعداد باطل()

{}

حلقة فارغة()

{}

أي رسم فارغ لاردوينو..

افتح الشاشة التسلسلية واضبطها على "كلا NL & CR".

جرب معدل الباود ، يجب أن يكون عادة 9600 على الرغم من أنه في بعض الأحيان قد يكون 115200.

الخطوة 10: أوامر AT

أوامر AT
أوامر AT

مجرد قول أوامر AT هي أوامر يمكن إرسالها إلى ESP8266 لتمكينها من أداء بعض الوظائف مثل إعادة التشغيل والاتصال بشبكة wifi وما إلى ذلك ، سيرسل ESP ردًا على بعض التأكيد في شكل نص. أوامر AT وكيف يستجيب ESP لها. لاحظ أنه من خلال الإرسال أعني كتابة الأمر والضغط على Enter (عودة).

أرسل AT من خلال الشاشة التسلسلية

يستخدم هذا الأمر كأمر اختبار.

كيف يستجيب ESP: يجب إرجاع موافق.

أرسل AT + RST من خلال الشاشة التسلسلية

يستخدم هذا الأمر لإعادة تشغيل الوحدة النمطية.

كيف يستجيب المرساب الكهروستاتيكي: يقوم المرساب الكهروستاتيكي بإرجاع حمولة من القمامة ، ولكن ابحث عن جاهز أو جاهز.

أرسل AT + GMR من خلال الشاشة التسلسلية

يستخدم هذا الأمر لتحديد إصدار البرنامج الثابت للوحدة النمطية.

كيف يستجيب ESP: يجب إعادة إصدار البرنامج الثابت.

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

الخطوة 11: بناء الجملة العام لأوامر AT

يتم إعطاء الصيغة العامة لأوامر AT لأداء وظائف مختلفة:

AT + المعلمة =؟

عندما يتم إرسال أمر من هذا النوع من خلال جهاز العرض التسلسلي ، يقوم ESP بإرجاع جميع القيم التي يمكن أن تأخذها المعلمة.

AT + المعلمة = val

عندما يتم إرسال أمر من هذا النوع من خلال جهاز العرض التسلسلي ، يقوم ESP بتعيين قيمة المعلمة إلى val.

AT + المعلمة؟

عندما يتم إرسال أمر من هذا النوع من خلال جهاز العرض التسلسلي ، يقوم ESP بإرجاع القيمة الحالية للمعلمة.

قد تأخذ بعض أوامر AT واحدًا فقط من الأنواع المذكورة أعلاه بينما قد يستغرق البعض الآخر الثلاثة.

مثال على أمر ممكن في جميع الأنواع الثلاثة المذكورة أعلاه هو CWMODE ، والذي يستخدم لضبط وضع wifi.

إرسال AT + CWMODE =؟ من خلال الشاشة التسلسلية

كيف يستجيب ESP: يتم إرجاع جميع القيم التي يمكن أن يأخذها ESP CWMODE (1-3) على وجه التحديد + CWMODE (1-3).

1 = ثابت

2 = AP

3 = كلاهما ثابت و AP

أرسل AT + CWMODE = 1 من خلال الشاشة التسلسلية

كيف يستجيب ESP: يجب إرجاع OK إذا كان هناك تغيير في CWMODE عن قيمته السابقة وتم ضبطه على ثابت ، وإلا فلن يتم إرجاع أي تغيير إذا لم يكن هناك تغيير في قيمة CWMODE.

هام: ما لم يتم ضبط CWMODE على 1 ، لن تعمل الأوامر الواردة في الخطوات اللاحقة.

إرسال AT + CWMODE؟ من خلال الشاشة التسلسلية

كيف يستجيب ESP: يجب إرجاع القيمة الحالية لـ CWMODE ، على وجه التحديد إذا اتبعت الخطوة أعلاه + CWMODE: يجب إرجاع 1.

الخطوة 12: الاتصال بشبكة Wifi

أرسل AT + CWLAP من خلال الشاشة التسلسلية

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

كيف يستجيب ESP: يجب إعادة قائمة بجميع نقاط الوصول أو شبكات wifi المتاحة.

أرسل AT + CWJAP = "SSID" ، "password"

(بما في ذلك علامات الاقتباس المزدوجة).

يستخدم هذا الأمر للانضمام إلى شبكة wifi.

كيف يستجيب ESP: يجب إعادة موافق إذا تم توصيل الوحدة بالشبكة.

إرسال AT + CWJAP؟ من خلال الشاشة التسلسلية

يستخدم هذا الأمر لتحديد الشبكة التي يتصل بها ESP حاليًا.

كيف يستجيب ESP: سيتم إرجاع الشبكة التي تم توصيل ESP بها. على وجه التحديد + CWJAP: "SSID"

أرسل AT + CWQAP من خلال الشاشة التسلسلية

يستخدم هذا الأمر لقطع الاتصال بالشبكة التي يتصل بها المرساب الكهروستاتيكي حاليًا.

كيف يستجيب ESP: يخرج ESP من الشبكة التي يتصل بها ويعود OK.

أرسل AT + CIFSR من خلال الشاشة التسلسلية

يستخدم هذا الأمر لتحديد عنوان IP الخاص بـ ESP.

كيف يستجيب ESP: يتم إرجاع عنوان IP الخاص بـ ESP.

الخطوة 13: الأمور تتحدث

كلام
كلام
كلام
كلام
كلام
كلام
كلام
كلام

إذا لم تكن قد أنشأت حسابًا على Thingspeak ، فقم بإنشاء حساب الآن.

بعد إنشاء حساب على موقع Thingspeak ، انتقل إلى التطبيقات> ThingTweet.

ربط حساب تويتر الخاص بك معها.

لاحظ مفتاح API الذي تم إنشاؤه.

هنا بعد استخدام تطبيق ThingTweet لربط حساب Twitter بحساب ThingSpeak الخاص بك ، يمكنك إرسال تغريدة باستخدام TweetContol API.

واجهة برمجة التطبيقات (API) هي رمز يسمح لبرنامجين بالتواصل مع بعضهما البعض.

بعض واجهات برمجة التطبيقات الأخرى المتاحة للمطورين هي Google Maps API و Open weather API وما إلى ذلك.

فقط بعد إعداد ESP وفحصه وتوصيله بشبكة wifi (بشكل أساسي جميع الخطوات الواردة في الخطوتين السابقتين) ، انتقل من خلال الخطوات الموضحة أدناه

الخطوة 14: المزيد من أوامر AT

أرسل AT + CIPMODE = 0 ، من خلال الشاشة التسلسلية

كيف يستجيب ESP: يتم إرجاع OK.

يتم استخدام الأمر CIPMODE لضبط وضع النقل.

0 = الوضع العادي

1 = وضع العبور UART-WiFi

أرسل AT + CIPMUX = 1 من خلال الشاشة التسلسلية

كيف يستجيب ESP: يتم إرجاع OK.

يتم استخدام الأمر CIPMUX لتعيين اتصالات فردية أو متعددة.

0 = اتصال واحد

1 = اتصال متعدد

الخطوة 15: إعداد اتصال TCP

إعداد اتصال TCP
إعداد اتصال TCP
إعداد اتصال TCP
إعداد اتصال TCP

لاحظ أنه بدءًا من الأمر الأول ، بمجرد إرسال الأمر الأول ، سيتم إنشاء الاتصال لفترة محدودة فقط ، لذا أرسل الأوامر في أسرع وقت ممكن.

أرسل AT + CIPSTART = 0 ، "TCP" ، "api.thingspeak.com" ، 80 من خلال الشاشة التسلسلية

كيف يستجيب ESP: يتم إرجاع الارتباط إذا تم إنشاء الاتصال.

يستخدم هذا الأمر لتأسيس اتصال TCP.

الصيغة هي AT + CIPSTART = معرف الارتباط ، النوع ، IP البعيد ، المنفذ البعيد

أين

معرف الارتباط = معرف اتصال الشبكة (0 ~ 4) ، يستخدم للاتصال المتعدد.

اكتب = سلسلة أو "TCP" أو "UDP".

IP البعيد = سلسلة ، عنوان IP البعيد (عنوان موقع الويب).

المنفذ البعيد = سلسلة ، رقم المنفذ البعيد (عادة ما يتم اختياره ليكون 80).

أرسل AT + CIPSEND = 0 ، 110 من خلال الشاشة التسلسلية

كيف يستجيب ESP: يتم إرجاع (أكبر من) إذا نجح الأمر.

يستخدم هذا الأمر لإرسال البيانات.

الصيغة هي AT + CIPSEND = معرف الارتباط ، الطول

أين

معرف الارتباط = معرف الاتصال (0 ~ 4) ، للتوصيل المتعدد. منذ ضبط CIPMUX على 1 ، يكون 1.

الطول = طول البيانات ، 2048 بايت ، اختر بشكل عام عددًا كبيرًا للطول.

الخطوة 16: إرسال التغريدة

إرسال التغريدة
إرسال التغريدة

الآن لإرسال التغريدة

أرسل GET / apps / thingtweet / 1 / statuses / update؟ api_key = yourAPI & status = yourtweet من خلال الشاشة التسلسلية.

استبدل API الخاص بك بمفتاح API وتغريدتك بأي تغريدة تريدها.

بمجرد إرسال الأمر أعلاه ، ابدأ بالضغط على Enter (عودة) على فترات زمنية تبلغ حوالي ثانية واحدة ، وبعد مرور بعض الوقت ، سيتم إرجاع SEND OK و + IPD و 0 و 1: 1 و OK مما يعني أنه تم نشر التغريدة.

افتح تويتر الخاص بك وتحقق مما إذا كانت التغريدة قد تم نشرها أم لا.

لاحظ أيضًا أنه لا يمكن إرسال نفس التغريدة بشكل متكرر.

السلسلة أعلاه التي تم إرسالها (GET….) هي طلب HTTP GET.

يستخدم طلب GET لاسترداد البيانات من الخادم المحدد (api.thingspeak.com).

الخطوة 17: ماذا تفعل بعد ذلك

(شاهد الفيديو بدقة 360 بكسل على الأقل)

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

هناك الكثير من الموارد الرائعة المتاحة على الإنترنت للتعامل مع ESP8266 ، وقد ذكرت بعضها هنا:

  • فيديوهات كيفن دارا.
  • مقاطع فيديو ALLaboutEE.
  • esp8266.com

يمكنك أيضًا تجربة المزيد من أوامر AT ، فهناك الكثير من واجهات برمجة التطبيقات المتوفرة على الإنترنت والتي يمكنها القيام بكل أنواع الأشياء مثل معرفة الطقس وأسعار الأسهم وما إلى ذلك.

وثائق قيادة AT كاملة

كما أنني أعمل حاليًا على برنامج يقوم تلقائيًا بتغريد القيم التناظرية لجهاز الاستشعار وسأرسله بمجرد أن يعمل بشكل صحيح.

إذا كنت قد أحببت تصويتي القابل للتوجيه في مسابقة Arduino لكل الأشياء.

موصى به: