APP下载

一种基于机器视觉的平面加工机床控制系统的设计

2023-01-12潘盛湖张小军

工程设计学报 2022年6期
关键词:轮廓适应度麻雀

潘盛湖,张小军,吕 东

(西南石油大学机电工程学院,四川成都 610500)

中国是制造大国。随着“中国制造2025”的提出,制造业的转型升级和跨越发展显得尤为紧迫而艰巨[1-3]。随着人工智能、工业互联网、大数据等技术与制造业的深度融合,生产制造正逐渐朝着智能化的方向迈进。机器视觉在制造领域的应用得到大量研究,已取得不少研究成果。如:周俊杰等[4]针对机床刀具磨损问题,设计了一种基于机器视觉的刀具磨损测量系统,实现了刀具磨损在线测量。董玲等[5]将机器视觉与逆向工程技术相结合,开发了一套基于三维视觉的激光再制造机器人离线自动编程系统,实现了对复杂形貌零件准确而高效的修复;周晶[6]针对玻璃生产中表面质量检测的需求,研究了基于机器视觉的玻璃精雕机AOI(automatic optical inspection,自动光学检测)方法,有效解决了人工检测效率低的问题;Wang等[7]采用单目视觉测量算法进行漫游三维定位,在保证系统精度和检测实时性的同时,解决了航标识别和三维定位等关键问题,实现了空中自主加油对接;Yu等[8]设计了一种基于机器视觉的目标识别系统,提出了基于PXI(PCI extensions for instrumentation,面向仪器系统的PCI(peripheral component interconnection,外围组件互连)扩展)的机器视觉方案,利用视觉模块实现了图像采集和目标识别,有效提高了火炮系统的标定效率。

在服装、包装等的加工中,常常存在只有纸质图纸或模型样件而无电子加工图的情况。将机器视觉检测技术与传统平面加工机床控制系统相结合,设计了一种基于视觉的平面加工机床控制系统,以实现对纸质图纸或模型样件轮廓尺寸的快速获取,解决人工测量中存在的准确度不高及效率低下等问题,提高平面加工机床控制系统的智能化水平。

1 系统方案设计

1.1 系统工作原理

基于机器视觉的平面加工机床控制系统主要由工业CCD(charge coupled device,电荷耦合器件)相机、PC(personal computer,个人计算机)、运动控制板、步进电机、电源、滑块和导轨等构成,整个加工执行部分集成在同一平台上。系统的结构如图1所示。系统的工作原理为:通过视觉采集终端提取图像;将图像信息上传至PC,由图像处理程序对图像信息进行处理,经过图像降噪、轮廓提取、轮廓降重后得到加工图形完整的轮廓信息;通过转换程序将轮廓信息按照要求的精度离散成大量连续微小线段,并转换成具有PLT文件格式的加工数据,再传输至平面数控切割平台以进行图形加工。

图1 基于机器视觉的平面加工机床控制系统结构Fig.1 Control system structure of plane machining machine tool based on machine vision

系统主要应用于平面切割场景,因此只须实现在平面内的运动。切割平台由滑块和导轨拼接而成。在导轨上设有电机和传送带,当电机转动时传送带会挤压滑块从而实现其在水平方向(X向)和垂直方向(Y向)的运动。在X向导轨的电机处配置切割刀具,以实现对加工材料的雕刻和切割。同时在X向和Y向导轨的末端都设有限位装置,以防止电机移动到工作台外。

1.2 系统功能模块

基于开放式数控系统的设计理念进行设计,使系统具有较好的二次开发能力,便于后续功能集成。系统的功能模块主要有视觉采集模块和运动控制模块,如图2所示。视觉采集模块主要由工业CCD相机、图像采集卡、光源、光源控制器和PC组成,主要负责图像信息的采集和处理。CCD相机通过光源辅助来拍摄图像,将图像信息经图像采集卡转存到PC,由PC的上位机软件对图像信息进行处理,提取加工图形的轮廓信息并转换成数控加工代码,将其传输给运动控制模块。运动控制模块主要由ARM+MCX314控制单元、I/O接口、四轴运动控制接口、显示接口和通信接口等组成,主要负责电机运动的控制和数据通信,进而实现加工。

图2 基于机器视觉的平面加工机床控制系统的功能模块Fig.2 Function module of control system of plane machining machine tool based on machine vision

2 系统功能模块的硬件设计

