浙江大学学报(工学版), 2019, 53(8): 1594-1601 doi: 10.3785/j.issn.1008-973X.2019.08.018

电气工程、机械工程

基于支持向量机的静压转台热误差补偿

黄智,, 贾臻杰, 邓涛, 刘永超, 杜丽

Thermal error compensation of static pressure turntable based on support vector machine

HUANG Zhi,, JIA Zhen-jie, DENG Tao, LIU Yong-chao, DU Li

收稿日期: 2018-06-15  

Received: 2018-06-15  

作者简介 About authors

黄智(1977—),男,副教授,从事难加工磨削技术与数控装备研究.orcid.org/0000-0003-2208-6290.E-mail:zhihuang@uestc.edu.cn , E-mail:zhihuang@uestc.edu.cn

摘要

在一般补偿器的硬件中无法运行MATLAB等第三方工具软件的代码,导致大多模型不能被应用于机床热误差的实际补偿.为了提高误差建模效率,降低对补偿系统硬件的要求,提出静压转台热误差实时补偿方法. 该补偿方法以支持向量机(SVM)为核心算法,分别使用鱼群算法和狼群算法对支持向量机的核心参数进行前期和后期优化,在保证预测精度的前提下提升建模效率. 通过离线训练MATLAB筛选出支持向量导入到开发的补偿软件中,利用用于过程控制的对象连接与嵌入(OPC)方式对热误差实施实时在线补偿. 与传统多元线性回归建模方式对比,可以看出该模型在精度和效率上均较优.补偿实验的结果表明,转台的轴向误差由原来最大为40 μm降低为约10 μm,转台的加工精度提高了75%,验证了所提出补偿方法的有效性.

关键词: 静压转台 ; 支持向量机 ; 热变形 ; 热误差建模 ; 补偿软件

Abstract

The code of third-party tool software such as MATLAB cannot be run in the hardware of general compensators, which leads to the fact that most models cannot be applied to the actual compensation of the thermal error of machine tools. A real-time compensation method for thermal error of static-pressure turntable was proposed, in order to improve the efficiency of error modeling and reduce the hardware requirements of the compensation system. The compensation method is based on the support vector machine (SVM). The fish population algorithm and the wolf group algorithm are used to optimize the core parameters of SVM in advance and later, and the modeling efficiency is improved under the premise of ensuring prediction accuracy. By the offline training of MATLAB, the support vector is filtered and imported into the developed compensation software, and object linking and embedding for process control (OPC) is used to implement real-time online compensation for thermal errors. Compared with the traditional multiple linear regression modeling method, the proposed model is better in accuracy and efficiency. The results of compensation experiment showed that the axial error of the turntable was reduced from the original maximum of 40 μm to about 10 μm. The machining accuracy of the turntable was improved by 75%, which verifies the effectiveness of the proposed compensation method.

Keywords: hydrostatic turntable ; support vector machine ; thermal deformation ; thermal error modeling ; compensation software

PDF (1238KB) 元数据 多维度评价 相关文章 导出 EndNote| Ris| Bibtex  收藏本文

本文引用格式

黄智, 贾臻杰, 邓涛, 刘永超, 杜丽. 基于支持向量机的静压转台热误差补偿. 浙江大学学报(工学版)[J], 2019, 53(8): 1594-1601 doi:10.3785/j.issn.1008-973X.2019.08.018

HUANG Zhi, JIA Zhen-jie, DENG Tao, LIU Yong-chao, DU Li. Thermal error compensation of static pressure turntable based on support vector machine. Journal of Zhejiang University(Engineering Science)[J], 2019, 53(8): 1594-1601 doi:10.3785/j.issn.1008-973X.2019.08.018

数控机床的热误差与加工参数、冷却液以及机床结构有密切关系,机床所处环境复杂多变,各种不同的温度因素交叉耦合. 如何建立精度高、通用性强、鲁棒性好的机床热误差模型是当前的热门研究课题.

