CN114454180B - 移动机器人的运动控制方法、装置和移动机器人 - Google Patents
移动机器人的运动控制方法、装置和移动机器人 Download PDFInfo
- Publication number
- CN114454180B CN114454180B CN202210288408.8A CN202210288408A CN114454180B CN 114454180 B CN114454180 B CN 114454180B CN 202210288408 A CN202210288408 A CN 202210288408A CN 114454180 B CN114454180 B CN 114454180B
- Authority
- CN
- China
- Prior art keywords
- joint
- mechanical arm
- mobile robot
- speed
- motion control
- 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.)
- Active
Links
- 230000033001 locomotion Effects 0.000 title claims abstract description 117
- 238000000034 method Methods 0.000 title claims abstract description 52
- 238000005457 optimization Methods 0.000 claims abstract description 64
- 230000006870 function Effects 0.000 claims description 39
- 238000004590 computer program Methods 0.000 claims description 11
- 238000004364 calculation method Methods 0.000 claims description 10
- 239000011159 matrix material Substances 0.000 claims description 9
- 238000010276 construction Methods 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 10
- 230000001133 acceleration Effects 0.000 description 3
- 238000000926 separation method Methods 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012887 quadratic function Methods 0.000 description 1
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
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1664—Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Automation & Control Theory (AREA)
- Manipulator (AREA)
Abstract
本申请实施例提供一种移动机器人的运动控制方法、装置和移动机器人,该方法包括:获取移动机器人关节在关节空间中的运动状态;根据该运动状态通过正运动学方程计算末端在工作空间中的实际位姿,以进一步计算相应的位姿误差;还根据运动控制类型的优先级分别确定机械臂和移动底盘各自的关节速度权重,并结合位姿误差对构建的优化目标函数求解,得到满足要求的关节速度用以机器人控制。该方法通过先将移动机器人的移动底盘和机械臂进行整体建模,后在优化目标函数中区分机械臂的关节速度、移动底盘的关节速度并分别设置各自的权重,这样通过根据实际需求来动态调整两个权重,可以实现移动机器人的整体运动控制或单个结构的运动控制。
Description
技术领域
本申请涉及机器人控制技术领域,尤其涉及一种移动机器人的运动控制方法、装置和移动机器人。
背景技术
移动机器人由一个可移动平台和一个或多个机械臂组成,这一结构使得移动机器人既具有可移动平台的移动性,又具有了机械臂的可操作性。现有的移动机器人控制系统,主要还停留在分散控制的研究阶段。所谓分散控制,即将机械臂和移动底盘看作两个独立的可控单元,其往往需要进行切换控制来完成一些端到端的工作任务。然而,由于机械臂和移动底盘存在较大的耦合性,考虑到分散控制所带来的不足,难以实现大工作空间的连续轨迹任务,也有人提出一些移动机器人整体控制方法,即将机械臂和移动底盘看作一个整体来控制,实现既拥有可操作性也拥有可移动性,但是这类整体控制方法又存在着运动学冗余的问题等。
发明内容
本申请实施例提供一种移动机器人的运动控制方法、装置和移动机器人,该方法既可以解决现有的移动机器人在分离控制时的协作性不足问题,又可以解决在整体控制时存在运动冗余的问题。
第一方面,本申请实施例提供一种移动机器人的运动控制方法,所述移动机器人包括移动底盘和至少一条机械臂,所述运动控制方法包括:
获取所述移动机器人中所有关节在关节空间中的运动状态;
根据所述运动状态通过正运动学方程计算所述移动机器人的机械臂末端在工作空间中的实际位姿;
根据所述机械臂末端在工作空间中的期望位姿和所述实际位姿,计算所述机械臂末端在工作空间中的位姿误差;
根据运动控制类型的优先级分别确定所述机械臂的关节速度权重和所述移动底盘的关节速度权重,并结合所述位姿误差对优化目标函数进行计算,得到满足所述运动控制类型的优先级的一组关节速度;
利用所述关节速度对所述移动机器人的各个关节进行控制。
在一些实施例中,所述运动控制类型包括所述移动机器人的整体运动控制、所述机械臂的单独运动控制和所述移动底盘的单独运动控制;
所述根据运动控制类型的优先级分别确定所述机械臂的关节速度权重和所述移动底盘的关节速度权重,包括:
当执行所述机械臂的单独运动时,设置所述移动底盘的关节速度权重大于所述机械臂的关节速度权重且存在预设倍数的数量级差;
当执行所述移动底盘的单独运动时,设置所述机械臂的关节速度权重大于所述移动底盘的关节速度权重且存在预设倍数的数量级差;
当执行所述整体运动控制时,设置所述移动底盘的关节速度权重和所述机械臂的关节速度权重在同一数量级。
在一些实施例中,所述优化目标函数的构建过程,包括:
将由所述机械臂中各个关节速度的平方和分配的所述机械臂的关节速度权重构成的第一优化项、由所述移动底盘中各个关节速度的平方和分配的所述移动底盘的关节速度权重构成的第二优化项、以及所述机械臂末端在工作空间中的速度误差构成的第三优化项相加,得到总优化目标;
将所述总优化目标取最小值为目标,并添加相应的约束条件,构建得到与所述机械臂及所述移动底盘的关节速度有关的优化目标函数。
在一些实施例中,所述约束条件包括:
根据雅克比矩阵和所述机械臂末端在工作空间中的期望速度,构建所述移动机器人中所有关节的关节速度与所述机械臂末端在工作空间中的速度误差之间的等式约束;
根据各个关节角度的物理上限值和下限值、以及各个关节的角速度的物理上限值和下限值,构建所有关节的关节速度满足的不等式约束。
在一些实施例中,所述优化目标函数的表达式为:
式中,θ为所述移动机器人的各个关节的角度;为所述移动机器人各个关节的速度;wk为所述机械臂末端在工作空间中的速度误差W在第k个维度的分量;J为雅克比矩阵;为所述机械臂中第i个关节的速度;/>为所述移动底盘中第j个关节的速度;M和N分别为所述机械臂和所述移动底盘的关节数目;ω1和ω2分别为所述机械臂和所述移动底盘的关节速度权重;ve为所述机械臂末端在工作空间中的期望速度;T为控制指令周期;/>表示所述总优化目标。
在一些实施例中,通过对计算到的所述位姿误差进行求导得到所述机械臂末端在工作空间中的期望速度。
在一些实施例中,所述正运动学方程的计算过程,包括:
将所述移动底盘中的各个关节与所述机械臂中的各个关节等效为依次连接的串联关节,得到所述移动机器人的运动学模型,并结合D-H模型,构造出所述移动机器人的正运动学方程。
第二方面,本申请实施例还提供一种移动机器人的运动控制装置,所述移动机器人包括移动底盘和至少一条机械臂,所述运动控制装置包括:
获取模块,用于获取移动机器人中所有关节在关节空间中的运动状态;
正向求解模块,用于根据所述运动状态通过正运动学方程计算所述移动机器人的机械臂末端在工作空间中的实际位姿;
位姿误差计算模块,用于根据所述机械臂末端在工作空间中的期望位姿和所述实际位姿,计算所述机械臂末端在工作空间中的位姿误差;
优化求解模块,用于根据运动控制类型的优先级分别确定所述机械臂的关节速度权重和所述移动底盘的关节速度权重,并结合所述位姿误差对优化目标函数进行计算,得到满足所述运动控制类型的优先级的一组关节速度;
关节控制模块,用于利用所述关节速度对所述移动机器人的各个关节进行控制。
第三方面,本申请实施例还提供一种移动机器人,所述移动机器人包括处理器和存储器,所述存储器存储有计算机程序,所述处理器用于执行所述计算机程序以实施上述的移动机器人的运动控制方法。
第四方面,本申请实施例还提供一种可读存储介质,其存储有计算机程序,所述计算机程序在处理器上执行时,实施上述的移动机器人的运动控制方法。
本申请的实施例具有如下有益效果:
本申请实施例的移动机器人的运动控制方法通过获取机器人关节在关节空间中的运动状态;根据该运动状态通过正运动学方程计算机器人末端在工作空间中的实际位姿,以进一步计算出末端在工作空间中的位姿误差;还根据运动控制类型的优先级分别确定机械臂和移动底盘各自的关节速度权重,并结合位姿误差对预先构建的优化目标函数进行求解,得到满足要求的关节速度用以机器人关节控制。该方法通过先将移动机器人的移动底盘和机械臂进行整体建模,后在优化目标函数中区分机械臂的关节速度、移动底盘的关节速度并分别设置各自的权重,这样通过根据实际需求来动态调整两个权重,可以实现移动机器人的整体运动控制或单个结构的运动控制。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本申请实施例的移动机器人的一种结构示意图;
图2示出了本申请实施例的移动机器人的另一种结构示意图;
图3示出了本申请实施例的移动机器人的运动控制方法的流程示意图;
图4示出了本申请实施例的移动机器人的运动控制方法的优化目标函数的构建的流程图;
图5示出了本申请实施例的移动机器人的运动控制方法的关节速度权重分配的流程图;
图6示出了本申请实施例的移动机器人的运动控制装置的结构示意图;
图7示出了本申请实施例的移动机器人的运动控制装置中的权重调整模块的结构示意图。
具体实施方式
下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。
通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
在下文中,可在本申请的各种实施例中使用的术语“包括”、“具有”及其同源词仅意在表示特定特征、数字、步骤、操作、元件、组件或前述项的组合,并且不应被理解为首先排除一个或更多个其它特征、数字、步骤、操作、元件、组件或前述项的组合的存在或增加一个或更多个特征、数字、步骤、操作、元件、组件或前述项的组合的可能性。此外,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
除非另有限定,否则这里使用的所有术语(包括技术术语和科学术语)具有与本申请的各种实施例所属领域普通技术人员通常理解的含义相同的含义。所述术语(诸如在一般使用的词典中限定的术语)将被解释为具有与在相关技术领域中的语境含义相同的含义并且将不被解释为具有理想化的含义或过于正式的含义,除非在本申请的各种实施例中被清楚地限定。
下面结合附图,对本申请的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互结合。
请参照图1,为本申请实施例提供的移动机器人的一种结构示意图。在本实施例中,该移动机器人10包括存储器11、处理器12和感知单元13等,其中,存储器11和感知单元13均与处理器12连接,存储器11存储有相应的计算机程序,处理器12用于执行该计算机程序以实施本申请实施例中的移动机器人的运动控制方法,以解决现有技术中移动机器人在分离控制时的协作性不足问题而在整体控制时又存在运动冗余的问题。
在本申请中,存储器11可以是,但不限于,随机存取存储器(Random AccessMemory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(ProgrammableRead-Only Memory,PROM),可擦除只读存储器(Erasable Programmable Read-OnlyMemory,EPROM),电可擦除只读存储器(Electric Erasable Programmable Read-OnlyMemory,EEPROM)等。其中,存储器11用于存储计算机程序,处理器12在接收到执行指令后,可相应地执行所述计算机程序。
在本申请中,处理器12可以是一种具有信号的处理能力的集成电路芯片。处理器12可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、图形处理器(Graphics Processing Unit,GPU)及网络处理器(Network Processor,NP)、数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件中的至少一种。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。
其中,感知单元13主要指在移动机器人10身上设置的传感器,这些传感器用于将必要的外部信息以及自身状态信息传递给移动机器人的控制系统,从而为移动机器人的决策提供必要的条件。在一些情况下,这些传感器可分为内部传感器和外部传感器,其中,内部传感器用于测量机器人自身状态的功能元件,其功能是测量运动学量和力学量,用于移动机器人感知自身的运动状态,使得移动机器人可以按照期望的轨迹和速度等参数运动。例如,上述的内部传感器可包括但不限于,设于相应关节或躯干处的位置或角度传感器、六维力传感器、压力传感器等。而外部传感器主要是感知机器人自身和环境之间的相互信息,例如包括视觉等信息,具体可包括但不限于接近传感器、视觉传感器等。应当明白的是,上述列举的这些传感器可根据机器人的实际应用场景而选择性设置,并不作为对本实施例的移动机器人的感知单元的具体限定。
在本申请中,该移动机器人10包括机械臂和移动底盘两大部分,如图2所示。其中,该机械臂通常存在多个自由度(又称关节),如三自由度机械臂、六自由度机械臂等,这样可以实现一些较为复杂的操作,如在不发生碰撞的情况下到达目标位置,或者在移动夹持物体的情况下进行跟随操作等。而移动底盘用于承载机械臂并使得移动机器人能够移动。其中,移动底盘同样可以有一个或多个自由度,这里不作限定。对于移动底盘的具体形状结构,例如,可以是一个圆形的底盘,也可以是设有多个滚轮的矩形或方形结构等,这里不作限定。值得注意的是,本申请中对机械臂的数量并不作限定,例如,移动机器人10可以包括一条机械臂,也可以包括两条及两条以上的机械臂。对于存在多条机械臂的移动机器人,同样可以采用本申请实施例的运动控制方法进行某一条或某几条机械臂的局部运动控制、以及移动机器人的整体运动控制。
基于上述结构的移动机器人,本申请实施例提出一种移动机器人的运动控制方法。该运动控制方法通过先将移动机器人中的移动底盘和机械臂看作一个整体进行运动学建模,然后在求解关节速度的优化目标函数中区分为机械臂的关节速度、移动底盘的关节速度这两部分,并分别配置有对应的权重。在实际运用过程中,可以根据实际的任务对配置的权重进行动态调整,以使得移动机器人既可以实现各自的运动,也可以共同实现一些协作任务,如无限空间连续轨迹跟踪运动等。下面结合包含一条具有六个关节的机械臂和具有两个关节的移动底盘的移动机器人,对本申请实施例的运动控制方法进行具体阐述。
请参照图3,本实施例提出的移动机器人的运动控制方法的流程图。示范性地,该运动控制方法包括步骤S110~S150:
S110,获取移动机器人中所有关节在关节空间中的运动状态。
其中,该关节的运动状态可包括关节的角度或位置、速度和加速度等中的一种或多种组合。本实施例中,移动机器人的各个关节处均设置相应的传感器,如位置或角度编码器等,以用于实时测量对应关节的角度或位置。可以理解,对于平动关节,其测量得到的是关节位置,对于转动关节,其测量得到的是关节角度。进而,在测量得到关节角度或关节位置后,通过对该关节的角度或位置进行一次求导,则可以得到该关节的速度,若对关节的角度或位置进行二次求导,则可以得到该关节的加速度。
在控制过程中,示范性地,移动机器人将通过各个关节处的传感器实时采集这些关节的位置或角度,并可根据实际计算需要进一步计算出对应的关节速度和/或加速度等。
值得注意的是,为了方便对移动机器人进行运动学分析,本实施例中将移动机器人的移动底盘和机械臂视为一个整体,具体地,将机械臂的六个关节和移动底盘的两个关节视为依次连接的八个串联关节,然后根据这八个串联的关节及相应连杆的相应参数,按照D-H模型建模原则,即可构建出该移动机器人的运动学模型。由于这里将包含机械臂和移动底盘在内的所有关节视为一个串联的整体,故此时构建出的运动学模型又称为整体运动学模型。进而,利用该移动机器人的运动学模型,可分别求解得到该移动机器人的正向运动学方程和雅克比矩阵。其中,正向运动学是指在已知机器人各个关节的角度求解机械臂末端的位姿,雅克比矩阵用于反映机器人的关节速度与末端速度之间的映射关系。
S120,根据运动状态通过正运动学方程计算移动机器人的机械臂末端在工作空间中的实际位姿。其中,上述的工作空间也称为笛卡尔空间。
S130,根据机械臂末端在工作空间中的期望位姿和实际位姿,计算机械臂末端在工作空间中的位姿误差。
示范性地,在得到各个关节的角度后,可按照正向运动学原理计算出该移动机器人的机械臂末端的实际位姿。其中,该机械臂末端的位姿包括末端在笛卡尔空间中的位置以及姿态,通常可用一个六维向量表示,即包括末端在笛卡尔空间中的三维坐标以及三个欧拉角。
为了使得机器人能够达到期望的效果,本实施例将设置一个位置外环,以保证对笛卡尔空间中任务的执行精度。通常地,可根据待执行的任务预先对机器人进行末端轨迹规划,以得到机械臂末端在笛卡尔空间中的期望位姿。于是,在计算出末端的实际位姿后,则可以结合期望位姿,进一步计算出末端在运动控制过程中存在的位姿误差。
S140,根据运动控制类型的优先级分别确定机械臂的关节速度权重和移动底盘的关节速度权重,并结合位姿误差对构建的优化目标函数进行计算,得到满足运动控制类型的优先级的一组关节速度。
为了尽量减小末端存在的位姿误差,使得机械臂末端尽量按照期望的规划进行运动,本实施例将结合二次规划进行关节速度的最优求解,以保证计算得到的关节速度可以上述需求。其中,上述的优化目标函数即为构建的用于求解机器人的最优关节速度的二次型函数。
可以理解,机器人的运动学模型是将移动底盘和机械臂视为整体来进行模型构建的,而在构建优化目标函数时,这里将区分移动底盘和机械臂两部分各自的关节速度,具体而言,将为移动底盘和机械臂分别分配不同的关节速度权重,以此通过调整权重的大小来调整移动底盘和机械臂这两部分在任务执行时的优先级,从而实现移动机器人可以在不同的场景下实现不同的运动控制。
在一种实施方式中,如图4所示,该优化目标函数的构建过程,包括:
S210,将由机械臂中各个关节速度的平方和分配的机械臂的关节速度权重构成的第一优化项、由移动底盘中各个关节速度的平方和分配的移动底盘的关节速度权重构成的第二优化项、以及机械臂末端在工作空间中的速度误差构成的第三优化项相加,得到总优化目标。
S220,将对该总优化目标取最小值为目标,并添加相应的约束条件,构建得到与机械臂及移动底盘的关节速度有关的优化目标函数。
于是,上述的优化目标函数的表达式如下:
式中,表示总优化目标,/>为移动机器人各个关节的速度;/>为机械臂中第i个关节的速度;/>为移动底盘中第j个关节的速度;M和N分别为机械臂和移动底盘的关节数目。例如,当机械臂和移动底盘的关节数目分别为6和2时,则M=6,N=2。ω1和ω2分别为机械臂和移动底盘的关节速度权重。wk为机械臂末端在工作空间中的速度误差W在第k个维度的分量,其中,机械臂末端在工作空间中的速度误差W包括三维线速度误差和三维角速度误差,即存在6个速度误差分量。
可以理解,在构建优化目标函数时,通过区分机械臂和移动底盘的关节速度并分配各自的优化权重,这样可以使得当权重设置不同时,优化目标函数会对相应部位的优化项有所偏重,导致求解得到的不同关节的速度也会有所不同,从而能够满足所需的整体运动控制或单个部位的运动控制。此外,该优化目标函数将机械臂和移动底盘的关节速度作为优化变量,将速度误差作为松弛变量,可以保证在函数没有最优解的情况下,可以求解出一组较优解来作为所需的关节速度。
在一种实施方式中,上述添加的约束条件主要包括等式约束和不等式约束,例如,可根据雅克比矩阵和机械臂末端在工作空间中的期望速度,构建移动机器人中所有关节的关节速度与机械臂末端在工作空间中的速度误差之间的等式约束。具体地,该等式约束可以表示为:
其中,J为雅克比矩阵;W为机械臂末端在工作空间中的速度误差,由上述的六个速度分量构成;ve为机械臂末端在工作空间中的期望速度。其中,可以通过对上述步骤S130计算到的位姿误差对时间进行求导,得到该机械臂末端在工作空间中的期望速度ve。
此外,考虑到各个关节轴是由电机驱动的,存在部分位置或角度不可达的问题,这里还将考虑各个关节角度及各个关节速度的物理限定,因此,求解出的各个关节速度还应当满足相应的物理约束。具体地,可根据各个关节角度的物理上限值和下限值、以及各个关节的角速度的物理上限值和下限值,构建所有关节的关节速度满足的不等式约束。
于是,结合上述的两种约束条件,上述的优化目标函数可表示为:
式中,θ为移动机器人的各个关节的角度;为移动机器人各个关节的速度;T为控制指令周期;θmin和θmax分别为关节角度θ的物理下限和物理上限;/>和/>分别为关节速度/>的物理下限和物理上限。
应当明白的是,对于上述的优化目标函数,除了可以通过利用机械臂和移动底盘的关节速度及速度误差各自的平方和来构建之外,也可以采用其他的方式来构建,只要有利用到上述这几种变量来构建,都应当在本申请的保护范围内。另外,除了上述列举的两种约束条件外,还可以根据具体的实际需求来设置更多的约束条件,或者是在上述的不等式约束中增加相应的约束上限及下限,这里不作限定。
基于预先构建的优化目标函数,将根据移动机器人要执行的任务来分配上述的两个关节速度权重。其中,上述的运动控制类型可包括移动机器人的整体运动控制、机械臂的单独运动控制和移动底盘的单独运动控制。
在一种实施方式中,如图5所示,对于上述的根据运动控制类型的优先级分别确定机械臂的关节速度权重和移动底盘的关节速度权重(步骤S300),可包括:
S310,当执行机械臂的单独运动时,设置移动底盘的关节速度权重大于机械臂的关节速度权重且存在预设倍数的数量级差。
可以理解,在机械臂单独运动时,此时可将移动底盘的关节速度权重设置为一个远远大于机械臂的关节速度权重的值,通常存在两个或两个以上的数量级差。通过调整移动底盘的关节速度权重为一个很大的值,这样可以使得其在控制过程中尽量不运动。例如,移动底盘的关节速度权重设为100,而机械臂的关节速度权重设为1等。上述的预设倍数具体可根据实际需求来选取,如可以取值为10~100等,这里不作限定。
S320,当执行移动底盘的单独运动时,设置机械臂的关节速度权重大于移动底盘的关节速度权重且存在预设倍数的数量级差。
同理,当仅需要移动底盘单独运动时,可以将机械臂的关节速度权重设置为一个较大的值,以使得其在控制过程中尽量不运动。例如,移动底盘的关节速度权重设为2,而机械臂的关节速度权重设为100等。
S330,当执行整体运动控制时,设置移动底盘的关节速度权重和机械臂的关节速度权重在同一数量级。
而当需要进行移动机器人的整体运动时,例如,需要让移动底盘与机械臂进行协同完成连续跟踪任务时,则可将移动底盘的关节速度权重和机械臂的关节速度权重的大小设置相差不大,例如,可均从10以内的数值中进行选取等,当然也可以从其他的数值范围内选取,这里仅为一种示例。
于是,根据已分配的权重及已知的位姿误差,通过代入优化目标函数中进行最优求解,则可以得到一组关节速度,然后执行步骤S150。
S150,利用关节速度对移动机器人的各个关节进行控制。
示范性地,在得到一组关节速度后,可将该关节速度直接下发到移动机器人的各个关节执行器,以使得各个关节执行器控制对应关节轴进行相应运动,从而使得机械臂末端尽量到达期望位姿。可选地,在下发控制时,也可以对计算到的关节速度经过积分处理得到关节位置,再下发到各个关节执行器等,这里不作限定。
本申请实施例的移动机器人的运动控制方法先是设置了移动机器人运动学正解的位置外环,计算位姿误差,可以保证机械臂末端对笛卡尔空间任务的执行精度;其次,设计了机械臂的关节速度及移动底盘的关节速度作为优化变量、及速度误差为松弛变量的优化目标函数,并设置机械臂的关节速度权重和移动底盘的关节速度权重,方便在优化目标函数中动态调整机械臂的关节速度权重与移动底盘的关节速度权重,可以实现移动机械臂的整体运动控制或单个运动控制;另一方面,由于基于二次规划进行任务优先级分配及关节速度求解,大大降低了计算复杂度,缩短了计算耗时,能够满足对机器人实时控制的需求。
请参照图6,基于上述实施例的移动机器人的运动控制方法,本申请实施例还提出一种移动机器人的运动控制装置,示范性地,该移动机器人包括移动底盘和至少一条机械臂,该运动控制装置100包括:
获取模块110,用于获取移动机器人所有关节在关节空间中的运动状态。
正向求解模块120,用于根据该运动状态通过正运动学方程计算移动机器人的机械臂末端在工作空间中的实际位姿。
位姿误差计算模块130,用于根据机械臂末端在工作空间中的期望位姿和所述实际位姿,计算该机械臂末端在工作空间中的位姿误差。
优化求解模块140,用于根据运动控制类型的优先级分别确定机械臂的关节速度权重和移动底盘的关节速度权重,并结合位姿误差对优化目标函数进行计算,得到满足运动控制类型的优先级的一组关节速度。
关节控制模块150,用于利用求解到的关节速度对该移动机器人的各个关节进行控制。
如图7所示,上述的优化求解模块140包括权重调整子模块141和优化计算子模块142,具体地,权重调整子模块141用于当执行机械臂的单独运动时,设置移动底盘的关节速度权重大于机械臂的关节速度权重且存在预设倍数的数量级差;当执行移动底盘的单独运动时,设置机械臂的关节速度权重大于移动底盘的关节速度权重且存在预设倍数的数量级差;当执行整体运动控制时,设置移动底盘的关节速度权重和机械臂的关节速度权重在同一数量级。优化计算子模块142则用于利用权重调整子模块141分配的权重,并结合位姿误差计算模块130计算到的位姿误差对上述的优化目标函数进行最优求解,以得到满足运动控制类型的优先级的关节速度,而该关节速度用于对移动机器人进行关节控制。
可以理解,本实施例的装置对应于上述实施例的移动机器人的运动控制方法,上述实施例中的可选项同样适用于本实施例,在此不再重复描述。
本申请还提供了一种可读存储介质,用于储存上述移动机器人中使用的所述计算机程序。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和结构图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,结构图和/或流程图中的每个方框、以及结构图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本申请各个实施例中的各功能模块或单元可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或更多个模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是智能手机、个人计算机、服务器、或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。
Claims (8)
1.一种移动机器人的运动控制方法,其特征在于,所述移动机器人包括移动底盘和至少一条机械臂,所述运动控制方法包括:
获取所述移动机器人中所有关节在关节空间中的运动状态;
根据所述运动状态通过正运动学方程计算所述移动机器人的机械臂末端在工作空间中的实际位姿;
根据所述机械臂末端在工作空间中的期望位姿和所述实际位姿,计算所述机械臂末端在工作空间中的位姿误差;
根据运动控制类型的优先级分别确定所述机械臂的关节速度权重和所述移动底盘的关节速度权重,并结合所述位姿误差对优化目标函数进行计算,得到满足所述运动控制类型的优先级的一组关节速度;其中,所述优化目标函数的构建过程,包括:
将由所述机械臂中各个关节速度的平方和分配的所述机械臂的关节速度权重构成的第一优化项、由所述移动底盘中各个关节速度的平方和分配的所述移动底盘的关节速度权重构成的第二优化项、以及所述机械臂末端在工作空间中的速度误差构成的第三优化项相加,得到总优化目标;
将所述总优化目标取最小值为目标,并添加相应的约束条件,构建得到与所述机械臂及所述移动底盘的关节速度有关的优化目标函数;所述约束条件包括:根据雅克比矩阵和所述机械臂末端在工作空间中的期望速度,构建所述移动机器人中所有关节的关节速度与所述机械臂末端在工作空间中的速度误差之间的等式约束;
根据各个关节角度的物理上限值和下限值、以及各个关节的角速度的物理上限值和下限值,构建所有关节的关节速度满足的不等式约束;
利用所述关节速度对所述移动机器人的各个关节进行控制。
2.根据权利要求1所述的移动机器人的运动控制方法,其特征在于,所述运动控制类型包括所述移动机器人的整体运动控制、所述机械臂的单独运动控制和所述移动底盘的单独运动控制;
所述根据运动控制类型的优先级分别确定所述机械臂的关节速度权重和所述移动底盘的关节速度权重,包括:
当执行所述机械臂的单独运动时,设置所述移动底盘的关节速度权重大于所述机械臂的关节速度权重且存在预设倍数的数量级差;
当执行所述移动底盘的单独运动时,设置所述机械臂的关节速度权重大于所述移动底盘的关节速度权重且存在预设倍数的数量级差;
当执行所述整体运动控制时,设置所述移动底盘的关节速度权重和所述机械臂的关节速度权重在同一数量级。
3.根据权利要求1所述的移动机器人的运动控制方法,其特征在于,所述优化目标函数的表达式为:
式中,θ为所述移动机器人的各个关节的角度;为所述移动机器人各个关节的速度;wk为所述机械臂末端在工作空间中的速度误差W在第k个维度的分量;J为雅克比矩阵;/>为所述机械臂中第i个关节的速度;/>为所述移动底盘中第j个关节的速度;M和N分别为所述机械臂和所述移动底盘的关节数目;ω1和ω2分别为所述机械臂和所述移动底盘的关节速度权重;ve为所述机械臂末端在工作空间中的期望速度;T为控制指令周期;/>表示所述总优化目标。
4.根据权利要求3所述的移动机器人的运动控制方法,其特征在于,通过对计算到的所述位姿误差进行求导得到所述机械臂末端在工作空间中的期望速度。
5.根据权利要求1所述的移动机器人的运动控制方法,其特征在于,所述正运动学方程的计算过程,包括:
将所述移动底盘中的各个关节与所述机械臂中的各个关节等效为依次连接的串联关节,得到所述移动机器人的运动学模型,并结合D-H模型,构造出所述移动机器人的正运动学方程。
6.一种移动机器人的运动控制装置,其特征在于,所述移动机器人包括移动底盘和至少一条机械臂,所述运动控制装置包括:
获取模块,用于获取移动机器人中所有关节在关节空间中的运动状态;
正向求解模块,用于根据所述运动状态通过正运动学方程计算所述移动机器人的机械臂末端在工作空间中的实际位姿;
位姿误差计算模块,用于根据所述机械臂末端在工作空间中的期望位姿和所述实际位姿,计算所述机械臂末端在工作空间中的位姿误差;
优化求解模块,用于根据运动控制类型的优先级分别确定所述机械臂的关节速度权重和所述移动底盘的关节速度权重,并结合所述位姿误差对优化目标函数进行计算,得到满足所述运动控制类型的优先级的一组关节速度;其中,所述优化目标函数的构建过程,包括:将由所述机械臂中各个关节速度的平方和分配的所述机械臂的关节速度权重构成的第一优化项、由所述移动底盘中各个关节速度的平方和分配的所述移动底盘的关节速度权重构成的第二优化项、以及所述机械臂末端在工作空间中的速度误差构成的第三优化项相加,得到总优化目标;将所述总优化目标取最小值为目标,并添加相应的约束条件,构建得到与所述机械臂及所述移动底盘的关节速度有关的优化目标函数;
所述约束条件包括:
根据雅克比矩阵和所述机械臂末端在工作空间中的期望速度,构建所述移动机器人中所有关节的关节速度与所述机械臂末端在工作空间中的速度误差之间的等式约束;
根据各个关节角度的物理上限值和下限值、以及各个关节的角速度的物理上限值和下限值,构建所有关节的关节速度满足的不等式约束;
关节控制模块,用于利用所述关节速度对所述移动机器人的各个关节进行控制。
7.一种移动机器人,其特征在于,所述移动机器人包括处理器和存储器,所述存储器存储有计算机程序,所述处理器用于执行所述计算机程序以实施权利要求1-5中任一项所述的移动机器人的运动控制方法。
8.一种可读存储介质,其特征在于,其存储有计算机程序,所述计算机程序在处理器上执行时,实施根据权利要求1-5中任一项所述的移动机器人的运动控制方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210288408.8A CN114454180B (zh) | 2022-03-22 | 2022-03-22 | 移动机器人的运动控制方法、装置和移动机器人 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210288408.8A CN114454180B (zh) | 2022-03-22 | 2022-03-22 | 移动机器人的运动控制方法、装置和移动机器人 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114454180A CN114454180A (zh) | 2022-05-10 |
CN114454180B true CN114454180B (zh) | 2024-01-19 |
Family
ID=81417562
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210288408.8A Active CN114454180B (zh) | 2022-03-22 | 2022-03-22 | 移动机器人的运动控制方法、装置和移动机器人 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114454180B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114770459B (zh) * | 2022-05-18 | 2023-12-08 | 佗道医疗科技有限公司 | 一种主控制臂运动控制方法 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110861092A (zh) * | 2019-12-06 | 2020-03-06 | 壹佰米机器人技术(北京)有限公司 | 基于场景变化的pid参数智能优化方法 |
CN111906785A (zh) * | 2020-07-23 | 2020-11-10 | 谈斯聪 | 多模式综合信息识别移动式双臂机器人装置系统及方法 |
CN112497208A (zh) * | 2020-10-22 | 2021-03-16 | 西安交通大学 | 基于全状态阻抗控制器的移动操作机器人通用控制方法 |
CN112540671A (zh) * | 2019-09-20 | 2021-03-23 | 辉达公司 | 基于视觉的灵巧机器人系统的远程操作 |
CN112743556A (zh) * | 2020-12-22 | 2021-05-04 | 中国消防救援学院 | 消防机器人多指标结构优化方法 |
CN112894818A (zh) * | 2021-01-28 | 2021-06-04 | 西安交通大学 | 一种移动操作机器人的零空间运动分配方法 |
CN112975929A (zh) * | 2021-03-05 | 2021-06-18 | 深圳市华艺鑫电子有限公司 | 基于多特征融合的客机充电插座识别定位对接系统与方法 |
CN113305844A (zh) * | 2021-05-28 | 2021-08-27 | 深圳市优必选科技股份有限公司 | 仿人机器人平衡控制方法、装置和仿人机器人 |
-
2022
- 2022-03-22 CN CN202210288408.8A patent/CN114454180B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112540671A (zh) * | 2019-09-20 | 2021-03-23 | 辉达公司 | 基于视觉的灵巧机器人系统的远程操作 |
CN110861092A (zh) * | 2019-12-06 | 2020-03-06 | 壹佰米机器人技术(北京)有限公司 | 基于场景变化的pid参数智能优化方法 |
CN111906785A (zh) * | 2020-07-23 | 2020-11-10 | 谈斯聪 | 多模式综合信息识别移动式双臂机器人装置系统及方法 |
CN112497208A (zh) * | 2020-10-22 | 2021-03-16 | 西安交通大学 | 基于全状态阻抗控制器的移动操作机器人通用控制方法 |
CN112743556A (zh) * | 2020-12-22 | 2021-05-04 | 中国消防救援学院 | 消防机器人多指标结构优化方法 |
CN112894818A (zh) * | 2021-01-28 | 2021-06-04 | 西安交通大学 | 一种移动操作机器人的零空间运动分配方法 |
CN112975929A (zh) * | 2021-03-05 | 2021-06-18 | 深圳市华艺鑫电子有限公司 | 基于多特征融合的客机充电插座识别定位对接系统与方法 |
CN113305844A (zh) * | 2021-05-28 | 2021-08-27 | 深圳市优必选科技股份有限公司 | 仿人机器人平衡控制方法、装置和仿人机器人 |
Also Published As
Publication number | Publication date |
---|---|
CN114454180A (zh) | 2022-05-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111538949B (zh) | 冗余机器人逆运动学求解方法、装置和冗余机器人 | |
Wilson et al. | Relative end-effector control using cartesian position based visual servoing | |
US20190240833A1 (en) | Trajectory generating method, and trajectory generating apparatus | |
CN110695993B (zh) | 一种柔性机械臂同步测量方法、系统及装置 | |
CN110076772B (zh) | 一种机械臂的抓取方法及装置 | |
Miller | Sensor-based control of robotic manipulators using a general learning algorithm | |
US20210023719A1 (en) | Vision-based sensor system and control method for robot arms | |
CN110253574B (zh) | 一种多任务机械臂位姿检测和误差补偿方法 | |
CN107443375B (zh) | 机器人原点标定方法、装置、存储介质和计算机设备 | |
Wang et al. | Nonparametric statistical learning control of robot manipulators for trajectory or contour tracking | |
CN111452048A (zh) | 多机器人相对空间位置关系的标定方法和装置 | |
Lippiello et al. | Eye-in-hand/eye-to-hand multi-camera visual servoing | |
US11433538B2 (en) | Trajectory generation system and trajectory generating method | |
CN110465942A (zh) | 位姿补偿方法、装置、存储介质和电子设备 | |
JP3349652B2 (ja) | オフラインティーチング方法 | |
CN114454180B (zh) | 移动机器人的运动控制方法、装置和移动机器人 | |
CN111775145A (zh) | 一种串并联机器人的控制系统 | |
US10507585B2 (en) | Robot system that displays speed | |
CN114227685A (zh) | 机械臂控制方法、装置、计算机可读存储介质及机械臂 | |
CN113910218A (zh) | 基于运动学与深度神经网络融合的机器人标定方法和装置 | |
Sharma et al. | A framework for robot motion planning with sensor constraints | |
CN113103262A (zh) | 机器人控制装置和用于控制机器人的方法 | |
CN113984045B (zh) | 水下机器人移动式对接目标运动状态估计方法及系统 | |
CN112847362B (zh) | 一种基于图像矩的搬运机器人视觉伺服控制方法 | |
Lopez-Lara et al. | Image-based control of delta parallel robots via enhanced LCM-CSM to track moving objects |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |