文 輝
(桂林電子科技大學信息與通信學院,廣西 桂林 541004)
基于EtherCAT的從站設計
文 輝
(桂林電子科技大學信息與通信學院,廣西 桂林 541004)
現場總線已經成為自動化控制技術重要組成部分,通過大量的實踐實驗與測試,如今已經獲得廣泛的應用。EtherCAT具有良好的實時能力,適應小數據量通信,并且價格經濟,在工業控制上得到廣泛的應用。但由于EtherCAT從站設計必須使用專門的芯片,導致從站的硬件設計復雜、調試困難、成本增加。文章采用AM3358 Cortex A8 處理器外加以太網物理層收發器(PHY)的方案,由于AM3358片內集成工業用通信子系統 (PRU-ICSS)可以實現EtherCAT協議,因此只要外加PHY就可以成為EtherCAT從站。
EtherCAT;AM3358;從站
現場總線已成為自動化技術的集成組件,通過大量的實踐試驗和測試,如今已獲得廣泛應用。正是由于現場總線技術的普及,才使基于PC的控制系統得以廣泛應用。然而,雖然控制器CPU的性能(尤其是IPC的性能)發展迅猛,但傳統的現場總線系統正日趨成為控制系統性能發展的“瓶頸”。急需技術革新的另一個因素則是由于傳統的解決方案并不十分理想。傳統的方案是,按層劃分的控制體系通常都由幾個輔助系統所組成(周期系統):即實際控制任務、現場總線系統、I/O系統中的本地擴展總線或外圍設備的簡單本地固件周期。正常情況下,系統響應時間是控制器周期時間的3-5倍。在現場總線系統之上的層面(即網絡控制器)中,以太網往往在某種程度上代表著技術發展的水平。該方面目前較新的技術是驅動或I/O級的應用,即過去普遍采 用現場總線系統的這些領域。這些應用類型要求系統具備良好的實時能力、適應小數據量通訊,并且價格經濟。EtherCAT可以滿足這些需求,并且還可以在 I/O級實現因特網技術 。
EtherCAT作為實時工業以太網中的佼佼者,它具有高速和高數據有效的特點,支持多種物理拓撲結構。其主站使用標準的以太網通信控制器,從站使用專門的從站控制芯片。正因為EtherCAT總線具備眾多優點,在2014年10月,EtherCAT成為中國推薦性國家標準。本文提出了一種新的EtherCAT從站實現方案。
倍福基于以太網現場總線系統的EtherCAT(Ethernet for Control Automation Technology)技術具有性能優異、 拓撲結構靈活和系統配置簡單等特點。
EtherCAT突破了傳統現場總線系統的限制,為現場總線技術領域樹立了新的性能標準:30 μs 內可以更新1000個I/O,利用以太網和因特網技術實現垂直優化集成,網絡容量幾乎無限。使用 EtherCAT 后,可以用簡單的線型拓撲結構替代昂貴的星型以太網拓撲結構,無需昂貴的基礎組件。
EtherCAT 還可以使用傳統的交換機連接方式,以集成其它的以太網設備。其它的實時以太網方案需要專用的主站硬件或掃描卡,而EtherCAT只需要價格低廉的標準以太網卡便可實現。
EtherCAT 擁有杰出的通訊性能,接線非常簡單,并對其它協議開放。傳統的現場總線系統已達到了極限,而EtherCAT則突破建立了新的技術標準——30μs內可以更新1000個I/O數據,可選擇雙絞線或光纖,并利用以太網和因特網技術實現垂直優化集成。使用EtherCAT,可以用簡單的線型拓撲結構替代昂貴的星型以太網拓撲結構,無需昂貴的基礎組件。EtherCAT還可以使用傳統的交換機連接方式,以集成其它的以太網設備。其它的實時以太網方案需要與控制器進行特殊連接,而EtherCAT只需要價格低廉的標準以太網卡(NIC)便可實現。
EtherCAT擁有多種機制,支持主站到從站、從站到從站以及主站到主站之間的通訊。

圖1 總線系統
它實現了安全功能,采用技術可行且經濟實用的 方法,使以太網技術可以向下延伸至I/O級。EtherCAT功能優越,可以完全兼容以太網,可將因特網技術嵌入到簡單設備中,并最大化地利用了以太網所 提供的巨大帶寬,是一種實時性能優越且成本低廉的網絡技術。
兼顧到從站的成本和性能,本系統采用簡單的“微處理器+以太網物理層收發器”的方案。其中微處理器和以太網物理層收發器都必須支持EtherCAT總線協議。德州儀器(Texas Instruments)的AM335X微處理器適用于工業自動化設計,提供可編程實時單元(Programmable Real-time Unit)片上接口,可以實現工業通信,支持EtherCAT、Ethernet/IP、PROFIBUS、PROFINET、POWERLINK以及SERCOS等常見協議。正是AM335x獨特的PRU+ARM核的架構,使得主需要一片AM335x不用在外部添加ASIC或者FPAG就可以實現從站,大大的節省了材料成本。此外AM335x微處理器還具有豐富的外部接口(CAN、ADC、USB等),支持快速網絡連接和快速數據吞吐,還能連接傳感器、電機控制。考慮到AM335x具備的眾多優點選擇它作為本從站的微控制器。物理層收發器則選擇TLK110,給芯片為工業級物理層收發器,具有低功耗,低確定性延遲支持 IEEE 1588 執行,可編程快速鏈路下行模式,反應時間 < 10μs等特性,滿足本系統的設計要就。本系統總體方案如圖2所示,

