آموزش Espآموزش ESP32آموزش اینترنت اشیا

آموزش تنظیم آی پی ثابت ESP32 (کد Static IP)

اگر تا به حال سعی کرده اید یک وب سرور را بر روی ESP32 اجرا کنید، احتمالا متوجه چیزی آزاردهنده شده اید – هر بار که ESP32 خود را مجددا راه اندازی می کنید، آدرس IP می تواند تغییر کند. این بدان معنی است که شما همیشه باید سریال مانیتور را بررسی کنید تا این آدرس IP جدید را پیدا کنید.

اینجاست که آدرس IP ثابت وارد عمل می شود. با تنظیم یک آدرس IP ثابت، حتی پس از  ریست ESP32، می توانید با استفاده از همان آدرس IP به وب سرور دسترسی داشته باشید. هنگامی که با چندین ESP32 به مودم خود متصل هستید، این کار برای جلوگیری از سردرگم شدن بسیار مفید است!

فرآیند تنظیم آیپی ثابت برای برد ESP32 ساده است و در این مقاله آن را کامل یاد میگیرید.

مرحله اول: شروع تنظیم IP ثابت ESP32

ما از Arduino IDE برای برنامه نویسی ESP32 استفاده خواهیم کرد، بنابراین لطفاً قبل از ادامه، مطمئن شوید که نرم افزار آردوینو و درایور برد ESP32 را نصب کنید. چندین نرم افزار IDE برای برنامه نویسی ESP32 وجود دارد که مورد پیشنهادی همین آردوینو است.

بعد از نصب نرم افزار از اتصال صحیح برد از طریق کابل USB به کامپیوتر خود اطمینان حاصل کنید.برای اتصال برد ESP32 خود به رایانه از یک کابل میکرو USB استفاده کنید.

شروع تنظیم IP ثابت ESP32

مرحله دوم: اطلاعات شبکه فعلی را دریافت کنید

قبل از تنظیم یک IP ثابت، تمرین خوبی است که تنظیمات شبکه فعلی (IP، Gateway، Subnet و DNS) را که توسط روتر شما اختصاص داده شده است بررسی کنید. این اطلاعات می تواند به جلوگیری از اختلال در اختصاص IP کمک کند. برای اطلاع از آدرس IP فعلی ESP32 و سایر تنظیمات شبکه، باید کد زیر را در ESP32 خود آپلود کنید.

قبل از آپلود کد مطمئن شوید که دو متغیر زیر را با نام وای فای خود و رمز آن ویرایش کرده اید.

const char* ssid = "YourNetworkName";  // Enter SSID here
const char* password = "YourPassword";  // Enter Password here

پس از انجام این تغییرات، ادامه دهید و کد را آپلود کنید.

#include <WiFi.h>

// Replace with your network credentials
const char* ssid = "YourNetworkName";  // Enter SSID here
const char* password = "YourPassword";  //Enter Password here

void setup() {
  Serial.begin(115200);
  
  Serial.print("Connecting to ");
  Serial.println(ssid);
  
  // Connect to Wi-Fi
  WiFi.begin(ssid, password);
  
  while (WiFi.status() != WL_CONNECTED) {
    delay(1000);
    Serial.print(".");
  }
  
  Serial.println("");
  Serial.println("Connected..!");
 
  Serial.print("Current ESP32 IP: ");
  Serial.println(WiFi.localIP());
  Serial.print("Gateway (router) IP: ");
  Serial.println(WiFi.gatewayIP());
  Serial.print("Subnet Mask: " );
  Serial.println(WiFi.subnetMask());
  Serial.print("Primary DNS: ");
  Serial.println(WiFi.dnsIP(0));
  Serial.print("Secondary DNS: ");
  Serial.println(WiFi.dnsIP(1));
}

void loop() {
}