Pahk等[1]分别运用多元线性回归、神经网络以及系统辨识法建立机床热误差模型,其中系统辨识法的预测效果好于另外2种方法. 杨建国等[2]提出在线修正的机床热误差补偿模型,该方法不断用新的数据替代旧的数据,在线修改机床热误差模型,从而使得热误差模型能够保持较好的鲁棒性和精确性. 林伟青等[3]首次将最小二乘支持向量机算法应用于数控机床热误差的预测,相对于最小二乘法而言,该方法有更好的预测精度与泛化能力. Yang等[4]提出递归神经网络算法对机床热误差进行建模,该算法将神经网络输出层的数据反馈到输入层,从而使得模型具有一定的记忆功能,对输入过的历史数据更加敏感,有利于动态数据的建模,其范化能力优于埃尔曼神经网络(Elman neural network,EN)模型. Vyroubal[5]将数控机床分为立柱、主轴轴承、主轴以及刀具夹具,分别使用线性回归方式预测这几个独立个体的热变形,根据4个部分的空间几何位置关系,叠加总误差,折算出最终主轴刀具上的误差. 郭前建等[6]提出基于投影回归(projection pursuit regression,PPR)的数控机床热漂移建模方法,在保证计算精度的前提下,相对于传统的数控机床热误差建模方法,PPR方法计算更加简单. 姜辉等[7]提出基于贝叶斯推断的最小二乘支持向量机(least squares support vector machine,LS-SVM)的数控机床热误差建模方法. 与传统的LV-SVM模型以及反向传递(back propagation,BP)神经网络模型进行对比,基于贝叶斯优化的LV-SVM模型在不同工况条件下仍有较好的预测效果. 姚晓栋等[8]提出基于时间序列算法的数控机床热误差建模方法,算法的主要输入变量为机床的误差序列,温度变量仅作为辅助信号来反映机床主轴的转速,使得模型能够随着机床转速的改变进行自适应调整. 随着研究的深入,热误差模型的稳定性、鲁棒性、精确性都得到了一定的提升,但是较少有模型能直接应用于机床热误差的实际补偿. 主要问题在于:1)上述各种算法的复杂性对补偿系统硬件要求高,普通控制器硬件难以满足要求;2)较多算法严重依赖第三方工具软件,比如MATLAB软件,在一般的补偿器硬件如可编程逻辑控制器(programmable logic controller,PLC)或者单片机上无法运行这些第三方软件.

针对以上问题,本研究开发了可以应用于西门子840D数控系统的数控机床热误差实时补偿方法. 该补偿方法以SVM为核心算法,使用智能算法对SVM参数进行选取. 该补偿系统最大的特点在于,将SVM的训练放在MATLAB中离线进行,将训练筛选出的支持向量导入到开发的补偿软件中,软件利用用于过程控制的对象连接与嵌入(object linking andembedding for process control,OPC)方式对热误差进行实时在线补偿. 在保证模型精度的前提下,降低了对补偿系统硬件的要求,可以在数控系统所在电脑上直接运行补偿程序.

1. 静压转台热误差建模

1.1. 支持向量机模型

Simts等[9]提出机器学习方法,该方法以结构风险最小化原则为理论支撑,选择函数子集及该子集中的判别函数,使实际风险达到最小,可以通过少量训练样本得到小误差分类器.

对于线性问题,令 $f(x)=wx + b$,若对于每一个变量 ${x_i}$,预测值 $f({x_i})$与实际值 ${y_i}$之间的偏差均较小,则 $f(x)$即为最优回归曲线. 上述数学思想的表达式为

$\left. \begin{aligned} &{\rm{min}}\;{{{\rm{||}}w{\rm{|}}{{\rm{|}}^2}} / 2}.\\ & {\rm{s}}{\rm{.}}\; {\rm{t}}{\rm{.}}\quad {\left\{ \begin{aligned}& w{x_i} - b - {y_i} \leqslant \varepsilon ;\\ & {y_i} - w{x_i} + b \leqslant \varepsilon . \end{aligned}\right.} \end{aligned}\right\} $
(1)

式中: $\varepsilon \geqslant {\rm{0}}$,为预测值与真实值的最大允许误差;w为权值;b为偏置.

图1所示,在实际操作过程中,总有一些点不符合最大误差的要求(落在虚线外的点). 虽然可以通过增大 $\varepsilon $,让所有点都落在虚线内,但这样噪声点的存在会使得模型不合理,因此引入容差项 $\xi {\text{、}}{\xi ^{\rm{*}}}$使得部分点可以落在允许误差之外.

图 1

图 1   支持向量示意图

Fig.1   Schematic diagram of support vector


式(1)可以改写为

$\left.\begin{array}{l} \min\; \displaystyle\frac{1}{2}{\left\| w \right\|^2} + C\displaystyle\sum\limits_{i = 1}^l {({\xi _i} + \xi _i^*)} .\\ {\rm{s}}{\rm{.}}\;{\rm{t}}.\;\left\{ \begin{array}{l} w{x_i}{\rm{ + }}b - {y_i} \leqslant \varepsilon {\rm{ + }}\xi _i^* ;\\ {y_i} - w{x_i} - b \leqslant \varepsilon + {\xi _i};\\ {\xi _i}、\xi _i^* \geqslant 0. \end{array} \right. \end{array}\right\}$
(2)

