周愛玉 石 泓
(中國科學院高能物理研究所 北京 100049)
北京同步輻射裝置(BSRF)束線有反射、準直和聚焦等功能不同的大量鏡箱,它們的工作方式均為通過電機運動改變鏡箱內鏡子位置和姿態,從而改變出射光束。同步輻射軌道發生改變時須作鏡箱調整,常用方法是用攝像頭觀察熒光靶光斑變化,并手動調整鏡子位置和姿態,直至獲得位置、形狀合適的光斑。但是,每條束線均有幾個鏡箱,用此法調整它們耗時費力,且須在束線現場完成。國外同步輻射光源束線采用的EPICS[1]、TANGO[2,3]等標準控制系統均可實現遠程控制,控制系統功能強大,但非常復雜,對人員或設備要求很高。根據 BSRF實際情況,我們開發了一種簡單實用的遠程可視化控制方法,實現直觀、任意地點鏡箱調整,節省束線調光人員的精力和時間。
反射鏡箱常用于調整同步輻射出射角度,是一種束線常用部件。我們模擬反射鏡箱工作模式,用兩個一維轉臺調整反射鏡姿態,實現反射鏡箱功能。模擬反射鏡箱實物見圖1。由X和Z轉臺分別實現反射鏡繞X軸和Z軸的轉動。反射鏡中心點位于轉臺轉動中心軸交點處,并定義為O(0,0,0),光源中心點位于(0,0,Zl),采集反射光斑用 CCD位于y=Yc平面處。X軸轉臺轉動使反射光在YOZ平面上與OY軸夾角改變,Z軸轉臺轉動使反射光在XOY平面上與OY軸夾角改變,分別引起反射光斑在CCD平面上Z軸和X軸位置的相應改變,二者相互獨立。根據光斑位置信息可準確推知當前出射光角度和鏡子位置姿態。用LED光源(PJ- 1050-2CA,日本CCS公司)模擬束線入射光,用編碼顯示器顯示兩個轉臺轉動角度。

圖1 模擬反射鏡箱實物圖Fig.1 Picture of simulated reflect mirror box.
在控制方法設計方面上,綜合考慮現有束線鏡箱控制和未來束線整體控制應滿足:支持遠程控制、采用BSRF常用設備、穩定性好、設備接入簡單、驅動開發容易、多種類接口和功能擴展方便等需求。因此該平臺在控制結構上采用兩層網絡,具體如圖2所示。通用局域網(LAN)為上層控制層,負責命令發送和數據查詢顯示等,是客戶端允許接入層;通過控制專用局域網(Control Network)接入設備服務器,非網絡設備通過相應接口接入服務器;控制專用局域網、設備及相應接口構成底層設備層,客戶端只能通過設備服務器訪問設備層,保證底層設備安全。所用設備均為BSRF束線常用設備,脈沖輸出型步進電機控制器(Motor Controller)為PM16C[4,5](日本Tsuji公司),編碼數顯器為GS9304[6](北京中科恒業中自技術有限公司),二者均通過 RS232協議接入設備服務器;CCD為工業攝像機AM1403[7](北京嘉恒中自圖像技術有限公司),通過 PCI接口圖像采集卡接入服務器;設備服務器為BSRF通用工業控制計算機IPC-610-H(研華科技)。
平臺軟件在結構上包括設備服務器端程序和客戶端程序。服務器部分負責執行客戶端命令,并反饋相應數據。圖 3(a)為服務器端程序結構。設備服務器進入層負責客戶端及任務等的審核、登記和通訊等;信息處理層負責命令解析傳達和數據編碼;記錄層負責記錄各設備狀態、任務類型和登錄客戶端地址等信息;設備驅動層負責各底層設備實際運行。圖3(b)為客戶端程序結構。根據設備操作權限可分為用戶層(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).
除軟件結構外,客戶端/設備服務器間通訊協議設計、客戶端合法性審核及可視化控制法設計是影響該平臺長時間穩定安全運行的三個技術關鍵點。
2.2.1 客戶端/設備服務器通訊協議設計
客戶端與設備服務器間通訊協議設計是影響軟件運行效率和可靠性,及后續功能擴展復雜程度的關鍵點。本平臺自行設計了一種基于TCP/IP的簡單文本通訊協議(Simple Ascii Message Protocol,SAMP),描述了命令和信息反饋行為,分別對應于執行器和傳感器,束線上所有硬件均可歸入這兩類。如運動控制器,執行客戶端運動命令時屬執行器類,返回狀態信息給客戶端時屬傳感器類。
命令設計格式為“命令字名稱;后續參數個數;參數1;參數2;…”,所有命令見表1。反饋信息格式是“信息標識符;后續參數個數;參數 1;參數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 客戶端合法性審核
為保證底層設備安全,服務器端對登陸客戶端進行合法性審核,本設計主要從客戶端訪問權限和時效方面考慮。根據對底層設備訪問權限的不同,客戶端分為管理員和用戶,管理員經密碼驗證登陸后對設備有完全控制權限,用戶無需驗證但對設備只能進行有限操作。服務器端還采用文檔方式對允許登錄客戶端采取時效控制,包括IP地址核查和允許登錄時間確認,該文檔由管理員遠程或服務器本地維護,僅IP地址范圍內客戶端在允許時間內可合法登陸服務器,其余均為非法,服務器自動拒絕。
2.2.3 可視化控制
可視化控制體現在客戶端。由圖 1,模擬反射鏡箱結構,鏡子三維平面方程為:

