一种数控机床加工精度智能分析方法与流程



1.本发明属于数控机床数据分析领域,具体是一种数控机床加工精度智能分析方法。


背景技术:



2.随着人工智能技术的迅速发展,人工智能技术在各个产业中应用的场景越来越丰富,对于数控机床高精度智能制造也有了强大的技术支持。进入新世纪以来,我国数控机床的规模和加工精度有了很大的提升,但相对于世界先进水平,存在不足,主要体现在智能化程度不够、加工精度测量实时性不足导致数据分析不够及时,这些均影响了数控机床的加工精度和加工效率的进一步提升。


技术实现要素:



3.本发明的目的是克服上述背景技术的不足,提供一种数控机床加工精度智能分析方法,该方法应能有效提高对数控机床零件加工精度的预测能力和水平。
4.本发明提供的技术方案是:一种数控机床加工精度智能分析方法,按以下步骤进行:
5.(一)通过基于数控机床类型开发的数据采集软件将数控机床内部数据信息和外置传感器的数据信息实时采集、显示、储存到后台数据库中;
6.(二)读取后台数据库中采集到的数控机床内部数据信息和外置传感器的数据信息,将其导入到训练环境中;
7.(三)将导入的数据信息划分标签,前n列作为数据输入,最后一列精度等级为待预测精度标签(即输出);
8.(四)将数据信息在对数据进行减均值除方差的标准化处理,将数据划分训练集和测试集;
9.(五)定义神经网络训练参数;
10.(六)通过使用数据处理模块、优化器模块、数据初始化模块、网络搭建模块,数据读取后搭建深度神经网络;
11.(七)开始模型的训练,每次训练进行前向传播、后向传播、更新参数、记录训练学习误差;最后经过不断训练循环得到最终的零件加工精度训练模型。
12.所述步骤(一)中的数据采集软件通过网线连接进行通讯读取数控机床内部信息,所述外置传感器通过信号输出端跟数控系统端的通讯接口连接,对数据进行实时读取和储存。
13.所述步骤(二)中的训练环境为jupyter软件中用来储存数据信息的文件夹。
14.所述步骤(四)中的数据划分,是将步骤(三)中的标签中的4/5随机划分为训练集,1/5 为测试集。
15.所述步骤(六)中的搭建步骤,是先将前五步得到的数据通过数据处理模块处理,
得到训练所需要的数据大小和类型,再由优化器模块采用随机梯度下降的方法进行优化,然后经过数据初始化模块改变每次训练的神经网络参数,最后调用网络搭建模块建立神经网络结构模型。
16.上述神经网络模型中还加入残差网络结构,以解决多层神经网络问题中因网络深度增加引起的梯度消失问题和退化问题。
17.所述步骤五中的神经网络参数设定如下:学习次数为1000次,学习率为0.001,每次学习数据大小为10组,早停参数为15。
18.与现有技术相比,本发明的有益效果是:
19.通过残差网络来实现深度学习网络的梯度消失问题,其次通过深度神经网络训练后得到的加工精度模型可以便于以后的加工过程的合理性分析和工艺的正确性分析;有效改善数控机床加工中智能化程度不够,加工精度测量实时性不够导致的数据分析不够及时的缺点,对后期改进加工工艺和加工参数来提高加工工件的精度和促进良好的加工循环和效率有较大的的益处。
附图说明
20.图1是本发明的流程示意图。
21.图2是本发明中的数据采集软件界面。
22.图3是本发明中的残差结构示意图。
23.图4是本发明中的部分excel表格数据图。
24.图5是本发明中读取数据后的储存文件夹图。
25.图6是本发明中的数据输入输出划分图。
26.图7是本发明中的数据标准化处理、数据集划分图。
27.图8是本发明中的定义神经网络参数图。
28.图9是本发明中的使用模块搭建神经网络图。
29.图10是本发明中的开始模型训练图。
30.图11是本发明中的训练误差图。
31.图12是本发明中的数据处理模块代码图。
32.图13是本发明中的优化器模块代码图。
33.图14是本发明中的数据初始化模块代码图。
34.图15是本发明中的网络搭建模块代码图之一。
35.图16是本发明中的网络搭建模块代码图之二。
36.图17是本发明中的深度神经网络结构图。
37.图18是本发明中的模型训练流程图。
38.图19为第0次迭代训练和第71次迭代训练的预测值和实际值的对比图。
39.上述附图中,图4至图16均为软件显示界面截图。
具体实施方式
40.下面结合附图和实施例对本发明技术方案进行进一步的详细说明。
41.本发明提供的数控机床加工精度智能分析方法,具体是通过基于数控机床类型开
发的数据采集软件(已开发)(如附图2)来实现外置的传感器设备和数控机床自带的控制系统的信息和数据的实时采集、显示;再通过深度学习算法对采集到的数据进行数据处理、分析、训练模型来实现对数控机床数据信息的分析;从而实现对数控机床零件加工精度的预测。
42.上述数据采集、显示为数据采集软件在工控机上实现,通过与外置传感器的通讯协议和数控机床的网络通讯实现数据采集、显示。
43.上述数据处理具体包括了步骤2中的数据导入、步骤3中的数据输入输出划分以及步骤 4中的标准化处理和训练集及测试集划分。
44.该发明具体包括了以下步骤:
45.1、通过基于数控机床类型开发的数据采集软件将数控机床内部数据信息和外置传感器的数据信息实时采集、显示、储存到后台数据库中。
46.2、读取后台数据库中采集到的数控机床内部数据信息和外置传感器的数据信息,将其导入到训练环境中。
47.3、将导入的数据信息划分标签,前n列作为数据输入,最后一列精度等级为待预测精度标签(即输出);其中n列取决模型输入的影响参数的多少,自行选取;
48.4、将数据信息在对数据进行减均值除方差的标准化处理,将数据划分训练集和测试集。
49.5、定义神经网络训练参数,如学习次数,学习率,每次学习的数据大小,早停参数(防止学习过度),学习误差的记录等等。
50.6、通过使用数据处理模块(代码见附图12)、优化器模块(代码见附图13)、数据初始化模块(代码见附图14)、网络搭建模块(代码见附图15、16)、数据读取后搭建深度神经网络。
51.7、开始模型的训练,每次训练进行前向传播、后向传播、更新参数、记录训练学习误差;最后经过不断训练循环得到最终的零件加工精度训练模型。
52.上述神经网络模型中还加入残差网络结构;残差网络结构可以解决多层神经网络问题中的因为网络深度增加引起的梯度消失问题和退化问题,残差网络结构如附图3所示。
53.上述残差网络结构具体是将输入直接与输出相连,将学习输入和输出的映射模型改成学习输入和输出之间的残差;避免了复杂的训练过程、后向传播的梯度消失问题。
54.上述步骤7中所述前向传播具体是将step3中的数据输入到输入层的神经元中,通过输入和连接参数的计算后得到输入层输出,将输入层输出输入第一个隐藏层对应的神经元,给每一个结果加上一个偏置,即添加一个随机数。
55.上述添加偏置的原因是需要将输入隐藏层的结果输出到激活函数中,偏置有助于调整激活函数在目标参数空间中左右调整,使得神经网络具有更大的灵活性和更强的学习能力。
56.上述得到第一个隐藏层的输入数据,再将该层每一个神经元的数据输入到激活函数得到隐藏层的输出,将隐藏层的输出输入到输出层;输出层的激活函数使用identity函数。
57.根据上述前向传播得到的结果值即为预测值,还需要进行后向传播调整连接层网络层之间的权重参数,通过前向传播和后向传播的循环不断更新各个网络层的参数,从而
使得预测值和实际值一致或者接近。
58.上述后向传播具体是通过前向传播后得到的预测值与实际值相差可能较大,需要通过计算预测值和实际值之间的差值根据某种调整规则来调整各个网络层的权重参数。
59.上述某种调整规则通常采用梯度下降算法来实现。
60.上述各个网络层的权重参数的调整具体是根据误差大小去调整最后一个全连接层的参数,然后再根据该层的输入和后向传播的误差,逐层向前去调整每一层的参数,已达到更新神经网络中所有网络层的权重参数的目的,提高预测值的准确性。
61.上述误差指的是的是预测值和实际值之间的均方误差。在调整权重参数的同时设置好学习率,学习率用来控制每次调整权重的幅度,避免接近实际值时调整幅度过大导致的预测值不准确的问题。
62.本实施例对本发明作进一步的说明和示范。本实施例均采用jupyter notebook来实现模型的训练。
63.步骤1、通过基于数控机床类型开发的数据采集软件将数控机床内部数据信息和外置传感器的数据信息实时采集、显示、储存到后台数据库中。
64.上述步骤1中用于本实施例的数据具体有环境温度值、主轴x轴振动值、主轴y轴振动值、主轴z轴振动值、加工内部环境噪声值、主轴电机三相电流值、主轴电机三相电压值、主轴电机总有功功率、主轴电机总无功功率、主轴实际转速、主轴进给率、加工时间、刀具补偿值以及最终的实际零件加工精度值。
65.上述数控机床内部信息是用网线与数控机床进行网络通讯,借助数控机床的api接口函数通讯后得到的数据信息。
66.上述外置传感器主要包括了以下几种传感器:1.噪声传感器,安装于刀具位置上方20cm 处,用来检测加工过程中产生的噪音。2.温振三轴传感器,安装于主轴的机箱侧面,用来检测加工过程中产生的三轴方向的振动值以及加工环境的温度值。3.三相交流电量传感器,它包括采集仪和互感器两部分安装于电动机主轴附近,通过互感器测量三相各自的电流、通过集成模块采集仪测量三相各自的电压、有功功率、无功功率等。
67.上述数据采集、显示为数据采集软件在工控机上实现,通过与外置传感器的通讯协议和数控机床的网络通讯实现数据采集、显示。上述数据采集软件是基于数控机床的api接口函数、visual studio软件和相关ui控件(自行选择皆可)等二次开发的窗体应用程序(可外购获得)。其中数据采集软件的开发包括了硬件和软件两方面;硬件主要有数控机床的控制器、网线、工控机、开关电源(dc 24v)、噪声传感器、温振三轴传感器、三相交流电量传感器(包括采集仪和互感器两部分)。软件主要包括visual studio软件、mysql数据库。数据采集软件主界面可见附图2。
68.步骤2、读取后台数据库中采集到的数控机床内部数据信息和外置传感器的数据信息,将其导入到训练环境中。训练环境具体是jupyter软件中用来储存数据信息的文件夹。
69.读取后台数据库中的信息将其导出为excel表格(如附图4),再通过读取excel表格文件到训练环境中的数据储存文件夹中(如附图5)。
70.其中:图4中的temperature为环境温度值、vib_x为主轴x轴振动值、vib_y为主轴y轴振动值、vib_z为主轴z轴振动值、val_db为加工内部环境噪声值、val_i1为主轴电机三相
电流值、val_v为主轴电机三相电压值、part_count为主轴电机总有功功率、require_part_count 为主轴电机总无功功率、actfeed为主轴实际转速、actspindle为主轴进给率、msg_time为加工时间、total_part_为刀具补偿值以及predict为实际零件加工精度值。
71.步骤3、将导入的数据信息划分标签,前n列作为数据输入,最后一列精度等级为待预测精度标签(即输出)(如附图6);
72.本实施例中我们将前面13列数值作为数据的输入,最后的加工精度值为输出值。
73.步骤4、将数据信息在对数据进行减均值除方差的标准化处理,将数据划分训练集和测试集(如附图7)。
74.上述标准化处理如下公式所示,其中mean_value为数据列的平均值、std_value为数据列的方差值。
75.x=x-mean_value
76.x=x/std_value
77.上述标准化处理是为了更好的让神经网络收敛;数据划分是将step3中的标签中的4/5作为训练集,1/5作为测试集,划分是随机的,每一次训练都是重新随机划分,以达到更好的训练效果。
78.步骤5、定义神经网络训练参数;如学习次数、学习率、每次学习的数据大小、早停参数(防止学习过度)、每一次学习误差的记录等等(如附图8)。
79.在此实施例中设定学习次数为1000次,学习率为0.001,每次学习数据大小为10组,早停参数为15。
80.步骤6、通过使用数据处理模块(代码见附图)、优化器模块(代码见附图)、数据初始化模块(代码见附图)、网络搭建模块(代码见附图),数据读取后搭建深度神经网络(代码如附图9)。
81.上述步骤6是将前5步得到的数据通过数据处理模块后得到训练所需要的数据大小和类型;在经过优化器模块采用随机梯度下降的方法、经过数据初始化模块改变每次训练的神经网络参数;然后调用网络搭建模块建立神经网络结构的模型。
82.上述深度神经网络结构如附图17所示。
83.步骤7、开始模型的训练(如附图10),每次训练进行前向传播、后向传播、更新参数、记录训练学习误差;最后经过不断训练循环得到最终的零件加工精度训练模型。
84.上述训练的过程如下所述:首先将处理好的数据代入网络后,将数据输入神经网络;各网络层的权值参数、阈值初始化和网络参数设定。然后通过输入层数据输入去计算隐藏层各神经元的输入和输出,根据隐藏层的输出作为输出层输入去计算输出层各神经元的输入和输出;再计算输出层和隐藏层各神经元的误差,通过判断误差和设定阈值的大小来判断权值参数是否合理、输出的预测值和实际值是否相符。误差过大的话就需要调整各网络层的权值参数,从后往前调整;先调整隐藏层和输出层之间的连接权及输出层各神经元的输出阈值,再调整输入层和隐藏层之间的连接权和隐藏层各神经元的输出阈值。通过调整学习率后判断训练是否结束,没结束则继续训练,结束则更新学习次数(即训练次数);再通过判断训练完的输出层的输出值(即预测值)与实际值之间的误差是否达到设定值,误差符合则结束训练;反之继续训练至误差符合要求为止。训练流程图如附图18所示。
85.最后得到训练误差的变化趋势图(如附图11),从图11中可以看到随着训练的不断
进行,训练模型的误差在不断缩小,最后将维持在一个范围波动。注:因为训练次数太大会导致训练时长较长;此例采用的训练次数较少,结果仅作为演示。
86.所述训练误差计算公式如下所示,其中为误差值、ε为误差率、value_act为实际值、value_pre为预测值。
[0087][0088][0089]
根据上述公式计算附图19的第71次实际值与预测值的误差和误差率如下(仅计算误差值和误差率的最大值和最小值)。
[0090][0091][0092][0093][0094]
据上述的计算结果所示,随着训练次数越来越多,我们可以看到预测值和实际值的误差值大概在0.187—7.00之间,误差率在1%—14%;加工精度预测结果良好。
[0095]
根据上述步骤训练完的加工精度神经网络模型,在之后的零件加工中将过程数据直接输入训练好的神经网络模型后即可得出准确的加工精度;从而来间接判断设计的加工工艺流程是否合理,其次也可以通过过程数据去出异常的数据值,从而到加工工艺不合理的地方,改进加工工艺提高零件加工精度。
[0096]
本发明通过基于数控机床类型开发的数据采集软件(可外购的成熟软件)来实现外置的传感器设备和数控机床自带的控制系统的信息和数据的实时采集、显示;再通过深度学习算法对采集到的数据进行数据处理、分析、训练模型来实现对数控机床数据信息的分析;从而实现对数控机床零件加工精度的预测。

