数显式推拉力计自动检测的研究与设计
为了提高检定效率, 减轻检定过程中的工作强度, 提高检定过程中的连续性、稳定性和安全性, 有必要设计一套智能控制系统用于推拉力计的检定工作。本文通过对推拉力计的检定过程的研究, 利用智能控制技术设计一套全自动控制系统来操控整个推拉力计的检定流程, 利用图像识别技术最终输出检定数据, 实现检测过程的智能化、自动化。
一、推拉力计的检定
推拉力计的检定是依据JJG455-2000《工作测力仪检定规程》来进行的。根据检定规程的要求需要对回零误差或最大零点方位偏差、分度数和相对分辨率、测力仪示值检定 (示值误差、重复性、滞后) 等项目进行检定。而对力标准器的要求是根据测力仪的规格分别选用相应量程的标准砝码、标准测力仪、标准测力杠杆, 材料试验机或力标准机作为检定测力仪的力标准器。力标准器的准确度级别至少应优于被检测力仪准确度等级的3倍。其中规程还有对加力条件的要求:
1. 测力仪检定前按说明书要求进行准备。
2. 测力仪的安装应保证其受力轴线与力标准器加力轴线相重合。
3. 压向测力仪上、下承压垫应具有足够的刚度, 上承压垫的球面灵活光滑, 下承压垫具有定位功能。
4. 拉向测力仪的两端使用环、铰连接件, 灵活可靠。
根据对力标准器的分析, 如果选用准确度级别合适的力值传感器借助类似材料试验机的电动加力机构来检定推拉力, 可以通过设计软件控制的智能控制系统实现检定过程的全自动控制, 以提高检定效率。
二、自动检定的设计
1. 自动检定装置的硬件设计
我们设计了一台材料试验机, 推拉力计安装在上横梁上, 同时将高准确度的标准力值传感器与被测仪器相连, 通过下横梁的向上或向下移动来对被测仪器进行加载荷, 如图1所示。
检定装置由工控机控制, 而工控机的主要功能是接收来自计算机软件的指令, 并进行反馈, 同时进行数据输出、电机控制、报警提示等。该装置的控制系统原理设计如图2所示。
图1 检定加载装置结构设计图
2. 自动检定的流程设计
自动检定系统的流程设计主要依据推拉力计的检定规程而制定, 其中加入对试验时读取的数据作出的判断, 实现对检定过程的智能控制。流程如图3所示。
图2 自动检定装置原理图
图3 自动检定系统流程图
3. 自动检定控制系统的软件设计
自动检定控制系统从流程上来说可分为四部分:检定控制、数据采集、图像识别和结果判断。本文中的自动检定控制系统使用C#语言来编写。
(1) 检定控制
检定装置是由工控机所控制, 而这些控制程序一般厂家都不会主动暴露接口给外部程序所调用。因此, 为了解决兼容性问题, 我们可以利用最简单的TXT文档作为自动检定控制系统程序与工控机控制程序的交流文件, 以便实现控制。
在文档中, 需要包含两个基本要素:工控机待执行动作、标准力值传感器当前力值。除了这两个要素外, 其他参数则可根据实际项目的需要来指定。自动检定控制系统程序如需对检定装置进行控制, 就向TXT文档中写入希望工控机执行的指令;而当工控机执行完毕需要反馈信息时, 则写入当前的标准力值。
在我们的自动检定控制系统程序中, 我们定义了一些常用的指令:
(1) Start———开始测试
(2) Stop———停止测试
(3) Pause———暂停
(4) Zero———清零
(2) 数据采集
被测仪器的数据采集使用摄像头拍照的办法来获取, 而在自动检定控制系统程序中经由摄像头获取图像的方式有很多种, 一般可采用调用Windows内部函数接口实现。但由于获取的图像还需后续处理, 为了简化这一工作, 本文中的自动检定控制系统程序使用AForge框架中的控件来实现这一功能。
AForge框架中的视频控件使用起来很简单, 只需在Win Form界面中放入Video Source Player控件, 并在控件初始化时设置其属性Video Source的值, 其后调用方法Start即可开启摄像头。当系统需要拍照保存仪器数值时, 推荐使用Draw To Bitmap方法, 将当前控件的视频帧保存为Bitmap。
为了方便图像识别, 可在拍照前做识别区域的框选, 也就是在Video Source Player控件中加入鼠标的点击事件:
(1) Mouse Down时, 记录当前坐标。
(2) Mouse Move时, 记录终点坐标, 同时在Video Source Player控件上显示框选的区域。
(3) Mouse Up时, 保存前两坐标, 并计算出区域的长度及宽度。
经过框选后, 拍照保存的Bitmap可先进行预处理, 直接裁剪出框选区域, 这样一是缩小了图片的大小, 二是去除了会干扰图像识别的不利因素。
(3) 图像识别
从摄像头拍摄获取到的图片不能直接拿来做图像识别, 需要对图片进行预处理 (包括灰度处理、提高对比度、降低噪声等) , 然后再进行二值化后才得到最终可拿来做识别的图像。
对于二值化后的图像识别, 有多种方法。在经过多种方法的尝试和比较后, 本文选择使用的是图像比较法。对于每一种要识别的仪器设备, 先将该设备所显示的0到9的数字及符号拍成图片, 经过二值化处理后形成基础图像识别库, 保存至数据库或文件系统中。而在做识别的过程中, 只要将待识别图像与所有保存的图像进行一次比较即可。
比较的方法可利用前面我们所用到的AForge框架中的AForge.Imaging.Exhaustive Template Matching类。该类的方法Process Image可获取两个Bitmap的相似度, 经过一轮的比较, 我们将相似度最高的那个图像作为识别结果输出。
(4) 结果判断
在定义检定流程的过程中, 可以为每个步骤都设置一个阈值条件, 比如当系统获取到被检仪器的检定数值时, 就计算该数值是否超过阈值条件, 然后给出判断结果。而对于每种不同的仪器, 我们也可分别定义不同的阈值条件。