APP下载

基于Gentle Adaboost的气密性检测系统

2024-03-14张梓齐耿乐陶李阳杨正乐郭子兴胡敏庄正飞

机床与液压 2024年4期
关键词:气密性分类器分类

张梓齐,耿乐陶,李阳,杨正乐,郭子兴,胡敏,庄正飞,2,3

(1.华南师范大学生物光子学研究院,广东广州 510631;2.华南师范大学(清远)科技创新研究院,广东清远 511517;3.师大瑞利光电科技(清远)有限公司,广东清远 511517)

0 前言

气密性是衡量电子产品以及工业生产中密封性能的一个重要评判标准。如果电子手环发生泄漏,可能导致用户游泳时手环进水;如果天然气等工业管道中发生气体泄漏,可能会引起爆炸、火灾等不可逆后果[1]。因此,不论是电子产品还是工业生产中,气密性检测都是至关重要的一环。常见的气密性检测方法主要分为差压法、水检法、流量法[2]、氦质谱检测[3]、超声波检测等[4]。其中氦质谱检测精度很高,但其造价与检测成本高昂;超声波检测虽能定位泄漏点,却由于超声波传感器存在测量盲区、泄漏信号互耦等问题[5],不适用于较小的电子产品;流量法检测精度不高,易受环境影响;水检法由于需将被测物浸泡在水中,检测结束后处理过程复杂,并会对被测物造成损坏;差压法兼具精度与效率,且成本较低,得到了广泛的应用[6]。但由于被测物端需构造密闭系统,测试所使用的压力、平衡时间、保压时间、环境温度、被测物体积等因素都将对测试结果造成非线性的影响,导致差压法中所需的工艺参数很难准确评估[7]。例如防水马达等,需测量它在工作情况下的气密性,由于马达工作中产生的热量会破坏测试腔的温度守恒,进而导致差压法的误检率大大增加。近年来,随着机器学习及神经网络的快速发展,它被应用于解决此类较难建立物理模型的问题,如徐晶伟等[8]通过采集抗血栓装置的压力特征参数,利用训练后的支持向量机模型实现气密性检测。本文作者基于传统差压法,提出一种新的系统,不再通过单一的差压值判断,而是以采集过程量与人为预设参数作为输入,利用超参数优化后的Gentle Adaboost集成分类算法建立工艺参数与过程量等因素与测试物密封性能间的关系,证明利用Gentle Adaboost集成分类算法提高差压法检测结果的正确率。并搭建完整的检测系统,以实现终端数据采集、数据传输、人机交互与集成分类模型判别。

1 检测流程及气路结构

传统的差压衰减式检测方法是根据理想状态方程得到的,如式(1)所示:

pV=nRT

(1)

在普适气体常数R恒定、测试前后温度不变、被测物体积V恒定情况下,如果被测物发生泄漏,则单位体积内气体分子数n将会降低,测试品的气压p也将会降低,通过标准品与测试品之间的差压传感器即可反映出该压力变化,从而判断产品的气密性。

此系统采用的是差压衰减式与机器学习相结合的方法,其内部气路如图1所示。

图1 检测系统气路

阀V1、V2、V3、V4为常闭型电磁阀,其中阀V1在掉电的情况下导通A、R两端可实现测试气路的排气动作,通电后导通P、A两端,实现测试过程中的充压动作。检测动作如下:充气阶段,气体经手动调压阀降至电气比例阀的可调节范围,电气比例阀接收下位机传输的电压信号后,自动控制其开度,调整充入测试系统内部的气压至设定值,阀V1、V2、V3导通,气体进入标准物与测试物内部。充气时间结束后,关闭阀V2、V3,随后打开阀V4,进入平衡阶段。平衡时间结束后,关闭阀V4,进入保压阶段,采集此时差压传感器、直压传感器及温度传感器的示数记为初值,保压时间结束后,采集此时差压传感器、直压传感器及温度传感器的示数记为终值。其中虽然温度可能上下波动,但最终差压值仅与保压前后温度差有关。因此计算初值与终值的差记为差值,将设置的保压时间、平衡时间、充气压力等参数与传感器的初值、终值与差值输入经训练的Gentle Adaboost分类模型,根据获得的参数进行二分类,最终对被测物进行良品/不良品的区分。测试完成后,进入排气阶段,下位机输出0 V电压给电气比例阀,阀V1关闭,阀V2、V3导通,将系统内部的气体排出,排气结束后,各个电磁阀恢复初始状态。