式中:常数C为对超出误差范围 $\varepsilon $的样本的惩罚程度;b为偏置; ${\xi _i}{\text{、}}\xi _i^*$随训练样本点的不同而改变.该问题为二次凸优化的问题,可以引入拉格朗日函数:

$\begin{split} L =& \displaystyle\frac{1}{2}||w|{|^2} + C\displaystyle\sum\limits_{i = 1}^l {({\xi _i} + \xi _i^*)} - \displaystyle\sum\limits_{i = 1}^l {({\eta _i}{\xi _i} + \eta _i^*\xi _i^*)} -\\ & \displaystyle\sum\limits_{i = 1}^l {{\alpha _i}(\varepsilon {\rm{ + }}\xi _i^* + {y_i} - w{x_i} - b)}- \\ & \displaystyle\sum\limits_{i = 1}^l {{\alpha _i}^*(\varepsilon {\rm{ + }}{\xi _i} - {y_i} + w{x_i} + b)} \, . \end{split} $
(3)

式中: $\eta_i{\text{、}}\eta_i^* $为与 $\xi_i{\text{、}}\xi_i^* $相对应的参数, ${\alpha _i}{\text{、}}{\alpha_i^*} $为拉格朗日乘子.

求函数 $L$$w{\text{、}}{\xi _i}{\text{、}}\xi _i^*{\text{、}}b$ 的最小值及对 ${\eta _i}{\text{、}}\eta _i^*{\text{、}}{\alpha _i}{\text{、}}\alpha _i^*$ 的最大值. 可以先求最小值,令l为样本数量,则有

$ \left. \begin{array}{l} \displaystyle\frac{{\partial L}}{{\partial w}} = w - \displaystyle\sum\limits_{i = 1}^l {({\alpha _i} - \alpha _i^*)} {x_i} = 0 \, ,\\ \displaystyle\frac{{\partial L}}{{\partial {\xi _i}^{*}}} = C - {\alpha _i}^{*} - \eta _i^{*} = 0 \, ,\\ \displaystyle\frac{{\partial L}}{{\partial b}} = \displaystyle\sum\limits_{i = 1}^l {({\alpha _i}^* - {\alpha _i})} = 0 \, . \end{array}\right\}$
(4)

则有 $w=\displaystyle\sum\limits_{i = 1}^l {({\alpha _i}\!-\! \alpha _i^*)} {x_i},$ $C = {\alpha _i}^{*}{\rm{ + }}\eta _i^{*}$$\displaystyle\sum\limits_{i = 1}^l {({\alpha _i}^* \!-\! {\alpha _i})} = 0,$ 带入式中将 $w{\text{、}}b{\text{、}}\xi $ 消去,得到

$\left.\begin{array}{l} \max\; \displaystyle\frac{1}{2}\displaystyle\sum\limits_{i,j = 1}^l {({\alpha _i} - \alpha _i^*)} ({\alpha _j} - \alpha _j^*) - \varepsilon \displaystyle\sum\limits_{i = 1}^l {({\alpha _i} + \alpha _i^*)} +\\\quad\quad \displaystyle\sum\limits_{i = 1}^l {{y_i}({\alpha _i} - \alpha _i^*)}\, . \\ {\rm{s}}{\rm{.}}\;{\rm{t}}{\rm{.}}\;\left\{ \begin{array}{l} \displaystyle\sum\limits_{i = 1}^l {({\alpha _i} - \alpha _i^*)} = 0\, ;\\ {\alpha _i},{\alpha _i}^* \in \left[ {0,C} \right]\,. \end{array} \right. \end{array}\right\} $
(5)

根据库恩塔克条件可知,式(5)有解须满足以下条件:

$\left. \begin{array}{l} {\alpha _i}(\varepsilon + {\xi _i} - {y_i} + w{x_i} + b) = 0 \, ,\\ {\alpha _i}^*(\varepsilon + {\xi _i}^* - {y_i} + w{x_i} + b) = 0 \, ,\\ (C - {\alpha _i}){\xi _i} = 0 \, ,\\ (C - {\alpha _i}^*){\xi _i}^* = 0 \, ,\\ {\alpha _i}\alpha _i^* = 0 \, .\\ \end{array} \right\}$
(6)

可以看出, ${\alpha _i}{\text{、}}\alpha _i^*$不能同时不为0,当 $0 < {\alpha _i} < C$${\alpha _i}^{\rm{*}} = 0$)时, ${\xi _i}{\text{、}}\xi _i^* = 0$,此时 ${x_i}$为落在图中虚线上的点,称之为支持向量SV.

