数控机床远程智能故障诊断系统设计
2020-03-13梁睿君陈蔚芳
宋 丹,梁睿君,李 伟,陈蔚芳
(南京航空航天大学机电学院,南京,210016)
引 言
随着对机械零件加工精度要求不断提高,加工强度不断增大,疲劳现象更加容易出现在机床部件,导致机床故障发生频率提高。一旦故障发生可能导致零件的报废、生产的停滞,造成企业的经济损失等问题[1-3]。因此对机床故障实时诊断已成为机床应用中的一个重要需求。
20世纪90年代德国亚琛工业大学研究了切削过程远程监控技术并建立了演示监控系统[4]。美国斯坦福大学和麻省理工学院合作研发了基于Internet下一代远程诊断示范系统Testbed,该系统能对多台设备同时在线监测,诊断多种典型故障,并能与企业的管理和控制系统联网通信,对不同地域、不同企业的设备进行预测和诊断[5]。日本山崎马扎克公司在EMO2001展中展出的智能生产控制中心(Cyber production center,CPC)包括智能刀具寿命管理系统,智能生产管理与调度系统、智能监控系统等现代化生产数字控制系统,在远程故障诊断和监测方面有很大影响力。
国内许多大学和研究所也在从事设备故障远程诊断方面的研究,比如同济大学、上海交通大学等[6-7]。同济大学CIMS研究中心在上海大众汽车有限公司建立了以多媒体远程服务为基础的远程故障维修系统[8];北京机电研究所设计的BMEI-AMS-1先进制造系统易于与Internet相连,可实现远程诊断、远程服务和实时监控。此外,北京理工大学和南京航空航天大学等也开展了基于Internet的FMS远程故障诊断的研究[5,9]。
目前,机床故障诊断大多采用通过设备层增加PC机进行有线组网的方法,存在着布线复杂、妨碍机床部件运动、妨碍机床操作、电磁干扰造成信号丢失和增大设备投入等缺点。基于物联网、大数据以及云平台技术的发展,将故障诊断技术与其结合,可以提高机床远程故障诊断的智能化程度。常用的物联网无线通信技术主要有蓝牙、ZigBee、窄带物联网(Narrow band internet of things,NB-IoT)技术等,均已广泛应用于智慧城市建设中[10-13]。与ZigBee等短距离传输技术相比,NB-IoT技术具有可移动和连接数量多等优点[14],可以满足机床大数据传输的要求。基于网络的远程诊断技术需要解决如何获得信息、分析信息以及进行诊断的问题。本文采用基于应用过程的对象连接与嵌入(Object linking and embedding for process control,OPC)及多传感器融合的数据采集方法获取信息,采用BP神经网络和专家系统相结合的智能故障诊断方法[15-19]分析故障信息,获得诊断结果,实现机床远程智能故障诊断。
1 基于NB-IoT的故障诊断系统架构设计
本文建立了基于NB-IoT的远程智能故障诊断系统模型,其功能模块包括:数据采集模块、无线通信模块、数据处理及故障诊断平台和远程人机界面。根据功能运行划分出系统逻辑结构,如图1所示,其中箭头方向为数据流动方向。采集层通过安装在机床内的传感器和OPC接口读取机床运行信息和机床基本参数,如力、热、振动、电流、程序段、轴坐标位置和进给方向等,并输入所建立的机床运行信息数据库由本地故障诊断专家系统进行故障诊断;如果本地故障诊断专家系统不能诊断出系统故障原因,则机床运行信息数据库中的信息通过串口输入传输层的IoT模块,通过NB-IoT无线通信网络传输给IoT云平台,运算层读取云平台数据,通过远程故障诊断模块获得诊断结果,并将诊断结果返回云平台,远程人机界面APP可向云平台请求读取诊断结果。
图1 系统逻辑结构图Fig.1 Diagram of systematic logical structure
运算层数据处理与故障诊断平台的诊断流程如图2所示。若由于信息缺失不能得出诊断结果,故障诊断模块将通过IoT云平台向本地发送补充信息申请,若仍无法解决故障,则启用异地专家诊断咨询进入人工干预诊断。
图2 故障诊断流程Fig.2 Fault diagnosis process
2 系统的主要模块实现
2.1 基于OPC及多传感器融合的数据采集技术
OPC以组态对象模型技术为基础,采用客户端/服务器模式,包含OPC服务器(Server)、OPC组(Group)和OPC项(Item)3种对象,采用异步访问方式实时采集机床的大量数据变量,如机床运行模式、运行程序段名称、开机时间和运行时间等。OPC项变量的读取路径可以在机床参数手册中查询到,其中对变量名称、数值单位、值域范围、读写权限和数据类型等有着详细的规定。利用微软基础类库编写数据采集程序和界面,根据OPC项路径进行数据读写的主界面如图3所示。
选用356A16三向加速度传感器、378B02声音传感器、Pt100热电阻温度传感器及APAQ-3HPT温度变送器分别测振动、噪声和温度信号。上位机利用基于LabVIEW的采集软件采集振动、噪声和温度信号;利用小波包分析处理信号,实现信号的读取、显示实时保存。
2.2 NB-IoT无线通信技术
通信模块需要实现不同协议间的相互通信、多源数据的融合与共享传输。NB-IoT构建于蜂窝网络,可直接部署于GSM网络、UMTS网络或LTE网络,具有覆盖广、支持海量连接、低功耗和模块成本低的特点[8]。
系统选用BC95无线通信IoT模块,该模块尺寸紧凑,采用无铅芯片载体封装可给机床提供可靠的连接方式,且功耗低、工作温度范围宽,在机床工作环境下可靠性高。NB-IoT的基本应用架构如图4所示。IoT云平台具有海量数据接收和存储能力,适合机床大数据量;支持多样化的设备和多种接入方式,能够保证数据处理与故障诊断平台多样数据输入的需求;提供统一的访问控制和权限管理系统,利于机床数据统一管理。
图3 OPC数据采集系统主界面Fig.3 Main interface of OPC data acquisition system
图4 NB-IoT的基本应用架构Fig.4 Basic application architecture of NB-IoT
3 故障诊断算法设计
常见的人工智能诊断算法主要有故障树法、专家系统、人工神经网络法、模糊推理法等。故障树法虽包含系统所有故障模式,但建树过程复杂,易遗漏信息。模糊推理法建立模糊关系矩阵困难且自学习和自适应能力差。BP神经网络有较强的学习和并行计算能力,可实现分类、非线性优化和联想记忆等功能,但存在诊断推理过程缺乏透明度等问题。实际加工过程中机床数据状态信息量大,故障多,分类复杂,因此选用BP神经系统在前、专家系统在后的串行方式建立故障诊断算法模型,如图5所示。可以克服专家系统知识获取难、推理效率低等问题,并利用专家系统解释神经网络推导机床故障。
特征信息提取模块对滤波、去噪等规范化处理后的数据提取其特征信息。BP神经网络采用3层并行拓扑结构,输入节点与故障现象(由特征信息获得)相对应,输出节点与故障原因相对应。推导出的诊断结果即系统故障类型及故障原因。若神经网络的调整次数大于设定次数,诊断结果仍不准确,则需要IoT云平台输入补充信息;若小于设定次数,则诊断结果进入专家系统进行推理验证和解释。若符合知识库规则,则将诊断结果输出到云平台,否则神经网络根据专家系统给出的修改建议调整参数(权值、阈值等)重新进行网络训练。
4 算法验证与系统实现
4.1 算法模型验证
以机床的主轴伺服系统为实例,主轴伺服系统常见的故障现象和类型如表1所示,应用第3节故障诊断算法模型分析其故障现象,获得故障样本,通过仿真验证了算法模型。
图5 神经网络专家系统串行方式Fig.5 Serial mode of neural network expert system
表1 数控机床主轴伺服系统常见故障类型及可能原因Table 1 Common fault types and possible causes of spindle servo system of NC machine tool
BP神经网络隐含层神经元的数目由设计者的经验和多次试验决定。根据Kolmogorov定理和经验公式(其中q为隐含层神经元数,n为输入神经元数,m为输出神经元数,λ为[1,10]之间的常数)增加q可以减少训练误差,但当节点q超过10时,测试误差产生波动。本例中q取10,因此构成7×10×7的BP神经网络。
令学习样本为P=(X,Y),输入向量为X=(X1,X2,X3,X4,X5,X6,X7),输出向量为Y=(Y1,Y2,Y3,Y4,Y5,Y6,Y7)。Xk∈X(k=1,2,3,4,5,6,7),当Xk=0、Xk=1 时,分别表示无故障、有故障;Yk∈Y(k=1,2,3,4,5,6,7),当Yk=0,Yk=1分别表示不存在、存在该故障原因。本例中部分故障样本如表2所示。其中1~15为训练样本举例,16~18为测试样本举例。本例共有64个样本,选取其中54个作为训练样本进行BP算法网络训练,隐含层和输出层之间选择Sigmoid激励函数,网络训练函数选择Traingdm函数,运用MATLAB软件的神经网络工具箱进行仿真训练,设置学习效率η=0.01,训练步长为4 000,训练目标误差为0.001,动量因子为mc=0.9。图6表示了该网络模型训练误差的变化曲线,经过3 680次训练,网络训练模型达到目标精度,满足训练要求。
调用模型中训练好的各层的权值,将表2中第16~18输入向量输入模型进行计算,得到输出层的结果如表3所示。由表3可以看出,输出结果与目标结果相符合,验证了算法模型的有效性。
图6 BP神经网络训练误差变化曲线Fig.6 Variation curve of training error of BP neural network
表2 数控机床主轴伺服系统部分故障样本Table 2 Partial fault samples of spindle servo system of NC machine tool
表3 输入向量与输出结果Table 3 Input vector and output results
4.2 系统运行软件实现
系统选择Windows 2013 Professional操作系统下Visual Studio 2017为软件开发平台,采用Microsoft Visual C++为软件开发工具。机床诊断软件系统主要分为用户故障诊断子系统和信息管理子系统。用户故障诊断子系统包括用户的注册、登录及向远程诊断中心发出在线诊断请求,接受诊断反馈等功能;信息管理子系统运行在后台实现可视化管理系统中数据进行的工具,具有数据库的删除、添加、更新功能、故障管理查询及用户留言、管理等功能。
5 结束语
本文给出机床故障诊断的远程智能实现方法,采用该方法设计的系统智能性和先进性体现在3方面:(1)运用新兴的NB-IoT技术进行无线传输,相比有线网络,提高了网络覆盖能力,降低设备的复杂度和成本。(2)运算层采用BP神经网络和专家系统相结合的智能故障诊断方法,通过BP网络解释推导故障的过程,获得多种故障类型的推导结果。专家系统对BP网络得出的诊断结果进行验证,判断是否符合知识库的规则,若不符合,专家系统根据知识库规则,将需要调整的参数反馈给神经网络,继续进行网络训练。(3)若神经网络的调整次数大于设定次数,则运算层将发送补充信息申请给IoT云平台,根据本地机床运行信息数据库提供的补充信息重新进行诊断。