隋 振, 徐 峰, 苏振东
(吉林大学 通信工程学院, 长春 130022)
凸轮和凸轮轴作为发动机和投梭机的主要零部件, 已在机械加工, 交通运输等方面取得了广泛运用。而“中国制造2025”发展规划中确定了高端数控机床、 机器人等10大重点制造领域, 也为数控凸轮磨削赢来了一次发展良机。由于凸轮轮廓本身的复杂情况, 使得磨削加工中精度不能得到保障, 而基于升程误差补偿方法具有简便, 易于实现等优点, 凸轮数据直接修正的方法已经在实际生产中得到了广泛应用。
国内外学者对升程误差补偿与曲线光顺做了大量研究, 目前对于凸轮升程处理方法的研究主要从以下3个方面进行: 1) 利用样条曲线对数据进行直接修正。文献[1]介绍了基于非均匀B样条曲线的自由曲线光顺技术; 文献[2]基于3次参数样条曲线, 提出了奇偶隔点插值方法对凸轮升程曲线进行多次循环操作, 提高凸轮轮廓精度。2) 结合频谱分析与滤波技术的曲线修正。文献[3]提出将实际获得的凸轮升程数据与理论凸轮升程数据, 以角度为自变量升程为因变量分别进行快速傅里叶变换, 截取15~25个点的数据进行融合, 将获得的新数据进行快速傅里叶反变换作为新的凸轮升程数据; 文献[4,5]将基于小波曲线重构用于曲线修正。3) 基于智能算法的凸轮升程误差曲线修正。文献[6]提出基于加权支持向量机的凸轮升程误差拟合方法, 根据圆率符号判断是否连续, 通过支持向量机方法对凸轮升程误差进行拟合, 使得升程值光顺点数达到最大; 文献[7]提出了数据驱动的自适应惩罚样条进行曲线修正。
笔者根据上述文献, 结合滤波技术与智能算法补偿技术, 提出了基于遗传算法的凸轮升程误差修正方法, 以凸轮升程二阶光顺为目标进行凸轮升程误差的修正, 根据小波变换方法计算二阶光顺值, 采用遗传算法调整凸轮升程误差。
凸轮轮廓精度主要受到砂轮尺寸误差, 形状误差, 位置误差以及动态模型中非线性因素和不确定性的影响, 导致精度降低[8]。磨削过程中当砂轮磨损时, 砂轮受力和磨削温度发生变化, 经过一段时间磨削需要进行砂轮休整, 休整的过程中会造成尺寸误差和形状误差的形成。如图1所示, 由于进给过程中两轴还存在滞后等问题, 造成了系统磨削过程中存在位置误差。这些误差经过测量与计算得到实际升程误差。
图1 凸轮磨削误差Fig.1 Cam grinding error
在凸轮轮廓的评判中以凸轮的轮廓误差作为轮廓的评判标准, 但无论是升程表还是轮廓两者反应的本质都是统一的, 升程表可以通过反转法, 求得凸轮轮廓, 凸轮轮廓也可反向求得升程表。由文献[9]也可得出凸轮升程误差的变换趋势与轮廓误差的变化趋势基本一致。在磨削加工过程中磨床是严格按照切削点跟踪模型[10]得到X轴和C轴数据, 但通常情况下很难保证实际运动轨迹与理论运动轨迹一致, 而升程补偿为最易于实现的离线补偿方式。工程实践中得出, 直接升程误差补偿由于破坏了原曲线光顺条件导致并未取得非常良好的磨削效果, 所以选择合理的补偿算法提高凸轮的加工精度和加工质量显得格外重要。
将升程误差作为补偿值补偿于理论升程误差会造成补偿后的凸轮升程曲线不光顺, 导致磨削过程中切削力和机床加速度发生突变, 对机床和磨削工件本身产生巨大影响。文献[11]提出了一种适合工程应用的曲线光顺准则: 1) 曲线C2连续; 2) 没有多余的拐点; 3) 曲线二阶导数变化比较均匀; 4) 曲线二阶导数绝对值较小, 按以上原则当曲线的二阶导数合理时曲线达到光顺要求。
(1)
为提高实际凸轮轮廓精度, 笔者采用升程误差补偿方法。凸轮磨削系统升程误差补偿流程框图如图2所示。框架主要由2部分组成: 小波滤噪, 遗传算法修正。
图2 凸轮升程误差补偿结构框图Fig.2 Structure diagram of cam lift error compensation
完成待优化升程曲线的二阶差商求解后, 采用小波变换[12]方法进行曲线分解与重构, 通过小波分解可以获得函数任意尺度分解的低频成分和高频成分。若待优化凸轮升程曲线二阶差商序列看成一组信号, 该信号包含两部分内容, 一部分是信号中的低频部分, 包含了曲线二阶差商变化的真正趋势; 另一部分是由误差引起的高频部分, 但高频部分不一定完全都是噪声, 通过强制去噪可能使得丢失关键信号。为了不滤除高频信号中有用信号, 采用小波阈值滤噪, 具体方式按以下步骤进行:
选择合适的小波基与分解层数,dbN系列小波具有有效的分析和综合能力选择其作为基小波, 根据不同的输入值采用不同的分解层数j, 对含噪声信号进行小波分解, 得到ωj,k。
选取合理的阈值λ与软阈值函数, 对小波系数ωj,k进行处理低频部分保留信号, 高频部分采用软阈值滤噪, 软阈值公式为
(2)
阈值处理后的估计小波分解系数与低频系数进行小波重构获得理论二阶光顺值。具体步骤如图3所示。
图3 小波软阈值去噪流程框图Fig.3 Flowchart of wavelet soft threshold denoising
3.2 遗传算法曲线误差修正
3.2.1 优化目标的确定
(3)
3.2.2 遗传算法求解
遗传算法[13-15]是模仿生物进化过程求解非线性优化问题, 该算法用个体基因代表原始问题, 用染色体代表问题的解, 在特定环境采取竞争的形式让适应度强的个体生存并产生后代, 后代继承了父代优秀的基因, 种群在竞争过程中不断进化, 最后得到适应度最强的个体完成最后解的求解, 具体步骤如下。
1) 产生初始种群。将问题进行编码, 产生初始种群。编码主要采用二进制编码, 编码的长度由实际所需的精度决定。
图4 遗传算法流程图Fig.4 Flowchart of genetic algorithm
2) 惩罚函数确定。惩罚函数法是一种间接求解约束问题的方法, 主要思想是将约束条件作为一系列的惩罚条件使有约束问题转化为无约束问题, 笔者采用内点惩罚函数的方法构造新函数为
(4)
其中r(k)为惩罚因子;j为约束项个数;K为迭代次数;X为升程误差; 约束项。惩罚因子r(k)为正值在设计过程数值递减, 经过该步骤将有约束问题f(X)min转化为无约束问题φ(X,r(k))min, 随着迭代次数的增加达到最优解。
3) 适应度函数。遗传算法进行搜索时, 适应度函数作为区分种群好坏, 其选择很大程度上决定了算法的优劣, 适应度越高越接近问题最优解。适应度函数为
(5)
其中φ(X,r(k))为目标函数值; maxφ(X,r(k))为目标函数的最大值; minφ(X,r(k))为目标函数的最小值。
4) 选择。从原来的种群中选择优秀的样本, 淘汰低劣的样本。选择过程主要以适应度函数作为评价标准, 采用竞争方式选择个体。
5) 交叉。染色体的交叉方式, 采用均匀交叉。
6) 变异。染色体变异方法采用均匀变异。
以C市第1机床厂实际磨削升程数据作误差样本进行分析。图5为凸轮升程误差放大50倍时的轮廓形状, 凸轮磨削升程允许误差值为0.02 mm, 其中曲线A为凸轮理论轮廓曲线, 曲线B与曲线C为凸轮允差范围, 曲线D为实测凸轮轮廓曲线。可知凸轮轮廓在实际磨削后存在正、 负相超差。超差的区域主要为曲率变换较大的区域, 最大升程误差为: 0.089 2 mm。图6为理论升程曲线图。
若直接采取比例升程补偿方法:hx(θ)=hs(θ)-key(θ)。其中hx(θ)为直接补偿后的升程曲线;hs(θ)为理论升程去曲线;ey(θ)为原始升程误差;k为补偿系数一般取0.7~1之间。取k为0.7时升程曲线与二阶差商曲线如图7所示。图8所示的二阶差商曲线曲线波动频繁, 未能达到升程光顺光顺要求。
采取遗传算法设计误差修正方法, 通过C市第1机床厂提供的软件获得相位误差为0.751°。调整相位误差后采用小波滤噪求解升程曲线最优二阶差商值, 选取db3小波作为基小波, 分解层数选为5层, 选择的软阈值系数为7×10-4, 图9为滤噪后的二阶差商曲线。采用遗传算法修正升程误差, 对于远休止角与近休止角部分升程误差设为0, 其余部分以升程误差0.5倍作为下限, 原升程误差作为上限, 在该范围内修正, 目标函数φ(X,r(k))值如图10所示。图11为修正后的凸轮升程误差, 图12为修正后凸轮升程的二阶差商曲线。
图5 凸轮实际磨削图 图6 凸轮升程图 Fig.5 Cam-processed and tested Fig.6 Cam lift curve
图7 0.7倍的凸轮升程误差 图8 比例补偿凸轮升程曲线的二阶差商 Fig.7 Seventy percent cam lift error curve Fig.8 The original two order difference Compensation cam lift curve
图9 小波滤噪后的升程曲线二阶差商 图10 目标函数值迭代图 Fig.9 Cam Lift curve of two order difference curve after wavelet denoising Fig.10 Iteration of objective function
图11 修正后的凸轮升程误差 图12 修正后凸轮升程二阶差商 Fig.11 Corrected cam lift error curve Fig.12 Corrected cam lift curve of two order difference curve
笔者对凸轮升程误差补偿修正进行了研究, 提出了基于遗传算法的凸轮升程误差修正方法。通过Matlab分析了比例升程补偿与基于遗传算法的升程补偿, 仿真结果表明基于遗传算法的升程误差修正使修正后的升程曲线二阶差商值光顺, 有助于提高轮廓和数控凸轮的磨削精度。
参考文献:
[1]LIN H, WANG G, DONG C. Constructing Iterative Non-Uniform B-spline Curve and Surface to Fit Data Points [J]. Science in China, 2004, 47(3): 315-331.
[2]唐浩, 邓朝晖, 万林林, 等. 基于交替隔点插值的凸轮升程拟合方法在磨削加工中的应用 [J]. 机械工程学报, 2012, 48(23): 191-198.
TANG Hao, DENG Zhaohui, WAN Linlin, et al. Application of Cam Upward Fitting Method Based on Alternating Partition Interpolation in Grinding [J]. Chinese Journal of Mechanical Engineering, 2012, 48(23): 191-198.
[3]WATTS H G, HUNTER M R, THOMPSON R E. Method for Generating Axis Control Data for Use in Controlling Grinding Machine and the Like and System Therefor [P]. US: US4791575, 1988.
[4]WANG W, ZHANG Y. Wavelets-Based NURBS Simplification and Fairing [J]. Computer Methods in Applied Mechanics & Engineering, 2010, 199(5/8): 290-300.
[5]张力宁, 张定华, 刘元朋, 等. 基于曲率图小波分解的平面曲线光顺方法 [J]. 计算机应用研究, 2005, 22(11): 250-252.
ZHANG Lining, ZHANG Dinghua, LIU Yuanpeng, et al. High Curve Smoothing Method Based on Wavelet Decomposition of Curvature Chart [J]. Application Research of Computers, 2005, 22(11): 250-252.
[6]王洪, 戴瑜兴, 谭彦杰, 等. 基于加权支持向量机的凸轮升程误差拟合方法 [J]. 计算机工程与科学, 2016, 38(5): 1057-1065.
WANG Hong, DAI Yuxing, TAN Yanjie, et al. Method of Cam Lift Error Fitting Based on Weighted Support Vector Machine [J]. Computer Engineering and Science, 2016, 38(5): 1057-1065.
[7]YANG L, HONG Y. Adaptive Penalized Splines for Data Smoothing [J]. Computational Statistics & Data Analysis, 2017, 108(1): 70-83.
[8]ZHANG X H, DENG Z H, AN W K, et al. A Methodology for Contour Error Intelligent Precompensation in Cam Grinding [J]. The International Journal of Advanced Manufacturing Technology, 2013, 64(1): 165-170.
[9]黄强. 凸轮轴数控高速磨削加工误差在位测量及补偿关键技术研究 [D]. 长沙: 湖南科技大学机电工程学院, 2014.
HUANG Qiang. Camshaft NC High-Speed Grinding Error in Situ Measurement and Compensation of Key Technology Research [D]. Changsha: College of Mechanical and Electrical Engineering, Hunan University of Science and Technology, 2014.
[10]郭盟. 凸轮磨削的建模与控制 [D]. 长春: 吉林大学通信工程学院, 2012.
GUO Meng. Cam Grinding Modeling and Control [D]. Changchun: College of Communications Engineering, Jilin University, 2012.
[11]戴霞, 彭国华, 叶正麟, 等. 一种基于拟合二阶导数曲线的光顺算法 [J]. 计算机工程与应用, 2005, 41(33): 86-90.
DAI Xia, PENG Guohua, YE Zhenglin, et al. A Smoothing Algorithm Based on Fitting Second Derivative Curve [J]. Computer Engineering and Applications, 2005, 41(33): 86-90.
[12]杨建国. 小波分析及其工程应用 [M]. 北京: 机械工业出版社, 2005.
YANG Jianguo. Wavelet Analysis and Its Engineering Application [M]. Beijing: Machinery Industry Press, 2005.
[13]GARCIA-CAPULIN C H, CUEVAS F J, TREJO-CABALLERO G, et al. A Hierarchical Genetic Algorithm Approach for Curve Fitting with B-Splines [J]. Genetic Programming and Evolvable Machines, 2015, 16(2): 151-166.
[14]玄光男, 程润伟. 遗传算法与工程优化 [M]. 北京: 清华大学出版社, 2004.
XUAN Guangnan, CHENG Runwei. Genetic Algorithm and Engineering Optimization [M]. Beijing: Tsinghua University Press, 2004.
[15]YOSHIMOTO F, HARADA T, YOSHIMOTO Y. Data Fitting with a Spline Using a Real-Coded Genetic Algorithm [J]. Computer-Aided Design, 2003, 35(8): 751-760.