كيفية تعيين عنوان IP الثابت لـ ESP32

Kyfyt T Yyn Nwan Ip Althabt L Esp32



عنوان IP هو سلسلة فريدة من الأرقام التي يمكنها تحديد جهاز في الشبكة. تستخدم أجهزة وأجهزة كمبيوتر متعددة عناوين IP للتواصل مع بعضها البعض. رقم تعريف حاسوب ثابت العنوان يشبه العنوان الثابت تمامًا مثل عنوان الشارع. يشير إلى أن عناوين IP الثابتة لا تتغير ويساعد الأجهزة الأخرى على التحقق من مكان وجود جهاز أو كمبيوتر معين.

في هذه المقالة ، سنقوم بتعيين عنوان IP ثابت ESP32 يمكن تذكره بواسطة الأجهزة الأخرى.

مقدمة لعنوان IP الخاص بـ ESP32

قد يحتاج العمل مع ESP32 إلى عنوان IP ثابت منفصل لأننا عندما نصمم خادم ويب لـ ESP32 ، فإننا نصل إلى خادم الويب هذا باستخدام عنوان IP الخاص بـ ESP32. يتم تعيين عنوان IP هذا بواسطة شبكة WiFi التي يتصل بها ESP32.







قد يتسبب هذا في مشكلة أثناء التعامل مع ESP32 في مشروع لأنه في كل مرة يتم فيها إيقاف تشغيل ESP32 أو إعادة تعيين عنوان IP جديد له بواسطة شبكة WiFi. نتيجة لذلك ، نحتاج إلى عنوان IP جديد لخادم الويب. لذا ، فإن الحل السريع لهذا هو تعيين عنوان IP ثابت لـ ESP32 والذي يظل دون تغيير حتى إذا تم إيقاف تشغيل ESP32 أو إعادة تعيينه.



عادة DHCP (بروتوكول التكوين الديناميكي للمضيف) تقوم أداة إدارة الشبكة بتعيين عناوين IP لجميع الأجهزة المتصلة داخل شبكة WiFi. يعد DHCP مفيدًا لأنه يتجنب حاجة مسؤولي الشبكة إلى تعيين عناوين IP يدويًا لجميع الأجهزة المتصلة داخل الشبكة. في الشبكة المنزلية ، يعمل موجه WiFi عادةً كخادم DHCP.



إلى جانب عنوان IP ، يقوم DHCP أيضًا بتعيين بعض المعلمات الأخرى التي تشمل:





  • قناع الشبكة الفرعية: إنه رقم 32 بت يخفي عناوين IP ويقسمها إلى عناوين الشبكة والمضيف.
  • عنوان البوابة: إنه عنوان IP للجهاز الذي يربط أجهزة الشبكة المحلية بالإنترنت عادةً في المنزل ، وهو عبارة عن جهاز توجيه WiFi.
  • DNS: إنه عنوان IP لخادم اسم المجال.

كل هذه المعلمات مهمة للوصول إلى خادم الويب ESP32. عندما سنستخدم عنوان IP ثابتًا لـ ESP32 ، يجب تمرير جميع هذه المعلمات وإلا سيفشل ESP32 في إنشاء الاتصال.

بمجرد تعيين ESP32 بعنوان IP ثابت ، لن يستخدم ملف DHCP الخادم ولن يقوم بجلب البيانات المطلوبة. لذلك ، لتوصيل ESP32 في شبكة WiFi بعنوان IP ثابت ، يجب أن نعرف المعلمات المذكورة أعلاه لذلك أولاً سنقوم بتوصيلها بشبكة WiFi والتحقق من جميع معلمات الشبكات بما في ذلك قناع الشبكة الفرعية ، عنوان البوابة و DNS IP تبوك.



بعد معرفة المعلمات ، يمكننا تعيين عنوان IP ثابت.

البحث عن معلمات الشبكة الافتراضية

كما تمت مناقشته في القسم السابق ، سنقوم بتوصيل ESP32 بشبكة WiFi للحصول على جميع معلمات تلك الشبكة. لذلك ، من خلال تحديد SSID للشبكة وكلمة المرور واستخدام مكتبة WiFi.h ، يمكننا توصيل ESP32 بشبكة.

شفرة

قم بتحميل الرمز الوارد أدناه في لوحة ESP32 وتذكر تغيير SSID وكلمة المرور باستخدام بيانات اعتماد الشبكة الخاصة بك.

# تضمين


مقدار ثابت شار * ssid = 'yourNetworkName' ؛
مقدار ثابت شار * كلمه السر = 'yourNetworkPass' ؛

فارغ اقامة ( ) {
مسلسل. يبدأ ( 115200 ) ؛

واي فاي. يبدأ ( ssid و كلمه السر ) ؛

في حين ( واي فاي. الحالة ( ) ! = WL_CONNECTED ) {
تأخير ( 500 ) ؛
مسلسل. مطبعة ( 'توصيل... ' ) ؛
}

مسلسل. مطبعة ( 'عنوان IP المحلي: ' ) ؛
مسلسل. println ( واي فاي. عنوان IP المحلي ( ) ) ؛
مسلسل. مطبعة ( 'قناع الشبكة الفرعية:' ) ؛
مسلسل. println ( واي فاي. قناع الشبكة الفرعية ( ) ) ؛
مسلسل. مطبعة ( 'بوابة الملكية الفكرية: ' ) ؛
مسلسل. println ( واي فاي. بوابة الملكية الفكرية ( ) ) ؛
مسلسل. مطبعة ( 'DNS 1:' ) ؛
مسلسل. println ( واي فاي. dnsip ( 0 ) ) ؛
مسلسل. مطبعة ( 'DNS 2:' ) ؛
مسلسل. println ( واي فاي. dnsip ( 1 ) ) ؛
}