对于满足 $0 < {\alpha _i}^* < C$${\alpha _i} = 0$)的标准支持向量,偏置b的表达式为

$b = {y_i} - \varepsilon - \sum\limits_{j \in {\rm{SV}}}^{} {({\alpha _j} - {\alpha _j}^*)} {x_i}.$
(7)

对所有的标准支持向量分别计算b,求其平均值. 得到的拟合函数为

$f(x) = w x + b = \sum\limits_{i = 1}^n {({\alpha _i} - \alpha _i^*)} {x_i}x + b.$
(8)

对于非线性问题,通过核函数将低维空间映射到高维空间中,再在高维空间中寻找最优的拟合超平面. kxx')是满足Mercer条件的任意对称函数,常用的核函数有

$ \left. \begin{array}{l} {\text{多项式核}}k(x,x') = {(\left\langle {x,x'} \right\rangle + d)^p};\;p \in {\bf N},\;d \geqslant 0\, ,\\ {\text{高斯核}}k(x,x') = \exp \;\left( - \displaystyle\frac{{||x - x'|{|^2}}}{{2{\sigma ^2}}}\right)\, ,\\ {\text{线性核}}k(x,x') = xx' \, ,\\ {\rm{Fourier}}{\text{核}}k(x,x') = \displaystyle\frac{{\sin\; \left(N + \displaystyle\frac{1}{2}\right)(x - x')}}{{\sin \;\displaystyle\frac{1}{2}(x - x')}}\, ,\\ {\rm{Sigmoid}}{\text{核}}k(x,x') = \tanh\; (\eta \left\langle {x,x'} \right\rangle + \theta )\, . \end{array}\right\}$
(9)

式中:x'为核函数的中心值,x为预测值,p为多项式的度,σ为函数的宽度参数,N为正整数,η为核心参数,θ为位移参数.

非线性拟合函数的表达式为

$f(x) = w\phi (x) + b = \sum\limits_{i = 1}^n {({\alpha _i} - \alpha _i^*)} k(x,{x_i}) + b.$
(10)

式中:n为采样点数量.

1.2. 智能优化算法

支持向量机精度高、范化能力强,对小样本数据有较好的拟合效果,但是支持向量机的核函数参数的选取对模型的精度有较大的影响,因此核函数参数的选取非常重要. 另外,目前常用的网格法和循环交叉验证法效率较低,在优化维数增加、参数范围变大的情况下,几乎没有可操作性[10]. 利用传统的智能算法对支持向量机参数进行寻优的方法,如粒子群优化最小二乘支持向量机、蛙跳算法优化支持向量机、烟花算法优化支持向量机等基本都只采用一种优化策略,在数控机床热误差的全局和局部寻优过程中不能体现出较好的针对性,从而在很大程度上限制了优化算法的执行效率.

结合人工鱼群算法对初值不敏感、全局寻优能力强、容易跳出局部最优解的特点,和狼群算法在后期的局部寻优过程中收敛速度快的特点,以及支持向量机对多元非线性回归预测精度高、范化能力强的特点,提出基于狼群和鱼群优化支持向量机(FS+WPA_SVM)的数控机床热误差建模方法. 该方法分别使用鱼群算法和狼群算法对支持向量机的核心参数进行前期和后期优化,兼有鱼群算法全局优化能力强以及狼群算法局部收敛速度快的优点,因此,在保证预测精度的前提下,算法执行效率较高.

1.2.1. 鱼群算法

鱼群算法是基于生态学原理的仿生算法,根据自然界中鱼群的生活习性衍生出觅食、随机、群聚以及追尾行为. 鱼群算法的步骤如下.

1)觅食行为. 假设水域中有N条人工鱼. 设第i条人工鱼所处位置为 ${{{x}}_i}$${y_i}$${{{x}}_i}$所在位置的食物量,在其视野范围内随机选择一个位置 ${{{x}}_j}$,若 ${y_j} > {y_i}$,则

${{{x}}_i} = {\rm{Step\_leg}}\;({{{x}}_j} - {{{x}}_i}).$
(11)

式中: ${\rm{Step\_leg}}$为更新步长. 否则,重新随机选择 ${{{x}}_j}$. 如果尝试过一定次数后仍未发现更优位置,则执行步骤2).

2)随机行为. 第i条人工鱼在自己的视野范围内,随机向一个方向移动一步,替代当前位置.

3)聚群行为. 首先确定群鱼中心位置,人工鱼i视野范围内的鱼的数量 ${n_{\rm f}}$,中心位置 ${{{x}}_{\rm{c}}}$

