2. 清华大学 天津高端装备研究院, 机器人与自动化装备工程研究所, 天津 300300;
3. 中航沈飞民用飞机有限责任公司, 沈阳 110169
2. Research Center for Robot and Automation Equipment, Tianjin Research Institute for Advanced Equipment, Tsinghua University, Tianjin 300300, China;
3. AVIC SAC Commercial Aircraft Company Limited, Shenyang 110169, China
飞机零件的涂装工艺是涂装领域技术含量最高、难度最大的工艺之一,同时也是飞机制造过程中的重要环节,涉及的工序有飞机零件的表面整体打磨、表面清洗、表面处理、表面状态检测和喷涂等众多复杂工序[1]。飞机零件喷涂长期以来依靠人工作业,存在喷涂漆膜厚度不均匀、喷涂效率低、漆料浪费严重等问题。民用飞机零件种类繁多,多架次民机零件的种类达5万余种,且同一筛盘上的零件种类不唯一,零件摆放位置不固定,无夹持装置,技术复杂程度远超现有的机器人喷涂系统。
目前,波音(Boeing)、空客(Airbus)等飞机制造企业仅在整机喷漆或大部件制造中采用自动化喷涂方式[2-3]。波音公司曾将日本川崎KJ314喷涂机器人安装于高架基座和线轨上进行波音777客机的喷涂工作,大大提高了喷涂效率[4]。洛克希德·马丁公司(Lockheed Martin Space Systems Company)大型飞机机器人部件精整系统(robotic component finishing system, RCFS)以及机器人飞机精整系统(robotic aircraft finishing system, RAFS)可实现自动喷涂,已应用于F-35机身表面作业[5]。曹玉满[6]设计了针对航空紧固件的自动喷涂系统,用于航空紧固件的喷涂。文[7-8]研制了用于飞机大部件喷涂的混联机器人系统,提出了整机自动化喷涂系统概念方案。
本文引入三维点云处理技术,对待喷涂零件识别和配准。根据三维模型和点云配准的结果规划喷枪路径。采用Bézier曲线生成机器人关节运动轨迹,实现机器人的平稳运动,保证喷涂质量。
1 系统构成 1.1 硬件系统自动喷涂系统的硬件结构如图 1所示,包括5轴测量系统、筛盘、集控操作台、IRB52喷涂机械臂等。
1.2 软件系统
软件系统架构如图 2所示,视觉测量及特征识别模块根据二维相机获取的零件图像进行零件分类与粗定位。5轴测量系统根据图像处理结果扫描点云,并进行点云配准,将结果发送给轨迹规划模块。轨迹规划模块根据工艺试验的结果规划和优化喷枪路径,然后输出轨迹至轨迹仿真模块。轨迹仿真模块对输入的路径仿真,检验有无碰撞点、奇异点等问题,将结果返回给轨迹规划模块后,进一步修改。修改后将轨迹发送给机械臂喷涂模块。机械臂喷涂模块控制机器人运动完成喷涂作业。
2 视觉识别系统
由于零件种类繁多,且多由人工随机放置在筛盘上,因此工件的种类与位姿均不固定,需要采用三维扫描技术对筛盘上的零件进行识别与定位。在三维扫描过程中,会受到现场其他物体或灰尘等因素的干扰,影响零件识别[9-10]。对多个零件逐个扫描识别也会增加三维扫描的时间,影响生产效率。为降低三维扫描的误识别率,引入二维相机进行预处理工作。通过相机采集筛盘图像,处理图像,识别分割图像中的零件,计算零件中心点坐标。三维相机扫描时,可仅对有坐标数据的局部空间进行扫描,相比于扫描全部筛盘空间有效缩短了时间。同时将分割出来的零件依据目标的最小框选矩形面积和零件轮廓面积进行分类。被判定为同一类的零件,三维相机仅对其中一个进行扫描工作,也可以节省三维扫描时间。扫描完成后,将实际点云与理论点云配准,输出零件的种类与位姿。具体工作流程如图 3所示。
2.1 平面图像处理
二维相机拍摄的图像如图 4所示。对图像进行滤波与开运算处理,分割零件图像。通过采集的图片与筛盘图片进行背景相减,去除一部分筛盘的像素信息。在图像背景相减后,筛盘网格图像会出现较多小面积的无效图像,通过搜寻小面积图像的轮廓,对小于一定阈值的小面积图像变换像素进行剔除,达到去除背景的效果。处理后的图像如图 5所示。
依次计算每个零件图像的像素面积、最小包含矩形面积、最小包含矩形的长宽比等数据,以此为依据对零件进行分类。计算最小包含矩形的顶点坐标和零件中心点坐标,对零件进行定位。如图 6所示,A、B、C、D点是最小包含矩形的4个顶点,P点是零件中心点。
2.2 点云扫描与处理
三维扫描过程分为粗扫描和精扫描2部分[11]。首先,使用三维相机按照无缝衔接的拼接方式从正上方扫描整个筛盘。根据二维图像处理得到坐标和分类信息,选取每一类零件中距离筛盘中心点最近的零件作为精扫描的标志零件。对这些标志零件进行多角度拍摄,获得尽可能完整的零件点云信息。精扫描的结果用于匹配零件种类,完整的点云信息可极大降低误匹配的可能性。扫描得到的点云如图 7所示。随后,从场景点云中分割出零件点云。采用Euclid聚类消除部分背景杂质点,使用平面提取法找到筛盘网格构成的平面信息,使用条件滤波将零件从复杂点云中剥离出来。最后,根据粗定位的零件坐标对点云进行并发分割,找到每一种零件的精拍点云。
2.3 零件识别与位姿配准
民机零件种类繁多且结构复杂,为了提高零件识别的准确率,选用视点特征直方图(viewpoint feature histogram,VFH)描述点云特征。VFH可用于对象和姿态识别,具有高识别率和快速计算等特点[12],被广泛应用于物体匹配和分类工作。
为提高匹配速度,避免重复计算,预先获取所有零件的特征数据并存入数据库中。在识别与匹配时,直接从数据库中读取特征作为算法的输入。
零件识别的具体过程如下:
1) 对零件的三维模型进行预处理。将零件的三维模型转化为STL(stereo lithography)模型,记录平面的顶点、面心和法向量等特征信息。根据这些特征信息将零件模型点云化,作为零件的理论点云。图 8为零件的三维模型以及处理后的零件点云。
2) 利用点云库(point cloud library,PCL)计算理论点云的VFH描述子,存入数据库。在获得实际零件点云后,采用同样的方法计算实际零件点云的VFH描述子。在理论点云与实际点云的特征匹配工作中,为提高匹配效率,为VFH生成k维二叉索引树(k-dimensional tree,kd-tree)索引。基于kd-tree索引采用最近邻法完成匹配[13],获得零件种类。其搜索性能远优于全局最近邻搜索方法,极大地提高了匹配速度。
3) 将理论点云和实际点云配准以判断零件的位置和姿态。本文的零件为刚体,可以通过两两配准的方式将理论点云转化到实际点云坐标系上使其重合[14-15],从而得到2个坐标系的转换矩阵。采用粒子群优化算法(particle swarm optimization,PSO)进行配准,得到零件位于筛盘上的真实位姿。PSO方法是群智能优化算法,具有结构简单、迭代速率快的特点,但算法易陷入局部最优[16]。
因此,在PSO算法的基础上引入滞步系数来提升算法的全局最优搜索能力。根据相邻2次迭代中实际点云与理论点云的平均距离变化判断粒子是否处于滞步状态。当大部分粒子陷入滞步状态时,通过滞步系数增大部分粒子的惯性系数取值范围以飞跃局部收敛,并引入随机数增加粒子多样性,提升全局最优搜索能力。
本文将3个旋转矩阵参数以及3个平移矩阵参数作为粒子的6个维度。在PSO算法中,速度的更新是6维相互影响的,这对于近似处于全局收敛的粒子而言动作幅度过大。因此对接近全局最优状态的粒子解耦合,分别在各个维度上微动,找出适应度减小最快的方向以进一步精确配准。采用改进PSO算法进行点云配准的效果如图 9所示。
3 喷涂作业轨迹规划
喷涂作业轨迹规划分为2部分:喷枪路径规划和机器人关节轨迹规划。前者规划喷枪在Descartes空间中所走的路径,实现对零件的全覆盖喷涂;后者规划机器人各关节的角度轨迹,控制机器人更平稳地运行。
3.1 喷枪路径规划由于航空零件多为复杂曲面零件,若采用整体规划的方法,无法保证整体喷漆的质量,喷涂机器人的路径规划也变得十分复杂,因此需要将复杂曲面分片[17-18]。
待喷涂工件表面平均法向量n可表示为
$\boldsymbol{n} = \left(\sum\limits_{i = 1}^k B_i \boldsymbol{n}_i / \sum\limits_{i = 1}^k B_i\right) /\left\|\sum\limits_{i = 1}^k B_i \boldsymbol{n}_i / \sum\limits_{i = 1}^k B_i\right\|$. | (1) |
其中:k为面片总数,Bi为第i个三角面片的面积,ni为第i个三角面片的法向量。
将工件表面沿上式求得的平均法向量投影,根据投影确定要喷涂的范围,结合预先设定的喷枪倾斜角度和逐行推进过程中零件的最大高度确定喷枪的高度。当各行的喷枪角度设定好且喷枪高度计算完后,再根据得到的喷涂路径点进行圆弧或直线插补得到完整喷涂路径。由于筛盘上通常放置多个待喷涂零件,为减少机器人的转折点,提升效率,将单个零件上的喷涂路径融合优化,得到新的喷涂路径,如图 10所示。
3.2 机器人关节轨迹规划
由于航空零件对表面涂层的均匀度要求较高,因此要求喷涂机器人平稳移动[19],避免冲击和振动,这就需要规划机器人在关节空间的轨迹,控制关节轨迹的角速度、角加速度平滑变化。首先对喷涂路径点求逆解,得到每个路径点的关节角度,然后选择平滑的曲线将这些关节角度串联起来,得到机器人的关节轨迹。工业机器人的关节轨迹规划通常采用3次多项式和5次多项式曲线。多项式曲线需要计算每一个路径点的角速度和角加速度,对于路径点较多的情况,计算烦琐,容易形成偏差。Bézier曲线可以将几个控制点连接成为平滑的曲线,具有良好的几何特性[20-21],并且只需考虑每个路径点的关节角度,而不用计算角速度和角加速度,大大减少了计算量,适用于本系统路径点多且轨迹要求平滑的特点。因此本文采用Bézier曲线来生成关节轨迹。为了保证角速度和角加速度的连续性,通过6个控制点确定一个5阶Bézier曲线,具体可表示为
$\begin{gathered}P(u) = (1-u)^5 P_0+5(1-u)^4 u P_1+ \\ 10(1-u)^3 u^2 P_2+10(1-u)^2 u^3 P_3+ \\ 5(1-u) u^4 P_4+u^5 P_5 .\end{gathered}$ | (2) |
其中:P0、P1、P2、P3、P4和P5为控制点,即路径点的时刻和关节角度;u为曲线参数,满足u∈[0, 1]。
在完成每段Bézier曲线后,需要将这些曲线拼接起来。拼接的原则是曲线必须在拼接点连续、光滑、可导[22],因此,连接点前后的3个控制点必须在同一直线上。图 11是2段5次Bézier曲线拼接的示意图,第1条Bézier曲线由P1、P2、P3、P4、P5和P6共6个点构成;第2条Bézier曲线由P6、P7、P8、P9、P10和P11共6个点构成。为保证2段曲线拼接的连续性,2段曲线在P6点重合。
4 实验结果与分析 4.1 多零件三维点云配准实验
实验中筛盘的尺寸为1.8 m×0.9 m,零件为多种类、多尺寸民机航空零件。计算用工控机参数为:Intel Xeon W1290 3.2 GHz CPU,32 GB DDR4内存,Windows 10操作系统。采用的相机分辨率为2 592×2 048像素,视角79.6°。采用拍照式三维扫描仪,单幅测量范围为60~600 mm,单幅测量精度为±0.005 mm,单幅测量时间小于0.3 s。
为验证匹配效果,在一个筛盘的不同位置摆放9种不同大小和形状的零件各一个,以此验证算法的鲁棒性。其平面图像检测效果如图 12所示,三维点云扫描结果与配准结果如图 13所示。图 13展示了编号为1—9共9个零件的配准效果,乳白色零件为配准后零件点云在筛盘上重构的结果,蓝紫色点云为三维扫描结果。由此可知,二维图像处理能够将零件准确分割,三维配准中的扫描点云基本包络重构零件,展现优良的配准效果。
点云配准精度采用均方根误差评价,可定义为
$d_{\mathrm{RMSE}} = \sqrt{\sum\limits_{j = 1}^n d_j^2 / m}$. | (3) |
其中:m为三维点云中点的个数,dj2为配准后的点云中第j个点与真实点云中最近点的Euclid距离平方。dRMSE的值越小,说明自动配准的效果越好。
由于点云配准过程存在一定的随机性,因此对配准精度进行Grubbs双边异常值检验,以剔除配准过程中的异常值。9种不同零件在100次测试中,保留82次有效数据,其配准精度的均值、标准差等信息如表 1所示。
零件序号 | 平均值/mm | 标准差/mm | 最大值/mm | 最小值/mm | G |
1 | 0.607 | 0.112 | 0.961 | 0.479 | 3.161 |
2 | 0.618 | 0.087 | 0.839 | 0.481 | 2.541 |
3 | 3.015 | 0.468 | 1.896 | 4.149 | 2.423 |
4 | 0.692 | 0.049 | 0.819 | 0.580 | 2.592 |
5 | 0.530 | 0.039 | 0.647 | 0.472 | 3.000 |
6 | 0.829 | 0.183 | 1.396 | 0.536 | 3.100 |
7 | 3.898 | 0.950 | 5.896 | 2.237 | 2.103 |
8 | 1.616 | 0.325 | 2.403 | 1.129 | 2.422 |
9 | 0.821 | 0.129 | 1.200 | 0.607 | 2.938 |
整盘 | 1.403 | 0.113 | 1.625 | 1.166 | 2.097 |
表 1中G表示Grubbs检验统计量,用于判断测量数据中是否存在异常值,计算方法为
$G = \max\limits_{i = 1, 2, \cdots, 100}\left|x_i-\bar{x}\right| / \sigma$. | (4) |
其中:xi为某零件第i次配准的配准偏差,x为配准偏差均值,σ为该零件配准偏差的标准差。
本次实验共进行了100次测试,确定检出水平为0.05,即置信概率为0.95,根据Grubbs检验临界值表可得G95(100)为3.207,表 1中G均小于临界值3.207,因此可以认为剩余配准结果均为有效数据。由表 1数据计算可得整盘零件的配准精度均值为1.403 mm,均值95%置信区间为1.38~1.43 mm。这表明该系统对于大小、形状不同的零件均具有较强的鲁棒性。
实际生产中,筛盘上通常只放置2或3种零件,数量以零件能够互不遮挡、摆满一盘为基准。实际工况下不同零件个数与零件种类的配准效果如表 2所示。
零件种类 | 零件个数 | ||||
2 | 4 | 145.00 | 54.19 | 59.58 | 2.11 |
2 | 6 | 148.00 | 61.45 | ||
3 | 6 | 165.00 | 60.53 | ||
3 | 9 | 168.00 | 62.15 |
由表 2可以看出,由于每种零件只选取一个精扫描,因此扫描时间随着零件种类的增加而增加。而配准时间同时受零件种类与零件数量的影响。本系统可以在180 s的节拍内完成三维点云扫描,在平均60 s的节拍内实现多种零件以平均2.11 mm精度进行自动化配准。
4.2 喷枪路径规划仿真为了检验喷枪路径规划算法对于多个复杂曲面零件的路径规划效果,在同一筛盘上摆放了3个不同姿态的复杂曲面零件,在Robot Studio环境下选用IRB52喷涂机械臂进行仿真。图 14为喷枪路径沿喷枪方向投影到模型表面的结果,黄色实线代表机器人的喷涂路线,黄色虚线代表机器人不进行喷涂工作的运动路线,箭头代表喷枪的行进方向,红、绿、蓝3色坐标系代表工具坐标系,其中蓝色为工具坐标系Z轴,即为喷枪的指向。由图 14可以看出,喷枪轨迹与零件表面基本重合,对于2个相邻的狭长表面,对喷涂路径作了融合处理,根据2个表面的面积权重和法向量方向对喷枪指向进行调整。因此喷枪路径规划算法可以完成不同姿态、复杂表面零件的喷涂路径自动规划任务。
5 结论
本文针对民机零件种类繁多、摆放位置不固定、无夹持装置等问题,研发了一套基于视觉识别的民机零件专用自动喷涂系统。
针对零件识别与位姿匹配,采用二维拍照与三维扫描相结合的方式。应用二维相机对零件粗定位并分类,降低了环境对点云匹配的干扰,减少了三维扫描的时间。在零件种类匹配工作中,应用VFH描述子描述点云特征,并用kd-tree搜索特征,提高识别效率和准确率。改进PSO算法,引入滞步系数和解耦合的思想,提升全局最优搜索能力,加快迭代收敛速度。实现在平均240 s节拍内完成复杂背景下平均精度为2.11 mm的复杂零件自动化点云配准。
针对零件位姿随机且表面复杂的情况,采用曲面分片的办法规划喷涂路径,并用Robot Studio仿真,结果表明:规划算法可以求解出同时针对多个复杂曲面零件的合理喷涂路径。采用Bézier曲线规划机器人关节空间轨迹,实现机器人的平稳运动。
本文研发的自动喷涂系统解决了民机零件种类繁多且位置随机的问题,机器人轨迹规划算法能够满足零件喷涂的需求。实验过程中也发现,环境光线对于分割零件图像有干扰,参数的自适应调整工作有待完善。目前喷涂路径组合仅采用贪婪算法,全局路径寻优的工作有待完善。
[1] |
宋袁曾, 陈洁, 毛景. 大型飞机整机涂装自动化实施探讨与展望[J]. 航空制造技术, 2016(10): 52-56. SONG Y Z, CHEN J, MAO J. Discussion and prospects of trunk aircraft exterior automatic painting for large civil aircraft[J]. Aeronautical Manufacturing Technology, 2016(10): 52-56. (in Chinese) |
[2] |
王国磊, 王宁涛, 陈恳. 面向整机的机器人喷涂系统回顾与展望[J]. 航空制造技术, 2016(16): 76-80. WANG G L, WANG N T, CHEN K. Review and prospects of robotic aircraft painting system[J]. Aeronautical Manufacturing Technology, 2016(16): 76-80. (in Chinese) |
[3] |
冯华山, 秦现生, 王润孝. 航空航天制造领域工业机器人发展趋势[J]. 航空制造技术, 2013(19): 32-37. FENG H S, QIN X S, WANG R X. Developing trend of industrial robot in aerospace manufacturing industry[J]. Aeronautical Manufacturing Technology, 2013(19): 32-37. (in Chinese) |
[4] |
ANANDAN T M. Aerospace manufacturing on board with robots [Z/OL]. (2016-02-18) [2022-05-15]. https://www.automate.org/industry-insights/aerospace-manufact-uringon-board-with-robots.
|
[5] |
SEEGMILLER N A, BAILIFF J A, FRANKS R K. Precision robotic coating application and thickness control optimization for F-35 final finishes[J]. SAE International Journal of Aerospace, 2009, 2(1): 284-290. DOI:10.4271/2009-01-3280 |
[6] |
曹玉满. 航空紧固件自动喷涂机控制系统的开发[D]. 重庆: 重庆大学, 2013. CAO Y M. The design of control system of aerospace fastener automatic spraying machine [D]. Chongqing, China: Chongqing University, 2013. (in Chinese) |
[7] |
缪东晶, 吴聊, 徐静, 等. 飞机表面自动喷涂机器人系统与喷涂作业规划[J]. 吉林大学学报(工学版), 2015, 45(2): 547-553. MIAO D J, WU L, XU J, et al. Automatic spraying robot system for aircraft surfaces and spraying operation planning[J]. Journal of Jilin University (Engineering and Technology Edition), 2015, 45(2): 547-553. (in Chinese) |
[8] |
朱利中. 飞机大部件喷涂机器人的设计与分析[D]. 成都: 电子科技大学, 2015. ZHU L Z. Design and analysis of a spraying robot for large-dimension aircraft components [D]. Chengdu, China: University of Electronic Science and Technology of China, 2015. (in Chinese) |
[9] |
赵继, 赵军, 张雷, 等. 焊缝磨抛机器人视觉算法实现及其试验研究[J]. 机械工程学报, 2013, 49(20): 42-48. ZHAO J, ZHAO J, ZHANG L, et al. Vision algorithm and experimental study on the robotic weld-bead grinding and polishing system[J]. Journal of Mechanical Engineering, 2013, 49(20): 42-48. (in Chinese) |
[10] |
徐超凡. 基于立体光源的工业外观缺陷检测平台的算法设计与实现[D]. 哈尔滨: 哈尔滨工业大学, 2019. XU C F. Algorithm design and implementation of industrial appearance defect detection platform based on stereoscopic light source [D]. Harbin, China: Harbin Institute of Technology, 2019. (in Chinese) |
[11] |
HALBER M, FUNKHOUSER T. Fine-to-coarse global registration of RGB-D scans [C]//2017 IEEE Conference on Computer Vision and Pattern Recognition. Honolulu, USA: IEEE, 2017: 6660-6669.
|
[12] |
RUSU R B, BRADSKI G, THIBAUX R, et al. Fast 3D recognition and pose using the viewpoint feature histogram [C]//2010 IEEE/RSJ International Conference on Intelligent Robots and Systems. Taipei, China: IEEE, 2010: 2155-2162.
|
[13] |
杜振鹏, 李德华. 基于kd-tree搜索和SURF特征的图像匹配算法研究[J]. 计算机与数字工程, 2012, 40(2): 96-98, 126. DU Z P, LI D H. Image matching algorithm research based on kd-tree search and SURF features[J]. Computer and Digital Engineering, 2012, 40(2): 96-98, 126. (in Chinese) |
[14] |
ZHU J H, ZHU L, JIANG Z T, et al. Local to global registration of multi-view range scans using spanning tree[J]. Computers & Electrical Engineering, 2016, 58: 477-488. |
[15] |
GUO R, ZHU J H, LI Y C, et al. Weighted motion averaging for the registration of multi-view range scans[J]. Multimedia Tools and Applications, 2018, 77(9): 10651-10668. |
[16] |
GE Y Q, WANG B Y, NIE J H, et al. A point cloud registration method combining enhanced particle swarm optimization and iterative closest point method [C]//2016 Chinese Control and Decision Conference. Yinchuan, China: IEEE, 2016: 2810-2815.
|
[17] |
SHENG W H, CHEN H P, XI N, et al. Tool path planning for compound surfaces in spray forming processes[J]. IEEE Transactions on Automation Science and Engineering, 2005, 2(3): 240-249. |
[18] |
SHENG W H, XI N, CHEN H P, et al. Surface partitioning in automated CAD-guided tool planning for additive manufacturing [C]//Proceedings 2003 IEEE/RSJ International Conference on Intelligent Robots and Systems. Las Vegas, USA: IEEE, 2003: 2072-2077.
|
[19] |
CAI Z H, DENG S H, LIAO H L, et al. The effect of spray distance and scanning step on the coating thickness uniformity in cold spray process[J]. Journal of Thermal Spray Technology, 2014, 23(3): 354-362. |
[20] |
MA J W, LIU Y, ZANG S F, et al. Robot path planning based on genetic algorithm fused with continuous Bézier optimization[J]. Computational Intelligence and Neuroscience, 2020, 2020: 9813040. |
[21] |
ZHANG L S, SUN L, ZHANG S, et al. Trajectory planning for an indoor mobile robot using quintic Bezier curves [C]//2015 IEEE International Conference on Robotics and Biomimetics. Zhuhai, China: IEEE, 2015: 757-762.
|
[22] |
余伶俐, 龙子威, 周开军. 基于贝塞尔曲线的机器人非时间轨迹跟踪方法[J]. 仪器仪表学报, 2016, 37(7): 1564-1572. YU L L, LONG Z W, ZHOU K J. Non-time trajectory tracking method based on Bézier curve for robot[J]. Chinese Journal of Scientific Instrument, 2016, 37(7): 1564-1572. (in Chinese) |