大型航天器舱体外表面装配有多个用于连接各类仪器设备的支架,支架与设备的连接表面需要达到严格的质量要求,才能有效保证仪器设备的正常运转和使用寿命[1-2]。支架安装面相对于整器坐标系具有相关的线性尺寸及形位尺寸公差,由于整器在装配过程中不可避免地产生积累误差,支架安装面在装配后很难一次性达到精度要求。常规的“在位测、离线修”的循环式加工工艺效率较低,因此,支架装配完成后对整器进行原位加工成为当前的迫切需求。多移动机器人原位加工大型构件是一种新型的制造模式,可有效提高大型构件的整体加工效率[3-4]。针对上述需求,采用多移动机器人对装配组合后的航天器舱体支架设备连接面进行原位加工是较为理想的选择[5-6]。但是航天器舱体尺寸大、支架特征种类多、分布位置离散,并且机器人在某一站位下的加工范围有限,因此,为完成所有加工任务,需让各机器人在不同站位与处于不同旋转定位的舱体相互匹配,协同开展作业。综上,有效划分舱体加工区域并合理安排各机器人加工顺序及站位是保证加工顺利实施的关键。
围绕大型构件加工区域划分和机器人站位规划问题,国内外众多学者进行了相关研究。国内,Ren[7]和Wang[8]等针对喷涂机器人在喷涂过程中的位置规划问题,提出了一种基于并行点网 (Parallel point net,PPN)自动表面分割算法的深度学习方法,实现了满足要求的飞机表面自动化分割;杨继之等[9]针对大型舱体舱外支架检测过程中机器人站位难以确定的问题,对工作区域进行了两方面的划分,以此为基础实现了可移动检测机器人的站位优化;Ma 等[10]针对大型舱体局部特征的加工分割问题,基于聚类方法,提出了一种考虑局部特征位置及维数相关性的加工分割方法;Lin[11]和Liu[12]等针对大型机翼结构多机器人协同的装配问题,结合任务密度对加工区域进行了划分,解决了多机器人协同工作时负载不均匀的问题。国外,Mitsi 等[13]以工作空间与关节转角限位为约束条件,基于改进遗传算法和拟牛顿算法对机器人站位和关节转角进行了优化;Lopes 等[14]针对机器人与工件的相对位置问题,采用单目标遗传算法和多目标遗传算法解决了工件位置优化问题;Makhal[15]介绍了一种用于机器人可达性分析和基座位置放置的开源库Reuleaux,减少了额外重新定位的数量。综上,国内外学者在大型构件加工区域划分和机器人站位规划领域已取得较多的成果,推动了多机器人加工大型构件工艺方面的研究,但这些研究方法仅是针对单个机器人或者多台同类型机器人的位置规划,鲜少考虑多个不同类型机器人加工多个不均匀分布特征时的区域划分及站位规划问题。
本文在国内外已有研究的基础上,针对多机器人并行加工大型舱体多支架系统,研究加工区域的最小划分和机器人的快速定位。具体研究内容包括加工系统的描述及特征构建、大型舱体加工区域的两向划分、多机器人加工可行站位集提取及最佳站位点确定,最后以示例舱体为对象进行了仿真分析,验证了所提方法的有效性。
大型舱体移动机器人加工系统坐标系包含测量坐标系{M}、舱体坐标系{C}、支架坐标系{Si}、工具坐标系{TCP}、机器人基坐标系{R}及自动导向车 (Automated guided vehicle,AGV)定位坐标系{P},其加工原理如图1 所示。使用激光跟踪仪测量并建立测量坐标系,确定该坐标系下的舱体坐标位置,同时标定支架坐标系与舱体坐标系的相互关系,最终采用该测量系统获取机器人基坐标系的位置。
图1 大型舱体移动机器人加工原理示意图
Fig.1 Schematic diagram of the processing principle of the mobile robot for the large cabin
使用多移动机器人加工大型舱体的流程如下。
(1)总体加工规划。根据大型舱体结构特征信息规划移动机器人加工站位、加工顺序及移动路径。
(2)机器人定位。机器人移动到指定位置,根据机器人位置信息进行碰撞检验。
(3)刀具定位。使用测量系统,根据各待加工表面的支架坐标系和舱体坐标系的相对关系,确定刀具与加工型面的相对位置关系,完成刀具定位。
(4)钻铣加工。根据测量信息生成加工程序,按照舱体坐标系下的指标要求执行铣削加工与钻孔加工。
(5)磨削加工。根据工艺要求,磨削加工机器人在铣、钻削工艺完成后,执行磨削加工。
(6)检测。对加工完成后的支架面进行检测,确保型面形貌精度及舱体坐标系下尺寸精度指标均满足设计要求。若不满足,则重复以上操作。
假设待加工支架数量为n,支架的ID 号定义为i,支架集合定义为CS,舱体尺寸为L*D(L 为舱体总长度,D 为舱体直径),每个支架的必有工序包含两道:铣削工序l1、钻孔工序l2,而部分精度要求高的支架安装面还含有磨削工序l3。多机加工系统共包含m 台机器人,其中,第j 台和第g 台机器人分别用Rj 和Rg 表示 (j,g = 1,2,…,m,且j≠g)。由于具备磨削工序的支架数量远少于n,因此设定在多机器人系统中,包含m - 1 台不同类型的铣钻机器人系统及1 台打磨机器人系统。按待加工面的工艺需求对支架分别进行机器人匹配,完成任务分配。系统主要参数定义如表1 所示。
表1 多机加工系统主要参数定义
Table 1 Main parameter definition of the multi-robot processing system
参数名称 符号 含义加工工序 li,p 第i 个支架的第p 道工序(i=1,2,…,n;j=1,2,3)各工序加工时间 ti,p,j 第i 个支架的第p 道工序在机器人Rj 上的加工时间机器人匹配支架集 CS(Rj) CS(Rj)={CSj1,…,CSji,…,CSjnj},nj 为机器人Rj 匹配的支架个数;CSji 为对应支架的序号
本文采用的多机器人系统设定m = 4,其中包含3 台用于完成铣钻工序任务的移动机器人系统和1 台用于完成打磨工序任务的机器人系统,3 台铣钻机器人按支架工艺和结构特性,分为低精度铣钻机器人R1、高精度铣钻机器人R2 和针对弱刚性支架的双铣钻机器人R3。舱体支架共分为4 类,包含与各类铣钻机器人匹配的3 种类型和具有打磨工序的类型。本文以包含20 个支架任务的大型舱体为研究对象,舱体尺寸L = 5.6 m,D = 3.3 m,采用的各类型支架特征在舱体坐标系下的分布情况如图2 和表2 所示,其中各个支架的加工任务相互独立。
表2 舱体支架任务的加工工序需求及匹配机器人
Table 2 Processing procedure requirements for the cabin bracket task and the matched robots
支架任务编号 工序要求 机器人7、11、12、13、14、16、18、19、20、22 铣削、钻孔 R1 10、15、21、23、24、25 铣削、钻孔 R2 8、9、17、26 铣削、钻孔 R3 10、16、18、22、26 铣削、钻孔、打磨 R1,R3,R4
图2 支架特征在舱体坐标系下的分布情况
Fig.2 Distribution of support features in the coordinate system of the cabin
舱体上支架的待加工面特征,除了需要打磨的特征外,其他的特征工序均只需要对应一种机器人即可完成加工;而需要打磨的特征,在对应机器人铣削钻孔后,再使用打磨机器人进行打磨。由于单类机器人在固定站位处的加工范围有限,不能覆盖所有任务的加工,且多支架的离散分布,使得舱体需要旋转多次才能保证所有任务的顺利进行。因此,需要根据任务的分布及与机器人的匹配关系,对加工区域进行周向和轴向的划分。
为了保证完成全部支架任务的加工,在多机并行加工任务规划时,需要满足以下约束条件。
式中,Aj 为机器人Rj 的有效加工空间;Rj(qrng)为机器人Rj 的可达空间;qrng 为机器人关节向量范围;CS(Rj)为机器人Rj 的加工任务集;CSv(Rj)为舱体定位在第v 个旋转工位av 时,机器人Rj 的分配支架任务集。
式 (1)约束了机器人的可达性和包络性,可保证在多机并行加工任务规划过程中,所有的支架任务均位于机器人的可达范围内,从而保证所有任务的顺利完成。
假设舱体表面共划分为u×v 个区域,各区域所占空间面积为Au,v。其中,u 为舱体轴线方向上的划分;v为舱体圆周方向上的划分,则加工区域划分时需要考虑的约束条件为
式中,Ac_total为舱体特征占据的所有空间;CSrch(Rj)为机器人Rj 能够加工的任务集。
假设任意一台移动机器人系统MRSj 的站位位置集为,各站位位置处机器人的可加工区域为
。假设机器人Rj 与机器人Rg 位置相邻,则多机站位规划时需要考虑的约束条件为
式中,A j、Ag 为机器人Rj、Rg 的有效加工空间。
此外,由于舱体支架面具有较高加工精度要求,采用6 自由度工业机器人加工时,机器人的工作空间虽然较大,但是空间内部分位置刚度较低,无法满足支架面的加工要求。同时,机器人冗余自由度的存在对其轴向站位存在制约。因此,以机器人刚度和移动平台的稳定性作为主要约束性指标,要求可行工作空间的95%以上区域刚度优于机器人的平均刚度值,并且为了避免奇异位置,在进行机器人站位规划时简化机器人的工作空间,使用圆柱形近似代替机器人的工作空间,从而大大提高了规划效率。
加工区域分别从舱体周向和轴向进行划分。其中周向区域划分的目的是确定舱体旋转的定位角度;而轴向加工区域划分是为了确定机器人沿舱体轴向方向的加工范围。各个机器人在固定站位处工作范围有限,考虑到末端位姿约束,实际工作空间范围更小。因此,大型舱体加工区域的划分目的在于,让机器人以最少的站位数量、较优的姿态完成所有支架任务。
根据机器人的加工范围和舱体结构的尺寸要求,可以确定完成全部支架任务时舱体需要旋转定位的次数。以KUKA_KR500 为例,可知机器人系统在舱体坐标系YCOCZC 面的加工范围远大于1/4 舱体范围,因此舱体只需旋转两个角度即可完成舱体上各个部位的加工。将舱体沿径向展开,以舱体1/4 周长为边界对展开图进行划分,获得所有支架的位置分布 (图3),以及支架在机器人加工可达周向区域的分布 (图4),其中,βi为Zsi 轴相对于ZC 轴的旋转角度,当沿舱体坐标系的YC 轴负方向投影时,如果Zsi 轴相对于ZC 轴的旋转方向为顺时针,βi 取正值,反之,取负值。
图3 舱体展开支架分布图
Fig.3 Distribution diagram of deployed cabin supports
图4 舱体支架在机器人加工可达周向区域分布
Fig.4 Distribution of cabin supports in the circumferential area accessible to robot processing
由图4 可知,支架待加工表面与舱体YCOCZC 面的夹角范围分布在-180°~180°之间,即舱体旋转角度可设定范围为[-180°,180°](假设沿Y 轴正向,舱体绕Y 轴顺时针旋转时,其角度为正)。由于机器人在加工位于水平面下侧的支架任务时,其碰撞概率较大,因此,以支架聚类角度为中心,ZC 轴负方向应留少数加工支架。以最大化支架分布密度作为优化目标,优选舱体的旋转角度,获得的舱体旋转角度及对应角度下的支架分布如表3 所示。
表3 舱体角度划分及支架分配
Table 3 Cabin angle division and support distribution
机器人 32° 116°舱体XC轴正向侧 舱体XC轴负向侧 舱体XC轴正向侧 舱体XC轴负向侧R1 1、12、16 7、8 4、5、6、13、14 —R2 9、17 18、19 15 10 R3 2、3 — — 11、20 R4 12、16 — 4 10、20
舱体旋转角度设为32°和116°,当舱体旋转至对应角度时,舱体另一面的状态即为舱体旋转-148°和-64°时舱体的姿态。因此定义舱体旋转至32°和116°定位时的舱体姿态为旋转工位1 和旋转工位2。舱体定位在两个旋转角度时,支架在测量坐标系中沿XC 轴正、负向的投影分布如图5 和6 所示,可以明显看出舱体不同旋转定位下的支架分布情况。
图5 舱体角度32°时的支架分布
Fig.5 Distribution of supports at cabin angle of 32°
图6 舱体角度116°时的支架分布
Fig.6 Distribution of supports at cabin angle of 116°
在确定舱体的旋转角度后,以支架数量及工序顺序为优先级排列机器人的加工顺序,由于机器人轴向切削范围小于舱体长度,支架分布不均匀且距离较远,因此,初步先将舱体在XC 轴的正、负两侧的轴向区域各沿YC 轴分别等分为两个区域AP1、AP2 和AN1、AN2,其中,P 为正侧,N 为负侧,以此对多机器人进行初始排序。
由于双移动机器人尺寸较大,可以先安排该类机器人的加工任务,完成后双移动机器人即可退出工作区域,以扩大其他机器人的移动区间。具体规划过程:一台机器人先从舱体右侧进入,完成AN1 区域对应支架的加工,然后进入AN2 区域;下一台机器人从舱体右侧沿轴向进入,进行AN1 区域完成对应支架的加工,依次循环;打磨机器人作为最后工序的加工机器人,需等同一区域内所有铣钻机器人完成任务后,再进入该加工区域进行加工,直至此区域内的所有支架均完成加工,如图7 所示。
图7 多机器人加工排序过程示意图
Fig.7 Schematic diagram of multi-robot processing sequencing process
由于移动机器人加工某一支架任务时具有无穷多个位置,因此需要对舱体各旋转角度下的不同类型的机器人进行站位规划,以保证机器人快速高质量地完成对应任务的加工。
为舱体上每个支架分别建立其各自的支架坐标系XsiOsiYsi,可获得每个支架坐标系原点在测量坐标系下的位置信息,以及支架坐标系相对于测量坐标系的姿态。将每个支架坐标系的原点坐标分别设为机器人的工具中心点TCP 的取值,根据机器人逆运动学 (Rj.ikine6s)反求基坐标系位置范围,即可获得支架对应的机器人可行站位集。以上文中获得的舱体旋转角度为依据,求解出舱体在两个定位角度下的机器人可行性站位集,如图8 所示。
图8 各支架对应的机器人可行站位集
Fig.8 Robot feasible station set corresponding to each bracket
接下来,对测量坐标系下的加工区域进行离散化处理,设定两点间距为500 mm,通过将加工区域离散化为多点形式,从而获得由q×q 个点组成的多机器人加工舱体系统的栅格地图,依据移动机器人系统和舱体尺寸,可知q =21。舱体在两个旋转定位角度下,提取使用同一机器人加工支架所对应的机器人基座位置相交点集,合并不同支架的可行站位集。聚类提取并确定具体的机器人站位区域,依次确定每台机器人的可行性站位区域。
获得各加工区域内所有机器人的可行站位集后,需要考虑机器人的刚度指标和奇异性指标作为约束指标,选取每个可行站位区域的中心点作为对应机器人在该区域的站位点,机器人在针对不同加工区域的可行站位集和最佳站位点如图9 所示 (不同颜色的区域表示各机器人在舱体不同旋转工位下的可行站位集,而不同颜色的圆点代表机器人在不同旋转工位下加工舱体不同区域时的最佳站位点)。
图9 机器人可行站位集及最佳站位点
Fig.9 Robot feasible station set and optimal station point
多机器人并行加工大型舱体的加工区域划分及站位规划总体流程如图10 所示。
图10 加工区域划分及站位规划流程图
Fig.10 Flow chart of processing area division and station planning
注:CSPv(Rj)、CSNv(Rj)分别代表在第v个旋转工位时,机器人Rj位于舱体XC轴正向侧和负向侧分配的加工任务集。
以示例舱体为载体,按照上文所述步骤获得舱体的区域划分结果和各类机器人站位位置,以此对多机器人的加工顺序进行规划,舱体在不同旋转定位下的机器人加工顺序如下。
第1 阶段:舱体旋转32°。
(1)首先,双铣钻机器人R3 在舱体XC 轴正向一侧加工,从舱体左侧进入,由停靠位置移动至站位PR31,先后加工CS3和支架CS2;与此同时,高精铣钻机器人R2 在舱体XC 负向一侧加工,从停靠位置移动至舱体左侧的锥形舱段处的站位PR21处,按顺序加工支架CS19 和CS18。
(2)在CS3 和CS2 加工完后,双铣钻机器人R3 退出至停靠位置等待,低精铣钻机器人R1启动,进入舱体XC轴的正向一侧的站位PR11,对CS12、CS16 和CS1 进行加工。
(3) CS1 完成加工后,低精铣钻机器人R1 由站位PR11 处,绕舱体右侧移至舱体XC 轴负向一侧的站位PR12,依次加工CS8 和CS7。
(4)与此同时,在CS19、CS18 加工完成后,高精铣钻机器人R2 从站位PR21 处舱体移动至XC 轴的正向一侧的站位PR22 处加工CS9 和CS17。
(5)在CS9、CS17 和CS8、CS7 加工完成后,高精铣钻机器人R2 和低精铣钻机器人R1 退出至等待区等待。
(6)打磨机器人R4 从舱体左侧进入XC 轴的正向一侧区域,由停靠位置移动至站位PR41,加工CS12,完成后移至站位PR42,加工CS16,全部完成后打磨机器人R4 退出至等待区等待。
第2 阶段:舱体旋转116°。
(1)低精铣钻机器人R1 进入至XC 轴的正向一侧区域的站位PR13,从左至右依次加工CS4、CS6、CS13、CS5 和CS14。
(2)在低精铣钻机器人R1 进入的同时,双铣钻机器人R3 进入XC 轴的负向一侧区域的站位PR32,依次加工CS20 和CS11。
(3)CS20 完成加工后,双铣钻机器人R3 退出至等待区。打磨机器人R4 由左侧进入至XC 轴正向一侧区域的站位PR43,加工CS4,完成后沿舱体轴向,从左侧绕至XC 轴负向一侧区域的站位PR44,加工CS10 和CS20,完成后退出至等待区。
(4)在打磨机器人R4 完成任务CS10 后,高精铣钻机器人R2 由舱体左侧进入XC 轴正向一侧区域的PR23,加工CS15,完成后,高精铣钻机器人R2 退出至等待区。
此时,所有支架任务完成加工(表4)。
表4 舱体不同旋转定位下的支架加工顺序
Table 4 Processing sequence of support under different rotation positioning of cabin body
舱体旋转角度 XC正向 XC负向32°双铣钻机器人R3:3 →2 高精铣钻机器人R2:19 →18低精铣钻机器人R1:12 →16 →1 —高精铣钻机器人R2:9 →17 低精铣钻机器人R1:8 →7打磨机器人R4:12 →16 —116°低精铣钻机器人R1:4 →6 →13 →5 →14 高精铣钻机器人R2:10低精铣钻机器人R1:4 →6 →13 →5 →14 双铣钻机器人R3:20 →11打磨机器人R4:4 —高精铣钻机器人R2:15 打磨机器人R4:10 →20
基于上述过程,获得的多移动机器人系统加工大型舱体多支架任务的过程甘特图如图11 所示。可见,大型舱体总体规划及加工时间为730 min,该时间考虑了舱体旋转时间、移动平台移动时间、定位时间、机器人调试时间、刀具对刀时间、精度测量及复核时间等。并在此时间基础上,考虑了加工时间冗余、机器人归位和舱体构件零点复位时间,依据舱体的旋转速度和机器人的移动速度,在工艺规划中最终增加20 min的冗余时间,因此,多机加工示例舱体多支架总时间为750 min。然而,若采用当前工业生产中“在线测量、离线修正”的分体式加工工艺方法,完成本文研究的大型舱体上全部20个支架任务的加工,至少需要1365 min,本文提出的多机器人并行加工方法使生产效率提高了82%。
图11 舱体多机器人加工系统甘特图
Fig.11 Gantt chart of multi-robot processing system for cabin
(1)针对多移动机器人系统并行加工大型舱体多支架面问题,提出了一种具体的加工流程规划方法。
(2)提出了舱体区域的轴向和周向的两种划分方式,基于栅格地图法及机器人逆运动学求解,获得了机器人的可行站位集和多个加工区域下的机器人最佳站位点。
(3)最后,针对文中的舱体案例,仿真计算获得了多机器人并行加工的总时间为750 min;而采用常规离线分体式切削方法至少需要1365 min。因此,本文的多机器人并行加工方法可以显著提高大型舱体支架加工的生产效率,效率提高了82%。
[1] ZHANG J B, WEN K, YUE Y, et al.Research on key technologies for high-precision whole flexible machining of large-scale multi-supports cabin[C]//2019 IEEE 10th International Conference on Mechanical and Aerospace Engineering (ICMAE).Brussels, Piscataway, NJ: IEEE, 2019: 513-517.
[2] 张加波, 文科, 周莹皓, 等. 航天器大型构件智能制造技术探索与推广应用[J]. 卫星应用, 2018(1): 48-53.ZHANG Jiabo, WEN Ke, ZHOU Yinghao,et al. Exploration and promotional application of intelligent manufacturing technologies for large spacecraft components[J]. Satellite Application,2018(1): 48-53.
[3] WANG W B, GUO Q, YANG Z B, et al. A state-of-the-art review on robotic milling of complex parts with high efficiency and precision[J]. Robotics and Computer-Integrated Manufacturing, 2023, 79: 102436.
[4] 刘保荣, 杨继之, 李海欧, 等. 大型舱体移动机器人加工工艺架构与规划方法[J].制造技术与机床, 2023(8): 146-154.LIU Baorong, YANG Jizhi, LI Haiou, et al. Process architecture and planning methods of mobile robot for large spacecraft capsule[J].Manufacturing Technology & Machine Tool,2023(8): 146-154.
[5] TAO B, ZHAO X W, DING H. Mobilerobotic machining for large complex components:A review study[J]. Science China Technological Sciences, 2019, 62(8): 1388-1400.
[6] 谢福贵, 梅斌, 刘辛军, 等. 一种大型复杂构件加工新模式及新装备探讨[J]. 机械工程学报, 2020, 56(19): 70-78.XIE Fugui, MEI Bin, LIU Xinjun, et al.Discussion on a new machining mode and new equipment for large complex components[J].Journal of Mechanical Engineering, 2020, 56(19):70-78.
[7] REN S N, XIE Y, YANG X D, et al. A method for optimizing the base position of mobile painting manipulators[J]. IEEE Transactions on Automation Science and Engineering, 2017, 14(1):370-375.
[8] WANG G L, HUA X T, XU J, et al. A deep learning based automatic surface segmentation algorithm for painting large-size aircraft with 6-DOF robot[J]. Assembly Automation, 2019, 40(2): 199-210.
[9] 杨继之, 林晓青, 乐毅, 等. 可移动机器人检测铣削系统建模与仿真研究[J]. 机械设计与制造, 2020(7): 170-173.YANG Jizhi, LIN Xiaoqing, LE Yi, et al.Research on modeling and simulation of mobile robot detection milling system[J]. Machinery Design & Manufacture, 2020(7): 170-173.
[10] MA J, SUN J, YAN H, et al. A machining partition method for local features with dimensional correlations of large cabin[J]. Chinese Journal of Mechanical Engineering, 2023, 36(11):72-80.
[11] LIN J M, TIAN W, LI P C, et al.Load balance optimization based multi-robot cooperative task planning for large-scale aerospace structures[C]//International Conference on Intelligent Robotics and Applications. Cham:Springer, 2021: 797-809.
[12] LIU S R, SHEN J X, TIAN W, et al.Balanced task allocation and collision-free scheduling of multi-robot systems in large spacecraft structure manufacturing[J]. Robotics and Autonomous Systems, 2023, 159: 104289.
[13] MITSI S, BOUZAKIS K D, SAGRIS D, et al. Determination of optimum robot base location considering discrete end-effector positions by means of hybrid genetic algorithm[J]. Robotics and Computer-Integrated Manufacturing, 2008,24(1): 50-59.
[14] LOPES A M, SOLTEIRO PIRES E J. Optimization of the workpiece location in a machining robotic cell[J]. International Journal of Advanced Robotic Systems, 2011, 8(6): 73-78.
[15] MAKHAL A, GOINS A K.Reuleaux: Robot base placement by reachability analysis[C]//2018 Second IEEE International Conference on Robotic Computing (IRC). Laguna Hills, Piscataway, NJ: IEEE, 2018: 137-142.
Processing Area Partitioning and Station Planning of Multi-Mobile Robot for Large Cabin