پس از آپلود کد، Serial Monitor را باز کرده و نرخ باود را روی 115200 قرار دهید. سپس دکمه EN را در ESP32 فشار دهید. ممکن است چند لحظه طول بکشد تا به شبکه شما متصل شود، پس از آن تنظیمات شبکه فعلی ESP32 را در مانیتور سریال چاپ می کند. خروجی را مشابه تصویر زیر مشاهده خواهید کرد:

مطلب پیشنهادی:  راه اندازی دوربین وای با فای با ESP32-CAM (پخش اینترنتی)

اطلاعات شبکه فعلی را دریافت کنید

مرحله 3: تنظیم آدرس آی پی ثابت در برد ESP32

پس از به دست آوردن تنظیمات شبکه فعلی، اکنون می توانید یک آدرس IP ثابت تنظیم کنید.

در خط زیر شما باید آیپی ثابت مورد نظرتان را وارد کنید.

IPAddress staticIP(192, 168, 1, 100); // آی پی ثابت

کد بالا برای بسیاری از مودم ها عمل میکند و نیازی برای تغییر موارد زیر نیست اما اگر عمل نکرد میتوانید بررسی کنید کدام یک از موارد زیر را باید تغییر بدهید. در غیر اینصورت نیازی به تغییر نیست.

IPAddress gateway(192, 168, 1, 1);    // IP Address of your network gateway (router)
IPAddress subnet(255, 255, 255, 0);   // Subnet mask
IPAddress primaryDNS(192, 168, 1, 1); // Primary DNS (optional)
IPAddress secondaryDNS(0, 0, 0, 0);   // Secondary DNS (optional)

هنگامی که کد را تغییر دادید، آن را در ESP32 آپلود کنید.

اگر در مورد این مطلب سوالی دارید در قسمت نظرات بپرسید
#include <WiFi.h>

// تنظیم اطلاعات مودم
const char* ssid = "Your_SSID";
const char* password = "Your_PASSWORD";

// Static IP configuration
IPAddress staticIP(192, 168, 1, 100); // آدرس آیپی ثابت (مهم)
IPAddress gateway(192, 168, 1, 1);    // IP Address of your network gateway (router)
IPAddress subnet(255, 255, 255, 0);   // Subnet mask
IPAddress primaryDNS(192, 168, 1, 1); // Primary DNS (optional)
IPAddress secondaryDNS(0, 0, 0, 0);   // Secondary DNS (optional)

void setup() {
  Serial.begin(115200);

  // Connect to Wi-Fi
  WiFi.begin(ssid, password);
  while (WiFi.status() != WL_CONNECTED) {
    delay(1000);
    Serial.println("Connecting to WiFi...");
  }

  // Configuring static IP
  if(!WiFi.config(staticIP, gateway, subnet, primaryDNS, secondaryDNS)) {
    Serial.println("Failed to configure Static IP");
  } else {
    Serial.println("Static IP configured!");
  }
  
  Serial.print("ESP32 IP Address: ");
  Serial.println(WiFi.localIP());  // چاپ کردن آیپی برد شما
}

void loop() {
  // Nothing to do here
}

پس از آپلود کد در ESP32 خود، از مانیتور سریال استفاده کنید تا تأیید کنید که ESP32 اکنون از آدرس IP ثابتی که تنظیم کرده اید استفاده می کند.

تنظیم آدرس آی پی ثابت در برد ESP32

حالا همه چیز به خوبی تنظیم شده است!

5 (2 نفر)

برای دریافت مطالب جدید کانال تلگرام یا پیج اینستاگرام ما را دنبال کنید.

محمد رحیمی

محمد رحیمی هستم. سعی میکنم در آیرنکس مطالب مفید قرار بدهم. سوالات مربوط به این مطلب را در قسمت نظرات همین مطلب اعلام کنید. سعی میکنم در اسرع وقت به نظرات شما پاسخ بدهم.

برای ارسال تصاویر از انجمن سایت استفاده کنید.

سوالات فنی را در انجمن سایت مطرح کنید تا در مسابقه شرکت کنید. ورود به انجمن

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

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