2 系统组成

2.1 系统结构

此测试系统分为下位机检测控制模块与上位机数据处理存储模块。下位机主要负责检测流程的控制、温度与压力传感器数值的采集、测试压力控制等功能。其中下位机控制器采用的是STM32F103,它采用了ARM架构下的Cortex-M3处理器,与传统控制芯片不同的是它具有更短的中断响应周期,稳定性更高,适用于工控领域。由于控制器输出功率较低无法直接控制电磁阀,故通过驱动固态继电器来实现对电磁阀的控制,并增加了节能模块,避免电磁阀长时间工作发热造成的温度失衡。上位机主要负责历史数据以及预设参数的存储、机器学习模型的部署以及人机交互界面等功能。上下位机间采用RS232串口通信,以自定义协议的方式实现数据流的传输与解码。检测系统的结构如图2所示。

图2 检测系统结构

2.2 传感器校准

系统中所使用的温度传感器是校准后直接通过RS485串口利用Modbus协议发送给下位机。压力测量部分考虑到精度与响应速度故选用单晶硅压力传感器,压力传感器的毫伏信号经过变送器模块滤波放大为4~20 mA信号,随后经过AD模块进行模数转换成数字量信号,通过线性化公式即可得出实时压力值。此系统所用的压力传感器以康斯特ConST31压力校验仪为标准进行线性化校准,采集传感器模数转换后数字量d与实际压力值p构造数据集F(d,p),数据集内的点F(di,pi)(i=1,2,3,…,m)由式(2)来进行拟合:

(2)

式中:ki(i=1,2,3,…,n)是多项式系数,n是多项式的阶数。F内各个数据的误差平方和为式(3):

(3)

式中:m是样本的维度。

存在一个最优的系数ki(i=1,2,3,…,n)使S取极小值,获得最佳拟合效果[9]。因压力传感器数字量与实际压力值之间的关系近似一次函数,故选用一阶多项式。k1与k0可由式(4)(5)得到:

(4)

(5)

为了提高压力传感器的精确度,采用分段线性化,即不同压力范围使用的线性化公式不同。表1为直压传感器分段线性化后的系数,表2为差压传感器分段线性化后的系数。

表2 单晶硅差压传感器分段线性化系数

由R2可看出:传感器线性拟合程度高,转换误差小,采集得到的物理量真实可靠。

2.3 软件设计

测试系统软件设计分为下位机与上位机两部分,其中下位机开发环境为MDK5.35,程序采用UCOSIII实时操作系统框架,以满足采集任务的实时性需求,主要分为测试采集任务、传感器校准任务、测试压校准任务、急停排气任务等。急停模块的抢占优先级最高,可随时抢占内核,执行排气流程并复位程序。其他模块程序优先级相同,无法相互抢占。测试采集任务是执行气密性检测流程的程序;传感器校准任务是对传感器进行清零校准的程序,解决传感器在无压力情况下未归零的问题;测试压校准任务是校准电气比例阀所控制的测试气压,防止工业现场气源压力较大波动造成的测试压偏移问题。

上位机开发环境为Pycharm2020.1,所用语言为Python3.6.1,分为通信程序、历史数据存储程序、机器学习模型部署、HMI人机交互界面等。上下位机通信程序中自定义了通信协议来实现不同的功能,如表3所示。

表3 自定义协议功能

下位机传输过来的测量数据与设置参数通过解码后写入对应Excel文件中。机器学习模型通过Pytorch框架进行训练,训练完成后导出,利用Python进行调用。上位机界面采用PyQt进行设计,如图3所示。

图3 上位机界面

3 机器学习模型

为了克服测量工作中电机带来的发热问题,文中建立了新的差压式气密性检测数据采集框架,整个测试系统不再局限于采集差压值,而是通过采集平衡时间,保压时间,测试压以及差压值的初值、终值及变化量,测试腔与标准腔测试前后的温度差等物理量作为机器学习模型的输入值,通过训练完成的模型判断被测物的气密性状态。因被测物分为良品与不良品,属于二分类问题,故采用分类模型。

3.1 单一分类算法

