جدول المحتويات:
2025 مؤلف: John Day | [email protected]. آخر تعديل: 2025-01-13 06:56
يسمح لك هذا الدليل بالحصول على أي بيانات من ESP8266 والتحكم فيها عبر Python بدون أوامر AT.
بالنسبة للمبتدئين ، فإن معظم الإرشادات حول استخدام ESP8266 صعبة ، لأنهم يريدون منك وميض "أوامر AT" في الشريحة ، وهو:
- غير ضروري
- إضاعة ذاكرة ESP
- يمنحك سيطرة محدودة
- صعب وصعب
- وغير مناسب لجميع وحدات ESP8266
لهذا السبب قمت بإنشاء نظام اتصالات mDNS بسيط للغاية والذي يتم التحكم فيه فقط من خلال 3 وظائف بسيطة. كما يمنحك التحكم الكامل.
الخطوة 1: النظرية
يتصل esp الخاص بنا بشبكة wifi الخاصة بنا ويقوم بإنشاء خادم مضيف محلي ويبدأ في انتظار الطلب. في كل مرة يرسل فيها python طلبًا إلى ذلك المضيف المحلي ، يقوم esp بتشغيل الكود المطلوب ثم يعرض النتيجة على هيئة طلب http. أخيرًا ، تقرأ Python تلك البيانات التي تم إرجاعها على أنها طلب http وتلتقط المتغيرات منها. باستخدام هذا ، يمكن لـ esp إرجاع سلاسل وبيانات ومصفوفات. سوف يفهم كود Python نوع البيانات الخاص بهم.
الخطوة الثانية: تجهيز المكتبات المطلوبة
بادئ ذي بدء ، يجب تنزيل مكتبة بطاقات ESP8266 إلى اردوينو بيئة تطوير متكاملة. إذا كنت لا تعرف كيف ، فإليك الدليل.
بعد ذلك ، يجب عليك تنزيل مكتبتي الصغيرة من هنا.
بعد التنزيل ، يوجد في مجلد المكتبة ملف يسمى "ESP_MICRO.h" ، قم بنسخه إلى مجلد الترميز الخاص بمشروع اردوينو الحالي. نعم ، لا تنسخها إلى مكتبات اردوينو ، إنها مكتبة صغيرة لذا ستنسخها إلى مجلد مشروع اردوينو الحالي.
حتى الآن ، يتم تلبية متطلباتنا. يمكننا البدء في ترميزها.
الخطوة 3: كتابة رمز طلب بسيط
عندما تفتح project.ino الخاص بك ، سترى علامتي تبويب على arduino ID. الأول هو مشروعك ، والآخر هو "ESP_MICRO.h" مكتبتنا الصغيرة.
الآن لديك وظيفة 5 في ESP_MICRO.h في الكود الرئيسي الخاص بك ، (يتم شرح الوظائف في الأسطر الأولى من ESP_MICRO.h)
هنا هو رمز زيادة متغير بسيط.
كود اردوينو:
/ * اختبار F5 لـ ESP2PY
* كتبه Junicchi * https://github.com/KebabLord/esp_to_python * إنه ببساطة يزيد ويعيد متغيرًا في كل مرة يأتي فيها طلب python * / # include "ESP_MICRO.h" // تضمين مكتبة micro int testvariable = 0 ؛ إعداد باطل () {Serial.begin (9600) ؛ // بدء المنفذ التسلسلي لرؤية التفاصيل تبدأ ("USERNAME" ، "PASSWORD") ؛ // EnAIt سيتصل بشبكة wifi الخاصة بك بتفاصيل معينة} void loop () {waitUntilNewReq ()؛ // ينتظر حتى يأتي طلب جديد من python / * يزيد الفهرس عندما يأتي طلب جديد * / testvariable + = 1 ؛ returnThisInt (testvariable) ؛ // إرجاع البيانات إلى بيثون}
الخطوة 4: التحميل
برمجة Nodemcu ESP8266s تقوم ببساطة بتوصيل USB وتحميل الرسم التخطيطي من اردوينو.
لكن برمجة ESP8266-1 أصعب ، فهناك طريقتان لبرمجتها
برمجة ESP من خلال اردوينو
إذا كنت على ما يرام مع وصلات العبور ، فيمكنك برمجتها من خلال اردوينو بهذه الدائرة. لكن على المدى الطويل ، إنه ألم. لذلك أقترح طريقة أخرى.
برمجته مع مبرمج ESP
إنه أسهل بكثير وأسرع. إنه دولار واحد فقط ، اشترِ واحدًا واستخدم USB للمبرمج.
تعلم عنوان IP الخاص بـ ESP
أثناء تحميل الكود ، افتح المنفذ التسلسلي ، وسترى التفاصيل مطبوعة عند انتهاء التحميل. تعرف على عنوان IP الخاص بـ esp ولاحظ ذلك. تذكر ، IP الخاص بـ ESP على المستوى المحلي ؛ التغييرات عن طريق wifi إلى wifi ، وليس من جلسة إلى جلسة ، لذلك عند إغلاقها وفتحها لاحقًا ، لن يتم تغييرها.
الخطوة 5: القراءة وبايثون
في esp_to_python / library ، يوجد "EXAMPLE_PYTHON_READER.py"
قم بتحريره ، وقم بتغيير السطر الخامس باستخدام عنوان IP الخاص بوحدة esp التي تمت طباعتها على المنفذ التسلسلي وقم بتشغيل برنامج python النصي. في هذا المشروع ، استخدمت لغة python لإرسال الطلب وقراءته. ولكن يمكنك أيضًا عرض البيانات الأولية باستخدام متصفح أثناء لصق عنوان IP الخاص بـ ESP على المستعرض. أو يمكنك إنشاء تطبيق لقراءته ، أو يمكنك حتى استخدام لغة أخرى. يتم أيضًا شرح التحكم في الوحدة النمطية في Python في مشروع "ledControl" في مجلد الأمثلة.
الخطوة 6: الإنهاء
يتم شرح جميع الوظائف والرموز في ESP_MICRO.h وفي ملف README.md.
إذا كان هذا المشروع قد ساعدك ، فيمكنك تمييز المشروع الأصلي بنجمة على جيثب.