image

當我準備一個使用Arduino Ethernet Shield的物聯網項目。

我想知道新物聯網項目的Aruidno網絡性能數據來檢查帶寬預算。而且,我發覺在Arduino網站和Google上也找不到相關知識。

—–

所以……我決定由我自己來檢查Arduino的網速。

我認為有許多人想測試網絡性能。

—–

請跟我來,那麼你可以測試你Arduino的網速。

我們將使用一個“的Iperf”的工具來衡量網絡性能。請參考以下鏈接了解“的Iperf”和“如何安裝ipert”

http://www.instructables.com/id/How-to-measure-network-performance-1/

步驟1:材料和連接

image

1. Arduino 與 Ethernet Shield

* Arduino Uno 和 WIZ550io(可直接從 WIZnet 找到)

這將是一個的 Iperf 服務器。

—–

2.電腦
*我的電腦(這是安裝在任何Windows)

這將是AA的Iperf客戶端,並檢查網速。

—–

3.網絡交換機

*3Com的千兆交換機

它把電腦與Arduino在網絡上連接在一起。

—–
圖片顯示材料和網速測試的環境。

第2步:為 WIZ5500io 更新 Arduino Ethernet Shield

image

我們將使用 Arduino Ethenet Shield 作為 “Iperf 服務器”

在市場上有許多的Arduino Ethernet Shield 盾和我也幾個 Ethernet Shield。我決定使用wiz550io作為一個Arduino的以太網盾因為它是WIZNET的最新的 Ethernet Shield 比原本的有更加良好的網絡性能。最重要的是,我們必須更新以太網庫來使用 wiz550io 作為 Arduino Ethernet Shield。

Most of all, we have to update Ethernet Library to use a wiz550io for Arduino ethernet shield.

我們將使用Arduino Ethernet Shield 作為“的Iperf服務器”

1.下載WIZnet的以太網圖書館

https://github.com/Wiznet/WIZ_Ethernet_Library

一切都可以在 “Download ZIP” 中下載。

—–

2.將 Ethernet 文件夾抄到 Arduino 的 Library 文件夾。 (覆蓋內置 Ethernet Library)

【注意事項】有兩種版本的以太網文件夾,這取決於你的Arduino IDE版本。

—–

3.驗證碼

在庫/以太網/實用工具文件夾,打開w5100.h並確認只有1正確的#define行是註釋。對於Wiz550io它看起來像下方的圖片。

//#define W5100_ETHERNET_SHIELD // Arduino Ethernet Shield and Compatibles …
//#define W5200_ETHERNET_SHIELD // WIZ820io, W5200 Ethernet Shield
#define W5500_ETHERNET_SHIELD // WIZ550io, ioShield series of WIZnet

第3步:設置Arduino作為 iperf 服務器

image

最重要的是,我們要以 Arduino 作為 iperf 服務器。

然後,我們需要準備 Arduino 起草代碼。

正如你所看到的畫面。這是很簡單的。

Arduino 將從 Ethernet Shield 的緩存讀取數據。

就這樣。那麼 Arduino 成為一個性能測試的 iperf 服務器。

(這一步參考下面的 Arduino起草代碼請參考文章底部)

—–

並且有一些需要解釋。

請參考圖片及以下的文字。

[1] 設置 Arduino Ethernet Shield 的網絡配置。
 對於 iperf 的,使用 5001 端口,這是iperf的客戶端默認端口。
[2] 以太網是這樣開始的。這是和原始的以太網庫不同。
[3] 為了性能提高 SPI 時鐘(默認值:SPI_CLOCK_DIV4)
[4] 以太網盾有 2048 的緩衝區,所以我們可以一次讀到 2048 緩衝區。
 但如果我們分配 2048 緩衝, Arduino 的會出現異常,所以用1024的緩衝區。
 (如果我們可以使用2048緩衝,性能將會更好。)

IperfServer.ino 2 KB

第4步:設置計算機作為 Iperf 的客戶端和RUN

image

下一步,我們將設置一台 PC 作為客戶端模式。

—–

這是非常簡單的

只要打開 “命令提示符窗口”和 用 “cd”,進入 “iperf” 的安裝目錄。

 用 “dir”命令,這一步的第一畫面

—–

並鍵入“iperf -c 192.168.1.177 -w 300K -t 100 -i 10”,如圖輸入命令。

然後,你可以看到的 Arduino 和計算機之間網速的結果。

在我的情況下,網速是3.34Mbps。

第5步:最後:請參見演示視頻

現在,我們可以測量網速。

這裡是一個演示測試其網絡性能的視頻。