技术特征:


1.一种数控机床加工精度智能分析方法,按以下步骤进行:(一)通过基于数控机床类型开发的数据采集软件将数控机床内部数据信息和外置传感器的数据信息实时采集、显示、储存到后台数据库中;(二)读取后台数据库中采集到的数控机床内部数据信息和外置传感器的数据信息,将其导入到训练环境中;(三)将导入的数据信息划分标签,前n列作为数据输入,最后一列精度等级为待预测精度标签(即输出);(四)将数据信息在对数据进行减均值除方差的标准化处理,将数据划分为训练集和测试集;(五)定义神经网络训练参数;(六)通过使用数据处理模块、优化器模块、数据初始化模块、网络搭建模块,数据读取后搭建深度神经网络;(七)开始模型的训练,每次训练进行前向传播、后向传播、更新参数、记录训练学习误差;最后经过不断训练循环得到最终的零件加工精度训练模型。2.根据权利要求1所述的数控机床加工精度智能分析方法,其特征在于:所述步骤(一)中的数据采集软件通过网线连接进行通讯读取数控机床内部信息,所述外置传感器通过信号输出端跟数控系统端的通讯接口连接,对数据进行实时读取和储存。3.根据权利要求2所述的数控机床加工精度智能分析方法,其特征在于:所述数据具体有环境温度值、主轴x轴振动值、主轴y轴振动值、主轴z轴振动值、加工内部环境噪声值、主轴电机三相电流值、主轴电机三相电压值、主轴电机总有功功率、主轴电机总无功功率、主轴实际转速、主轴进给率、加工时间、刀具补偿值以及最终的实际零件加工精度值。4.根据权利要求3所述的数控机床加工精度智能分析方法,其特征在于:所述步骤(二)中的训练环境为jupyter软件中用来储存数据信息的文件夹。5.根据权利要求4所述的数控机床加工精度智能分析方法,其特征在于:所述步骤(四)中的数据划分,是将步骤(三)中的标签中的4/5随机划分为训练集,1/5为测试集。6.根据权利要求5所述的数控机床加工精度智能分析方法,其特征在于:所述步骤(六)中的搭建步骤,是先将前五步得到的数据通过数据处理模块处理,得到训练所需要的数据大小和类型,再由优化器模块采用随机梯度下降的方法进行优化,然后经过数据初始化模块改变每次训练的神经网络参数,最后调用网络搭建模块建立神经网络结构模型。7.根据权利要求6所述的数控机床加工精度智能分析方法,其特征在于:所述神经网络模型中还加入残差网络结构,以解决多层神经网络问题中因网络深度增加引起的梯度消失问题和退化问题。

技术总结


本发明涉及一种数控机床加工精度智能分析方法,目的是克服背景技术的不足,有效提高对数控机床零件加工精度的预测能力和水平。技术方案是:一种数控机床加工精度智能分析方法,按以下步骤进行:(一)实时采集、显示、储存数据信息;(二)读取采集到的数据信息,导入到训练环境;(三)将导入的数据信息划分标签;(四)将数据信息标准化处理,并且划分训练集和测试集;(五)定义神经网络训练参数;(六)搭建深度神经网络;(七)开始模型的训练,经过不断训练循环得到最终的零件加工精度训练模型。训练循环得到最终的零件加工精度训练模型。训练循环得到最终的零件加工精度训练模型。


技术研发人员:

陈刚 彭望 吴玮 赵海军 王元庆

受保护的技术使用者:

杭州大天数控机床有限公司

技术研发日:

2022.08.26

技术公布日:

2022/10/25

本文发布于:2024-09-24 08:30:01,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/3/31754.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议