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

机器人控制方法及相关装置与流程

2022-04-06 20:47:59 来源:中国专利 TAG:


1.本技术涉及机器人领域,具体而言,涉及一种机器人控制方法及相关装置。


背景技术:

2.工业机器人因其高精度、高效率和高自动化的特性,代表了先进的生产模式,在工业现代化进程中具有重要地位。因此,能够代替人类完成重复和危险的工作,在传统工业的升级转型过程中越发重要。
3.其中,工业机器人在投入生产线进行生产之前,需要对其进行编程,而牵引示教作为一种在线编程方式被广泛应用。然而,研究发现,传统的牵引示教放弃在零速对摩擦力进行前馈补偿,因此外部施加的零速启动转矩须完全克服库仑摩擦,这导致传统牵引示教具有对外部启动转矩要求高,启动不平滑的问题,不利于小范围精确调节。


技术实现要素:

4.为了克服现有技术中的至少一个不足,本技术提供一种机器人控制方法及相关装置,包括:
5.第一方面,本实施例提供一种机器人控制方法,应用于具有牵引示教功能的机器人,所述机器人配置有反馈控制系统,所述方法包括:
6.处于第一系数的条件下,接收用户的牵引操作,其中,第一系数大于第二系数,所述第一系数与所述第二系数表示所述控制系统中预设增益参数的参数值,所述第二系数表示所述机器人正常工作时,所述预设增益参数的参数值;
7.响应于所述牵引操作,确定所述牵引操作对目标关节产生的牵引方向;
8.根据所述牵引方向,输出所述目标关节的补偿转矩,其中,所述补偿转矩用于抵消所述牵引操作产生的库仑摩擦力。
9.第二方面,本实施例提供一种机器人控制装置,应用于具有牵引示教功能的机器人,所述机器人配置有反馈控制系统,所述机器人控制装置包括:
10.感应模块,用于处于第一系数的条件下,接收用户的牵引操作,其中,第一系数大于第二系数,所述第一系数与所述第二系数表示所述控制系统中预设增益参数的参数值,所述第二系数表示所述机器人正常工作时,所述预设增益参数的参数值;
11.响应模块,用于响应于所述牵引操作,确定所述牵引操作对目标关节产生的牵引方向;
12.补偿模块,用于根据所述牵引方向,输出所述目标关节的补偿转矩,其中,所述补偿转矩用于抵消所述牵引操作产生的库仑摩擦力。
13.第三方面,本实施例提供一种机器人,所述机器人具有牵引示教功能,且配置有反馈控制系统,所述机器人包括处理器以及存储器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,实现所述的机器人控制方法。
14.第四方面,本实施例提供一种计算机可读存储介质,所述计算机可读存储介质存
储有计算机程序,所述计算机程序被处理器执行时,实现所述的机器人控制方法。
15.相对于现有技术而言,本技术具有以下有益效果:
16.本技术提供的机器人控制方法及相关装置中,该机器人将反馈控制系统中预设增益参数,调整为第一系数;并在该状态下,响应用户的牵引操作;由于第一系数大于机器人正常工作时的第二系数,使得机器人能够间接测得用户施加的牵引方向,进而根据该牵引方向输出补偿转矩,以克服牵引过程中的库伦摩擦,从而到达牵引启动转矩更小,牵引转矩更平滑,响应更快的目的。
附图说明
17.为了更清楚地说明本技术实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本技术的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
18.图1为本技术实施例提供的传统牵引示教中转矩与外力之间的关系;
19.图2为本技术实施例提供的高增益状态转矩与外力之间的关系;
20.图3为本技术实施例提供的机器人的电路结构示意图;
21.图4为本技术实施例提供的机器人控制方法的流程图之一;
22.图5为本技术实施例提供的反馈控制系统的结构示意图;
23.图6为本技术实施例提供的机器人控制方法的流程图之二;
24.图7为本技术实施例提供的传统牵引示教与本技术控制效果对比图;
25.图8为本技术实施例提供的机器人控制装置结构示意图。
26.图标:120-存储器;130-处理器;140-通信单元;201-感应模块;202-响应模块;203-补偿模块。
具体实施方式
27.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本技术一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本技术实施例的组件可以以各种不同的配置来布置和设计。
28.因此,以下对在附图中提供的本技术的实施例的详细描述并非旨在限制要求保护的本技术的范围,而是仅仅表示本技术的选定实施例。基于本技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
29.应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
30.为使本领技术人员便于更加清楚地理解本技术实施例的目的、技术方案和优点,在介绍本实施例所提供机器人控制方法之前,先对工业机器领域所涉及的专业术语进行解释。
31.离线编程:作为工业机器人的编程方式的一种,离线编程方便快速,但是需要准确
的3d模型,并且易受实际误差的影响。
32.在线编程:作为另外一种编程方式,通常通过示教器教学来控制机器人到达指定位姿并记录关键点位,进而形成机器人运行轨迹。但面对复杂的任务时,示教器教学十分费时,因此面对小批量生产时,效率较低。作为替代的另一种在线编程方式,操作员施加牵引力,手动引导机器人到指定位姿并完成关键点位记录,被称为牵引示教、拖动示教等。其中,牵引示教又分为主动式和被动式,取决于牵引过程中是否有位置或力的反馈闭环。
33.主动式:该方式通常需要昂贵的末端力矩传感器或关节力矩传感器来检测外力,进而通过导纳控制完成笛卡尔空间的位移。为降低成本,无力矩传感器的主动牵引示教可以通过多种力矩观测器算法实现,然而观测器算法需要准确的惯性矩阵来维持稳定性,而这一矩阵通常通过复杂的物理测量或cad(computer aided design,计算机辅助设计)仿真获得,很多场合并不具备测量或仿真条件。
34.被动式:该方式为使机器人在牵引时能快动态响应,会基于重力和摩擦力等动力学补偿,且无需传感器,是一种方便且稳定的关节空间示教方式;因此,所有无力矩传感器牵引示教方法高度依赖准确的动力学补偿,包括重力和摩擦力。其中,该动力学补偿关系可以表示为:
35.t
ffw
=tg tf36.式中,t
ffw
表示用于进行动力学补偿的前馈转矩,tg为重力补偿,tf为摩擦补偿。
37.此外,工业机器人的动力学模型可表示为:
[0038][0039]
其中,g(q)、tm、t
ext
依次表示惯性力、科氏力、重力、摩擦力、电机转矩和外力,q表示机器人关节位置,位置微分表示机关节速度,速度微分表示关节加速度。
[0040]
而上述表达式中等号左侧的转矩项可通过动力学参数辨识获得;电机转矩与电机电流满足特定的映射关系,因此,可以通过对电流进行测量,间接获得;在主动补偿式的牵引示教中,该外力可由末端传感器测量获得。
[0041]
然而,研究发现,由于被动式牵引方式中,未使用昂贵的传感器用于检测外力,因此,难以感知用户施加的外力,从而导致传统被动式牵引示教方式放弃在零速启动时对摩擦力进行前馈补偿,这也进一步导致外部施加的零速启动转矩须完全克服库仑摩擦,使得传统牵引示教具有对外部启动转矩要求高,即需要用户在牵引示教时施加较大的转矩,因而会导致启动不平滑,不利于小范围精确调节等问题。
[0042]
研究还进一步的发现,依据工业机器人动力学模型,当机器人保持静止时,外部施加的转矩会被电机转矩和库仑摩擦力产生的转矩抵消。相应的数学表达式为:
[0043]
t1=t2 t3[0044]
式中,t1表示外部施加的转矩,t2表示电机转矩,t3表示库仑摩擦力产生的转矩。
[0045]
由上述表达式,可以发现库仑摩擦力产生的转矩t3越小,也就意味着此时的电机转矩t2近似等于用户外部施加的转矩,从而通过观测电机转矩间接完成对外力的检测,从而避免使用昂贵的末端力矩传感器或关节力矩传感器来检测外力。
[0046]
研究还发现,机器人配置的反馈控制系统配置有预设增益参数,该增益参数直接
影响机器人电机启动时的动态响应特性。因此,本实施例可以提高预设增益参数的参数值,降低相同外力作用时关节速度的变化,进而降低库仑摩擦在外力作用时的变化,然后,观测电机转矩间接完成对外力的检测,并根据外力的观测结果再对库伦摩擦力进行前馈补偿。
[0047]
如图1所示,在未提高预设增益参数的参数值时,电机输出的转矩与用户施加的外力之间不具有明显的跟随关系。而如图2所示,当提高预设增益参数的参数值时,电机输出的转矩与用户施加的外力之间则表现出明显的跟随关系,即电机转矩跟随外力增大而增大,跟随外力减小而减小。
[0048]
需要说明的是,基于上述技术问题的发现,发明人经过创造性劳动提出下述技术方案以解决或者改善上述问题。因此,以上现有技术中的方案所存在的缺陷,均是发明人在经过实践并仔细研究后得出的结果;以及上述问题的发现过程以及下文中本技术实施例针对上述问题所提出的解决方案,都应该是发明人在发明创造过程中对本技术做出的贡献,而不应当理解为本领域技术人员所公知的技术内容。
[0049]
此外,本实施例还提供该机器人的一种结构示意图。如图3所示,该机器人在机器人本体的基础上,还至少包括存储器120、处理器130、通信单元140。
[0050]
该存储器120、处理器130以及通信单元140各元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。
[0051]
其中,该存储器120可以是,但不限于,随机存取存储器(random access memory,ram),只读存储器(read only memory,rom),可编程只读存储器(programmable read-only memory,prom),可擦除只读存储器(erasable programmable read-only memory,eprom),电可擦除只读存储器(electric erasable programmable read-only memory,eeprom)等。其中,存储器120用于存储程序,该处理器130在接收到执行指令后,执行该程序。
[0052]
该通信单元140用于通过网络收发数据。网络可以包括有线网络、无线网络、光纤网络、远程通信网络、内联网、因特网、局域网(local area network,lan)、广域网(wide area network,wan)、无线局域网(wireless local area networks,wlan)、城域网(metropolitan area network,man)、广域网(wide area network,wan)、公共电话交换网(public switched telephone network,pstn)、蓝牙网络、zigbee网络、或近场通信(near field communication,nfc)网络等,或其任意组合。在一些实施例中,网络可以包括一个或多个网络接入点。例如,网络可以包括有线或无线网络接入点,例如基站和/或网络交换节点,服务请求处理系统的一个或多个组件可以通过该接入点连接到网络以交换数据和/或信息。
[0053]
基于上述相关介绍,下面结合图4对本实施例中的机器人控制方法进行详细阐述。但应该理解的是,流程图的操作可以不按顺序实现,没有逻辑的上下文关系的步骤可以反转顺序或者同时实施。此外,本领域技术人员在本技术内容的指引下,可以向流程图添加一个或多个其他操作,也可以从流程图中移除一个或多个操作。如图4所示,该方法包括:
[0054]
s101,处于第一系数的条件下,接收用户的牵引操作。
[0055]
其中,第一系数大于第二系数,第一系数与第二系数表示控制系统中预设增益参数的参数值,第二系数表示机器人正常工作时,预设增益参数的参数值。
[0056]
s102,响应于牵引操作,确定牵引操作对目标关节产生的牵引方向。
[0057]
s104,根据牵引方向,输出目标关节的补偿转矩。
[0058]
其中,补偿转矩用于抵消牵引操作产生的库仑摩擦力。
[0059]
示例性的,假定该机器人具有6个自由度,该目标关节为末端的第5个关节,并且,该反馈控制系统如图5所示,是一包括位置外环以及速度内环的双闭环控制系统。
[0060]
其中,位置外环用于根据目标关节的实测位置q与参考位置q
ref
的比较结果,输出位置控制信息使得目标关节移动到参考位置;速度内环用于根据目标关节的实测转速与参考转速之间的比较结果,输出转速控制信号使得目标关节保持在参考转速运动。
[0061]
继续参见图5,假定本实施例中的预设增益参数包括位置外环的比例系数k
px
、速度内环的比例系数k
pv
,以及积分系数k
iv
。当机器人处于静止状态时,考虑到机器人的控制系统在上电之后,有一自动调整的过程,并针对该调整过程提供有第一计时器;因此,将上述预设增益参数k
px
,k
pv
,k
iv
调整高增益状态的同时,重置速度环的积分并将第一计时器的倒计时长度重置为t
c1
,利用第一计时器渡过短暂的动态过程。
[0062]
待机器人渡过短暂的动态过程,系统进入稳态后,保持增益参数k
px
,k
pv
,k
iv
为第一系数对应的高增益状态,并将当前位置为作为参考值q
ref

[0063]
在此高增益状态下,接收用户的牵引操作;由于此时机器人仍处于静止状态,则可以通过测量电机的电流间接测得用户牵引操作的牵引方向。因此,在获得牵引方向之后,该机器人则可以根据该牵引方向输出补偿转矩,以抵消牵引操作时产生的库仑摩擦力。
[0064]
待用户牵引示教完成之后,该机器人将上述预设增益参数k
px
,k
pv
,k
iv
调整为正常工作时所需的第二系数,其中,而该第二系数小于第一系数。
[0065]
因此,本实施例提供的上述方式中,该机器人将反馈控制系统中预设增益参数,调整为第一系数;并在该状态下,响应用户的牵引操作;由于第一系数大于机器人正常工作时的第二系数,使得机器人能够间接测得用户施加的牵引方向,进而根据该牵引方向输出补偿转矩,以克服牵引过程中的库伦摩擦力。
[0066]
研究还发现,当机器人处于高增益状态时,可能导致机器人控制无法收敛的副作用,因此,如图5所示,在高增益控制器的输出端可以添加饱和模块加以抑制,使得机器人即使在高增益状态下,也可以限定在预设速度范围内运行。
[0067]
研究还发现,该牵引方向与机器人当前位置的参考转矩相关,因此,上述步骤s102可以包括以下实施方式:
[0068]
s102-1,响应于牵引操作,根据所述目标关节对应驱动电机的电流获得目标关节的输出转矩。
[0069]
s102-2,将输出转矩与参考转矩进行比较,获得牵引操作对目标关节产生的牵引方向。
[0070]
其中,参考转矩表示期望目标关节在当前位姿输出的转矩。
[0071]
可选地实施方式中,牵引方向包括第一牵引方向以及第二牵引方向,第一牵引方向与第二牵引方向分别位于相反的方向。
[0072]
因此,若参考转矩与输出转矩之差大于转矩阈值,则牵引方向为第一牵引方向;若输出转矩与参考转矩之差大于转矩阈值,则牵引方向为第二牵引方向。
[0073]
示例性的,该牵引方向与输出转矩以及参考转矩之间的关系,可以表示为:
[0074][0075]
式中,dir表示牵引方向,tr表示参考转矩,t
mf
表示输出转矩,λ
t
表示转矩阈值。
[0076]
本实施例中,机器人在检测到用户施加的外力之后,为便于为后续的牵引操作施加转矩补偿,将位置环和速度环均调整为零增益状态,此时关节电机驱动只包含前馈转矩补偿t
ffw
。因此,如图6所示,步骤s104之前,该方法还包括:
[0077]
s103,将预设增益参数的参数值调整为0。
[0078]
研究还发现,当机器人关节处于不同转速时,所受到的库伦摩擦力存在较大的差异。因此,上述步骤s104可以包括以下实施方式:
[0079]
s104-1,获取目标关节在牵引操作下产生的第一转速。
[0080]
s104-2,若第一转速小于第一转速阈值,则输出第一补偿转矩。
[0081]
研究发现,关节转速小于第一转速阈值λ
v1
,此时的关节处于转动与未转动的临界状态,因此,将此状态定义为零速启动状态。并且,在零速启动状态,第一补偿转矩与目标关节的库仑摩擦系数相关,因此,前馈转矩补偿中,除重力补偿外,根据检测到的牵引方向,对库仑摩擦进行如下前馈补偿。
[0082]
示例性的,第一补偿转矩的表达式为:
[0083]
t
f3
=α1fc·
dir
[0084]
式中,t
f3
表示第一补偿转矩,α1≤1表示第一经验系数,fc表示库仑摩擦系数。
[0085]
s104-3,获取目标关节在牵引操作以及第一补偿转矩的作用下产生的第二转速。
[0086]
s104-4,若第二转速大于或者等于第一转速阈值,则输出第二补偿转矩。
[0087]
正如上述示例中,关节转速小于第一转速阈值λ
v1
,此时的关节处于零速启动状态;因此,若关节的转速大于或者等于第一转速阈值λ
v1
,则意味着机器人从零速启动状态进入转动状态。此时,第二补偿转矩的表达式为:
[0088][0089]
式中,α2≤1表示第二经验系数,表述目标关节的转速,fv表示粘滞摩擦系数,λ
v2
表示第二速度阈值。
[0090]
研究还发现,当用户不小心触碰到机器人的机器臂时,容易导致机器人进入零速启动状态;又由于并非牵引操作使得该机器人处于零速启动状态,因此,不会像牵引操作存在持续的外力作用于机器人;而机器人长时间处于零速启动状态反而会给真正需要进行牵引示教带来不利影响。
[0091]
鉴于此,该机器人获取在牵引操作以及第一补偿转矩的作用下产生的第二转速。
[0092]
然后,若在预设时长内,机器人检测到目标关节的转速未大于或者等于第一转速阈值,则意味着并非牵引操作使得该机器人处于零速启动状态,因此,将预设增益参数调整为第一系数,以便于用户下次对机器人实施牵引示教操作。
[0093]
示例性的,该机器人还提供又第二计时器,并在进入零速启动状态时,将第二计时
器的倒计时长度重置为t
c2
;然后,周期性的获取目标关节当前的转速。
[0094]
在每个周期中,该机器人则先判断当前周期采集的转速是否大于或者等于第一转速阈值;若当前周期的转速大于第一转速阈值,则输出第二补偿转矩。
[0095]
若当前周期的转速不大于第一转速阈值,该机器人则判断第二计时器剩余倒计时是否为0;若剩余倒计时为0,则意味着并非牵引操作使得该机器人处于零速启动状态,因此,将预设增益参数调整为第一系数,以便于用户下次对机器人实施牵引示教操作;若剩余倒计时不为0,该机器人则进入下一周期。
[0096]
通过同一机器人对上述机器人控制方法与传统牵引示教方法进行比较,测得的外部施加转矩和转速波形的比较结果如图7所示。不难看出,两种方法中,外部施加转矩的斜率和移动期间的大小相似。而本实施例所提供给机器人控制方法中,在外力超过设定阈值λ
t
后,即可开始对机器人进行牵引;而传统方法,外力需要超过库仑摩擦,才能够开始牵引。
[0097]
因此,通过对比,验证了本实施例所提供机器人控制方法中,牵引启动转矩更小,牵引转矩更平滑,响应更快的优势。
[0098]
基于与上述方法相同的发明构思,本实施例还提供与该方法相关的装置,包括:
[0099]
本实施例还提供一种机器人控制装置,应用于具有牵引示教功能的机器人,机器人配置有反馈控制系统。其中,该机器人控制装置110包括至少一个可以软件形式存储于存储器120中的功能模块。如图8所示,从功能上划分,机器人控制装置可以包括:
[0100]
感应模块201,用于处于第一系数的条件下,接收用户的牵引操作,其中,第一系数大于第二系数,第一系数与第二系数表示控制系统中预设增益参数的参数值,第二系数表示机器人正常工作时,预设增益参数的参数值。
[0101]
本实施例中,该感应模块201用于实现图4中的步骤s101,关于该感应模块201的详细描述,可以参见步骤s101的详细描述。
[0102]
响应模块202,用于响应于牵引操作,确定牵引操作对目标关节产生的牵引方向。
[0103]
本实施例中,该响应模块202用于实现图4中的步骤s102,关于该响应模块202的详细描述,可以参见步骤s102的详细描述。
[0104]
补偿模块203,用于根据牵引方向,输出目标关节的补偿转矩,其中,补偿转矩用于抵消牵引操作产生的库仑摩擦力。
[0105]
本实施例中,该补偿模块203用于实现图4中的步骤s103,关于该补偿模块203的详细描述,可以参见步骤s103的详细描述。
[0106]
当应该理解的是,可选地实施方式中,该机器人控制装置还可以包括其他软件功能模块,用于实现上述机器人控制方法的其他步骤或者子步骤。其他可选地实施方式中,上述感应模块201、响应模块202以及补偿模块203同样可以用于实现上述机器人控制方法的其他步骤或者子步骤。因此,本实施例不对此做具体的限定,本领域技术人员可以根据需要进行适应性调整。
[0107]
本实施例还提供一种机器人,机器人具有牵引示教功能,且配置有反馈控制系统,机器人包括处理器以及存储器,存储器存储有计算机程序,计算机程序被处理器执行时,实现所述的机器人控制方法。
[0108]
本实施例还提供一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序被处理器执行时,实现所述的机器人控制方法。
[0109]
需要说明的是,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。此外,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0110]
还应该理解的是,本实施例所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本技术的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0111]
另外,在本技术各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
[0112]
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0113]
以上所述,仅为本技术的各种实施方式,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应所述以权利要求的保护范围为准。
再多了解一些

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

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

相关文献