圖2 系統總體方案
AM3358為 ARM Cortex-A8 32-位RISC微控制器,最高工作頻率可以達到1GHz,擁有豐富的接口(6個UART,2個CAN,2個以太網接口,3個I2C等),此外還集成了可編程實時單元和工業用通信子系統 (PRU-ICSS)單元。
由于PRU-ICSS與ARM核是獨立存在的,從而使得PRU-ICSS實現了針對更大效率和靈活性的獨立運行和時鐘控制。 PRU-ICSS 由兩個 32 RISC 處理器核(成為可編程實時單元,PRU)、數據存儲器、指令存儲器、中斷控制器、內部外設等組成。可以通過對 PRU 編程,再結合 PRU-ICSS 提供的引腳能夠實現可以實時性的工業接口。PRU-ICSS 能夠實現多種工業以太網主站或從站控制器:EtherCAT、PROFINET、EtherNet/IP、PROFIBUS、POWERLINK。
PRU-ICSS 中有兩個可編程實時單元(PRU),兩個 PRU 可以獨立的編程操作,也可以協同工作,同時可以與芯片上的ARM 核協同工作。PRUs 可以通過主接口訪問 AM3358上面的所有資源。AM3358 中的 ARM 處理器能夠訪問 PRU-ICSS 中的資源。每個 PRU 都有 8KB 的程序存儲區和 8KB 的數據存儲區。這些存儲空間能夠同時映射到 PRU0、PRU1和 ARM 尋址空間。正是因 AM3358 的這種特點,在進行軟件開發時,可以單獨編寫 PRU程序實現所需要的功能,編譯成 PRU 處理器可執行的二進制代碼,ARM 上電啟動時,將PRU 程序加載到 PRU0 或 PRU1 的指令存儲器中并啟動 PRU,此時PRU-ICSS 就可以實現所需要的功能了。
3.1 軟件總體框架
EtherCAT從站軟件主要分3各部分來實現,各部分的功能、接口如圖3所示。
(1)底層硬件驅動程序。主要使能PRU-ICSSS功能,配置工作模式,設置寄存器。此外驅動程序還要對SDRAM,SPI Flash,電源管理芯片,串口以及SD卡等硬件進行初始化操作。
(2)EtherCAT協議棧實現。EtherCAT協議棧主要提供
三部分功能:EtherCAT狀態機、郵箱通信(Mailbox Communication)和過程數據通信(Process Data Communication)。
(3)應用程序。應用程序主要維護系統要執行的任務處理,比如串口調試、I/O驅動控制、傳感器數據采集等任務。系統可以采用輪詢的方式調度,也可以采用CPU搶占的方式,通過設置中斷程序,保證了系統有比較好的實時性。

圖3 軟件框架
3.2 PRU-ICSS 編程
PRU-ICSS 其實有點像可編程邏輯器件,可以通過對PRU0 和 PRU1 編程讓 PRU 實現 ESC 中的數據幀處理單元、FMMU、SyncManager、分布式時鐘、錯誤檢測、主機接口等功能,并使用 PRUSS 中 12KB 的共享 RAM 來模擬 ESC 的寄存器。
TI公司在發布AM335x ICE開發套件的時候,提供了PRU EtherCAT固件(fireware)程序,如圖 4所示。能夠實現EtherCAT從站硬件功能。在ARM程序對ICE進行初始化的時候將固件程序下載到PRU0和PRU1的指令存儲器即可將PRU-ICSS變成 EtherCAT 控制器。加載好固件后,PRU-ICSS實現ESC。另外通過共享內存的方式,可以很方便的進行數據通信。

圖4 EtherCAT 固件程序示意圖
使用TwinCAT作為EtherCAT總線主站,并將EtherCAT網絡設置成OP狀態,啟動WireShark對網絡中的數據進行捕獲。
經過一段時間后,WireShark不活了網絡中所有的收發數據,如圖5所示。

圖5 EtherCAT數據幀
經過數據分析周期在10ms,考慮到PC系統并非實時系統而且硬件性能的原因,本EtherCAT從站方案達到最初設想的狀況,具有不錯的性能
本文詳細地闡述了一種低成本,高效率的EtherCat從站方案,經過初步測試達到不錯的性能。
[1] Texas Instruments ,EtherCAT on Sitara Processors, http:// www.ti.com.cn/cn/lit/wp/spry187d/spry187d.pdf
[2] EtherCAT Technology Group ,EtherCAT-以太網現場總線, http://www.ethercat.org.cn/cn/technology.html#total
[3] 任計羽.EtherCAT從站軟件的設計與實現[D].北京:中國科學院光電技術研究所,2014.
[4] 郇極,劉艷強.工業以太網現場總線 EtherCAT 驅動程序設計及應用[M].北京:北京航空航天大學出版社,2010.
Based Design EtherCAT Slave
Fieldbus has become an important part of the automatic control technology, through a large number of practical experiments and testing, now widely applied. EtherCAT has good real-time capability to adapt to the small amount of data communications, and affordable, the industrial control has been widely used. However, due to EtherCAT Slave design must use a special chip, leading from the station complex hardware design, commissioning difficulties, increasing costs. In this paper, AM3358 Cortex A8 processor plus Ethernet physical layer transceiver (PHY) program, due to the integrated chip inside AM3358 Industrial communications subsystem (PRU-ICSS) EtherCAT protocol can be achieved, so long as the external PHY can become EtherCAT Slave ..
EtherCAT;AM3358;Slave
TP273
A
1008-1151(2015)03-0016-03
2015-02-12
桂林市科技開發(No.20140103-5)。
文輝(1987-),男,桂林電子科技大學信息與通信學院碩士研究生,研究方向為嵌入式、自動化。