一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于强化学习的钻孔力矩稳定性控制系统及方法

2022-07-30 18:44:30 来源:中国专利 TAG:


1.本发明涉及基于强化学习的钻孔力矩稳定性控制系统及方法,属于钻机控制技术领域。


背景技术:

2.目前在电梯井道、地铁隧道、桥梁、涵洞、房屋等建筑体工程结束之后,往往需要在建筑体的表面安装各种构件、管道、线缆、导轨、监控视频相机等附属设施。安装上述提到的附属设施需要在安装附属设施的建筑表面安装膨胀螺栓,这时就需要提前在建筑体表面进行钻孔操作。
3.当钻孔电锤进行钻孔操作时,假如起钻时提供的推力较大,受到的阻力就会增大导致钻头产生摆动,无法进行准确的定位,此时钻孔位置会发生偏差,影响后续的操作。由于建筑体在搭建时所采用的材料往往并不单一,比如建筑用混凝土由砂子、石子、水泥构成,当材料性质发生变化,钻头推进力与扭矩不匹配时,钻头就会受到冲击载荷的作用。冲击载荷的出现会导致钻孔效率低下、钻头工作寿命短,极端情况下还会出现卡钻、孔报废、钻具损坏丢失等后果,甚至会危害到施工人员的生命安全。
4.目前,现有的钻孔力矩稳定性控制方法存在如下两个问题:第一,现有的钻孔力矩稳定性控制系统大多只有在钻头出现卡钻现象时才发挥作用,并不能避免冲击载荷带来的危害,并且现有的钻孔力矩稳定性控制系统大多不考虑起钻时阻力带来的钻头摆动影响,不能在起钻时就保证钻孔的精度和成孔率;第二,现有的钻孔力矩稳定性控制系统通常采用预设临界扭矩的方法缓解钻孔时的冲击载荷,无法实时匹配钻头推进力与扭矩。
5.专利cn110778304a提供了一种旋挖钻机控制系统及旋挖钻机,此专利采用动力马达的负载来控制卸载阀的开启或关闭,当出现“卡钻”现象即动力马达所承受的负载力升高到设定压力时,卸载阀打开,动力马达的加压力减小,“卡钻”现象解除,从而延长机器的使用寿命。但是,此方法只是单纯的在发生“卡钻”时才会起到作用,并没有解决扭矩与推进力实时匹配这个根本问题扭矩,无法减轻冲击载荷给设备带来的负面影响。并且,该专利中没有考虑到起钻时阻力带来的钻头摆动影响。
6.专利cn113090248a提供了一种旋挖钻机的控制方法、装置及旋挖钻机,此专利通过判断钻头的实时扭矩是否变化为预设的扭矩来调整钻头推进力的大小,提高扭矩与钻头推进力之间的匹配程度,达到减轻冲击载荷的目的。但是,此方法采用设定钻头临界扭矩的方式减轻冲击载荷,无法实时匹配钻头推进力与扭矩,无法消除实时扭矩达到临界扭矩期间内产生的冲击载荷,而且没有考虑起钻时阻力带来的钻头摆动影响,导致孔的定位精度出现问题。


技术实现要素:

7.为了解决上述问题,本发明提供一种基于强化学习的钻孔力矩稳定性控制系统包括:上位机、位移传感器、控制器、力传感器、机械臂、钻孔器;
8.所述控制器分别与所述上位机、所述位移传感器、所述力传感器连接,所述机械臂与所述控制器连接,所述钻孔器安装在所述机械臂上;
9.所述上位机用于输入钻孔位置坐标,确定钻孔深度;所述位移传感器用于实时获取钻孔过程中钻头进给的深度;所述力传感器用于实时获取钻孔过程中钻头受到的阻力与扭矩信息;
10.所述控制器将接收到的钻孔位置进行处理后,控制机械臂运动到钻孔作业的起始位置,并使机械臂与钻孔器处于期望的起钻姿态;
11.所述控制器接收实时采集的机械臂位姿、推进力和钻孔器受到的阻力与扭矩信号,再通过基于强化学习的钻孔力矩稳定性控制模型输出对应的机械臂的控制指令,包括机械臂的位姿调整指令以及推进力调整指令。
12.可选的,所述基于强化学习的钻孔力矩稳定性控制模型包括:策略网络和评价网络,所述策略网络根据输入的钻孔状态,输出机械臂位姿调整指令、推进力调整指令,所述评价网络根据输入的钻孔状态和机械臂动作,输出状态动作值q,所述状态动作值q为在起始状态下机械臂采取一系列动作之后的累计奖励:
13.q
μ
(s
t
,a
t
)=e[r(s
t
,a
t
) γq
μ
(s
t 1
,μ(s
t 1
))]
[0014]
其中,q
μ
(s
t
,a
t
)为累计奖励,a
t
为当前时刻的机械臂动作,s
t
为当前时刻的钻孔状态,r(s
t
,a
t
)为机械臂当前状态动作的奖励函数,γ为折扣因子,μ(s
t 1
)为机械臂的动作决策,s
t 1
为下一刻的钻孔状态。
[0015]
可选的,所述基于强化学习的钻孔力矩稳定性控制模型的构建过程包括:
[0016]
步骤1:定义所述钻孔状态:s=(x,y,z,α,β,γ,f,f
x
,fy,fz,τ
x
,τy,τz);
[0017]
其中,(x,y,z,α,β,γ)为机械臂末端位姿,f为推进力大小,(f
x
,fy,fz,τ
x
,τy,τz)为钻孔器钻头受到的阻力以及扭矩信号;
[0018]
步骤2:定义所述机械臂动作:a=(dx,dy,dz,dα,dβ,dγ,df);
[0019]
机械臂末端根据基于强化学习的钻孔力矩稳定性控制模型输出机械臂动作a调整机械臂位姿以及推进力大小,其中,dx,dy,dz,dα,dβ,dγ为机械臂末端六个维度的调整量,df为机械臂末端的推进力调整量;
[0020]
步骤3:定义强化学习的奖励函数;
[0021]
步骤4:构建策略网络和评价网络;所述策略网络包括online策略网络和target策略网络,所述评价网络包括online评价网络以及target评价网络:
[0022][0023][0024]
其中,μ(s|θ
μ
)表示输出的当前动作策略,包括机械臂位姿与推进力大小;μ

