EtherCAT作為高效的現(xiàn)場總線網(wǎng)絡技術,其實時性能需依賴高實時操作系統(tǒng)才能充分展現(xiàn)。本文以ZMC600E為例,測試系統(tǒng)實時性并分析操作系統(tǒng)抖動數(shù)據(jù)。
ZMC600E EtherCAT主站控制器 是廣州致遠電子股份有限公司開發(fā)的新一代智能總線型控制器,其采用多核異構應用處理器為核心,其內(nèi)核包括2個64位的Arm?Cortex?-A53核,主頻1.0GHz;4個Cortex?-R5F內(nèi)核,主頻800MHz。同時板載1GB DDR4、4GB eMMC以及32KB FRAM。
ZMC600E EtherCAT主站控制器應用于機器運動時,為了確保精確的控制和協(xié)調(diào)動作,保證機器的運行穩(wěn)定性和精度,ZLG致遠電子在開發(fā)過程中,根據(jù)多年深耕嵌入式領域的積累,對操作系統(tǒng)做了深度優(yōu)化,提供了穩(wěn)定可靠的RT補丁進行Linux系統(tǒng)的適配,并反復測試優(yōu)化,得到了較好的系統(tǒng)抖動參數(shù)。下面使用一個用于測試評估操作系統(tǒng)實時性能的工具“cyclictest”來實測。
測試工具介紹
“cyclictest”的測試原理,是基于周期性任務的調(diào)度和執(zhí)行,去創(chuàng)建一個或多個周期性任務,并通過設置任務的優(yōu)先級和調(diào)度策略來模擬實時任務的運行。這些任務會在固定的時間間隔內(nèi)不斷運行,并記錄每次運行的開始和結束時間。通過這些時間數(shù)據(jù)進行分析,便可得到任務的響應時間和延遲情況。
測試步驟
1. 準備好1臺測試電腦、1臺ZMC600E控制器、1臺可輸出24V的穩(wěn)壓電源、1條網(wǎng)線。
2. 穩(wěn)壓電源設置為24V/1A,網(wǎng)線連接ZMC600E控制器的NET1和測試電腦的網(wǎng)口。打開電源,給ZMC600E控制器供電。
3. 測試電腦IP設置為192.168.1.168,并通過ping包工具確認可以ping通ZMC600E的NET1的IP地址:192.168.1.136。
4. 測試電腦打開串口調(diào)試工具“Putty”,在“Host Name”欄填入工控板的IP地址”192.168.1.136”,Port欄輸入“22”,選中“SSH”協(xié)議,如圖4所示。并點擊“Open”連接到ZMC600E控制器。
5. 輸入用戶名“root”和密碼“root”,登陸后,輸入“cd /usr/bin”進入bin目錄,再輸入“cyclictest -p 98 -t 1”命令進行測試。
6. 保持測試環(huán)境在連續(xù)大概15個小時的系統(tǒng)抖動性測試中,得到輸出結果:最大抖動為98us,平均抖動為15us。
測試結果分析
按照同樣的方法,分別測試?ZMC300E 和 ZMC900E EtherCAT主站控制器的系統(tǒng)抖動數(shù)據(jù),得到以下表格。
型號 | ZMC300E | ZMC600E | ZMC900E |
平均抖動 | 18us | 15us | 3us |
最大抖動 | 67us | 98us | 11us |
通過測試步驟及測試結果可知,不同的產(chǎn)品平臺,系統(tǒng)的實時性能不一樣。其中ZMC300E是通過Xenomai補丁實現(xiàn)系統(tǒng)的實時性,ZMC600E和ZMC900E是通過RT補丁實現(xiàn)系統(tǒng)的實時性。為了確保精確的機器控制和協(xié)調(diào)動作,保證機器的運行穩(wěn)定性和精度,需要盡可能減小EtherCAT主站操作系統(tǒng)的抖動,才可以充分發(fā)揮EtherCAT的先進網(wǎng)絡性能。
ZMC300E/ZMC600E/ZMC900E選型表如下。