其中,α為X軸轉臺平面法線與OX軸夾角,β為鏡子平面法線在YOZ面投影與OZ軸夾角。所以反射光斑中心點在CCD平面X軸和Z軸方向的位移為:

其中,fc為CCD鏡頭焦距。
根據上述方程,在客戶端界面上可以三維實時顯示鏡子位置姿態;也可通過在 CCD采集光斑圖像上指定目的地方式實現鏡子姿態位置自動調整,實現可視化控制。
目前該控制實驗平臺已完成硬軟件設計開發,并在實驗室用LED點光源進行了長時間運行測試,客戶端和設備服務器間網絡速度為 100 Mbit/s。服務器端本地執行所有命令中運動命令訪問設備最多,耗時最長。分別對服務器端本地執行運動命令時間和客戶端發送運動命令至服務器端執行完畢耗時進行 21次測試,結果如圖 4所示。其中間隔 1表示服務器本地執行時間,間隔 2表示客戶端發送至服務器執行完畢時間。可見服務器本地執行運動命令時間為0.13 s,客戶端發送運動命令至服務器端執行完畢時間最長為0.3 s。
客戶端接收位置狀態信息更新時間是一項重要參數,共進行71次測試,結果見圖5。更新時間最長為 0.2 s。可視化控制下,在α= –7.5o~10.6o、β=41.9o~47.4o范圍內,位置調整誤差小于 5%。BSRF束線鏡箱控制均為異步慢速調整,該平臺滿足束線控制速度和位置精度要求。

圖4 運動命令執行時間測試結果Fig.4 Test results of running the “move” command.
實驗中發現運動命令執行時間較長,經分析,本平臺運動命令涉及設備為運動控制器和編碼器數顯表,二者均通過RS232協議接入設備服務器,在位置獲取和運動控制器訪問方面耗時較長。改變設備接入服務器方式,提高訪問速度,將大大縮短命令執行時間。對信息進行壓縮,提高信息傳輸效率,縮短信息網絡傳輸時間,會進一步縮短命令執行時間。位置調整誤差主要來源于鏡子、光源和 CCD相對位置安裝誤差,減小該誤差,并在可視化控制中考慮誤差影響,將會進一步提高位置調整精度。

圖5 客戶端位置狀態信息更新時間測試結果Fig.5 Test results of position status updating time.
客戶端控制界面見圖 6(a),左框實時顯示鏡子三維姿態,右框顯示 CCD采集的光斑圖像;位置狀態顯示界面見圖6(b)。本平臺鏡箱運動模型設計為三維平動、三維轉動通用模型,位置反饋信息在編碼器等反饋部件有效情況下來自反饋部件,無效情況下則來自運動控制器脈沖數換算值。本平臺中,“1 Mirror Rotation X”信息表示X軸轉臺狀態,“5 Mirror Rotation Z”信息表示Z軸轉臺狀態,位置信息來自轉臺編碼器。其它軸顯示信息暫且無效。

圖6 客戶端控制界面(a)和位置狀態顯示界面(b)Fig.6 Display of the control status and the mirror positions at the clients.
本文介紹了一種BSRF鏡箱遠程可視化控制實驗平臺的設計與實現。該平臺基于客戶端/設備服務器結構,以模擬反射鏡箱為控制對象,通過自行設計SAMP協議和鏡子三維運動模型,實現了鏡箱的遠程可視化控制。該平臺底層設備訪問由設備服務器負責,通過客戶端合法性審核和訪問時效管理等安全策略應用,保證了底層設備的遠程多用戶安全訪問。該平臺在實驗室內進行了長時間測試,結果表明,該平臺命令中運動命令執行時間最長,為0.3 s;客戶端位置狀態信息更新時間為 0.2 s;可視化控制下位置調整誤差小于 5%;滿足當前 BSRF鏡箱控制實際需求。根據束線所調鏡箱結構及位置,調整所用部件及參數,該平臺控制結構和方法可應用至束線實際調光。該平臺采用BSRF束線常用設備,結構簡單,功能和驅動設計模塊化,在服務器端增加束線內其他設備驅動模塊,并開發相應客戶端程序,該結構可應用至束線整體遠程控制。
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系列數顯表使用說明書(普通)[Z]. 北京中科恒業中自技術有限公司, 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