摘 要:介紹了在VisualBasic6.0環(huán)境下實現(xiàn)數(shù)據(jù)處理的方法,數(shù)據(jù)處理是試驗臺控制系統(tǒng)一個重要組成部分,數(shù)據(jù)處理的準(zhǔn)確與否直接關(guān)系到試驗結(jié)果的可靠性和精度。
關(guān)鍵詞:VisualBasic6.0;數(shù)據(jù)處理;試驗臺
DOI:10.16640/j.cnki.37-1222/t.2017.13.016
目前國內(nèi)大部分汽車零部件試驗臺人機界面友好性欠佳,測試過程及結(jié)果分析主要依靠試驗工作人員的經(jīng)驗,精度不高,使用不方便。本汽車零部件試驗臺軟件,根據(jù)汽車行業(yè)標(biāo)準(zhǔn),設(shè)計了幾種數(shù)據(jù)分析方法,既方便用戶分析數(shù)據(jù),同時使試驗數(shù)據(jù)更直觀。
軟件基于Microsoft Visual Basic 6.0軟件,使用Visual Basic語言編程,主要應(yīng)用于汽車零部件性能檢驗試驗臺,可實時監(jiān)控試驗過程,實現(xiàn)試驗數(shù)據(jù)自動存儲,自動打印等功能,同時對試驗數(shù)據(jù)進行分析,從而給出準(zhǔn)確的試驗結(jié)果。
1 試驗臺軟件流程圖設(shè)計
汽車零部件試驗臺系統(tǒng)利用PLC及工業(yè)控制計算機完成各類信號的采集、管理、監(jiān)控。上位機監(jiān)控界面可實時顯示監(jiān)控參數(shù)、顯示報警記錄和打印表格曲線等功能。
試驗數(shù)據(jù)存儲為二進制文件,大大減少占用計算機硬盤空間,同時,試驗數(shù)據(jù)可以導(dǎo)出為excel格式,方便數(shù)據(jù)共享。存儲信息保存到數(shù)據(jù)庫中,方便用戶按照不同條件查詢數(shù)據(jù)。
試驗數(shù)據(jù)查詢,按照用戶設(shè)置查詢條件,在數(shù)據(jù)庫中檢索,如型號,編碼,檢驗員,試驗日期,試驗開始時間等,可以實現(xiàn)模糊查詢。
試驗數(shù)據(jù)分析,主要是將試驗存數(shù)的曲線數(shù)據(jù)進行分析、計算,找到用戶測試的數(shù)據(jù),或?qū)η€進行各種操作,方便用戶分析零部件故障。
2 試驗臺軟件功能實現(xiàn)
2.1 各檔位換檔力的查找
由于換檔機構(gòu)的特殊機械結(jié)構(gòu),所以在換檔過程中最大的換檔力并不是真正的換檔力,真正的換檔力為在最大換檔力前,換檔力上升斜坡的某一個力的小鋸齒頂點或者力保持不變的一個值。
Public Sub Force_C()
Tr(Cr_i) = Crave(Cr_jl(Cr_i) + 50).Force(Cra_i)
'最后波峰延時500ms看換檔力是否回初始
If Tr(Cr_i) > Abs(F_b) + 20 Then
Form1.T_Fmax.Text = 0
'換檔力力未回初始,換檔力無效
Cr_i = -1
End If
If Cr_i > 0 Then
'大于1個波峰,判斷 最后波峰 最后波谷-1
'最后波峰-1 間隔<200ms 換檔力力有效確定
If ((Cr_jl(Cr_i) - Cr_jl(Cr_i - 1)) < 30) And _
((Cr_jl(Cr_i - 1) - Tr_jl(Cr_i - 1)) < 30) Then
Form1.T_Fmax.Text = Cr(Cr_i - 1)
Else
Form1.T_Fmax.Text = Cr(Cr_i)
'未滿足判斷條件,認(rèn)定最后波峰即換檔力
End If
ElseIf Cr_i = 0 Then
'1個波峰,該波峰即換檔力
Form1.T_Fmax.Text = Cr(0)
End If
End Sub
2.2 曲線操作
試驗結(jié)束后,曲線存儲在計算機中,查詢后,用鼠標(biāo)拖動控件框選要顯示的曲線,可以實現(xiàn)曲線無極放大,同時可以實現(xiàn)曲線平移(左、右、上、下),撤銷操作或者重復(fù)撤銷的操作。對曲線的操作可以方便用戶分析故障點的數(shù)據(jù),進而分析零部件的問題所在。主要操作vb中的PictureBox控件,改變控件的Scale屬性,以達(dá)到放大、縮小、平移曲線的目的,以重復(fù)和左移曲線為例,程序如下。
If Amp_i(Ci) < zi_max Then 'repeat
Amp_i(Ci) = Amp_i(Ci) + 1
Amp_ZB_0
End If
If A_cs(Amp_i(Ci)).frX(Ci) > 0 Then 'left
Amp_i(Ci) = Amp_i(Ci) + 1
A_cs(Amp_i(Ci)).frY(Ci)=A_cs(Amp_i(Ci)-1).frY(Ci)
A_cs(Amp_i(Ci)).neY(Ci)=A_cs(Amp_i(Ci)-1).neY(Ci)
If (A_cs(Amp_i(Ci)-1).frX(Ci)-DeiTx/10) > 0 Then
A_cs(Amp_i(Ci)).frX(Ci) = Int(A_cs(Amp_i(Ci) _
- 1).frX(Ci) - DeiTx / 10)
A_cs(Amp_i(Ci)).neX(Ci) = Int(A_cs(Amp_i(Ci) _
- 1).neX(Ci) - DeiTx / 10)
Else
A_cs(Amp_i(Ci)).frX(Ci) = 0
A_cs(Amp_i(Ci)).neX(Ci) = Int(A_cs(Amp_i(Ci) _
- 1).neX(Ci) - A_cs(Amp_i(Ci) - 1).frX(Ci))
End If
Amp_ZB_0
End If
Private Sub Amp_ZB_0()
Fr_X = Amp_cs(Amp_i(Ci)).frX(Ci)
Ne_X = Amp_cs(Amp_i(Ci)).neX(Ci)
Fr_Y = Amp_cs(Amp_i(Ci)).frY(Ci)
Ne_Y = Amp_cs(Amp_i(Ci)).neY(Ci)
Pict1.Scale (Fr_X, Fr_Y)-(Ne_X, Ne_Y)
End Sub
3 結(jié)束語
Visual Basic語言編程簡單便捷,該數(shù)據(jù)分析軟件操作靈活方便,極大地方便了用戶對試驗數(shù)據(jù)進行分析處理。
參考文獻(xiàn):
[1] 黃津津.Visual Basic程序設(shè)計[M].2010(02):150-223.
[2] 臧懷泉.汽車變速器試驗臺監(jiān)控系統(tǒng)的設(shè)計[J].2008(10).
作者簡介:陳立秀(1985-),女,碩士,研究方向:電氣工程及其自動化,電工理論與新技術(shù),汽車電子。