开篇:润墨网以专业的文秘视角,为您筛选了一篇基于Visual Basic的试验数据处理范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!
摘 要:介绍了在VisualBasic6.0环境下实现数据处理的方法,数据处理是试验台控制系统一个重要组成部分,数据处理的准确与否直接关系到试验结果的可靠性和精度。
关键词:VisualBasic6.0;数据处理;试验台
DOI:10.16640/ki.37-1222/t.2017.13.016
目前国内大部分汽车零部件试验台人机界面友好性欠佳,测试过程及结果分析主要依靠试验工作人员的经验,精度不高,使用不方便。本汽车零部件试验台软件,根据汽车行业标准,设计了几种数据分析方法,既方便用户分析数据,同时使试验数据更直观。
软件基于Microsoft visual basic 6.0软件,使用Visual Basic语言编程,主要应用于汽车零部件性能检验试验台,可实时监控试验过程,实现试验数据自动存储,自动打印等功能,同时对试验数据进行分析,从而给出准确的试验结果。
1 试验台软件流程图设计
汽车零部件试验台系统利用PLC及工业控制计算机完成各类信号的采集、管理、监控。上位机监控界面可实时显示监控参数、显示报警记录和打印表格曲线等功能。
试验数据存储为二进制文件,大大减少占用计算机硬盘空间,同时,试验数据可以导出为excel格式,方便数据共享。存储信息保存到数据库中,方便用户按照不同条件查询数据。
试验数据查询,按照用户设置查询条件,在数据库中检索,如型号,编码,检验员,试验日期,试验开始时间等,可以实现模糊查询。
试验数据分析,主要是将试验存数的曲线数据进行分析、计算,找到用户测试的数据,或对曲线进行各种操作,方便用户分析零部件故障。
2 试验台软件功能实现
2.1 各档位换档力的查找
由于换档机构的特殊机械结构,所以在换档过程中最大的换档力并不是真正的换档力,真正的换档力为在最大换档力前,换档力上升斜坡的某一个力的小锯齿顶点或者力保持不变的一个值。
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 间隔
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)
'未满足判断条件,认定最后波峰即换档力
End If
ElseIf Cr_i = 0 Then
'1个波峰,该波峰即换档力
Form1.T_Fmax.Text = Cr(0)
End If
End Sub
2.2 曲线操作
试验结束后,曲线存储在计算机中,查询后,用鼠标拖动控件框选要显示的曲线,可以实现曲线无极放大,同时可以实现曲线平移(左、右、上、下),撤销操作或者重复撤销的操作。对曲线的操作可以方便用户分析故障点的数据,进而分析零部件的问题所在。主要操作vb中的PictureBox控件,改变控件的Scale属性,以达到放大、缩小、平移曲线的目的,以重复和左移曲线为例,程序如下。
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 Y束语
Visual Basic语言编程简单便捷,该数据分析软件操作灵活方便,极大地方便了用户对试验数据进行分析处理。
参考文献:
[1] 黄津津.Visual Basic程序设计[M].2010(02):150-223.
[2] 臧怀泉.汽车变速器试验台监控系统的设计[J].2008(10).
作者简介:陈立秀(1985-),女,硕士,研究方向:电气工程及其自动化,电工理论与新技术,汽车电子。