${{{x}}_{\rm c}} = \sum\limits_{j = 1}^{{n_{\rm f}}} {{{{{{x}}_j}} / {{n_{\rm f}}}}} .$
(12)

${y_i}$${y_{\rm c}}$分别为第i条鱼位置与中心位置的食物量,同时设定一个拥挤度因子η. 若满足

$\left. \begin{array}{l} {y_i} < {y_{\rm c}}\, , \\ {y_{\rm c}}/{n_{\rm f}} > \eta {y_i} \, .\\ \end{array} \right\}$
(13)

${{{x}}_{{i}}} = {\rm{Step\_leg}}\;({{{x}}_{\rm{c}}} - {{{x}}_{{i}}}).$
(14)

否则,执行觅食行为.

4)追尾行为. 设第i条人工鱼视野范围内的其他人工鱼中,位置最优的人工鱼为 ${{{x}}_{\rm{b}}}$,其所处位置的食物量为 ${y_{\rm b}}$${n_{\rm{fb}}}$${{{x}}_{\rm b}}$视野范围内鱼的数量. 若满足

$\left. \begin{array}{l} {y_i} < {y_{\rm b}}\, , \\ {y_{\rm b}}/{n_{\rm f}}_{\rm{b}} > \eta {y_i} \, .\\ \end{array} \right\}$
(15)

${{{x}}_i} = {\rm{Step\_leg}}\;({{{x}}_{\rm b}} - {{{x}}_i}).$
(16)

否则,执行觅食行为.

在算法中同时设立一个公告板,记录每次位置更新后所有鱼中最优位置 ${{{x}}_{{\rm{b}}}}$以及它所对应的食物量 ${y_{{\rm{b}}}}$. 完成一定次数的迭代,或者达到前期寻优的精度,算法终止. 鱼群算法的执行流程如图2所示. 鱼群算法具备较好的全局寻优能力,不易陷入局部最优点,对于精度要求不高的场合,可以快速得到一个可行解. 但是在算法的后期,鱼群算法的收敛速度较慢,从粗解到精解会花费大量时间.

图 2

图 2   鱼群算法执行流程图

Fig.2   Execution flow chart of fish population algorithm


1.2.2. 狼群算法

狼群算法是新的仿生智能算法. 算法主要是模拟狼群捕猎过程中的游走行为、召唤行为以及围攻行为. 其中游走以及召唤行为属于局部寻优过程,围攻行为属于全局寻优过程. 算法在执行过程中着重于局部寻优,因此算法后期的局部寻优过程的收敛速度较快. 狼群算法的主要步骤如下.

1)游走行为. 在求解空间内随机生成 $n$匹狼,计算它们的适应度函数,适应度最大的作为首领狼. 除首领狼外最佳的 $m$匹狼标记为探狼,用于在求解域中搜索猎物. 其中, $m$为随机整数, $m$$[n(\alpha - 0.1),\,n\alpha ]$$\alpha $为探狼比例因子. 若探狼 ${{{x}}_{{i}}}$${{{y}}_{{i}}}$优于首领狼 ${{{x}}_{{\rm{b}}}}$${{{y}}_{{\rm{b}}}}$,则更新首领狼并发起召唤行为;若 ${y_i}$< ${y_{\rm b}}$,则探狼向 $h$个方向分别前进一步 $s$,记录下前进后的位置为

${{{x}}_i}^{k + 1} = {{{x}}_i}^k + \sin\; (2\pi j/h){{s}}.$
(17)

式中: $j$为移动方向数. 此时, $j$方向的探狼的适应度为 ${y_{ij}}$,选择函数值最大且大于当前函数值 ${y_{i0}}$的方向,前进一步,替换探狼的状态 ${{{x}}_i}.$ 一直执行游走行为,直到某匹探狼位置优于首领狼或者达到最大游走次数 ${{{T}}_{\max }}$.

2)召唤行为. 首领狼发起召唤行为,首领狼周围的u匹猛狼向首领狼所在位置靠拢, $u = n - m - 1$,在靠拢过程中,狼群以较大步幅向首领狼靠近. 猛狼 ${{{x}}_{{i}}}$$k$+1次迭代后所处的位置为

${{x}}_i^{k + 1} = {{x}}_i^k + {{s}}({{{x}}_{\rm b}} - {{x}}_i^k).$
(18)

3)围攻行为. 将离猎物最近的狼,即首领狼的位置视为猎物的移动位置. 对于第 $k$代狼群,设猎物位置为 ${{{G}}_{{k}}}$,则群狼围攻行为为

${{x}}_i^{k + 1} = {{x}}_i^k + {{s}}\lambda ({{{G}}_k} - {{x}}_i^k).$
(19)