(s|θ
μ

)表示输出的下一动作策略,包括:下一个动作中机械臂位姿与推进力大小;s表示当前的钻孔状态,θ
μ
表示online策略网络的权重,θ
μ

表示target策略网络的权重,q(s|θq)表示输出当前q值,θq表示online评价网络的权重,θq′
表示target评价网络的权重,q

(s|θq′
)表示输出的目标q值;
[0025]
所述策略网络和评价网络的网络参数更新过程包括:
[0026]
s1:策略网络根据动作策略选择一个动作a
t
,并让执行器执行该动作,所述执行器为机械臂末端安装的钻孔器:
[0027][0028]
动作策略是根据当前online策略网络和随机uo噪声生成的随机过程,从这个随机过程采样获得a
t
的值,s
t
表示当前的钻孔状态,表示随机噪声函数;
[0029]
s2:执行器执行动作a
t
,返回奖励值r
t
和新的状态s
t 1

[0030]
s3:策略网络将这个状态转换过程(s
t
,a
t
,r
t
,s
t 1
)存储到经验池中,作为训练online策略网络和online评价网络的数据集;
[0031]
s4:从经验池中,随机采样n个数据,作为online策略网络、online评价网络的一个mini-batch训练数据,将mini-batch中的单个数据用(si,ai,ri,s
i 1
)表示;
[0032]
s5:计算online评价网络的梯度:
[0033]
所述online评价网络的loss函数为mse函数:
[0034][0035]
其中,yi表示目标q值:
[0036]
yi=ri γq

(s
i 1


(s
i 1
∣θ
μ

)∣θq′
)
[0037]
采用标准bp算法求得θq的梯度
[0038]
s6:采用优化器更新θq;
[0039]
s7:计算策略网络的梯度:
[0040][0041]
其中,为策略网络的梯度;
[0042]
s8:采用优化器更新θ
μ

