何泳成 王春紅 吳 煊
1(中國科學(xué)院高能物理研究所 東莞分部 東莞 523803)
2(東莞中子科學(xué)中心 東莞 523808)
3(中國科學(xué)院高能物理研究所 北京 100049)
EPICS IOC與EtherCAT設(shè)備通信的一種方法
何泳成1,2王春紅3吳 煊1,2
1(中國科學(xué)院高能物理研究所 東莞分部 東莞 523803)
2(東莞中子科學(xué)中心 東莞 523808)
3(中國科學(xué)院高能物理研究所 北京 100049)
EtherCAT (Ethernet Control Automation Technology)是一種用于工業(yè)自動化的實時以太網(wǎng)現(xiàn)場總線協(xié)議。通過使用OPC (Object Linking and Embedding for Process Control) Gateway驅(qū)動程序?qū)崿F(xiàn)了EPICS (Experimental Physics and Industrial Control System) IOC (Input/Output Controller)與EtherCAT設(shè)備的通信,從而使EtherCAT成為加速器控制系統(tǒng)中對實時性要求很高的高速控制系統(tǒng)的一種解決方案。在簡要介紹EPICS、EtherCAT、OPC及OPC Gateway的基礎(chǔ)上,對使用OPC Gateway驅(qū)動程序?qū)崿F(xiàn)EPICS IOC與EtherCAT設(shè)備通信進行了測試。結(jié)果表明,EPICS IOC可通過OPC Gateway驅(qū)動程序與EtherCAT設(shè)備正常通信。
EPICS,EtherCAT,OPC Gateway,加速器控制系統(tǒng)
EtherCAT (Ethernet Control Automation Technology)是一種用于工業(yè)自動化的實時以太網(wǎng)現(xiàn)場總線協(xié)議,具有拓撲結(jié)構(gòu)靈活、高可靠性及高實時性等特點。
北京正負電子對撞機(Beijing Electron-positron Collider, BEPCII)和中國散裂中子源(Chinese Spallation Neutron Source, CSNS)等大科學(xué)裝置的加速器控制系統(tǒng)均是基于分布式實時控制軟件EPICS (Experimental Physics and Industrial Control System)架構(gòu)設(shè)計的。通過使用OPC (Object Linking and Embedding for Process Control) Gateway驅(qū)動程序?qū)崿F(xiàn)了EPICS IOC與EtherCAT設(shè)備的通信,從而使EtherCAT成為加速器控制系統(tǒng)中對實時性要求很高的高速控制系統(tǒng)的一種解決方案。
EPICS是一個開源的軟件工具集,目前主要用于搭建粒子加速器等大型科學(xué)裝置的控制系統(tǒng)。EPICS采用分布式控制系統(tǒng)的體系結(jié)構(gòu),具有可移植性、可互操作性、可裁減性以及可重用性等特點;而且經(jīng)過大量實例證明,EPICS還具有運行穩(wěn)定、系統(tǒng)結(jié)構(gòu)靈活、開放性好、可擴展性好、國際交流協(xié)作方便等諸多優(yōu)點;同時對于開發(fā)出的版本中大量工具都是免費的且提供技術(shù)支持,因此現(xiàn)已逐漸成為國際高能加速器控制系統(tǒng)的一個主流的軟件開發(fā)工具[1]。
EPICS的分布式結(jié)構(gòu)如圖1所示,可分為3個層次:操作員接口層(Operator Interface, OPI)、輸入輸出控制層(Input/Output Controller, IOC)和設(shè)備控制層(Device control layer)。
EPICS采用建立在TCP/IP協(xié)議之上的CA (Channel Access)客戶端/服務(wù)器模式,OPI通過CA客戶端程序訪問IOC,用于顯示并存儲I/O設(shè)備的運行情況和運行結(jié)果;IOC用于運行分布式實時動態(tài)數(shù)據(jù)庫,獲取I/O設(shè)備的狀態(tài)、信息和參數(shù),控制I/O設(shè)備的運行[2]。
圖1 EPICS的系統(tǒng)結(jié)構(gòu)框圖Fig.1 System structure diagram of EPICS.
EtherCAT是德國倍福公司(Beckhoff Automation)提出的一種新型工業(yè)以太網(wǎng)現(xiàn)場總線技術(shù),是一種開放的實時以太網(wǎng)通訊協(xié)議[3]。
EtherCAT采用主從式結(jié)構(gòu),系統(tǒng)控制周期由主站發(fā)起,EtherCAT主站向從站發(fā)出嵌入在標準以太網(wǎng)數(shù)據(jù)幀中的EtherCAT電報。最大可包含1 498字節(jié)EtherCAT電報的以太網(wǎng)數(shù)據(jù)幀遍歷所有EtherCAT從站設(shè)備,每個設(shè)備的EtherCAT從站控制器在數(shù)據(jù)幀經(jīng)過時分析尋址到本設(shè)備的報文,根據(jù)報文頭中的命令對報文中指定位置的數(shù)據(jù)進行讀寫。數(shù)據(jù)幀在遍歷位于整個系統(tǒng)邏輯位置的最后一個EtherCAT從站后,該從站將經(jīng)過充分處理的數(shù)據(jù)幀發(fā)回,這樣該數(shù)據(jù)幀就作為一種響應(yīng)報文返回到EtherCAT主站。EtherCAT主站收到上行的響應(yīng)報文后,處理返回數(shù)據(jù),一次通信結(jié)束。
EtherCAT協(xié)議具有拓撲結(jié)構(gòu)靈活的特點,支持線型、樹型、星型等各種網(wǎng)絡(luò)拓撲結(jié)構(gòu),其在物理層可使用雙絞線、光纖等介質(zhì)傳輸,一個EtherCAT網(wǎng)絡(luò)可以連接多達65535個EtherCAT從站設(shè)備[4]。
EtherCAT協(xié)議還具有高可靠性和高實時性的特點。EtherCAT主站使用標準的以太網(wǎng)控制器,而EtherCAT從站則采用了專門的EtherCAT從站控制芯片,從而大幅提高了數(shù)據(jù)傳輸?shù)目煽啃院蛿?shù)據(jù)幀的處理速度。目前,EtherCAT設(shè)備的過程數(shù)據(jù)刷新周期可以達到100μs,各EtherCAT從站之間的時鐘同步精度可以小于1μs[5]。帶時間戳的EtherCAT數(shù)字量輸入/輸出模塊能以1 ns的精度識別最后邊沿改變的時間。
目前,支持EtherCAT協(xié)議的設(shè)備種類齊全,主要包括工業(yè)PC、嵌入式控制器、輸入/輸出模塊和運動控制器等,適用于自動化領(lǐng)域內(nèi)幾乎所有常用的數(shù)字量和模擬量信號類型。在加速器控制領(lǐng)域,EtherCAT設(shè)備可應(yīng)用于連鎖保護、運動控制和真空、溫度、流量控制等系統(tǒng)中。
OPC是一個用于過程控制和制造業(yè)自動化系統(tǒng)的工業(yè)標準,是Windows應(yīng)用程序和現(xiàn)場過程控制應(yīng)用間的橋梁。
OPC采用了微軟的組件對象模型/分布式組件對象模型(COM/DCOM)技術(shù),基于客戶端/服務(wù)器模式,規(guī)定硬件設(shè)備的驅(qū)動程序由硬件廠商開發(fā),并提供OPC服務(wù)器程序,而軟件廠商無需關(guān)心底層驅(qū)動的細節(jié),只需安裝OPC客戶端程序即可實現(xiàn)與硬件設(shè)備的通信。目前,OPC標準已被大多數(shù)工控領(lǐng)域的廠商所接受,并逐漸發(fā)展成了工控軟件的技術(shù)標準[6]。
OPC Gateway是由BESSY (Berlin Electron Synchrotron)的Carsten Winkler和Bernhard Kuner等開發(fā)的一種EPICS驅(qū)動程序[7]。OPC Gateway驅(qū)動程序使安裝在Windows操作系統(tǒng)下的EPICS IOC可以通過OPC客戶端/服務(wù)器模式實現(xiàn)與PLC和其他工業(yè)自動化設(shè)備的通信。
EPICS IOC通過OPC Gateway驅(qū)動程序與OPC服務(wù)器通信的原理如圖2所示。安裝了OPC Gateway驅(qū)動程序后,EPICS IOC可看作OPC客戶端,可通過OPC客戶端/服務(wù)器模式與OPC服務(wù)器通信,從而實現(xiàn)了其與PLC和其他工業(yè)自動化設(shè)備通信。
圖2 EPICS IOC通過OPC Gateway驅(qū)動程序與OPC 服務(wù)器通信的原理Fig.2 Principle of communication between EPICS IOC and OPC Server using the OPC Gateway driver.
TwinCAT OPC Server是德國倍福公司提供的OPC服務(wù)器程序,可與該公司的EtherCAT設(shè)備進行數(shù)據(jù)交換,為OPC客戶端提供數(shù)據(jù)。因此,EPICS IOC要與EtherCAT設(shè)備通信,可通過基于OPC客戶端/服務(wù)器模式讀寫TwinCAT OPC Server中的數(shù)據(jù)來實現(xiàn),其原理如圖3所示。
圖3 EPICS IOC與EtherCAT設(shè)備通信原理Fig.3 Principle of communication between EPICS IOC and EtherCAT devices.
通過搭建一套溫度監(jiān)測樣機對EPICS IOC通過OPC Gateway驅(qū)動程序與EtherCAT設(shè)備通信進行測試。測試所使用的EtherCAT設(shè)備如圖4所示,主要包括德國倍福公司的CX1030嵌入式控制器、EL3201溫度傳感器輸入端子模塊和EL3124模擬量輸入端子模塊等。EtherCAT主站和從站間通過雙絞線連接。將3個置于室內(nèi)和1個置于室外的溫度傳感器分別接到EtherCAT設(shè)備相應(yīng)的端子模塊上。
圖4 測試使用的EtherCAT設(shè)備Fig.4 EtherCAT devices test.
用安裝在PC機上的TwinCAT軟件完成系統(tǒng)配置并編寫相應(yīng)的樣機程序,下載到CX1030嵌入式控制器中。程序運行后,可在TwinCAT軟件中觀察到4個溫度傳感器的讀數(shù),證明EtherCAT設(shè)備已正常運行。使用TwinCAT OPC Configurator配置TwinCAT OPC Server,結(jié)果如圖5所示,其中OPC Server 名為“BECKHOFF.TwinCATOpcServerDA”。
下載安裝OPC Gateway驅(qū)動程序,配置與TwinCAT OPC Server對應(yīng)的啟動文件“st.cmd”和EPICS數(shù)據(jù)庫記錄后,啟動EPICS應(yīng)用,過程如圖6所示。可以看到,所連接的OPC Server 名為“BECKHOFF.TwinCATOpcServerDA”,狀態(tài)為“connected”和“active”,即EPICS IOC與TwinCAT OPC Server已成功連接。
圖5 TwinCAT OPC配置Fig.5 TwinCAT OPC configurator.
圖6 EPICS應(yīng)用啟動過程Fig.6 EPICS application start-up process.
用CSS-NSLSII制作的溫度監(jiān)測樣機OPI如圖7所示。從圖7中可見,OPI上顯示了4個溫度傳感器的讀數(shù)和倍福嵌入式控制器自身的狀態(tài),證明EPICS IOC已可通過OPC Gateway驅(qū)動程序與EtherCAT設(shè)備正常通信。
圖7 用CSS-NSLSII制作的溫度監(jiān)測樣機OPIFig.7 EPICS OPI created using CSS-NSLSII.
本文在簡要介紹EPICS、EtherCAT、OPC及OPC Gateway的基礎(chǔ)上,通過搭建一套溫度監(jiān)測樣機對使用OPC Gateway驅(qū)動程序?qū)崿F(xiàn)EPICS IOC與EtherCAT設(shè)備通信進行了測試。測試結(jié)果表明,EPICS IOC可通過OPC Gateway驅(qū)動程序與EtherCAT設(shè)備正常通信。因此,EtherCAT可作為加速器控制系統(tǒng)中有實時性要求的高速控制系統(tǒng)的一種解決方案。
由于OPC現(xiàn)已成為工業(yè)界系統(tǒng)互聯(lián)的缺省方案,所以O(shè)PC Gateway驅(qū)動程序可使EPICS IOC通過OPC客戶端/服務(wù)器模式實現(xiàn)與其他大量工業(yè)自動化設(shè)備的通信。
1 趙籍九, 尹兆升. 粒子加速器技術(shù)[M]. 北京: 高等教育出版社, 2005 ZHAO Jijiu, YIN Zhaosheng. Particle accelerator technology[M]. Beijing: Higher Education Press, 2005
2 米清茹, 劉松強. EPICS控制系統(tǒng)的Callback機制[J].核技術(shù), 2010, 33(6): 411–414 MI Qingru, LIU Songqiang. The Callback mechanism in EPICS at SSRF[J]. Nuclear Techniques, 2010, 33(6): 411–414
3 郇極, 劉艷強. 工業(yè)以太網(wǎng)現(xiàn)場總線EtherCAT驅(qū)動程序設(shè)計及應(yīng)用[M]. 北京: 北京航天航空大學(xué)出版社, 2010 HUAN Ji, LIU Yanqiang. Industrial Ethernet fieldbus EtherCAT driver design and application[M]. Beijing: Beihang University Press, 2010
4 單春榮, 劉艷強, 郇極. 工業(yè)以太網(wǎng)現(xiàn)場總線EtherCAT及驅(qū)動程序設(shè)計[J]. 制造業(yè)自動化, 2007, 29(11): 79–82 SHAN Chunrong, LIU Yanqiang, HUAN Ji. EtherCAT-industrial Ethernet fieldbus and its driver design[J]. Manufacturing Automation, 2007, 29(11): 79–82
5 顧朝媛. EtherCAT工業(yè)以太網(wǎng)從站設(shè)備的軟件設(shè)計與實現(xiàn)[D]. 哈爾濱: 哈爾濱工業(yè)大學(xué), 2012 GU Zhaoyuan. Software design and implementation for slave equipment of EtherCAT industrial Ethernet[D]. Harbin: Harbin Institute of Technology, 2012
6 李洪波. 基于西門子PLC的OPC服務(wù)器開發(fā)[D]. 天津:天津大學(xué), 2007 LI Hongbo. OPC server development based on Siemens PLC[D]. Tianjin: Tianjin University, 2007
7 Ralph Lange. OPC Gateway (device support)[R]. Shanghai: CSNS Controls Mini Workshop, 2008
CLCTL50
A method of communication between EPICS IOC and EtherCAT devices
HE Yongcheng1,2WANG Chunhong3WU Xuan1,2
1(China Spallation Neutron Source, Institute of High Energy Physics, Chinese Academy of Sciences, Dongguan 523803, China)
2(Dongguan Institute of Neutron Science, Dongguan 523808, China)
3(Institute of High Energy Physics, Chinese Academy of Sciences, Beijing 100049, China)
Background:EtherCAT (Ethernet Control Automation Technology) is a kind of real-time Ethernet fieldbus protocol for industrial automation. The control system of many large-scale scientific facilities such as Beijing electron-positron collider (BEPCII), Chinese spallation neutron source (CSNS) was designed based on EPICS (Experimental Physics and Industrial Control System).Purpose:The aim is to implement EtherCAT as a real-time high speed control system solution for the EPICS based control system.MethodsThe communication between EPICS IOC (Input/Output Controller) and EtherCAT devices was realized by using the OPC (Object Linking and Embedding for Process Control) Gateway driver. A real-time temperature monitoring appliance was taken as testing example.Results:The test results show that the communication between EPICS IOC and EtherCAT devices using the OPC Gateway driver is efficiently implemented.Conclusion:EtherCAT devices can be applied to communicate with the EPICS IOC to achieve real-time high-speed control by using the OPC Gateway driver.
EPICS (Experimental Physics and Industrial Control System), EtherCAT (Ethernet Control Automation Technology), OPC (Object Linking and Embedding for Process Control) Gateway, Accelerator control system
TL50
10.11889/j.0253-3219.2014.hjs.37.110102
何泳成,男,1986年出生,2010年于天津大學(xué)獲碩士學(xué)位,檢測技術(shù)與自動化裝置專業(yè)
2014-04-30,
2014-07-07