文/李爽 陳泉根
現(xiàn)在大規(guī)??刂蒲b置中系統(tǒng)的個數(shù)和復(fù)雜度遠(yuǎn)超以前,以神光裝置為例,該裝置由主放大系統(tǒng)、靶場系統(tǒng)、組合式同軸雙程片狀主放大器、三倍頻激光在線遠(yuǎn)場自準(zhǔn)值檢測系統(tǒng)、基頻三倍頻嚴(yán)格同軸高精度ICF靶場模擬系統(tǒng)、組合式空間濾波器等子系統(tǒng)組成,控制節(jié)點多達(dá)幾十萬個,控制對象如I/O、電機、CCD、各類數(shù)據(jù)采集裝置、傳感器等種類繁多。傳統(tǒng)的現(xiàn)場總線技術(shù)例如CAN總線已不能滿足大型控制裝置的通信需求,CAN總線曾是傳統(tǒng)現(xiàn)場總線中市場份額占比最大的一種總線技術(shù),憑借其成本低、開發(fā)周期短、可靠性高等特點廣受工控界的青睞。但其最大1Mb/s的傳輸速率、理論掛載節(jié)點最多256個等性能瓶頸,已無法支撐大型控制裝置的控制需求。因此,引入一種新的總線技術(shù)勢在必行。
EtherCAT是德國倍福公司推出的實時以太網(wǎng)技術(shù),它基于標(biāo)準(zhǔn)以太網(wǎng)技術(shù),具有有效數(shù)據(jù)率高、傳輸速率快、實時性好、低成本、可擴展性好等特點,在現(xiàn)代復(fù)雜控制系統(tǒng)中已有了較廣泛的應(yīng)用。
大型裝置的控制系統(tǒng)主要有以下幾個特點:
比如神光裝置就有6個子系統(tǒng),其三倍頻激光在線遠(yuǎn)場自準(zhǔn)值檢測子系統(tǒng)就需要控制上萬個節(jié)點和數(shù)千臺伺服電機,控制任務(wù)繁重,通訊數(shù)據(jù)量大。
大型控制裝置動輒占有數(shù)個足球場的面積,其子系統(tǒng)或子模塊一般也需要布置在數(shù)百平米大小的廠房中,系統(tǒng)之間、設(shè)備之間通信距離遠(yuǎn),并且通信鏈路需保持穩(wěn)定。
例如神光裝置的光路準(zhǔn)值校準(zhǔn)系統(tǒng)有大量的數(shù)據(jù)采集類傳感器和伺服電機需要實時的收發(fā)數(shù)據(jù)或指令,響應(yīng)時間需要達(dá)到毫秒或微秒級。
大型控制裝置下屬的控制設(shè)備種類繁多,而一些設(shè)備只支持如CAN、Profibus、Modbus等一種或幾種協(xié)議,這就增加了開發(fā)工作量,并且給設(shè)備間接口的統(tǒng)一和信息的整合帶來了困難。
表1:EtherCAT對比傳統(tǒng)現(xiàn)場總線
表2:EtherCAT微型網(wǎng)絡(luò)測試條件及結(jié)果
圖1:EtherCAT與其他工業(yè)以太網(wǎng)在40個軸、50個I/O從站、總線長500米時的數(shù)據(jù)刷新周期
圖2:多網(wǎng)段EtherCAT圖
考慮到大型控制裝置的系統(tǒng)特點,本文設(shè)計將工業(yè)以太網(wǎng)EtherCAT引入到控制裝置中取代傳統(tǒng)的現(xiàn)場總線。
EtherCAT是一種開放的實時以太網(wǎng)通信協(xié)議,基于標(biāo)準(zhǔn)的以太網(wǎng)通信協(xié)議,按以太網(wǎng)的幀結(jié)構(gòu)進(jìn)行傳輸,具有傳輸速率快、數(shù)據(jù)量大、實時性好等特點,能在微秒級時間內(nèi)處理上萬個I/O節(jié)點數(shù)據(jù)刷新。從站使用專門的硬件芯片對數(shù)據(jù)幀進(jìn)行解析,整個過程達(dá)到了納秒級的時間延遲。這些特性使得EtherCAT無論是面對傳統(tǒng)現(xiàn)場總線還是其他類型的工業(yè)以太網(wǎng)都具有明顯優(yōu)勢。如表1和圖1所示。
針對大型控制裝置控制規(guī)模大、通信距離遠(yuǎn)、實時性要求高的特點,可以將其子系統(tǒng)或子模塊的設(shè)備看作一個EtherCAT網(wǎng)段,該網(wǎng)段內(nèi)的設(shè)備根據(jù)現(xiàn)場條件來以星型、樹型、菊花鏈型等拓?fù)浣Y(jié)構(gòu)進(jìn)行布局,使得設(shè)備在現(xiàn)場有限的空間內(nèi)進(jìn)行高效的部署,對實時性要求不高,通信距離在100m以內(nèi)的子系統(tǒng),選取10Base-TX的銅線以10Mb/s的速率進(jìn)行數(shù)據(jù)傳輸,對于要求在微秒響應(yīng)級、通信距離大于100m的子系統(tǒng)選取100Base-FX多?;騿文5墓饫w線進(jìn)行數(shù)據(jù)傳輸,在節(jié)約成本的同時,又解決了系統(tǒng)傳輸距離和實時性的問題。一個EtherCAT網(wǎng)絡(luò)可以掛載最多65535個設(shè)備,各個EtherCAT網(wǎng)段通過以太網(wǎng)交換機技術(shù)與主站相連,一個MAC地址對應(yīng)一個EtherCAT網(wǎng)段,如圖2所示,對于需傳輸較大數(shù)據(jù)量的網(wǎng)段設(shè)備,可以將數(shù)據(jù)拆分后多次傳輸,由此可以解決系統(tǒng)規(guī)模大、控制節(jié)點多、數(shù)據(jù)傳輸量大的難點。
每個從站使用EtherCAT專門的從站處理芯片,如ET1100芯片對EtherCAT幀進(jìn)行解析,根據(jù)從站實際控制的對象,配置ET1100以I/O、SPI、8位、16位同步或異步模式和開關(guān)量、微控制器或其他設(shè)備進(jìn)行應(yīng)用層數(shù)據(jù)的交互,如圖3所示。由此就消除了一些設(shè)備對于特定協(xié)議的依賴,統(tǒng)一了設(shè)備之間的接口、方便了設(shè)備的維護(hù),避免了多種現(xiàn)場總線、通信協(xié)議并存的現(xiàn)象,打破了由于不同設(shè)備支持的協(xié)議不同使得各設(shè)備間信息難以互聯(lián)互通的自動化“孤島”局面,方便了信息的整合傳送。
每個控制節(jié)點從站擬采用STM32F7和ET1100芯片的組合,STM32F7是基于Cortex-M7內(nèi)核的一款高性能微處理器,具有大容量SRAM、高達(dá)216MHz的時鐘頻率、六級超標(biāo)量流水線處理任務(wù)和CAN、ADC、SPI、USB、UART、FMC等豐富的外設(shè)接口。其中FMC(FixledMemory Map,可變存儲控制器)功能可以讓STM32F7以串行或并行總線的方式將ET1100當(dāng)作一塊SRAM,直接訪問其內(nèi)部的寄存器和數(shù)據(jù)存儲區(qū)域。如圖4所示。
所有的控制任務(wù)根據(jù)CANOPEN行規(guī)封裝成為一個對象字典,字典中的每一個成員代表了一個控制任務(wù)或者控制對象,每一個對象中包含數(shù)個變量,例如需要訪問控制的狀態(tài)位、控制指令等信息。同樣的在STM32微控制器中定義和控制對象相同結(jié)構(gòu)的結(jié)構(gòu)體指針,使指針指向控制對象的地址,利用指針直接訪問內(nèi)存的特性使得結(jié)構(gòu)體指針中的成員變量和控制對象中的成員變量一一對應(yīng),如圖5所示,以最高效便捷的方式完成控制任務(wù)的傳輸,完成控制目的。
本課題搭建了一個由TwinCAT軟件、ET1100從站芯片、STM32F7微控制處理器、伺服電機組成的“一主四從站”微型網(wǎng)絡(luò)測試平臺,用來模擬大型控制裝置中的局部電機控制部分,主要用于驗證EtherCAT的通信速率、實時性、可靠性。
測試平臺的測試條件及結(jié)果如表2所示。
在4個從站,每個從站處理100個字節(jié)數(shù)據(jù)量的條件下,整個網(wǎng)絡(luò)的數(shù)據(jù)刷新周期可以達(dá)到80us,數(shù)據(jù)幀在ET1100中的解析延時為297~305ns,在整個測試過程中未發(fā)生丟包現(xiàn)象。結(jié)果表明EtherCAT具有極好的實時性和可靠性。
國際自動化廠商巨頭ABB公司也對EtherCAT進(jìn)行過多種條件下的測試,具體數(shù)據(jù)見文獻(xiàn)8,測試結(jié)果也有力支撐了EtherCAT技術(shù)的優(yōu)異性能。
本文通過分析大規(guī)??刂蒲b置的特點、難點及傳統(tǒng)現(xiàn)場總線在面對此類裝置時的技術(shù)困境,提出了引入實時以太網(wǎng)EtherCAT的解決方案,論證了EtherCAT憑借其實時性好、通信距離遠(yuǎn)、傳輸數(shù)據(jù)量大、可擴展性好等特點可以滿足大規(guī)??刂蒲b置的控制需求,并搭建了測試平臺對EtherCAT進(jìn)行驗證。結(jié)論表明,EtherCAT憑借其技術(shù)特點,有能力成為大型控制裝置中的新一代主流現(xiàn)場總線。
圖3:EtherCAT通信接口設(shè)計
圖4:從站接口設(shè)計
圖5:控制對象封裝設(shè)計