一种基于模型的机器人磨削控制方法与流程

未命名 10-25 阅读:57 评论:0


1.本发明涉及机器人打磨技术领域,具体是一种基于模型的机器人磨削控制方法。


背景技术:

2.在工业生产制造过程中,很多行业都需要使用到机器人打磨,使得机器人砂带磨削加工应用变得越来越广泛。现有的机器人打磨还是属于一种精度较为粗糙的状态,对于一些精度较高的打磨工件,还比较难以胜任。例如,航空航天发动机叶片等高尺寸精度、高表面质量要求的工件,需要有非常精确的力量控制精度,才能达到理想的磨削质量要求。目前基于自适应阻抗模型的机器人磨削控制来说,由于定位精度还不够,导致工件安装定位误差及尺寸一致性差等因素,特别是在砂带和工件起始阶段的冲击造成力超调,从而导致产品质量较差。为此,还需要一种能够进一步提高力控制,特别是可以恒力磨削的机器人磨削控制方法。


技术实现要素:

3.针对现有技术的不足,本发明的目的是提供一种基于模型的机器人磨削控制方法,其能够解决背景技术描述的技术问题。
4.实现本发明的目的的技术方案为:一种基于模型的机器人磨削控制方法,包括以下步骤:
5.步骤1:建立基于位置机器人与环境接触的自适应阻抗控制模型,自适应阻抗控制模型用于模拟出期望机器人作用于待打磨工件的期望作用力fd与机器人在待打磨工件在进行磨削时的实际接触力fe的差值δf,也即δf=f
d-fe,表示力误差,
6.步骤2:计算出受参数ξ影响的机器人需要到达的参考位置xr;
7.步骤3:采用q-learning算法所输出的q表作为确定参数ξ取值的柔顺控制策略,进而使得基于参数ξ实现机器人进行移动的柔顺控制策略,以改变操作端上模具夹具所夹持的待打磨工件和打磨设备之间的接触力,从而达到恒力磨削效果,
8.q-learning算法采用马尔科夫决策模型m来描述,马尔科夫决策模型m={s,a,p,r,γ},其中,p表示状态转移概率,用概率ε来代替,也即表示以随机方式选取参数ξ值的概率为ε,以1-ε的概率选择q表中相应的最大值为参数ξ的值,s表示状态,将力误差δf作为状态s,a表示每个状态可执行动作的集合,用参数ξ来表示a,r表示奖励函数,γ表示学习过程中的折扣因子,为常数,γ∈[0,1],
[0009]
奖励函数r(δf)基于力误差δf来计算得到:
[0010][0011]
采用ε-greedy策略来训练q表格,并采用公式

来使ε衰减:
[0012][0013]
式中,maxepisode表示最大训练回合数,eps表示当前训练回合数,概率ε的初始值为预设值,0<ε<1,
[0014]
选取ξn作为在状态δfn时的参数并带入自适应阻抗模型中得到第n+1个状态下的力误差δf
n+1
,获得奖励r(δfn,ξn),并按下式更新q

(δfn,ξn):
[0015]q′
(δfn,ξn)=q(δfn,ξn)+α[r(δfn)+γmaxq(δf
n+1
)-q(δfn,ξn)]
[0016]
其中,q

(δfn,ξn)表示q表中关于力误差δfn和参数ξn位置处更新后的值,q(δfn,ξn)表示q表中关于力误差δfn和参数ξn位置处更新前的值,n表示关于力误差δf和参数ξ的第n个状态,n=1,2,