式中: $\lambda $为在[−1,1]均匀分布的随机数. 在围攻过程中,如果新的位置优于原来的位置,则替代原来位置,否则保持原来位置不变.

4)更新狼群. 去除狼群中最差的R匹狼,再随机生成R匹狼:

$R = n\beta .$
(20)

式中: $\beta $为淘汰比例因子.

判断是否达到优化精度要求或最大迭代次数 ${k_{\max }}$,若达到则输出首领狼的位置,即所求问题的最优解,否则转步骤1).

狼群算法的执行流程如图3所示. 图中,Ds为猛狼与首领狼之间的实际距离,Dmin为猛狼与首领狼之间的最小距离.

图 3

图 3   狼群算法执行流程图

Fig.3   Execution flow chart of wolf group algorithm


1.3. FS+WPA_SVM算法

FS+WPA_SVM算法通过智能算法来优化支持向量机关键参数. 算法的执行流程图如图4所示.

图 4

图 4   FS+WPA_SVM算法执行流程图

Fig.4   Execution flow chart of FS+WPA_SVM algorithm


为了验证FS+WPA_SVM算法的执行效果,取空载状态下的转台温升以及变形数据对模型进行训练,然后以不同加载重量下的实验数据对模型进行验证. 为了便于对比2种算法的收敛效果,适应度函数表达式为

${{f}}= {\rm{norm}}\;(Y_{\rm r} - Y_{\rm s},2)/{\rm{size}}\;(Y_{\rm r},2).$
(21)

式中:Yr为数控机床刀尖点的真实偏差,Ys为模型预测结果.

为了验证FS+WPA_SVM算法的执行效率,取相同样本数据分别使用鱼群算法、狼群算法以及FS+WPA_SVM算法进行建模分析,得到的建模效果如图5所示. 图中,f为函数的最优适应度,n为迭代次数. 由图5可知FS+WPA_SVM算法只须进行13次迭代便可收敛,相比较鱼群算法的20次以及狼群算法的30次,算法的优化效率有较大的提升. 另外,本算法在研究所提出的函数的最优适应度f和迭代次数n方面较单一的狼群以及鱼群算法有明显改善.

图 5

图 5   算法执行效率对比图

Fig.5   Comparison chart of algorithm execution efficiency


为了进一步验证FS+WPA_SVM算法的建模精度,使用同样的建模数据以及测试数据,分别使用多元线性回归模型与FS+WPA_SVM模型进行训练和预测. 如图6所示为2种算法的预测效果,y为热误差,t为时间. 由图6可以看出,FS+WPA_SVM的预测精度明显优于多元线性回归模型的预测精度.

图 6

图 6   多元线性回归与FS+WPA_SVM方法预测效果的对比

Fig.6   Comparison of prediction effect of multiple linear regression and FS+WPA_SVM algorithm


为了检验FS+WPA_SVM算法是否存在过拟合现象,使用空载下的转台温升及变形数据进行建模,分别对不同加载重量下的转台热变形进行预测,使用式(21)对拟合效果进行评价. 如图7所示为预测效果的对比,fe为拟合效果,m为加载重量. 由图可知,在改变加载重量的情况下,空载数据建立的FS+WPA_SVM模型依然有较好的预测效果,说明FS+WPA_SVM算法不存在过拟合现象. 因此,算法在实际的数控机床热误差建模应用中,具有一定的实用价值.

图 7

图 7   FS+WPA_SVM在不同加载重量下的转台热误差的预测效果

Fig.7   Prediction effect of thermal error of turntable by FS+WPA_SVM under different loading weights


2. 数控静压转台热误差补偿软件开发

西门子840D数控系统为热误差补偿设置了接口[11],但它的补偿功能仅仅是通过一个温度进行判断,难以满足重型机床多热源的实际现状. 为此,基于840D数控系统的OPC功能,开发重型数控机床温度补偿软件. 利用补偿软件可以计算数控静压转台加工过程中的热变量,并将其发送给数控系统,数控系统的温度补偿原理类似于原点坐标平移的方式. 补偿静压转台因转速及黏度引起油膜温度场变化,从而引起的热误差[12].

2.1. 补偿软件功能设计

由前面的分析可知,转台热误差模型的输入变量为转台关键点的温升. 因此,1)补偿软件须通过串口通信模块实时接收来自现场的转台关键点温升,并将其带入到补偿模型中进行误差预测;2)为了保证模型的实时预测,补偿软件需要实现FS+WPA_SVM算法的热误差建模模块;3)补偿软件须通过实时通信的方式与西门子840D数控系统进行交互,将补偿值送到数控系统中完成补偿. 由于西门子数控系统的开放性限制,补偿软件无法直接与数控系统的数控单元(numerical control unit, NCU)进行交互. 因此,须通过OPC的方式将数据先送给数控系统的PLC,然后再调用PLC的系统功能将数据写入NC完成补偿. 补偿软件模块包括串口通讯模块、热误差预测模块和OPC通信模块,整个补偿系统的流程图如图8所示.