[0043]
s9:更新对应的target网络的权重参数:
[0044][0045]
其中,τ为更新系数。
[0046]
可选的,所述奖励函数包括:第一奖励函数、第二奖励函数、第三奖励函数、第四奖励函数,分别对应于钻孔过程中设定四个评价指标:受到的冲击载荷大小、钻孔过程中钻头偏移量、钻孔完成状态、钻孔完成的时间;
[0047]
所述第一奖励函数为:
[0048][0049]
其中,m0=5;|δf
x
|,|δfy|,|δfz|,|δτ
x
|,|δτy|,|δτz|为钻孔过程中钻孔器钻头受到的突变阻力与扭矩;δf
xt
,δf
yt
,δf
zt
,δτ
xt
,δτ
yt
,δτ
zt
为钻孔过程中钻孔器钻头受到的突变阻力与扭矩的阈值;
[0050]
所述第二奖励函数为:
[0051][0052]
其中,0《m1《m0;|δx|,|δy|,|δz|,|δα|,|δβ|,|δγ|为钻孔过程中钻头轴线与孔位轴线的位置偏移量与角度偏移量;δx
t
,δy
t
,δz
t
,δα
t
,δβ
t
,δγ
t
为钻孔过程中钻头轴线与孔位轴线的位置偏移量与角度偏移量阈值;
[0053]
所述第三奖励函数为:
[0054][0055]
其中,m0《m2《10;
[0056]
所述第四奖励函数为:
[0057]
r4(s
t
,a
t
)=-t
[0058]
其中,钻孔,t=t
2-t1,t为钻孔完成时间;t1为钻孔开始时间,设定为钻孔器开始起钻的时刻;t2为钻孔结束时间,设定为钻孔器位移大于钻孔深度的时刻;
[0059]
所以总奖励函数为:
[0060]
r(s
t
,a
t
)=r1(s
t
,a
t
) r2(s
t
,a
t
) r3(s
t
,a
t
) r4(s
t
,a
t
)
[0061]
可选的,online策略网络与target策略网络结构完全相同,online评价网络与target评价网络结构同样完全相同。
[0062]
本发明的第二个目的在于提供一种基于强化学习的钻孔力矩稳定性控制方法,包括以下步骤:
[0063]
步骤一:上位机输入钻孔坐标位置和钻孔深度;
[0064]
步骤二:控制器根据钻孔位置和钻孔深度计算出机械臂的目标位置和期望位姿;
[0065]
步骤三:机械臂带动钻孔器运动到目标位置,并使机械臂的空间位姿处于所述期望位姿,开始钻孔操作,起始的钻孔姿态为小推进力切削起钻;
[0066]
步骤四:钻孔过程中,采用位移传感器实时采集钻头进给深度,采用力传感器实时采集钻孔器受到的阻力与扭矩;
[0067]
步骤五:控制器采用基于强化学习的钻孔力矩稳定性模型,根据输入的钻孔状态,输出机械臂位姿调整指令、推进力调整指令,用于调整机械臂的位姿和推进力;
[0068]
步骤六:当所述位移传感器反馈的深度信号大于所述钻孔深度时,结束钻孔操作,钻孔器退出孔位。可选的,所述基于强化学习的钻孔力矩稳定性控制模型包括:策略网络和评价网络,所述策略网络根据输入的钻孔状态,输出机械臂动作,所述评价网络根据输入的钻孔状态和机械臂动作,输出状态动作值q,所述状态动作值q为在起始状态下机械臂采取一系列动作之后的累计奖励:
[0069]qμ
(s
t
,a
t
)=e[r(s
t
,a
t
) γq
μ
(s
t 1
,μ(s
t 1
))]
[0070]
其中,q
μ
(s
t
,a
t
)为累计奖励,a
t
为当前时刻的机械臂动作,s
t
为当前时刻的钻孔状态,r(s
t
,a
t
)为机械臂当前状态动作的奖励函数,γ为折扣因子,μ(s
t 1
)为机械臂的动作决策,s
t 1
为下一刻的钻孔状态。
[0071]
可选的,所述基于强化学习的钻孔力矩稳定性控制模型的构建过程包括:
[0072]
步骤1:定义所述钻孔状态:s=(x,y,z,α,β,γ,f,f
x
,fy,fz,τ
x
,τy,τz);
[0073]
其中,(x,y,z,α,β,γ)为机械臂末端位姿,f为推进力大小,(f
x
,fy,fz,τ
x
,τy,τz)为钻孔器钻头受到的阻力与扭矩;
[0074]
步骤2:定义所述机械臂动作:a=(dx,dy,dz,dα,dβ,dγ,df);
[0075]
机械臂末端根据所述机械臂动作a调整机械臂位姿以及推进力大小,其中,dx,dy,dz,dα,dβ,dγ为机械臂末端六个维度的调整量,df为机械臂末端的推进力调整量;
[0076]
步骤3:定义强化学习的奖励函数;
[0077]
步骤4:构建策略网络和评价网络;所述策略网络包括online策略网络和target策略网络,所述评价网络包括online评价网络以及target评价网络:
[0078][0079][0080]
其中,μ(s|θ
μ
)表示输出的当前动作策略,包括机械臂位姿与推进力大小;μ

(s|θ
μ

)表示输出的下一动作策略,包括:下一个动作中机械臂位姿与推进力大小;s表示当前的钻孔状态,θ
μ
表示online策略网络的权重,θ
μ

表示target策略网络的权重,q(s|θq)表示输出当前q值,θq表示online评价网络的权重,θq′
表示target评价网络的权重,q

(s|θq′
)表示输出的目标q值;
[0081]
所述策略网络和评价网络的网络参数更新过程包括:
[0082]
s1:策略网络根据动作策略选择一个动作a
t
,并且让执行器执行该动作,所述执行
器为机械臂末端安装的钻孔器:
[0083][0084]
动作策略是根据当前online策略网络和随机uo噪声生成的随机过程,从这个随机过程采样获得a
t
的值,s
t
表示当前的钻孔状态,表示随机噪声函数;
[0085]
s2:执行器执行动作a
t
,返回奖励值r
t
和新的状态s
t 1

[0086]
s3:策略网络将这个状态转换过程(s
t
,a
t
,r
t
,s
t 1
)存储到经验池中,作为训练online策略网络和online评价网络的数据集;
[0087]
s4:从经验池中,随机采样n个数据,作为online策略网络、online评价网络的一个mini-batch训练数据,将mini-batch中的单个数据用(si,ai,ri,s
i 1
)表示;
[0088]
s5:计算online评价网络的梯度:
[0089]
所述online评价网络的loss函数为mse函数:
[0090][0091]
其中,yi表示目标q值:
[0092]
yi=ri γq

(s
i 1


(s
i 1
∣θ
μ

)∣θq′
)
[0093]
采用标准bp算法求得θq的梯度
[0094]
s6:采用优化器更新θq;
[0095]
s7:计算策略网络的梯度:
[0096][0097]
其中,为策略网络的梯度;
[0098]
s8:采用优化器更新θ
μ

