高玉
(西安鐵路職業技術學院 電子信息學院,陜西 西安 710014)
在線監控系統通過檢測傳感器對儀器設備的各類信號進行數據采集,并將數據上傳給使用者,使用者可通過參數設置改變儀器狀態[1]。近年來,隨著網絡通信技術的成熟,在線監控系統已在工業監控和水質質量監控等諸多領域得到了廣泛運用[2]。
磁懸浮控制器在線監控系統主要應用于磁懸浮轉子試驗臺[3]。一方面可將控制器采集的磁懸浮轉子系統的監測數據傳輸給個人計算機(PC),展現給用戶;另一方面用戶可遠程在線修改控制器的控制參數,從而閉環控制轉子狀態[4]。相比現場監控磁懸浮控制器,在線監控主要具備以下優點:首先使用電子設備代替人力與器具進行監控,可以降低監控的成本,提高數據準確率;其次在線監控系統可以實時完成數據的傳輸,大量減少系統的調試時間;最后在線監控系統可使用戶遠程監控多臺磁懸浮轉子平臺,提高效率,降低成本[5]。
在線監控系統大多采用串行接口進行傳輸,該方式的數據傳輸速率較低且傳輸范圍較小:使用RS-232可支持的最大傳輸速率是20 kb/s,最大傳輸距離僅為15 m,易受環境干擾[6]。為解決這一問題,本文設計了基于工業以太網通信的磁懸浮轉子監控系統。相比以往系統,該系統可實現遠距離監控,大幅提高了在線監控的數據傳輸效率,實現了預期的功能設計要求。
本文設計并搭建了基于工業以太網通信的磁懸浮轉子在線監控系統。一方面,可通過上位機PC實時追蹤磁懸浮轉子橫向及垂直方向的位移及功率放大器輸出電流等關鍵數值,檢測轉子的狀態是否異常;另一方面,可對PID控制的比例系數、積分系數和微分系數進行實時調整,調整系統運轉狀態。經測試,該監控系統通信正常、工作穩定,可實現控制數據遠距離、高速率和高穩定性的傳輸。
磁懸浮控制器在線監控系統的設計架構如圖1所示。磁懸浮控制器在線監控系統的主體部分為磁懸浮轉子系統,該系統由異步電機通過聯軸器驅動轉子高速旋轉。轉子由一對徑向磁懸浮軸承支承,軸向上利用聯軸器限制其運動。在轉子兩端靠近軸承的位置安裝有位移傳感器。位移傳感器對轉子的位移數據進行測量,并將位移數據和從PWM數字開關功效模塊反饋來的電流數據進行前置調理、A/D轉換,傳送給DSP控制器。同時,DSP控制器分別通過PID閉環控制轉子的位移和功放的電流。

圖1 系統整體架構設計圖
在線監控系統實物連接圖如圖2所示。

圖2 在線監控系統實物連接圖
在線監控系統軟件設計中,以工業以太網作為傳輸方式,分別進行上位機PC和下位機DSP的在線監控程序編寫,實現了磁懸浮控制器中儲存的系統位移、電流狀態信息傳輸給PC以及將PID控制參數傳輸給DSP等主要功能。
在線監控軟件整體架構如圖3所示。上位機為監控系統的服務器端,相關程序在PC機運行,采用LabVIEW軟件進行相關程序的編寫;下位機為系統客戶端,相關程序在DSP運行,在CCS7.1.0中使用C語言進行編寫。上、下位機共同完成監測數據傳輸和控制數據傳輸兩項功能。

圖3 軟件結構框圖
2.2.1 下位機程序設計
下位機程序的設計框圖如圖4所示。首先定義程序全局變量以及IP地址、子網掩碼等通信信息,并對DSP和W5300分別進行初始化配置;接下來程序的主體部分進行接收數據與發送數據兩個函數的循環,以保證在線監測的實時性。兩個函數具體實現先建立TCP連接,再將數據發送到緩存區或將緩存區的數據讀取的功能。

