铣削加工机器人(三):机器人加工轨迹优化

2320 字
12 分钟
铣削加工机器人(三):机器人加工轨迹优化
对于给定的加工任务,冗余自由度和变位器转角都会对机器人的加工位姿造成影响。因此,可以通过改变变位器的姿态和冗余自由度,进一步利用机器人的灵活性能,提高机器人的铣削加工性能。在上一篇文章中分别分析了冗余度和变位器转角与机器人刚度的关系,并提出了基于刚度的曲面轨迹分割方法。

本文在次基础上,得到分割后的加工轨迹,同时对冗余度和变位器进行优化,考虑机器人的运动学和碰撞约束,获取每个子区域的最优的冗余度和变位器参数,使整个加工区域的整体刚度指标最优。针对传统算法在进行优化时难以收敛的问题,使用强化学习算法DDPG建立模型优化环境,设计轨迹优化的马尔可夫决策过程,通过DDPG算法的不断学习,实现加工轨迹的最优化。

1 、基于整体刚度指标的加工轨迹优化模型#

本节以提高机器人加工过程中的刚度指标HH为目标,建立一个同时考虑变位器和冗余度的轨迹优化模型。对于一个给定的五轴加工任务,机器人的加工姿态(X,Y,Z,A,B,C)(X,Y,Z,A,B,C)会随变位器旋转角度和机器人冗余度的变化而变化。由前文刚度模型的推导可知,机器人刚度随姿态变化而变化,在加工任务确定的情况下,机器人姿态由冗余自由度和工件设置决定,所以机器人刚度可以看作是关于冗余度和变位器转角的函数。

fst(α1,β1,...,αn,βn)=H(α1,β1,...,αn,βn)f_{st}(\alpha_1,\beta_1,...,\alpha_n,\beta_n)=H(\alpha_1,\beta_1,...,\alpha_n,\beta_n)

根据前文的轨迹分割,假设将加工轨迹分割为nn个不同的子区域,每个区域对应一组最优冗余角和变位器旋转角,优化目标函数设为机器人在加工任务的整体刚度指标HH,并且其是冗余角和变位器旋转角的函数,如下所示:

μ(θ)=det(J(θ)J(θ)T)\mu(\theta)=\sqrt{det(J(\theta)J(\theta)^T)}

另外,机器人加工轨迹优化中还需要考虑许多约束条件,首先,机器人姿态应该避免处于奇异形位或者奇异形位附近。 其次,为了避免加工过程中达到机器人关节极限姿态,加工过程中机器人的各个关节角也应该受到限制,机器人的关节角要处于各个关节的转动范围内,同时也要考虑机器人关节速度不超过关节速度极限,即:

θminθθmax\theta{min}\leq \theta \leq \theta{max}ΔθΔθmax\Delta \theta \leq \Delta \theta {max}

通过可操作度、关节和关节速度等约束,建立起基于分区域轨迹优化方法的变位器旋转角度和机器人冗余角的优化模型。 最后,在对机器人轨迹进行优化后,还需要进一步考虑碰撞问题。在加工平台中,有工件、变位器和夹具等辅助设备,机器人与加工系统发生碰撞不仅会对设备产生损伤,而且会危及研究人员的人身安全,在加工过程中,必须保证机器人不会存在碰撞的发生。因此,使用CoppeliaSim中的物理引擎进行碰撞检测,保证优化后的轨迹在加工过程无碰撞,如图所示。

image-20230902160702345
image-20230902160702345

2 、基于强化学习的机器人轨迹优化方法#

上一节所展示的是一个多维优化问题,问题复杂度会随着区域划分数量的增长而增长。由前文的刚度分析可知,加工区域的整体刚度不是跟随变位器旋转角和机器人冗余角单调变化的。在求解这种高维问题时,使用启发式算法存在陷入局部最优的问题,本节提出使用深度确定性策略梯度算法 **(Deep Deterministic Policy Gradient, DDPG)**来对加工轨迹各个子区域的变位器转角和机器人冗余角参数进行优化。

2.1 基于参数优化的马尔可夫决策过程设计#

强化学习是一种基于马尔可夫决策过程的人工智能机器学习算法,在机器人研究领域得到广泛应用。本文对机器人曲面加工轨迹优化问题进行了建模,优化目标为最大化机器人加工过程中的整体刚度指标HH,将问题转换为马尔可夫决策过程,包括状态空间,动作空间和奖励函数的设计。

如图所示,智能体和环境分别是强化学习的主要元素,智能体根据当前状态ss来产生下一的动作aa,并产生当前的奖励rr。当智能体的动作导致了奖励为正值,智能体后续产生这个动作的概率就会上升,若奖励为负值,智能体产生这个动作的概率就会下降,通过迭代不断优化智能体,使智能体在环境中找到最优解。

image-20230902160947087
image-20230902160947087

**状态空间设计:**在机器人加工轨迹参数优化问题中,状态设置为优化模型中变量的信息,即由各个加工区域的冗余自由度αiα_i和变位器旋转角βiβ_i组成的集合 。

**动作空间设计:**在本文的优化模型中,动作空间根据优化变量的变化而设计,加工参数即各个区域的冗余自由度αi和变位器旋转角βi可以增大、减小或者不变。在DDPG中,参数的变化可以是连续的动作,选择各个参数的动作空间为各个加工参数的变化量 ,根据优化的经验,选择动作空间范围为[-1,1]。

**奖励函数构建:**奖励函数主要通过参数模型优化目标和优化适应度函数进行构建。奖励用于评价当前状态sts_t下选取动作ata_t对环境的好坏影响,奖励函数的设计会影响算法的寻优性能,通常根据寻优目标进行设计,本文的目标是最小化机器人加工的整体刚度指标HHDDPGDDPG算法的目标是使累计奖励最大,因此奖励函数应与整体刚度指标HH呈负相关。