采用双核结构实现四轴运动控制,并将双核结构封装成独立的控制盒,使其具有很好的移植性。采用ARM系统进行控制,其主控芯片是STM32系列的Cortex-M4内核芯片,该芯片具有高性能、低成本、低功耗的特点。采用MCX314专用运动控制卡来开发运动控制系统,可以大大缩短产品的开发周期。

2.1 主控单元

运动控制模块主控单元中的CPU选用STM32F 407ZGT6,实现数控系统的数据处理、存储管理以及数据交换等功能。选用带DSP的MCX314AS芯片,以实现电机的速度控制、插补驱动和位置控制。STM32F407ZGT6与MCX314AS之间的数据交互采用FSMC总线的方式,组建“主从式”结构方式,使STM32F407ZGT6将MCX314AS当作SARM进行操作。MCX314AS设置在FSMC总线第1个区间的第4区域,地址为6C000000h-6FFFFFFFh。运动控制模块主控单元的硬件连接如图3所示。采用3.3 V电源供电。

图3 运动控制模块主控单元的硬件连接Fig.3 Hardware connection of main control unit of motion control module

2.2 通信接口

STM32F407ZGT6与PC之间的通信通过串口实现。由于PC常用DB9(9针)接头,须进行电平转换,将芯片的I/O端口电平转换为RS232类型。采用SP3232E芯片对STM32F407ZGT6和PC的电平进行转换。设计的RS232标准串口设备通信结构如图4所示。

图4 RS232标准串口设备通信结构Fig.4 Communication structure of RS232 standard serial port equipment

2.3 轴电机控制单元

电机转动由脉冲信号决定。其中限位信号主要为各运动轴的限位和回零信号,通过传感器输入。传感器的信号很容易受到外界干扰,因此在信号传输至电机之前须进行光电隔离以保证输入信号的稳定性和可靠性。采用四通道光电耦合器PC847进行光电隔离。限位信号控制电路图如图5所示。

图5 限位信号控制电路图Fig.5 Circuit diagram of limit signal control

采用2块差分放大芯片DS26LS31CM进行电机控制接口的电平信号转换,其电路图如图6所示。芯片采用通用5 V供电,其输入引脚IN A、IN B、IN C、IN D与外部电机连接以实现四轴运动控制,同时,单个运动轴原点信号也通过该接口进入运动控制单元,以实现回原点操作。

图6 电机控制接口的电路图Fig.6 Circuit diagram of motor control interface

3 视觉检测图像的处理

3.1 图像降噪

在图像采集过程中,由于环境影响、摄像设备的缺陷以及光线差异,会产生不同程度的图像噪声,须进行降噪处理。首先,采用张氏标定法[9]对相机进行标定,使图像坐标系向实际空间坐标系转换来获取单位像素对应的图像实际尺寸大小,并将相机拍摄的原始图像转换为灰度图[10-11];然后,引入改进的自适应特征的小波收缩(feature adaptive wavelet shrinkage,FAWS)降噪算法[12]对灰度图进行降噪。FAWS降噪算法的能量函数和收缩函数如式(1)和式(2)所示。

式中:λ2=4δ2logR,δ2为噪声的方差;d(h,k)为窗口像素的中心,h、k分别为中心像素所在行、列数;m、n分别为中心像素周边像素点所在的行、列数;Q由R×R窗口获得,R一般取值为3;p和q由经验确定。

由FAWS降噪原理可知,参数p和q对降噪结果有较大影响。这2个参数一般采用经验判断方法进行选择,缺乏较为系统的判断依据。针对该问题,提出以常相干函数为适应度值,并将文献[13]所提出的SSA(sparrow search algorithm,麻雀搜索算法)与FAWS降噪原理相结合,提出一种改进的FAWS降噪算法。该算法通过寻找最小适应度值实现对参数p和q的自适应寻优,进而完成图像降噪。

3.1.1 麻雀搜索算法

麻雀搜索算法具有优异的收敛速度和局部搜索能力[14]。算法中引入发现者、加入者以及意识到危险的麻雀作为身份特征,以麻雀的觅食习性推理寻优过程。具有较低适应度值的发现者能够更优先地获得食物,此外发现者还可以为加入者提供觅食方向,并可以获得更大的觅食搜索范围。发现者位置更新描述如下:

式中:t为当前迭代次数;j为优化问题变量的维数;Imax为最大迭代次数;X(i,j)为第i个麻雀在第j维的位置信息;α是一个(0,1]范围内的随机数;R2和S分别为预警值和安全值;O是服从正态分布的随机数,此处为1×1的矩阵;L为1×d的矩阵,矩阵内每个元素赋值为1,d为待优化问题的维数。

