• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于EPICS的SHINE束線站定時(shí)設(shè)備控制系統(tǒng)

      2023-07-25 11:21:26曾孟麒尹聰聰
      核技術(shù) 2023年7期
      關(guān)鍵詞:交換機(jī)端口時(shí)鐘

      曾孟麒 尹 亮 尹聰聰,2 懷 平,2

      1(上??萍即髮W(xué) 上海 200120)

      2(中國(guó)科學(xué)院上海高等研究院 上海 201210)

      上海硬X 射線自由電子激光裝置(Shanghai High Repetition rate XFEL and Extreme light facility,SHINE)是一臺(tái)高重頻硬X射線自由電子激光(Free Electron Laser,F(xiàn)EL)大科學(xué)裝置,產(chǎn)生的X 光脈沖最高重復(fù)頻率可達(dá)1MHz,在物理、化學(xué)、材料、生命科學(xué)等諸多領(lǐng)域都有非常廣泛和重要的應(yīng)用[1]。定時(shí)系統(tǒng)作為整個(gè)裝置運(yùn)行的時(shí)鐘,精確控制著所有需要同步觸發(fā)的設(shè)備,保證各節(jié)點(diǎn)的時(shí)鐘同頻同相,是使裝置中各類設(shè)備協(xié)調(diào)運(yùn)行的重要保障[2]。

      大型實(shí)驗(yàn)物理裝置的時(shí)鐘同步系統(tǒng)分別經(jīng)歷了基帶分布系統(tǒng)、事件分布系統(tǒng)和白兔協(xié)議(White Rabbit,WR)定時(shí)系統(tǒng)三個(gè)階段[3-4]。WR 定時(shí)系統(tǒng)是歐洲核子中心(CERN)發(fā)起的建立在同步以太網(wǎng)和精確時(shí)鐘同步協(xié)議(IEEE 1588)上的時(shí)鐘和數(shù)據(jù)傳輸協(xié)議,可自動(dòng)補(bǔ)償傳輸延遲,實(shí)現(xiàn)大范圍、高可靠性、拓?fù)浣Y(jié)構(gòu)靈活的亞納秒級(jí)別的時(shí)鐘同步,因此成為目前大型科學(xué)裝置定時(shí)系統(tǒng)的主流方案[5]。歐洲大型電子對(duì)撞機(jī)(Large Hadron Collider,LHC)、歐洲同步輻射光源(European Synchrotron Radiation Facility,ESRF)和我國(guó)的高海拔宇宙線觀測(cè)站(Large High Altitude Air Shower Observatory,LHAASO)等大科學(xué)裝置的定時(shí)系統(tǒng)都基于此系統(tǒng)進(jìn)行開發(fā)[6]。

      EPICS(Experimental Physics and Industrial Control System)是美國(guó)洛斯阿拉莫斯國(guó)家實(shí)驗(yàn)室和阿貢國(guó)家實(shí)驗(yàn)室等聯(lián)合開發(fā)的大型控制軟件系統(tǒng),具有模塊化、可裁剪、易擴(kuò)展、便于管理維護(hù)與升級(jí)的特點(diǎn)[7-9],目前,在北京正負(fù)電子對(duì)撞機(jī)(Beijing Electron-Positron Collider,BEPC)、上海同步輻射光源(Shanghai Synchrotron Radiation Facility,SSRF)、美國(guó)直線加速器相干光源(Linac Coherent Light Source,LCLS)等[10-12]上百個(gè)大型物理實(shí)驗(yàn)裝置和項(xiàng)目中得到應(yīng)用。

      在控制系統(tǒng)下完成設(shè)備的定時(shí)同步,是這些大裝置數(shù)據(jù)監(jiān)測(cè)和控制的重要一環(huán)。德國(guó)自由電子激光裝置FLASH 基于分布式面向?qū)ο罂刂葡到y(tǒng)(Distributed Object-Oriented Control System,DOOCS)開發(fā)了控制軟件,能夠通過(guò)用戶和專家界面對(duì)定時(shí)板卡進(jìn)行遠(yuǎn)程控制和參數(shù)配置[13]。美國(guó)LCLS 基于事件分布系統(tǒng)通過(guò)EPICS 的輸入輸出控制器(Input/Output Controller,IOC)接口進(jìn)行事件碼傳輸,并開發(fā)了控制軟件用于設(shè)置提供給設(shè)備的觸發(fā)信號(hào)特性[14-15]。合肥先進(jìn)光源(Hefei Advanced Light Facility,HALF)基于事件分布系統(tǒng)在EPICS架構(gòu)下開發(fā)了定時(shí)系統(tǒng)軟件,包括驅(qū)動(dòng)程序、實(shí)時(shí)數(shù)據(jù)庫(kù) 和 操 作 界 面[16]。中 國(guó) 散 裂 中 子 源(China Spallation Neutron Source,CSNS)束線站基于White Rabbit定時(shí)系統(tǒng),使用EPICS系統(tǒng)進(jìn)行控制,并結(jié)合MySQL數(shù)據(jù)庫(kù)實(shí)現(xiàn)了數(shù)據(jù)的顯示和存儲(chǔ)[17]。

      基于SHINE 束線站定時(shí)系統(tǒng)框架,開發(fā)了White Rabbit 定時(shí)設(shè)備的控制系統(tǒng)。該系統(tǒng)通過(guò)SNMP 驅(qū)動(dòng)程序接入EPICS 控制系統(tǒng)框架,同時(shí)通過(guò)PyDM 編程實(shí)現(xiàn)用戶操作界面(Operator Interface,OPI),能夠?qū)崟r(shí)地對(duì)定時(shí)設(shè)備進(jìn)行遠(yuǎn)程控制管理和狀態(tài)監(jiān)測(cè)。本文提出的定時(shí)設(shè)備與控制系統(tǒng)之間的數(shù)據(jù)通信方案設(shè)計(jì)及技術(shù)實(shí)現(xiàn),為SHINE束線站定時(shí)系統(tǒng)的軟件控制奠定了基礎(chǔ)。

      1 背景

      硬X 射線自由電子激光每束光脈沖能量、到達(dá)時(shí)間、束團(tuán)長(zhǎng)度等參數(shù)都可能不同,故需要精確的時(shí)間戳表征每束光脈沖。SHINE定時(shí)系統(tǒng)分為加速器定時(shí)系統(tǒng)和束線站定時(shí)系統(tǒng),加速器定時(shí)系統(tǒng)控制著保證電子束團(tuán)被加速到設(shè)計(jì)能量而產(chǎn)生滿足要求的自由電子激光的相關(guān)設(shè)備。束線站定時(shí)系統(tǒng)接入加速器定時(shí)系統(tǒng)提供的定時(shí)信號(hào),并將此定時(shí)信號(hào)分發(fā)到3 條光束線和10個(gè)實(shí)驗(yàn)站,為實(shí)驗(yàn)站電荷耦合器件(Charge Coupled Device,CCD)相機(jī)、硅像素陣列探測(cè)器等成像探測(cè)器、譜學(xué)探測(cè)器、束線站診斷設(shè)備提供定時(shí)信號(hào)。

      SHINE 定時(shí)重復(fù)頻率為1.003086 4MHz,基于此頻率,SHINE 定制的WR 定時(shí)硬件設(shè)備能夠提供定時(shí)脈沖信號(hào)(Trigger)和束團(tuán)編號(hào)(BunchID)給對(duì)應(yīng)的目標(biāo)設(shè)備[18]。通過(guò)定時(shí)脈沖信號(hào)觸發(fā)丟束監(jiān)測(cè)設(shè)備BLM、軟線能譜儀、軟線能量分辨率設(shè)備、激光器泵浦源等設(shè)備,使光束線和實(shí)驗(yàn)站上的設(shè)備能夠同步工作。通過(guò)提供束團(tuán)編號(hào)給光束位置監(jiān)測(cè)設(shè)備BPIM、脈沖能量診斷GMP/HAMP、脈沖時(shí)間診斷TM、fADC 等,產(chǎn)生帶時(shí)間標(biāo)簽的數(shù)據(jù),從而能夠基于統(tǒng)一的時(shí)間標(biāo)簽對(duì)實(shí)驗(yàn)數(shù)據(jù)進(jìn)行光束參數(shù)分析、物理參數(shù)分析等。束線站定時(shí)系統(tǒng)需要開發(fā)相關(guān)應(yīng)用軟件管理和控制離散分布的定時(shí)設(shè)備,實(shí)現(xiàn)遠(yuǎn)程實(shí)時(shí)監(jiān)測(cè)和控制的預(yù)期目標(biāo)。

      2 SHINE束線站定時(shí)設(shè)備控制任務(wù)和控制內(nèi)容

      2.1 需求分析

      如圖1所示,定時(shí)系統(tǒng)底層基礎(chǔ)硬件設(shè)備有WR定時(shí)交換機(jī)(White Rabbit Switch,WRS)、扇出型定時(shí)從節(jié)點(diǎn)、嵌入型定時(shí)從節(jié)點(diǎn)、WR 終端設(shè)備和BunchID 采集設(shè)備。WR 定時(shí)主節(jié)點(diǎn)接收來(lái)自SHINE 同步系統(tǒng)的外部參考信號(hào),與加速器基準(zhǔn)信號(hào)鎖相,整個(gè)SHINE只有一個(gè)WR定時(shí)主節(jié)點(diǎn),存在于加速器定時(shí)系統(tǒng)。WR交換機(jī)將帶有時(shí)間頻率信號(hào)的數(shù)據(jù)經(jīng)光纖傳到下一級(jí)WR交換機(jī)或從節(jié)點(diǎn)設(shè)備。扇出型定時(shí)從節(jié)點(diǎn)輸出定時(shí)觸發(fā)信號(hào)給需要定時(shí)的設(shè)備,嵌入型定時(shí)從節(jié)點(diǎn)可同時(shí)輸出定時(shí)觸發(fā)信號(hào)和束團(tuán)編號(hào)BunchID 給需要定時(shí)的設(shè)備。因此,各級(jí)交換機(jī)和從節(jié)點(diǎn)需要接入控制網(wǎng)絡(luò),包括鏈路狀態(tài)、端口狀態(tài)、運(yùn)行模式、硬件溫度、機(jī)器時(shí)鐘延時(shí)和脈寬在內(nèi)的多項(xiàng)參數(shù)都需要進(jìn)行遠(yuǎn)程監(jiān)測(cè)或者控制。

      圖1 SHINE束線站定時(shí)系統(tǒng)底層硬件架構(gòu)Fig.1 Timing system hardware architecture of beamlines and endstations in SHINE

      為了保障束線站定時(shí)系統(tǒng)的順利運(yùn)行,主要對(duì)SHINE 定制的WR 定時(shí)交換機(jī)和WR 定時(shí)從節(jié)點(diǎn)(White Rabbit Node,WRN)的相關(guān)參數(shù)進(jìn)行監(jiān)測(cè)和控制。WRS是實(shí)現(xiàn)White Rabbit時(shí)鐘同步協(xié)議的交換機(jī),擁有18個(gè)用于數(shù)據(jù)交換的1000Mbps以太網(wǎng)SFP接口以及1個(gè)用于交換機(jī)管理的100Mbps以太網(wǎng)RJ45 接口。WRN 是一款實(shí)現(xiàn)White Rabbit 雙端口節(jié)點(diǎn)功能的通用FMC 標(biāo)準(zhǔn)子卡。WRN 可以給FMC 載板提供同步準(zhǔn)確度好于1ns、同步精度小于30 ps的時(shí)鐘信號(hào)。

      WRS 的18個(gè)千兆光纖同步端口用于連接定時(shí)同步網(wǎng)絡(luò),端口1 默認(rèn)為Slave 狀態(tài)接收上級(jí)WR 設(shè)備的時(shí)鐘信號(hào),端口2~18為Master,向下級(jí)WR設(shè)備傳遞同步時(shí)鐘。此設(shè)備的參數(shù)信息包括軟硬件版本、硬件溫度、內(nèi)部操作系統(tǒng)狀態(tài)、鎖相環(huán)狀態(tài)、精確同步時(shí)鐘協(xié)議(Precision Time Protocol,PTP)參數(shù)、端口狀態(tài)等信息;WRN主要有1個(gè)同步端口和10路機(jī)器時(shí)鐘SMA接口輸出,同步端口連接WRS,既可用于定時(shí)信號(hào)同步,也可用于WRN遠(yuǎn)程控制設(shè)備,機(jī)器時(shí)鐘SMA接口連接目標(biāo)設(shè)備,輸出定時(shí)脈沖觸發(fā)信號(hào)。因此,控制軟件不僅需要實(shí)現(xiàn)遠(yuǎn)程控制端口使能狀態(tài)和設(shè)置掩碼,同時(shí)也需要能夠?qū)γ柯窓C(jī)器時(shí)鐘延時(shí)和脈寬參數(shù)進(jìn)行調(diào)節(jié)。根據(jù)圖2參數(shù)分類,上層用戶界面需要能夠?qū)崟r(shí)顯示當(dāng)前WRS 和WRN的狀態(tài)信息,同時(shí)能夠?qū)敵鰌ort進(jìn)行開關(guān)控制以及對(duì)延遲和掩碼信息進(jìn)行遠(yuǎn)程設(shè)置。

      圖2 SHINE定時(shí)基礎(chǔ)設(shè)備參數(shù)分類Fig.2 Parameter classification of basic equipment of SHINE timing system

      2.2 系統(tǒng)總體架構(gòu)

      如圖3所示,SHINE 束線站定時(shí)設(shè)備系統(tǒng)網(wǎng)絡(luò)按照網(wǎng)絡(luò)功能不同劃分為兩層。底層為定時(shí)同步網(wǎng)絡(luò),用于連接定時(shí)交換機(jī)、扇出型定時(shí)從節(jié)點(diǎn)和嵌入型定時(shí)從節(jié)點(diǎn)等定時(shí)基礎(chǔ)硬件,實(shí)現(xiàn)定時(shí)系統(tǒng)的時(shí)鐘同步,最終將加速器一級(jí)WR 定時(shí)交換機(jī)輸出的定時(shí)信號(hào)傳輸?shù)蕉〞r(shí)系統(tǒng)末端。一方面通過(guò)扇出型從節(jié)點(diǎn)輸出定時(shí)脈沖給只需要外部觸發(fā)的目標(biāo)設(shè)備,另一方面通過(guò)嵌入型從節(jié)點(diǎn)同時(shí)輸出觸發(fā)脈沖和BunchID給需要將采集到的數(shù)據(jù)打上時(shí)間戳的探測(cè)器類設(shè)備。上層為定時(shí)設(shè)備控制網(wǎng)絡(luò),運(yùn)行接入EPICS 控制系統(tǒng)的定時(shí)監(jiān)控IOC 服務(wù)器,用于定時(shí)基礎(chǔ)硬件的監(jiān)測(cè)和控制,一方面基于標(biāo)準(zhǔn)百兆以太網(wǎng)通過(guò)定時(shí)設(shè)備控制網(wǎng)絡(luò)連接定時(shí)交換機(jī)管理口實(shí)現(xiàn)對(duì)定時(shí)交換機(jī)的控制管理,另一方面需要通過(guò)網(wǎng)絡(luò)異頻轉(zhuǎn)換模塊與定時(shí)交換機(jī)同步端口相連來(lái)實(shí)現(xiàn)對(duì)定時(shí)從節(jié)點(diǎn)的控制管理。因?yàn)槎〞r(shí)同步網(wǎng)絡(luò)為異頻千兆以太網(wǎng),物理層傳輸頻率與標(biāo)準(zhǔn)以太網(wǎng)傳輸頻率不同,所以需要通過(guò)網(wǎng)絡(luò)異頻轉(zhuǎn)換模塊實(shí)現(xiàn)兩個(gè)網(wǎng)絡(luò)之間的數(shù)據(jù)交換。定時(shí)設(shè)備監(jiān)控服務(wù)器運(yùn)行基于SNMP 協(xié)議的EPICS IOC,獲取定時(shí)設(shè)備的實(shí)時(shí)參數(shù)并存儲(chǔ)到實(shí)時(shí)數(shù)據(jù)庫(kù)。同時(shí)上層還運(yùn)行有定時(shí)設(shè)備操作人員交互界面(Operator Interface,OPI)的PC機(jī),通過(guò)以太網(wǎng)接入EPICS控制網(wǎng)絡(luò)傳輸定時(shí)參數(shù),實(shí)現(xiàn)定時(shí)設(shè)備的遠(yuǎn)程監(jiān)測(cè)和參數(shù)配置,以及運(yùn)行歷史歸檔工具(Archiver Appliance,AA)存儲(chǔ)服務(wù)器對(duì)重要數(shù)據(jù)進(jìn)行歸檔存儲(chǔ)。

      圖3 束線站定時(shí)設(shè)備控制系統(tǒng)網(wǎng)絡(luò)總體架構(gòu)Fig.3 Overall architecture of the network of the timing equipment control system for the beamlines and endstations

      3 軟件設(shè)計(jì)方案

      圖4為本文設(shè)計(jì)的控制系統(tǒng)軟件架構(gòu)。首先,運(yùn)行在WR 設(shè)備上的SNMP 代理獲取設(shè)備數(shù)據(jù)信息,根據(jù)定時(shí)設(shè)備監(jiān)控IOC 服務(wù)器上的SNMP 管理者的請(qǐng)求命令,結(jié)合管理信息庫(kù)表(Management Information Bases,MIB)查詢相應(yīng)的設(shè)備狀態(tài)信息或者執(zhí)行相應(yīng)的操作,并將操作響應(yīng)返回給SNMP管理者;其次,EPICS的SNMP驅(qū)動(dòng)獲取響應(yīng)數(shù)據(jù)并根據(jù)實(shí)時(shí)數(shù)據(jù)庫(kù)db 文件解析成相應(yīng)的過(guò)程變量(Process Variables,PV),從而使其能夠通過(guò)通道訪問(wèn)協(xié)議(Channel Access,CA)被PyDM設(shè)計(jì)的OPI界面獲取并顯示;最后,PV 變量也能夠被歷史歸檔工具AA 所存儲(chǔ),OPI 也能夠通過(guò)PyDM 提供的HTTP接口對(duì)AA歸檔的數(shù)據(jù)檢索和顯示。反過(guò)來(lái),在OPI執(zhí)行的設(shè)置操作也會(huì)沿此數(shù)據(jù)路徑映射成對(duì)應(yīng)的操作指令對(duì)WR設(shè)備進(jìn)行控制和參數(shù)配置。

      圖4 束線站W(wǎng)R設(shè)備控制系統(tǒng)軟件架構(gòu)Fig.4 Software architecture of WR equipment control system for beamlines and endstations

      3.1 設(shè)備驅(qū)動(dòng)數(shù)據(jù)獲取

      SNMP即簡(jiǎn)單網(wǎng)絡(luò)管理協(xié)議是專門基于IP網(wǎng)絡(luò)管理網(wǎng)絡(luò)節(jié)點(diǎn)(服務(wù)器、工作站、交換機(jī)、路由器等)設(shè)計(jì)的一種標(biāo)準(zhǔn)應(yīng)用層協(xié)議。WR 交換機(jī)和WR從節(jié)點(diǎn)是一種特殊的交換機(jī),也基于SNMP 協(xié)議進(jìn)行管理。如圖5所示,網(wǎng)絡(luò)管理系統(tǒng)(Network-Management Systems,NMS)運(yùn)行應(yīng)用程序,監(jiān)視和控制被管理設(shè)備。被管理設(shè)備是一個(gè)網(wǎng)絡(luò)節(jié)點(diǎn),包含SNMP 代理(SNMP Agent)、MIB 等模塊。NMS通過(guò)MIB作為接口訪問(wèn)SNMP Agent與被管理設(shè)備交互。MIB 是一個(gè)數(shù)據(jù)庫(kù),描述了被管理設(shè)備維護(hù)的變量。MIB在數(shù)據(jù)中定義了被管理設(shè)備一系列屬性,包括對(duì)象名稱、對(duì)象的狀態(tài)、對(duì)象的訪問(wèn)權(quán)限和對(duì)象的數(shù)據(jù)類型等。MIB 以樹狀結(jié)構(gòu)進(jìn)行存儲(chǔ),用從根開始到樹的節(jié)點(diǎn)表示的唯一路徑OID來(lái)標(biāo)識(shí)被管理對(duì)象。

      圖5 SNMP結(jié)構(gòu)和EPICS SNMP驅(qū)動(dòng)Fig.5 Diagram of SNMP structure and EPICS SNMP driver

      因定時(shí)設(shè)備管理接口采用SNMP 協(xié)議,故上位機(jī)監(jiān)控軟件采用基于SNMP 驅(qū)動(dòng)的EPICS IOC 軟件。EPICS SNMP是基于EPICS框架開發(fā)的設(shè)備支持程序,底層調(diào)用NET-SNMP 基礎(chǔ)庫(kù),上層兼容EPICS 記錄支持程序,使得SNMP 對(duì)每一個(gè)對(duì)象的操作變成對(duì)每一個(gè)記錄的操作。通過(guò)此驅(qū)動(dòng)程序完成與設(shè)備的數(shù)據(jù)交換,并將設(shè)備參數(shù)提供給實(shí)時(shí)數(shù)據(jù)庫(kù)接口。

      3.2實(shí)時(shí)數(shù)據(jù)庫(kù)設(shè)計(jì)

      IOC 是EPICS 軟件的核心,是連接OPI 和現(xiàn)場(chǎng)設(shè)備層的中間件[19],IOC 通過(guò)db 實(shí)時(shí)數(shù)據(jù)庫(kù)向下與現(xiàn)場(chǎng)設(shè)備層通過(guò)網(wǎng)絡(luò)等通信方式完成數(shù)據(jù)的實(shí)時(shí)采集和存儲(chǔ)、向上響應(yīng)來(lái)自O(shè)PI客戶端的請(qǐng)求,將實(shí)時(shí)數(shù)據(jù)傳給OPI。實(shí)時(shí)數(shù)據(jù)庫(kù)db 文件是IOC 的核心,基于WR 設(shè)備提供的私有MIB 庫(kù),根據(jù)定時(shí)需求里的相關(guān)參數(shù)信息編寫EPICS的實(shí)時(shí)數(shù)據(jù)庫(kù)db文件。

      通過(guò)db 文件描述的record 記錄,實(shí)時(shí)數(shù)據(jù)庫(kù)能夠接收和存儲(chǔ)WR 設(shè)備回送的SNMP 應(yīng)答數(shù)據(jù),并且按照record 中記錄名、設(shè)備類型、鏈接域、掃描周期等映射成對(duì)應(yīng)的PV 變量。使用的record 類型包括ai、ao、longin、longout、stringin、mbbi、calc 等,示例如下:

      record (longout, " $ (DEV) :

      wrpcPtpConfigDeltaRxSet") {

      field(DESC, "Set delta rx to be set")

      field(DTYP, "Snmp")

      field(EGU, "ps")

      field(SCAN, "Passive")

      field(OUT, "@$(HOST) public WR-WRPCMIB: : wrpcPtpConfigDeltaRx. $ (GROUP)INTEGER: 100 i")}

      由于采用了EPICS SNMP 設(shè)備驅(qū)動(dòng),除了DTYP 字段應(yīng)該聲明為"Snmp"外,INP/OUT 字段的格式如下所示,其中“host”為主機(jī)IP,“community”聲明所屬團(tuán)體,“dataLength”為回送數(shù)據(jù)的臨時(shí)緩沖大小,“set_type”為SNMP 數(shù)據(jù)類型所對(duì)應(yīng)的標(biāo)識(shí)符。

      @host community OIDname mask dataLength[set_type[special_flags]]

      單臺(tái)設(shè)備對(duì)應(yīng)的PV數(shù)量達(dá)到103級(jí)別,因此,為了減少系統(tǒng)輪詢壓力,對(duì)于不同的設(shè)備信息類別,在SCAN域采用不同的掃描周期。對(duì)于不會(huì)輕易改變的軟硬件版本類信息采用“Passive”,對(duì)于端口使能狀態(tài)等時(shí)效性要求較高的參數(shù),采用“0.5second”等較小掃描周期。此外為了提升db文件的復(fù)用率,對(duì)于批量同類設(shè)備可以在record 中采用宏替換字段“$(DEV)”和“$(HOST)”來(lái) 區(qū)分 設(shè)備,采 用“$(PORT)”區(qū)分同一設(shè)備的多個(gè)同類端口,最后在IOC 啟動(dòng)腳本里通過(guò)dbLoadRecords 命令加載具體指定宏字段。

      3.3 用戶界面設(shè)計(jì)與開發(fā)

      PyDM 是基于Python 和Qt 構(gòu)建控制系統(tǒng)圖形用戶界面的新框架,其提供了一個(gè)通過(guò)Qt Designer簡(jiǎn)單拖放控件來(lái)創(chuàng)建用戶界面的平臺(tái),還允許通過(guò)Python 代碼來(lái)實(shí)現(xiàn)自定義的功能[20]。Qt 的跨平臺(tái)特性和Python 環(huán)境的友好度使得PyDM 成為目前EPICS下設(shè)計(jì)操作人員界面的優(yōu)選方式之一。

      根據(jù)實(shí)際使用需求,同時(shí)限制普通用戶的操作權(quán)限,WRN設(shè)計(jì)時(shí)區(qū)分為用戶界面和專家界面。如圖6所示,WRN 用戶OPI 界面是專家OPI 界面貼合用戶視角所做的功能提煉,主要提供定時(shí)從節(jié)點(diǎn)設(shè)備溫度等關(guān)鍵狀態(tài)信息、各機(jī)器時(shí)鐘通道的開關(guān)控制及輸出信號(hào)的延遲和脈寬的配置等功能。專家界面則是詳細(xì)化設(shè)備的各項(xiàng)運(yùn)行參數(shù)以及設(shè)備所有配置功能的集合。對(duì)于定時(shí)交換機(jī)而言,只需提供專家界面,如圖7所示,對(duì)18 路port 鏈路狀態(tài)、設(shè)備硬件模塊溫度、子系統(tǒng)狀態(tài)、鎖相環(huán)和PTP參數(shù)等信息進(jìn)行實(shí)時(shí)監(jiān)測(cè)。OPI的實(shí)時(shí)顯示的信息來(lái)源于硬件實(shí)時(shí)參數(shù)所映射的相應(yīng)PV變量,按照掃描優(yōu)先級(jí)進(jìn)行掃描,通過(guò)CA 協(xié)議從實(shí)時(shí)數(shù)據(jù)庫(kù)中監(jiān)測(cè)相應(yīng)PV值變化。

      圖6 定時(shí)從節(jié)點(diǎn)OPI WRN 用戶界面(a)和專家界面(b~d)截圖Fig.6 Snapshot of WRN OPI user interface (a) and WRN engineer interface (b~d)

      圖7 定時(shí)交換機(jī)OPI截圖Fig.7 Snapshot of WRS OPI

      圖形用戶界面OPI 開發(fā)流程為:先通過(guò)Qt designer 按照開發(fā)需求設(shè)計(jì)UI 界面,指定組件屬性和設(shè)計(jì)整體UI 布局,再通過(guò)Python 編程實(shí)現(xiàn)UI 界面的操作交互功能。使用PyDM組件可以通過(guò)指定channels 格式為ca://<PV NAME>或者archiver://<PARAMS>來(lái)聲明數(shù)據(jù)來(lái)源即PV變量是通過(guò)CA協(xié)議獲取還是從AA 中獲取。在PyDM 框架下使用Python 編程時(shí),所想要顯示的界面子類必須要繼承PyDM 的Display 基類。在實(shí)現(xiàn)操作交互功能時(shí)需要用到Qt 的信號(hào)與槽機(jī)制,如圖8顯示的是通過(guò)python 的EPICS 接口PyEPICS 來(lái)通道訪問(wèn)獲取PV變量數(shù)據(jù),定時(shí)監(jiān)測(cè)PV 值的變化并顯示的邏輯流程圖。

      圖8 信號(hào)與槽機(jī)制的PV值監(jiān)視流程圖Fig.8 Flowchart of PV value monitoring through signal and slot mechanism

      3.4 數(shù)據(jù)歸檔與檢索

      Archiver Appliance歷史存檔軟件通過(guò)CA、PVA協(xié)議訪問(wèn)并存儲(chǔ)EPICS IOC獲取的實(shí)時(shí)PV數(shù)據(jù),并且將數(shù)據(jù)按照短期、中期和長(zhǎng)期進(jìn)行分期歸檔[21-22]。Archiver Appliance 采用谷歌PB(Protocol Buffer)進(jìn)行數(shù)據(jù)序列化,二進(jìn)制格式存儲(chǔ)和傳輸數(shù)據(jù)效率更優(yōu)。 在PyDM 中通過(guò)將環(huán)境變量PYDM_ARCHIVER_URL 指向AA 程序位置或檢索應(yīng)用程序URL,可實(shí)現(xiàn)用PyDM 組件基于HTTP 協(xié)議對(duì)PV數(shù)據(jù)進(jìn)行檢索或者歸檔的操作。歸檔存儲(chǔ)的定時(shí)設(shè)備參數(shù),可以用來(lái)實(shí)驗(yàn)期間定時(shí)設(shè)備的平均運(yùn)行狀態(tài)分析和故障分析,以及評(píng)判定時(shí)設(shè)備的使用壽命。

      4 系統(tǒng)測(cè)試結(jié)果與討論

      SHINE束線站定時(shí)網(wǎng)絡(luò)設(shè)備的軟件開發(fā)與系統(tǒng)測(cè)試在SHINE 束線站數(shù)據(jù)實(shí)驗(yàn)室中開展。定時(shí)測(cè)試的硬件環(huán)境構(gòu)成包括Inter(R)Core(TM)i9-10980XE CPU@3.00 GHz、WR 定時(shí)交換機(jī)、WR 定時(shí)從節(jié)點(diǎn),軟件環(huán)境為Centos 7 64 位、EPICS base 7.0.6、EPICS SNMP 1.1.0.4(NSCL/FRIB)。系統(tǒng)測(cè)試的主要目標(biāo)是OPI對(duì)設(shè)備參數(shù)的實(shí)時(shí)監(jiān)測(cè)性能和遠(yuǎn)程控制響應(yīng)速度。

      在定時(shí)系統(tǒng)由定時(shí)設(shè)備正確搭建的測(cè)試環(huán)境下開發(fā)的EPICS SNMP IOC能夠在定時(shí)設(shè)備監(jiān)控服務(wù)器上穩(wěn)定運(yùn)行。通過(guò)IOC啟動(dòng)腳本里指定WR設(shè)備名的宏字段來(lái)監(jiān)測(cè)對(duì)應(yīng)設(shè)備參數(shù),對(duì)單臺(tái)WRS 和WRN 的設(shè)備參數(shù)能夠映射成2 500 多個(gè)PV 并存儲(chǔ)在實(shí)時(shí)數(shù)據(jù)庫(kù)中,并且能夠通過(guò)CA協(xié)議進(jìn)行g(shù)et和put操作。說(shuō)明IOC與設(shè)備的通信是正常且穩(wěn)定的。

      通過(guò)PyDM環(huán)境下執(zhí)行的Python腳本啟動(dòng)對(duì)應(yīng)設(shè)備的OPI,對(duì)于優(yōu)先級(jí)較高的參數(shù)如端口狀態(tài)等,數(shù)據(jù)采樣周期最短可以達(dá)到0.5s。對(duì)于設(shè)備溫度等比較平穩(wěn)的參數(shù),數(shù)據(jù)采樣周期在4s。通過(guò)OPI設(shè)置信號(hào)時(shí)延和脈寬等配置參數(shù),機(jī)器應(yīng)用的響應(yīng)時(shí)間可達(dá)2s。OPI在AA歷史數(shù)據(jù)中的檢索的顯示間隔達(dá)到3s。

      本設(shè)備控制系統(tǒng)能夠長(zhǎng)時(shí)間穩(wěn)定地實(shí)現(xiàn)對(duì)WR設(shè)備的實(shí)時(shí)監(jiān)視和控制管理,同時(shí)通過(guò)AA與PyDM的數(shù)據(jù)接口,能夠?qū)w檔存儲(chǔ)的數(shù)據(jù)檢索顯示。OPI界面簡(jiǎn)潔,系統(tǒng)響應(yīng)時(shí)間滿足要求,基于Python環(huán)境移植方便。證明了本定時(shí)網(wǎng)絡(luò)設(shè)備控制系統(tǒng)的可用性、實(shí)時(shí)性、易用性和穩(wěn)定性。

      5 結(jié)語(yǔ)

      本文開發(fā)了一套SHINE 束線站定時(shí)設(shè)備控制系統(tǒng),實(shí)現(xiàn)White Rabbit 設(shè)備的管理與監(jiān)控。該系統(tǒng)基于EPICS 控制系統(tǒng)和SNMP 協(xié)議,主要功能包括實(shí)時(shí)數(shù)據(jù)獲取與監(jiān)測(cè)、設(shè)備遠(yuǎn)程控制、數(shù)據(jù)歸檔和存儲(chǔ)。該軟件通過(guò)定時(shí)設(shè)備樣機(jī)搭建的定時(shí)網(wǎng)絡(luò)下的實(shí)際測(cè)試,實(shí)現(xiàn)了對(duì)WR 設(shè)備定時(shí)參數(shù)的遠(yuǎn)程監(jiān)測(cè)和歸檔存儲(chǔ),滿足了SHINE束線站的定時(shí)工程要求。未來(lái)將在基于整個(gè)束線站的定時(shí)設(shè)備網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)下,能夠簡(jiǎn)單地宏觀性地控制分布于不同位置的定時(shí)設(shè)備。本文積累的WR設(shè)備控制軟件開發(fā)框架經(jīng)驗(yàn)為完善后續(xù)束線站總體定時(shí)設(shè)備控制網(wǎng)絡(luò)奠定了基礎(chǔ)。

      作者貢獻(xiàn)聲明曾孟麒負(fù)責(zé)軟件開發(fā),系統(tǒng)測(cè)試和調(diào)試、論文撰寫和修改;尹亮負(fù)責(zé)硬件設(shè)備技術(shù)支持、參與問(wèn)題討論;尹聰聰負(fù)責(zé)SHINE 束線站定時(shí)系統(tǒng)的工程設(shè)計(jì)、技術(shù)研發(fā)與平臺(tái)建設(shè),論文研究方案的提出與修改指導(dǎo);懷平負(fù)責(zé)SHINE束線站定時(shí)系統(tǒng)總體目標(biāo)的設(shè)計(jì)、項(xiàng)目管理,論文修改指導(dǎo),研究經(jīng)費(fèi)支持。

      猜你喜歡
      交換機(jī)端口時(shí)鐘
      別樣的“時(shí)鐘”
      一種端口故障的解決方案
      古代的時(shí)鐘
      修復(fù)損壞的交換機(jī)NOS
      端口阻塞與優(yōu)先級(jí)
      使用鏈路聚合進(jìn)行交換機(jī)互聯(lián)
      有趣的時(shí)鐘
      時(shí)鐘會(huì)開“花”
      初識(shí)電腦端口
      電腦迷(2015年6期)2015-05-30 08:52:42
      生成樹協(xié)議實(shí)例探討
      平安县| 芜湖市| 绥芬河市| 盈江县| 江都市| 巴林右旗| 昭觉县| 滦平县| 井研县| 潢川县| 岳阳市| 枝江市| 曲水县| 湟中县| 宿迁市| 湖北省| 靖宇县| 托克托县| 红安县| 丰县| 阿坝| 全州县| 年辖:市辖区| 杂多县| 桐乡市| 平湖市| 阿荣旗| 通化市| 巴林右旗| 肥城市| 牙克石市| 黑龙江省| 十堰市| 望都县| 太湖县| 柳江县| 莱州市| 西畴县| 宜川县| 海原县| 林州市|