張韜,劉康,廖映華
(四川輕化工大學機械工程學院,四川宜賓 644000)
柔性制造系統(Flexible Manufacturing System,FMS)是一種高自動、高復雜、集成化的系統,通過工程技術、自動化技術、計算機技術實現了生產過程的高度自動化與高度制造柔性。為實現柔性制造,實時采集數據至關重要。這些數據包括底層設備的生產數據、品質檢測數據、運行數據、加工過程數據、設備狀況數據、I/O信號等。
對于實時數據采集,國內外已經有很多研究。1997年,斯坦福大學和麻省理工大學合作研發了下一代遠程監控診斷示范系統,這項工作獲得了多個行業的支持[1]。1998年,麻省理工大學研發了Web-Lab項目,操作人員可以通過瀏覽器遠程控制實驗室的儀器進行實驗[2]。美國伊利諾伊大學研發的Nmrsocp系統,可通過接入互聯網進行測量與控制[3]。國內山西大同礦務局研發了煤礦機電設備監控系統,該系統基于以太網實時采集數據,克服了復雜的工業環境,實時監控整個礦區設備的運行狀況[4]。張志勇等[5]提出一種基于B/S架構的激光雷達數據采集遠程監控系統,實時顯示采集波形數據。然而,隨著智能制造的發展,對數據采集技術的實時性以及高效性的要求越來越高。傳統的現場總線有著成本高、容量小、傳輸效率低、各種標準難以兼容的問題[6],無法滿足FMS實時數據采集傳輸效率高、響應快、傳輸速度快的需求。傳統以太網數據采集、傳輸周期遠低于工業控制系統,無法保證數據準確而實時的刷新,從而影響整個工業控制系統[7];而實時以太網技術有著實時、快速、抗干擾能力強和兼容性好等優點,在工業領域上備受歡迎[8]。
EtherCAT是一種廣泛應用的實時以太網協議,具有延遲低、通信周期短、配置靈活的特點[9]。它是相對其他以太網在數據鏈層修改后的實時以太網,因此兼容多種以太網協議。與其他實時以太網不同,EtherCAT在發送數據時需要先將數據包解碼,然后再復制給其他設備,通過軟硬件一起實現數據傳輸,將部分功能給硬件處理,通過映射方式與各個從站設備通信,提高了傳輸效率、傳輸速率等。本文作者將EtherCAT協議引入FMS數據采集中,以TwinCAT作為軟主站、FMS設備作為從站,對EtherCAT協議的實時數據采集技術進行分析測試。
FMS的應用越來越廣泛,它具有可復用性高、運行靈活、產品應變能力強的特點,主要分為3個部分:底層加工系統、物料傳送系統、計算機控制系統。底層加工系統一般由20臺以下能獨立工作的加工設備組成;物料傳送系統實現各個機床、存儲機構、轉運站等之間的物料傳送,可以由運輸帶、托板、無軌小車(AVG)、有軌小車(RVG)、機器人等單個設備或者多個設備組成;計算機控制系統實現FMS中各個設備協調運作,包括工藝規劃、設備管理、生產調度、系統管理、系統監控以及通信。為實現柔性制造,需要掌握系統各個部分的狀況,如:設備運行狀況、加工過程、工件信息、工藝過程等,因此需要收集大量的實時數據,包括加工過程數據、系統狀態數據、I/O信號、存儲狀態數據等,并且進行相應的采集與處理。FMS實時數據采集方式主要有以下幾種:PLC采集方式、RFID采集方式、觸摸屏采集方式、以太網采集方式。其中,以太網采集方式相對其他方式采集效率更高、涉及面更廣,但有一定缺陷,當工業以太網通信實時數據時,每個數據節點都會競爭數據發送優先權,只有當節點通道空閑時才會開始發送數據,否則只能等待,容易造成實時數據發送延遲。特別是當非實時數據和實時數據同時發送時,由于在數據節點處的競爭以及其他數據節點的碰撞,更容易造成實時數據發送受阻,出現更大的發送延遲。普通工業以太網沒有有效的措施處理節點競爭,從而導致數據延遲或者發送阻塞。因此,本文作者將EtherCAT技術引入FMS中進行實時數據通信。
影響EtherCAT實時性的關鍵是網絡通信的實時性和控制系統的實時性。網絡通信的實時性體現在通信協議的延遲上,控制系統的實時性體現在硬件條件和通信規模等方面。因此,在控制系統不變的情況下,綜合考慮生產成本,通過改變網絡通信提高實時性。EtherCAT為一種實時以太網協議,它在網絡通信上進行了更改,相比其他實時以太網修改了數據鏈路層,是一種主從站全雙工結構,不需要像其他實時以太網那樣在發送數據時需將數據包解碼后再復制給其他設備,它是通過軟硬件一起實現數據傳輸,將部分功能給硬件處理,通過映射方式與各個從站設備通信[10],使通信更穩定、效率更高。在一個通信周期內,主站發送以太網數據幀給各個從站,數據幀到達從站后,每個從站根據尋址從數據幀內提取相應的數據,并把它們反饋的數據寫入數據幀。當數據幀發送到最后一個從站后返回,并通過第一個從站返回至主站。這種方式大大縮短了數據處理時間,處理延遲僅為十幾納秒,并且能夠在一個周期內實現數據通信,同時改善了帶寬利用率,最大有效數據利用率達90%以上。運行原理如圖1所示。

