在使用EtherCAT技術(shù)作為現(xiàn)場總線時,性能往往起著決定性的作用。但是,性能的真正含義是什么呢?在大多數(shù)情況下,性能等同于速度。在EtherCAT網(wǎng)絡中,這通常意味著需要快速的周期時間,大約1kHz或更快,以實現(xiàn)快速的控制周期。然而,高性能也可能意味著處理大量數(shù)據(jù),或者從一個控制器上操作多個設備。
在EtherCAT網(wǎng)絡中,這些性能考慮因素都歸結(jié)為EtherCAT主站。因此,EtherCAT主站軟件應滿足以下所有要求:
- 支持較短的周期時間,實現(xiàn)快速的設備更新率
- 支持處理大量循環(huán)過程數(shù)據(jù)
- 能夠處理許多EtherCAT設備
此外,所有這些都必須在控制器上以盡可能低的負載來實現(xiàn)。對于高性能的EtherCAT網(wǎng)絡部署,不應在功能、錯誤檢查、診斷選項和出現(xiàn)問題時的可靠性方面妥協(xié)?;诖耍疚膶⑻岢鲆环N測量方法并給出結(jié)果,便于您對EC-Master協(xié)議棧的性能有更多了解。
測量方法
為了支持控制硬件的選擇,或者為了能夠?qū)ΜF(xiàn)有硬件在EtherCAT方面的可能性做出聲明,可以利用現(xiàn)有的性能值進行新的測量。在應用的關鍵循環(huán)處理區(qū)域中,正確且精確地測量EtherCAT協(xié)議棧建立的主站軟件運行的所有處理路徑的計算時間消耗,這一點非常重要。近年來,盟通科技合作伙伴acontis在具有不同操作系統(tǒng)和相同參考網(wǎng)絡配置的不同系統(tǒng)上進行了大量的性能測量。此數(shù)據(jù)可用于粗略評估給定處理器上可實現(xiàn)的性能。
然而,最可靠的值當然是通過在運行所需操作系統(tǒng)和實際所需網(wǎng)絡配置的真實硬件上進行實時測量而獲得的。這些測量不需要任何特殊的專業(yè)知識或額外的設備,并且可以通過EC-Master中包含的示例應用程序進而非常容易地執(zhí)行:EcMasterDemo和EcMasterDemoDc。在這些演示應用程序中,各個主作業(yè)函數(shù)的執(zhí)行時間(最小值、最大值和平均值)以及周期時間被計算并保存到日志文件中(或打印到控制臺)。
示例應用程序中的內(nèi)置測量函數(shù)
在acontis的EtherCAT主站軟件協(xié)議棧中,應用程序與循環(huán)部分的主站集成是通過同步調(diào)用某些功能來實現(xiàn)的,每個函數(shù)都完成一項特定的任務。這些函數(shù)是從高優(yōu)先級任務中調(diào)用的,用于控制網(wǎng)絡計時。在許多情況下,高優(yōu)先級任務已存在于客戶應用程序中,因此可以簡單地從此現(xiàn)有任務中調(diào)用函數(shù)。這些作業(yè)是在應用程序的上下文中調(diào)用的,因此應用程序不會與其他任務進行交互。因此,通過測量這些函數(shù)的計算時間消耗,可以非常簡單準確地確定主堆棧的計算時間消耗。
功能包括:

在一個周期的開始,EC-Master的示例Demo首先會更新新接收的數(shù)據(jù)(輸入)。這是通過調(diào)用Process Inputs作業(yè)函數(shù)并評估先前接收的EtherCAT幀來實現(xiàn)的。接下來,應用程序獲取這些新接收的數(shù)據(jù),并計算出應發(fā)送到網(wǎng)絡的數(shù)據(jù)(輸出)。當調(diào)用Write Outputs作業(yè)函數(shù)時,這些新的輸出數(shù)據(jù)便被發(fā)送出去。借助Direct Memory Access (DMA),幀從內(nèi)存?zhèn)鬏數(shù)?a target="_blank">以太網(wǎng)控制器并通過物理網(wǎng)絡發(fā)送,整個過程無需加載CPU。幀會經(jīng)過網(wǎng)絡上的所有EtherCAT設備,并在返回到主站時自動接收,無需中斷。最后,調(diào)用"Master Administration"作業(yè)函數(shù),執(zhí)行主狀態(tài)機和每個單獨從設備上的狀態(tài)機。
在初始啟動過程中,所有從設備必須通過一系列連續(xù)步驟從INIT狀態(tài)轉(zhuǎn)移到OPERATIONAL狀態(tài)。在常規(guī)操作中,需要狀態(tài)機來處理非循環(huán)通信,例如通過郵箱協(xié)議CAN應用協(xié)議在EtherCAT (CoE)上下載參數(shù)。這些非循環(huán)郵箱通信需要另一個幀,其中包含針對從站的讀取和寫入命令。這個非循環(huán)幀是使用“發(fā)送非循環(huán)數(shù)據(jù)報/命令”作業(yè)函數(shù)發(fā)送的。主站能夠限制這種非循環(huán)數(shù)據(jù)流量的方式非常重要,否則網(wǎng)絡或CPU可能會過載。

使用示例應用程序進行性能測量
EC-Master協(xié)議棧在隨附的示例應用程序中具有內(nèi)置的性能測量功能??梢允褂脦в惺纠龖贸绦颍èCperf) 的命令行參數(shù)來調(diào)用此性能度量計算。啟用后,示例應用程序?qū)y量在應用程序的循環(huán)部分內(nèi)調(diào)用的作業(yè)函數(shù)的執(zhí)行時間,以及循環(huán)任務本身消耗的總計算時間。示例應用程序使用包含的API ecatPerfMeasStart() 和ecatPerfMeasEnd() 進行高精度測量時間計算。
測量結(jié)果
以下測量結(jié)果是在具有不同循環(huán)時間的不同控制器上使用16、32和64個從站來執(zhí)行測試的。EtherCAT主站(EC-Master)在CPU上的負載百分比是通過將工作函數(shù)的累積運行時間與總周期時間的比率來計算的。
Texas Instruments AM3359,ARM Cortex-A8,32位,600 MHz

NXP i.MX 8,ARM Cortex-A72,64位,1000 Mhz

Intel Atom, D510, 64-Bit, 1600MHz

-
測試
+關注
關注
8文章
5892瀏覽量
130242 -
主站
+關注
關注
0文章
50瀏覽量
8113 -
ethercat
+關注
關注
19文章
1267瀏覽量
41265 -
EtherCAT主站
+關注
關注
2文章
24瀏覽量
4412
發(fā)布評論請先 登錄
使用協(xié)議棧實現(xiàn)Modbus RTU主站應用

基于全志T507-H的Igh EtherCAT主站案例分享
EtherCAT主站代碼和方案-含ZedBoard測試數(shù)據(jù)對比
基于Sitara AM57x千兆位以太網(wǎng)EtherCAT主接口解決方案
基于TI Sitara處理器的EtherCAT主站開發(fā)案例
開源!ZYNQ IgH EtherCAT主站方案分享
AX58400 EtherCAT轉(zhuǎn)IO-Link網(wǎng)關解決方案功能演示
EtherCAT主站協(xié)議棧的資料介紹

KPA EtherCAT主站軟件如何做移植測試
使用協(xié)議棧實現(xiàn)Modbus ASCII主站應用

EtherCAT主站方案之橫向比較

亞信電子于IAS 2024展出最新IO-Link主站&設備軟件協(xié)議棧解決方案

評論