劉巖石,張 明,周純杰
(華中科技大學 自動化學院,武漢 430074)
拉力試驗機是一種對材料進行力學特性測試的設備,其在工業(yè)場合有著十分廣泛的應用。工業(yè)生產中各種材料、零部件、構件乃至整機往往都需要經過試驗才能確定它們的力學特性,在了解了這些產品的力學特性之后,才能評價該產品的優(yōu)劣[1]。比如,絕大部分的鋼鐵交易是以拉力試驗機試驗結果作為交貨條件的。然而,目前在拉力試驗機領域,有相當一部分拉力試驗機仍然采用人機界面屏作為控制器,其功能簡陋,處理速度慢,界面不夠友好,這嚴重制約著工作效率。本文介紹的一種基于計算機的拉力試驗機控制系統,能夠充分利用計算機的優(yōu)勢,具有控制效果好、功能豐富、界面友好的特點,大大簡化了拉力試驗機現場操作人員的使用,提高了工作效率。
根據實際調研分析,現給出本拉力試驗機關鍵的功能指標:
1)可對金屬、非金屬、復合材料等進行試驗,最大承受拉力達50KN。
2)具備手動試驗、自動試驗功能,其中自動試驗可以實現對材料的拉伸和耐受測試。
3)能夠實時顯示力值、位移信息,并能夠繪制力-時間、力-位移曲線。
4)具有過載保護、位移限位功能。
5)具有保存試驗結果,瀏覽歷史試驗記錄功能。
拉力試驗機控制系統包括計算機、PLC、伺服系統、拉伸機構和稱重傳感器等,其結構可如圖1所示。其中,計算機是該控制系統的核心,完成人機交互、試驗控制、實時監(jiān)控以及試驗總結功能;PLC用于輸出脈沖,驅動伺服系統,采集稱重傳感器信號以及捕捉表征材料形變量的AB相脈沖;伺服系統是拉力試驗機的動力系統;拉伸機構用于試件夾持和張拉,是拉力試驗機的主體結構[2];稱重傳感器是拉力試驗機控制系統的反饋部件,用于將材料承受的拉力轉換為電信號,該電信號經PLC AD模塊轉換為數字量后傳遞給計算機控制軟件。
圖1 拉力試驗機控制系統構成圖
拉力試驗機控制系統是一個閉環(huán)控制,其工作原理如下:
1)計算機結合用戶設定的試驗目標和PLC上傳的反饋量,控制試驗進行,輸出控制量。
2)PLC接受計算機給出的控制量,進行脈沖輸出驅動伺服系統運轉,伺服系統通過拉伸機構對試件進行試驗。
3)稱重傳感器將試件承受力轉換為電信號、伺服系統將材料形變量轉換為AB相脈沖量。
4)PLC接受AB相脈沖和稱重傳感器信號并進行處理后,上傳計算機,供其進行反饋控制。
本拉力試驗機控制系統屬于計算機實時控制系統,其核心在于計算機上試驗機控制軟件。該軟件在Windows平臺上利用VC++ MFC進行開發(fā)。MFC是微軟公司提供的基礎類庫,集成了大量的界面開發(fā)相關類,大大簡化了界面開發(fā)的過程,使得開發(fā)者能夠將主要精力集中在問題處理上。下面在界面設計、程序架構分析以及類的設計這三個方面對軟件進行分析。
拉力試驗機控制軟件的設計必須服從拉力試驗機需求,與此同時,設計的控制軟件界面能夠被用戶接受,則必須遵循人機界面設計的一般規(guī)則。這里首先給出拉力試驗機軟件主界面,如圖2所示。下面敘述拉力試驗機控制軟件需要實現的功能,然后根據其功能來具體分析界面的設計。
圖2 拉力試驗機計算機控制軟件主界面
2.1.1 試驗機控制軟件功能分析
根據工業(yè)現場對拉力試驗機功能的要求,可得試驗機控制軟件必須實現實時監(jiān)控功能、材料試驗功能以及試驗總結功能,現具體敘述如下。
1)實時監(jiān)控功能
在進行材料試驗時,試驗者需要清晰的查看當前材料試驗的情況。拉力試驗機控制軟件一般提供兩種監(jiān)控試驗的方式,一種是實時數據顯示面板,一種是實時曲線顯示面板。實時數據顯示面板顯示試件形變量、承受拉力以及承受拉力最大值信息,實時曲線顯示面板顯示試件承受拉力-試驗時間的曲線信息。通過這兩種方式,用戶可對當前試驗情況有比較清晰的認識。
2)材料試驗功能
拉力試驗機控制軟件一般需要提供手動試驗和自動試驗兩種試驗方式。其中,手動試驗下,用戶可以自己選擇拉伸材料的方向和速度。該試驗方式比較靈活,也可以用于自動試驗之前的拉頭位置調整。自動試驗方式是在用戶設定好試驗目標之后,軟件可以不在用戶干預下自動進行試驗。自動試驗方式包括兩種十分普遍的試驗方式:拉伸試驗和耐受試驗。拉伸試驗為多段拉伸,是一種最基本的試驗方式。該方式下,用戶需要設定每一段的拉伸起始力、結束力以及拉伸時間。耐受試驗用于測試材料的可靠性,試驗時間一般比較長。該方式下,用戶需要設定力加載速率、力保持負荷以及保持時間參數。
3)試驗總結功能
試驗完成后,用戶一般需要記錄材料試驗相關信息。該軟件需要提供的試驗總結功能包括實時曲線保存和打印功能、試驗報表填寫以及打印功能。
2.1.2 試驗機控制軟件界面設計
在明確了試驗機軟件需要實現的功能后,需要合理的設計界面。拉力試驗機界面設計需要遵循界面友好、信息直觀呈現、符合現場操作人員使用習慣、安全性提示以及界面一致性[3]等原則。結合拉力試驗機功能和界面設計原則,拉力試驗機控制軟件主界面設計可如圖2所示。
拉力試驗機計算機控制軟件主界面中包括顯示面板、實時曲線面板以及材料試驗面板。其中,顯示面板和實時曲線面板可以直觀的將當前材料試驗信息呈現給用戶。試驗面板處顯示的試驗方式根據用戶在菜單欄-控制方式中選擇的材料試驗方式的不同而不同。限于篇幅,這里詳細的界面設計便不再給出。
本拉力試驗機控制軟件采用多線程技術實現。雖然,多線程比單線程要復雜,但是引入多線程后,可以使得程序模塊化更好、程序并發(fā)執(zhí)行,執(zhí)行效率也更高。用戶交互模塊單獨設置一個線程,也保證了界面操作的流暢。該控制軟件需要實現的任務有人機界面交互、材料試驗控制、與下位機PLC通信功能等。因此,這里將該試驗機控制軟件劃分為三個線程:界面線程(主線程)、試驗控制線程、通信線程。三個線程之間的關系如圖3所示。
下面分別對以上三個線程進行介紹:
界面線程:也就是主線程,負責人機交互,實現用戶配置、試驗監(jiān)控功能等。該線程是控制線程與通信線程交互的媒介,其承接了控制線程與通信線程??刂凭€程將控制信息傳遞給主線程后,主線程生成通信任務,并傳遞給通信線程。通信線程將與PLC通信返回的數據傳遞給主線程,主線程利用該數據一方面進行顯示,完成試驗監(jiān)控功能;另一方面?zhèn)鬟f給控制線程,進行閉環(huán)反饋控制。
圖3 試驗機軟件架構圖
控制線程:該線程實現材料試驗控制功能,其從界面線程得到反饋數據,結合用戶設定的材料試驗目標,進行閉環(huán)反饋控制,并給出控制信息。該線程時刻監(jiān)測試驗進行狀態(tài),當試驗結束條件滿足時,自動結束當前材料試驗。
通信線程:該線程負責接受界面線程給出的通信任務,與PLC發(fā)起通信,并將通信結果返回給界面線程。其傳遞給界面線程的數據用來在界面線程進行數據監(jiān)控(實時曲線和實時數據顯示)和傳遞給控制線程實現反饋控制。
該試驗機軟件采用C++作為編程語言,并借助MFC單文檔程序模板實現。C++是一種面向對象的編程語言,具有抽象、封裝、繼承和多態(tài)的特點[4],其程序設計以類的設計為中心,這符合人們思考事物的方式,使得編程大大簡便。故該拉力試驗機軟件實現的關鍵點在于分析軟件中包含的對象,并合理設計類。由上節(jié)軟件功能分析可知,本軟件主要包括手動試驗方式、自動試驗方式(拉伸試驗和耐受試驗)、實時曲線監(jiān)控、實時數據顯示、與PLC通信、試驗控制算法等模塊,這些模塊便是該試驗機軟件需要處理的對象,因此本軟件關鍵類的設計可如表1所示。
表1 試驗機軟件關鍵類設計
拉力試驗機計算機控制軟件提供的材料試驗方式,需要采用一定的控制算法來實現。這里,采用改進的經典PID控制算法來進行試驗控制。根據圖1可知,整個拉力試驗機系統構成一個大的閉環(huán)反饋控制,現將圖1轉化為如圖4所示的控制系統結構圖。
圖4 拉力試驗機控制系統結構圖
其中,計算機相當于PID控制器。PLC起到兩方面作用:一是進行脈沖輸出,驅動伺服系統;二是對測量元件輸出的信號進行處理后,回傳計算機控制軟件進行PID控制。伺服系統是執(zhí)行機構,直接產生拉力拉伸材料。測量變送器包括光電編碼器、力傳感器。
PID控制是自動控制領域中產生最早、應用最廣的一種控制方法,其不需要精確的控制系統模型,適用于系統模型難以確定的場合[5]。本拉力試驗機便采用改進型PID進行材料試驗控制。PID包括三個環(huán)節(jié):比例環(huán)節(jié)、積分環(huán)節(jié)以及微分環(huán)節(jié)。其控制結構原理圖如圖5所示。
圖5 PID控制結構原理圖[1]
其連續(xù)型PID控制表達式為:
其中,KP為PID比例環(huán)節(jié)系數,Ti為PID積分時間,Td為PID微分時間,r(t)為給定控制目標,c(t)為反饋量,e(t)為控制目標與反饋量之間的偏差,此作為PID控制器的輸入,u(t)為PID控制器的輸出。在實際的拉力試驗機控制系統中,反饋量c(t)為實際測試得到的拉力值和材料形變量,u(t)為脈沖輸出頻率和電機轉動方向。
連續(xù)型PID經過離散化后,得到如下應用表達式:
其中,u(k),e(k),r(k)分別為u(t),e(t),r(k)的周期采樣值,為積分時間常數,為微分常數,T為采樣周期。
對于PID比例環(huán)節(jié)系數KP、積分時間Ti以及微分時間Td的取值,需要在現場進行參數整定。一般在實際應用中,采用經驗試湊法進行參數整定[6]。首先調節(jié)比例環(huán)節(jié)系數,其次調節(jié)積分時間系數,最后調節(jié)微分時間系數。在參數調節(jié)過程中,結合試驗實時曲線與設定的控制目標,根據PID三個環(huán)節(jié)的作用,綜合進行參數整定。對于采樣周期T的選取,亦應與PID整定綜合考慮,進行合理取值。
在拉力試驗機控制系統中,執(zhí)行機構為伺服系統。我們知道伺服電機啟動時,啟動電流較大,如果頻繁的關閉-啟動,則會導致電機發(fā)熱量過大,電機會有燒壞的危險,并且伺服電機頻繁的開關也會導致拉力試驗機機械結構較為嚴重的磨損。因此,我們需要對PID控制器做出適當的改進,在能夠很好的控制材料試驗進行的前提下,避免伺服電機頻繁的開啟關閉。改進方法如下:
其中,誤差e的取值需要根據拉力試驗機試驗對象的誤差要求和實際的控制效果來決定。
本文敘述的拉力試驗機控制系統已經在山東某拉力試驗機現場進行了實際的測試,其控制效果良好。拉力試驗機控制系統控制效果好壞由其試驗機軟件提供的材料試驗方式的控制效果決定,而材料試驗方式控制效果的好壞則直接由用戶設定的試驗目標和實時監(jiān)控曲線的匹配程度體現。因此,下面以鐵塊作為試件,通過對比分析拉伸試驗和耐受試驗的實時監(jiān)控曲線與其控制目標的匹配程度來驗證該控制系統的控制效果。
在拉伸試驗開始之前,利用手動試驗方式調整好拉頭,并夾持住鐵塊,選擇拉伸試驗方式,設定試驗目標,開啟試驗。本拉伸試驗設定為三段拉伸,具體的試驗目標如表2所示。
表2 拉伸試驗控制目標
以上每一段的參數含義為:拉伸材料,使其承受的拉伸力在持續(xù)時間之內由起始力達到結束力,各段依次執(zhí)行,所有段執(zhí)行完畢后,試驗結束。本試驗控制目標下,對應的力值-時間監(jiān)控曲線如圖6所示。
圖6 拉伸試驗 力值-時間曲線
對比該拉伸試驗的控制目標和力值-時間曲線可知,該實時曲線很好的擬合了設定的試驗目標。故該拉伸試驗控制效果良好。
在進行耐受試驗之前,首先利用手動試驗方式調整好拉頭位置,并夾持住試件,而后選擇耐受試驗方式,并配置好試驗目標,開啟試驗。耐受試驗控制目標設置如表3所示。
表3 耐受試驗控制目標
以上參數的含義為:拉伸材料,使得材料承受力按照設定的力加載速度增加,到達設定的保持負荷后,保持此負荷一定的保壓時間,保壓時間到后,試驗結束。本試驗目標下,對應的力值-時間曲線如圖7所示。
圖7 耐受試驗 力值-時間曲線
對比該耐受試驗控制目標和力值-時間曲線可知,該實時曲線很好的擬合了設定的控制目標,故耐受試驗控制效果良好。
根據以上拉伸試驗和耐受試驗的控制效果分析可得,本文所提出的拉力試驗機控制系統控制效果良好,能夠很好的完成材料試驗。
本文介紹了基于計算機控制的拉力試驗機控制系統,首先分析了拉力試驗機系統結構,其次重點闡述了拉力試驗機控制軟件的設計,其采用帶死區(qū)的PID作為核心控制算法,最后給出拉力試驗機現場實際的測試效果,表明該拉力試驗機控制系統控制效果良好,能夠滿足生產實踐的需要。此外,該拉力試驗機軟件具有界面友好、支持試驗結果保存、方便用戶操作、試驗信息直觀呈現的特點,這有助于提高現場操作人員工作效率。隨著計算機技術和控制技術的發(fā)展,計算機控制的拉力試驗機將會有越來越廣泛的應用。
[1] 張霖.電子萬能材料試驗機閉環(huán)控制軟件的研究[D].北京:北方工業(yè)大學,2007:1-32.
[2] 朱江新,陽平,夏天,等.基于PCI-1711數據采集卡的拉力試驗機實時控制系統[J].設計與研究,2010(5):81-83.
[3] 朱詩生,張惠珍.人機交互軟件界面設計[J].信息技術,2009(5):36-39.
[4] 譚浩強.C++程序設計[M].北京:清華大學出版社,2004:232-236.
[5] 任俊杰,李永霞,李媛,等.基于PLC的閉環(huán)控制系統PID控制器的實現[J].制造業(yè)自動化,2009,31(4):20-23.
[6] 何躍,林春梅.PID控制系統的參數選擇研究及應用[J].計算機工程與設計,2006,27(8):1496-1498.