圖1 EtherCAT運行原理
在數據傳輸過程中,EtherCAT利用以太網進行雙向傳輸,可以同時接收數據和發送數據,加快了傳輸效率。如圖1所示,每個從站有2個網口芯片:PHY0、PHY1,每個網口芯片分別對應RX和TX 2個數據傳輸通道,主站通過PHY1_TX通道傳輸數據幀給從站1的PHY0_RX通道,經從站1的從站控制器ESC處理后由從站1的PHY1_TX通道傳輸給下一個從站,當所有從站都接收到數據幀后,由最后1個從站的PHY1_TX通道返回數據幀給該從站的PHY1_RX通道,最終通過從站1的PHY0_TX通道返回給主站的PHY1_RX通道,實現1個數據幀的傳輸循環。
EtherCAT用以太網幀來進行數據傳輸,其結構由以太網幀頭、以太網數據和校驗碼組成。以太網幀頭主要由接收方和發送方的MAC地址和0×88A4類型的幀組成;以太網數據分為EtherCAT頭和EtherCAT數據,EtherCAT頭包括EtherCAT數據區長度和類型,EtherCAT數據主要是數據區子報文。以太網幀結構如圖2所示。

圖2 以太網幀結構
EtherCAT傳輸的數據主要在EtherCAT數據區中存儲,數據區中至少有1個子報文,每個子報文對應1個從站。每個子報文由子報文、數據和工作計算器(MKC)組成,子報文頭存儲從站的地址、數據長度、尋址和讀寫方式等,如果從站數量大于1個,只需要增加相應的子報文即可進行數據傳輸。工作計算器的初值為0,當主站發送數據幀時,從站每接收1個數據幀,工作計算器的值加1,然后主站通過對比工作計算器的預期值與實際接收到的值來判斷指令是否被執行。
為保證柔性制造,需要各個設備之間具有高協調性,能夠根據加工工藝快速響應,不僅體現在生產設備上,還體現在控制設備上。當上位機發送指令時,FMS底層設備識別指令的快慢程度或者控制層發送指令的延遲都會直接影響加工精度,嚴重時會導致加工失敗。例如,要控制一部分加工設備運作時,當對這部分設備發送指令時,一部分設備識別到了指令,一部分設備識別指令延遲,一部分設備沒有識別到指令,這就會導致加工紊亂。因此,對于降低指令識別延遲、提高設備響應精度非常重要。
綜上所述,此次研究采用EtherCAT分布時鐘的方式來降低FMS實時數據采集響應延遲。EtherCAT以太網在上電時會對主從站的設備時鐘進行初始化,在FMS中每個設備啟動時會產生1個本地時鐘,由于啟動時間不一致,本地時鐘也不一致,如果此時直接發送指令,就會導致有些設備延遲運行,因此要進行時鐘同步。將與主站連接的第1個從站設備時鐘作為參考時鐘,其他設備時鐘與參考時鐘作比較,會產生一個偏移值,從站控制器(ESC)會對該值進行處理,經過校正后產生本地系統時鐘;當所有設備的本地系統時鐘與參考時鐘一致時,就達到了時鐘同步的目的,這時即可對設備發送指令。相比于完全同步的通信,分布式同步時鐘具有更好的容錯性,并且同步方法基于硬件校正,具有很高的準確性,同步信號抖動遠小于1 μs。
EtherCAT與其他現場總線不同,它無需專用的通信板卡,只需在PC機上安裝具有DMA功能的普通網卡即可。EtherCAT作為主從站結構,通過主站對從站設備發送指令,將各種數據信息在從站中進行處理以反饋主站的指令,從而實現數據的傳遞。此次研究以BECKHOFF專用軟件TwinCAT作為EtherCAT主站,相關硬件模塊作為從站,進行FMS中EtherCAT主從站的建立。模塊上面提供設備連接接口,將FMS中設備通過網線與對應從站模板連接,從而將設備嵌入EtherCAT以太網,實現主從站的建立。
數據采集架構如圖3所示,整個結構分為兩部分:一部分是主站,以TwinCAT軟件作為軟主站,位于PC機上;另一部分是從站,由現場模塊構成。主站負責導入并解析XML文件、創建從站設備、構建初始化命令幀以及進行通信初始化并引導從站完成狀態機轉換等功能。從站主要處理生產設備在生產過程中產生的過程數據、狀態數據以及軸運行數據。