[0099]
s9:更新对应的target网络的权重参数:
[0100][0101]
其中,τ为更新系数。
[0102]
可选的,所述奖励函数包括:第一奖励函数、第二奖励函数、第三奖励函数、第四奖励函数,分别对应于钻孔过程中设定四个评价指标:受到的冲击载荷大小、钻孔过程中钻头偏移量、钻孔完成状态、钻孔完成的时间;
[0103]
所述第一奖励函数为:
[0104][0105]
其中,m0=5;|δf
x
|,|δfy|,|δfz|,|δτ
x
|,|δτy|,|δτz|为钻孔过程中钻孔器钻头受到的突变阻力与扭矩;δf
xt
,δf
yt
,δf
zt
,δτ
xt
,δτ
yt
,δτ
zt
为钻孔过程中钻孔器钻头受到的突变阻力与扭矩的阈值;
[0106]
所述第二奖励函数为:
[0107][0108]
其中,0《m1《m0;|δx|,|δy|,|δz|,|δα|,|δβ|,|δγ|为钻孔过程中机械臂末端也就是钻孔器钻头轴线与孔位轴线的位置偏移量与角度偏移量;δx
t
,δy
t
,δz
t
,δα
t
,δβ
t
,δγ
t
为钻孔过程中机械臂末端也就是钻孔器钻头轴线与孔位轴线的位置偏移量与角度偏移量阈值;
[0109]
所述第三奖励函数为:
[0110][0111]
其中,m0《m2《10;
[0112]
所述第四奖励函数为:
[0113]
r4(s
t
,a
t
)=-t
[0114]
其中,t=t
2-t1,t为钻孔完成时间;t1为钻孔开始时间,设定为钻孔器开始起钻的时刻;t2为钻孔结束时间,设定为钻孔器位移大于钻孔深度的时刻;
[0115]
所以总奖励函数为:
[0116]
r(s
t
,a
t
)=r1(s
t
,a
t
) r2(s
t
,a
t
) r3(s
t
,a
t
) r4(s
t
,a
t
)
[0117]
可选的,online策略网络与target策略网络结构完全相同,online评价网络与target评价网络结构同样完全相同。
[0118]
本发明有益效果是:
[0119]
(1)通过位移感知与推力大小的协调控制达到起始钻孔时的小推力起钻效果,从而避免起钻时推进力过大或者推进速度过快带来的摆动影响,达到了提高成孔率、成孔质量,钻孔定位精确的目的。
[0120]
(2)通过钻头轴线位置和角度、钻头受到的阻力与扭矩、当前受到的推力大小等三个因素的历史数据来训练钻孔力矩稳定性控制的强化学习模型,并在工作过程中将实时采集到的钻孔状态s输入模型并输出对应的实时机械臂动作a。从而解决了现有技术中扭矩与推进力无法实时匹配而产生冲击载荷的问题,实现了钻孔过程中钻孔器扭矩与推进力实时匹配的目标,达到了实时降低冲击载荷、提高钻孔效率、延长设备工作寿命的目的,并且可以避免出现卡钻、孔报废等后果。
附图说明
[0121]
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0122]
图1为本发明实施例的基于强化学习的钻孔力矩稳定性控制系统结构示意图。
[0123]
图2为本发明实施例的基于强化学习的钻孔力矩稳定性控制系统的工作流程图。
[0124]
图3为本发明实施例的基于强化学习的钻孔力矩稳定性控制模型架构。
具体实施方式
[0125]
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
[0126]
实施例一:
[0127]
本实施例提供一种基于强化学习的钻孔力矩稳定性控制系统,参见图1,所述控制系统包括:上位机、位移传感器、控制器、力传感器、机械臂、钻孔器;
[0128]
所述控制器分别与所述上位机、所述位移传感器、所述力传感器连接,所述机械臂与所述控制器连接,所述钻孔器安装在所述机械臂上;
[0129]
所述上位机用于输入钻孔位置坐标,确定钻孔深度;所述位移传感器用于实时获取钻孔过程中钻头进给的深度;所述力传感器用于实时获取钻孔过程中钻头受到的阻力与扭矩信息;
[0130]
所述控制器将接收到的钻孔位置进行处理后,控制机械臂运动到钻孔作业的起始位置,并使机械臂与钻孔器处于期望的起钻姿态;
[0131]
所述控制器接收实时采集的机械臂位姿、推进力和钻孔器受到的阻力与扭矩信号,再通过基于强化学习的钻孔力矩稳定性控制模型输出对应的机械臂的控制指令,包括机械臂的位姿调整指令以及推进力调整指令。
[0132]
实施例二:
[0133]
本实施例提供一种基于强化学习的钻孔力矩稳定性控制系统,参见图1,所述控制系统包括:上位机、位移传感器、控制器、力传感器、机械臂、钻孔器;
[0134]
控制器分别与上位机、位移传感器、力传感器连接,机械臂与控制器连接,所述钻
孔器安装在所述机械臂上;力传感器安装在机械臂末端与钻孔器连接的部位。
[0135]
上位机用于获取钻孔位置的空间坐标,确定钻孔深度;位移传感器用于实时获取钻孔过程中钻头进给的深度;力传感器用于实时获取钻孔过程中钻头受到的阻力与扭矩信息;
[0136]
控制器将接收到的钻孔位置进行处理后,控制机械臂运动到钻孔作业的起始位置,并使机械臂与钻孔器处于期望的起钻位姿,本实施例中钻孔器期望的起钻位姿是指小推力切削起钻。
[0137]
控制器接收实时的机械臂位姿、推进力和钻孔器的阻力与扭矩信号,再通过基于强化学习的钻孔力矩稳定性控制模型输出合适的机械臂的控制指令,包括机械臂的位姿调整信号以及推进力调整信号。
[0138]
本实施例通过将实时的机械臂位姿信号、钻孔器阻力与扭矩信号输入到训练好的钻孔力矩稳定性控制模型,输出机械臂的位姿调整信号以及推进力大小,控制器根据调整信号实时调整机械臂的实时位姿以及钻孔器受到的推进力。通过上述操作使钻头的轴线在钻孔过程中始终与孔位的轴线重合,推进力始终与扭矩相匹配,以保证钻孔操作的顺利进行。
[0139]
本实施例中,所述控制器通过实时接受钻孔过程中位移传感器反馈地信号判断钻孔是否完成。若位移反馈信号小于钻孔深度,则继续进给钻孔器;若位移反馈信号大于钻孔深度,则停止进给钻孔器,并将钻孔器退出孔位;钻孔过程中出现钻孔器阻力与扭矩过大的情况时,可以及时的停止钻孔操作,并将钻孔器退出孔位。
[0140]
本实施例中基于强化学习的钻孔力矩稳定性控制模型构建过程主要有以下步骤:
[0141]
首先将x方向定义为钻孔器钻进方向。
[0142]
步骤1:定义钻孔状态:s=(x,y,z,α,β,γ,f,f
x
,fy,fz,τ
x
,τy,τz)。其中(x,y,z,α,β,γ)为机械臂末端位姿,f为推进力大小,(f
x
,fy,fz,τ
x
,τy,τz)为钻孔器钻头受到的阻力与扭矩。其中推进力、钻孔器受到的阻力与扭矩信息又力传感器收集,机械臂末端位姿可以由机器人正运动学求得。
[0143]
步骤2:定义机械臂动作:a=(dx,dy,dz,dα,dβ,dγ,df),机械臂末端根据a调整机械臂位姿以及推进力大小。其中dx,dy,dz,dα,dβ,dγ为机械臂末端六个维度的调整量,df为机械臂末端的推进力调整量。
[0144]
步骤3:定义奖励函数:在钻孔过程中一共设定四个评价指标,分别是受到的冲击载荷大小、钻孔过程中钻头偏移量、钻孔完成状态、钻孔完成的时间。
[0145]
奖励函数1:
[0146][0147]
其中,m0=5;|δf
x
|,|δfy|,|δfz|,|δτ
x
|,|δτy|,|δτz|为钻孔过程中钻孔器钻头受到的突变阻力与扭矩;δf
xt
,δf
yt
,δf
zt
,δτ
xt
,δτ
yt
,δτ
zt
为钻孔过程中钻孔器钻头受到的突变阻力与扭矩的阈值。在本实施例中,只有当受到的突变阻力与扭矩小于期望的阈值时才会受到奖励,当突变阻力与扭矩大于期望的阈值时就会受到惩罚。
[0148]
奖励函数2:
[0149][0150]
其中,0《m1《m0;|δx|,|δy|,|δz|,|δα|,|δβ|,|δγ|为钻孔过程中机械臂末端也就是钻孔器钻头轴线与孔位轴线的位置偏移量与角度偏移量;δx
t
,δy
t
,δz
t
,δα
t
,δβ
t
,δγ
t
为钻孔过程中机械臂末端也就是钻孔器钻头轴线与孔位轴线的位置偏移量与角度偏移量阈值。在本实施例中,只有当受偏移量小于期望的阈值时才会受到奖励,当偏移量大于期望的阈值时就会受到惩罚。
[0151]
奖励函数3:
[0152][0153]
其中m0《m2《10;只有当进给深度大于钻孔深度且推进力为0时才会受到奖励,若发生了其他情况说明钻孔操作没有顺利进行所以会受到惩罚。
[0154]
奖励函数4:
[0155]
r4(s
t
,a
t
)=-t
[0156]
设置钻孔完成时间的奖励函数,在顺利完成钻孔的前提下,花费的时间越短奖励越高,钻孔完成时间t按分钟计算。
[0157]
所以总奖励函数为:
[0158]
r(s
t
,a
t
)=r1(s
t
,a
t
) r2(s
t
,a
t
) r3(s
t
,a
t
) r4(s
t
,a
t
)
[0159]
步骤4:构建网络
[0160][0161][0162]
其中,μ(s|θ
μ
)表示输出的当前动作策略,包括机械臂位姿与推进力大小;μ