R2<S表示觅食环境安全,附近没有捕食者,可以继续进行搜索操作;R2>S表示种群中已有一些麻雀发现周围有捕食者,并向种群中其他麻雀发出警报,此时所有麻雀都须迅速寻找其他觅食区域。

对于加入者,当发现者找到更好的食物时,加入者会立即离开现在的位置去争夺,直到胜利为止。加入者的位置更新描述如下:

在该算法中假设意识到危险的麻雀数为总数量的10%~20%,且位置随机产生,则麻雀位置更新描述如下:

fi>fg表示麻雀处于种群边缘,容易遇到捕食者;fi=fg表示位于中间位置的麻雀意识到了危险,须向其他位置移动来减小危险。

3.1.2 适应度函数设计

在对非仿真图片进行降噪分析时,由于缺乏不含噪声的图片数据,不能利用信噪比等参数对降噪结果进行判别,因此提出一种新的降噪效果判断准则。用常相干函数表示2个数据之间的相干性,其值为0~1。分别用x和y表示降噪后的数据和剔除的噪声数据,则:

3.1.3 改进FAWS算法的执行流程

改进FAWS算法的执行流程为:

1)根据多次降噪效果评价,选择参数p和q合理的取值范围;

2)初始化各参数值,包括发现者和加入者的比例;

3)根据式(3)更新发现者的位置信息;

4)根据式(4)更新加入者的位置信息;

5)根据式(5)更新意识到危险的麻雀的位置信息;

6)循环迭代进行参数p和q的局部更新和全局更新,降噪并求取降噪后图像与被剔除噪声之间的常相干函数值,作为当前适应度值;

7)对比当前适应度值以及最小适应度值,若当前适应度值小于最小适应度值,则将当前适应度值更新为最小适应度值,并保存对应的参数p和q,否则最小适应度值和p、q保持不变;

8)继续循环迭代,重复步骤1)至步骤7),进一步进行局部参数优化和全局参数优化,以更新适应度值和p、q,直到完成设定的迭代次数;

9)更新获得全局最小适应度值和全局最优参数p和q。

3.1.4 改进FAWS算法降噪效果验证

以含0.05椒盐噪声的经典Lean图像为实验对象,设置算法中麻雀种群数量为20,最大迭代次数为500,依据经验p、q分别取为0.1和0.3[13],p和q的边界条件分别为[-0.5,0.5]和[0,0.5],单位阶跃响应为1。改进FAWS算法的降噪效果如图7所示。由图7可知,经过多次迭代,降噪后图像中噪声含量相对于降噪前显著减少。适应度值变化曲线如图8所示。由图8可知,适应度值随着迭代次数的增加呈减小趋势,证明麻雀整体向寻找适应度值减小的方向进化。不同p、q对应的适应度值如图9所示。由图9可知,当p、q分别取为0.1和0.3时,可以获得全局最优解。

图7 改进FAWS算法的降噪效果Fig.7 Noise reduction effect of improved FAWS algorithm

图8 改进FAWS算法的适应度值变化曲线Fig.8 Change curve of fitness value of improved FAWS algorithm

图9 不同p、q对应的适应度值Fig.9 Fitness values corresponding to different p and q

为了进一步验证改进FAWS算法的降噪效果,对含0.02高斯噪声的Lean图像分别采用高斯滤波和改进FAWS算法进行降噪处理,将降噪结果绘制成二维和三维直方图,并与无噪声的Lean原始图像的二维和三维直方图进行对比,结果如图10所示。

由图10可知,虽然高斯滤波和改进FAWS算法都能有效降低噪声,但相比于高斯滤波,经过改进FAWS算法降噪后图像细节部分的像素值更接近原始图像,降噪效果更好。

3.2 轮廓提取

为了更好地获取图像轮廓特征信息,减小图像对比度和亮度变化对轮廓特征的影响,采用性能好、稳定性较高的基于全局阈值的Otsu算法[15]对降噪后的灰度图像进行二值化处理以分割开目标与背景,然后采用Canny算法[16]对二值化处理后的图像进行边缘检测以实现目标边缘和内部的有效分离,最后采用移动最小二乘法[17]对目标边缘进行轮廓拟合以消除边缘检测产生的信息误差,使得轮廓曲线平滑,接近实际图像。

3.3 加工数据生成

