吳軍輝,劉西釘,宋連旺
東華大學信息科學與技術學院,上海 2101184
近年來,隨著社會生產的發展,產品測試要求的提高,傳統的測試系統由于本身所固有的諸多弊端變得越來越不適應現代測試要求。所以,測試試件抗疲勞程度的液壓伺服壓力脈沖測控系統非常具有研究意義。
系統能夠按照控制指令向試件輸入不同類型的壓力波形,進行壓力沖擊試驗。試驗過程中,系統要對試驗臺進行故障檢測和報警,同時需要對當前脈沖壓力值、溫度、波形以及試驗周期數等數據在計算機人機界面上實時顯示和記錄,并且能夠產生標準的試驗報表。上、下位機數據傳輸量大,實時性高,系統采用了以太網進行數據通訊。通過實踐證明,此系統具有良好的實時性和穩定性。
該液壓伺服測控系統主要由PC上位機、NI嵌入式測控系統compactRIO、電液伺服閥驅動電路、繼電器控制回路、傳感器和外設控制對象。圖1為系統組成結構框圖。

圖1 系統組成結構圖
系統上位機PC接收試驗者要求的壓力脈沖波形、高壓、低壓、頻率、試驗次數等等數據通過以太網送入cRIO-9073的嵌入式實時控制器, 根據要求產生虛擬壓力脈沖波形并離散化作為目標值,模塊cRIO-9215接收的壓力傳感器信號作為反饋值,對目標值和反饋值做PI控制算法產生的控制值經過模塊cRIO-9263和信號處理電路驅動電液伺服閥工作。并把壓力脈沖目標波形和反饋波形通過以太網送到上位機人機界面做實時顯示和分析。
NI compactRIO 是一種小巧而堅固的嵌入式測控系統,包含一個實時控制器,帶有可編程FPGA的4或8槽機箱,以及熱插拔工業I/O模塊,集成了以太網端口供上下位機通訊,這種低成本的嵌入式架構具有開放性,用戶可訪問底層硬件資源,可以快速定制獨立的或分布式的控制和采集系統。本系統采用的cRIO-9073集成了實時控制器和可以配置的8槽機箱,插槽上配置了4個模塊:NI cRIO-9215模塊配置接收4路模擬信號,分別是壓力傳感器反饋的4mA~20mA電流、位移傳感器反饋的0V~5V電壓、環境溫度和介質溫度的熱電偶反饋的2路4mA~20mA電流;NI cRIO-9263配置成輸出-10V~10V電壓模擬信號通過驅動電路來驅動電液伺服閥;NI-9477配置成32通道的0V或者24V的數字量輸出來驅動相應的繼電器和指示燈;NI-9426配置成32通道的0V或者24V的數字量接收布爾開關量。
本系統NI cRIO-9263數模轉換模塊輸出 -10V~10V的電壓信號,而電液伺服閥輸入-40mA~40mA的電流信號,此驅動電路如圖2。

圖2 電液伺服閥驅動電路圖
用Is表示流經電液伺服閥控制線圈的電流,從圖2容易得出:
由式(4)可以得到,流經電液伺服閥控制線圈的電流Is正比輸入電壓和調零電壓的綜合值,連接面板上的調零旋鈕,即可實現電氣調零。放大器的電流增益可由電位器R-ST1調節,事實上電阻R-S107的大小遠遠小于R-ST1,流經電阻R-S107的電流可以忽略。

cRIO-9073的嵌入式實時控制器采用的是LabVIEW圖形化編程語言進行設計,采用的是邏輯化結合模塊化設計思想。系統軟件邏輯流程先執行液壓伺服回路排空模塊與溫度控制模塊程序,其次手動執行液壓伺服PI控制模塊程序,最后自動執行液壓PI控制模塊程序,其中液壓伺服系統PI控制模塊是本系統的核心控制。
圖3為液壓伺服PI控制原理圖,下位機接受上位機PC壓力脈沖波形數據(波形選擇、高壓、低壓、頻率),控制器根據接受的試驗數據產生虛擬壓力波形,其中正諧波和三角波

圖3 液壓伺服系統PI控制原理圖
虛擬波形可以直接調用LabVIEW各自的波形生成VI即可,梯形波可以通過斜坡信號和調用2個for循環實現。其中PI控制算法使用的是增量型如圖4。