(s|θ
μ

)表示输出的下一动作策略,包括:下一个动作中机械臂位姿与推进力大小;s表示当前的钻孔状态,θ
μ
表示online策略网络的权重,θ
μ

表示target策略网络的权重,q(s|θq)表示输出当前q值,θq表示online评价网络的权重,θq′
表示target评价网络的权重,q

(s|θq′
)表示输出的目标q值;
[0163]
设置target网络的目的是为了稳定online网络的运行,因为评价网络的参数在频繁梯度更新的同时,又用于计算评价网络和策略网络的梯度,会导致参数计算的不稳定,所以添加了target网络用于稳定参数的计算。
[0164]
整个网络的目的就是获得最大的q值,也就是在钻孔过程中通过改变机械臂动作,实现冲击载荷的最小化。
[0165]
online策略网络:负责策略网络参数θ
μ
的迭代更新,负责根据当前状态选择当前动作,用于和环境交互生成当前奖励以及下一个状态,也就是指在工作过程中根据当前状态输出一个机械臂的位姿以及推进力大小,得到对应动作的奖励以及下一个状态。
[0166]
target策略网络:负责根据经验池中采样的下一状态,选择最优的下一动作,也就是指输出下一状态对应的最优机械臂的位姿以及推进力大小。
[0167]
online评价网络网络:根据online策略网络输出的当前动作计算当前q值,并负责网络参数θq的迭代更新。
[0168]
target评价网络:根据target策略网络输出下一动作计算目标q值。通过目标q值和当前q值计算并更新评价网络参数。
[0169]
上述的策略网络以及评价网络全部由五层卷积神经网络组成,采有relu激活函数,f(x)=max(0,x),式中,x为特征向量,max为取数据最大值函数,f(x)为通过激活函数计算后的数据。
[0170]
软更新是指在online网络更新一段时间之后在对target网络进行更新:
[0171][0172]
策略网络的输入为钻孔状态,输出为机械臂动作。
[0173]
评价网络输入为钻孔状态和机械臂动作,输出为状态动作值q。
[0174]
q值为在起始状态下机械臂采取一系列动作之后的累计奖励,q
μ
(s
t
,a
t
)=e[r(s
t
,a
t
) γq
μ
(s
t 1
,μ(s
t 1
))],其中γ为折扣因子,μ为机械臂的动作决策,s
t 1
为下一刻的钻孔状态。
[0175]
如图2所示基于强化学习的钻孔力矩稳定性控制模型算法具体流程如下所示:
[0176]

