温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,汇文网负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
网站客服:3074922707
基于
数字
孪生
机械
无序
抓取
系统
设计
DOI:10 3969/j issn 2095 509X 2023 02 012基于数字孪生的机械臂无序抓取系统设计强华1,党宏社2,胡平3(1 陕西工业职业技术学院电气工程学院,陕西 咸阳712000)(2 陕西科技大学电气与控制工程学院,陕西 西安710021)(3 咸阳市新能源及微电网系统重点实验室,陕西 咸阳712000)摘要:为了解决工业生产过程中无序上下料机械臂与料筐的碰撞预测和轨迹规划问题,设计了基于数字孪生技术的机械臂无序抓取系统。系统虚拟仿真层负责模型构建和动态显示;控制层完成工件的识别和定位,利用基于空间投影的快速碰撞检测算法进行碰撞检测,采用关节空间双向搜索算法实现机械臂轨迹规划,利用模糊推理优化工艺参数;实体物理层实现场景扫描和运动数据实时上传。实际抓取实验验证了系统的有效性,机械臂避障准确率达到 98%。关键词:工业机械臂;3D 视觉;数字孪生;无序抓取;碰撞预测;轨迹规划中图分类号:TP24文献标识码:A文章编号:2095 509X(2023)02 0063 04基于 3D 视觉的工件无序抓取在工业生产中的应用逐年增加。抓取过程中由于工件随机堆放于料筐内且每个工件的位姿不同,因此需要解决机械臂工作过程中的碰撞预测和避障问题1。碰撞预测是机械臂安全工作的前提,一旦出现误判会导致撞机事故,因此对碰撞检测和轨迹规划的精度要求较高。上料后料筐位姿的变化增加了碰撞检测的难度,迫切需要可以适应环境变化的无序抓取系统。林义忠等2 提出了基于惯性反馈的机器人智能碰撞传感器,其采用惯性加速度反馈闭环控制模式,但只能检测已经发生的碰撞,不能在碰撞前进行预警;王张飞等3 提出了基于深度投影的三维点云目标分割和碰撞检测方法,其算法耗时较长且精度较低;成居宝等4 提出了基于数控机床特性的碰撞检测算法,只对机床上固有模块进行碰撞检测,没有涉及姿态变化情况下的轨迹规划;文聪等5 提出了融合有效约束 OBB(oriented boundingbox)和 PSO(particle swarm optimization)的碰撞检测算法,利用 PSO 算法寻找碰撞点,算法实现步骤较为繁琐且精度较低,不能满足工业场景的要求;Park 等6 提出了一种计算位置不确定物体碰撞概率的算法,用非高斯形式表示误差分布,但是其只能计算出碰撞的概率且只适用于协作机器人的抓取场景。针对以上问题,本文设计了基于数字孪生技术的机械臂无序抓取系统,建立机械臂与环境的数字孪生体,利用 3D 视觉实时识别工件与料筐的位姿并更新场景模型,利用模型仿真提前预测抓取过程中的碰撞并进行轨迹规划。1无序抓取系统架构基于数字孪生技术的机械臂无序抓取系统总体架构如图 1 所示,由虚拟仿真层、控制层和实体物理层组成。虚拟仿真层利用视觉扫描的环境数据对料筐和环境的模型进行重建,绘制机械臂末端的运动轨迹,并同步显示机械臂的运动过程;控制层完成对工件的识别与定位、碰撞预测和轨迹规划,采用模糊推理对工艺参数进行推理和优化,最终将无碰撞的运动指令通过插补算法发送给机械臂;实体物理层主要包括 Zivid L 结构光 3D 相机,用于拍照并输出场景的 2D 图和点云图。工件抓取采用 FANUC_M210ID 六轴机械臂。2虚拟仿真层设计2 1机械臂虚拟模型建立机械臂的数字虚拟模型用来显示机械臂各个收稿日期:2022 06 14基金项目:陕西省教育厅 2021 年服务地方专项科研计划项目(21JC001);陕西工业职业技术学院自然科学类科研项目(2021YKYB 043)作者简介:强华(1993),女,助教,硕士,主要研究方向为工业自动化与智能控制,307386606 qq com362023 年 2 月机械设计与制造工程Feb 2023第 52 卷 第 2 期Machine Design and Manufacturing EngineeringVol 52 No 2图 1基于数字孪生技术的机械臂无序抓取系统架构轴和末端执行器在空间的位置和姿态7。通过对机械臂进行运动学建模,可根据机械臂各个关节的角度计算得到机械臂本体和末端夹具的位姿。采用 D H 方法对 FANUC_M210ID 六轴机械臂进行建模,通过机械臂轴臂坐标系的相对位置关系建立基座到末端夹具的坐标系映射关系8,构建机械臂 D H 参数表,见表1。根据 D H 方法,建立各轴坐标系之间转化关系,计算坐标系转化矩阵就可以建立机械臂末端位姿与机械臂各轴转角之间的映射关系,完成机械臂的运动学建模。表 1FANUC_M210ID 机械臂 D H 参数连杆 i关节转角i/()关节距离di/m轴臂长度ai/m轴臂扭角i/()100 425007590290008400390002150400089090500 090090基于机械臂运动学模型,根据机械臂各轴的转动角度就可计算出机械臂各个关节和末端执行器的位姿。利用 OpenGL 软件库的接口函数读取机械臂各轴臂 STL 格式的模型,根据坐标系的转化关系进行装配,就可建立机械臂的虚拟仿真模型,根据机械臂各轴角度显示机械臂的状态。2 2环境虚拟模型建立由于待抓取工件放置于料筐中,因此在抓、放的过程中机械臂与料筐壁的碰撞概率很大。建立无上表面的方体料筐模型,模型中提供了设置料筐长、宽、高、厚度、坐标和姿态的接口。采用结构光相机 Zivid L 作为视觉传感器,扫描生成场景物体的点云数据,为虚拟模型构建提供数据。首先对点云进行滤波和聚类,去除点云中的噪声;然后采用在深度图中获取最上层点云数据的方法,获取从最高点向下点云数据层高度为 50 mm的点云,其为料筐的上边缘点云;采用长方体拟合算法,计算得到料筐上边缘点云在相机坐标系下的长 L、宽 W 和中心点的位姿(x1,y1,z1);采用在深度图中获取最下层点云的方法,获取地面点云数据,得到距地面的高度 z0,则料筐的高度 H=z1 z0;最后根据相机坐标系和机器人坐标系的标定结果,利用式(1)将相机坐标系下料筐的坐标转换到机械臂坐标系下。baseTcenter=baseTcameracameraTcenter(1)式中:baseTcenter为料筐中心点在机器人坐标系下的转换矩阵;baseTcamera表示相机坐标系与机械臂基坐标系的转化关系,通过相机与机械臂的手眼标定得到;cameraTcenter为料筐中心点在相机坐标系下的转换矩阵。机械臂和相机坐标系的标定采用张正友标定法。由以上步骤,可实现3D 视觉对料筐尺寸和位姿的实时感知,并可将其坐标转换到机械臂坐标系下。3控制层设计3 1工件定位对待抓取工件的三维模型进行降采样得到其点云模板,利用 SolidWorks 移动模板点云的原点,使原点与机械臂夹具抓取工件的位置点重合。由料筐的中心点和尺寸参数,建立一个只包含料筐空间的感兴趣区域,滤除料筐以外的点云和 2D 图像;然后采用训练好的深度学习实例分割模型Maskcnn 在 2D 图像上对目标工件进行分割得到工件的掩膜,将掩膜映射到 3D 点云得到目标工件的点云感兴趣区域;最后采用点云配准 PPF(pointpair feature)算法,将场景点云与模板点云进行配准,从而得到工件在相机坐标系下的位姿。利用式(1),将相机坐标系下工件位姿转化到机械臂坐标系下。工件定位效果如图 2 所示。3 2碰撞检测利用数字孪生实时构建机械臂模型、料筐模462023 年第 52 卷机械设计与制造工程图 2工件定位效果型,通过 3D 相机定位待抓取工件的姿态,提前对机械臂抓取工件过程中机械臂与料筐的碰撞进行预测。本文提出基于模型空间投影的快速碰撞检测方法,其算法的具体步骤如下。1)坐标归一化:将机械臂各轴关节和末端夹具投影到料筐坐标系下,统一在料筐坐标系下进行碰撞检测。2)料筐侧面投影:分别沿料筐坐标系的 x_z 和y_z 面对料筐的4 个面进行投影,在 x_z 和 y_z 面分别得 4 个矩形投影面。3)末端夹具和机械臂各轴臂投影:将机械臂末端夹具和机械臂各轴臂分别投影到料筐坐标系下的 x_z 面和 y_z 面。4)检测碰撞:通过投影的方式,将三维碰撞检测问题转化为二维平面碰撞问题,在料筐内若末端夹具和机械臂轴臂的投影与料筐发生碰撞,则一定存在投影与料筐相交,因此分别判断 4 个料筐面的矩形投影与夹具、机械臂轴臂投影的碰撞情况,就可以对碰撞进行检测,最终将问题转化为二维平面的料筐投影矩形与线段碰撞问题,通过几何法实现快速的碰撞检测,相较于传统的基于模型导入方式的碰撞检测方法具有更快的检测速度。通过实验测试,该碰撞检测算法耗时仅为 0 2 ms,达到了实时碰撞检测的标准。3 3机械臂轨迹规划在关节空间完成对六轴机械臂的轨迹规划,计算出工件抓取过程中各个轴的旋转角度向量9。采用 T connect 算法实现机械臂轨迹规划,同时在机械臂轨迹起点和终点构建搜索树,在机械臂各轴角度运动范围内随机采样,并以轨迹起点和轨迹终点为树根节点开始扩展,将符合机械臂各轴约束条件且无碰撞的临近采样节点进行连接,直到树中的某一节点与轨迹终点或起点重合时搜索停止,最后将整个搜索过程中无碰撞的节点连接,就得到一条机械臂从起点到终点无碰撞的最短路径。3 4无序抓取工艺参数推理采用模糊推理完成无序抓取工艺参数的计算和优化。对无序抓取案例进行整合和分析,建立专家知识库和模糊规则,模糊规则的输入为工件对称性向量、夹具对称性向量、碰撞检测阈值和放置点精度等。其中工件对称性向量参数表示工件的旋转对称性,包括 x,y 和 z 轴,关于哪个轴对称,则其向量参数为 1。人工输入当前无序抓取场景的各项参数,与知识库的案例数据进行匹配,利用高斯隶属度函数计算出隶属度误差最小的工艺参数,由工艺参数找到专家数据库中对应该参数的抓取工件位姿的对称性优化策略和尝试次数、碰撞检测的精度、轨迹规划精度、轨迹采样精度。工艺参数更新和优化,记录抓取过程的成功率和清筐率,对于全新输入参数的场景直接在知识库中增加,对于已有场景选择效果更好的参数对知识库进行优化。4实体物理层4 1运动状态上传采用网络通信将视觉图像数据和机械臂六轴角度数据实时传输至虚拟仿真层,由于网口通信协议 TCP 相比于 UDP 有更好的传输稳定性和准确性,因此采用 TCP 通信方式。虚拟仿真层分别与机械臂控制器和相机通过 TCP 通信进行连接,虚拟仿真层作为服务器,机械臂与相机作为客户端,在同一网段设置相机、机械臂和虚拟仿真软件的IP 地址。机械臂的控制器每 20 ms 上传一次机械臂各关节的角度、速度和加速度数据。4 2运动指令下发控制层同样通过 TCP 通信的方式将运动指令发送给机械臂控制器,结合轨迹精度要求采用定时插补方式,对规划出的轨迹进行定时采样,得到机械臂各个轴转动角度随时间变化的数组。将数组的长度和每个数组分别发送给机械臂控制器,按照数组数值控制机械臂各个轴的运动。5实际场景验证搭建无序抓取场景,测试基于数字孪生的机械臂无序抓取系统的功能。如图 3 所示,硬件包括FANUC_M210ID 六轴机械臂、夹具、3D 相机、料筐和工控机,上位机软件基于 OpenGL 和 QT 框架编写。经过实验测试,系统可以实现对工件无序抓取过程中的碰撞预测,无碰撞抓取准确率可达 98%。如图 4 所示,在虚拟仿真中根据点云数据实现场景重建,可实现对工件定位并显示其位姿,同时可实现对机械臂的轨迹规划,实现自动避障。562023 年第 2 期强华:基于数字孪生的机械臂无序抓取系统设计图 3实验场景图 4虚拟建模和轨迹规划效果6结束语为了解决机械臂无序抓取过程中的碰撞预测和轨迹规划问题,设计了融合3D 视觉与数字孪生技术的机械臂无序抓取系统。经过实验证明该系统可以实现工件无序抓取和机械臂自动避障,可提前预测抓取过程中的碰撞,为实现安全高效的无序抓取奠定基础。通过实际测试,机械臂在抓取工件的过程中夹具会与相邻的工件发生碰撞,后续需继续开发机械臂夹具与点云的碰撞检测功能;此外机械臂在长期使用过程中夹具的位置会有微小的变化,后续需要开发夹具定期校准算法,对夹具进行校准。