,m,m表示状态总数量,也即是力误差值δf
n+1
或参数ξ
n+1
个数的总数量,α表示算法的学习率,α∈(0,1),δf
n+1
表示第n+1个状态下对应的力误差,ξ
n+1
表示力误差δf
n+1
这个状态所对应的第n+1个参数ξ的取值,r(δfn,ξn)表示基于第n个状态下δfn的奖励函数,max表示取最大值,也即maxq(δf
n+1
)表示在第n+1状态下的q表中的最大值,q表初始为0,也即q表中的参数ξ的各个取值均为0,所有力误差δf和所有参数ξ的取值个数的总数量m为预设值,每个状态下参数ξ的初始值均为0,
[0017]
当力误差δf小于预设阈值时,该训练回合结束并开始新的回合,直至训练至最大回合数时,训练结束,输出q表,将训练后的q表作为自适应参数的控制策略,根据不同状态的力误差δf选取q表中最大q值所对应的的参数ξ,从而得到每一种状态的力误差δf下均能够选取到最大q值所对应的参数ξ,从而达到超调较小、响应速度较快的力响应曲线。
[0018]
进一步地,所述基于模型的机器人磨削控制方法基于所述机器人对待打磨工件进行磨削,所述机器人包括机器人本体、安装在机器人本体上的操作端、安装在操作端上的模具夹具和力传感器,模具夹具用于夹持待打磨工件,力传感器用于测量待打磨工件在磨削过程中反作用在操作端上的作用力,该作用力为接触力fe。
[0019]
进一步地,在步骤1中,将机器人等效为一个质量-弹簧-阻尼系统,质量-弹簧-阻尼系统作为所述自适应阻抗控制模型。
[0020]
进一步地,差值δf的计算式如公式

所示:
[0021][0022]
式中,m为机器人的惯性系数,b是机器人的阻尼系数,k是机器人的刚度系数,e表示位置误差,计算式为e=x
m-xr,xm表示机器人的操作端的实际位置,表示机器人的xr操作端的期望位置。
[0023]
进一步地,在步骤1中,机器人的操作端所受到的接触力fe按公式

计算:
[0024]
fe=ke(x
m-xe)------

[0025]
式中,ke表示环境刚度,xe为环境位置,也即是环境的实际位置,是指机器人夹持待打磨工件进行打磨时,待打磨工件所接触的环境相对于机器人的位置。
[0026]
进一步地,在步骤2中,通过表征了机器人操作端的实际接触力fe来逼近所期望的期望作用力fd,并按公式

计算出机器人的操作端需要到达的所述参考位置xr:
[0027][0028]
式中,表示估计环境位置,也即是xe的估计值,表示估计环境刚度,也即是ke的估计值,
[0029]
和按公式

计算得到:
[0030][0031]
式中,表示t时刻的估计环境刚度,表示初始的估计环境刚度,t表示时间,表示t时刻的估计环境位置,表示初始的估计环境位置,ξ1和ξ2为预设的大于0的系数,ξ1和ξ2均为参数ξ的不同取值。
[0032]
进一步地,初始化q表后,基于第一个状态的力误差δf1,根据ε-greedy策略选择对应的参数ξ,并将选择的参数ξ代入自适应阻抗算法中,从而得到下一个状态的力误差δf2,并获得奖励r(δf1),然后,更新q表中q(δf1,ξ1)的值,每当得到一个新状态δf
n+1
,则判断是否满足终止条件,若否,则选择新的参数ξ,并继续更新参数ξ,得到新的q表;若是,则判断训练回合数是否达到,若是,则输出q表作为参数ξ的控制策略;若否,则重新回调δf1,并继续重复上述训练过程,从而根据ε-greedy策略在q表中选择参数ξ所对应的具体取值。
[0033]
本发明的有益效果为:本发明强化学习q-learning算法对自适应阻抗算法中的系数进行自适应调整的方法,使机器人在不同环境刚度中打磨时保持打磨力的稳定性,可以使机器人打磨时的打磨力超调和打磨力响应速度慢等现象得到改善,并且可以适应不同环境刚度带来的打磨力波动。
附图说明
[0034]
图1为本发明的流程示意图。
具体实施方式
[0035]
下面结合附图及具体实施方案,对本发明做进一步描述:
[0036]
如图1所示,一种基于模型的机器人磨削控制方法,基于所述机器人对待打磨工件进行磨削,所述机器人包括机器人本体、安装在机器人本体上的操作端、安装在操作端上的模具夹具和力传感器,模具夹具用于夹持待打磨工件,力传感器用于测量待打磨工件在磨削过程中反作用在操作端上的作用力,该作用力为接触力fe,所述方法包括以下步骤:
[0037]
步骤1:将机器人等效为一个质量-弹簧-阻尼系统,从而建立了机器人与环境的基于位置的自适应阻抗控制模型。自适应阻抗控制模型用于模拟出期望机器人作用于待打磨工件的期望作用力fd与机器人在待打磨工件在进行磨削时的实际接触力fe的差值δf,也
即δf=f
d-fe,表示力误差,差值δf的计算式如公式