فارغ عقدة ( ) { }

بدأ الكود بتضمين مكتبة WiFi.h. بعد ذلك ، حددنا SSID وكلمة المرور. هنا يتم توصيل ESP32 بشبكة WiFi وسيتم تعيين جميع المعلمات المطلوبة بواسطة خادم DHCP.

في الجزء الثاني من الكود ، قمنا بطباعة عنوان IP المعين بواسطة خادم DHCP مع معلمات إضافية: قناع الشبكة الفرعية ، وعنوان IP الخاص بالبوابة وكلا عناوين IP الخاصة بخادم DNS.

انتاج |

في الإخراج يمكننا رؤية جميع معلمات الشبكة المطبوعة على الشاشة التسلسلية.

الآن سنقوم بتعيين IP ثابت على ESP32. باستثناء عناوين IP المحلية ، سيتم استخدام جميع المعلمات المتبقية في القسم التالي.

تعيين عنوان IP ثابت لـ ESP32

نظرًا لأننا نعلم بالفعل معلمات الشبكة حيث يتم توصيل ESP32 الآن ، فسوف نستخدم عنوان IP مخصصًا لتوصيل ESP32 في نفس الشبكة أثناء استخدام المعلمات الأخرى دون تغيير كما حصلنا في الإخراج السابق.

ولكن قبل ذلك علينا التثبيت ESP32 بينغ مكتبة في Arduino IDE. باستخدام هذه المكتبة ، يمكننا التحقق من أن عنوان IP الثابت الخاص بنا يعمل أم لا. اضغط للتحميل ESP32 بينغ مكتبة.

بمجرد تنزيل الملف المضغوط ، انتقل إلى: رسم> تضمين مكتبة> إضافة مكتبة مضغوطة

  واجهة مستخدم رسومية ، نص ، وصف التطبيق يتم إنشاؤه تلقائيًا

شفرة

الآن قم بتحميل الكود الموضح أدناه في ESP32. سيقوم هذا الرمز بتعيين عنوان IP ثابت لـ ESP32. تذكر استبدال SSID وكلمة المرور للشبكة.

# تضمين

# تضمين

مقدار ثابت شار * ssid = 'yourNetworkName' ؛
مقدار ثابت شار * كلمه السر = 'yourNetworkPass' ؛

IPAddress ثابت IP ( 192 و 168 و 18 و 53 ) ؛
بوابة IPAddress ( 192 و 168 و 18 و 1 ) ؛
IPAddress الشبكة الفرعية ( 255 و 255 و 255 و 0 ) ؛
IPAddress DNS ( 101 و خمسون و 101 و خمسون ) ؛

فارغ اقامة ( ) {
مسلسل. يبدأ ( 115200 ) ؛

إذا ( واي فاي. التكوين ( رقم تعريف حاسوب ثابت و بوابة و الشبكة الفرعية و نظام أسماء النطاقات و نظام أسماء النطاقات ) == خاطئة ) {
مسلسل. println ( 'فشل التكوين.' ) ؛
}

واي فاي. يبدأ ( ssid و كلمه السر ) ؛

في حين ( واي فاي. الحالة ( ) ! = WL_CONNECTED ) {
تأخير ( 500 ) ؛
مسلسل. مطبعة ( 'توصيل... ' ) ؛
}

مسلسل. مطبعة ( 'عنوان IP المحلي: ' ) ؛
مسلسل. println ( واي فاي. عنوان IP المحلي ( ) ) ؛
مسلسل. مطبعة ( 'قناع الشبكة الفرعية:' ) ؛
مسلسل. println ( واي فاي. قناع الشبكة الفرعية ( ) ) ؛
مسلسل. مطبعة ( 'بوابة الملكية الفكرية: ' ) ؛
مسلسل. println ( واي فاي. بوابة الملكية الفكرية ( ) ) ؛
مسلسل. مطبعة ( 'DNS 1:' ) ؛
مسلسل. println ( واي فاي. dnsip ( 0 ) ) ؛
مسلسل. مطبعة ( 'DNS 2:' ) ؛
مسلسل. println ( واي فاي. dnsip ( 1 ) ) ؛

نجاح منطقي = بينغ. بينغ ( 'www.google.com' و 3 ) ؛

إذا ( ! النجاح ) {
مسلسل. println ( ' فشل Ping ' ) ؛
إرجاع ؛
}

مسلسل. println ( ' نجح الأمر Ping '. ) ؛
}

فارغ عقدة ( ) { }

بدأ الكود بتضمين مكتبة WiFi و Ping. بعد ذلك ، حددنا SSID وكلمة المرور لشبكة WiFi.

بعد ذلك حددنا جميع المعلمات بما في ذلك عنوان IP الثابت إلى جانب DNS وبوابة IP والشبكة الفرعية. لاحظ أننا قمنا بتعيين عنوان IP (192 ، 168 ، 18 ، 53) وهو موجود في نفس الشبكة الفرعية لعنوان IP الذي حصلنا عليه مسبقًا في الكود السابق. تأكد من عدم استخدام أي جهاز آخر داخل الشبكة لعنوان IP هذا.

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

انتاج |

الآن عندما أعدنا توصيل لوحة ESP32 بجهاز الكمبيوتر بعد قطع الاتصال ، تم تكوين عنوان IP الثابت مرة أخرى ، مما يشير إلى أنه لن يتغير حتى في حالة انقطاع التيار الكهربائي.

لقد نجحنا في إعطاء عنوان IP ثابت لـ ESP32.

استنتاج

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