摘 要:EAST裝置中調(diào)節(jié)ICRH天線阻抗的真空調(diào)諧電容必須實現(xiàn)遠程控制?;诖谕ㄐ偶夹g(shù),采用上下位機的形式,以工控機為上位機、以西門子PLC為下位機實現(xiàn)了真空調(diào)諧電容的遠程控制,其中上位機控制界面采用虛擬儀器開發(fā)軟件LabVIEW實現(xiàn),不僅實現(xiàn)了對電容的遠程控制,而且得到了交互性良好的人機界面。
關(guān)鍵詞:EAST;虛擬儀器;阻抗匹配;可編程邏輯控制器
引言
EAST(實驗型先進超導(dǎo)托卡馬克)作為我國自行設(shè)計、研制的第一個全超導(dǎo)托卡馬克核聚變實驗研究裝置,即將在我所建成并試運行。較之原HT-7裝置,該裝置在許多方面都有重大改進,其中用于射頻波加熱等離子體的天線阻抗匹配系統(tǒng)將由原液態(tài)調(diào)配系統(tǒng)改進為真空調(diào)諧電容調(diào)匹配。在等離子體放電過程中,實驗人員不能靠近聚變裝置,而調(diào)諧電容距離控制室為100余米,因此,對天線阻抗的匹配調(diào)節(jié)必須實現(xiàn)遠程控制。
1 遠程控制系統(tǒng)框圖
控制系統(tǒng)上位機采用工控機,下位機采用西門子S7-224PLC,在計算機串口與PLC的通信口之間實現(xiàn)監(jiān)控信號的遠距離傳輸。由于計算機為RS-232串行口,但RS-232標準達不到所要求的通信距離,另一方面PLC所帶的串行通信口為RS-485接口,該接口完全滿足100米的通信距離。所以只須在上位機的串行口安裝RS232/485物理協(xié)議轉(zhuǎn)換器即可,此處采用JARA2102轉(zhuǎn)換器。執(zhí)行機構(gòu)為驅(qū)動器控制的安川高精度伺服電動機,型號為SGMAH-08ADA,由其帶動調(diào)諧電容的外部螺桿旋轉(zhuǎn)實現(xiàn)電容的改變,二者之間通過聯(lián)軸器連接,同時驅(qū)動器工作在位置控制模式下。整個控制系統(tǒng)硬件連接框圖如圖1所示。
[align=center]
圖1 遠程控制系統(tǒng)框圖[/align]
2 上下位機間的通信協(xié)議
西門子S7-224PLC的RS-485通信口可工作于自由口通信模式下,即由用戶自定義通信協(xié)議。為此,我們約定上下位機間的通信由上位機發(fā)起,并且上位機每發(fā)送一個命令幀都要求下位機反饋一幀數(shù)據(jù),這樣上位機可以監(jiān)控命令的執(zhí)行情況,并對反饋的數(shù)據(jù)進行處理。
上位機命令幀的格式如下表所示,其中左邊的33個字節(jié)為上位機命令幀格式,右邊的13個字節(jié)為下位機反饋幀格式。
其中,起始字符約定為字母“g”,下位機當檢測到該字符時,認為是一幀數(shù)據(jù)的開始,結(jié)束字符規(guī)定為字母“G”,下位機用該字符判斷一幀數(shù)據(jù)的結(jié)束。功能字符用05H表示寫下位機的某個寄存器。在西門子S7-224PLC中可以用8位16進制數(shù)表示一個寄存器的地址即:
0000(H) :I寄存器; 0100(H) :Q寄存器
0200(H) :M寄存器;0800(H) :V寄存器
例如:0000000(H)表示IB000;08000064表示VB100。
在數(shù)據(jù)傳輸過程中,指令可能受到干擾而發(fā)生錯誤,為了偵測指令在傳輸過程中的錯誤,接收方必須對接收到的指令作進一步的確認工作,以防止錯誤的指令被執(zhí)行,方法之一便是使用校驗碼,本文中規(guī)定為Byte1~29字符串的ASCII碼以字節(jié)為單位作異或和。
根據(jù)上述指令格式,若上位機向下位機的VB000中寫入2000個脈沖,應(yīng)發(fā)送的命令幀為“g602080000C808000007D0000000003CG”,其中“3C”為校驗碼。
3 上位機程序設(shè)計與實現(xiàn)
3.1上位機程序流程設(shè)計
程序運行以后,首先進入While循環(huán),在此循環(huán)內(nèi)程序按照圖2所示的流程圖循環(huán)執(zhí)行。首先根據(jù)設(shè)定的串口通信參數(shù)打開串口,此處須注意串口參數(shù)的設(shè)置必須與下位機一致,方能保證上下位機通信的正常進行。文中波特率設(shè)置為9.6kbps、1位起始位、1位停止位、8位數(shù)據(jù)位、無奇偶校驗。然后程序進入轉(zhuǎn)動命令的判斷,用三個箝套的CASE語句分別判斷電機正、反、停轉(zhuǎn)。如果正轉(zhuǎn)或者反轉(zhuǎn)按鈕被按下,則先發(fā)送電機轉(zhuǎn)動角度所需要的脈沖數(shù),然后延時等待回讀PLC的反饋幀,根據(jù)該反饋幀用CASE語句判斷脈沖數(shù)據(jù)幀是否被正確發(fā)送,如果發(fā)送錯誤則指示燈以紅顏色顯示,提示重新發(fā)送;如果脈沖數(shù)據(jù)幀已經(jīng)正確發(fā)送,則發(fā)送送轉(zhuǎn)動命令幀,然后延時等待回讀PLC的反饋幀,如果發(fā)送錯誤也使指示燈以紅顏色顯示,提示重新發(fā)送;如果按下停轉(zhuǎn)按鈕,則直接發(fā)送表示停止轉(zhuǎn)動的命令幀。最后程序更新電容值并關(guān)閉串口。
[align=center]
圖2 上位機程序流程設(shè)計[/align]
3.2 子VI程序的編制
為方便實現(xiàn)主程序的功能,分別編制了幾個子程序即:轉(zhuǎn)速命令幀打包.VI、脈沖數(shù)據(jù)幀打包.VI、轉(zhuǎn)動命令打包.VI,這幾個子程序的編制類似,下面只列出脈沖數(shù)據(jù)幀打包.VI(未包含起始字符),當需要向下位機VD200中寫入脈沖數(shù)據(jù)時,其程序前后面板如圖3所示:
[align=center]
圖3脈沖數(shù)據(jù)幀前后面板[/align]
3.3 LabVIEW實現(xiàn)上位機控制界面
3.3.1 LabVIEW串口通信模塊
虛擬儀器Labview平臺中包含串行通信控制模塊。在Labview平臺控制的串行通信過程中,數(shù)據(jù)是以字符串的格式組成的,字符串中的每個字符實際上對應(yīng)于我們所熟悉的ASCII字符,數(shù)據(jù)必須轉(zhuǎn)換為ASCII字符串才能進行發(fā)送和接收。Labview平臺的串行通信模塊中提供了VISA Open.vi、VISA Configure Serial Port.vi、VISA Read.vi、VISA Write.vi(、VISA Bytes at seril port.vi、VISA Close.vi”等函數(shù)。
實際使用串口讀/寫函數(shù)時,為了確保讀寫數(shù)據(jù)的正確,一般在連續(xù)的兩次讀/寫串口時,應(yīng)該有一段延時,此時間的長短與所發(fā)送的數(shù)據(jù)量有關(guān),本文中的延時設(shè)置為80ms。
3.3.2 控制界面設(shè)計
在上位控制界面中根據(jù)實際的要求,需要能夠在上位機控制界面分別實現(xiàn)電容值的顯示、電機正/反轉(zhuǎn)速度的設(shè)置、轉(zhuǎn)動命令的發(fā)送、各種錯誤信息的提示等,用LabVIEW實現(xiàn)的上位機控制界面如圖4所示。
[align=center]
圖4 控制系統(tǒng)操作界面[/align]
4 系統(tǒng)測試結(jié)果
作為位置伺服控制系統(tǒng),系統(tǒng)的優(yōu)劣可以從三個方面來考察即:較高的定位精度、無超調(diào)的定位過程、較快的動態(tài)響應(yīng)。對于本系統(tǒng)而言,在多次的測試過程中未見有超調(diào)的定位過程,因而主要檢驗控制精度和系統(tǒng)響應(yīng)時間。經(jīng)多次運行測試,系統(tǒng)在這兩方面的特性如下:本文中設(shè)置電機轉(zhuǎn)動的最小角度為0.72度,而電機每轉(zhuǎn)動一圈電容值改變3.2pf,因此電容值的控制精度可以達到0.0064pf,完全滿足要求。在上位機讀寫串口過程中需多次讀寫串口以發(fā)送轉(zhuǎn)速、脈沖數(shù)、轉(zhuǎn)動命令等,每次讀寫串口時為保證通信的正常進行都有80ms的延時,同時還要考慮到PLC CPU自檢、執(zhí)行程序的延時,因此執(zhí)行一次電機轉(zhuǎn)動操作大約需要300ms,整個系統(tǒng)應(yīng)用EAST ICRH真空調(diào)諧電容遠程控制取得了較好的效果。
本文作者創(chuàng)新點:本文首次展示了應(yīng)用LabVIEW實現(xiàn)西門子系列PLC自由口通信協(xié)議的方法,詳細闡述了協(xié)議實現(xiàn)的細節(jié),對串口通信應(yīng)用程序的開發(fā)也具有一定的借鑒意義。
參考文獻:
[1] 雷振山《LabVIEW 7 Express實用技術(shù)教程》,中國鐵道出版社,2005
[2] 鄧焱 、王磊《LabVIEW 7.1測試技術(shù)與儀器應(yīng)用》,機械工業(yè)出版社,2004
[3] 西門子(中國)有限公司自動化與驅(qū)動集團,《 S7-200系統(tǒng)手冊》,2005
[4] 金元郁、龐中華 基于VC++與AI調(diào)節(jié)器串口通信的實時監(jiān)控系統(tǒng) 微計算機信息,2005年第4期
[5] 李光明 李妍 李茜 用VB實現(xiàn)S7-300PLC與PC機的普通串口通信 微計算機信息,2005年07S期