تعد وحدة Ethernet التي تعتمد على USR-ES1 عبارة عن وحدة Ethernet تستند إلى W5500 والتي تسمح لمشاريع Arduino بالاتصال بالإنترنت عبر اتصال سلكي. إنه مضغوط وموثوق ويدعم بروتوكولات TCP/IP ، مما يجعله مثاليًا لتطبيقات إنترنت الأشياء وخوادم الويب وتسجيل البيانات. سوف يرشدك هذا البرنامج التعليمي من خلال استخدام وحدة Ethernet USR-ES1 W5500 مع Arduino.
ماذا ستحتاج
- وحدة usr-es1 W5500 Ethernet
- لوحة Arduino (على سبيل المثال ، UNO ، Mega ، Nano)
- كابل إيثرنت
- الأسلاك الأسلاك والبلوز
- جهاز كمبيوتر مع Arduino IDE مثبت
الخطوة 1: فهم وحدة Ethernet USR-ES1
تعتمد وحدة W5500 Ethernet على شريحة W5500 ، والتي تدعم:
- TCP ، UDP ، ICMP ، IPv4 ، ARP ، IGMP ، PPPOE Protocols
- واجهة SPI للتواصل مع Microcontrollers
- ما يصل إلى 8 اتصالات المقبس في وقت واحد
W5500 pinout
دبوس | وظيفة |
---|---|
VCC | السلطة (3.3 فولت) |
GND | أرضي |
ميسو | إخراج بيانات SPI |
موسي | إدخال بيانات SPI |
SCK | SPI Clock |
CS (SS) | رقاقة اختيار |
RST | إعادة تعيين (اختياري) |
الخطوة 2: توصيل USR-ES1 W5500 إلى Arduino
إليك كيفية توصيل الوحدة النمطية بأردوينو أونو:
usr-es1 دبوس | دبوس أردوينو |
---|---|
VCC | 3.3V |
GND | GND |
ميسو | دبوس 12 |
موسي | دبوس 11 |
SCK | دبوس 13 |
CS (SS) | دبوس 10 |
RST | غير متصل (اختياري) |
ملحوظة: يعمل W5500 في 3.3 فولت. تأكد من عدم توصيله مباشرة بتوريد 5 فولت.
الخطوة 3: تثبيت مكتبة Ethernet
للتواصل مع وحدة W5500 ، ستحتاج إلى مكتبة Ethernet2.
خطوات لتثبيت مكتبة Ethernet2:
- افتح Arduino IDE.
- اذهب إلى رسم > تشمل المكتبة > إدارة المكتبات.
- ابحث عن "Ethernet2" في مدير المكتبة.
- انقر ثَبَّتَ.
الخطوة 4: تحميل الرمز
فيما يلي مثال على إعداد وحدة W5500 كخادم ويب بسيط:
#include <Ethernet2.h>
// Network configuration
byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED }; // MAC address
IPAddress ip(192, 168, 1, 177); // Static IP address
EthernetServer server(80); // Port 80 for HTTP
void setup() {
Serial.begin(9600);
while (!Serial) {
; // Wait for Serial Monitor to open
}
Serial.println("Initializing Ethernet...");
if (Ethernet.begin(mac) == 0) {
Serial.println("Failed to configure Ethernet using DHCP");
Ethernet.begin(mac, ip); // Use static IP if DHCP fails
}
Serial.print("Ethernet IP Address: ");
Serial.println(Ethernet.localIP());
server.begin();
}
void loop() {
EthernetClient client = server.available(); // Check for incoming clients
if (client) {
Serial.println("New client connected");
while (client.connected()) {
if (client.available()) {
char c = client.read();
Serial.write(c); // Print incoming data to Serial Monitor
// Respond to HTTP GET requests
if (c == '\n') {
client.println("HTTP/1.1 200 OK");
client.println("Content-Type: text/html");
client.println("Connection: close");
client.println();
client.println("<html><body><h1>Hello from Arduino!</h1></body></html>");
break;
}
}
}
client.stop(); // Disconnect the client
Serial.println("Client disconnected");
}
}
الخطوة 5: اختبار الإعداد
- قم بتوصيل Arduino بجهاز الكمبيوتر الخاص بك عبر USB ووحدة W5500 بجهاز التوجيه الخاص بك باستخدام كابل Ethernet.
- افتح Arduino IDE وحدد الصحيح سبورة و ميناء تحت أدوات قائمة طعام.
- قم بتحميل الرمز إلى Arduino بالنقر فوق رفع.
- افتح الشاشة التسلسلية (أدوات > المراقبة التسلسلية) وتعيين معدل باود
9600
. لاحظ عنوان IP المعروض. - افتح متصفح الويب وأدخل عنوان IP الخاص بـ Arduino (على سبيل المثال ،
http://192.168.1.177
). - يجب أن ترى صفحة ويب تعرض "مرحبًا من Arduino!"
استكشاف الأخطاء وإصلاحها
- Ethernet لا تهيئة: تأكد من الأسلاك المناسبة وتحقق مما إذا كان كابل Ethernet متصلًا بشكل آمن.
- صراع IP: تحقق من أن عنوان IP الثابت لا يصطدم بأجهزة أخرى على الشبكة.
- لا استجابة في المتصفح: تأكد من أن عنوان IP في الرمز يطابق الشبكة الفرعية لشبكتك.
تطبيقات وحدة Ethernet W5500
- تسجيل بيانات إنترنت الأشياء
- أنظمة التحكم عن بعد
- خوادم أتمتة المنزل
- شبكات المستشعر مع واجهات الويب
خاتمة
لقد نجحت في إعداد وحدة Ethernet USR-ES1 W5500 مع Arduino لإنشاء خادم ويب بسيط. تمكنك هذه الوحدة متعددة الاستخدامات من بناء مشاريع موثوقة وربط الشبكة. قم بتوسيع هذا المثال من خلال دمج أجهزة الاستشعار أو المحركات أو قواعد البيانات للتطبيقات المتقدمة!