所示:
[0038][0039]
式中,m为机器人的惯性系数,b是机器人的阻尼系数,k是机器人的刚度系数,e表示位置误差,计算式为e=x
m-xr,xm表示机器人的操作端的实际位置,表示机器人的xr操作端的期望位置,故e也表示机器人的操作端的实际位置与期望位置的差值(即误差)。
[0040]
采用公式

也即意味着,位置误差e作为自适应阻抗控制模型的输出,差值δf作为自适应阻抗控制模型的输入。
[0041]
其中,机器人与环境发生接触时,也即机器人的模具夹具夹持的待打磨工件与打磨设备相接触时,机器人的操作端所受到的接触力fe按公式

计算:
[0042]
fe=ke(x
m-xe)------

[0043]
式中,ke表示环境刚度,xe为环境位置,也即是环境的实际位置,是指机器人夹持待打磨工件进行打磨时,待打磨工件所接触的环境相对于机器人的位置。
[0044]
步骤2:通过表征了机器人操作端的实际接触力fe来逼近所期望的期望作用力fd,并按公式

计算出机器人的操作端需要到达的参考位置xr:
[0045][0046]
式中,表示估计环境位置,也即是xe的估计值,表示估计环境刚度,也即是ke的估计值,
[0047]
和按公式

计算得到:
[0048][0049]
式中,表示t时刻的估计环境刚度,表示初始的估计环境刚度,t表示时间,表示t时刻的估计环境位置,表示初始的估计环境位置,ξ1和ξ2为预设的大于0的系数,ξ1和ξ2均为参数ξ的不同取值。
[0050]
在上述公式

中,通过参数ξ可以改变估计环境位置和估计环境刚度的取值,从而可以通过改变(控制)参数ξ来改变(控制)估计环境位置和估计环境刚度进而控制(改变)参考位置xr,进而改变步骤1中的实际接触力fe,从而可以控制机器人根据环境来基于改变机器人的位置而改变接触力,始终保持与打磨设备之间的恒力接触,提高磨削质量。
[0051]
步骤3:采用q-learning算法所输出的q表作为确定参数ξ取值的柔顺控制策略,进而使得基于参数ξ实现机器人操作端进行移动的柔顺控制策略,也即基于参数ξ的柔顺控
制策略用于操控机器人操作端移动位置,以改变操作端上模具夹具所夹持的待打磨工件和打磨设备之间的接触力,从而达到恒力磨削效果。
[0052]
其中,参数ξ影响操作端的接触力的响应曲线,参数ξ较小,响应曲线的超调量较小,达到接触力的期望力的响应时间较长;参数ξ较大,响应曲线的超调量较大,达到接触力的期望力的响应时间较短。并且通过q-learning算法输出q表,从而根据q表中基于各个不同力误差δf来确定所对应的参数ξ,也即能够根据接触力自适应调整参数ξ,以减小超调量和响应时间。
[0053]
在本实施例中,q-learning算法采用马尔科夫决策模型m来描述,马尔科夫决策模型m={s,a,p,r,γ}。其中,p表示状态转移概率,本实施例用概率ε来代替,也即表示以ε的概率随机方式选取参数ξ的值,以1-ε的概率选择q表中相应的最大值为参数ξ的值,s表示状态,将期望力与接触力的误差δf作为状态s。由于位置误差e与力误差δf具有对应的映射关系,因此,这里的状态s也可以用位置误差e来表示。a表示每个状态可执行动作的集合,参数ξ的取值为可执行的动作,也即用参数ξ来表示a。r表示奖励函数,也即是当前时刻状态到下一个时刻状态期间所获得的奖励,γ表示学习过程中的折扣因子,为常数,γ∈[0,1]。
[0054]
其中,奖励函数r(δf)基于力误差δf来计算得到:
[0055][0056]
由于位置误差e与力误差δf具有对应的映射关系,也即意味着不同的力误差或者是不同位置误差e下,对应有一个奖励函数r(δf)。
[0057]
在本实施例中,为了加快q-learning算法的收敛速度,在训练的过程中,采用ε-greedy策略来训练q表格,并采用公式

