CN115748879A - 挖掘机控制方法、装置、挖掘机和存储介质 - Google Patents
挖掘机控制方法、装置、挖掘机和存储介质 Download PDFInfo
- Publication number
- CN115748879A CN115748879A CN202211445403.8A CN202211445403A CN115748879A CN 115748879 A CN115748879 A CN 115748879A CN 202211445403 A CN202211445403 A CN 202211445403A CN 115748879 A CN115748879 A CN 115748879A
- Authority
- CN
- China
- Prior art keywords
- pose
- joint
- excavator
- transformation matrix
- angle
- 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
Images
Landscapes
- Operation Control Of Excavators (AREA)
Abstract
本公开提供了一种挖掘机控制方法、装置、挖掘机和存储介质,涉及运动规划领域。该方法包括:根据运输车位置和高度信息、以及挖掘机的位置信息,确定挖掘机从挖料到卸料完成过程中的初始位姿、第一过渡点位姿、第二过渡点位姿和末端位姿;利用直线运动规划算法,计算挖掘机从初始位姿到第一过渡点位姿,每个关节在各时刻的第一角度信息;利用曲线运动规划算法,计算挖掘机从第一过渡点位姿到第二过渡点位姿,每个关节在各时刻的第二角度信息;利用直线运动规划算法,计算挖掘机从第二过渡点位姿到末端位姿,每个关节在各时刻的第三角度信息;以及基于第一角度信息、第二角度信息和第三角度信息,控制挖掘机的各个关节运动,以执行挖掘作业。
Description
技术领域
本公开涉及运动规划领域,尤其涉及一种挖掘机控制方法、装置、挖掘机和存储介质。
背景技术
挖掘机作为一种挖掘并移动物料的机械,在采矿和建筑领域有广泛的应用。由于其应用的广泛性,挖掘机操作员必须掌握多种多样的操作技术以适应不同的工况和需求。这使得培养合格的操作员成为耗时耗力的工作。此外,由于操作的复杂性和恶劣的工作环境,操作员难以长时间保持高效的工作状态,这使得挖掘机自动化的需求愈加高涨。
现有的挖掘机系统主要由人来操作,完成诸如直线沟壑挖掘、土方移动运输、平整操作面等高层任务,效率较低。
发明内容
本公开要解决的一个技术问题是,提供一种挖掘机控制方法、装置、挖掘机和存储介质,能够提高挖掘机的工作效率。
根据本公开一方面,提出一种挖掘机控制方法,包括:根据运输车位置和高度信息、以及挖掘机的位置信息,确定挖掘机从挖料到卸料完成过程中的初始位姿、第一过渡点位姿、第二过渡点位姿和末端位姿;利用直线运动规划算法,计算挖掘机从初始位姿到第一过渡点位姿,每个关节在各时刻的第一角度信息;利用曲线运动规划算法,计算挖掘机从第一过渡点位姿到第二过渡点位姿,每个关节在各时刻的第二角度信息;利用直线运动规划算法,计算挖掘机从第二过渡点位姿到末端位姿,每个关节在各时刻的第三角度信息;以及基于第一角度信息、第二角度信息和第三角度信息,控制挖掘机的各个关节运动,以执行挖掘作业。
在一些实施例中,初始位姿为挖掘机的铲斗触地,未开始挖掘时的挖掘机的位姿;第一过渡点位姿为铲斗挖掘完毕时的挖掘机的位姿;第二过渡点位姿为铲斗移动到运输车上方,下降预定高度,处于静态并且未卸料时的挖掘机的位姿;以及末端位姿为铲斗卸料完毕时的挖掘机的位姿。
在一些实施例中,利用直线运动规划算法,计算挖掘机从初始位姿到第一过渡点位姿,每个关节在各时刻的第一角度信息包括:对初始位姿对应的位姿旋转矩阵和第一过渡点位姿对应的初始位姿变换矩阵进行插值处理,得到第一位姿旋转矩阵插值序列;以及根据第一位姿旋转矩阵插值序列以及控制关节角度时的时间间隔,得到各个关节的带有时间戳的角度序列,其中,每个关节在运动过程中满足对应关节的角度约束条件、速度约束条件和加速度约束条件。
在一些实施例中,对初始位姿对应的位姿旋转矩阵和第一过渡点位姿对应的初始位姿变换矩阵进行插值处理,得到第一位姿旋转矩阵插值序列包括:根据铲斗在挖料过程中的速度信息,对速度进行插值并进行归一化,得到第一速度序列;依次按照第一速度序列,对挖掘机从初始位姿到第一过渡点位姿的铲斗的位移进行插值,得到第一位移序列,对铲斗的姿态进行插值,得到第一姿态序列;以及基于第一位移序列和第一姿态序列的组合,得到第一位姿旋转矩阵插值序列。
在一些实施例中,根据曲线运动规划算法,第一过渡点位姿到第二过渡点位姿之间被划分为第一子位姿、第二子位姿、第三子位姿和第四子位姿,其中,第一子位姿为铲斗从挖掘完毕规划运动到能够保持物料不漏状态时的位姿;第二子位姿为铲斗在保持物料不漏的前提下,在垂直于地面的方向上最大限度的移动到第一目标位置时的位姿;第三子位姿为挖掘机的旋转体与车体之间的关节运动到目标关节角度时的铲斗的位姿;以及第四子位姿为铲斗在保持物料不漏的前提下,在垂直于地面的方向上最大限度的移动到第二目标位置,且铲斗处于运动状态时的位姿。
在一些实施例中,挖掘机包括第一关节、第二关节、第三关节和第四关节,其中,第一关节为挖掘机的旋转体与车体之间的关节,第二关节为旋转体与挖掘机的大臂之间的关节,第三关节为大臂与挖掘机的小臂之间的关节,第四关节为挖掘机的小臂与铲斗之间的关节。
在一些实施例中,利用曲线运动规划算法,计算从第一过渡点位姿到第二过渡点位姿,挖掘机每个关节在各时刻的第二角度信息包括:确定铲斗能够保持物料不漏时,第四关节的角度取值范围;根据第一过渡点位姿对应的初始位姿变换矩阵以及第四关节的角度取值范围,得到第一子位姿对应的第一位姿变换矩阵;根据第一位姿变换矩阵、第二过渡点位姿对应的第五位姿变换矩阵、以及第四关节的角度取值范围,得到第二子位姿对应的第二位姿变换矩阵;根据第二位姿变换矩阵和第五位姿变换矩阵,得到第三子位姿对应的第三位姿变换矩阵;根据第三位姿变换矩阵、第五位姿变换矩阵以及第四关节的角度取值范围,得到第四子位姿对应的第四位姿变换矩阵;利用直线运动规划算法,分别计算初始位姿变换矩阵到第一位姿变换矩阵之间各个关节的带有时间戳的角度序列、第一位姿变换矩阵到第二位姿变换矩阵之间各个关节的带有时间戳的角度序列、第二位姿变换矩阵到第三位姿变换矩阵之间各个关节带有时间戳的角度序列、第三位姿变换矩阵到第四位姿变换矩阵之间各个关节的带有时间戳的角度序列、以及第四位姿变换矩阵到第五位姿变换矩阵之间各个关节的带有时间戳的角度序列,其中,每个关节在运动过程中满足对应关节的角度约束条件、速度约束条件和加速度约束条件。
在一些实施例中,根据第一过渡点位姿对应的初始位姿变换矩阵以及第四关节的角度取值范围,得到第一子位姿对应的第一位姿变换矩阵包括:根据第一过渡点位姿对应的初始位姿变换矩阵,反解计算出挖掘机每个关节的初始角度;若预定时刻第四关节的角度位于角度取值范围,则保持第一关节的角度,若预定时刻第四关节的角度未位于角度取值范围,则调整第四关节的角度至角度取值范围,并求解第一关节、第二关节和第三关节的角度;以及根据第一关节、第二关节、第三关节和第四关节的角度,确定第一位姿变换矩阵。
在一些实施例中,根据第一位姿变换矩阵、第五位姿变换矩阵、以及第四关节的角度取值范围,得到第二位姿变换矩阵包括:根据第一位姿变换矩阵和第五位姿变换矩阵,得到第一中间位姿;根据第一中间位姿,反解计算出第一关节、第二关节和第三关节的角度;根据第一关节、第二关节和第三关节的角度,正解出第四关节的角度;若正解出的第四关节的角度,满足角度取值范围,则根据第一关节、第二关节、第三关节和第四关节的角度,确定第二位姿变换矩阵。
在一些实施例中,根据第二位姿变换矩阵和第五位姿变换矩阵,得到第三位姿变换矩阵包括:根据第二位姿变换矩阵,反解计算出第二关节、第三关节和第四关节的角度;根据第五位姿变换矩阵,反解出第一关节的角度;根据第一关节、第二关节、第三关节和第四关节的角度,确定第三位姿变换矩阵。
在一些实施例中,根据第三位姿变换矩阵、第五位姿变换矩阵以及第四关节的角度取值范围,得到第四位姿变换矩阵包括:根据第三位姿变换矩阵和第五位姿变换矩阵,得到第二中间位姿;根据第二中间位姿,反解计算出第一关节、第二关节和第三关节的角度;根据第一关节、第二关节和第三关节的角度,正解出第四关节的角度;若正解出的第四关节的角度,满足角度取值范围,则根据第一关节、第二关节、第三关节和第四关节的角度,确定第四位姿变换矩阵。
在一些实施例中,对初始位姿变换矩阵到第一位姿变换矩阵之间各个关节的带有时间戳的角度序列、第一位姿变换矩阵到第二位姿变换矩阵之间各个关节的带有时间戳的角度序列、第二位姿变换矩阵到第三位姿变换矩阵之间各个关节带有时间戳的角度序列、第三位姿变换矩阵到第四位姿变换矩阵之间各个关节的带有时间戳的角度序列、以及第四位姿变换矩阵到第五位姿变换矩阵之间各个关节的带有时间戳的角度序列,进行互补处理。
在一些实施例中,利用直线运动规划算法,计算挖掘机从第二过渡点位姿到末端位姿,每个关节在各时刻的第三角度信息包括:对第二过渡点位姿对应的第五位姿变换矩阵和末端位姿对应的末端位姿变换矩阵进行插值处理,得到第二位姿旋转矩阵插值序列;以及根据第二位姿旋转矩阵插值序列以及控制关节角度时的时间间隔,得到各个关节的带有时间戳的角度序列,其中,每个关节在运动过程中满足对应关节的角度约束条件、速度约束条件和加速度约束条件。
在一些实施例中,对第二过渡点位姿对应的第五位姿变换矩阵和末端位姿对应的末端位姿变换矩阵进行插值处理,得到第二位姿旋转矩阵插值序列包括:根据铲斗在卸料过程中的速度信息,对速度进行插值并进行归一化,得到第二速度序列;依次按照第二速度序列,对挖掘机从第二过渡点位姿到末端位姿的铲斗的位移进行插值,得到第二位移序列,对铲斗的姿态进行插值,得到第二姿态序列;以及基于第二位移序列和第二姿态序列的组合,得到第二位姿旋转矩阵插值序列。
根据本公开的另一方面,还提出一种挖掘机控制装置,包括:位姿确定模块,被配置为根据运输车位置和高度信息、以及挖掘机的位置信息,确定挖掘机从挖料到卸料完成过程中的初始位姿、第一过渡点位姿、第二过渡点位姿和末端位姿;角度计算模块,被配置为利用直线运动规划算法,计算挖掘机从初始位姿到第一过渡点位姿,每个关节在各时刻的第一角度信息;利用曲线运动规划算法,计算挖掘机从第一过渡点位姿到第二过渡点位姿,每个关节在各时刻的第二角度信息;利用直线运动规划算法,计算挖掘机从第二过渡点位姿到末端位姿,每个关节在各时刻的第三角度信息;以及控制模块,被配置为基于第一角度信息、第二角度信息和第三角度信息,控制挖掘机的各个关节运动,以执行挖掘作业。
根据本公开的另一方面,还提出一种挖掘机控制装置,包括:存储器;以及耦接至存储器的处理器,处理器被配置为基于存储在存储器的指令执行如上述的挖掘机控制方法。
根据本公开的另一方面,还提出一种挖掘机,包括:上述的挖掘机控制装置。
根据本公开的另一方面,还提出一种非瞬时性计算机可读存储介质,其上存储有计算机程序指令,该指令被处理器执行时实现上述的挖掘机控制方法。
本公开实施例中,通过对铲斗初始位姿到铲斗末端位姿的运动特点,采用分段运动规划机制,并融合了直线和曲线运动规划算法,在不同的分段运动规划中采用相应的运动规划算法,使得铲齿快速地从初始姿态收敛到末端姿态,在运动过程中使得铲斗的开口面朝上并与地面保持平行状态,从而使得铲斗物料一直保持不漏,提高了挖掘机的工作效率,降低了操作者的作业强度。
通过以下参照附图对本公开的示例性实施例的详细描述,本公开的其它特征及其优点将会变得清楚。
附图说明
构成说明书的一部分的附图描述了本公开的实施例,并且连同说明书一起用于解释本公开的原理。
参照附图,根据下面的详细描述,可以更加清楚地理解本公开,其中:
图1为本公开的挖掘机控制方法的一些实施例的流程示意图;
图2为本公开的不同状态下的挖掘机示意图;
图3为本公开的挖掘机控制方法的另一些实施例的流程示意图;
图4为本公开的插值算法的一些实施例的示意图;
图5为本公开的插值算法的另一些实施例的示意图;
图6为本公开的挖掘机控制方法的另一些实施例的流程示意图;
图7为本公开的挖掘机控制方法的另一些实施例的流程示意图;
图8为本公开的起点重合的向量示意图;
图9为本公开的稳定区域示意图;
图10为本公开的铲斗旋转中心工作截面示意图;
图11为本公开的能够保持物料不漏的位置区域示意图;
图12为本公开的挖掘机控制方法的另一些实施例的流程示意图;
图13为本公开的挖掘机控制方法的另一些实施例的流程示意图;
图14为本公开的挖掘机控制方法的另一些实施例的流程示意图;
图15为本公开的挖掘机控制装置的一些实施例的结构示意图;
图16为本公开的挖掘机控制装置的另一些实施例的结构示意图;
图17为本公开的挖掘机控制装置的另一些实施例的结构示意图;以及
图18为本公开的挖掘机运物料与卸料示意图。
具体实施方式
现在将参照附图来详细描述本公开的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本公开的范围。
同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本公开及其应用或使用的任何限制。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
在这里示出和讨论的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它示例可以具有不同的值。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
为使本公开的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本公开进一步详细说明。
图1为本公开的挖掘机控制方法的一些实施例的流程示意图。
在步骤110,根据运输车位置和高度信息、以及挖掘机的位置信息,确定挖掘机从挖料到卸料完成过程中的初始位姿、第一过渡点位姿、第二过渡点位姿和末端位姿。
在一些实施例中,初始位姿为挖掘机的铲斗触地,未开始挖掘时的挖掘机的位姿。例如,挖掘机已经行驶至待挖掘的物料堆和待装载的运输车之间的指定位置,斗齿触地,开口向下,未开时挖掘的状态。运输车例如为无人驾驶矿用卡车,简称矿卡。
第一过渡点位姿为铲斗挖掘完毕时的挖掘机的位姿。例如,铲斗挖掘完毕,铲斗开口向内时的姿态。
第二过渡点位姿为铲斗移动到运输车上方,下降预定高度,处于静态并且未卸料时的挖掘机的位姿。例如,挖掘机完成物料的挖掘后,保持物料不漏,将物料运输至运输车或其他地点,此时,铲斗在运输车上方,开口向上,内容物不漏,即将卸料时的状态。
末端位姿为铲斗卸料完毕时的挖掘机的位姿。例如,铲斗卸料完毕,开口向下,并且位于运输车上方。
在步骤120,利用直线运动规划算法,计算挖掘机从初始位姿到第一过渡点位姿,每个关节在各时刻的第一角度信息。
在一些实施例中,对初始位姿对应的位姿旋转矩阵和第一过渡点位姿对应的初始位姿变换矩阵进行插值处理,得到第一位姿旋转矩阵插值序列;根据第一位姿旋转矩阵插值序列以及控制关节角度时的时间间隔,得到各个关节的带有时间戳的角度序列,其中,每个关节在运动过程中满足对应关节的角度约束条件、速度约束条件和加速度约束条件。
在步骤130,利用曲线运动规划算法,计算挖掘机从第一过渡点位姿到第二过渡点位姿,每个关节在各时刻的第二角度信息。
在一些实施例中,得到满足各关节物理约束的内容物搬运与释放任务的曲线运动规划算法过程中,继续采用分段规划的思想。
根据曲线运动规划算法,第一过渡点位姿到第二过渡点位姿之间被划分为第一子位姿、第二子位姿、第三子位姿和第四子位姿,其中,第一子位姿为铲斗从挖掘完毕规划运动到能够保持物料不漏状态时的位姿;第二子位姿为铲斗在保持物料不漏的前提下,在垂直于地面的方向上最大限度的移动到第一目标位置时的位姿;第三子位姿为挖掘机的旋转体与车体之间的关节运动到目标关节角度时的铲斗的位姿;以及第四子位姿为铲斗在保持物料不漏的前提下,在垂直于地面的方向上最大限度的移动到第二目标位置,且铲斗处于运动状态时的位姿。
在步骤140,利用直线运动规划算法,计算挖掘机从第二过渡点位姿到末端位姿,每个关节在各时刻的第三角度信息。
在一些实施例中,对第二过渡点位姿对应的第五位姿变换矩阵和末端位姿对应的末端位姿变换矩阵进行插值处理,得到第二位姿旋转矩阵插值序列;以及根据第二位姿旋转矩阵插值序列以及控制关节角度时的时间间隔,得到各个关节的带有时间戳的角度序列,其中,每个关节在运动过程中满足对应关节的角度约束条件、速度约束条件和加速度约束条件。
在步骤150,基于第一角度信息、第二角度信息和第三角度信息,控制挖掘机的各个关节运动,以执行挖掘作业。
在上述实施例中,挖掘机运输物料的连续动作主要包括抬起挖掘机操作臂、旋转挖掘机操作臂和下降挖掘机操作臂,由于这一系列的连续动作中既包括直线运动也包括曲线运动,该实施例采用分段规划,融合了直线和曲线两种运动规划算法,能够提升挖掘机操作臂的运动效率,并且降低操作者的作业强度。
在本公开的一些实施例中,如图2所示,挖掘机包括第一关节、第二关节、第三关节和第四关节,其中,第一关节为挖掘机的旋转体与车体之间的关节,第二关节为旋转体与挖掘机的大臂之间的关节,第三关节为大臂与挖掘机的小臂之间的关节,第四关节为挖掘机的小臂与铲斗之间的关节。第一关节的角度为θ1,第二关节的角度为θ2,第三关节的角度为θ3,第四关节的角度为θ4。挖掘机从初始位姿到第一过渡点位姿,第一关节的角度θ1不变,即挖掘机没有旋转。
在执行本公开的挖掘机控制方法之前,应该建立挖掘机操作臂运动学模型,以及设置挖掘机的物理约束条件。
在一些实施例中,基于MDH(Modified_D-H,改进的D-H)方法建立挖掘机操作臂运动学模型,运动学参数列表如表1所示:
表1挖掘机Modified_D-H参数表
其中,j为挖掘机操作臂坐标系序号,α为当前连杆长度,a为连杆扭转角,d为连杆偏移,d为关节角度。关节5表示固结于铲齿的坐标系,该坐标系随铲齿而动。aj,j={1,2,3,4}以及dj,j={1,2}是常数参数,随挖掘机型号的不同而不同。θj,j={1,2,3,4}在挖掘机完成任务的过程中是可变的变量。关节4表示固结于铲斗旋转中心的坐标系。其中,典型的参数值如表2所示:
表2典型参数
在一些实施例中,挖掘机的物理约束条件指各关节在运动过程中应该满足角度约束、速度约束、加速度约束。物理约束参数如表3所示:
表3物理约束参数
下面将对挖掘过程中,调用直线运动规划算法,根据铲斗初始位姿和第一过渡点位姿对抬起挖掘机操作臂的直线运动进行规划的方法进行介绍。
图3为本公开的挖掘机控制方法的另一些实施例的流程示意图。
在步骤310,根据铲斗在挖料过程中的速度信息,对速度进行插值并进行归一化,得到第一速度序列。
如图4所示,为速度-时间曲线示意图,曲线的面积为1,从0插值到1,速度先匀加速、后匀速、最后匀减速。插值算法最终得到分布在[0,1]区间的符合图4所示速度曲线特征的插值序列,即相当于在连续的曲线中进行等间隔离散采样,间隔的值取决于采样数目Num,间隔值例如Num可取常数50。
在步骤320,依次按照第一速度序列,对挖掘机从初始位姿到第一过渡点位姿的铲斗的位移进行插值,得到第一位移序列,对铲斗的姿态进行插值,得到第一姿态序列。
顺序按照插值序列对姿态进行插值。需要将初末姿态转化为单位四元数,然后按照得到的插值序列进行插值,该过程可以利用已经成熟的方法,此处不再进一步阐述。
在姿态的插值过程中,由于角度的旋转周期性,存在着两种插值方向,考虑到实际应用中,需要快速高效的由初始姿态收敛到第一过渡点姿态,因此,选取能够最短由初始姿态收敛到第一过渡点姿态的插值方向。
在步骤330,基于第一位移序列和第一姿态序列的组合,得到第一位姿旋转矩阵插值序列。
将位移和姿态组合在一起,构成齐次转换矩阵序列,中间部分由插值算法插值得到。整个插值算法的效果是:从位移的角度来说,铲齿先加速后匀速最后减速;从姿态的角度来说,铲斗相对于地面先加速旋转后匀速最后减速直到收敛到第一过渡点位姿。
在步骤340,根据第一位姿旋转矩阵插值序列以及控制关节角度时的时间间隔,得到各个关节的带有时间戳的角度序列,其中,每个关节在运动过程中满足对应关节的角度约束条件、速度约束条件和加速度约束条件。
在一些实施例中,如图6所示,该步骤340包括步骤610-6120。
在步骤610,初始化角度序列。
在步骤620,遍历第一位姿旋转矩阵插值序列。
在步骤630,通过对铲斗位姿求反解获取其他关节的角度。
在步骤640,判断新加入的四个角度中任一个角度是否符合对应的角度限制,若是,则执行步骤650,否则,执行步骤651。
在步骤650,判断是否遍历结束,若是,则执行步骤660,否则,继续执行步骤620。
在步骤651,确认规划失败,调整初始位姿和第一过渡点位姿。
在步骤660,获取各关节角度序列。
在步骤670,根据控制器的时间间隔,计算各个关节序列中个点的角速度和角加速度。
在步骤680,判断任一关节序列点的角速度和角加速度是否超出范围,若是,则执行步骤690,否则,执行步骤6100。
在步骤690,使用二分法增加该序列点的间隔时间,后续继续执行步骤670。
在步骤6100,判断是否遍历结束,若结束,则执行步骤6110,否则,继续执行步骤670。
在步骤6110,在序列的相邻两个角度间线性插入n个角度值,其中,n=点间的间隔时间/控制器的时间间隔。
在步骤6120,获取每个时间点对应的角度值序列。该角度序列中相邻角度的到达时间间隔为tint erval,tint erval一般取很小的值,如0.01秒各关节满足相应的物理约束。
具体算法实现如下所示:
在上述实施例中,在基础插值算法中,得到了数量为Num的从初始位姿到第一过渡点位姿的齐次旋转矩阵插值序列Tseq,利用时间分配算法,对到达各矩阵的时间进行分配以满足关节的物理约束。输入参数为齐次旋转矩阵插值序列Tseq和在实际应用时发送给控制器角度值的时间间隔,最终得到了各个关节的带有时间戳的角度序列。最终,铲齿位移一直在沿初始位置和第一过渡点位置连线的直线上,铲齿姿态从初始姿态逐渐收敛到第一过渡点姿态。
下面将对在旋转挖掘机操作臂的过程中,调用曲线运动规划算法,根据第一过渡点位姿和第二过渡点位姿对旋转挖掘机操作臂的曲线运动进行规划的方法的介绍。
图7为本公开的挖掘机控制方法的另一些实施例的流程示意图。
在步骤710,确定铲斗能够保持物料不漏时,第四关节的角度取值范围。
如图8所示,表示在水平地面的投影的向量的单位向量。表示四个可能的的单位向量的状态。虚线示意铲斗的姿态。αi,i={1,2,3,4}表示对应的在-180,180角度体系下的角度。逆时针方向为正。αi,i={1,2,3,4}表示铲斗与水平地面的夹角,即根据铲斗与水平面的夹角构建了一个角度体系。
据此角度体系、现场地面平整度以及规划的挖掘机运动轨迹,有物料不漏的稳定角度αs∈S。定义S为认为稳定的区间,该区间的下界和上界不一定符合上界的值大于下界的值,而是从下界角度开始,以正方向进行旋转,直到旋转到上界的值(整个过程均是-180,180角度体系),这期间所遍历的范围就是S所代表的区域范围(如果上下界的值相等,则仅代表一个值,不代表范围)。如S可定义为[150,-150],是指如图9所示的阴影部分,在该阴影区域中任取一个角度铲斗均可认为保持内容物不漏。当然,有时如果对稳定区间要求严苛,则可将S定义为[179.9,-179.9]甚至[180,180],最大限度的保证铲斗与水平地面平行而保证内容物不漏。
在定义好S以后,能根据实际情况,去限制铲斗的运动范围,保证整个挖掘机操作臂在操作时,始终保持铲斗与水平面平行,无论动臂、斗杆如何运动,均可使铲斗与水平面平行,从而保证铲斗中物料不漏。
在实际应用中,根据现场工况定义S的范围,如果S定义为[150,-150],θ4∈[-100,30],则在铲斗旋转中心保持θ1不变的情况下,遍历所有可能的θ2,θ3,得到如图10所示的铲斗旋转中心的工作空间截面上,从而能够符合如图11所示保持物料不漏的范围。
可以看到,在当前的参数设置情况下,不是任意的铲斗旋转中心位置都能找到一个符合角度物理约束的θ4取值,使得能够保持物料不漏。这就说明要想在超出稳定范围之外进行内容物的搬运,需要结合挖掘机底盘在世界坐标系的运动规划,使得最终需要搬运到的目标位置在稳定区域内,以此来完成需求任务。
上述实施例中,以起点为关节2终点为关节3的向量,在水平面的投影单位向量和以起点为关节4终点为铲齿的单位向量之间的夹角,构建铲斗与水平地面之间的夹角的角度体系,根据该角度体系、现场地面平整度以及规划的挖掘机运动轨迹确定铲斗稳定区间。根据该稳定区间挖掘机操作臂的运动进行规划,使得铲斗在整个物料运输流程中铲斗的开口面始终与地面平行,从而保证铲斗内的物料保持不漏。
在步骤720,根据第一过渡点位姿对应的初始位姿变换矩阵T0以及第四关节的角度取值范围,得到第一子位姿对应的第一位姿变换矩阵T1。
在一些实施例中,根据第一过渡点位姿对应的初始位姿变换矩阵,反解计算出挖掘机每个关节的初始角度;若预定时刻第四关节的角度位于角度取值范围,则保持第一关节的角度,若预定时刻第四关节的角度未位于角度取值范围,则调整第四关节的角度至角度取值范围,并求解第一关节、第二关节和第三关节的角度;以及根据第一关节、第二关节、第三关节和第四关节的角度,确定第一位姿变换矩阵T1。
已知挖掘机的前三个角度(θ1,θ2,θ3)和以为基准的角度范围得到θ4的范围。为了规划算法的开发方便以及在实际的挖掘机系统中人操作的直观性,判断在铲斗旋转中心的某一位置下能否得到符合以为基准的角度所对应的满足角度物理约束的θ4取值、求取能够保证铲斗物料不漏的铲斗旋转中心的空间范围等作用,可已知挖掘机的前三个角度和以为基准的角度范围得到可行的θ4的范围。
基于上面规划算法,在给定初始位姿变换矩阵T0后,反解出初始的挖掘机的四个角度;接着在给定铲斗物料稳定角度区间的基础上,得到能够使得内容物保持不漏的θ4的可取范围。有时可能会由于稳定区间过于严苛如设置为[180,180],以及θ4的角度物理可行范围过小,导致能够保持内容物不漏的θ4的可取范围为空,此时抛出一错误终止算法,认为此种情况不是算法要处理的。判断目前的θ4的值是否在该范围内,如果是,则θ4的值保持不变,说明此时不需要调整即可保证物料不漏,否则使规划θ4的值到达该范围内的某一值,这个值可以是该范围的中间值。得到调整后的θ1,θ2,θ3,θ4的值,得到T0→T1规划算法输出的铲斗旋转中心的齐次变换矩阵T1。
在步骤730,根据第一位姿变换矩阵T1、第二过渡点位姿对应的第五位姿变换矩阵Tf、以及第四关节的角度取值范围,得到第二子位姿对应的第二位姿变换矩阵T2。
在一些实施例中,根据第一位姿变换矩阵T1和第五位姿变换矩阵Tf,得到第一中间位姿T_mid1;根据第一中间位姿T_mid1,反解计算出第一关节、第二关节和第三关节的角度;根据第一关节、第二关节和第三关节的角度,正解出第四关节的角度;若正解出的第四关节的角度,满足角度取值范围,则根据第一关节、第二关节、第三关节和第四关节的角度,确定第二位姿变换矩阵T2。
如图12所示,该过程包括步骤1210-1280。
在步骤1210,输入挖斗的第一位姿变换矩阵T1、第五位姿变换矩阵Tf和物料不漏的挖斗角度区间S。
在步骤1220,通过二分法求取第一中间位姿T_mid1。
在步骤1230,根据第一中间位姿T_mid1,反解其他三个关节的角度θ1,θ2,θ3。
在步骤1240,根据θ1,θ2,θ3求正解,计算铲斗角度θ4。
在步骤1250,判断铲斗角度θ4是否符合区间S,若是,则执行步骤1260,否则,执行步骤1270。
在步骤1260,根据已得到的θ1,θ2,θ3,θ4的值,求出第二位姿变换矩阵T2。
在步骤1270,判断是否超出错误阈值,若是,则执行步骤1280,否则,继续执行步骤1220。
在步骤1280,规划失败。
具体算法实现过程如下所示:
在步骤740,根据第二位姿变换矩阵T2和第五位姿变换矩阵Tf,得到第三子位姿对应的第三位姿变换矩阵T3。
在一些实施例中,根据第二位姿变换矩阵T2,反解计算出第二关节、第三关节和第四关节的角度;根据第五位姿变换矩阵Tf,反解出第一关节的角度;根据第一关节、第二关节、第三关节和第四关节的角度,确定第三位姿变换矩阵T3。
在该步骤之前的规划算法,均未对θ1的值做出改动。根据第二位姿变换矩阵T2反解得到的θ2,θ3,θ4的值不变,根据第五位姿变换矩阵Tf,反解出θ1的值,其中,θ1的初值为为T2反解得到的θ1的值,末值为Tf反解得到的θ1的值。然后根据θ1,θ2,θ3,θ4的值,得到T1→T2规划算法输出的铲斗旋转中心的齐次变换矩阵T3。
在步骤750,根据第三位姿变换矩阵T3、第五位姿变换矩阵Tf以及第四关节的角度取值范围,得到第四子位姿对应的第四位姿变换矩阵T4。
在一些实施例中,根据第三位姿变换矩阵T3和第五位姿变换矩阵Tf,得到第二中间位姿T_mid2;根据第二中间位姿T_mid2,反解计算出第一关节、第二关节和第三关节的角度;根据第一关节、第二关节和第三关节的角度,正解出第四关节的角度;若正解出的第四关节的角度,满足角度取值范围,则根据第一关节、第二关节、第三关节和第四关节的角度,确定第四位姿变换矩阵T4。
如图13所示,该过程包括步骤1310-1380。
在步骤1310,输入挖斗的第三位姿变换矩阵T3、第五位姿变换矩阵Tf和物料不漏的挖斗角度区间S。
在步骤1320,通过二分法求取第二中间位姿T_mid2。
在步骤1330,根据第二中间位姿T_mid2,反解其他三个关节的角度θ1,θ2,θ3。
在步骤1340,根据θ1,θ2,θ3求正解,计算铲斗角度θ4。
在步骤1350,判断铲斗角度θ4是否负荷区间S,若是,则执行步骤1360,否则,执行步骤1370。
在步骤1360,根据已得到θ1,θ2,θ3,θ4的值,求出第四位姿变换矩阵T4。
在步骤1370,判断是否超出错误阈值,若是,则执行步骤1380,否则,继续执行步骤1320。
在步骤1380,规划失败。
具体算法实现过程如下所示:
在步骤760,利用直线运动规划算法,分别计算初始位姿变换矩阵T0到第一位姿变换矩阵T1之间各个关节的带有时间戳的角度序列、第一位姿变换矩阵T1到第二位姿变换矩阵T2之间各个关节的带有时间戳的角度序列、第二位姿变换矩阵T2到第三位姿变换矩阵T3之间各个关节带有时间戳的角度序列、第三位姿变换矩阵T3到第四位姿变换矩阵T4之间各个关节的带有时间戳的角度序列、以及第四位姿变换矩阵T4到第五位姿变换矩阵Tf之间各个关节的带有时间戳的角度序列,其中,每个关节在运动过程中满足对应关节的角度约束条件、速度约束条件和加速度约束条件。
给定的各个中间的齐次转换矩阵,并不是一步直达,为了满足各关节的速度和加速度约束,中间需要有很多中间矩阵,进而得到角度序列。该角度序列的初末值运用正运动学可得到T0、Tf。上述角度序列任意相邻两角度之间的时间间隔为tinterval。
在上述实施例中,在曲线运动规划中,进一步采用分段规划的思想,在保持铲斗物料不漏的前提下,首先从第一过渡点位姿处在垂直于地面的方向上最大限度的向目标位置移动,然后控制挖掘机回转关节旋转至目标角度,再继续在平行于地面的方向上最大限度的向目标位置移动,最后收敛到第二过渡点位姿。该规划方法能节省工作时间,提高工作效率。
在一些实施例中,对初始位姿变换矩阵T0到第一位姿变换矩阵T1之间各个关节的带有时间戳的角度序列、第一位姿变换矩阵T1到第二位姿变换矩阵T2之间各个关节的带有时间戳的角度序列、第二位姿变换矩阵T2到第三位姿变换矩阵T3之间各个关节带有时间戳的角度序列、第三位姿变换矩阵T3到第四位姿变换矩阵T4之间各个关节的带有时间戳的角度序列、以及第四位姿变换矩阵T4到第五位姿变换矩阵Tf之间各个关节的带有时间戳的角度序列,进行互补处理。
例如,最终的角度序列为上述各角度序列的顺序拼接,但有时为了提高执行效率,缩短执行时间,有些序列是有交叉的,但肯定会经过Ti,i={1,2,3,4})。比如执行T2→T3对应的θseq,3的过程中,仅θ1改变,而执行T1→T2对应的θseq,2、T3→T4对应的θseq,4的过程中,仅θ2,θ3,θ4改变,因此,这三个序列可以按照一定规则互补,达到同时进行的效果:θ1在按照θseq,3转动的同时,θ2,θ3,θ4按照θseq,2、θseq,4顺序进行,以使得铲斗的旋转中心先在垂直方向上接近末位置,然后在水平方向上接近。
下面将对在释放物料过程中,继续调用直线运动规划算法,根据第二过渡点位姿和铲斗末端位姿对挖掘机操作臂的直线运动进行规划进行介绍。
图14为本公开的挖掘机控制方法的另一些实施例的流程示意图。
在步骤1410,根据铲斗在卸料过程中的速度信息,对速度进行插值并进行归一化,得到第二速度序列。
其中,对速度进行插值并进行归一化的过程与步骤310类似,此处不再进一步阐述。
在步骤1420,依次按照第二速度序列,对挖掘机从第二过渡点位姿到末端位姿的铲斗的位移进行插值,得到第二位移序列,对铲斗的姿态进行插值,得到第二姿态序列。
对铲斗位移和姿态进行插值的过程与步骤320类似,此处不再进一步阐述。
在步骤1430,基于第二位移序列和第二姿态序列的组合,得到第二位姿旋转矩阵插值序列。
在步骤1440,根据第二位姿旋转矩阵插值序列以及控制关节角度时的时间间隔,得到各个关节的带有时间戳的角度序列,其中,每个关节在运动过程中满足对应关节的角度约束条件、速度约束条件和加速度约束条件。
该步骤1440与步骤340类似,此处不再进一步阐述。
本公开的上述实施例中,采用满足各关节物理约束的内容物运输运动规划算法,并采用分段规划的思想,将直线规划和空间曲线规划进行组合规划,在挖掘机和矿卡的配合工作空间中选择一系列过渡点,使用上述两种规划方式来组合规划,能够以最快的速度完成整个装卸货流程,提高工作效率。
图15为本公开的挖掘机控制装置的一些实施例的结构示意图,该挖掘机控制装置包括位姿确定模块1510、角度计算模块1520和控制模块1530。
位姿确定模块1510被配置为根据运输车位置和高度信息、以及挖掘机的位置信息,确定挖掘机从挖料到卸料完成过程中的初始位姿、第一过渡点位姿、第二过渡点位姿和末端位姿。
在一些实施例中,初始位姿为挖掘机的铲斗触地,未开始挖掘时的挖掘机的位姿;第一过渡点位姿为铲斗挖掘完毕时的挖掘机的位姿;第二过渡点位姿为铲斗移动到运输车上方,下降预定高度,处于静态并且未卸料时的挖掘机的位姿;以及末端位姿为铲斗卸料完毕时的挖掘机的位姿。
角度计算模块1520被配置为利用直线运动规划算法,计算挖掘机从初始位姿到第一过渡点位姿,每个关节在各时刻的第一角度信息;利用曲线运动规划算法,计算挖掘机从第一过渡点位姿到第二过渡点位姿,每个关节在各时刻的第二角度信息;利用直线运动规划算法,计算挖掘机从第二过渡点位姿到末端位姿,每个关节在各时刻的第三角度信息。
在一些实施例中,角度计算模块1520对初始位姿对应的位姿旋转矩阵和第一过渡点位姿对应的初始位姿变换矩阵进行插值处理,得到第一位姿旋转矩阵插值序列;以及根据第一位姿旋转矩阵插值序列以及控制关节角度时的时间间隔,得到各个关节的带有时间戳的角度序列,其中,每个关节在运动过程中满足对应关节的角度约束条件、速度约束条件和加速度约束条件。
根据铲斗在挖料过程中的速度信息,对速度进行插值并进行归一化,得到第一速度序列;依次按照第一速度序列,对挖掘机从初始位姿到第一过渡点位姿的铲斗的位移进行插值,得到第一位移序列,对铲斗的姿态进行插值,得到第一姿态序列;以及基于第一位移序列和第一姿态序列的组合,得到第一位姿旋转矩阵插值序列。
在一些实施例中,根据曲线运动规划算法,第一过渡点位姿到第二过渡点位姿之间被划分为第一子位姿、第二子位姿、第三子位姿和第四子位姿,其中,第一子位姿为铲斗从挖掘完毕规划运动到能够保持物料不漏状态时的位姿;第二子位姿为铲斗在保持物料不漏的前提下,在垂直于地面的方向上最大限度的移动到第一目标位置时的位姿;第三子位姿为挖掘机的旋转体与车体之间的关节运动到目标关节角度时的铲斗的位姿;以及第四子位姿为铲斗在保持物料不漏的前提下,在垂直于地面的方向上最大限度的移动到第二目标位置,且铲斗处于运动状态时的位姿。
挖掘机包括第一关节、第二关节、第三关节和第四关节,其中,第一关节为挖掘机的旋转体与车体之间的关节,第二关节为旋转体与挖掘机的大臂之间的关节,第三关节为大臂与挖掘机的小臂之间的关节,第四关节为挖掘机的小臂与铲斗之间的关节。
角度计算模块1520确定铲斗能够保持物料不漏时,第四关节的角度取值范围;根据第一过渡点位姿对应的初始位姿变换矩阵以及第四关节的角度取值范围,得到第一子位姿对应的第一位姿变换矩阵;根据第一位姿变换矩阵、第二过渡点位姿对应的第五位姿变换矩阵、以及第四关节的角度取值范围,得到第二子位姿对应的第二位姿变换矩阵;根据第二位姿变换矩阵和第五位姿变换矩阵,得到第三子位姿对应的第三位姿变换矩阵;根据第三位姿变换矩阵、第五位姿变换矩阵以及第四关节的角度取值范围,得到第四子位姿对应的第四位姿变换矩阵;利用直线运动规划算法,分别计算初始位姿变换矩阵到第一位姿变换矩阵之间各个关节的带有时间戳的角度序列、第一位姿变换矩阵到第二位姿变换矩阵之间各个关节的带有时间戳的角度序列、第二位姿变换矩阵到第三位姿变换矩阵之间各个关节带有时间戳的角度序列、第三位姿变换矩阵到第四位姿变换矩阵之间各个关节的带有时间戳的角度序列、以及第四位姿变换矩阵到第五位姿变换矩阵之间各个关节的带有时间戳的角度序列,其中,每个关节在运动过程中满足对应关节的角度约束条件、速度约束条件和加速度约束条件。
例如,根据第一过渡点位姿对应的初始位姿变换矩阵,反解计算出挖掘机每个关节的初始角度;若预定时刻第四关节的角度位于角度取值范围,则保持第一关节的角度,若预定时刻第四关节的角度未位于角度取值范围,则调整第四关节的角度至角度取值范围,并求解第一关节、第二关节和第三关节的角度;以及根据第一关节、第二关节、第三关节和第四关节的角度,确定第一位姿变换矩阵。
再例如,根据第一位姿变换矩阵和第五位姿变换矩阵,得到第一中间位姿;根据第一中间位姿,反解计算出第一关节、第二关节和第三关节的角度;根据第一关节、第二关节和第三关节的角度,正解出第四关节的角度;若正解出的第四关节的角度,满足角度取值范围,则根据第一关节、第二关节、第三关节和第四关节的角度,确定第二位姿变换矩阵。
再例如,根据第二位姿变换矩阵,反解计算出第二关节、第三关节和第四关节的角度;根据第五位姿变换矩阵,反解出第一关节的角度;根据第一关节、第二关节、第三关节和第四关节的角度,确定第三位姿变换矩阵。
再例如,根据第三位姿变换矩阵和第五位姿变换矩阵,得到第二中间位姿;根据第二中间位姿,反解计算出第一关节、第二关节和第三关节的角度;根据第一关节、第二关节和第三关节的角度,正解出第四关节的角度;若正解出的第四关节的角度,满足角度取值范围,则根据第一关节、第二关节、第三关节和第四关节的角度,确定第四位姿变换矩阵。
在一些实施例中,角度计算模块1520对初始位姿变换矩阵到第一位姿变换矩阵之间各个关节的带有时间戳的角度序列、第一位姿变换矩阵到第二位姿变换矩阵之间各个关节的带有时间戳的角度序列、第二位姿变换矩阵到第三位姿变换矩阵之间各个关节带有时间戳的角度序列、第三位姿变换矩阵到第四位姿变换矩阵之间各个关节的带有时间戳的角度序列、以及第四位姿变换矩阵到第五位姿变换矩阵之间各个关节的带有时间戳的角度序列,进行互补处理。
在一些实施例中,角度计算模块1520对第二过渡点位姿对应的第五位姿变换矩阵和末端位姿对应的末端位姿变换矩阵进行插值处理,得到第二位姿旋转矩阵插值序列;以及根据第二位姿旋转矩阵插值序列以及控制关节角度时的时间间隔,得到各个关节的带有时间戳的角度序列,其中,每个关节在运动过程中满足对应关节的角度约束条件、速度约束条件和加速度约束条件。
根据铲斗在卸料过程中的速度信息,对速度进行插值并进行归一化,得到第二速度序列;依次按照第二速度序列,对挖掘机从第二过渡点位姿到末端位姿的铲斗的位移进行插值,得到第二位移序列,对铲斗的姿态进行插值,得到第二姿态序列;以及基于第二位移序列和第二姿态序列的组合,得到第二位姿旋转矩阵插值序列。
控制模块1530被配置为基于第一角度信息、第二角度信息和第三角度信息,控制挖掘机的各个关节运动,以执行挖掘作业。
在上述实施例中,提出满足各关节物理约束的物料运输运动规划算法,同时采用分段规划的思想,直线规划和空间曲线规划进行组合规划,在挖掘机和运输车的配合工作空间中选择一系列过渡点,使用上述两种规划方式来组合规划,能够以最快的速度完成整个装卸货流程,实现复杂的自动化任务,提高了工作效率。
图16为本公开的挖掘机控制装置的另一些实施例的结构示意图,该挖掘机控制装置包括存储器1610和处理器1620。其中:存储器1610可以是磁盘、闪存或其它任何非易失性存储介质。存储器1610用于存储上述实施例中的指令。处理器1620耦接至存储器1610,可以作为一个或多个集成电路来实施,例如微处理器或微控制器。该处理器1620用于执行存储器中存储的指令。
在该实施例中,通过存储器存储数据指令,再通过处理器处理上述指令,能够针对复杂和恶劣的工作环境,降低操作者的作业强度,提高挖掘机的作业效率。
图17为本公开的挖掘机控制装置的另一些实施例的结构示意图,该挖掘机控制装置包括挖掘机协同作业管理模块1710、以太网通信模块1720、CAN总线通信模块1730、机械臂位姿定位模块1740、中央处理器1750、动力单元模块1760、机械臂电控制单元模块1770、轨迹规划模块1780。其中,挖掘机协同作业管理模块1710与轨迹规划模块1780运行在中央处理器1750上。挖掘机协同作业管理模块1710与轨迹规划模块1780之间可以数据共享。挖掘机协同作业管理模块1710通过以太网通信模块1720建立与矿卡的通信连接,获取矿卡的位姿数据、车体规格数据、矿卡运行状态等数据。轨迹规划模块1780可以接受挖掘机与矿卡的位姿数据、挖掘机规格数据、机械臂各关节及连杆角度数据。挖掘机的位姿数据、挖掘机规格数据、机械臂各关节及连杆角度数据均是从机械臂位姿定位模块1740获取。中央处理器1750具有CAN总线及以太网通信接口。中央处理器1750根据轨迹规划模块1780输出的轨迹规划结果通过CAN总线通信模块1730传输给机械臂电控单元模块1770,机械臂电控单元模块1770将控制信息传递给动力系统,驱动机械臂按照规划的动作运行。
在本公开的一些实施例中,保护一种挖掘机,该挖掘机包括上述实施例中的挖掘机控制装置,将挖掘机控制装置部署到挖掘机上后,该挖掘机可以实现复杂的自动化任务,具有较好的工程实用化价值,能够极大解放人力,提高生产效率。
在一些具体实施例中,如图18所示,挖掘机停在适合给矿卡装载的位置,司机通过操作机器完成挖掘动作。司机按下自动搬运按钮。轨迹规划单元根据挖掘机与矿卡的位姿数据、挖掘机规格数据、机械臂各关节及连杆角度数据、矿卡货箱高度,初始位姿,按照本申请的运动规划方法,确定第一过渡点、第二过渡点、末尾位姿点。并进行分段规划,输出带有时间戳的角度序列。角度序列数据通过CAN总线通信单元传输给机械臂电控单元模块,机械臂电控单元模块将控制信息传递给动力系统,驱动机械臂按照规划的动作运行。至此完成搬运、卸料动作。
在另一些实施例中,一种计算机可读存储介质,其上存储有计算机程序指令,该指令被处理器执行时实现上述实施例中的方法的步骤。本领域内的技术人员应明白,本公开的实施例可提供为方法、装置、或计算机程序产品。因此,本公开可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本公开可采用在一个或多个其中包含有计算机可用程序代码的计算机可用非瞬时性存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本公开是参照根据本公开实施例的方法、设备(系统)和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
至此,已经详细描述了本公开。为了避免遮蔽本公开的构思,没有描述本领域所公知的一些细节。本领域技术人员根据上面的描述,完全可以明白如何实施这里公开的技术方案。
虽然已经通过示例对本公开的一些特定实施例进行了详细说明,但是本领域的技术人员应该理解,以上示例仅是为了进行说明,而不是为了限制本公开的范围。本领域的技术人员应该理解,可在不脱离本公开的范围和精神的情况下,对以上实施例进行修改。本公开的范围由所附权利要求来限定。
Claims (18)
1.一种挖掘机控制方法,包括:
根据运输车位置和高度信息、以及挖掘机的位置信息,确定所述挖掘机从挖料到卸料完成过程中的初始位姿、第一过渡点位姿、第二过渡点位姿和末端位姿;
利用直线运动规划算法,计算所述挖掘机从所述初始位姿到所述第一过渡点位姿,每个关节在各时刻的第一角度信息;
利用曲线运动规划算法,计算所述挖掘机从所述第一过渡点位姿到所述第二过渡点位姿,每个关节在各时刻的第二角度信息;
利用直线运动规划算法,计算所述挖掘机从所述第二过渡点位姿到所述末端位姿,每个关节在各时刻的第三角度信息;以及
基于所述第一角度信息、所述第二角度信息和所述第三角度信息,控制所述挖掘机的各个关节运动,以执行挖掘作业。
2.根据权利要求1所述的挖掘机控制方法,其中,
所述初始位姿为所述挖掘机的铲斗触地,未开始挖掘时的所述挖掘机的位姿;
所述第一过渡点位姿为所述铲斗挖掘完毕时的所述挖掘机的位姿;
所述第二过渡点位姿为所述铲斗移动到所述运输车上方,下降预定高度,处于静态并且未卸料时的所述挖掘机的位姿;以及
所述末端位姿为所述铲斗卸料完毕时的所述挖掘机的位姿。
3.根据权利要求2所述的挖掘机控制方法,其中,利用直线运动规划算法,计算所述挖掘机从所述初始位姿到所述第一过渡点位姿,每个关节在各时刻的第一角度信息包括:
对所述初始位姿对应的位姿旋转矩阵和所述第一过渡点位姿对应的初始位姿变换矩阵进行插值处理,得到第一位姿旋转矩阵插值序列;以及
根据所述第一位姿旋转矩阵插值序列以及控制关节角度时的时间间隔,得到各个关节的带有时间戳的角度序列,其中,每个关节在运动过程中满足对应关节的角度约束条件、速度约束条件和加速度约束条件。
4.根据权利要求3所述的挖掘机控制方法,其中,对所述初始位姿对应的位姿旋转矩阵和所述第一过渡点位姿对应的初始位姿变换矩阵进行插值处理,得到第一位姿旋转矩阵插值序列包括:
根据所述铲斗在挖料过程中的速度信息,对速度进行插值并进行归一化,得到第一速度序列;
依次按照所述第一速度序列,对所述挖掘机从所述初始位姿到所述第一过渡点位姿的所述铲斗的位移进行插值,得到第一位移序列,对所述铲斗的姿态进行插值,得到第一姿态序列;以及
基于所述第一位移序列和所述第一姿态序列的组合,得到所述第一位姿旋转矩阵插值序列。
5.根据权利要求2至4任一所述的挖掘机控制方法,其中,
根据曲线运动规划算法,所述第一过渡点位姿到所述第二过渡点位姿之间被划分为第一子位姿、第二子位姿、第三子位姿和第四子位姿,其中,
所述第一子位姿为所述铲斗从挖掘完毕规划运动到能够保持物料不漏状态时的位姿;
所述第二子位姿为所述铲斗在保持物料不漏的前提下,在垂直于地面的方向上最大限度的移动到第一目标位置时的位姿;
所述第三子位姿为所述挖掘机的旋转体与车体之间的关节运动到目标关节角度时的所述铲斗的位姿;以及
所述第四子位姿为所述铲斗在保持物料不漏的前提下,在垂直于地面的方向上最大限度的移动到第二目标位置,且所述铲斗处于运动状态时的位姿。
6.根据权利要求5所述的挖掘机控制方法,其中,所述挖掘机包括第一关节、第二关节、第三关节和第四关节,其中,所述第一关节为所述挖掘机的旋转体与车体之间的关节,所述第二关节为所述旋转体与所述挖掘机的大臂之间的关节,所述第三关节为所述大臂与所述挖掘机的小臂之间的关节,所述第四关节为所述挖掘机的小臂与所述铲斗之间的关节。
7.根据权利要求6所述的挖掘机控制方法,其中,利用曲线运动规划算法,计算从所述第一过渡点位姿到所述第二过渡点位姿,所述挖掘机每个关节在各时刻的第二角度信息包括:
确定所述铲斗能够保持物料不漏时,所述第四关节的角度取值范围;
根据所述第一过渡点位姿对应的初始位姿变换矩阵以及所述第四关节的角度取值范围,得到所述第一子位姿对应的第一位姿变换矩阵;
根据第一位姿变换矩阵、所述第二过渡点位姿对应的第五位姿变换矩阵、以及所述第四关节的角度取值范围,得到所述第二子位姿对应的第二位姿变换矩阵;
根据所述第二位姿变换矩阵和所述第五位姿变换矩阵,得到所述第三子位姿对应的第三位姿变换矩阵;
根据所述第三位姿变换矩阵、所述第五位姿变换矩阵以及所述第四关节的角度取值范围,得到所述第四子位姿对应的第四位姿变换矩阵;以及
利用直线运动规划算法,分别计算所述初始位姿变换矩阵到所述第一位姿变换矩阵之间各个关节的带有时间戳的角度序列、所述第一位姿变换矩阵到所述第二位姿变换矩阵之间各个关节的带有时间戳的角度序列、所述第二位姿变换矩阵到所述第三位姿变换矩阵之间各个关节带有时间戳的角度序列、所述第三位姿变换矩阵到所述第四位姿变换矩阵之间各个关节的带有时间戳的角度序列、以及所述第四位姿变换矩阵到所述第五位姿变换矩阵之间各个关节的带有时间戳的角度序列,其中,每个关节在运动过程中满足对应关节的角度约束条件、速度约束条件和加速度约束条件。
8.根据权利要求7所述的挖掘机控制方法,其中,根据所述第一过渡点位姿对应的初始位姿变换矩阵以及所述第四关节的角度取值范围,得到所述第一子位姿对应的第一位姿变换矩阵包括:
根据所述第一过渡点位姿对应的初始位姿变换矩阵,反解计算出所述挖掘机每个关节的初始角度;
若预定时刻所述第四关节的角度位于所述角度取值范围,则保持所述第一关节的角度,若所述预定时刻所述第四关节的角度未位于所述角度取值范围,则调整所述第四关节的角度至所述角度取值范围,并求解所述第一关节、所述第二关节和所述第三关节的角度;以及
根据所述第一关节、所述第二关节、所述第三关节和所述第四关节的角度,确定所述第一位姿变换矩阵。
9.根据权利要求7所述的挖掘机控制方法,其中,根据第一位姿变换矩阵、所述第五位姿变换矩阵、以及所述第四关节的角度取值范围,得到所述第二位姿变换矩阵包括:
根据所述第一位姿变换矩阵和所述第五位姿变换矩阵,得到第一中间位姿;
根据所述第一中间位姿,反解计算出所述第一关节、所述第二关节和所述第三关节的角度;
根据所述第一关节、所述第二关节和所述第三关节的角度,正解出所述第四关节的角度;以及
若正解出的所述第四关节的角度,满足所述角度取值范围,则根据所述第一关节、所述第二关节、所述第三关节和所述第四关节的角度,确定所述第二位姿变换矩阵。
10.根据权利要求7所述的挖掘机控制方法,其中,根据所述第二位姿变换矩阵和所述第五位姿变换矩阵,得到所述第三位姿变换矩阵包括:
根据所述第二位姿变换矩阵,反解计算出所述第二关节、所述第三关节和所述第四关节的角度;
根据所述第五位姿变换矩阵,反解出所述第一关节的角度;以及
根据所述第一关节、所述第二关节、所述第三关节和所述第四关节的角度,确定所述第三位姿变换矩阵。
11.根据权利要求7所述的挖掘机控制方法,其中,根据所述第三位姿变换矩阵、所述第五位姿变换矩阵以及所述第四关节的角度取值范围,得到所述第四位姿变换矩阵包括:
根据所述第三位姿变换矩阵和所述第五位姿变换矩阵,得到第二中间位姿;
根据所述第二中间位姿,反解计算出所述第一关节、所述第二关节和所述第三关节的角度;
根据所述第一关节、所述第二关节和所述第三关节的角度,正解出所述第四关节的角度;以及
若正解出的所述第四关节的角度,满足所述角度取值范围,则根据所述第一关节、所述第二关节、所述第三关节和所述第四关节的角度,确定所述第四位姿变换矩阵。
12.根据权利要求7所述的挖掘机控制方法,还包括:
对所述初始位姿变换矩阵到所述第一位姿变换矩阵之间各个关节的带有时间戳的角度序列、所述第一位姿变换矩阵到所述第二位姿变换矩阵之间各个关节的带有时间戳的角度序列、所述第二位姿变换矩阵到所述第三位姿变换矩阵之间各个关节带有时间戳的角度序列、所述第三位姿变换矩阵到所述第四位姿变换矩阵之间各个关节的带有时间戳的角度序列、以及所述第四位姿变换矩阵到所述第五位姿变换矩阵之间各个关节的带有时间戳的角度序列,进行互补处理。
13.根据权利要求2至4任一所述的挖掘机控制方法,其中,利用直线运动规划算法,计算所述挖掘机从所述第二过渡点位姿到所述末端位姿,每个关节在各时刻的第三角度信息包括:
对所述第二过渡点位姿对应的第五位姿变换矩阵和所述末端位姿对应的末端位姿变换矩阵进行插值处理,得到第二位姿旋转矩阵插值序列;以及
根据所述第二位姿旋转矩阵插值序列以及控制关节角度时的时间间隔,得到各个关节的带有时间戳的角度序列,其中,每个关节在运动过程中满足对应关节的角度约束条件、速度约束条件和加速度约束条件。
14.根据权利要求13所述的挖掘机控制方法,其中,对所述第二过渡点位姿对应的第五位姿变换矩阵和所述末端位姿对应的末端位姿变换矩阵进行插值处理,得到第二位姿旋转矩阵插值序列包括:
根据所述铲斗在卸料过程中的速度信息,对速度进行插值并进行归一化,得到第二速度序列;
依次按照所述第二速度序列,对所述挖掘机从所述第二过渡点位姿到所述末端位姿的所述铲斗的位移进行插值,得到第二位移序列,对所述铲斗的姿态进行插值,得到第二姿态序列;以及
基于所述第二位移序列和所述第二姿态序列的组合,得到所述第二位姿旋转矩阵插值序列。
15.一种挖掘机控制装置,包括:
位姿确定模块,被配置为根据运输车位置和高度信息、以及挖掘机的位置信息,确定所述挖掘机从挖料到卸料完成过程中的初始位姿、第一过渡点位姿、第二过渡点位姿和末端位姿;
角度计算模块,被配置为利用直线运动规划算法,计算所述挖掘机从所述初始位姿到所述第一过渡点位姿,每个关节在各时刻的第一角度信息;利用曲线运动规划算法,计算所述挖掘机从所述第一过渡点位姿到所述第二过渡点位姿,每个关节在各时刻的第二角度信息;利用直线运动规划算法,计算所述挖掘机从所述第二过渡点位姿到所述末端位姿,每个关节在各时刻的第三角度信息;以及
控制模块,被配置为基于所述第一角度信息、所述第二角度信息和所述第三角度信息,控制所述挖掘机的各个关节运动,以执行挖掘作业。
16.一种挖掘机控制装置,包括:
存储器;以及
耦接至所述存储器的处理器,所述处理器被配置为基于存储在所述存储器的指令执行如权利要求1至14任一项所述的挖掘机控制方法。
17.一种挖掘机,包括:
权利要求15或16所述的挖掘机控制装置。
18.一种非瞬时性计算机可读存储介质,其上存储有计算机程序指令,该指令被处理器执行时实现权利要求1至14任一项所述的挖掘机控制方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211445403.8A CN115748879A (zh) | 2022-11-18 | 2022-11-18 | 挖掘机控制方法、装置、挖掘机和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211445403.8A CN115748879A (zh) | 2022-11-18 | 2022-11-18 | 挖掘机控制方法、装置、挖掘机和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115748879A true CN115748879A (zh) | 2023-03-07 |
Family
ID=85373165
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211445403.8A Pending CN115748879A (zh) | 2022-11-18 | 2022-11-18 | 挖掘机控制方法、装置、挖掘机和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115748879A (zh) |
-
2022
- 2022-11-18 CN CN202211445403.8A patent/CN115748879A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102024701B1 (ko) | 작업 기계 | |
AU2018211264B2 (en) | System and method for controlling earthmoving machines | |
AU2010265789B2 (en) | Autonomous loading | |
CN112962709B (zh) | 工程机械设备及其作业轨迹规划方法和系统、存储介质 | |
US20230059996A1 (en) | Mine vehicle safety control | |
US20230175232A1 (en) | Autonomous loading operations of a mining machine | |
CN105016099A (zh) | 链斗式连续型卸船机全自动智能控制系统 | |
CN114482183A (zh) | 一种挖掘机械的控制方法和挖掘机械 | |
CN115330055A (zh) | 针对各种任务的自主机械的分层规划 | |
Zhang et al. | Multi-objective excavation trajectory optimization for unmanned electric shovels based on pseudospectral method | |
CN113338371B (zh) | 挖掘机平地控制方法及系统 | |
Shao et al. | Automatic excavation planning of hydraulic excavator | |
CN115748879A (zh) | 挖掘机控制方法、装置、挖掘机和存储介质 | |
CN111595340B (zh) | 路径确定方法、装置及电子设备 | |
Jin et al. | Blended shared control with subgoal adjustment | |
CN115302498A (zh) | 工程机械作业装置连续轨迹位姿的规划方法、规划装置、电子设备及存储介质 | |
CN110127385B (zh) | 堆取料机最优自动对位策略判定方法及系统 | |
US20220307235A1 (en) | Virtual field-based track protection for a mining machine | |
US20220307236A1 (en) | Virtual track model for a mining machine | |
US20240052603A1 (en) | Work control method, work control system, and target point setting apparatus | |
WO2023106265A1 (ja) | 作業機械 | |
CN113323067B (zh) | 用于工程机械的控制方法、处理器、装置及工程机械 | |
EP4261646A1 (en) | Scanner emulation for mining vehicle | |
Du et al. | Development of a learning capability in virtual operator models | |
EP4177405A1 (en) | Autonomous mining vehicle control |
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 |