معرفی شیلد شبکه W5100 آردوینو
شیلد W5100 یک برد توسعه شبکه برای اضافه کردن ارتباط Ethernet به آردوینو است. این شیلد بر پایه کنترلر W5100 شرکت WIZnet ساخته شده و با استفاده از پورت RJ45، آردوینو را از طریق کابل LAN به شبکه محلی متصل میکند.
وجود TCP/IP سختافزاری در W5100 باعث میشود بخش مهمی از پردازش پروتکلهای شبکه توسط خود کنترلر انجام شود. به همین دلیل این شیلد برای ساخت Web Server، سیستم مانیتورینگ، کنترل تجهیزات از طریق LAN و پروژههای IoT سیمی کاربرد دارد.
مشخصات شیلد W5100
| کنترلر شبکه | WIZnet W5100 |
| نوع ارتباط | Ethernet سیمی |
| رابط شبکه | RJ45 |
| Ethernet | 10BASE-T / 100BASE-TX |
| TCP/IP | Hardwired TCP/IP Stack |
| پروتکلها | TCP، UDP، ICMP، IPv4، ARP، IGMP، PPPoE |
| Hardware Socket | 4 اتصال مستقل |
| حافظه TX/RX | 16KB |
| رابط با آردوینو | SPI |
| Auto Negotiation | 10/100Mbps، Full/Half Duplex |
| کارت حافظه | در نسخههای رایج شیلد دارای اسلات MicroSD |
| کاربرد | Web Server، IoT، کنترل و مانیتورینگ LAN |
W5100 چگونه کار میکند؟
W5100 یک Ethernet Controller با MAC، PHY و TCP/IP Stack سختافزاری داخلی است. آردوینو از طریق SPI با W5100 ارتباط برقرار میکند و کنترلر شبکه بخش زیادی از پردازش Packetها و Socketهای شبکه را انجام میدهد.
W5100 امکان مدیریت همزمان 4 Hardware Socket را فراهم میکند و دارای 16KB حافظه داخلی برای TX/RX است.
با شیلد W5100 چه چیزی میتوان ساخت؟
یکی از کاربردهای ساده این شیلد، ساخت Web Server با آردوینو است. برای مثال میتوانید وضعیت سنسور دما را در شبکه نمایش دهید یا فرمان روشن و خاموش شدن یک رله را از طریق مرورگر برای Arduino ارسال کنید.
همین ساختار در پروژههای مانیتورینگ، دیتالاگر شبکه، خانه هوشمند سیمی و کنترل تجهیزات از طریق LAN قابل توسعه است.
شیلد W5100 یا ماژول ENC28J60؟
| ویژگی | W5100 | ENC28J60 |
|---|---|---|
| Ethernet | 10/100Mbps | 10Mbps |
| TCP/IP سختافزاری | دارد | ندارد |
| Hardware Socket | 4 عدد | مدیریت توسط نرمافزار MCU |
| رابط MCU | SPI | SPI |
| فرم محصول | شیلد آماده آردوینو | ماژول شبکه |
| کاربرد | راهاندازی سادهتر Ethernet روی Arduino | پروژههای Ethernet اقتصادی و سفارشی |
این مقایسه به معنی بدتر بودن ENC28J60 نیست. اگر TCP/IP سختافزاری و فرم شیلد آماده برای Arduino اهمیت دارد، W5100 مناسبتر است؛ اما ENC28J60 برای طراحیهای متفاوت میتواند انتخاب اقتصادی و کاربردی باشد.
W5100 یا WiFi ESP8266؟
شیلد W5100 برای شبکه سیمی Ethernet طراحی شده، در حالی که ESP8266 ارتباط WiFi را فراهم میکند. اگر محل پروژه کابل شبکه دارد و ارتباط سیمی میخواهید، W5100 گزینه مرتبطتری است.
اگر دستگاه باید بدون کابل شبکه به روتر متصل شود، NodeMCU یا ماژولهای ESP8266 کاربرد متفاوتی دارند.
کارت حافظه روی شیلد W5100
بسیاری از نسخههای رایج Ethernet Shield مبتنی بر W5100 دارای اسلات کارت حافظه MicroSD هستند. این قابلیت برای ذخیره فایل، ثبت اطلاعات سنسورها یا نگهداری محتوای موردنیاز Web Server کاربرد دارد.
راهاندازی W5100 با Arduino
برای راهاندازی میتوان از کتابخانه Ethernet در Arduino IDE استفاده کرد. پس از قرار دادن شیلد روی Arduino و اتصال کابل RJ45، تنظیمات شبکه مانند MAC Address و IP متناسب با ساختار شبکه انجام میشود.
سپس میتوان پروژههایی مانند Web Server، Ethernet Client یا ارتباط TCP/UDP را پیادهسازی کرد.
مثال واقعی؛ کنترل رله از طریق LAN
فرض کنید Arduino داخل یک تابلو نصب شده و به چند رله متصل است. با قرار دادن شیلد W5100 روی Arduino و اتصال کابل LAN میتوان برد را وارد شبکه محلی کرد.
یک Web Server ساده روی Arduino اجرا میشود و کاربر از طریق مرورگر فرمان روشن یا خاموش شدن خروجیها را ارسال میکند. در این پروژه نیازی به ارتباط WiFi نیست و کنترلر مستقیماً از Ethernet استفاده میکند.
اشتباهات رایج
اشتباه گرفتن W5100 با WiFi، استفاده همزمان از D4 یا D10 بدون توجه به SPI، تنظیم IP نامناسب، انتظار سرعت واقعی 100Mbps از Arduino و استفاده از Library نامرتبط از خطاهای رایج هنگام راهاندازی این شیلد هستند.
محصولات مرتبط در RNGO
اگر Ethernet سادهتر در قالب ماژول نیاز دارید، ENC28J60 را بررسی کنید. برای ارتباط WiFi نیز NodeMCU ESP8266، ESP8266-12E و ESP8266-12F گزینههای مرتبط هستند.
برای مشاهده ماژولهای شبکه، آردوینو و سایر قطعات پروژه به فروشگاه RNGO مراجعه کنید.
برای آموزشهای آردوینو، شبکه و الکترونیک نیز مقالات RNGO را ببینید.
خرید شیلد W5100 آردوینو
اگر برای پروژه Arduino به Ethernet سیمی، پورت RJ45 و TCP/IP سختافزاری نیاز دارید، شیلد W5100 امکان اضافه کردن ارتباط شبکه را بدون طراحی یک مدار Ethernet از صفر فراهم میکند.
قبل از سفارش، مدل Arduino، نسخه شیلد، وجود یا عدم وجود MicroSD و Pinout برد را با تصاویر محصول بررسی کنید.
قبل از خرید، یک سر به مقالات آموزشی RNGO بزن و آموزشهای آردوینو و شبکه رو هم ببین.
سوالات متداول
آیا شیلد W5100 به WiFi متصل میشود؟
خیر. W5100 یک کنترلر Ethernet سیمی است و برای اتصال شبکه از کابل LAN و RJ45 استفاده میکند.
آیا W5100 از شبکه 100Mbps پشتیبانی میکند؟
PHY داخلی W5100 از 10BASE-T و 100BASE-TX و Auto Negotiation پشتیبانی میکند؛ اما سرعت واقعی انتقال داده در پروژه Arduino به پردازنده، SPI، نرمافزار و ساختار برنامه نیز وابسته است.
آیا شیلد W5100 با Arduino Uno کار میکند؟
نسخههای رایج این شیلد برای فرم Arduino Uno طراحی شدهاند و از SPI برای ارتباط استفاده میکنند. برای سایر بردها باید سازگاری Pinout و SPI همان برد بررسی شود.
جمعبندی
شیلد شبکه W5100 آردوینو راهکاری آماده برای اتصال Arduino به شبکه Ethernet است. TCP/IP سختافزاری، 4 Socket مستقل، حافظه 16KB، رابط SPI و پشتیبانی از Ethernet 10/100 از مهمترین قابلیتهای کنترلر W5100 هستند.
اگر پروژه شما به جای WiFi به ارتباط LAN سیمی نیاز دارد، W5100 میتواند برای Web Server، مانیتورینگ و کنترل تجهیزات تحت شبکه مورد استفاده قرار گیرد.