圖4 增量型PI控制算法
上位機軟件采用LabVIEW圖形化編程語言來完成控制平臺的設計。LabVIEW程序主要包括前面板(即人機界面)和方框圖程序。前面板用于模擬真實儀器的面板操作,框圖程序應用圖形編程語言編寫,其用于傳送前面板輸入的命令參數到下位機以執行相應的操作。此系統采用以太網傳輸方式,因cRIO-9073集成了以太網端口。所以不需要購買昂貴的數據采集卡就能簡便穩定地實現數據傳輸與實時控制,滿足了工業控制的一般要求。
LabVIEW前面板如圖5所示,采用模塊化設計思想,界面主要由以太網通訊模塊、數據讀取與轉換模塊、壓力脈沖波形顯示模塊、統計與存儲模塊等組成。用戶無需了解模塊內部的程序框圖便可直接通過鼠標在界面上操作,實現上位機數據采集、處理、顯示、報警、控制等功能。

圖5 液壓伺服壓力脈沖人機界面
3.2.1 以太網通訊模塊
為了保證計算機與下位機能實現以太網通訊,首先應進行以太網通訊參數初始化。根據cRIO-9073下位機設定方式,在程序框圖設置“打開TCP連接”VI的IP地址設置為192.168.0.110,遠程端口號為1025,超時時間為5000毫秒。在數據通信函數庫里面提供的節點不僅可以實現初始化配置,還可以對緩沖區數據進行讀寫控制。另外,在程序框圖所有的功能子模塊都需要在while循環內,同時用前面板的布爾量開關控制循環命令。同時在while循環內嵌入條件結構,分別為“連接”、“命令”、“結束”3種條件,其中“連接”條件為默認條件。只有“連接”條件由前面板的布爾開關量控制,“連接”條件結構無錯誤則執行“命令”條件。
3.2.2 數據讀取與轉換
系統試驗數據的讀寫通過“隊列操作”,在程序框圖中使用“獲取隊列引用”VI建立了和下位機同名的隊列。數據可以從“元素出隊列”VI的元素端口讀取下位機的數據,元素可以通過“有損耗元素入隊列”VI寫入下位機。TCP傳輸的數據是字符串類型,因此數據要通過“從字符串還原”VI轉換為相應的數據類型在界面上實時顯示。另外,數據的讀取需要在以太網通訊建立的while循環內。
3.2.3 數據顯示、統計與存儲模塊
LabVIEW是專為測量、分析數據并提交結果而設計,其強大的圖表和圖形組建體現出極大地優勢。波形圖表是記錄實時產生的波形,本系統采用波形圖表顯示3條波形;壓力設定值(壓力脈沖目標波形)、壓力反饋值、油缸位置(位移傳感器),故對從下位機讀取的數據進行簇解除捆綁,引用for循環實時的轉換為3個采樣浮點數。不僅如此,測試數據的快速寫入通過函數面板中Write To Measurement File Express VI加以配置,指定如何格式化文件以及保存數據內容。通過在前面板上設置產生報表開關,可以對保存的數據產生試驗報表。
本文以cRIO-9073測控系統為控制中心,使用NI公司的LabVIEW為上、下位機為支持軟件,完成液壓伺服壓力脈沖試驗臺測控系統的設計,采用LabVIEW程序開發系統,編程者不需要深究相關硬件的專業知識,也不需要考慮復雜的專門的驅動程序編寫,只需合理使用LabVIEW提供的控件和函數,縮短了系統的開發周期。實踐表明,該系統具有硬件電路設計簡單、實時性好、測試穩定、功能可擴展的特點。
[1]楊樂平.LabVIEW高級程序設計[M].北京:清華大學出版社,2003.
[2]李樂山.人機界面設計[M].北京:科學出版社,2004.
[3]郭天祥.新概念51單片機C語言教程[M].北京:電子工業出版社,2009.
[4]劉勝,張蘭勇,劉剛.LabVIEW2009程序設計[M].北京:電子工業出版社,2010.
[5]張凱,劉棟.LabVIEW虛擬儀器工程與開發[M].北京:國防工業出版社,2010.
[6]黃友銳,曲立國.PID控制器參數整定與實現[M].北京:科學出版社,2010.
[7]徐小強.基于虛擬儀器技術的壓力脈沖測試系統的設計與實現[D].浙江:浙江大學,2004.
[8]陳小軍,吳向東.基于液壓比例位置控制的數字PID設計與實現[D].四川:西南交通大學,2009.