来使ε衰减:
[0058][0059]
式中,maxepisode表示最大训练回合数,eps表示当前训练回合数,概率ε的初始值为预设值,0<ε<1。
[0060]
选取ξn作为在状态δfn时的参数并带入自适应阻抗模型中得到第n+1个状态下的力误差δf
n+1
,获得奖励r(δfn,ξn),并按下式更新q

(δfn,ξn):
[0061]q′
(δfn,ξn)=q(δfn,ξn)+α[r(δfn)+γmaxq(δf
n+1
)-q(δfn,ξn)]
[0062]
其中,q

(δfn,ξn)表示q表中关于力误差δfn和参数ξn位置处更新后的值,q(δfn,ξn)表示q表中关于力误差δfn和参数ξn位置处更新前的值,n表示关于力误差δf和参数ξ的第n个状态,n=1,2,

,m,m表示状态总数量,也即是力误差值δf
n+1
或参数ξ
n+1
个数的总数量,α表示算法的学习率,α∈(0,1)。δf
n+1
表示第n+1个状态下对应的力误差,ξ
n+1
表示力误差δf
n+1
这个状态所对应的第n+1个参数ξ的取值。r(δfn,ξn)表示基于第n个状态下δfn的奖励函数。max表示取最大值,也即maxq(δf
n+1
)表示在第n+1状态下的q表中的最大值。q表初始为0,也即q表中的参数ξ的各个取值均为0。所有力误差δf和所有参数ξ的取值个数的总数量m为预设值,例如设置为30个,也即有30个状态,每个状态下参数ξ的初始值均为0。
[0063]
当力误差δf小于预设阈值(例如0.5n)时,该训练回合结束并开始新的回合,直至
训练至最大回合数时,训练结束,输出q表。将训练后的q表作为自适应参数的控制策略,根据不同状态的力误差δf选取q表中最大值所对应的的参数ξ,从而得到每一种状态的力误差δf下均能够选取到最大值所对应的参数ξ,从而达到超调较小、响应速度较快的力响应曲线。
[0064]
也即初始化q表后,基于第一个状态的力误差δf1,根据ε-greedy策略选择对应的参数ξ,并将选择的参数ξ代入自适应阻抗算法中,从而得到下一个状态的力误差δf2,并获得奖励r(δf1)。然后,更新q表中q(δf1,ξ1)的值。每当得到一个新状态δf
n+1
,则判断是否满足终止条件,若否,则选择新的参数ξ,并继续更新参数ξ,得到新的q表。若是,则判断训练回合数是否达到,若是,则输出q表作为参数ξ的控制策略;若否,则重新回调δf1,并继续重复上述训练过程。根据ε-greedy策略在q表中选择参数ξ所对应的具体取值。
[0065]
如下表一,其为初始q表,横向表示参数ξ的各个取值,第一列的纵向表示力误差δf的各个取值,各个δf的具体取值为预设值。
[0066]
δf,ξξ1ξ2

ξnξn+1ξmδf1000000δf2000000

000000δfn000000δfn+1000000

000000δfm000000
[0067]
表一 初始q表
[0068]
假设,第一个状态下,测得的实际接触力fe=0n(牛顿),设置期望力fd为30n,则δf1=30n。然后,以概率ε的随机选取方式选取ξ的取值(例如为ξ3),其中,概率ε表示是采用随机选取方式,剩下1-ε的概率是非随机选取方式,也即直接选取在状态δf1下最大值所对应的ξ的取值,并将ξ3代入步骤2计算,得到期望轨迹xr和新的接触力fe=20n,并得到δf2=10,然后,在q表中以找到与10n相同或者最接近的δf(例如为

f2),由δf2得到奖励函数,并同步根据公式