单一的分类算法主要有K近邻、支持向量机、决策树等[10]。K近邻分类算法是根据训练数据集寻找待分样本邻域内所有训练样本中出现次数最多的类,并将待分样本归于该类[11]。支持向量机分类算法是在特征空间中寻找一条线或一个面将数据集划为两类,并且特征空间中的点到这条线或面的距离最大,利用线性分类对样本数据进行划分[12]。 决策树算法类似分段函数,是带有判决规则(if-then)的倒置树状结构,分为决策节点、分支节点与叶子节点。判断时从根节点开始,根据实例特征的每个判断结果,进入各子节点中,直至分配到对应类的叶子节点中[13]。

上述的单一分类算法皆有自身的局限性。支持向量机存在对缺失值敏感的缺点,当训练样本出现特征缺失时,将影响超平面的求解。决策树也不易处理缺失数据,并容易忽略数据集中各属性的相互关联。K近邻分类算法在处理不均衡数据时偏差较大,不易发现特征间的关系。

3.2 Gentle Adaboost集成分类算法

集成学习(Ensemble Learning)利用某种策略与规则将多个弱分类器的分类结果综合,变成强分类器来进行分类判断,克服了单一分类算法的缺点,能更好地应对数据质量参差不齐、特征间关系复杂等情况[14]。文中使用Gentle Adaboost算法实现集成学习,属于Boosting系列算法中的Adaboost算法[15]。传统的Adaboost算法中基分类器之间存在依赖关系,每个基分类器的训练集都有其对应权重。训练开始时,每个训练集的权重相同,第一个基分类器训练完成后,根据误差率计算该基分类器的系数,并减少此轮正确分类的样本权值,增加被错误分类的样本权值,更新下一个基分类器训练集的权重,达到下一轮训练中矫正错误识别的样本;依次迭代,最后组合时加大分类误差率小的基分类器的权重,减少分类误差率大的基分类器权重。但过度关注错误分类的样本,容易造成过拟合现象,使容易分类的样本分类出错。而Gentle Adaboost算法克服了这一问题,其在每一轮迭代中都会利用最小二乘法进行加权回归,获得此轮最佳的弱分类器,最终将所有回归函数结果相加作为强分类器[16]。此系统所用强分类器的训练流程如下:假设训练集总共有n个样本(y1,y2,…,yn),初始化每轮迭代中每个样本的权重为1/n后,进行首轮迭代,在所有的特征中选出首轮样本权重集合W1及样本加权均方误差最小的弱分类器f1(x),根据f1更新下一轮权重集合W2,并进行归一化处理,随后继续寻找下一轮的最佳弱分类器。按上述步骤重复k轮,将所有的最佳弱分类器相加得到最终的强分类器,如式(6)所示:

(6)

获取每轮最佳弱分类器的过程中,将会针对输入特征的个数进行遍历,每一个特征下对应的所有样本特征值都会被拷入一维特征数组中,按照从小到大进行排序,随后针对每一个特征数组遍历来寻找最佳弱分类器。以其中一个特征举例:

假设总共有n个样本,从第一个样本开始遍历,计算以该样本为节点时,左右两部分样本的置信度。假设遍历到第i个样本时,前i个样本置信度如式(7)所示:

(7)

后i个样本置信度如式(8)所示:

(8)

其中:yk是第k个样本的类别标签,yk=1时表示为良品,yk=-1时表示为不良品;wk是第k个样本的权重。该节点两侧的加权均方根误差如式(9)(10)所示:

(9)

(10)

如果S1、S2的和小于误差值,则更新误差值为S1、S2的和,误差值的初值为0,并将该样本在此特征中的对应值记录为弱分类器的阈值,同时记录当前弱分类器的分类置信度为α1与α2,然后对下一个样本点重复上述步骤,直到遍历完所有特征,最后获得的弱分类器即为经过最小二乘加权回归后的均方误差最小的分类器。

最终整个检测系统的机器学习结构如图4所示。

图4 检测系统的机器学习结构

4 实验分析

4.1 样本分析

在控制测试气体湿度相同、充气时间相同的条件下,针对4种不同容积的防水电机(1.39、1.84、14.49、103.07 mL)遍历不同的平衡时间与保压时间、不同的标准腔与测试腔温差值以及不同的测试压力,利用文中检测系统采集了3 658组样本数据,其中良品样本1 829组,不良品样本1 829组。部分数据如表4所示。