圖3 數據采集架構
TwinCAT主要由3部分組成:(1)TwinCAT Manager用于主站與從站通信的相關配置;(2)TwinCAT PLC用于程序編寫,實現主站對從站設備的控制;(3)TwinCAT HMI用于對通信設備的監控。
EtherCAT作為現場總線,和其他設備之間通信只需要一根網線即可,傳輸效率高、接線簡單。硬件主要包括AX5000驅動器、EK1100總線耦合器、CX1100電源模塊、CX1090型號的CPU以及輸入輸出模塊。現場總線耦合器作為網口模塊,依靠該模塊實現和其他設備之間的通信。電源模塊給總線耦合器、CPU以及輸入輸出模塊供電。輸入輸出模塊用于連接現場設備信號以及與軟件之間通信。模塊連接原理如圖4所示。

圖4 從站模塊連接示意
如圖4所示,信號采集模塊作為FMS各個設備信號監控的重要部分,只要各個設備的接口與相應模塊連接,就能將對應設備產生的電流信號經過從站控制器處理轉換成模擬信號,最后經A/D轉換器轉換為數字信號,從而實現設備狀態監控。如果FMS中增加了設備數量,只需要增加相應的擴展模塊以及采集模塊數量就能實時監控增加的設備。
2.3.1 主站系統架構
軟PLC基于PC機,在Windows平臺上建立,在某方面與硬PLC具有相似的特點,如功能、可靠性、速度、故障檢測等。傳統PLC的計算、存儲、控制以及編程等功能都是在軟PLC上通過軟件TwinCAT實現的。軟PLC作為EtherCAT的軟件通信部分,綜合了傳統PLC和計算機的開關量控制、模擬量控制、數字量控制、數據處理、PID調節等功能。通過現場硬件模塊完成數據的采集和信號的輸出。軟PLC系統主要由開發環境和運行環境兩部分組成[11],開發環境又分為配置環境、編程環境和調試環境,同時可以提供接口供外部設備訪問,通信協議為ADS協議。為實現對設備層的監控,此次研究將NC軸、PLC軸、物理軸三大虛擬軸嵌入到配置環境中。物理軸用于與設備映射,實現對設備的控制;PLC軸用于與編程環境中的變量映射;NC軸用于控制電機軸。運行環境主要是外接設備,一般為用于調試的PLC虛擬機或者是用于實際運行的倍福控制器,只需要將其IP地址與主站IP地址設置在統一網端下就能實現主站與從站的數據交互。軟PLC系統架構如圖5所示,其中配置環境中各個部分的關系如圖6所示。