来更新q(δf1,ξ3)的值。依次类推,直至训练结束。
[0069]
其中,每当得到一个δf,达到δf小于预设阈值的次数为当前训练回合数eps,因此,eps是递增的,也即因此,每一次都会以不同取值的概率ε来选取到新的参数ξ。
[0070]
本发明强化学习q-learning算法对自适应阻抗算法中的系数进行自适应调整的方法,使机器人在不同环境刚度中打磨时保持打磨力的稳定性,可以使机器人打磨时的打磨力超调和打磨力响应速度慢等现象得到改善,并且可以适应不同环境刚度带来的打磨力波动。
[0071]
在机器人自适应阻抗模型中,参数ξ是决定打磨力变化的主要参数,通过q-learning算法训练参数ξ,使其根据打磨力的变化而自适应变化,从而使打磨力接近理想的效果。
[0072]
本说明书所公开的实施例只是对本发明单方面特征的一个例证,本发明的保护范围不限于此实施例,其他任何功能等效的实施例均落入本发明的保护范围内。对于本领域的技术人员来说,可根据以上描述的技术方案以及构思,做出其它各种相应的改变以及变
形,而所有的这些改变以及变形都应该属于本发明权利要求的保护范围之内。

技术特征:
1.一种基于模型的机器人磨削控制方法,其特征在于,包括以下步骤:步骤1:建立基于位置机器人与环境接触的自适应阻抗控制模型,自适应阻抗控制模型用于模拟出期望机器人作用于待打磨工件的期望作用力f
d
与机器人在待打磨工件在进行磨削时的实际接触力f
e
的差值δf,也即δf=f
d-f
e
,表示力误差,步骤2:计算出受参数ξ影响的机器人需要到达的参考位置x
r
;步骤3:采用q-learning算法所输出的q表作为确定参数ξ取值的柔顺控制策略,进而使得基于参数ξ实现机器人进行移动的柔顺控制策略,以改变操作端上模具夹具所夹持的待打磨工件和打磨设备之间的接触力,从而达到恒力磨削效果,q-learning算法采用马尔科夫决策模型m来描述,马尔科夫决策模型m={s,a,p,r,γ},其中,p表示状态转移概率,用概率ε来代替,也即表示以随机方式选取参数ξ值的概率为ε,以1-ε的概率选择q表中相应的最大值为参数ξ的值,s表示状态,将力误差δf作为状态s,a表示每个状态可执行动作的集合,用参数ξ来表示a,r表示奖励函数,γ表示学习过程中的折扣因子,为常数,γ∈[0,1],奖励函数r(δf)基于力误差δf来计算得到:采用ε-greedy策略来训练q表格,并采用公式

来使ε衰减:式中,maxepisode表示最大训练回合数,eps表示当前训练回合数,概率ε的初始值为预设值,0<ε<1,选取ξ
n
作为在状态δf
n
时的参数并带入自适应阻抗模型中得到第n+1个状态下的力误差δf
n+1
,获得奖励r(δf
n

n
),并按下式更新q

(δf
n

n
):q

(δf
n

n
)=q(δf
n

n
)+α[r(δf
n
)+γmaxq(δf
n+1
)-q(δf
n

n
)]其中,q

(δf
n

n
)表示q表中关于力误差δf
n
和参数ξ
n
位置处更新后的值,q(δf
n

n
)表示q表中关于力误差δf
n
和参数ξ
n
位置处更新前的值,n表示关于力误差δf和参数ξ的第n个状态,n=1,2,

,m,m表示状态总数量,也即是力误差值δf
n+1
或参数ξ
n+1
个数的总数量,α表示算法的学习率,α∈(0,1),δf
n+1
表示第n+1个状态下对应的力误差,ξ
n+1
表示力误差δf
n+1
这个状态所对应的第n+1个参数ξ的取值,r(δf
n

n
)表示基于第n个状态下δf
n
的奖励函数,max表示取最大值,也即maxq(δf
n+1
)表示在第n+1状态下的q表中的最大值,q表初始为0,也即q表中的参数ξ的各个取值均为0,所有力误差δf和所有参数ξ的取值个数的总数量m为预设值,每个状态下参数ξ的初始值均为0,当力误差δf小于预设阈值时,该训练回合结束并开始新的回合,直至训练至最大回合数时,训练结束,输出q表,将训练后的q表作为自适应参数的控制策略,根据不同状态的力误差δf选取q表中最大q值所对应的的参数ξ,从而得到每一种状态的力误差δf下均能够选取到最大q值所对应的参数ξ,从而达到超调较小、响应速度较快的力响应曲线。2.根据权利要求1所述的基于模型的机器人磨削控制方法,其特征在于,所述基于模型
的机器人磨削控制方法基于所述机器人对待打磨工件进行磨削,所述机器人包括机器人本体、安装在机器人本体上的操作端、安装在操作端上的模具夹具和力传感器,模具夹具用于夹持待打磨工件,力传感器用于测量待打磨工件在磨削过程中反作用在操作端上的作用力,该作用力为接触力f
e
。3.根据权利要求2所述的基于模型的机器人磨削控制方法,其特征在于,在步骤1中,将机器人等效为一个质量-弹簧-阻尼系统,质量-弹簧-阻尼系统作为所述自适应阻抗控制模型。4.根据权利要求3所述的基于模型的机器人磨削控制方法,其特征在于,差值δf的计算式如公式