策略网络根据动作策略选择一个动作a
t
,并且让执行器执行该动作:
[0177]at
=μ(s
t
∣θ
μ
) n
t
[0178]
动作策略是根据当前online策略网络和随机uo噪声生成的随机过程,从这个随机过程采样获得a
t
的值,s
t
表示当前的钻孔状态,表示随机噪声函数;
[0179]
执行器为机械臂末端安装的钻孔器;
[0180]

执行器执行a
t
,返回奖励值r
t
和新的状态s
t 1

[0181]

策略网络将这个状态转换过程(s
t
,a
t
,r
t
,s
t 1
)存储到经验池中,作为训练online网络的数据集。
[0182]

从经验池中,随机采样n个数据,作为online策略网络、online评价网络的一个mini-batch训练数据。将mini-batch中的单个数据用(si,ai,ri,s
i 1
)表示。
[0183]

计算online评价网络的梯度:
[0184]
评价网络的loss的定义,使用类似于监督式学习的方式,定义loss为mse:
[0185][0186]
其中,yi表示目标q值:
[0187]
yi=ri γq

(s
i 1


(s
i 1
∣θ
μ

)∣θq′
)
[0188]
采用标准bp算法就可以求得θq的梯度
[0189]

采用优化器更新θq。
[0190]

计算策略网络的梯度:
[0191][0192]

采用优化器更新θ
μ

[0193]