圖5 PLC系統架構

圖6 三軸通信流程
此次研究將三大虛擬軸(PLC軸、NC軸、物理軸)嵌入TwinCAT中,建立主站與從站設備的鏈接,如:電機軸、機床、運輸設備等。PLC軸與PLC編程界面中的實際變量對應連接,實現程序控制。其中,最重要的是需要在程序中創立1個連接模塊——AXIS_REF功能塊,該功能塊在TwinCAT自定義的靜態庫TcMc2.lib中有2個接口變量:NC_TO_PLC和PLC_TO_NC。NC軸與PLC軸相互連接,連接完成后就可以用PLC程序控制NC軸并且可以在NC軸上的Online界面監控軸的狀態。保證控制器和PC機在同一個IP網端下就可以通過scan功能將硬件模塊映射到TwinCAT軟件上的I/O Devices和NC軸中,實現NC軸與實際硬件(物理軸)連接。由于各個電機的驅動器以及設備連接在EtherCAT以太網中,通過以上連接能夠實現主站對從站設備的控制。
2.3.2 主站與從站通信流程
TwinCAT軟件作為主站與從站設備通信時,需要先對軟件作相應的配置,將主站與從站設備接入統一的以太網下,當主站與從站連接成功后才能進行下一步操作,從站設備需要連接主站控制器作為從站指令接收媒介;然后,在I/O設備上添加從站模塊并按照從站模塊的說明書在軟件上進行配置,接著通過TwinCAT PLC 進行邏輯程序的編寫,再將程序添加進PLC軸;最后,進行人機界面的設計,實現主站與從站的通信,通信流程如圖7所示。以OPC從站為例,TwinCAT主站與OPC從站通信的流程如圖8所示。

圖7 實時過程數據通信流程

圖8 TwinCAT與OPC UA設備通信流程
此次實驗以PC機搭載BECKHOFF的TwinCAT軟件作為EtherCAT主站,OPC UA設備作為從站進行數據采集測試。
TwinCAT PLC中的變量需要添加相應屬性才能實現數據采集,如:變量{attribute ′OPC.UA.DA′ := ′1′} 支持通過 OPC UA 進行讀寫;變量{attribute ′OPC.UA.DA.Access′ := ′x′} 讀寫操作取決于x為1是只讀、為2是只寫;變量{attribute ′OPC.UA.HA′ :=′1′} 支持通過 OPC UA 進行歷史數據讀寫。
實驗平臺建立在以Sample client作為OPC UA測試的從站模擬器,利用該模擬器實現對TwinCAT PLC中變量的讀寫。
首先,設置好OPC UA從站的相關IP地址和端口號以及對應主站的IP地址和端口號后,對主站的值進行測試,結果如圖9所示 。

圖9 TwinCAT主站通信結果
由圖9可以看到:當主站與從站連接成功后,PLC中定義的變量都可在Sample client中顯示,當將從站中一個隨機變量value1的值設置為123后,PLC中的相應位置值也及時變成了123,通信延遲僅為微秒級。
本文作者研究FMS中EtherCAT協議的實時數據采集,將新的以太網技術引入數據采集領域,解決了實時數據采集在工業中傳輸慢、效率低等問題。構建了完整的EtherCAT數據采集架構,分析了主站架構和從站架構,并對主站與從站如何實現數據通信作了詳細說明。結果表明:EtherCAT數據采集方式操作簡單、傳輸效率高、集成性好并且已經按照模塊化設計思想生成了各種各樣的功能庫,利用這些庫可以解決大量的工業問題。隨著智能制造的發展,EtherCAT將逐漸成為FMS發展的核心。