表4 系统部分采集数据

由表4可看出:检测过程中测试腔温度发生变化时,将极大影响差压值差值,进而影响传统差压法的判断结果;不同容积的被测物在受近似温差影响时,所造成的差压值差值变化也不同;若检测系统的标准腔发生温度变化,也会影响差压值差值。采集的数据中部分特征的散点与核概率密度估计如图5所示。

图5中Δp表示测试压力差值,Dp1表示差压值初值,Dp2表示差压值的差值,ΔT1表示标准腔温度差值,ΔT2表示测试腔温度差值,由图5(a)可看出:多个特征的分布及两两特征之间均存在非线性的关系,且有较多混合区域。由差压值终值的核概率密度估计图可看出,良品与不良品具有较大的重叠范围,传统的差压法仅使用差压值终值判断,将无法区分重叠部分的样品。上述特征的相关系数热力图如图6所示。

由图6可看出:差压值差值与测试压差值存在高度正相关;标准腔温度差值与差压值差值存在低度正相关;测试腔温度差值与差压值差值存在显著负相关。因此,影响气密性检测的因素间存在复杂的关系,因温度造成良品与不良品的差压值区别不大,若使用传统差压法将无法进行判别。

4.2 模型训练与比较

将采集到的样本划分为训练集与测试集,采用留出法验证,训练集与测试集比例为3∶1,训练完后利用测试集来衡量模型准确度。此实验采用贝叶斯优化框架[17],迭代30次来对Gentle Adaboost分类模型进行超参数优化,迭代过程中所求得的最小分类误差如图7所示。最佳超参数为:弱学习器数量435个,学习率0.001,最大分裂数16个。

图7 最小分类误差

实验中选用了另外3种模型与Gentle Adaboost作为对照,分别是:以欧氏距离为度量公式,邻近点个数为10的K近邻模型;核函数为高斯函数,核尺度为1,框约束级别为1的支持向量机模型;最大分裂度为20,基于基尼多样性指数的决策树模型。4种模型的混淆矩阵及ROC曲线如图8所示。

图8 四种模型的混沌矩阵(a)与ROC曲线(b)

经训练后,914组测试样本结果所组成的混淆矩阵中Gentle Adaboost算法仅有2个错误识别,远低于其他3类模型。由图8(b)可知:Gentle Adaboost算法的ROC曲线与AUC面积皆为最佳,该模型泛化性能最好。由图9可看出:基于Gentle Adaboost的气密性检测系统准确度、精确度及召回率更高,比单一的分类模型效果更好。此实验同时利用测试集中4种不同内部容积的防水电机的数据,对文中系统与传统差压式检测系统的分类正确率进行比较,结果如图10所示。

图9 4种算法的性能参数

图10 所提系统与传统方法性能对比

由图10可知:在无温度影响时,传统的差压式气密性检测方法的分类正确率还维持在一个较高的水平,但引入温度影响后,其分类正确率皆发生了显著下降,文中测试系统在有无温度的影响下,分类正确率皆维持在高水平。因此,文中测试系统比传统差压式系统的分类准确率更高。

5 结束语

文中设计搭建一种新的差压式气密性检测系统,利用差压法检测过程中的各物理量变化状态与测试前设置的工艺参数作为机器学习的输入值,通过Gentle Adaboost集成分类器判断被测物的气密性好坏,克服了传统差压法仅使用差压值作为评判标准而出现的误检率高、鲁棒性差、易受环境影响等缺点。同时通过不同分类算法间的对比,进一步验证了集成分类算法在此类问题中的优越性。实验结果表明:文中系统检测准确度达到99.8%,与传统方法相比误判率低、稳定性强。并且该系统已成功应用于某血压计生产车间中,解决了员工不易设置工艺参数、检测结果易受外界影响、检测节拍慢等难题,在4 967组测试中准确率为99.52%,能有效地应用于复杂的工业现场。

猜你喜欢

气密性分类器分类
车门气密性对风噪的影响分析
分类算一算
关于布袋除尘器气密性试验新方法的研讨
某排气系统球铰气密性仿真分析
检查气密性方法有多种
分类讨论求坐标
数据分析中的分类讨论
BP-GA光照分类器在车道线识别中的应用
教你一招:数的分类
加权空-谱与最近邻分类器相结合的高光谱图像分类