更新对应的target网络参数:
[0194][0195]
其中,τ为更新系数,一般取值为0.001。
[0196]
实施例三:
[0197]
本实施例提供一种基于强化学习的钻孔力矩稳定性控制方法,方法流程如图3所示,包括以下步骤:
[0198]
步骤一:采用上位机获取钻孔位置和钻孔深度;
[0199]
步骤二:控制器根据钻孔位置和钻孔深度计算出机械臂的目标位置和期望位姿;
[0200]
步骤三:机械臂带动钻孔器运动到指定的目标位置,并使机械臂的空间位姿处于所述期望位姿,开始钻孔操作,起始的钻孔位姿为小推进力切削起钻;
[0201]
步骤四:钻孔过程中,采用位移传感器采集实时钻头进给深度,采用力传感器采集实时钻孔器的阻力与扭矩信息;
[0202]
步骤五:控制器采用基于强化学习的钻孔力矩稳定性模型,对所述实时钻头进给深度、实时钻孔器的阻力与扭矩信息计算并输出机械臂调整信息,用于调整机械臂的位姿和推进力;
[0203]
步骤六:当所述位移传感器的反馈信号大于所述钻孔深度时,结束钻孔操作,钻孔器退出孔位。
[0204]
本实施例中的钻孔需求如表1所示:
[0205]
表1钻孔具体需求
[0206]
钻孔位置(上位机输入)孔径要求20mm钻孔深度100mm钻孔扭矩20n
·m[0207]
在钻孔过程中钻孔器会受到冲击载荷的作用,此时若无法及时平衡推进力与扭矩,会导致钻孔器产生偏移,甚至是出现卡钻的现象,导致钻孔失败。当钻孔过程中未采用本发明提供的力矩稳定性控制方法时,实验结果如表2所示:
[0208]
表2未采用力矩稳定性控制方法的钻孔实验结果
[0209]
y方向最大轴线偏移量6.2mmz方向最大轴线偏移量4.3mmx方向最大角度偏移量3.5
°
y方向最大角度偏移量5.4
°
z方向最大角度偏移量3.2
°
最大扭矩52n
·
m最大阻力738n
[0210]
通过本发明的基于强化学习的钻孔稳定性控制方法可以在钻孔过程中保证打孔精度以及减小冲击载荷,具体实验结果如表3所示:
[0211]
表3采用力矩稳定性控制方法的钻孔实验结果
[0212]
y方向最大轴线偏移量1.3mmz方向最大轴线偏移量2.1mmx方向最大角度偏移量2.2
°
y方向最大角度偏移量3.1
°
z方向最大角度偏移量1.9
°
最大扭矩22n
·
m最大阻力221n
[0213]
通过对比实验,可以得出结论:所采用的基于强化学习的钻孔稳定性控制方法能够在钻孔过程中控制好钻孔器的偏移量以及受到的冲击载荷,从而达到提高钻孔质量的目的。
[0214]
实施例四:
[0215]
本实施例提供一种基于强化学习的钻孔力矩稳定性控制方法,方法流程如图3所示,包括以下步骤:
[0216]
步骤一:采用上位机获取钻孔位置和钻孔深度;
[0217]
步骤二:控制器根据钻孔位置和钻孔深度计算出机械臂的目标位置和期望位姿;
[0218]
步骤三:机械臂带动钻孔器运动到目标位置,并使机械臂的空间位姿处于所述期望位姿,开始钻孔操作,起始的钻孔位姿为小推进力切削起钻;
[0219]
步骤四:钻孔过程中,采用位移传感器采集实时钻头进给深度,采用力传感器采集
实时钻孔器的阻力与扭矩信息;
[0220]
步骤五:控制器采用基于强化学习的钻孔力矩稳定性模型,对所述实时钻头进给深度、实时钻孔器的阻力与扭矩信息计算并输出机械臂调整信息,用于调整机械臂的位姿和推进力;
[0221]
步骤六:当所述位移传感器的反馈的信号大于所述钻孔深度时,结束钻孔操作,钻孔器退出孔位。
[0222]
本实施例通过将实时的机械臂位姿信号、钻孔器阻力与扭矩信号输入到训练好的钻孔力矩稳定性控制模型,输出机械臂的位姿调整信号以及推进力大小,控制器根据调整信号实时调整机械臂的实时位姿以及钻孔器受到的推进力。通过上述操作使钻头的轴线在钻孔过程中始终与孔位的轴线重合,推进力始终与扭矩相匹配,以保证钻孔操作的顺利进行。
[0223]
本实施例中,所述控制器通过实时接受钻孔过程中位移传感器反馈地信号判断钻孔是否完成。若位移反馈信号小于钻孔深度,则继续进给钻孔器;若位移反馈信号大于钻孔深度,则停止进给钻孔器,并将钻孔器退出孔位;钻孔过程中出现钻孔器阻力与扭矩过大的情况时,可以及时的停止钻孔操作,并将钻孔器退出孔位。
[0224]
本实施例中基于强化学习的钻孔力矩稳定性控制模型构建过程主要有以下步骤:
[0225]
首先将x方向定义为钻孔器钻进方向。
[0226]
步骤1:定义钻孔状态:s=(x,y,z,α,β,γ,f,f
x
,fy,fz,τ
x
,τy,τz)。其中(x,y,z,α,β,γ)为机械臂末端位姿,f为推进力大小,(f
x
,fy,fz,τ
x
,τy,τz)为钻孔器钻头受到的阻力与扭矩。其中推进力、钻孔器受到的阻力与扭矩信息又力传感器收集,机械臂末端位姿可以由机器人正运动学求得。
[0227]
步骤2:定义机械臂动作:a=(dx,dy,dz,dα,dβ,dγ,df),机械臂末端根据a调整机械臂位姿以及推进力大小。其中dx,dy,dz,dα,dβ,dγ为机械臂末端六个维度的调整量,df为机械臂末端的推进力调整量。
[0228]
步骤3:定义奖励函数:在钻孔过程中一共设定四个评价指标,分别是受到的冲击载荷大小、钻孔过程中钻头偏移量、钻孔完成状态、钻孔完成的时间。
[0229]
奖励函数1:
[0230][0231]
其中,m0=5;|δf
x
|,|δfy|,|δfz|,|δτ
x
|,|δτy|,|δτz|为钻孔过程中钻孔器钻头受到的突变阻力与扭矩;δf
xt
,δf
yt
,δf
zt
,δτ
xt
,δτ
yt
,δτ
zt
为钻孔过程中钻孔器钻头受到的突变阻力与扭矩的阈值。在本实施例中,只有当受到的突变阻力与扭矩小于期望
的阈值时才会受到奖励,当突变阻力与扭矩大于期望的阈值时就会受到惩罚。
[0232]
奖励函数2:
[0233][0234]
其中,0《m1《m0;|δx|,|δy|,|δz|,|δα|,|δβ|,|δγ|为钻孔过程中机械臂末端也就是钻孔器钻头轴线与孔位轴线的位置偏移量与角度偏移量;δx
t
,δy
t
,δz
t
,δα
t
,δβ
t
,δγ
t
为钻孔过程中机械臂末端也就是钻孔器钻头轴线与孔位轴线的位置偏移量与角度偏移量阈值。在本实施例中,只有当受偏移量小于期望的阈值时才会受到奖励,当偏移量大于期望的阈值时就会受到惩罚。
[0235]
奖励函数3:
[0236][0237]
其中m0《m2《10;只有当进给深度大于钻孔深度且推进力为0时才会受到奖励,若发生了其他情况说明钻孔操作没有顺利进行所以会受到惩罚。
[0238]
奖励函数4:
[0239]
r4(s
t
,a
t
)=-t
[0240]
设置钻孔完成时间的奖励函数,在顺利完成钻孔的前提下,花费的时间越短奖励越高,钻孔完成时间t按分钟计算。
[0241]
所以总奖励函数为:
[0242]
r(s
t
,a
t
)=r1(s
t
,a
t
) r2(s
t
,a
t
) r3(s
t
,a
t
) r4(s
t
,a
t
)
[0243]
步骤4:构建网络
[0244][0245][0246]
其中,μ(s|θ
μ
)表示输出的当前动作策略,包括机械臂位姿与推进力大小;μ

