CN107662209A - 一种控制方法及机器人 - Google Patents
一种控制方法及机器人 Download PDFInfo
- Publication number
- CN107662209A CN107662209A CN201710858439.1A CN201710858439A CN107662209A CN 107662209 A CN107662209 A CN 107662209A CN 201710858439 A CN201710858439 A CN 201710858439A CN 107662209 A CN107662209 A CN 107662209A
- Authority
- CN
- China
- Prior art keywords
- joint
- robot
- parameter
- kinetic model
- axis
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1602—Programme controls characterised by the control system, structure, architecture
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1674—Programme controls characterised by safety, monitoring, diagnostic
- B25J9/1676—Avoiding collision or forbidden zones
Abstract
本发明实施例涉及机器人领域,公开了一种控制方法及机器人。本发明中,控制方法包括:获取机器人的第一动力学模型;其中,第一动力学模型用于表示关节的运动参数与前馈力矩之间的关系,第一动力学模型的参数已知;将关节的参考的运动参数代入第一动力学模型,计算得到关节的前馈力矩;其中,运动参数包括关节角度、关节角速度和关节角加速度;根据关节的前馈力矩确定关节当前的关节力矩;按照关节当前的关节力矩控制机器人运动。本发明实施方式减轻了机器人在上电瞬间和运动过程中的抖动问题,提升机器人系统的控制精度。
Description
技术领域
本发明实施例涉及控制技术领域,特别涉及一种控制方法及机器人。
背景技术
机器人是自动控制机器的俗称,是高级整合控制论、机械电子、计算机、材料和仿生学的产物。如今,机器人的应用越来越宽,由95%的工业应用扩展到更多领域的非工业应用,如医学、农业、建筑业甚至军事等。机器人的控制方式一般是位置反馈控制方式。位置反馈控制方式是指按照机器人实际位置和期望位置的偏差进行反馈控制,是一个半闭环的控制方式。
发明人发现现有技术中至少存在如下问题:位置反馈控制方式存在一些缺点,如只有位置偏差形成以后,控制作用才发生相应改变,即控制作用落后于干扰的作用。这些缺点使得机器人难以具有良好的动态和静态性能,主要表现为机器人使用过程中的抖动问题。目前,由于机器人在制造、装配过程而产生的误差,可以通过杆长标定的方式将误差降到最低。但是,由于力学因素和控制器性能引起的抖动问题却不能通过杆长标定和位置反馈控制方式解决。
发明内容
本发明实施方式的目的在于提供一种控制方法及机器人,减轻了机器人在上电瞬间和运动过程中的抖动问题,提升机器人的控制精度。
为解决上述技术问题,本发明的实施方式提供了一种控制方法,包括以下步骤:
获取机器人的第一动力学模型;其中,第一动力学模型用于表示关节的运动参数与前馈力矩之间的关系,第一动力学模型的参数已知;
将关节的参考的运动参数代入第一动力学模型,计算得到关节的前馈力矩;其中,运动参数包括关节角度、关节角速度和关节角加速度;
根据关节的前馈力矩确定关节当前的关节力矩;
按照关节当前的关节力矩控制机器人运动。
本发明的实施方式还提供了一种机器人,包括:
至少一个处理器;以及,
与至少一个处理器通信连接的存储器;其中,
存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行如上述实施方式所涉及的控制方法。
本发明实施方式相对于现有技术而言,加入了前馈控制。机器人在上电瞬间或运动过程中,会获得参考的运动参数,通过将参考的运动参数代入第一动力学模型中,就可以计算关节的前馈力矩,并根据关节的前馈力矩确定机器人的关节当前的关节力矩,按照关节当前的关节力矩控制机器人运动。通过引入前馈控制,使得机器人不需要等到实际运动偏差就可以进行调整,减轻了机器人在上电瞬间或运动过程中出现的抖动问题,提高了机器人的控制精度。
另外,获取机器人的第一动力学模型之前,控制方法还包括:通过模型辨识方法建立第一动力学模型。通过模型辨识方法建立第一动力学模型的过程,相对于采用物理测量法建立模型的过程而言,不需要使用专门的测量装置,实现简单。
另外,通过模型辨识方法建立第一动力学模型,具体包括:
确定输入为机器人关节的运动参数、输出为机器人关节的三维关节力和三维的关节力矩作用在连杆质心上的分量的第一约束关系;
确定输入为机器人关节的三维关节力及三维的关节力矩作用在连杆质心上的分量、输出为机器人的前馈力矩的第二约束关系;
根据第一约束关系和第二约束关系确定第二动力学模型,其中,第二动力学模型的参数未知;
对机器人关节的运动参数以及关节力矩进行采样,将采样得到的关节力矩作为前馈力矩,根据机器人关节的运动参数和前馈力矩确定第二动力学模型的未知参数的取值,将参数已知的第二动力学模型作为第一动力学模型。
另外,对机器人关节的运动参数以及关节力矩进行采样,将采样得到的关节力矩作为前馈力矩,根据机器人关节的运动参数和前馈力矩确定第二动力学模型的未知参数的取值,将参数已知的第二动力学模型作为第一动力学模型,具体包括:
确定第二动力学模型的最小参数集;其中,最小参数集为
{Ixx-Iyy,Ixy,Ixz,Iyz,Izz,mrx,mry}
其中,Ixx表示转动惯量在x轴的分量,Iyy表示转动惯量在y轴的分量,Izz表示转动惯量在z轴的分量,Ixy表示转动惯量在x轴与y轴构成的平面上的分量,Iyz表示转动惯量在y轴与z轴构成的平面上的分量,Ixz表示转动惯量在x轴与z轴构成的平面上的分量;x轴、y轴、z轴为机器人的坐标系i的坐标轴;i表示机器人的关节的编号,坐标系i为以机器人的关节i为原点的三维坐标系;
控制机器人按照激励轨迹运动,对运动中的机器人的关节角度、关节角速度、关节角加速度和关节力矩进行M次采样,其中,M为正整数;
将关节角度、关节角速度和关节角加速度代入第二动力学模型,并将采样得到的关节力矩作为前馈力矩,代入第二动力学模型,计算得到最小参数集中各参数的取值。
在计算第二动力学模型中的未知参数的取值前,确定最小参数集,有效地降低了计算的复杂度,使得计算过程更为简单。
另外,通过模型辨识方法建立第一动力学模型,具体包括:
确定输入为机器人关节的运动参数、输出为机器人关节的三维关节力和三维的关节力矩作用在连杆质心上的分量的第一约束关系;
确定输入为机器人关节的三维关节力及三维的关节力矩作用在连杆质心上的分量、输出为机器人的前馈力矩的第二约束关系;
根据第一约束关系和第二约束关系确定第三动力学模型,其中,第三动力学模型的参数未知;
建立机器人的摩擦力模型;其中,摩擦力模型中含有摩擦力参数;
将第三动力学模型和摩擦力模型相加,得到第二动力学模型;
对机器人关节的运动参数以及关节力矩进行采样,将采样得到的关节力矩作为前馈力矩,根据机器人关节的运动参数和前馈力矩确定第二动力学模型的未知参数的取值,将参数已知的第二动力学模型作为第一动力学模型。
在建立动力学模型时,还建立了机器人的摩擦力模型,将第三动力学模型和摩擦力模型相加,得到第二动力学模型。将摩擦力的因素综合考虑进第二动力学模型中,可以得到一个更接近于实际的动力学模型,提高了模型的精度。
另外,对机器人关节的运动参数以及关节力矩进行采样,将采样得到的关节力矩作为前馈力矩,根据机器人关节的运动参数和前馈力矩确定第二动力学模型的未知参数的取值,将参数已知的第二动力学模型作为第一动力学模型,具体包括:
确定第二动力学模型的最小参数集;其中,最小参数集为
{Ixx-Iyy,Ixy,Ixz,Iyz,Izz,mrx,mry,fc,fv}
其中,Ixx表示转动惯量在x轴的分量,Iyy表示转动惯量在y轴的分量,Izz表示转动惯量在z轴的分量,Ixy表示转动惯量在x轴与y轴构成的平面上的分量,Iyz表示转动惯量在y轴与z轴构成的平面上的分量,Ixz表示转动惯量在x轴与z轴构成的平面上的分量;x轴、y轴、z轴为机器人的坐标系i的坐标轴,i表示机器人的关节的编号,坐标系i为以机器人的关节i为原点的三维坐标系;fc为库仑摩擦力参数,fv为粘性摩擦参数;
控制机器人按照激励轨迹运动,对运动中的机器人的关节角度、关节角速度、关节角加速度和关节力矩进行M次采样,其中,M为正整数;
将关节角度、关节角速度和关节角加速度代入第二动力学模型,将关节力矩作为前馈力矩,代入第二动力学模型,计算得到最小参数集中各参数的取值。
在计算第二动力学模型中的未知参数的取值前,确定最小参数集,有效地降低了计算的复杂度,使得计算过程更为简单。
由于最小参数集中包括摩擦力参数,所以可以求得摩擦力参数的取值,将摩擦力参数的取值代入第二动力学模型后得到的第一动力学模型会更符合实际。
另外,确定输入为机器人关节的运动参数、输出为机器人关节的三维关节力和三维的关节力矩作用在连杆质心上的分量的第一约束关系,具体包括:
按照公式a:迭代计算机器人从连杆1到连杆p各自的连杆角速度;
按照公式b:迭代计算机器人从连杆1到连杆p各自的连杆角加速度;
按照公式c:计算机器人连杆1到连杆p所对应的各关节的加速度;
按照公式d:计算机器人连杆1到连杆p各自的连杆质心的加速度;
按照公式e:计算机器人各关节的三维关节力;
按照公式f:计算机器人各关节的三维的关节力矩作用在连杆质心上的分量;
根据公式a至公式f,确定第一约束关系;
其中,公式a至公式f中,i为机器人的关节的编号,为坐标系i+1相对于坐标系i的旋转矩阵,ω为连杆角速度,为连杆的角加速度,为关节的加速度,为连杆质心的加速度,Z为轴线方向的单位方向矢量,表示关节角速度,表示关节角加速度,PC为质心位置,P为关节位置,m为关节质量,F是三维关节力,N为三维的关节力矩作用在连杆质心上的分量,I是关节惯量矩阵;
确定输入为机器人关节的三维关节力及三维的关节力矩作用在连杆质心上的分量、输出为机器人的前馈力矩的第二约束关系,具体包括:
按照公式g:
公式h:
以及公式k:确定第二约束关系;
其中,公式g、h、k中,为坐标系i相对于坐标系i+1的旋转矩阵,F是三维关节力,N为三维的关节力矩作用在连杆质心上的分量,f是关节驱动力,n为三维的关节力矩,PC为质心位置,P为关节位置,τ为前馈力矩,Z为轴线方向的单位方向矢量,其中,坐标系i为以关节i为原点的三维坐标,坐标系i+1为以关节i+1为原点的三维坐标。
另外,控制机器人按照激励轨迹运动,具体包括:
控制机器人以小于第一预设阈值的速度按照激励轨迹运动,判断是否发生碰撞;
若判定为发生碰撞,更新激励轨迹,转至控制机器人以小于第一预设阈值的速度按照激励轨迹运动;
若判定为不发生碰撞,控制机器人以大于第一预设阈值的速度按照激励轨迹运动。
在机器人快速运行前,先让机器人进行慢速运行,检测机器人按激励轨迹运行时是否会发生碰撞。因为机器人的运行速度慢,所以如果发生了碰撞,碰撞时机器人的动能小,对机器人或与机器人发生碰撞的物体造成的冲击力小,对机器人或碰撞的物体造成的破坏力小。在快速运行前先慢速运行可以避免机器人与墙体等物体碰撞造成的损坏。
另外,确定第二动力学模型的未知参数的取值之后,将参数已知的第二动力学模型作为第一动力学模型之前,控制方法还包括:
控制机器人按照验证轨迹运动,在运动过程中采样获得机器人的关节力矩,以及将验证轨迹中采样时刻对应的运动参数输入到参数已知的第二动力学模型中,输出机器人的前馈力矩,根据前馈力矩计算机器人的关节力矩;
确定采样得到的机器人的关节力矩与计算得到的机器人的关节力矩的差值小于第二预设阈值。
在确定未知参数的取值后,将参数已知的第二动力学模型作为第一动力学模型之前,对参数已知的第二动力学模型进行验证,可以确定动力学模型的准确度,从而能够保证机器人在正常运行中获得的前馈力矩的准确度。
附图说明
一个或多个实施例通过与之对应的附图中的图片进行示例性说明,这些示例性说明并不构成对实施例的限定,附图中具有相同参考数字标号的元件表示为类似的元件,除非有特别申明,附图中的图不构成比例限制。
图1是本发明第一实施方式的控制方法的流程图;
图2是本发明第一实施方式中在反馈控制回路上加入前馈控制的结构框图;
图3是本发明第一实施方式中对六轴机器人进行控制的仿真图;
图4是本发明第一实施方式中六轴机器人的1-3轴的前馈力矩与实际力矩的对比结果示意图;
图5是本发明第一实施方式中两种控制方法下的运动结果比较示意图;
图6是本发明第一实施方式中机器人5轴加前馈时电机的运动响应结果示意图;
图7是本发明第一实施方式中机器人5轴不加前馈时电机的运动响应结果示意图;
图8是本发明第二实施方式的控制方法的流程图;
图9是本发明第三实施方式的控制方法的流程图;
图10是本发明第四实施方式的控制方法的流程图;
图11是本发明第五实施方式的机器人的结构框图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的各实施方式进行详细的阐述。然而,本领域的普通技术人员可以理解,在本发明各实施方式中,为了使读者更好地理解本申请而提出了许多技术细节。但是,即使没有这些技术细节和基于以下各实施方式的种种变化和修改,也可以实现本申请所要求保护的技术方案。
本发明的第一实施方式涉及一种控制方法,应用于机器人。具体流程如图1所示。图1所示的控制方法的流程可以包括:
步骤101:获取机器人的第一动力学模型。
具体地说,第一动力学模型用于表示关节的运动参数与前馈力矩之间的关系,第一动力学模型的参数已知。其中,运动参数包括机器人的关节角度、关节角速度和关节角加速度。
需要说明的是,本领域技术人员可以理解,在实际应用中,本领域技术人员可以通过模型辨识方法或物理测量的方法或使用计算机辅助设计(Computer Aided Design,CAD)建立模型的方法建立第一动力学模型,此处仅为举例说明,本实施方式不限制第一动力学模型的建立方式。
步骤102:将关节的参考的运动参数代入第一动力学模型,计算得到关节的前馈力矩。
具体地说,关节的参考的运动参数是指表征机器人需要达到的目标运动状态的运动参数,具体包括机器人的关节角度、关节角速度和关节角加速度。即当机器人达到参考的运动参数时,就完成了当次运动的目标。将参考的运动参数代入第一动力学模型后,机器人会根据第一动力学模型确定的参考的运动参数和前馈力矩的关系计算出关节的前馈力矩。
步骤103:根据关节的前馈力矩确定关节当前的关节力矩。
具体地说,在机器人根据关节的参考的运动参数和第一动力学模型计算得到关节的前馈力矩后,机器人会根据引入前馈力矩的机器人的控制回路的输出确定关节当前的关节力矩,即机器人根据控制回路和前馈力矩确定当次运动中输出的关节力矩,在该关节力矩的作用下使机器人的关节运动到需要达到的运动状态。
需要说明的是,机器人的控制回路可以是位置反馈控制回路或速度反馈控制回路,本领域技术人员可以理解,在实际应用中,可以根据对机器人运动的准确度的要求选择机器人的控制回路,在此不作限制。
步骤104:按照关节当前的关节力矩控制机器人运动。
具体地说,机器人根据关节当前的关节力矩控制机器人运动。
值得一提的是,因为机器人在获得参考的运动参数时就可以得到关节的前馈力矩,所以机器人可以在反馈控制中的反馈输入量为0情况下,根据关节的前馈力矩确定关节当前的关节力矩,并按照关节当前的关节力矩控制机器人运动,以减少参考的运动参数和实际的运动参数之间的误差。
举例说明如下,在反馈控制回路上加入控制方法的结构框图如图2所示,机器人使用图2所示的控制方法时,机器人将获得的参考的运动参数(参考关节角度、参考关节角速度和参考关节角加速度)输入前馈控制回路的第一动力学模型中。由于在机器人启动或运动过程中,机器人还未检测到关节角度误差,所以,机器人的反馈控制回路的输入为0。但是,因为机器人的控制回路引入了前馈控制回路,机器人在获得参考的运动参数时就可以得到关节的前馈力矩,所以控制回路的最终输出是关节的前馈力矩。机器人将在前馈力矩的控制下向参考的运动状态运动,有效的减轻了启动或运动过程中由于位置偏差还未形成,导致在控制回路输出为0的情况下松开对机器轴的抱闸,进而导致机器轴在重力作用下形成的抖动问题,提高了机器人的精度和效率。
举例说明如下,对六轴机器人进行控制的仿真模型如图3所示。其中,Tff、Tfb模块是零阶保持器模块,三角形方框表示比例增益,三角形方框中的数字代表增益大小,圆形框表示加减法运算,圆角矩形框表示输出端口,输出端口中的数字仅代表编号,四个模块中的q代表关节角度q,qd表示关节角速度qdd表示关节角加速度
对如图3所示的仿真模型进行仿真后,得到的六轴机器人的1-3轴的前馈力矩与实际力矩的对比结果如图4所示。根据对六轴机器人的结构的了解,我们知道机器人的2、3、5轴受重力的影响较大。从图4可以看出,受重力影响较大的机器人的1-3轴的前馈力矩与实际力矩非常吻合,误差在10%以内。可见,通过第一动力学模型获得的关节力矩能够作为前馈力矩。
具体的,对采用本实施方式涉及的控制方法后的机器人运动和采用反馈控制方法后的机器人运动进行仿真,两种控制方法下的运动结果比较如图5所示。通过图5可知,图中的两条曲线分别对应2、3轴上使能瞬间位置误差的对比,其中上面的是2轴的对比曲线,下面的是3轴的对比曲线。在时刻1s为不加前馈时的上使能,在时刻5.8s左右为加前馈之后的上使能。从图中可以看出,不加前馈上使能时,位置误差有明显突变,而在加前馈之后,位置误差有非常明显的减小,从数据上来看,加前馈后上使能瞬间的位置误差可以减小10-20倍,抖动的问题明显改善。所以,不使用本实施方式涉及的控制方法时,由于控制回路中关节力矩的输出存在不可避免的延迟时间,所以可以看到机器人在重力作用下会有明显的抖动,而使用本实施方式涉及的控制方法之后,上使能时的抖动情况有明显抑制。原因在于,使用本实施方式涉及的控制方法后,机器人无需再等误差产生后再产生关节力矩来消除位置误差,前馈力矩可以先将需要的驱动力矩发给机器人,使机器人可以提前响应。
另外在机器人运动过程中,前馈控制的改善效果还体现在加减速阶段,而在匀速运行时由于转矩变化不大,因此前馈的作用并不明显。以6kg负载机器人的5轴为例,图6为机器人的5轴加前馈时电机的运动响应结果图,图7为机器人5轴不加前馈时电机的运动响应结果图。其中,曲线1代表下发给定速度曲线,曲线2代表实际速度曲线。由对比可见,加前馈后,机器人速度响应在启停阶段得到明显改善,且在加减速阶段,速度误差得到明显减小,即加力矩前馈之后可以明显改善速度环响应。
与现有技术相比,本实施方式提供的控制方法,加入了前馈控制。因为机器人在上电瞬间或运动过程中,会获得参考的运动参数。机器人通过将参考的运动参数代入第一动力学模型中,就可以计算关节的前馈力矩,并根据关节的前馈力矩确定机器人的关节当前的关节力矩,按照关节当前的关节力矩控制机器人运动。所以,机器人不需要等到检测到当前运动参数与参考的运动参数有偏差就可以开始运动,减轻了机器人在上电瞬间或运动过程中出现的抖动问题,提高了机器人的精度和效率。
本发明的第二实施方式涉及一种控制方法,本实施方式在第一实施方式的基础上做了进一步改进,具体改进之处为:在获取机器人的第一动力学模型之前,控制方法还包括:通过模型辨识方法建立第一动力学模型。具体流程如图8所示。
具体的说,在本实施方式中,包括步骤201至步骤205,其中,步骤202至步骤204与第一实施方式的步骤101至步骤104大致相同,在此不再赘述。下面主要介绍不同之处:
步骤201:通过模型辨识方法建立第一动力学模型。
具体地说,在机器人获取机器人的第一动力学模型之前,机器人需要通过模型辨识方法建立第一动力学模型。模型辨识就是在输入数据和输出数据的基础上,确定一个与机器人等价的模型。
值得一提的是,通过模型辨识方法建立第一动力学模型的过程,是机器人自己计算得到第一动力学模型的过程,获得的模型准确。相对于物理测量的方法,模型辨识方法不需要使用专门的测量装置,实现简单。相对于使用CAD建立模型的方法,通过模型辨识方法建立的模型将机器人的制造和工艺的误差、关节特性考虑进去,使得建立的第一动力学模型更为准确。
与现有技术相比,本实施方式涉及的控制方法,加入了前馈控制。机器人在上电瞬间或运动过程中,会获得参考的运动参数,通过将参考的运动参数代入第一动力学模型中,就可以计算关节的前馈力矩,并根据关节的前馈力矩确定机器人的关节当前的关节力矩,按照关节当前的关节力矩控制机器人运动。通过引入前馈控制,使得机器人不需要等到实际运动偏差就可以进行调整,减轻了机器人在上电瞬间或运动过程中出现的抖动问题,提高了机器人的控制精度。并且,本实施方式中的第一动力学模型是通过模型辨识方法建立的,所以机器人获得的模型更为准确。
本发明的第三实施方式涉及一种控制方法,本实施方式对第二实施方式的步骤201做了进一步细化,具体说明了步骤201。如图9所示,步骤201具体包括:
步骤301:确定输入为机器人关节的运动参数、输出为机器人关节的三维关节力和三维的关节力矩作用在连杆质心上的分量的第一约束关系。
具体地说,在通过模型辨识方法建立第一动力学模型时,需要先确定输入为机器人关节的运动参数、输出为机器人关节的三维关节力和三维的关节力矩作用在连杆质心上的分量的第一约束关系,具体包括:
按照公式a:迭代计算机器人从连杆1到连杆p各自的连杆角速度;
按照公式b:迭代计算机器人从连杆1到连杆p各自的连杆角加速度;
按照公式c:计算机器人连杆1到连杆p所对应的各关节的加速度;
按照公式d:计算机器人连杆1到连杆p各自的连杆质心的加速度;
按照公式e:计算机器人各关节的三维关节力;
按照公式f:计算机器人各关节的三维的关节力矩作用在连杆质心上的分量;
根据公式a至公式f,确定第一约束关系;
其中,公式a至公式f中,i表示机器人的关节的编号,表示坐标系i+1相对于坐标系i的旋转矩阵,ω表示连杆角速度,表示连杆的角加速度,表示关节的加速度,表示连杆质心的加速度,Z表示轴线方向的单位方向矢量,表示关节角速度,表示关节角加速度,PC表示质心位置,P表示关节位置,m表示关节质量,F表示三维关节力,N表示三维的关节力矩作用在连杆质心上的分量,I表示关节惯量矩阵。
步骤302:确定输入为机器人关节的三维关节力及三维的关节力矩作用在连杆质心上的分量、输出为机器人的前馈力矩的第二约束关系。
具体地说,在获得输入为机器人关节的运动参数、输出为机器人关节的三维关节力和三维的关节力矩作用在连杆质心上的分量的约束关系后,需要确定第二约束关系,具体包括:
按照公式g:
公式h:
以及公式k:确定第二约束关系;
其中,公式g、h、k中,表示坐标系i相对于坐标系i+1的旋转矩阵,F表示三维关节力,N表示三维的关节力矩作用在连杆质心上的分量,f表示关节驱动力,n表示三维的关节力矩,PC表示质心位置,P表示关节位置,τ表示前馈力矩,Z表示轴线方向的单位方向矢量,其中,坐标系i表示以关节i为原点的三维坐标,坐标系i+1表示以关节i+1为原点的三维坐标。并且,坐标系i的x轴、y轴和z轴的方向可以根据需要设置,仅需保证两两垂直即可。
步骤303:根据第一约束关系和第二约束关系确定第二动力学模型,其中,第二动力学模型的参数未知。
具体地说,在获得第一约束关系和第二约束关系后,可以根据第一约束关系和第二约束关系确定关节的运动参数和前馈力矩之间的关系,并根据关节的运动参数和前馈力矩之间的关系确定第二动力学模型。
需要说明的是,因为在建立第二动力学模型的过程中,并没有通过其他方式获得第二动力学模型中表征机器人的前馈力矩和运动参数关系的参数,所以第二动力学模型中的表征机器人的前馈力矩和运动参数关系的参数是未知的。
步骤304:对机器人关节的运动参数以及关节力矩进行采样,将采样得到的关节力矩作为前馈力矩,根据机器人关节的运动参数和前馈力矩确定第二动力学模型的未知参数的取值,将参数已知的第二动力学模型作为第一动力学模型。
具体地说,在获得参数未知的第二动力学模型后,需要通过计算得到参数的取值,从而建立输入为关节的运动参数、输出为前馈力矩的第一动力学模型。
具体地说,在确定未知参数的取值前,先确定第二动力学模型的最小参数集,其中,最小参数集为
{Ixx-Iyy,Ixy,Ixz,Iyz,Izz,mrx,mry}
其中,Ixx表示转动惯量在x轴的分量,Iyy表示转动惯量在y轴的分量,Izz表示转动惯量在z轴的分量,Ixy表示转动惯量在x轴与y轴构成的平面上的分量,Iyz表示转动惯量在y轴与z轴构成的平面上的分量,Ixz表示转动惯量在x轴与z轴构成的平面上的分量;x轴、y轴、z轴为机器人的坐标系i的坐标轴;i表示机器人的关节的编号,坐标系i为以机器人的关节i为原点的三维坐标系。
根据关节的运动参数和关节力矩并不能估计出所有连杆的惯性参数,这是因为有些惯性参数并不能影响机器人的动力学特性,因此得到一组独立的可辨识的惯性参数在参数辨识中非常重要,这样的一组惯性参数称为最小参数集,它确定了机器人的动力学特性。所以,实际应用中,只需要获得最小参数集中参数的取值就可以确定机器人的动力学特性,从而确定第一动力学模型。从第二动力学模型中的未知参数中选择可辨识的惯性参数作为最小参数集的参数,且仅对最小参数集中的未知参数进行求解,简化了对第二动力学模型中的未知参数的求解过程。
具体地说,在确定最小参数集后,机器人按照激励轨迹运动,对运动中的机器人的关节角度、关节角速度、关节角加速度和关节力矩进行M次采样,其中,M为正整数,将采样得到的关节角速度、关节角加速度、关节角度代入第二动力学模型,并将采样得到的关节力矩作为前馈力矩,代入第二动力学模型,计算得到最小参数集中各参数的取值。具体方法为,将关节角速度、关节角加速度以及前馈力矩代入第二动力学模型,采用最小二乘法得到第二动力学模型中未知参数的解。
本实施方式中,激励轨迹可以采用傅里叶级数形式的激励轨迹,实际应用中也可以选择其他形式的激励轨迹。
其中,傅里叶级数形式的激励轨迹表达式l:
其中,ωf是激励轨迹的基频,傅里叶级数是周期为2π/ωf的周期函数。每个关节的轨迹规划参数共2M+1个。
具体地说,控制机器人按照激励轨迹运动,具体包括:控制机器人以小于第一预设阈值的速度按照激励轨迹运动,判断是否发生碰撞;若判定为发生碰撞,更新激励轨迹,转至控制机器人以小于第一预设阈值的速度按照激励轨迹运动;若判定为不发生碰撞,控制机器人以大于第一预设阈值的速度按照激励轨迹运动。
需要说明的是,该激励轨迹是为了可以获得机器人的运动参数而预先设置的,期望机器人按照该轨迹运行,本领域技术人员可以理解,该激励轨迹可以是操作机器人的运行人员设置的直线或任意曲线,也可以是机器人自行生成的任意直线或曲线,本实施方式不对激励轨迹的获得方式进行限制。
需要说明的是,本领域技术人员可以理解,在实际应用中,可以根据实际运行环境设置第一预设阈值。例如,若周围障碍物多,则第一预设阈值为1m/s;若周围障碍物少,则第一预设阈值为3m/s。
值得一提的是,在机器人快速运行前,先让机器人进行慢速运行,检测机器人按激励轨迹运行时是否会发生碰撞。因为机器人的运行速度较慢,所以如果会发生碰撞,碰撞时机器人的动能也更小,对机器人或与机器人发生碰撞的物体造成的冲击力更小。所以,对机器人或与机器人发生碰撞的物体造成的破坏力更小。所以,在快速运行前先慢速运行可以避免机器人与墙体等物体碰撞导致机器人或与机器人发生碰撞的物体的损坏。
具体地说,确定第二动力学模型的未知参数的取值之后,将参数已知的第二动力学模型作为第一动力学模型之前,控制方法还包括:控制机器人按照验证轨迹运动,在运动过程中采样获得机器人的关节力矩,以及将验证轨迹中采样时刻对应的运动参数输入到参数已知的第二动力学模型中,输出机器人的前馈力矩,根据前馈力矩计算机器人的关节力矩;确定采样得到的机器人的关节力矩与计算得到的机器人的关节力矩的差值小于第二预设阈值。
需要说明的是,该验证轨迹是为了验证动力学模型是否正确而预先设置的,期望机器人按照该轨迹运行,本领域技术人员可以理解,该验证轨迹可以是操作机器人的运行人员设置的直线或任意曲线,也可以是机器人自行生成的任意直线或曲线,本实施方式不对激励轨迹的获得方式进行限定。
值得一提的是,在确定未知参数的取值后,将取值代入第二动力学模型,并对参数已知的第二动力学模型进行验证,可以确定动力学模型的准确度在目标范围内,从而使得机器人在正常运行中获得的前馈力矩的准确度更有保证。
需要说明的是,本领域技术人员可以理解,在实际应用中,第二预设阈值根据对机器人的第一动力学模型的准确度的要求设置即可,第二预设阈值越小,第一动力学模型的准确度越高。第二预设阈值的具体取值在此不做限定。
步骤305:将参数已知的第二动力学模型作为第一动力学模型。
与现有技术相比,本实施方式涉及的控制方法,加入了前馈控制。,机器人在上电瞬间或运动过程中,会获得参考的运动参数,通过将参考的运动参数代入第一动力学模型中,就可以计算关节的前馈力矩,并根据关节的前馈力矩确定机器人的关节当前的关节力矩,按照关节当前的关节力矩控制机器人运动。通过引入前馈控制,使得机器人不需要等到实际运动偏差就可以开始进行调整,减轻了机器人在上电瞬间或运动过程中出现的抖动问题,提高了机器人的控制精度。并且,本实施方式中的第一动力学模型是通过模型辨识方法建立的,由于通过模型辨识方法建立第一动力学模型的过程是机器人自身根据采样得到的数据计算得到第一动力学模型的过程,所以机器人获得的模型更为准确。并且,在确定第二动力学模型的未知参数的取值时,从第二动力学模型中的未知参数中选择可辨识的惯性参数作为最小参数集的参数,且仅对最小参数集中的未知参数进行求解,简化了对第二动力学模型中的未知参数的求解过程。
本发明第四实施方式涉及一种控制方法,本实施方式对第二实施方式的步骤201做了进一步细化,具体说明了步骤201。如图10所示,步骤201具体包括:
步骤401:确定输入为机器人关节的运动参数、输出为机器人关节的三维关节力和三维的关节力矩作用在连杆质心上的分量的第一约束关系。
具体地说,在通过模型辨识方法建立第一动力学模型时,需要先确定输入为机器人关节的运动参数、输出为机器人关节的三维关节力和三维的关节力矩作用在连杆质心上的分量的第一约束关系,具体包括:
按照公式a:迭代计算机器人从连杆1到连杆p各自的连杆角速度;
按照公式b:迭代计算机器人从连杆1到连杆p各自的连杆角加速度;
按照公式c:计算机器人连杆1到连杆p所对应的各关节的加速度;
按照公式d:计算机器人连杆1到连杆p各自的连杆质心的加速度;
按照公式e:计算机器人各关节的三维关节力;
按照公式f:计算机器人各关节的三维的关节力矩作用在连杆质心上的分量;
根据公式a至公式f,确定第一约束关系;
其中,公式a至公式f中,i表示机器人的关节的编号,表示坐标系i+1相对于坐标系i的旋转矩阵,ω表示连杆角速度,表示连杆的角加速度,表示关节的加速度,表示连杆质心的加速度,Z表示轴线方向的单位方向矢量,表示关节角速度,表示关节角加速度,PC表示质心位置,P表示关节位置,m表示关节质量,F表示三维关节力,N表示三维的关节力矩作用在连杆质心上的分量,I表示关节惯量矩阵。
步骤402:确定输入为机器人关节的三维关节力及三维的关节力矩作用在连杆质心上的分量、输出为机器人的前馈力矩的第二约束关系。
具体地说,在获得输入为机器人关节的运动参数、输出为机器人关节的三维关节力和三维的关节力矩作用在连杆质心上的分量的约束关系后,需要确定第二约束关系,具体包括:
按照公式g:
公式h:
以及公式k:确定第二约束关系;
其中,公式g、h、k中,表示坐标系i相对于坐标系i+1的旋转矩阵,F表示三维关节力,N表示三维的关节力矩作用在连杆质心上的分量,f表示关节驱动力,n表示三维的关节力矩,PC表示质心位置,P表示关节位置,τ表示前馈力矩,Z表示轴线方向的单位方向矢量,其中,坐标系i表示以关节i为原点的三维坐标,坐标系i+1表示以关节i+1为原点的三维坐标。其中,坐标系的x轴、y轴和z轴的方向可以根据需要设置,仅需保证两两垂直即可。
步骤403:根据第一约束关系和第二约束关系确定第三动力学模型。其中,第三动力学模型的参数未知。
具体地说,在获得第一约束关系和第二约束关系后,可以根据第一约束关系和第二约束关系确定关节的运动参数和前馈力矩之间的关系,并根据关节的运动参数和前馈力矩之间的关系确定第三动力学模型。
需要说明的是,因为在按照建立第三动力学模型的过程中,并没有通过其他方式获得第三动力学模型中表征机器人的前馈力矩和运动参数关系的参数,所以第三动力学模型中的表征机器人的前馈力矩和运动参数关系的参数是未知的。
步骤404:建立机器人的摩擦力模型。其中,摩擦力模型中含有摩擦力参数。
具体地说,确认第三动力学模型后,按照公式n:建立机器人的摩擦力模型。其中,τf表示关节摩擦力矩,fc表示库仑摩擦力参数,fv表示粘性摩擦参数,表示关节角速度。
步骤405:将第三动力学模型和摩擦力模型相加,得到第二动力学模型。
值得一提的是,因为第二动力学模型中包含有摩擦力模型,所以第二动力学模型中综合考虑了摩擦力因素。非真空情况下,所有物体运动时都会受到摩擦力,本实施方式中,将摩擦力考虑进机器人的动力学模型中,使得机器人可以得到一个更接近于实际的动力学模型,提高了模型的精度。
步骤406:对机器人关节的运动参数以及关节力矩进行采样,将采样得到的关节力矩作为前馈力矩,根据机器人关节的运动参数和前馈力矩确定第二动力学模型的未知参数的取值,将参数已知的第二动力学模型作为第一动力学模型。
具体地说,在获得参数未知的第二动力学模型后,需要通过计算得到参数的取值,从而建立一个输入为关节的运动参数、输出为前馈力矩的第一动力学模型。
具体地说,在确定未知参数的取值前,先确定第二动力学模型的最小参数集;其中,最小参数集为
{Ixx-Iyy,Ixy,Ixz,Iyz,Izz,mrx,mry,fc,fv}
其中,Ixx表示转动惯量在x轴的分量,Iyy表示转动惯量在y轴的分量,Izz表示转动惯量在z轴的分量,Ixy表示转动惯量在x轴与y轴构成的平面上的分量,Iyz表示转动惯量在y轴与z轴构成的平面上的分量,Ixz表示转动惯量在x轴与z轴构成的平面上的分量;x轴、y轴、z轴为机器人的坐标系i的坐标轴;i表示机器人的关节的编号,坐标系i为以机器人的关节i为原点的三维坐标系;fc为库仑摩擦力参数,fv为粘性摩擦参数。
根据关节的运动参数和关节力矩并不能估计出所有连杆的惯性参数,这是因为有些惯性参数并不能影响机器人的动力学特性,因此得到一组独立的可辨识的惯性参数在参数辨识中非常重要。另外,摩擦力参数也是摩擦力模型中必须知道取值的参数。将这样的一组惯性参数和摩擦力参数组成的参数集称为最小参数集,它确定了机器人的动力学特性。所以,实际应用中,只需要获得最小参数集中参数的取值就可以确定机器人的动力学特性,从而确定第一动力学模型。从第二动力学模型中的未知参数中选择可辨识的惯性参数作为最小参数集的参数,且仅对最小参数集中的未知参数进行求解,简化了对第二动力学模型中的未知参数的求解过程。
具体地说,在确定最小参数集后,机器人按照激励轨迹运动,对运动中的机器人的关节角度、关节角速度、关节角加速度和关节力矩进行M次采样,其中,M为正整数,将采样得到的关节角速度、关节角加速度和关节角度代入第二动力学模型,并将采样得到的关节力矩作为前馈力矩,代入第二动力学模型,计算得到最小参数集中各参数的取值。具体方法为,将关节角速度、关节角加速度以及前馈力矩代入第二动力学模型,采用最小二乘法得到第二动力学模型中未知参数的解,其中这个第二动力学模型的未知参数的解中是包含摩擦力因素的。
需要说明的是,本实施方式采用傅里叶级数形式的激励轨迹,实际应用中,也可以采用其他形式的激励轨迹。激励轨迹的傅里叶技术形式如公式o:
其中,ωf是激励轨迹的基频,傅里叶级数是周期为2π/ωf的周期函数。每个关节的轨迹规划参数共2M+1个。
具体地说,控制机器人按照激励轨迹运动,具体包括:控制机器人以小于第一预设阈值的速度按照激励轨迹运动,判断是否发生碰撞;若判定为发生碰撞,更新激励轨迹,转至控制机器人以小于第一预设阈值的速度按照激励轨迹运动;若判定为不发生碰撞,控制机器人以大于第一预设阈值的速度按照激励轨迹运动。
需要说明的是,该激励轨迹是为了可以获得机器人的运动参数而预先设置的,期望机器人按照该轨迹运行,本领域技术人员可以理解,该激励轨迹可以是操作机器人的运行人员设置的直线或任意曲线,也可以是机器人自行生成的任意直线或曲线,本实施方式不对激励轨迹的获得方式进行限定。
需要说明的是,本领域技术人员可以理解,在实际应用中,可以根据实际运行环境设置第一预设阈值。例如,若周围障碍物多,则第一预设阈值为1m/s;若周围障碍物少,则第一预设阈值为3m/s。
值得一提的是,在机器人快速运行前,先让机器人进行慢速运行,检测机器人按激励轨迹运行时是否会发生碰撞。因为机器人的运行速度较慢,所以如果会发生碰撞,碰撞时机器人的动能也更小,对机器人或与机器人发生碰撞的物体造成的冲击力更小。所以,对机器人或与机器人发生碰撞的物体造成的破坏力更小。所以,在快速运行前先慢速运行可以避免机器人与墙体等物体碰撞导致机器人或与机器人发生碰撞的物体的损坏。
具体地说,确定第二动力学模型的未知参数的取值之后,将参数已知的第二动力学模型作为第一动力学模型之前,控制方法还包括:控制机器人按照验证轨迹运动,在运动过程中采样获得机器人的关节力矩,以及将验证轨迹中采样时刻对应的运动参数输入到参数已知的第二动力学模型中,输出机器人的前馈力矩,根据前馈力矩计算机器人的关节力矩;确定采样得到的机器人的关节力矩与计算得到的机器人的关节力矩的差值小于第二预设阈值。
需要说明的是,该验证轨迹是为了验证动力学模型是否正确而预先设置的,期望机器人按照该轨迹运行,本领域技术人员可以理解,该运行轨迹可以是操作机器人的运行人员设置的直线或任意曲线,也可以是机器人自行生成的任意直线或曲线,本实施方式不对验证轨迹的获得方式进行限定。
值得一提的是,在确定未知参数的取值后,将取值代入第二动力学模型,并对参数已知的第二动力学模型进行验证,可以确定动力学模型的准确度在目标范围内,从而使得机器人在正常运行中获得的前馈力矩的准确度更有保证。
需要说明的是,本领域技术人员可以理解,在实际应用中,第二预设阈值根据对机器人的第一动力学模型的准确度的要求设置即可,第二预设阈值越小,第一动力学模型的准确度越高。第二预设阈值的具体取值在此不做限定。
步骤407:将参数已知的第二动力学模型作为第一动力学模型。
与现有技术相比,本实施方式涉及的控制方法,综合考虑了机器人运行过程中受到的摩擦力,建立了含摩擦力模型的第一动力学模型,并根据该模型确定前馈力矩,使得前馈力矩值更为准确。机器人在上电瞬间或运动过程中,会获得参考的运动参数,通过将参考的运动参数代入第一动力学模型中,就可以计算关节的前馈力矩,并根据关节的前馈力矩确定机器人的关节当前的关节力矩,按照关节当前的关节力矩控制机器人运动。通过引入前馈控制,使得机器人不需要等到实际运动偏差就可以进行调整,减轻了机器人在上电瞬间或运动过程中出现的抖动问题,提高了机器人的控制精度。并且,本实施方式中的第一动力学模型是通过模型辨识方法建立的,由于通过模型辨识方法建立第一动力学模型的过程是机器人自身根据采样得到的数据计算得到第一动力学模型的过程,所以机器人获得的模型更为准确。并且,在确定第二动力学模型的未知参数的取值时,从第二动力学模型中的未知参数中选择可辨识的惯性参数作为最小参数集的参数,且仅对最小参数集中的未知参数进行求解,简化了对第二动力学模型中的未知参数的求解过程。
本发明第五实施方式涉及一种机器人,如图11所示,包括至少一个处理器501;以及,与至少一个处理器通信连接的存储器502;其中,存储器502存储有可被至少一个处理器501执行的指令,指令被至少一个处理器501执行,以使至少一个处理器501能够执行任意方法实施方式涉及的控制方法。
需要说明的是,存储器和处理器采用总线方式连接,总线可以包括任意数量的互联的总线和桥,总线将一个或多个处理器和存储器的各种电路链接在一起。总线还可以将诸如外围设备和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。
存储器502作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块,如本申请实施方式中的通过模型辨识方法建立第一动力学模型的指令就存储于存储器502中。存储器502中存储有可被至少一个处理器501执行的指令,指令被至少一个处理器501执行,以使至少一个处理器501能够执行如上述实施例的控制方法。存储器502可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序等。此外,存储器502可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。处理器501通过运行存储在存储器502中的非易失性软件程序、指令以及模块,从而执行设备的各种功能应用以及数据处理,即实现上述控制方法。
一个或者多个模块存储在存储器502中,当被一个或者多个处理器501执行时,执行上述任意方法实施方式中的控制方法。
上述机器人可执行本申请实施方式所提供的方法,具备执行方法相应的功能模块和有益效果,未在本实施方式中详尽描述的技术细节,可参见本申请实施方式所提供的方法。
本领域技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域的普通技术人员可以理解,上述各实施方式是实现本发明的具体实施例,而在实际应用中,可以在形式上和细节上对其作各种改变,而不偏离本发明的精神和范围。
Claims (10)
1.一种控制方法,其特征在于,包括:
获取机器人的第一动力学模型;其中,所述第一动力学模型用于表示关节的运动参数与前馈力矩之间的关系,所述第一动力学模型的参数已知;
将关节的参考的运动参数代入所述第一动力学模型,计算得到所述关节的前馈力矩;其中,所述运动参数包括关节角度、关节角速度和关节角加速度;
根据所述关节的前馈力矩确定所述关节当前的关节力矩;
按照所述关节当前的关节力矩控制所述机器人运动。
2.根据权利要求1所述的控制方法,其特征在于,所述获取机器人的第一动力学模型之前,所述控制方法还包括:
通过模型辨识方法建立所述第一动力学模型。
3.根据权利要求2所述的控制方法,其特征在于,所述通过模型辨识方法建立所述第一动力学模型,具体包括:
确定输入为所述机器人关节的运动参数、输出为所述机器人关节的三维关节力和三维的关节力矩作用在连杆质心上的分量的第一约束关系;
确定输入为所述机器人关节的三维关节力及三维的关节力矩作用在连杆质心上的分量、输出为所述机器人的所述前馈力矩的第二约束关系;
根据所述第一约束关系和所述第二约束关系确定第二动力学模型,其中,所述第二动力学模型的参数未知;
对所述机器人关节的运动参数以及关节力矩进行采样,将采样得到的所述关节力矩作为所述前馈力矩,根据所述机器人关节的运动参数和所述前馈力矩确定所述第二动力学模型的未知参数的取值,将参数已知的第二动力学模型作为所述第一动力学模型。
4.根据权利要求3所述的控制方法,其特征在于,所述对所述机器人关节的运动参数以及关节力矩进行采样,将采样得到的所述关节力矩作为所述前馈力矩,根据所述机器人关节的运动参数和所述前馈力矩确定所述第二动力学模型的未知参数的取值,具体包括:
确定所述第二动力学模型的最小参数集;其中,所述最小参数集为
{Ixx-Iyy,Ixy,Ixz,Iyz,Izz,mrx,mry}
其中,Ixx表示转动惯量在x轴的分量,Iyy表示所述转动惯量在y轴的分量,Izz表示所述转动惯量在z轴的分量,Ixy表示所述转动惯量在x轴与y轴构成的平面上的分量,Iyz表示所述转动惯量在y轴与z轴构成的平面上的分量,Ixz表示所述转动惯量在x轴与z轴构成的平面上的分量;所述x轴、y轴、z轴为机器人的坐标系i的坐标轴;i表示所述机器人的关节的编号,所述坐标系i为以所述机器人的关节i为原点的三维坐标系;
控制所述机器人按照激励轨迹运动,对运动中的所述机器人的关节角度、关节角速度、关节角加速度和关节力矩进行M次采样,其中,M为正整数;
将所述关节角度、所述关节角速度和所述关节角加速度代入所述第二动力学模型,并将采样得到的所述关节力矩作为所述前馈力矩,代入所述第二动力学模型,计算得到所述最小参数集中各参数的取值。
5.根据权利要求2所述的控制方法,其特征在于,所述通过模型辨识方法建立所述第一动力学模型,具体包括:
确定输入为所述机器人关节的运动参数、输出为所述机器人关节的三维关节力和三维的关节力矩作用在连杆质心上的分量的第一约束关系;
确定输入为所述机器人关节的三维关节力及三维的关节力矩作用在连杆质心上的分量、输出为所述机器人的所述前馈力矩的第二约束关系;
根据所述第一约束关系和所述第二约束关系确定第三动力学模型,其中,所述第三动力学模型的参数未知;
建立所述机器人的摩擦力模型;其中,所述摩擦力模型中含有摩擦力参数;
将所述第三动力学模型和所述摩擦力模型相加,得到第二动力学模型;
对所述机器人关节的运动参数以及关节力矩进行采样,将采样得到的所述关节力矩作为所述前馈力矩,根据所述机器人关节的运动参数和所述前馈力矩确定所述第二动力学模型的未知参数的取值,将参数已知的第二动力学模型作为所述第一动力学模型。
6.根据权利要求5所述的控制方法,其特征在于,所述对所述机器人关节的运动参数以及关节力矩进行采样,将采样得到的所述关节力矩作为所述前馈力矩,根据所述机器人关节的运动参数和所述前馈力矩确定所述第二动力学模型的未知参数的取值,具体包括:
确定所述第二动力学模型的最小参数集;其中,所述最小参数集为
{Ixx-Iyy,Ixy,Ixz,Iyz,Izz,mrx,mry,fc,fv}
其中,Ixx表示转动惯量在x轴的分量,Iyy表示所述转动惯量在y轴的分量,Izz表示所述转动惯量在z轴的分量,Ixy表示所述转动惯量在x轴与y轴构成的平面上的分量,Iyz表示所述转动惯量在y轴与z轴构成的平面上的分量,Ixz表示所述转动惯量在x轴与z轴构成的平面上的分量;所述x轴、y轴、z轴为机器人的坐标系i的坐标轴;i表示所述机器人的关节的编号,所述坐标系i为以所述机器人的关节i为原点的三维坐标系;fc为库仑摩擦力参数,fv为粘性摩擦参数;
控制所述机器人按照激励轨迹运动,对运动中的所述机器人的关节角度、关节角速度、关节角加速度和关节力矩进行M次采样,其中,M为正整数;
将所述关节角度、所述关节角速度和所述关节角加速度代入所述第二动力学模型,将所述关节力矩作为所述前馈力矩,代入所述第二动力学模型,计算得到所述最小参数集中各参数的取值。
7.根据权利要求3或5所述的控制方法,其特征在于,所述确定输入为所述机器人关节的运动参数、输出为所述机器人关节的三维关节力和三维的关节力矩作用在连杆质心上的分量的第一约束关系,具体包括:
按照公式a:迭代计算所述机器人从连杆1到连杆p各自的连杆角速度;其中所述机器人的连杆的个数为p;
按照公式b:迭代计算所述机器人从连杆1到连杆p各自的连杆角加速度;
按照公式c:计算所述机器人连杆1到连杆p所对应的各关节的加速度;
按照公式d:计算所述机器人连杆1到连杆p各自的连杆质心的加速度;
按照公式e:计算所述机器人各关节的三维关节力;
按照公式f:计算所述机器人各关节的三维的关节力矩作用在连杆质心上的分量;
根据公式a至公式f,确定所述第一约束关系;
其中,公式a至公式f中,i表示所述机器人的关节的编号,表示坐标系i+1相对于坐标系i的旋转矩阵,ω表示连杆角速度,表示连杆的角加速度,表示关节的加速度,表示连杆质心的加速度,Z表示轴线方向的单位方向矢量,表示关节角速度,表示关节角加速度,PC表示质心位置,P表示关节位置,m表示关节质量,F表示三维关节力,N表示三维的关节力矩作用在连杆质心上的分量,I是关节惯量矩阵;
所述确定输入为所述机器人关节的三维关节力及三维的关节力矩作用在连杆质心上的分量、输出为所述机器人的所述前馈力矩的第二约束关系,具体包括:
按照公式g:
公式h:
以及公式k:确定所述第二约束关系;
其中,公式g、h、k中,表示坐标系i相对于坐标系i+1的旋转矩阵,F表示三维关节力,N表示三维的关节力矩作用在连杆质心上的分量,f表示关节驱动力,n表示三维的关节力矩,PC表示质心位置,P表示关节位置,τ表示前馈力矩,Z表示轴线方向的单位方向矢量,其中,所述坐标系i表示以所述关节i为原点的三维坐标系,所述坐标系i+1表示以所述关节i+1为原点的三维坐标系。
8.根据权利要求4或6所述的控制方法,其特征在于,所述控制所述机器人按照激励轨迹运动,具体包括:
控制所述机器人以小于第一预设阈值的速度按照所述激励轨迹运动,判断是否发生碰撞;
若判定为发生碰撞,更新所述激励轨迹,转至控制所述机器人以小于所述第一预设阈值的速度按照所述激励轨迹运动;
若判定为不发生碰撞,控制所述机器人以大于所述第一预设阈值的速度按照所述激励轨迹运动。
9.根据权利要求3或5所述的控制方法,其特征在于,所述确定所述第二动力学模型的未知参数的取值之后,将参数已知的所述第二动力学模型作为所述第一动力学模型之前,所述控制方法还包括:
控制所述机器人按照验证轨迹运动,在运动过程中采样获得所述机器人的关节力矩,以及将所述验证轨迹中采样时刻对应的运动参数输入到参数已知的所述第二动力学模型中,输出所述机器人的前馈力矩,根据所述前馈力矩计算所述机器人的关节力矩;
确定采样得到的所述机器人的关节力矩与计算得到的所述机器人的关节力矩的差值小于第二预设阈值。
10.一种机器人,其特征在于,包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如权利要求1-9任一所述的控制方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710858439.1A CN107662209A (zh) | 2017-09-21 | 2017-09-21 | 一种控制方法及机器人 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710858439.1A CN107662209A (zh) | 2017-09-21 | 2017-09-21 | 一种控制方法及机器人 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107662209A true CN107662209A (zh) | 2018-02-06 |
Family
ID=61097087
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710858439.1A Pending CN107662209A (zh) | 2017-09-21 | 2017-09-21 | 一种控制方法及机器人 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107662209A (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108638072A (zh) * | 2018-05-25 | 2018-10-12 | 珞石(山东)智能科技有限公司 | 用于工业机器人的高精度控制装置及方法 |
CN108908332A (zh) * | 2018-07-13 | 2018-11-30 | 哈尔滨工业大学(深圳) | 超冗余柔性机器人的控制方法及系统、计算机存储介质 |
CN109159120A (zh) * | 2018-09-10 | 2019-01-08 | 南京邮电大学 | 基于康复机械臂关节电机电流反馈的主动控制方法及系统 |
CN109591023A (zh) * | 2018-12-30 | 2019-04-09 | 深圳市优必选科技有限公司 | 串联机器人的迭代计算方法及串联机器人 |
CN109634100A (zh) * | 2018-12-30 | 2019-04-16 | 深圳市优必选科技有限公司 | 仿人机器人行走加速度补偿方法、装置及仿人机器人 |
CN110861090A (zh) * | 2019-12-03 | 2020-03-06 | 泉州华中科技大学智能制造研究院 | 一种力矩前馈控制系统及方法 |
CN113103211A (zh) * | 2021-02-09 | 2021-07-13 | 清华大学 | 并联加工机器人前馈控制方法及装置 |
WO2022028027A1 (zh) * | 2020-08-07 | 2022-02-10 | 珠海格力智能装备有限公司 | 机器人的控制方法、装置、计算机可读存储介质和处理器 |
CN114193453A (zh) * | 2021-12-30 | 2022-03-18 | 浙江博采传媒有限公司 | 利用机械臂还原摄影机轨迹的方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101192062A (zh) * | 2006-11-30 | 2008-06-04 | Abb研究有限公司 | 用于监测工业机器人的状况的方法和装置 |
CN201559195U (zh) * | 2009-12-11 | 2010-08-25 | Abb技术有限公司 | 机器人 |
JP2010253608A (ja) * | 2009-04-24 | 2010-11-11 | Toyota Motor Corp | 脚式ロボット及びその制御方法 |
CN106313044A (zh) * | 2016-09-20 | 2017-01-11 | 华南理工大学 | 一种工业机器人前馈力矩补偿方法 |
CN106346477A (zh) * | 2016-11-05 | 2017-01-25 | 上海新时达电气股份有限公司 | 六轴机器人的负载辨识方法及模块 |
-
2017
- 2017-09-21 CN CN201710858439.1A patent/CN107662209A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101192062A (zh) * | 2006-11-30 | 2008-06-04 | Abb研究有限公司 | 用于监测工业机器人的状况的方法和装置 |
JP2010253608A (ja) * | 2009-04-24 | 2010-11-11 | Toyota Motor Corp | 脚式ロボット及びその制御方法 |
CN201559195U (zh) * | 2009-12-11 | 2010-08-25 | Abb技术有限公司 | 机器人 |
CN106313044A (zh) * | 2016-09-20 | 2017-01-11 | 华南理工大学 | 一种工业机器人前馈力矩补偿方法 |
CN106346477A (zh) * | 2016-11-05 | 2017-01-25 | 上海新时达电气股份有限公司 | 六轴机器人的负载辨识方法及模块 |
Non-Patent Citations (2)
Title |
---|
孙小肖: "轻量化采样机械臂关节控制及轨迹规划研究", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
耿令波: "工业机器人动力学参数辨识方法研究", 《中国优秀硕士学位论文全文数据库 信息科技》 * |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108638072A (zh) * | 2018-05-25 | 2018-10-12 | 珞石(山东)智能科技有限公司 | 用于工业机器人的高精度控制装置及方法 |
CN108638072B (zh) * | 2018-05-25 | 2021-07-30 | 珞石(山东)智能科技有限公司 | 用于工业机器人的高精度控制装置及方法 |
CN108908332B (zh) * | 2018-07-13 | 2021-07-30 | 哈尔滨工业大学(深圳) | 超冗余柔性机器人的控制方法及系统、计算机存储介质 |
CN108908332A (zh) * | 2018-07-13 | 2018-11-30 | 哈尔滨工业大学(深圳) | 超冗余柔性机器人的控制方法及系统、计算机存储介质 |
CN109159120A (zh) * | 2018-09-10 | 2019-01-08 | 南京邮电大学 | 基于康复机械臂关节电机电流反馈的主动控制方法及系统 |
CN109159120B (zh) * | 2018-09-10 | 2022-07-12 | 南京邮电大学 | 基于康复机械臂关节电机电流反馈的主动控制方法及系统 |
CN109591023A (zh) * | 2018-12-30 | 2019-04-09 | 深圳市优必选科技有限公司 | 串联机器人的迭代计算方法及串联机器人 |
CN109591023B (zh) * | 2018-12-30 | 2020-09-08 | 深圳市优必选科技有限公司 | 串联机器人的迭代计算方法及串联机器人 |
CN109634100B (zh) * | 2018-12-30 | 2021-11-02 | 深圳市优必选科技有限公司 | 仿人机器人行走加速度补偿方法、装置及仿人机器人 |
CN109634100A (zh) * | 2018-12-30 | 2019-04-16 | 深圳市优必选科技有限公司 | 仿人机器人行走加速度补偿方法、装置及仿人机器人 |
CN110861090A (zh) * | 2019-12-03 | 2020-03-06 | 泉州华中科技大学智能制造研究院 | 一种力矩前馈控制系统及方法 |
WO2022028027A1 (zh) * | 2020-08-07 | 2022-02-10 | 珠海格力智能装备有限公司 | 机器人的控制方法、装置、计算机可读存储介质和处理器 |
CN113103211A (zh) * | 2021-02-09 | 2021-07-13 | 清华大学 | 并联加工机器人前馈控制方法及装置 |
CN113103211B (zh) * | 2021-02-09 | 2022-06-14 | 清华大学 | 并联加工机器人前馈控制方法及装置 |
CN114193453A (zh) * | 2021-12-30 | 2022-03-18 | 浙江博采传媒有限公司 | 利用机械臂还原摄影机轨迹的方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107662209A (zh) | 一种控制方法及机器人 | |
Wu et al. | Nonlinear energy-based regulation control of three-dimensional overhead cranes | |
Colomé et al. | External force estimation during compliant robot manipulation | |
CN105404744B (zh) | 一种空间机械臂全状态动力学半物理仿真系统 | |
Jadlovský et al. | Modelling of classical and rotary inverted pendulum systems–a generalized approach | |
CN112428278A (zh) | 机械臂的控制方法、装置及人机协同模型的训练方法 | |
Reinhart et al. | Multibody simulation of machine tools as mechatronic systems for optimization of motion dynamics in the design process | |
CN110394801A (zh) | 一种机器人的关节控制系统 | |
Zhang et al. | Practical smooth minimum time trajectory planning for path following robotic manipulators | |
CN109940619A (zh) | 一种轨迹规划方法、电子设备及存储介质 | |
CN109814496A (zh) | 一种s型加减速轨迹规划中多轴时间同步方法 | |
RU2308764C2 (ru) | Перемещение виртуального сочлененного объекта в виртуальном пространстве с предотвращением столкновений сочлененного объекта с элементами окружающего пространства | |
Hazem et al. | Comparison of friction estimation models for rotary triple inverted pendulum | |
Benabdallah et al. | Kinect-based Computed Torque Control for lynxmotion robotic arm | |
Hroncová et al. | Forward and inverse robot model kinematics and trajectory planning | |
CN106950842A (zh) | 解耦控制方法、装置、机器人及存储介质 | |
CN114800523B (zh) | 机械臂轨迹修正方法、系统、计算机及可读存储介质 | |
Linnerud et al. | CAD-based system for programming of robotic assembly processes with human-in-the-loop | |
Lämmle et al. | Process simulation using physical joining models for learning robot-based assembly tasks | |
Adar et al. | Real time visual servoing of a 6-dof robotic arm using fuzzy-pid controller | |
JPH08328627A (ja) | サーボ制御装置及びサーボ制御方法並びにこれらを用いたロボット制御装置及びロボット制御方法 | |
Łygas et al. | Kinematic design of parallel delta system in Matlab | |
Muñoz et al. | PD+ G set-point controller for the second and third joint of a ER-4u scorbot robot | |
Fratu et al. | Robots collision avoidance using learning through imitation | |
Nabil et al. | Pattern search for closed-loop parameter estimation of two wheel inverted pendulum system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180206 |
|
RJ01 | Rejection of invention patent application after publication |