2.2 DDPG算法原理#

DDPG是一种基于策略梯度的强化学习算法。与DQN基于值的强化学习训练方法不同,DDPG通过梯度来更新网络,使其向累计奖励增高的方向进行更新。DDPG算法可以处理连续空间问题,且在高维优化问题上适应性较强,而基于区域分割的机器人参数优化问题是一个高维且连续的问题,因此DDPG算法比较适合本文的参数优化问题。

DDPG算法基于Actor-Critic框架,通过训练以及环境的奖励机制不断更新网络,如图所示。

image-20230902161409445
image-20230902161409445

Actor和Critic分别各自含有两个神经网络,因此,DDPG有四个网络,即:Actor_online、Actor_target、Critic_online和Critic_target。其核心思想是用Actor网络输出一个确定的动作,然后使用Critic网络对动作进行评估,最后对Actor网络进行更新。

Actor网络根据状态输出一个确定的动作aa,Critic_online对动作进行评估,利用策略梯度的方法更新Actor_online:

image-20230902161510816
image-20230902161510816

Critic_target网络对动作aa进行评估,计算Critic网络的损失函数,利用反向传播更新Critic_online:

image-20230902161545786
image-20230902161545786

最后,在经过一定次数的训练后,更新Actor_target和Critic_target网络:

image-20230902161559128
image-20230902161559128

3.3 基于DDPG的参数优化流程#

基于DDPG算法,以最大化奖励rtr_t为目标,将优化的参数作为优化变量sts_t,通过智能体的不断迭代,得到使累计奖励最高的状态sts_t,即机器人整体刚度指标HH最优的加工参数。DDPG的算法步骤可以见表所示:

image-20230902161631532
image-20230902161631532

3 优化结果与分析#

首先,使用DDPG算法与其他常用的启发式优化算法对优化模型进行求解,并对求解效果进行比较,对算法的优化性能在多个方面进行评价,优化轨迹如图所示,为一个凹凸不平的自由曲面,本文使用第3章所示轨迹分割方法,将其分割为4个子区域。

image-20230902161921674
image-20230902161921674

使用Tensorflow框架进行DDPG的设计,在Intel Core i7-7600HQ CPU和GTX965M GPU的硬件配置上运行。关于DDPG算法的参数设置如表所示:

image-20230902161946089
image-20230902161946089

DDPG算法训练结束后,输出最优状态,为了对比DDPG算法与启发式算法之间的优化过程,用于验证DDPG算法进行参数优化的性能。给定一组加工任务,将DDPG算法与粒子群算法(PSO)和遗传算法(GA)等启发式算法进行对比。

支持与分享

如果这篇文章对你有帮助,欢迎分享给更多人或打赏支持!

打赏
铣削加工机器人(三):机器人加工轨迹优化
https://blog.leihub.cn/archives/648/
作者
阿雷
发布于
2023-09-02
许可协议
CC BY-NC-SA 4.0
相关文章智能推荐
1
铣削加工机器人(四):机器人铣削加工软件设计
机器人技术前言 本文介绍了所开发的KUKA机器人曲面铣削加工机器人系统软件,并结合前文介绍的机器人运动学建模、机器人刚度模型分析、加工轨迹分割和基于强化学习的轨迹分区域优化等内容,获取优化后的机器人冗余度和变位器转角参数,使用CoppeliaSim软
2
铣削加工机器人(一):机器人运动学
机器人技术机器人学 1.1 空间形位与齐次变换 机器人在空间的位姿通常有两种表达方式,一种是在笛卡尔空间表示,通过在世界坐标系和机器人末端上建立坐标系,使用笛卡尔坐标描述机器人的位姿;另一种是通过关节空间表示,使用机器人六个关节的角度来描述机器人的形
3
铣削加工机器人(二):机器人刚度性能建模及轨迹分割
机器人技术机器人刚度建模 机器人在进行曲面加工时,铣削加工的铣削力数值较大且方向经常变化,机器人各个关节在抵御铣削力时容易发生形变,累积到末端产生变形误差,从而使机器人加工精度下降。因此,如何提高机器人的刚度性能是目前研究的重点。 1 机器人雅可比矩
4
群晖照片异地备份到 Unraid + Immich 相册搭建详细教程:rsync 同步与踩坑全记录
NAS & 云服务搭建我家里同时有白群晖和 unRAID 两台 NAS ,准备把群晖里攒了几年的照片进行异地备份,单盘 NAS 一旦坏了,照片可就全没了。 我自己折腾了两天,踩了一堆坑,终于跑通了一套「unRAID 定时拉取群晖 + Immich 相册」的方案。
5
西上东下:梵净山雾中徒步记
城市短途漫游朋友嚷嚷了一年的梵净山,最近终于找到了爬山窗口,做足了攻略的我们,直接选择来一波特种兵爬梵净山。 一、周五晚上10点,株洲站出发 我们几个都是从株洲出发的,火车是晚上的卧铺车,10 点出发,第二天凌晨 5:40 到铜仁。一张硬卧 138 块
随机文章随机推荐

评论区

Profile Image of the Author
阿雷
一个小趴菜
公告
本站已从 WordPress 迁移到 Astro,访问更快、更清爽。文章链接保持原样(/archives/文章ID/),评论数据正在陆续恢复中。
分类
标签
最新动态
站点统计
文章
76
分类
15
标签
99
总字数
318,421
运行时长
0
最后活动
0 天前
站点信息
构建平台
EdgeOne Pages
博客版本
Firefly v6.16.8
文章许可
CC BY-NC-SA 4.0
文章目录