3.7.3 软件设计过程简述
采集模块软件的职能是控制三维电机运动,找到被测器件八个象限的信号最大值并加以存储,完成采集过程。
首先简述采集过程的软件设计。
根据3.2所述测试对象的特点,外四象限的光感面较大,实验表明在很大一个范围内,测试返回的数据变化程度不大。因此,为了提高效率,将外四象限的采集过程设计为先把器件移动到估计点(此估计点通过大量实验获得),然后在估计点附近做一个小范围的扫描找到其附近的一个最大值作为本次测试返回数据。
该小范围扫描设计如下:以估计点为中心开始进行扫描,每步进一步(由步进电机带动)将执行一次检测并返回一次测试数据,定义的移动步长是根据用户要求的系统灵敏度而设计。首先向某一轴方向移动,比较每步进一步所返回的测试数据,当测试值开始从大变小时,记录该测试点为该轴最大值点。然后以该测试点为中心进行下一轴的测试,完成x和y轴测试后,记录该次测试的最大值点并且返回示波器读回的最大值。这种扫描算法简称为十字扫描。事实上,十字扫描法的可行性是有条件的,条件就是器件必须是沿某一轴呈线性变化,并且最大值惟一。经过大量测试发现,只要是合格的器件都满足这一条件,因此十字扫描是可行的。
根据3.2所述测试对象的特点,内四象限光感面较小,虽然所需要测量的范围缩小了,但是与外四象限相比较,难点在于估计点的选取。经过大量测试发现,器件的外四象限的一致性很好,也就是说同一批次的器件可以选取相同的估计点来开始测量。而器件的内四象限的一致性就不是很好,因此不能采取直接定估计点的方法来测试内四象限的数据。考虑到器件的对称性,选择某一内四象限先进行测量,测量算法首先是用弓型扫描找出一个达到测试最低标准的测试点,然后在该点附近进行十字扫描,找出该象限的最大值点,然后将此最大值点作为估计点,利用对称性,分别测试其他三个内四象限的最大值。这里使用的弓型扫描就是沿弓字对一个范围进行全面扫描,直到扫描出的数据达到要求才停止扫描。
采集模块的软件部分的核心就是上述两种扫描方式,相比较而言,十字扫描具有效率高,可估计步进步数等优点,而弓型扫描的惟一优点是不需要给出估计扫描初始点。
在采集到信号之后,软件将完成对采集数据的存储。将采集回的数据存储到一个数据库,由于数据较少,处理也比较简单,故选择ACCESS数据库。数据库内包含十二张基本表。
系统在一次自动采集完毕之后,会将采集的数据记录到数据库中相应的字段中。当用户需要计算本次测试的器件是否合格时,分析模块中的计算模块将会依次从数据库中调用出存储的数据,然后代入计算某项指标所需要的公式,并显示最后的计算值。当所有指标均计算完毕,用户需要进行统计时,可以调用统计模块,统计模块包含曲线、图表、图形三种统计方式。
最后当用户有打印需求时,可以调用打印模块,将用户需要指标的数据打印在用户自定义的表格中。
4 系统的故障诊断
系统针对的是大批量光感器件的测试,在一次测试过程中,用户只需更换器件即可。大批量的测试对系统的故障自诊断就有了要求。系统中对精度要求较高的部分是采集模块的寻位部分,因此在设计过程中,启动软件时对SC300控制箱进行自动归位就显得很有必要。但是,当系统经过长时间未校准或者经过猛烈撞击之后就会产生明显的系统误差,这种系统误差是不能通过对控制箱的复位来解决的,为了系统的可靠性,设计时在软件中加入人工设定设备参数,通过人工校正,得出系统误差,再通过设定设备参数消除这个误差。
系统软件的需求调研中,得知数据采集对运行时间的要求需要有较灵活的反应,所以系统设计的时候可以自行设定数据采样的次数,采样的次数越少,采集数据的时间就越短。系统其他部分没有特别时间的要求,不过各模块都能做出很快速的反应。在设计过程中,发现采样时间需要和不同的示波器进行延迟配合,否则系统会出错或者响应很慢。
5 结 语
经过大批量光感器件测试之后,证明本系统具有很高的精度和响应速度,测试时间缩短了50%,并且使测试需要的工作人员由两名减为一名,大大提高了工作效率。另外分析模块提供的统计和打印功能也简化了工作量,提高了效率。