圖4 下位機程序設計框圖
2.2.2 上位機程序設計
上位機監測數據傳輸程序由LabVIEW軟件進行編寫,程序流程為:
(1)根據IP地址和TCP端口號不斷向下位機發送建立連接的請求信息。
(2)連接成功后,通過While循環接收下位機傳輸的監測數據,存儲數據并通過波形圖顯示實時數據圖像。
(3)若傳輸產生錯誤信息或者點擊停止按鈕后跳出循環,斷開TCP連接,并顯示錯誤代號與原因。
(4)完成數據傳輸后斷開TCP連接。
根據實際應用需求,需要將磁懸浮轉子試驗臺傳感器監測到的狀態信息不斷上傳到PC機端進行觀測與處理。由于數據產生頻率大,需要將一定時間段內接收到的數據打包上傳給PC。具體實現方法如下:
(1)對數據進行格式轉換:由于監測數據格式為占用空間較大的64位浮點數,若直接傳輸則會影響傳輸速率,因此傳輸前先將浮點數轉化成為16位定點數,即每個數據乘上215取整,在LabVIEW接收到數據后再除以215還原。這樣可以提高傳輸速率,確定每個數據的位數,同時產生的誤差也很小。
(2)下位機分包發送數據:每包中有X+1個16位數據,其中第一位為標識字符串“si”,后X個數據為監測數據的ASCⅡ碼。
(3)上位機接收數據包:建立數據接收模塊,打開TCP連接,進入接收數據While循環中,不斷查找“si”標識符信息。若發現“si”則進入到接收數據模塊,一次讀取X個數據的ASCⅡ碼,依次進行將ASCⅡ碼轉化為對應的十六進制數字,再將數字轉化成字符串格式,最終字符串轉化為十進制數字的處理,將所得十進制數組輸入到實時波形圖與整體波形圖表中,最終關閉TCP連接。
控制數據傳輸程序實現的目標是用戶可以在LabVIEW中輸入PID控制的參數,并實時傳輸給控制器進行控制調整,程序設計如下:
上位機程序設計中,控制數據幀的第一位為標識符“#”,由于控制數據位數不確定,因此每個數據之間采用“*”作為間隔標識符。建立TCP連接后,每次修改參數后向控制器發送(“#”+比例系數+“*”+積分系數+“*”+微分系數)的數據幀。
下位機程序設計中,建立TCP連接,recv(SOCKET s, uint8 * buf, uint32 len)函數將一組數據接收到一個暫存數組中。接下來進行標識符識別,若第一位為“#”,則進入PID數據接收循環中,將“#”號與接收字符串查詢到的首個星號之間的存儲為比例系數P,將首個“*”與查詢到的下個“*”之間的數據存儲為積分系數I,將第二個“*”與查詢到的第三個“*”之間的數據存儲為微分系數D。通過數據提取,可實現DSP對控制參數的接收。
磁懸浮控制器在線監控程序中需要對磁懸浮軸承的位移變量和功放的電流數據進行監測,并通過實時傳輸控制參數調整控制變量。圖5所示為一組位移監測數據和兩組電流監測數據的接收圖像,每個數據包包含1 000個監測數據。在該測試中,上位機與下位機間隔相距3 km,且數據傳輸穩定,環境干擾小。
接下來對每包大小與傳輸速率間的關系進行測試,結果如表1所示。隨著數據包包含數據個數的增長,傳輸速率也有明顯的增長,但數據實時性會受到影響。

圖5 三組磁懸浮平臺實際信號在線監測圖

表1 數據包大小與傳輸速率的關系
將監測數據接收與控制數據發送程序整合在一起,設計了在線監控平臺界面,如圖6所示。在該界面中,用戶可實時接收兩組位移數據及四組電流數據,用戶還可實時發送控制參數,并觀測控制參數變化對系統狀態的影響,實現在線監控功能。此外,用戶可將數據存儲在相應文件中,用于后續數據分析。

圖6 磁懸浮控制器在線監控界面
本文針對既有的磁懸浮控制器在線監控系統數據傳輸速率慢和傳輸距離短等不足,設計了基于工業以太網的磁懸浮控制器在線監控系統。首先對監控系統整體架構進行設計,接下來針對監測數據傳輸及控制數據傳輸軟件分別進行設計,上位機軟件采用LabVIEW編寫,下位機軟件采用CCS7.1.0編寫。最終將監測與控制軟件進行合并,設計了在線監控用戶界面,用戶可實時接收位移及電流數據并發送控制參數,觀測控制參數變化對系統狀態的影響,實現在線監控功能。經測試,該系統可進行遠距離數據傳輸,傳輸速率可達2.3 Mb/s,且受環境干擾小,滿足設計需求。