周愛玉 石 泓
(中國科學院高能物理研究所 北京 100049)
北京同步輻射裝置(BSRF)束線有反射、準直和聚焦等功能不同的大量鏡箱,它們的工作方式均為通過電機運動改變鏡箱內(nèi)鏡子位置和姿態(tài),從而改變出射光束。同步輻射軌道發(fā)生改變時須作鏡箱調(diào)整,常用方法是用攝像頭觀察熒光靶光斑變化,并手動調(diào)整鏡子位置和姿態(tài),直至獲得位置、形狀合適的光斑。但是,每條束線均有幾個鏡箱,用此法調(diào)整它們耗時費力,且須在束線現(xiàn)場完成。國外同步輻射光源束線采用的EPICS[1]、TANGO[2,3]等標準控制系統(tǒng)均可實現(xiàn)遠程控制,控制系統(tǒng)功能強大,但非常復雜,對人員或設備要求很高。根據(jù) BSRF實際情況,我們開發(fā)了一種簡單實用的遠程可視化控制方法,實現(xiàn)直觀、任意地點鏡箱調(diào)整,節(jié)省束線調(diào)光人員的精力和時間。
反射鏡箱常用于調(diào)整同步輻射出射角度,是一種束線常用部件。我們模擬反射鏡箱工作模式,用兩個一維轉(zhuǎn)臺調(diào)整反射鏡姿態(tài),實現(xiàn)反射鏡箱功能。模擬反射鏡箱實物見圖1。由X和Z轉(zhuǎn)臺分別實現(xiàn)反射鏡繞X軸和Z軸的轉(zhuǎn)動。反射鏡中心點位于轉(zhuǎn)臺轉(zhuǎn)動中心軸交點處,并定義為O(0,0,0),光源中心點位于(0,0,Zl),采集反射光斑用 CCD位于y=Yc平面處。X軸轉(zhuǎn)臺轉(zhuǎn)動使反射光在YOZ平面上與OY軸夾角改變,Z軸轉(zhuǎn)臺轉(zhuǎn)動使反射光在XOY平面上與OY軸夾角改變,分別引起反射光斑在CCD平面上Z軸和X軸位置的相應改變,二者相互獨立。根據(jù)光斑位置信息可準確推知當前出射光角度和鏡子位置姿態(tài)。用LED光源(PJ- 1050-2CA,日本CCS公司)模擬束線入射光,用編碼顯示器顯示兩個轉(zhuǎn)臺轉(zhuǎn)動角度。
圖1 模擬反射鏡箱實物圖Fig.1 Picture of simulated reflect mirror box.
在控制方法設計方面上,綜合考慮現(xiàn)有束線鏡箱控制和未來束線整體控制應滿足:支持遠程控制、采用BSRF常用設備、穩(wěn)定性好、設備接入簡單、驅(qū)動開發(fā)容易、多種類接口和功能擴展方便等需求。因此該平臺在控制結構上采用兩層網(wǎng)絡,具體如圖2所示。通用局域網(wǎng)(LAN)為上層控制層,負責命令發(fā)送和數(shù)據(jù)查詢顯示等,是客戶端允許接入層;通過控制專用局域網(wǎng)(Control Network)接入設備服務器,非網(wǎng)絡設備通過相應接口接入服務器;控制專用局域網(wǎng)、設備及相應接口構成底層設備層,客戶端只能通過設備服務器訪問設備層,保證底層設備安全。所用設備均為BSRF束線常用設備,脈沖輸出型步進電機控制器(Motor Controller)為PM16C[4,5](日本Tsuji公司),編碼數(shù)顯器為GS9304[6](北京中科恒業(yè)中自技術有限公司),二者均通過 RS232協(xié)議接入設備服務器;CCD為工業(yè)攝像機AM1403[7](北京嘉恒中自圖像技術有限公司),通過 PCI接口圖像采集卡接入服務器;設備服務器為BSRF通用工業(yè)控制計算機IPC-610-H(研華科技)。
平臺軟件在結構上包括設備服務器端程序和客戶端程序。服務器部分負責執(zhí)行客戶端命令,并反饋相應數(shù)據(jù)。圖 3(a)為服務器端程序結構。設備服務器進入層負責客戶端及任務等的審核、登記和通訊等;信息處理層負責命令解析傳達和數(shù)據(jù)編碼;記錄層負責記錄各設備狀態(tài)、任務類型和登錄客戶端地址等信息;設備驅(qū)動層負責各底層設備實際運行。圖3(b)為客戶端程序結構。根據(jù)設備操作權限可分為用戶層(User Layer)和管理員層(Administrator Layer),用戶層對所有人開放,管理員層僅對設備管理人員開放;信息處理層負責命令和信息編解碼及相應處理;通訊層負責信息通訊等。
圖2 鏡箱遠程可視化控制實驗平臺結構圖Fig.2 Structure illustration of mirror box remote control platform.
圖3 設備服務器端(a)和客戶端(b)程序結構Fig.3 Program structure of the device server (a) and the clients (b).
除軟件結構外,客戶端/設備服務器間通訊協(xié)議設計、客戶端合法性審核及可視化控制法設計是影響該平臺長時間穩(wěn)定安全運行的三個技術關鍵點。
2.2.1 客戶端/設備服務器通訊協(xié)議設計
客戶端與設備服務器間通訊協(xié)議設計是影響軟件運行效率和可靠性,及后續(xù)功能擴展復雜程度的關鍵點。本平臺自行設計了一種基于TCP/IP的簡單文本通訊協(xié)議(Simple Ascii Message Protocol,SAMP),描述了命令和信息反饋行為,分別對應于執(zhí)行器和傳感器,束線上所有硬件均可歸入這兩類。如運動控制器,執(zhí)行客戶端運動命令時屬執(zhí)行器類,返回狀態(tài)信息給客戶端時屬傳感器類。
命令設計格式為“命令字名稱;后續(xù)參數(shù)個數(shù);參數(shù)1;參數(shù)2;…”,所有命令見表1。反饋信息格式是“信息標識符;后續(xù)參數(shù)個數(shù);參數(shù) 1;參數(shù)2;…”,所有反饋信息見表2。
表1 鏡箱遠程可視化控制實驗平臺命令列表Table 1 Commands list of mirror box remote control platform .
表2 鏡箱遠程可視化控制實驗平臺反饋信息列表Table 2 Information identifiers list of mirror box remote control platform.
2.2.2 客戶端合法性審核
為保證底層設備安全,服務器端對登陸客戶端進行合法性審核,本設計主要從客戶端訪問權限和時效方面考慮。根據(jù)對底層設備訪問權限的不同,客戶端分為管理員和用戶,管理員經(jīng)密碼驗證登陸后對設備有完全控制權限,用戶無需驗證但對設備只能進行有限操作。服務器端還采用文檔方式對允許登錄客戶端采取時效控制,包括IP地址核查和允許登錄時間確認,該文檔由管理員遠程或服務器本地維護,僅IP地址范圍內(nèi)客戶端在允許時間內(nèi)可合法登陸服務器,其余均為非法,服務器自動拒絕。
2.2.3 可視化控制
可視化控制體現(xiàn)在客戶端。由圖 1,模擬反射鏡箱結構,鏡子三維平面方程為:
其中,α為X軸轉(zhuǎn)臺平面法線與OX軸夾角,β為鏡子平面法線在YOZ面投影與OZ軸夾角。所以反射光斑中心點在CCD平面X軸和Z軸方向的位移為:
其中,fc為CCD鏡頭焦距。
根據(jù)上述方程,在客戶端界面上可以三維實時顯示鏡子位置姿態(tài);也可通過在 CCD采集光斑圖像上指定目的地方式實現(xiàn)鏡子姿態(tài)位置自動調(diào)整,實現(xiàn)可視化控制。
目前該控制實驗平臺已完成硬軟件設計開發(fā),并在實驗室用LED點光源進行了長時間運行測試,客戶端和設備服務器間網(wǎng)絡速度為 100 Mbit/s。服務器端本地執(zhí)行所有命令中運動命令訪問設備最多,耗時最長。分別對服務器端本地執(zhí)行運動命令時間和客戶端發(fā)送運動命令至服務器端執(zhí)行完畢耗時進行 21次測試,結果如圖 4所示。其中間隔 1表示服務器本地執(zhí)行時間,間隔 2表示客戶端發(fā)送至服務器執(zhí)行完畢時間。可見服務器本地執(zhí)行運動命令時間為0.13 s,客戶端發(fā)送運動命令至服務器端執(zhí)行完畢時間最長為0.3 s。
客戶端接收位置狀態(tài)信息更新時間是一項重要參數(shù),共進行71次測試,結果見圖5。更新時間最長為 0.2 s??梢暬刂葡?,在α= –7.5o~10.6o、β=41.9o~47.4o范圍內(nèi),位置調(diào)整誤差小于 5%。BSRF束線鏡箱控制均為異步慢速調(diào)整,該平臺滿足束線控制速度和位置精度要求。
圖4 運動命令執(zhí)行時間測試結果Fig.4 Test results of running the “move” command.
實驗中發(fā)現(xiàn)運動命令執(zhí)行時間較長,經(jīng)分析,本平臺運動命令涉及設備為運動控制器和編碼器數(shù)顯表,二者均通過RS232協(xié)議接入設備服務器,在位置獲取和運動控制器訪問方面耗時較長。改變設備接入服務器方式,提高訪問速度,將大大縮短命令執(zhí)行時間。對信息進行壓縮,提高信息傳輸效率,縮短信息網(wǎng)絡傳輸時間,會進一步縮短命令執(zhí)行時間。位置調(diào)整誤差主要來源于鏡子、光源和 CCD相對位置安裝誤差,減小該誤差,并在可視化控制中考慮誤差影響,將會進一步提高位置調(diào)整精度。
圖5 客戶端位置狀態(tài)信息更新時間測試結果Fig.5 Test results of position status updating time.
客戶端控制界面見圖 6(a),左框?qū)崟r顯示鏡子三維姿態(tài),右框顯示 CCD采集的光斑圖像;位置狀態(tài)顯示界面見圖6(b)。本平臺鏡箱運動模型設計為三維平動、三維轉(zhuǎn)動通用模型,位置反饋信息在編碼器等反饋部件有效情況下來自反饋部件,無效情況下則來自運動控制器脈沖數(shù)換算值。本平臺中,“1 Mirror Rotation X”信息表示X軸轉(zhuǎn)臺狀態(tài),“5 Mirror Rotation Z”信息表示Z軸轉(zhuǎn)臺狀態(tài),位置信息來自轉(zhuǎn)臺編碼器。其它軸顯示信息暫且無效。
圖6 客戶端控制界面(a)和位置狀態(tài)顯示界面(b)Fig.6 Display of the control status and the mirror positions at the clients.
本文介紹了一種BSRF鏡箱遠程可視化控制實驗平臺的設計與實現(xiàn)。該平臺基于客戶端/設備服務器結構,以模擬反射鏡箱為控制對象,通過自行設計SAMP協(xié)議和鏡子三維運動模型,實現(xiàn)了鏡箱的遠程可視化控制。該平臺底層設備訪問由設備服務器負責,通過客戶端合法性審核和訪問時效管理等安全策略應用,保證了底層設備的遠程多用戶安全訪問。該平臺在實驗室內(nèi)進行了長時間測試,結果表明,該平臺命令中運動命令執(zhí)行時間最長,為0.3 s;客戶端位置狀態(tài)信息更新時間為 0.2 s;可視化控制下位置調(diào)整誤差小于 5%;滿足當前 BSRF鏡箱控制實際需求。根據(jù)束線所調(diào)鏡箱結構及位置,調(diào)整所用部件及參數(shù),該平臺控制結構和方法可應用至束線實際調(diào)光。該平臺采用BSRF束線常用設備,結構簡單,功能和驅(qū)動設計模塊化,在服務器端增加束線內(nèi)其他設備驅(qū)動模塊,并開發(fā)相應客戶端程序,該結構可應用至束線整體遠程控制。
1 Overview of the Experimental Physics and Industrial Control System: EPICS[OL], 1998, http://www.epics.org
2 Science and Technology Programme 2008–2017.European Synchrotron Radiation Facility. 2007, 1:113–114
3 Experiments at the ESRF Tango at beamlines. Tango Workshop at DESY, 2007
4 16Ch Stepping Motor Controller PM16C-04,04S User’s Manual (Rev.12). Tusji Electronics Co., LTD
5 16Ch Stepping Motor Controller PM16C-04,04S Remote Control User’s Manual (Rev 1.). Tusji Electronics Co.,LTD
6 GS9000系列數(shù)顯表使用說明書(普通)[Z]. 北京中科恒業(yè)中自技術有限公司, 2003 User Guide for GS9000 Series Displayer (Normal).Beijing CSCA Automation Technology Co., Ltd., 2003
7 OK系列攝像機說明書[Z]. 北京嘉恒中自圖像技術有限公司, 2009 User Guide for OK Series Camera. Beijing JoinHope Image Technology Ltd., 2009