提取出图像具体轮廓信息后,采用八通道方向链码的边界跟踪算法[18]将各轮廓按照一定的顺序生成加工路径。PLT文件主要包含图像轮廓的坐标信息和对应刀笔的操作信息,所以直接将处理后的图形轮廓按照要求的精度离散成大量连续的微小线段并转换成PLT文件格式,传输至运动控制模块[19]。PLT文件中所有命令和参数的表达均采用HPGL(Hewlett-Packard graphic language,惠普图形语言)描述,每条命令以分号结束,参数间以逗号隔开。常用的PLT指令如表1所示。

表1 常用PLT指令Table 1 Common PLT instructions

4 系统模块的软件设计

4.1 图像处理模块的软件设计

图像处理模块的部分程序可调用opencv库辅助实现,主要函数如下。

1)函数imageGraying()用于实现图像灰度化。程序为:

2)函数imageDenoise()用于对灰度图的降噪处理,函数imageBinary()用于接收降噪后的图像,并进行二值化处理。

3)图像边缘提取函数contourGet()和轮廓拟合函数contourMatching()用于对加工轮廓信息的提取,函数contourPath()用于对提取的轮廓绘制加工路径。

4)文件转换函数createPltFile()用于将上述加工路径的轮廓信息转换为PLT文件。PLT转换程序如下:

4.2 数据通信模块的软件设计

数据通信模块主要满足以下两部分功能:实现系统与计算机之间的通信,使加工数据得以传输;实现系统各模块之间的通信。其主要程序有:

1)InitHardUart(void)函数用于对串口的初始化配置,以实现STM32F407ZGT6与PC的通信。

2)主控制器初始化函数CPLD_Init(void)用于对STM32F407ZGT6进行FSMC总线时序配置,其中部分程序如下:

5 系统测试与应用

基于机器视觉的平面加工机床控制系统的实验平台如图11所示。图中:①为工业CCD相机,②为PC,③为步进电机,④为PCB(printed circuit board,印制线路板)运动控制板。平台硬件采用模块化设计,执行部分由导轨和步进电机组成。X轴电机头部配置激光头以实现加工图像的雕刻。导轨能够进行平面内X、Y向的运动,最大行程为400 mm×600 mm,能够满足测试要求。

图11 基于机器视觉的平面加工机床控制系统的实验平台Fig.11 Experimental platform of plane machining machine tool control system based on machine vision

为测试系统的性能,加工材料选用厚度为3 mm的亚克力板。首先,将工业CCD相机与PC、PC与PCB运动控制板进行连接,确认系统工作正常后,通过CCD相机获取加工图像信息;然后,将图像信息进行处理,得到加工图像的数据。系统测试流程如图12所示。

图12 平面加工机床控制系统测试流程Fig.12 Test flow of control system of plane processing machine tool

将原图与加工结果进行对比。取13个测量组,测量加工前后图像水平或竖直方向的轮廓间距并计算其误差,结果如表2所示。由表可知:轮廓间距较大时,误差较小;绝对误差在-0.3~0.30 mm以内。可见该平面数控加工系统能够满足服装、包装等的加工需求。

表2 加工前后图像轮廓间距及其误差Table 2 Distance and error of image contour before and after processing

6 结 论

根据服装、包装等行业的生产需求,将数字图像处理技术与传统平面加工机床控制系统相结合,利用机器视觉检测并提取图像的轮廓数据来提高生产效率。

1)设计了一套利用机器视觉采集加工数据的平面加工机床控制系统。系统整体结构精简,易于实现。

2)完成了视觉检测算法架构。将麻雀搜索算法与FAWS降噪原理相结合,提出了自适应参数寻优的改进FAWS降噪算法,并将其与传统高斯滤波降噪进行对比,验证了其先进性。

3)搭建实验平台对该控制系统进行测试。测试结果表明,系统能够通过视觉检测完成平面二维图像的加工,且加工误差较小。利用该系统能够有效降低人工成本,提高生产效率,因此具有一定的工程实用价值。

猜你喜欢

轮廓适应度麻雀
改进的自适应复制、交叉和突变遗传算法
OPENCV轮廓识别研究与实践
拯救受伤的小麻雀
一种基于改进适应度的多机器人协作策略
高速公路主动发光轮廓标应用方案设计探讨
燕子和麻雀
紧盯着窗外的麻雀
自适应遗传算法的改进与应用*
儿童筒笔画
创造早秋新轮廓