周硯文 藥陵州 候向民
摘 要:為了提升現(xiàn)有某靜剛度試驗臺的效率及測量精度,使用Visual BASIC的Hook模式編程開發(fā)了通用零部件靜剛度測量軟件,擴展試驗臺架的功能并通過多個試驗驗證了臺架的可靠性。此外該設計思路也為同類臺架功能的升級提供了參考。
關(guān)鍵詞:零部件靜剛度;Hook模式;Visual BASIC
中圖分類號:U467? 文獻標識碼:A? 文章編號:1671-7988(2020)15-92-03
Abstract: In order to improve efficiency and measurement precision of current stiffness measurement rig, general compon -ent stiffness measurement software is developed using Visual BASIC with hook pattern programming, the rig capacity is expanded and the reliability is validated via multiple measurements.Besides that, such design pattern can also provide reference for upgrading of other similar test rigs.
Keywords: Component stiffness; Hook pattern; Visual BASIC
CLC NO.: U467? Document Code: A? Article ID: 1671-7988(2020)15-92-03
引言
在零部件設計過程中,靜剛度性能是關(guān)鍵的設計指標之一。靜剛度的測量一般在靜剛度試驗臺上開展。其通用結(jié)構(gòu)一般由力加載裝置和位移檢測裝置組成,被試件安裝后,在彈性范圍開展緩慢力加載,得到的力增量與相應位移的增量之比并繪制曲線,作為最終的結(jié)果。
目前使用靜剛度試驗臺開展試驗時,需手動進行測量,布置力加載電機和位移傳感器后,進入靜剛度試驗臺的測試界面(如圖1所示),用鼠標點擊按鈕控制電機加/卸載(電機下降為施加拉力,上升為釋放拉力),每到達一個目標點后,需先點擊電機控制按鈕暫停電機動作,再手工記錄力和位移的結(jié)果。
該方法需要人為操作按鈕,精度不高且有失誤風險。如圖2所示,在某零部件靜剛度測量過程中(0N-800N加/卸載,1個位移通道),過程中只能設定約8個加載力目標點進行觀測,剛度曲線變化趨勢不明顯。當所需觀測的位移通道變多時,手工記錄結(jié)果還容易出現(xiàn)疏忽。因此對于現(xiàn)有靜剛度試驗臺進行功能擴展是很有必要的。
1 通用零部件剛度試驗臺功能擴展解決方案
1.1 軟件總體設計思路
經(jīng)過對現(xiàn)有測量過程的分析,使用Visual BASIC中Hook模式編程,完成了通用零部件剛度軟件的開發(fā),擴展了現(xiàn)有臺架的功能。
軟件功能結(jié)構(gòu)圖如圖3所示,由初始化、過程監(jiān)控和電機控制三個模塊組成。初始化模塊用于測量通道選擇(目前能監(jiān)測1個力通道和4個位移通道)、最大加載力(電機拉力加載)和采樣間隔設定;過程監(jiān)控用于實時測量各通道數(shù)據(jù)并將其保存;電機控制模塊用于設定電機加/卸載控制。
軟件流程圖和軟件界面如圖4和圖5所示。以拉力加載為例,在樣件上安裝力加載電機和位移傳感器后,首先打開現(xiàn)有剛度試驗臺測試界面(如圖1所示),接著啟動通用零部件剛度軟件(如圖5所示)。在軟件中完成傳感器通道選擇、最大加載力和采樣頻率設定后,點擊開始采樣按鈕,軟件可自動操作剛度試驗臺的測試界面相關(guān)按鈕,包括控制電機加/卸載,實時采集各個通道的傳感器數(shù)據(jù)并顯示/保存。試驗結(jié)束后點擊停止采樣,軟件能自動輸出結(jié)果,兼容常用電子表格軟件,供后期處理使用。
1.2 Hook模式的使用
1.2.1 傳感器數(shù)據(jù)監(jiān)測子程序設計
在原測量過程中,需要手動點擊按鈕操作電機、肉眼觀察各個傳感器通道數(shù)值。而在Windows中以上行為都可以用消息機制從軟件上實現(xiàn)。在Visual BASIC中通過Hook模式編程對這些消息進行處理,就可以用軟件模擬上述動作,實現(xiàn)自動化測量效果。
如圖1所示,試驗過程中各傳感器數(shù)值都會顯示在對應的文本框中。通過使用Hook模式中的FindWindow, Find WindowEx,SendMessage 發(fā)送WM_GETTEXT等消息能得到文本框內(nèi)容,可以將所關(guān)注通道數(shù)據(jù)從其對應的文本框中讀出。此外通過timer控件,可設定采樣時間,實現(xiàn)不同頻率下的傳感器數(shù)據(jù)定時采集。其流程圖如圖6所示。
1.2.2 電機操作按鈕控制子程序設計
在測量剛度時,需要用電機產(chǎn)生拉力。如圖1所示,電機控制由“上升”、“下降”、“電機運動”、“電機停止”四個按鈕的點擊實現(xiàn)(下降為施加拉力,上升為釋放拉力)。先通過得到手動測試窗體句柄后,使用FindWindowsEx通過各按鈕的標題得到其對應的句柄,最后使用PostMessage函數(shù)向這些句柄發(fā)送WM_BMCLICK等消息實現(xiàn)模擬鼠標點擊,可實現(xiàn)電機的控制加載。當加載力達到設定最大值時,同理可控制電機開始卸載回零。其流程圖如圖7所示。
1.3 輸出數(shù)據(jù)格式的定義
數(shù)據(jù)采集信息中一般包含日期、時間、采樣點序號、力/位移傳感器通道數(shù)據(jù)。使用Visual BASIC的文件功能進行編程,在試驗完成后可按照常用電子表格的相關(guān)兼容格式輸出文件,供后期處理。采樣的數(shù)據(jù)示意格式如表1所示。
2 試驗臺功能擴展后的使用效率
圖8為某零部件剛度的測量結(jié)果(一個力通道和一個位移通道,加載過程為0N-400N,負號表示為拉力),共采集到約1000多個點,且試驗數(shù)據(jù)文件輸出后可用常用電子表格文件打開。相比擴展前只能采樣中間個別目標點的問題,功能擴展后的采樣點數(shù)明顯提高,且繪制曲線連續(xù)平滑,能準確反應剛度曲線的趨勢。最終生成剛度曲線如圖9所示,與CAE分析趨勢一致。
3 結(jié)論
本文基于Hook模式編程,設計了通用零部件剛度測量軟件,擴展了現(xiàn)有剛度試驗臺的功能。功能擴展后能夠?qū)崿F(xiàn)靜剛度的多通道自動測量,提高效率并能顯示曲線變化細節(jié)趨勢。投入使用后,對多種零部件剛度進行了測量,結(jié)果與CAE分析一致,效果良好。同時該臺架的擴展思路也可為其它類似功能臺架的能力擴展提供參考。
參考文獻
[1] 王棟.Visual BASIC程序設計[M].北京:清華大學出版社,2015.
[2] 布魯斯·約翰遜.Visual Studio 2017高級編程[M].北京:北京:清華大學出版社,2018.