(s|θ
μ

)表示输出的下一动作策略,包括:下一个动作中机械臂位姿与推进力大小;s表示当前的钻孔状态,θ
μ
表示online策略网络的权重,θ
μ

表示target策略网络的权重,q(s|θq)表示输出当前q值,θq表示online评价网络的权重,θq′
表示target评价网络的权重,q

(s|θq′
)表示输出的目标q值;
[0247]
上述的策略网络以及评价网络全部由五层卷积神经网络组成,采有relu激活函
数,f(x)=max(0,x),式中,x为特征向量,max为取数据最大值函数,f(x)为通过激活函数计算后的数据。
[0248]
软更新是指在online网络更新一段时间之后在对target网络进行更新:
[0249][0250]
策略网络的输入为钻孔状态,输出为机械臂动作。
[0251]
评价网络输入为钻孔状态和机械臂动作,输出为状态动作值q。
[0252]
q值为在起始状态下机械臂采取一系列动作之后的累计奖励,q
μ
(s
t
,a
t
)=e[r(s
t
,a
t
) γq
μ
(s
t 1
,μ(s
t 1
))],其中γ为折扣因子,μ为机械臂的动作决策,s
t 1
为下一刻的钻孔状态。
[0253]
如图2所示基于强化学习的钻孔力矩稳定性控制模型算法具体流程如下所示:
[0254]

策略网络根据动作策略选择一个动作a
t
,并且让执行器执行该动作:
[0255]at
=μ(s
t
∣θ
μ
) n
t
[0256]
动作策略是根据当前online策略网络和随机uo噪声生成的随机过程,从这个随机过程采样获得a
t
的值,s
t
表示当前的钻孔状态,表示随机噪声函数;
[0257]
执行器为机械臂末端安装的钻孔器;
[0258]

执行器执行a
t
,返回奖励值r
t
和新的状态s
t 1

[0259]

策略网络将这个状态转换过程(s
t
,a
t
,r
t
,s
t 1
)存储到经验池中,作为训练online网络的数据集。
[0260]

从经验池中,随机采样n个数据,作为online策略网络、online评价网络的一个mini-batch训练数据。将mini-batch中的单个数据用(si,ai,ri,s
i 1
)表示。
[0261]

计算online评价网络的梯度:
[0262]
评价网络的loss的定义,使用类似于监督式学习的方式,定义loss为mse:
[0263][0264]
其中,yi表示目标q值:
[0265]
yi=ri γq

(s
i 1


(s
i 1
∣θ
μ

)∣θq′
)
[0266]
采用标准bp算法就可以求得θq的梯度
[0267]

采用优化器更新θq。
[0268]

计算策略网络的梯度:
[0269][0270]

采用优化器更新θ
μ

[0271]

更新对应的target网络参数:
[0272][0273]
其中,τ为更新系数,一般取值为0.001。
[0274]
本实施例通过采用小推进力切削起钻的控制模式,解决了现有技术起钻时推进力过大或者推进速度过快带来的摆动影响,达到了提高成孔率、成孔质量,钻孔定位精确的目的。
[0275]
通过采用基于强化学习的钻孔力矩稳定性控制系统及方法,解决了现有技术中扭矩与推进力无法实时匹配而产生冲击载荷的问题,实现了钻孔过程中钻孔器扭矩与推进力实时匹配的目标,达到了实时降低冲击载荷、提高钻孔效率、延长设备工作寿命的目的,并且可以避免出现卡钻、孔报废等后果。
[0276]
本发明实施例中的部分步骤,可以利用软件实现,相应的软件程序可以存储在可读取的存储介质中,如光盘或硬盘等。
[0277]
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献