图 8

图 8   补偿系统工作原理

Fig.8   compensation system work principle


2.2. 支持向量机算法嵌入

FS+WPA_SVM算法的训练和预测是2个相互独立的过程,在进行预测的时候只须用到训练样本中的支持向量. 因此,可以在MATLAB中对模型进行训练,将训练样本中的支持向量导入补偿软件中进行预测. 具体操作如下:1)在MATLAB中对样本数据进行训练,得到样本中的支持向量以及拉格朗日函数系数 ${\alpha _i}{\text{、}}\alpha _i^*$,将其导入补偿软件导出并保存;2)通过补偿软件的预留接口,导入支持向量以及 ${\alpha _i}{\text{、}}\alpha _i^*$;3)利用式(10)对转台的误差进行计算. 分布式FS+WPA_SVM的建模以及预测流程图如图9所示.

图 9

图 9   补偿系统原理图

Fig.9   Schematic diagram of compensation system


3. 补偿软件功能验证

3.1. 补偿实验方案与软件设置

实验数控静压转台由大连某设备厂开发,利用数控立车回转工作台改造而成,主要由工作台、伺服驱动系统和液压系统组成. 直径为1 000 mm、最大承载重量为3 000 kg、浮起量为30~150 μm、无极变速最高转速为144 r/min. 实验用数据采集系统使用Labview开发,进行传感器数据的采集、显示与存储. 主要使用分辨率为0.2 μm的上海都多仪器的OD9000电涡流位移传感器和分辨率为0.1 °C的德国贺利氏pt100温度传感器检测油膜厚度变化和转台的温升.

静压转台与位移传感器布置如图10所示,在转台上每间隔120º布置3个位移传感器. 在工作过程中转台的温度传感器布置如图11所示. 采用模糊聚类分析进行温度关键点的选取,最后选取的温度测点为T1、T3、T9、T14. 补偿实验所用硬件部分如图12所示,设置补偿软件补偿值的上下限为5 μm,转台加载重量为400 kg,转速设置为50 r/min.

图 10

图 10   静压转台及位移传感器布置

Fig.10   Static pressure turntable and displacement sensor arrangement


图 11

图 11   温度传感器布置

Fig.11   Temperature sensor arrangement


图 12

图 12   补偿系统软硬件

Fig.12   Hardware and software of compensation system


表 1   温度传感器布置位置及编号

Tab.1  Placement locations and numbersof temperature sensors

温度传感器编号 位置
T1 主轴电机端
T2 主轴电机中部
T3 进油管头
T4 进油管尾
T5 回油管头
T6 回油管尾
T7 底座右
T8 底座左
T9 回油泵电机壳
T10 环境温升左
T11 环境温升右
T12 主轴箱左
T13 主轴箱右
T14 进油泵电机壳

新窗口打开| 下载CSV


3.2. 实验结果与分析

通过对比补偿软件计算得到的补偿值与实际测量的转台轴向变形可以发现,转台的轴向误差由原来最大为40 μm降低为约10 μm,补偿效率为75%. 补偿前后对比效果如图13所示. 由补偿效果可以看出,实际的补偿效果和离线建模的效果有一定差距,这是由于建模时所用温度数据经matlab进行了预处理,而在实际补偿中,经补偿器单片机处理的温度数据并不能使用matlab进行预处理,温度数据存在一些波动。

图 13

图 13   实测值与补偿值效果对比

Fig.13   Comparison between measured and compensation values


4. 结 论

(1)使用鱼群算法以及狼群算法对SVM的关键参数进行选取,提出FS+WPA_SVM补偿算法. 使用实验数据对该算法与多元线性回归算法进行对比,证明了FS+WPA_SVM算法优于多元线性回归算法.

(2)开发转台热误差实时补偿软件,将软件嵌入支持向量机模型,用于计算转台的热误差,并通过OPC方式向数控系统发送补偿数据,最后通过实验验证了补偿软件较好的补偿效果.

(3)本研究未考虑静压转台结构的影响,后续还须进一步研究静压转台的热结构优化和开展实际工况下的热误差补偿应用研究,以达到有效提升实际机床加工精度的目的.

参考文献

PAHK H, LEE S W