所示:式中,m为机器人的惯性系数,b是机器人的阻尼系数,k是机器人的刚度系数,e表示位置误差,计算式为e=x
m-x
r
,x
m
表示机器人的操作端的实际位置,表示机器人的x
r
操作端的期望位置。5.根据权利要求4所述的基于模型的机器人磨削控制方法,其特征在于,在步骤1中,机器人的操作端所受到的接触力f
e
按公式

计算:f
e
=k
e
(x
m-x
e
)------

式中,k
e
表示环境刚度,x
e
为环境位置,也即是环境的实际位置,是指机器人夹持待打磨工件进行打磨时,待打磨工件所接触的环境相对于机器人的位置。6.根据权利要求5所述的基于模型的机器人磨削控制方法,其特征在于,在步骤2中,通过表征了机器人操作端的实际接触力f
e
来逼近所期望的期望作用力f
d
,并按公式

计算出机器人的操作端需要到达的所述参考位置x
r
:式中,表示估计环境位置,也即是x
e
的估计值,表示估计环境刚度,也即是k
e
的估计值,和按公式

计算得到:式中,表示t时刻的估计环境刚度,表示初始的估计环境刚度,t表示时间,表示t时刻的估计环境位置,表示初始的估计环境位置,ξ1和ξ2为预设的大于0的系数,ξ1和ξ2均为参数ξ的不同取值。7.根据权利要求6所述的基于模型的机器人磨削控制方法,其特征在于,初始化q表后,
基于第一个状态的力误差δf1,根据ε-greedy策略选择对应的参数ξ,并将选择的参数ξ代入自适应阻抗算法中,从而得到下一个状态的力误差δf2,并获得奖励r(δf1),然后,更新q表中q(δf1,ξ1)的值,每当得到一个新状态δf
n+1
,则判断是否满足终止条件,若否,则选择新的参数ξ,并继续更新参数ξ,得到新的q表;若是,则判断训练回合数是否达到,若是,则输出q表作为参数ξ的控制策略;若否,则重新回调δf1,并继续重复上述训练过程,从而根据ε-greedy策略在q表中选择参数ξ所对应的具体取值。

技术总结
本发明公开一种基于模型的机器人磨削控制方法,包括步骤1:将机器人与环境接触模型等效为一个二阶质量-弹簧-阻尼模型,模拟出期望作用力与实际接触力的差值,步骤2:通过表征了机器人操作端的实际接触力来逼近所期望的期望作用力,并计算出机器人的操作端需要到达的参考位置;步骤3:采用Q-learning算法确定控制机器人操作端进行移动的柔顺控制策略,控制策略用于操控机器人操作端移动位置,以改变操作端上模具夹具所夹持的待打磨工件和打磨设备之间的接触力,从而达到恒力磨削效果。本发明打磨时保持打磨力的稳定性,打磨力超调和打磨力响应速度慢等现象得到改善,并且可以适应不同环境刚度带来的打磨力波动。应不同环境刚度带来的打磨力波动。应不同环境刚度带来的打磨力波动。


技术研发人员:郭岚波 陈庚 吴建威 黄键 唐林杰
受保护的技术使用者:佛山智能装备技术研究院
技术研发日:2023.07.17
技术公布日:2023/10/20
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

航空商城 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

评论

相关推荐