Thermal error measurement and real time compensation system for the CNC machine tools incorporating the spindle thermal error and the feed axis thermal error

[J]. International Journal of Advanced Manufacturing Technology, 2002, 20 (7): 487- 494

DOI:10.1007/s001700200182      [本文引用: 1]

杨建国, 任永强, 朱卫斌, 等

数控机床热误差补偿模型在线修正方法研究

[J]. 机械工程报, 2003, 39 (3): 81- 84

[本文引用: 1]

YANG Jian-guo, REN Yong-qiang, ZHU Wei-bin, et al

On-line correction method of thermal error compensation model for CNC machine tools

[J]. Journal of Mechanical Engineering, 2003, 39 (3): 81- 84

[本文引用: 1]

林伟青, 傅建中, 许亚洲, 等

基于最小二乘支持向量机的数控机床热误差预测

[J]. 浙江大学学报: 工学版, 2008, 42 (6): 905- 908

DOI:10.3785/j.issn.1008-973X.2008.06.001      [本文引用: 1]

LIN Wei-qing, FU Jian-zhong, Xu Ya-zhou, et al

Thermal errorprediction of CNC machine tools based on least squares support vector machine

[J]. Journal of Zhejiang University: Engineering Science, 2008, 42 (6): 905- 908

DOI:10.3785/j.issn.1008-973X.2008.06.001      [本文引用: 1]

YANG Z, SUN M, LI W, et al

Modified elman network for thermal deformation compensation modeling in machine tools

[J]. International Journal of Advanced Manufacturing Technology, 2011, 54 (5−8): 669- 676

DOI:10.1007/s00170-010-2961-3      [本文引用: 1]

VYROUBAL J

Compensation of machine tool thermal deformation in spindle axis direction based on decomposition method

[J]. Precision Engineering, 2012, 36 (1): 121- 127

DOI:10.1016/j.precisioneng.2011.07.013      [本文引用: 1]

郭前建, 贺磊, 杨建国

基于投影追踪回归的机床热误差建模技术

[J]. 四川大学学报: 工程科学版, 2012, 44 (2): 230- 233

[本文引用: 1]

GUO Qian-jian, HE Lei, YANG Jian-guo

Thermal error modeling technology for machine tools based on projection tracking regression

[J]. Journal of Sichuan University: Engineering Science Edition, 2012, 44 (2): 230- 233

[本文引用: 1]

姜辉, 杨建国, 姚晓栋, 等

数控机床主轴热漂移误差基于贝叶斯推断的最小二乘支持向量机建模

[J]. 机械工程学报, 2013, 49 (15): 115- 121

[本文引用: 1]

JIANG Hui, YANG Jian-guo, YAO Xiao-dong, et al

Modeling of thermal drift error of CNC machine tool based on bayesian inference based least squares support vector machine

[J]. Journal of Mechanical Engineering, 2013, 49 (15): 115- 121

[本文引用: 1]

姚晓栋, 黄奕乔, 马晓波, 等

基于时间序列算法的数控机床热误差建模及其实时补偿

[J]. 上海交通大学学报, 2016, 50 (5): 673- 679

[本文引用: 1]

YAO Xiao-dong, HUANG Yi-qiao, MA Xiao-bo, et al

Thermal error modeling and real-time compensation of CNC machine tools based on time series algorithm

[J]. Journal of Shanghai Jiaotong University, 2016, 50 (5): 673- 679

[本文引用: 1]

SMITS G F, JORDAAN E M. Improved SVM regression using mixtures of kernels [C]// International Joint Conference on Neural Networks. Honolulu: IEEE, 2002: 2785-2790.

[本文引用: 1]

黄智, 王正杰, 李俊英, 等. 基于FA-LSSVM的数控机床主轴热漂移建模方法: 201610055439.3[P]. 2016-01-28.

[本文引用: 1]

LU H X, Yang J G, XIANG S T

A real time error compensation method for CNC machine tools basedon redevelopment of human-machine-interface

[J]. Applied Mechanics and Materials, 2014, 556−562: 2519- 2522

DOI:10.4028/www.scientific.net/AMM.556-562      [本文引用: 1]

衡凤琴, 黄智, 陈学尚, 等

数控立车静压转台油膜温度场仿真分析及优化

[J]. 机械科学与技术, 2015, 34 (11): 1733- 1737

[本文引用: 1]

HENG Feng-qin, HUANG Zhi, CHEN Xue-shang, et al

Simulation analysis and optimization of oil film temperature field of static pressure turntable of CNC vertical car

[J]. Mechanical Science and Technology, 2015, 34 (11): 1733- 1737

[本文引用: 1]

/