CN111958584A - 轨迹规划方法、装置及系统 - Google Patents

轨迹规划方法、装置及系统 Download PDF

Info

Publication number
CN111958584A
CN111958584A CN202010578867.0A CN202010578867A CN111958584A CN 111958584 A CN111958584 A CN 111958584A CN 202010578867 A CN202010578867 A CN 202010578867A CN 111958584 A CN111958584 A CN 111958584A
Authority
CN
China
Prior art keywords
track
current
target
instruction
power system
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
Application number
CN202010578867.0A
Other languages
English (en)
Inventor
朱文飞
何德裕
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Robotics Robotics Shenzhen Ltd
Original Assignee
Robotics Robotics Shenzhen Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Robotics Robotics Shenzhen Ltd filed Critical Robotics Robotics Shenzhen Ltd
Publication of CN111958584A publication Critical patent/CN111958584A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Manipulator (AREA)

Abstract

本申请涉及一种轨迹规划方法,所述方法包括:获取智能体的初始和目标位置信息;获取智能动力系统行为模型;及将所述初始和目标位置信息输入智能动力系统行为模型,输出规划轨迹指令。采用本发明的技术方案,通过采用基于轨迹规划的智能动力系统行为模型,输出规划轨迹,因此可以提高轨迹规划的精度;另外,在保证精度的前提下还可以提高轨迹规划的泛化能力。

Description

轨迹规划方法、装置及系统
技术领域
本申请涉及人工智能技术领域,特别是涉及一种轨迹规划方法、装置及系统。
背景技术
随着科技的发展,人们对基于人工智能实现智能体的轨迹规划有了更多的需求;现有的基于人工智能的轨迹规划存在精度低、泛化性差等等缺陷。
发明内容
基于此,本发明提供一种智能体轨迹规划方法、装置及系统。
本发明一种轨迹规划方法,所述方法包括:获取智能体的初始和目标位置信息;获取智能动力系统行为模型;及将所述初始和目标位置信息输入智能动力系统行为模型,输出规划轨迹指令。
优选的,当所述智能体为机械手,所述规划轨迹指令为:由多个离散点组成的规划轨迹中的每个离散点对应的运动加速度和/或角加速度。
优选的,所述将所述初始和目标位置信息输入智能动力系统行为模型,输出规划轨迹指令包括:将当前参数与多个参考轨迹的多个参考参数进行匹配,以与所述当前参数最接近的所述参考参数对应的所述参考轨迹作为目标参考轨迹;基于所述目标参考轨迹,将所述初始和所述目标位置信息输入所述智能动力系统行为模型,输出规划轨迹指令。
本发明提供一种轨迹规划方法,所述方法包括:获取智能体的目标位置信息;获取所述智能体的当前轨迹;获取智能动力系统行为模型;及将所述当前轨迹和所述目标位置信息输入所述智能动力系统行为模型,输出规划轨迹指令。
优选的,当所述智能体为机械手,所述规划轨迹指令为:所述智能体下一时刻对应的运动加速度和/或角加速度。
优选的,所述将所述当前轨迹和所述目标位置信息输入所述智能动力系统行为模型,输出规划轨迹指令包括:将当前参数与多个参考轨迹的多个参考参数进行匹配,以与所述当前参数最接近的所述参考参数对应的所述参考轨迹作为目标参考轨迹;基于所述目标参考轨迹,将所述当前轨迹和所述目标位置信息输入所述智能动力系统行为模型,输出规划轨迹指令。
本发明提供一种轨迹规划方法,所述方法包括:获取智能体的参考辅助参数;获取所述智能体的目标位置信息;获取所述智能体的当前辅助参数;计算所述参考辅助参数和所述当前辅助参数之间的误差;获取所述智能体的当前轨迹;及将所述当前误差、所述当前轨迹和所述目标位置信息输入所述智能动力系统行为模型,输出规划轨迹指令和/或修正轨迹指令。
优选的,所述将所述当前误差、所述当前轨迹和所述目标位置信息输入所述智能动力系统行为模型,输出规划轨迹指令和/或修正轨迹指令包括:将当前参数与多个参考轨迹的多个参考参数进行匹配,以与所述当前参数最接近的所述参考参数对应的所述参考轨迹作为目标参考轨迹;基于所述目标参考轨迹,将所述当前误差、所述当前轨迹和所述目标位置信息输入所述智能动力系统行为模型,输出规划轨迹指令和/或修正轨迹指令。
优选的,所述获取智能体的参考辅助参数包括:获取所述智能体的初始和目标位置信息;获取智能体智能动力系统行为模型;将所述初始和目标位置信息输入所述智能动力系统行为模型,输出规划轨迹指令的参考指令;及获取所述智能体执行所述参考指令过程中的参考辅助参数。
优选的,当所述智能体为机械手,所述规划轨迹指令和/或所述修正轨迹指令为:由多个离散点组成的规划轨迹和/或修正轨迹中的每个离散点对应的智能体的运动加速度和/或角加速度。
本发明提供一种轨迹规划方法,所述方法包括:以目标物位于目标区域内为假设条件,生成调整指令,以控制所述目标物从第一位置运动到第二位置;所述第二位置为满足预设装配条件的位置;获取所述目标物从所述第一位置运动到所述第二位置的预判参数;根据所述预判参数,判断所述目标物是否位于目标区域内;若否,以所述第二位置为基准,在沿辅助方向的预设范围内采集采样点;从所述采样点中筛选出位于目标区域内的采样点,以控制所述目标物运动到所述新的第二位置;基于智能动力系统行为模型,输出第一规划轨迹指令;若是,基于所述智能动力系统行为模型,输出第二规划轨迹指令。
优选的,所述基于智能动力系统行为模型,输出第一规划轨迹指令包括:将当前参数与多个参考轨迹的多个参考参数进行匹配,以与所述当前参数最接近的所述参考参数对应的所述参考轨迹作为目标参考轨迹;基于所述智能动力系统行为模型的所述目标参考轨迹,输出第一规划轨迹指令;或所述基于智能动力系统行为模型,输出第二规划轨迹指令包括:将当前参数与多个参考轨迹的多个参考参数进行匹配,以与所述当前参数最接近的所述参考参数对应的所述参考轨迹作为目标参考轨迹;基于所述智能动力系统行为模型的所述目标参考轨迹,输出所述第二规划轨迹指令。
优选的,所述以目标物位于目标区域内为假设条件,生成调整指令包括:基于沿基准方向的力反馈,生成沿基准方向的基准运动指令,使得所述目标物首先由所述第一位置运动到第三位置;所述基准运动指令为控制所述目标物沿基准方向运动的指令;生成辅助运动指令和基准运动指令,使得所述目标物从所述第三位置运动到所述第二位置;辅助运动指令为控制所述目标物沿辅助方向运动的指令;和/或
所述从采样点中筛选出位于目标区域内的采样点,以控制所述目标物运动到所述新的第二位置包括:获取当前采样点;生成控制指令,以控制目标物移动到新的所述第一位置;所述新的所述第一位置为所述当前采样点的位置;重复执行如下所述步骤:以目标物位于目标区域内为假设条件,生成调整指令,以控制所述目标物从第一位置运动到第二位置;获取所述目标物从所述第一位置运动到所述第二位置的预判参数;根据所述预判参数,判断所述目标物是否位于目标区域内;直到所述判断结果为是为止,以此时的所述第二位置为所述新的所述第二位置。
本发明提供一种轨迹规划方法,所述方法包括:获取智能体的目标位置信息;获取所述智能体的当前轨迹;获取或生成障碍物的当前障碍信息;及将所述当前障碍信息、所述当前轨迹和所述目标位置信息输入所述智能动力系统行为模型,输出规划轨迹指令和/或修正轨迹指令。
优选的,所述将所述当前障碍信息、所述当前轨迹和所述目标位置信息输入所述智能动力系统行为模型,输出规划轨迹指令和/或修正轨迹指令包括:将当前参数与多个参考轨迹的多个参考参数进行匹配,以与所述当前参数最接近的所述参考参数对应的所述参考轨迹作为目标参考轨迹;基于所述目标参考轨迹,将所述当前障碍信息、所述当前轨迹和所述目标位置信息输入所述智能动力系统行为模型,输出规划轨迹指令和/或修正轨迹指令。
本发明提供一种轨迹规划方法,所述方法包括:获取智能体的目标位置信息;获取所述智能体的当前轨迹;其中,所述当前轨迹至少包括当前位置信息;根据所述当前位置信息,判断所述智能体是否位于抵抗域内;若是,根据当前位置增量信息,偏转所述目标位置信息,生成新目标位置信息;将所述当前轨迹和所述新目标位置信息输入智能动力系统行为模型,生成新规划轨迹指令;及若否,将所述当前轨迹和所述目标位置信息输入所述智能动力系统行为模型, 输出规划轨迹指令。
优选的,所述将所述当前轨迹和所述新目标位置信息输入智能动力系统行为模型,生成新规划轨迹指令包括:将当前参数与多个参考轨迹的多个参考参数进行匹配,以与当前参数最接近的参考参数对应的参考轨迹作为目标参考轨迹;基于所述目标参考轨迹,将所述当前轨迹和所述新目标位置信息输入智能动力系统行为模型,生成新规划轨迹指令;或将所述当前轨迹和所述目标位置信息输入所述智能动力系统行为模型,输出规划轨迹指令包括:将当前参数与多个参考轨迹的多个参考参数进行匹配,以与当前参数最接近的参考参数对应的参考轨迹作为目标参考轨迹;基于所述目标参考轨迹,将所述当前轨迹和所述目标位置信息输入所述智能动力系统行为模型,输出规划轨迹指令。
本发明提供一种轨迹规划装置,所述装置包括:位置信息获取模块,用于获取智能体的初始和目标位置信息;行为模型获取模块,用于获取所述智能动力系统行为模型;及规划轨迹生成模块,用于将所述初始和目标位置信息,输入所述智能动力系统行为模型,输出规划轨迹指令;或
目标位置获取模块,用于获取智能体的目标位置信息;当前轨迹获取模块,用于获取所述智能体的当前轨迹;行为模型获取模块,用于获取智能动力系统行为模型;及规划轨迹生成模块,用于将所述当前轨迹和所述目标位置信息输入所述智能动力系统行为模型,输出规划轨迹指令;或
参考辅助参数获取模块,用于获取智能体的参考辅助参数;目标位置获取模块,用于获取所述智能体的目标位置信息;当前辅助参数获取模块,用于获取所述智能体的当前辅助参数;误差计算模块,用于计算所述参考辅助参数和所述当前辅助参数之间的误差;当前轨迹获取模块,用于获取所述智能体的当前轨迹;及轨迹生成模块,用于将所述当前误差、所述当前轨迹和所述目标位置信息输入所述智能动力系统行为模型,输出规划轨迹指令和/或修正轨迹指令;或
指令生成模块,用于以目标物位于目标区域内为假设条件,生成调整指令,以控制所述目标物从第一位置运动到第二位置;所述第二位置为满足预设装配条件的位置;参数获取模块,用于获取所述目标物从所述第一位置运动到所述第二位置的预判参数;目标判断模块,用于根据所述预判参数,判断所述目标物是否位于目标区域内;位置生成模块,用于若否,以所述第二位置为基准,在沿辅助方向的预设范围内采集采样点;从所述采样点中筛选出位于目标区域内的采样点,以控制所述目标物运动到所述新的第二位置;第一轨迹生成模块,用于基于智能动力系统行为模型,输出第一规划轨迹指令;第二轨迹生成模块,用于若是,基于所述智能动力系统行为模型,输出第二规划轨迹指令;或
目标位置获取模块,用于获取智能体的目标位置信息;当前轨迹获取模块,用于获取所述智能体的当前轨迹;当前障碍信息获取或生成模块,用于获取或生成当前障碍信息;行为模型获取模块,用于获取智能动力系统行为模型;及轨迹生成模块,用于将所述当前障碍信息、所述当前轨迹和所述目标位置信息输入所述智能动力系统行为模型,输出规划轨迹指令和/或修正轨迹指令;或
目标位置获取模块,用于获取智能体的目标位置;当前轨迹获取模块,用于获取所述智能体的当前轨迹;其中,所述当前轨迹至少包括当前位置信息;判断模块,根据所述当前位置信息,判断所述智能体是否位于抵抗域内;新目标位置生成模块,若是,根据当前位置增量信息,偏转所述目标位置信息,生成新目标位置信息;新规划轨迹生成模块,将所述当前轨迹和所述新目标位置信息输入智能动力系统行为模型,生成新规划轨迹指令;及规划轨迹生成模块, 若否,将所述当前轨迹和所述目标位置输入所述智能动力系统行为模型,输出规划轨迹指令。
本发明提供一种智能体系统,所述系统包括控制装置和智能体;所述控制装置,用于实现权利上面任一项所述的轨迹规划方法;所述智能体,用于根据所述控制装置的控制执行对应的轨迹运动。
本发明提供一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上面任一项所述的轨迹规划方法。
本发明提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上面任一项所述的轨迹规划方法。
采用本发明的技术方案,通过采用基于轨迹规划的智能动力系统行为模型,输出规划轨迹,因此可以提高轨迹规划的精度;另外,在保证精度的前提下还可以提高轨迹规划的泛化能力。
附图说明
图1为一个实施例中轨迹规划训练的第一流程示意图;
图2为一个实施例中轨迹规划的第一流程示意图;
图3为一个实施例中轨迹规划的第二流程示意图;
图4为一个实施例中轨迹规划的第三流程示意图;
图5为一个实施例中轨迹规划中的获取智能体的参考辅助参数的第一流程示意图;
图6为一个实施例中轨迹规划的第四流程示意图;
图7为一个实施例中轨迹规划的第五流程示意图;
图8为一个实施例中智能体系统的第一结构示意图;
图9为一个实施例中智能体系统的第二结构示意图;
图10为一个实施例中智能体系统的第三结构示意图;
图11为一个实施例中轨迹规划训练装置的第一结构框图;
图12为一个实施例中轨迹规划装置的第一结构框图;
图13为一个实施例中轨迹规划装置的第二结构框图;
图14为一个实施例中轨迹规划装置的第三结构框图;
图15为一个实施例中轨迹规划装置的参考辅助参数获取模块的第一结构框图;
图16为一个实施例中轨迹规划装置的第四结构框图;
图17为一个实施例中轨迹规划装置的第五结构框图;
图18为一个实施例中智能动力系统行为模型的第一结构框图;
图19为一个实施例中智能动力系统行为模型的第二结构框图;
图20为一个实施例中智能动力系统行为模型的第三结构框图;
图21为一个实施例中轨迹规划训练系统的第一结构框图;
图22为一个实施例中计算机设备的第一结构框图;
图23A为一个实施例中目标物在智能体带动下从第一位置移动到第二位置的第一示意图;图23B为一个实施例中目标物在智能体带动下从第一位置移动到第二位置的第二示意图;图23C为一个实施例中目标物在智能体带动下完成装配后的状态示意图;
图24为一个实施例中目标物的几何中心在X、Y轴平面运动范围的示意图;
图25为一个实施例中为绕目标物的几何中心在X、Y轴平面内采样点的示意图;
图26为一个实施例中包括多条参考轨迹的示意图。
图27为一个实施例中轨迹规划的第六流程示意图;
图28为一个实施例中以目标物位于目标区域内为假设条件,生成调整指令的第一流程示意图;
图29为一个实施例中将初始和目标位置信息输入智能动力系统行为模型,输出规划轨迹指令的第一流程示意图;
图30为一个实施例中采样点中筛选出位于目标区域内的采样点,以控制所述目标物运动到所述新的第二位置的第一流程示意图;
图31为一个实施例中轨迹规划装置的第六结构框图;
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
在一个实施例中,如图1所示,提供一种轨迹规划训练方法,以该方法应用于图21中的智能体系统为例进行说明;该轨迹规划训练方法用于智能体的轨迹规划训练,其中,智能体为任意可实现本实施例的轨迹规划训练方法的具有智能的实体,比如:机械手800(如图8、9或10所示)或人形机器人(省略附图)。在一个实施例中,机械手可以为多个关节和连杆通过串联或者并联形成的各种类型的机械手,每个关节即是一个驱动单元,比如:四轴机械手(省略附图)、六轴机械手(如图8、9或10所示)等串联机械手。在一个实施例中,继续如图8、9或10所示,机械手800的末端可以设置各种执行器810,通过执行器810执行具体的抓取或释放等等动作。为方便理解,本具体实施例以智能体为机械手为例进一步详细说明。
继续如图1所示,该轨迹规划训练方法包括以下步骤:
步骤S110,获取示教主体执行示教行为过程中的示教轨迹。
在一个实施例中,获取各个传感器和/或编码器等在示教主体执行示教行为过程中实时采集并发送的示教轨迹;或者从服务器或存储器获取上述示教轨迹。
具体的,示教行为可以包括但不限于:从散装物或规则排列的物中抓取目标物体M1的轨迹规划(如图9所示);将目标物体M1和M2进行装配的轨迹规划(如图8所示);放下目标物的轨迹规划(省略附图);带动目标物体从一个位置运动到另一个位置的轨迹规划(省略附图);带动目标物体M1在运动中躲避障碍物F的轨迹规划(如图10所示);抓取静止或运动中的物体的轨迹规划(省略附图);或者上述各个轨迹规划中的部分或全部动作的组合。
在一个实施例中,以智能体为机械手为例,示教轨迹可以为示教主体在执行示教行为过程中经过的某一坐标系空间(比如:笛卡尔空间)的每一个采样点对应的位置信息、示教主体的运动速度和/或角速度、及示教主体的运动加速度和/或角加速度。
具体的,上述位置信息包括但不限于:6d坐标(位姿)或2d坐标。
进一步,在一个实施例中,以6d坐标为例,即xyzuvw;即对一个要求学习特定轨迹规划的智能动力系统行为模型来说,要求获得每个采样点的位姿 xyzuvw,示教主体的运动速度和/或角速度dxdydzdudvdw,及示教主体的运动加速度和/或角加速度ddxddyddzdduddvddw;其中,d表示求导。
需要说明的是,当智能体为机械手以外的其它智能体时,示教轨迹及坐标系也可能会产生相应的变化,比如:将智能动力系统行为模型应用在工业水箱的液位控制上时,示教轨迹可以成了液位高度、液位高度的导数、液位高度的二次导数,此时示教轨迹也不在笛卡尔坐标系上。
在一个实施例中,以机械手为例,可以根据机械手各个驱动单元的编码器反馈的运动量,基于机械手正运动学方程,从而获取该采样点的位置信息;或者通过位置传感器采集机械手的执行器的位置信息,或者根据图像传感器采集的图像数据,并通过传统或者人工智能的算法生成位置信息。
在一个实施例中,可以通过速度或角速度传感器,测量示教主体在每个采样点的运动速度和/或角速度;或者通过某些方式估算运动速度和/或角速度,比如:根据相邻时刻的位置信息变化和时间间隔可以估算出运动速度和/或角速度。
在一个实施例中,可以通过加速度和角加速度传感器,测量示教主体在每个采样点的运动加速度和/或角加速度;或者通过某些方式估算运动加速度和/ 或角加速度。
在一个实施例中,如果运动速度和/或角速度,运动加速度和/或角加速度无法直接获得,那么就要求采样时间尽可能的短,从而足以使用差值法估算运动速度和/或角速度,运动加速度和/或角加速度。
具体的,示教轨迹为示教主体执行示教行为过程中获取的。
在一个实施例中“示教主体”可以为“智能体”本身,下面以示教主体为机械手为例进一步详细说明;
具体的,可以通过操作人员直接或者通过控制器生成的控制指令或目标的位置信息等带动机械手执行示教行为;比如:机械手在操作人员的带动下完成积木的装配行为动作;又比如:根据控制器发送的机械手的各个驱动单元的运动量指令完成积木的装配行为动作,其中,控制器包括但不限于:PC、PAD、移动终端等等;又比如:通过虚拟现实技术(Virtual Reality,简称VR)的方式间接控制机械手完成VR对应的动作,采用VR的方式可以控制机械手执行更精细的动作;又比如:通过控制设置重力传感器等其它速度或加速度数据测量器的设备的运动,比如:移动终端、PAD等等,从而生成控制指令或相关的目标的位置信息等,从而控制机械手的运动。
在一个实施例中,“示教主体”可以为智能体以外的“第三人”,比如:在“第三人”的手上安装传感器,通过传感器反馈“第三人”在执行示教行为过程中的示教轨迹等等。
步骤S120,获取智能动力系统行为模型的初始模型。
在一个实施例中,训练装置从服务器或存储器等获取智能动力系统行为模型的初始模型。
其中,该智能动力系统行为模型(Behavior Modelling of IntelligentDynamical Systems),结合传统的线性动力系统与人工智能的非线性动力系统的建模方法,通过基于该模型进行智能体的轨迹规划,从而提高轨迹规划的精度;另外,在一些实施例中,在保证精度的情况下还能提高轨迹规划的泛化能力。其中,线性动力系统具有易于分析及易于控制的特点,而人工智能方法使得学习非线性函数成为可能,通过学习决策数据对系统参数进行调整,从而获取一个期望的非线性智能动力系统行为模型,省去了人工调整系统参数的麻烦。
当采用智能动力系统行为模型进行轨迹规划学习时,其学习的效果是受智能动力系统行为模型自身超参数决定的。其中,超参数是指在模型开始训练过程之前设置值的参数,而不是通过训练得到的参数数据;而这些超参数,比如:线性动力系统部分的增益大小,非线性部分的高斯函数数量等,是受设计者对轨迹的要求,比如:轨迹运行的时间,轨迹运行的最大范围等决定的。这要求设计者首先根据主观需求,通过一组客观的算法求得智能动力系统行为模型中的最优超参数,以达到最佳的学习效果,将设置了超参数的智能动力系统行为模型作为智能动力系统行为模型的初始模型。
在一个实施例中,如图18所示,该用于轨迹规划的智能动力系统行为模型包括:基准单元910、学习单元920和协调单元930。
基准单元910,用于生成基准轨迹指令,它为整个模型提供基于传统线性动力系统模型生成的基准轨迹指令,它确保了机械手在规定时间内到达指定目标位置。具体的,可以使用任何满足这个条件的传统动力系统模块,例如:二阶阻尼模块或其他更高阶或低阶的动力模块。动力模块的选择取决于被控制系统的特性,例如:由于机械手控制是基于加速度,那么优选二阶阻尼模块。
学习单元920,用于基于人工智能的非线性动力系统方法对所述基准轨迹指令进行调制,输出规划轨迹指令;通过调制使得机械手学会规划任意连续平滑轨迹。任何非线性系统模型都可以在此被使用,例如:混合高斯模型 (Ganussian Mixture Model)、神经网络(Neural Network)等等。
协调单元930,用于协调学习单元,及协调学习单元对基准轨迹指令进行调制的参数(比如:时间参数),通过协调单元,第一,它确保了学习单元可以在规定的参数下(比如:规定的时间内)结束对基准轨迹指令的调制,保证系统的稳定性。第二,它可以协调多个非线性动力系统,比如:保证他们在时间上是同步的。在一个实施例中,一个机械手控制系统由多个独立的非线性动力系统组成。例如,当我们希望控制机械手在三维空间中移动时,机械手沿xyz 三个方向上的运动分别由三个独立的非线性动力系统负责,可以使用同一个协调单元对这三个非线性动力系统进行同步。协调单元的选择也是多种多样的。例如,当我们希望非线性动力系统是周期性的,那么我们可以选择一个振荡系统作为协调单元;当我们希望非线性动力系统是非周期性的,我们可以使用一个简单的一阶线性系统。
在一个实施例中,如图19或20所示,该用于轨迹规划的智能动力系统行为模型包括:基准单元910、学习单元920、协调单元930和修正单元940;
修正单元940,用于修正至少部分基准轨迹指令或至少部分规划轨迹指令,生成修正轨迹指令;
具体的,在一个实施例中,如图19所示,修正单元修正至少部分学习单元生成的规划轨迹指令;在另一个实施例中,如图20所示,修正单元之间修正至少部分基准单元910生成的基准轨迹指令,而此时,为避免修正单元和学习单元之间发生冲突,学习单元停止对基准轨迹指令进行调制。
进一步,在一个实施例中,该修正单元可以包括3个功能,分别是1、在遇到障碍物时修正轨迹躲避障碍物;2、在避障完成后进行补偿使得系统可以尽快回归正常轨迹;3、提供基于力反馈的误差修正功能,用于处理带有接触的问题。
进一步,在一个实施例中,对于上述3种功能,可以分别采用下列方法实现:
1.避障
(1)类人避障模块,用于通过修正被控制物体的加速度方向,使得智能体运动方向与障碍物相对于智能体方向间的夹角和/或距离变大,从而使得智能体远离障碍物。
2.轨迹恢复
(1)最小轨迹误差模块,用于测量被控制物体当前轨迹与期望轨迹之间的误差,以最小化这个误差为目的,利用PD控制算法修正物体的运动轨迹。
3.基于力反馈的误差修正
(1)经验回顾模块,用于记录一次成功完成任务的经验(力反馈数据),在后续运行时,回顾过去的经验,利用经验回顾模块最小化当前力反馈数据与经验力反馈数据之间的误差。
(2)经验回顾结合相位暂缓辅助模块,即当修正单元对基准轨迹指令修正时,通过协调单元延长学习单元对基准单元同步调制的时间参数,则使得这段轨迹的生成变得缓慢,直到修正单元退出修正。
为方便理解,下面以一个具体的智能动力系统行为模型为例进一步详细说明:
在一个实施例中,该模型可以包括3个子系统,可以分别对应在xyz三个维度上。用于进行只有平移、不含旋转的轨迹规划,具体表达式如下所示:
Figure BDA0002552377090000151
Figure BDA0002552377090000152
Figure BDA0002552377090000153
其中,
Figure BDA0002552377090000154
Figure BDA0002552377090000155
Figure BDA0002552377090000156
而,
Figure BDA0002552377090000157
Figure BDA0002552377090000158
Figure BDA0002552377090000159
Figure BDA00025523770900001510
以y维度上的智能动力系统行为模型子系统为例,
Figure BDA0002552377090000161
为二阶阻尼系统,它作为整个系统的基准动力系统;
Figure BDA0002552377090000162
代表一个基于混合高斯模型的非线性学习系统;
Figure BDA0002552377090000163
表示了一个一阶线性基准协调系统。
在上述表达式中,[αx,αy,αz]、[βx,βy,βz]是需要提前设置的二阶线性系统超参数;[Nx,Ny,Nz]、[hxi,hyi,hzi]、[cxi,cyi,czi]是需要提前设置的非线性混合高斯函数项的超参数;C、αs是需要提前设置的一阶线性系统超参数; [ωxi,ωyi,ωzi]是待学习的高斯函数权重,需要通过训练得到的参数。
我们可以将机械手的轨迹规划问题看作是建立一个动态系统从某初始状态向某目标状态转移的过程,那么我们可以将此过程建立成一个用智能动力系统行为模型表达的非线性动力系统模型。基于这个模型,我们可以通过示教训练的方法,使得机器人拥有生成多种复杂运动轨迹的能力,例如,让机器人学会写字。同时,智能动力系统行为模型的泛化能力使得我们可以随意改变这些轨迹经历的时间、轨迹的起终点而机器人仍能生成出相似的轨迹。
步骤S130,根据示教轨迹,训练初始模型,得到智能动力系统行为模型。
在训练时,首先,模型会根据示教轨迹,基于基准单元,生成待拟合的特征轨迹,再利用这些特征轨迹基于学习单元和协调单元训练初始模型,得到智能动力系统行为模型,即初始模型的训练是针对学习单元进行的。
具体的训练方法,根据模型的各个学习单元的不同而不同,比如:在一个实施例中,根据上面所述,当使用混合高斯模型作为学习单元,混合高斯模型由若干个预先设计的高斯模型以不同的权重混合组成,这些权重就是在训练时需要学习的参数。在一个实施例中,可以使用局部加权回归法(Locally Weighted Regression)直接求得各个高斯函数的权重,完成训练。
采用基于智能动力系统行为模型的轨迹规划训练方法可以包括如下有益效果:
一方面,由于智能动力系统行为模型最少可以只需要使用1条示教轨迹,即可以达到复现示教轨迹,同时实现随意改变起点和终点,及轨迹经历时间的能力,因此节省模型训练样本,提高模型训练速度;
另一方面,由于智能动力系统行为模型的训练速度非常快,因此节省了模型训练的时间;
另一方面,由于可以直接通过训练结果估计测试结果,避免了训练结束后仍需测试的时间损失。
在一个实施例中,如图2所示,提供一种轨迹规划方法,以该方法应用于图8、9或10中的智能体系统为例进行说明,该方法包括如下方法步骤:
步骤S210,获取智能体的初始和目标位置信息;
在一个实施例中,获取预先设定和/或通过用户实时输入的初始位置信息和期望到达的目标位置信息。
步骤S230,获取智能动力系统行为模型;
具体的,从存储器或者服务器获取智能动力系统行为模型;
有关智能动力系统行为模型参见上面实施例图18所示模型的相关描述,在此不再赘述。
步骤S250,将初始和目标位置信息输入智能动力系统行为模型,输出规划轨迹指令。
其中,规划轨迹指令根据模型设计的不同输出要求而不同。
在一个实施例中,以智能体为机械手为例,该运动轨迹是由多个离散的点组成,规划轨迹指令可以为智能体位于每个离散点的运动加速度和/或角加速度,从而生成整个智能体的规划轨迹指令。
如图29所示,在一个实施例中,智能动力系统行为模型可以预先训练出多条参考轨迹,则上述步骤S250可以包括如下方法步骤:
步骤S251将当前参数与多个参考轨迹的多个参考参数进行匹配,以与当前参数最接近的参考参数对应的参考轨迹作为目标参考轨迹;
具体的,可以直接获取基于某些传感器根据智能体或目标物等当前状态采集并发送的当前参数,或再经过某些计算后得到的当前参数等;另外,可以将参考参数预先存储在存储介质内,按照存储地址从该存储介质内调取参考参数等。
上述当前参数和参考参数可以根据需要设计成任意,比如,可以为参考轨迹本身的轨迹参数(比如:参考轨迹由多个离散的点组成,则每个离散的点的姿态信息可以视为该点的轨迹参数),或后面实施例所述的力/力矩等的辅助参数等;比如:可以将与当前轨迹参数对应的各个参考轨迹参数进行对比,找出与当前轨迹参数最接近的参考轨迹参数,则该参考轨迹参数对应的参考轨迹即为目标参考轨迹。
步骤S252基于目标参考轨迹,将初始和目标位置信息输入智能动力系统行为模型,输出规划轨迹指令。
如图26所示,实例性的,将目标物M1从位置L1移动到位置L1’,可以预先基于智能动力系统模型生成多个参考轨迹F1、F2、F3。可以将位于P点的当前轨迹参数与参考轨迹F1、F2、F3对应的各个参考轨迹参数进行对比,可以得到参考轨迹F3对应的参考轨迹参数与P点的当前轨迹参数最接近,因此将参考轨迹F3作为目标参考轨迹。
相对于只对应一条参考轨迹的智能动力系统行为模型,通过预先设定多种情况下的参考轨迹,再从中选择一条最合适的目标参考轨迹,可以提高智能动力系统模型轨迹规划的鲁棒性和泛化能力。
采用基于智能动力系统行为模型的轨迹规划方法可以包括如下有益效果:
一方面,由于智能动力系统行为模型易于使用,且易于分析,通过基于智能动力系统行为模型,可以提高轨迹规划的精度。
另一方面,由于采用控制的思路,通过添加附加项,智能动力系统行为模型可以在原有模型上快速实现抗扰动、轨迹恢复、避障等多种附加功能,而不需要重新训练新的模型,因此提高了模型的泛化能力。
在一个实施例中,如图3所示,提供一种轨迹规划方法,该方法包括如下方法步骤:
步骤S220,获取智能体的目标位置信息;
步骤S240,获取智能体的当前轨迹;
在一个实施例中,以机械手为例,当前轨迹可以包括:当前位置信息、当前速度和/或角速度;
具体的,该当前速度和/或角速度可以是通过传感器采集的实际值,也可以是根据某些方法计算的估算值。
步骤S260,获取智能动力系统行为模型;
有关智能动力系统行为模型参见上面实施例图18所示模型的相关描述,在此不再赘述。
步骤S280,将当前轨迹和目标位置信息输入智能动力系统行为模型,输出规划轨迹指令。
根据当前的轨迹和目标位置信息生成下一时刻的规划轨迹指令。
具体的,该规划轨迹指令根据模型设计的不同而不同,比如:以机械手为例,规划轨迹指令可以为机械手下一时刻的运动加速度和/或角加速度。
具体的,可以将该运动加速度和/或角加速度直接作为轨迹规划指令输出给机械手;
在一个实施例中,通常机械手难以识别运动加速度和/或角加速度,可以根据该动加速度和/或角加速度,采用某些计算方式,换算成下一时刻的位置信息、或者脉冲调制方波(PWM)然后再发给机械手。
在一个实施例中,智能动力系统行为模型可以预先训练出多条参考轨迹,则上述步骤S280可以包括如下方法步骤:
步骤S281将当前参数与多个参考轨迹的多个参考参数进行匹配,以与当前参数最接近的参考参数对应的参考轨迹作为目标参考轨迹;
步骤S282基于目标参考轨迹,将当前轨迹和目标位置信息输入智能动力系统行为模型,输出规划轨迹指令。
通过实时生成的规划轨迹指令,从而完成智能体的轨迹规划,从而提高了轨迹规划的精度。
在一个实施例中,如图4所示,提供一种轨迹规划方法,在执行某些轨迹规划时,需要结合某些辅助参数才能完成最终轨迹规划,比如:与力/力矩相关的轨迹规划(比如:物体抓取或物体装配),该方法包括如下方法步骤:
步骤S310,获取智能体的参考辅助参数;
步骤S320,获取智能体的目标位置信息;
有关参考辅助参数的获取方法下面的实施例会有进一步详细的描述。
控制装置获取各种传感器(比如:力/力矩传感器)采集并实时发送的参考辅助参数,或者从服务器或者存储器获取上述参考辅助参数。
步骤S330,获取智能体的当前辅助参数;
步骤S340,计算参考辅助参数和当前辅助参数之间的当前误差;
步骤S350,获取智能体的当前轨迹;
步骤S360,将当前误差、当前轨迹和目标位置信息输入智能动力系统行为模型,输出规划轨迹指令和/或修正轨迹指令。
具体的,该规划轨迹指令和/或修正轨迹指令根据模型设计的不同而不同,比如:以机械手为例,规划轨迹指令和/或修正轨迹指令可以为机械手下一时刻的运动加速度和/或角加速度。
有关智能动力系统行为模型参见上面实施例图19或20所示模型的相关描述,在此不再赘述。
如果抓取成功,那么在任意一次抓取过程中,力-力矩轨迹应与力-力矩参考轨迹完全相同,因此,若当前抓取的力-力矩轨迹与力-力矩参考轨迹不同时,机械臂处于错误抓取的状态;此时,我们可以通过采用反馈控制的思路,利用当前力-力矩与参考力-力矩间的误差,计算下一时刻机械手的执行器的目标位置信息,从而输出规划轨迹指令;
传感器读取当前时刻末端的力/力矩信息,此时智能动力系统行为模型正常规划的下一时刻位置会加上一个位置增量,位置增量通过前力-力矩与参考力/力矩间的误差计算得到,从而完成抓取目标物体任务的轨迹规划。
具体的,根据上面实施例所述,该智能动力系统行为模型包括基准单元、学习单元、协调单元和修正单元,有关各个单元的描述参见上面的实施例,在此不再重复赘述。
在一个实施例中,当当前误差为零时,则相当于将当前轨迹和目标位置信息输入智能动力系统行为模型,输出规划轨迹指令,此时修正单元不参与工作。
当当前误差大于零时,启动修正单元,具体的工作方法,根据修正单元的具体结构的不同而不同;
在一个实施例中,当修正单元为经验回顾模块时,在学习单元和基准单元共同生成的规划轨迹指令的基础上,再通过修正单元利用经验回顾方法最小化当前力/力矩反馈数据与参考力/力矩反馈数据之间的误差进行修正,从而生成修正轨迹指令。
在一个实施例中,当修正单元为经验回顾结合相位暂缓辅助模块时,即当修正单元对基准轨迹指令修正时,通过协调单元延长学习单元对基准单元同步调制的时间参数,则使得这段轨迹的生成变得缓慢,直到修正单元退出修正。
进一步,在一个实施例中,在步骤S350之前还可以包括:
步骤S370,判断误差是否为零;步骤S380,若为零,将当前轨迹和目标位置信息输入智能动力系统行为模型,输出规划轨迹指令;步骤S390,若不为零,执行步骤S360。
需要说明的是,上述误差的预设条件不一定是零,比如:可以为小于某个阈值等等,比如:上述方法步骤可以表述为:步骤S370,判断误差是否满足预设条件(比如:误差为零或小于某个阈值);步骤S380,若满足预设条件(比如:为零或小于阈值),将当前轨迹和目标位置信息输入智能动力系统行为模型,输出规划轨迹指令;步骤S390,若不满足,执行步骤S360。
在一个实施例中,智能动力系统行为模型可以预先训练出多条参考轨迹,则上述步骤S360可以包括如下方法步骤:
步骤S361将当前参数与多个参考轨迹的多个参考参数进行匹配,以与当前参数最接近的参考参数对应的参考轨迹作为目标参考轨迹;
步骤S362基于目标参考轨迹,将当前误差、当前轨迹和目标位置信息输入智能动力系统行为模型,输出规划轨迹指令和/或修正轨迹指令。
在一个实施例中,如图5所示,步骤S310,获取智能体的参考辅助参数包括如下方法步骤:
步骤S311,获取智能体的初始和目标位置信息;
设置初始和目标位置信息与上面实施例所述的轨迹规划训练时示教主体的示教行为的初始和目标位置信息相同;
步骤S312,获取智能动力系统行为模型;
有关智能动力系统行为模型参见上面实施例图18所示模型的相关描述,在此不再赘述。
步骤S313,将初始和目标位置信息,输入智能动力系统行为模型,输出智能体规划轨迹指令的参考指令;
步骤S314,获取智能体执行参考指令过程中的参考辅助参数。
如图9所示,以机械手抓取目标物体为例,重复一次模型训练时走过的抓取轨迹,并完成一次成功的抓取;在这次成功抓取的过程中,我们通过安装在机械手的执行器的力/力矩传感器,记录下这次成功抓取运行过程中每一时刻的执行器的力/力矩信息,并称其为力/力矩的参考辅助参数。
在一个实施例中,如图6所示,以躲避障碍物为例,该轨迹规划方法包括如下方法步骤:
步骤S410,获取智能体的目标位置信息;
步骤S420,获取智能体的当前轨迹;
在一个实施例中,当智能体为机械手,该当前轨迹除包括当前位置信息、机械手的当前运动速度和/或角速度、及机械手的当前运动加速度和/或角加速度;
步骤S430,获取或生成障碍物的当前障碍信息;
具体的,障碍信息可以为当前位置增量、当前角度增量和/或当前障碍物的位置信息等等;
其中,当前位置增量信息是指当前障碍物位置和智能体的当前位置之间的当前距离;当前角度是指当前障碍物位置和智能体的当前位置之间的当前角度。
在一个实施例中,可以在智能体上或者周边设置图像传感器或者其它的障碍探测器,从而探测障碍物的当前位置信息;
步骤S440,将当前障碍信息、当前轨迹和目标位置信息输入智能动力系统行为模型,输出规划轨迹指令和/或修正轨迹指令。
有关智能动力系统行为模型参见上面实施例图19或20所示模型的相关描述,在此不再赘述。
具体的,根据上面实施例所述,该智能动力系统行为模型包括基准单元、学习单元、协调单元和修正单元,有关各个单元的描述参见上面的实施例,在此不再重复赘述。
修正单元的工作方法,根据修正单元的具体结构的不同而不同;
在一个实施例中,当修正单元为类人避障模块,通过修正被控制物体的加速度方向,使得物体运动方向与障碍物相对于物体方向间的夹角变大,从而使得物体远离障碍物。
进一步,在一个实施例中,当修正单元包括最小轨迹误差模块;
用于当避障完成后,测量被控制物体当前轨迹与期望轨迹之间的误差,以最小化这个误差为目的,利用PD控制算法修正物体的运动轨迹。
在上述修正单元修正完成后(障碍信息为零)或者修正开始前,可以由学习单元和基准单元输出规划轨迹指令。
则整个轨迹规划指令可以只包括规划轨迹指令(没有障碍物的情况);只包括修正轨迹指令;或规划轨迹指令和修正轨迹指令的组合。
在一个实施例中,智能动力系统行为模型可以预先训练出多条参考轨迹,则上述步骤S440,可以包括如下方法步骤:
步骤S441将当前参数与多个参考轨迹的多个参考参数进行匹配,以与当前参数最接近的参考参数对应的参考轨迹作为目标参考轨迹;
步骤S442基于目标参考轨迹,将当前障碍信息、当前轨迹和目标位置信息输入智能动力系统行为模型,输出规划轨迹指令和/或修正轨迹指令。
在一个实施例中,如图7所示,提供一种轨迹规划方法,该方法包括如下方法步骤:
步骤S510,获取智能体的目标位置信息;
步骤S520,获取智能体的当前轨迹;其中,当前轨迹至少包括当前位置信息;
步骤S530,根据当前位置信息,判断智能体当前是否位于抵抗域内;
具体的,可以预先在障碍物周围一定范围内设置抵抗域;
根据机械手的当前位置信息,判断机械手是否位于抵抗域内;
步骤S540,若是,根据当前位置增量信息,偏转所述目标位置信息,生成新目标位置信息;
其中,当前位置增量指智能体的当前位置与障碍物或抵抗域的相对位置增量(距离增量和偏转量)。
在一个实施例中,以机械手为例,新目标位置与原目标位置偏转量由当前机械手的末端与障碍物间的相对位置(末端与障碍物的向量)决定,偏离的距离由当前机械手末端与障碍物间的距离增量乘以一个任意比例系数决定。
步骤S550,将当前轨迹和新目标位置信息输入智能动力系统行为模型,生成新规划轨迹指令;
在一个实施例中,智能动力系统行为模型可以预先训练出多条参考轨迹,则上述步骤S550,可以包括如下方法步骤:
步骤S551将当前参数与多个参考轨迹的多个参考参数进行匹配,以与当前参数最接近的参考参数对应的参考轨迹作为目标参考轨迹;
步骤S552基于目标参考轨迹,将当前轨迹和新目标位置信息输入智能动力系统行为模型,生成新规划轨迹指令。
有关智能动力系统行为模型参见上面实施例图18所示模型的相关描述,在此不再赘述。
步骤S560,若否,将当前轨迹和目标位置信息输入智能动力系统行为模型, 输出规划轨迹指令。
在一个实施例中,智能动力系统行为模型可以预先训练出多条参考轨迹,则上述步骤S560,可以包括如下方法步骤:
步骤S561若否,将当前参数与多个参考轨迹的多个参考参数进行匹配,以与当前参数最接近的参考参数对应的参考轨迹作为目标参考轨迹;
步骤S562基于目标参考轨迹,将当前轨迹和目标位置信息输入智能动力系统行为模型,输出规划轨迹指令。
有关智能动力系统行为模型参见上面实施例图18所示模型的相关描述,在此不再赘述。
采用该轨迹规划方法,由于实时调整目标位置,可以提高轨迹规划精度;另外,可以提高模型的泛化能力。
如图23A-23C所示,在一个实施例中,当需要将目标物M1装配入另一目标物M2上的目标区域M21(如图23C所示),一般可能发生如下两种情况:
一种情况,执行器可能带动目标物M1运动到另一目标物M2的目标区域 M21内,其中,上述目标物M1运动到目标区域M21内,并不一定指目标物M1 的至少部分位于目标区域的内部,也可以包括目标物M1位于目标区域的开口 M21的上方或附近某一区域等;另一种情况,执行器可能带动目标物M1运动到另一目标物M1的目标区域M21外,其中,上述目标物M1运动到目标区域M21 外,通常指目标物M1运动到相对远离目标区域M21的某一区域,因此,基于主要针对将目标物装配到目标区域内训练的智能动力系统行为模型,可能导致智能动力系统行为模型无法完成该情况下的装配动作,最终使得目标物始终在目标区域外运动,而无法被装配入目标区域内。
为方便理解,下面以目标物M1为棒体M1,目标区域M1为插孔M1,插孔 M21的开口位于棒体M1下方为例进一步详细说明。如图23A所示,执行器可能带动棒体M1运动到插孔M1开口附近某一位置L1”;如图23B所示,执行器也可能带动棒体M1运动到插孔M21外某一位置L2”。
如图27所示,基于上面实施例所述的情况,提供一种轨迹规划方法,以该方法应用于图8所示的系统中的控制装置720为例,该方法可以包括如下方法步骤:
步骤S610以目标物位于目标区域内为假设条件,生成调整指令,以控制目标物从第一位置运动到第二位置;所述第二位置为满足预设装配条件的位置;
步骤S620获取目标物从第一位置运动到第二位置的预判参数;步骤S630 根据预判参数,判断目标物是否位于目标区域内;
步骤S640若否,以第二位置为基准,在沿辅助方向的预设范围内采集采样点;从采样点中筛选出位于目标区域内的采样点,以控制所述目标物运动到新的第二位置;步骤S650基于智能动力系统行为模型,输出第一规划轨迹指令;
步骤S650若是,基于智能动力系统行为模型,输出第二规划轨迹指令。
通过采用上述轨迹规划的方法,将目标物执行装配过程中可能出现的两种情况加以考虑,并针对可能出现的两种情况设计相应的轨迹规划方法,从而提高了智能动力系统行为模型轨迹规划的鲁棒性和泛化性。
为方便理解,下面对上述方法步骤进行进一步详细说明。
步骤S610以目标物位于目标区域内为假设条件,生成调整指令,以控制目标物从第一位置运动到第二位置;所述第二位置为满足预设装配条件的位置;
如图23A所示,如果假设成立,则目标物M1基于预插调整指令由第一位置L1”,最终运动到第二位置L1,比如:可以设目标物的几何中心为目标物坐标系的原点,以目标物在机械手坐标系下的位置信息为第一位置信息和第二位置信息;如图23B所示,如果假设不成立,则目标物M1基于预插调整指令由第一位置L2”,最终运动到第二位置L2。
需要说明的是,上述第一位置L1”可以是随机产生或者预设的某个范围内的某个位置等。示例性的,在步骤S610之前,可以包括基于任意可能的方法生成控制指令,以控制执行器带动目标物M1移动到目标物M2附近的第一位置的步骤,因为生成指令的差异性或者执行器本身存在的误差等原因,目标物M1 每次运动到的第一位置L1”实际可能是不同的。
需要说明的是,第二位置为满足某种预设装配条件的位置,比如:如图23A 所示,预设装配条件可以为使得目标物M1在预先设定的沿辅助方向的运动范围内,沿基准方向Z实现最大的运动距离的条件,下面会有进一步详细说明。
如图28所示,在一个实施例中,步骤S610可以包括如下方法步骤:
步骤S611基于沿基准方向的力反馈,生成沿基准方向的基准运动指令,使得目标物沿基准方向由第一位置运动到第三位置。
其中,基准方向是指完成装配动作的主要运动方向。示例性的,如图23A 所示,以插孔M21位于棒,体M1下方为例,棒体M1主要通过沿竖直向下的Z 轴方向运动,从而实现插入目标插孔M21内,则Z方向为基准方向。
继续如图23A所示,在一个实施例中,如果目标物位于目标区域内的假设正确,则当棒体M1移动到插孔M21附近的第一位置L1”时,生成初始化指令,通过该初始化指令,使得执行器在沿Z轴方向只形成预设值的力反馈控制,则执行器带动目标物由第一位置L1”沿向下的Z轴方向运动至第三位置L1’,此时棒体M1的某条边与插孔M21的外缘卡接,则执行器沿轴方向通过力传感器采集的反馈力值逐渐增大,直到达到预设值并通过指令控制执行器保持反馈力在该预设值。
步骤S612生成辅助运动指令和基准运动指令,使得目标物从第三位置运动到第二位置;辅助运动指令为控制目标物在预设范围内沿辅助方向运动的指令;
其中,辅助方向是相对基准方向而言,通常在X、Y、Z轴三个方向构成的三维空间中,其中一个为基准方向时,则另外两个为辅助方向。
在一个实施例中,可以以目标物M1到达第一位置时的姿态坐标(x,y,z) 为基准,生成沿Y轴方向的辅助运动指令,以控制棒体M1沿Y轴方向在(y-dy, y+dy)范围内移动(如图24所示),并同时控制棒体继续基于上述基准运动指令沿Z轴方向向下移动,直到执行器在Z轴方向的反馈力达到预设值,由于当棒体M1沿Y轴方向发生移动,使得目标物离开第一位置,则棒体与插孔不再接触,因此获得的沿Z轴方向的力反馈值减小,因此继续生成沿基准方向向下运动的基准运动指令,使得棒体M1再次与插孔M21的侧壁发生抵接;基于此,再生成沿Z轴方向的辅助运动指令,以控制目标物M1沿X轴的方向在(x-dx, x+dx)范围内移动(如图24所示),并同时继续基于上述基准运动指令控制目标物同时沿Z轴方向继续向下移动,直到执行器在Z轴方向的反馈力达到预设值,则此时棒体M1到达第二位置L。需要说明的是,也可以控制棒体M1先沿X 轴方向移动,再沿Y轴方向移动,在此不做限定。通过上述调整指令,如果假设成立,则目标物调整到满足预设装配条件的第二位置,使得目标物M1在预先设定的沿辅助方向的运动范围内,沿基准方向实现最大的运动距离,从而使得目标物达到某个预设的起始装配状态,后续基于智能动力系统行为模型,可以完成整个装配动作。
步骤S620获取目标物从第一位置运动到第二位置的预判参数;步骤S630 根据预判参数,判断目标物是否位于目标区域内;
示例性的,继续如图23A所示,上述预判参数可以为目标物从第一位置运动到第二位置时,沿Z轴方向发生的位移,因为当目标物位于目标区域附近时,可以看到目标区域外高于目标区域,因此,如图23A和图23B所示,在目标物的起点高度距离目标物M2相同的情况下,图23A中沿Z轴方向发生的位移一定大于图23B中发生的位移。因此,在一个实施例中,可以根据实际情况设定一个阈值,沿Z轴方向发生的位移大于等于该阈值的,可视为目标物位于目标区域内,沿Z轴方向发生的位移小于该阈值的,可视为目标物位于目标区域外;需要说明的是,上述预判参数除了沿Z轴方向发生的位移外,也可以根据实际情况换成其它的参数,在此不做限定。
步骤S640若否,以第二位置为基准,在沿辅助方向的预设范围内采集采样点;从采样点中筛选出位于目标区域内的采样点,以控制所述目标物运动到所述新的第二位置;步骤S650基于智能动力系统行为模型,输出第一规划轨迹指令。
需要说明的是,目标区域的范围可以沿辅助方向根据需要设置成任意。示例性的,如图25所示,可以在X、Y轴平面内,以目标物的几何中心所在的第二位置为中心,半径为r的圆所覆盖的区域为预设范围。
具体的,上述采样点的采集的轨迹可以基于随机的方法生成,或者基于某个固定的轨迹规划规则生成;又或者基于人工智能的方法生成,比如:可以基于已经完成训练的第二智能动力系统行为模型或者其它人工智能模型生成针对采样点的采样轨迹的规划轨迹。需要说明的是该第二智能动力系统行为模型或其它人工智能模型可以与上述智能动力系统行为模型分开设置,或者可以将两个模型合并为一个智能动力系统行为模型,本具体实施例不做限定。
如图30所示,在一个实施例中,上述步骤S640中,从采样点中筛选出位于目标区域内的目标采样点,以控制所述目标物运动到新的第二位置可以将位于目标区域的目标采样点的位置直接作为新的第二位置,通过生成控制指令,以控制目标物运动到新的第二位置;
在一个实施例中,也可以包括如下方法步骤:
步骤S641获取当前采样点;
从多个采样点中获取当前采样点;
步骤S642生成控制指令,以控制目标物移动到新的第一位置;新的第一位置为当前采样点的位置;
根据控制指令,控制执行器带动目标物由当前位置移动到新的第一位置。
步骤S643执行步骤S610-步骤S620的步骤;直到判断结果为是为止,以此时得到第二位置为新的第二位置。
将当前采样点的位置作为新的第一位置,执行步骤S610-步骤S620的方法,若判断结果为否,则获取下一个采样点,直到判断结果为是为止,则这时的当前采样点视为位于目标区域内的采样点,则根据该采样点执行步骤S610- 步骤S620后得到的第二位置,即为新的第二位置。
需要说明的是,在一个实施例中,对于步骤S611中,沿基准方向由第一位置移动到第三位置,对于位于目标区域外的采样点,由于目标物M1已经运动到与待装配物M2抵接的位置,因此上述沿基准方向由第一位置移动到第三位置的距离为零。
需要说明的是,可以将多个采样点采样完毕后,统一对多个采样点进行筛选,也可以每采集得到一个采样点,即对该采样点执行筛选操作,直到找到目标采样点为止。
步骤S650根据智能动力系统行为模型,输出第一规划轨迹指令。可以在控制目标物移动到新的第二位置后,采用前面实施例所述的任意方法实现,或者采用现在已有或将来开发的其它方法实现,比如:
在一个实施例中,可以将当前轨迹和目标位置输入智能动力系统行为模型,输出第一轨迹规划指令;
示例性的,以智能体为上述机械手为例,当前轨迹可以是目标物运动到新的第二位置时,通过机械手的各个驱动关节的传感器采集的实际值得到;也可以是根据某些方法计算的估算值,比如:目标物被执行器抓取后相对执行器的位置固定,基于相机得到目标物在相机坐标系下的坐标变换关系,相机和机械手之间预先进行标定,因此,可以得到目标物在机械手坐标系下的变换关系,根据目标物的新的第二位置可以求取执行器的当前位置,根据执行器的当前位置,基于逆运动学方程等可以求取机械手的当前轨迹。
在一个实施例中,基于智能动力系统行为模型,输出第一规划轨迹指令可以为:将当前误差、当前轨迹和目标位置信息输入智能动力系统行为模型,输出规划轨迹指令和/或修正轨迹指令;
其中,当前误差可以是指当前力/力矩与参考力/力矩之间的误差,
示例性的,如图23A所示,经过上面的步骤,目标物当前所处于新的第二位置L1为与目标区域M21的侧壁抵接的位置,因此目标物M1和侧壁之间会产生力/力矩的反馈,该实际反馈的当前力力/力矩和模型预先经过训练得到的参考力/力矩之间的误差为当前误差,如果装配动作与预先完成训练的智能动力系统行为模型的规划轨迹完全相同,当前实际测得的力/力矩轨迹应与力/力矩参考轨迹完全相同,因此,若当前力/力矩轨迹与力/力矩参考轨迹不同时,机械手处于偏差的装配的状态;此时,我们可以通过采用反馈控制的思路,利用当前力/力矩与参考力/力矩间的误差,计算下一时刻机械手的执行器的目标位置信息,从而输出修正后的规划轨迹指令。具体的,可以通过传感器读取当前时刻末端的力/力矩信息,此时智能动力系统行为模型在正常规划的下一时刻位置基础上会加上一个位置增量,该位置增量通过前力-力矩与参考力/力矩间的误差计算得到。
在一个实施例中,该智能动力系统行为模型可以包括基准单元、学习单元、协调单元和修正单元。
在一个实施例中,当当前误差满足预设条件时,则相当于将当前轨迹和目标位置信息输入智能动力系统行为模型,输出规划轨迹指令,此时修正单元不参与工作;当当前误差不满足预设条件时,启动修正单元,生成修正后的轨迹规划指令。
在一个实施例中,智能动力系统行为模型可以预先训练出多条参考轨迹,则上述步骤S650中基于智能动力系统行为模型,输出第一规划轨迹指令可以包括如下方法步骤:
步骤S651将当前参数与多个参考轨迹的多个参考参数进行匹配,以与当前参数最接近的参考参数对应的参考轨迹作为目标参考轨迹;
步骤S652基于智能动力系统行为模型的目标参考轨迹,生成第一轨迹规划指令。
上述步骤S652可以包括但不限于:
比如:可以将所述当前轨迹和所述目标位置信息输入所述智能动力系统行为模型,输出规划轨迹指令;或将当前误差、当前轨迹和目标位置信息输入智能动力系统行为模型,输出规划轨迹指令和/或修正轨迹指令等。
步骤S660若是,基于智能动力系统行为模型,输出第二规划轨迹指令。
需要说明的是,基于智能动力系统行为模型,输出第二规划轨迹指令可以采用上面实施例所述的任意方法,或者现在已有或将来开发的任意方法。
在一个实施例中,智能动力系统行为模型可以预先训练出多条参考轨迹,则上述步骤S660中基于智能动力系统行为模型,输出第二规划轨迹指令可以包括如下方法步骤:
步骤S661将当前参数与多个参考轨迹的多个参考参数进行匹配,以与当前参数最接近的参考参数对应的参考轨迹作为目标参考轨迹;
步骤S662基于智能动力系统行为模型的目标参考轨迹,生成第二轨迹规划指令。
具体的,根据目标物的第二位置可以求取执行器的当前轨迹。
有关将当前误差、当前轨迹和目标位置信息输入智能动力系统行为模型, 输出规划轨迹指令的方法可以参照上面的实施例,在此不再重复赘述。
应该理解的是,虽然图1、2、3、4、5、6和7等等的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图1、2、3、4、5、6和7等等中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图11所示,提供一种轨迹规划训练装置,该装置包括:
示教轨迹获取模块110,用于获取示教主体执行示教行为过程中的示教轨迹;
初始模型生成模块120,用于获取智能动力系统行为模型的初始模型;
行为模型生成模块130,用于根据示教轨迹,训练初始模型,输出智能动力系统行为模型。
在一个实施例中,如图12所示,提供一种轨迹规划装置,该装置包括:
位置信息获取模块210,用于获取智能体的初始和目标位置信息;
行为模型获取模块230,用于获取智能动力系统行为模型;
规划轨迹生成模块250,用于将初始和目标位置信息输入智能动力系统行为模型,输出规划轨迹指令。
进一步,在一个实施例中,规划轨迹生成模块250可以包括:
第一参数匹配单元251,用于将当前参数与多个参考轨迹的多个参考参数进行匹配,以与当前参数最接近的参考参数对应的参考轨迹作为目标参考轨迹;
第一轨迹生成单元252,用于基于目标参考轨迹,将初始和目标位置信息输入智能动力系统行为模型,输出规划轨迹指令。
在一个实施例中,如图13所示,提供一种轨迹规划装置,该装置包括:
目标位置获取模块220,用于获取智能体的目标位置信息;
当前轨迹获取模块240,用于获取智能体的当前轨迹;
行为模型获取模块260,用于获取智能动力系统行为模型;
规划轨迹生成模块280,用于将当前轨迹和目标位置信息输入智能动力系统行为模型,输出规划轨迹指令。
进一步,在一个实施例中,规划轨迹生成模块280还可以包括:
第二参数匹配单元281,用于将当前参数与多个参考轨迹的多个参考参数进行匹配,以与当前参数最接近的参考参数对应的参考轨迹作为目标参考轨迹;
第二轨迹生成单元282,用于基于目标参考轨迹,将当前轨迹和目标位置信息输入智能动力系统行为模型,输出规划轨迹指令。
在一个实施例中,如图14所示,提供一种轨迹规划装置,该装置包括:
参考辅助参数获取模块310,获取智能体的参考辅助参数;
目标位置获取模块320,获取智能体的目标位置信息;
当前辅助参数获取模块330,获取智能体的当前辅助参数;
误差计算模块340,计算参考辅助参数和当前辅助参数之间的误差;
当前轨迹获取模块350,获取智能体的当前轨迹;
轨迹生成模块360,将当前误差、当前轨迹和目标位置信息输入智能动力系统行为模型,输出规划轨迹指令和/或修正轨迹指令。
进一步,在一个实施例中,如图15所示,提供一种参考辅助参数获取模块,该模块包括:
初始和目标位置获取单元311,用于获取智能体的初始和目标位置信息;
行为模型获取单元312,用于获取智能动力系统行为模型;
参考指令生成单元313,用于将初始和目标位置信息,输入智能动力系统行为模型,输出轨迹规划的参考指令;
参考辅助参数获取单元314,用于获取智能体执行所述参考指令过程中的参考辅助参数。
进一步,在一个实施例中,轨迹生成模块360包括:
第三参数匹配单元361,用于将当前参数与多个参考轨迹的多个参考参数进行匹配,以与当前参数最接近的参考参数对应的参考轨迹作为目标参考轨迹;
第三轨迹生成单元362,用于基于目标参考轨迹,将当前误差、当前轨迹和目标位置信息输入智能动力系统行为模型,输出规划轨迹指令和/或修正轨迹指令。
在一个实施例中,如图31所示,提供一种轨迹规划装置,该装置包括:
指令生成模块610,用于以目标物位于目标区域内为假设条件,生成调整指令,以控制所述目标物从第一位置运动到第二位置;第二位置为满足预设装配条件的位置;
参数获取模块620,用于获取所述目标物从所述第一位置运动到所述第二位置的预判参数;目标判断模块630,用于根据所述预判参数,判断所述目标物是否位于目标区域内;
位置生成模块640,用于若否,以第二位置为基准,在沿辅助方向的预设范围内采集采样点;从采样点中筛选出位于目标区域内的采样点,以控制所述目标物运动到所述新的第二位置;;第一轨迹生成模块650,用于基于智能动力系统行为模型,输出第一规划轨迹指令;
第二轨迹生成模块660,用于若是,基于智能动力系统行为模型,输出第二规划轨迹指令。
进一步,在一个实施例中,第一轨迹生成模块650包括:
第四参数匹配单元651,用于将当前参数与多个参考轨迹的多个参考参数进行匹配,以与当前参数最接近的参考参数对应的参考轨迹作为目标参考轨迹;
第四轨迹生成单元652,用于基于智能动力系统行为模型的目标参考轨迹,输出第一规划轨迹指令。
进一步,在一个实施例中,位置生成模块640包括:
采样获取单元641;用于获取当前采样点;
指令生成单元642,用于生成控制指令,以控制目标物移动到新的第一位置;新的第一位置为当前采样点的位置;
位置生成单元643,用于执行步骤S610-步骤S620;直到判断结果为是为止,以此时得到第二位置为新的第二位置。
进一步,在一个实施例中,第二轨迹生成模块660包括:
第五参数匹配单元661,将当前参数与多个参考轨迹的多个参考参数进行匹配,以与当前参数最接近的参考参数对应的参考轨迹作为目标参考轨迹;
第五轨迹生成单元662,基于智能动力系统行为模型的目标参考轨迹,输出第二规划轨迹指令。
进一步,在一个实施例中,指令生成模块610包括:
基准生成单元611,用于基于沿基准方向的力反馈,生成沿基准方向的基准运动指令,使得目标物首先由所述第一位置运动到第三位置;
辅助和基准生成单元612,用于生成辅助运动指令和基准运动指令,使得目标物从第三位置运动到第二位置;辅助运动指令为控制所述目标物沿辅助方向运动的指令。
在一个实施例中,如图16所示,提供一种轨迹规划装置,该装置包括:
目标位置获取模块410,用于获取智能体的当前轨迹和目标位置信息;
当前轨迹获取模块420,用于获取智能体的当前轨迹;其中,当前轨迹至少包括当前位置信息;
当前障碍信息获取或生成模块430,用于获取或生成当前障碍信息;
行为模型获取模块440,用于获取智能动力系统行为模型;
轨迹生成模块450,用于将当前障碍信息、当前轨迹和目标位置信息输入智能动力系统行为模型,输出规划轨迹指令和/或修正轨迹指令。
进一步,在一个实施例中,轨迹生成模块450包括:
第六参数匹配单元451,将当前参数与多个参考轨迹的多个参考参数进行匹配,以与当前参数最接近的参考参数对应的参考轨迹作为目标参考轨迹;
第六轨迹生成单元452,基于目标参考轨迹,将当前障碍信息、当前轨迹和目标位置信息输入
智能动力系统行为模型,输出规划轨迹指令和/或修正轨迹指令。
在一个实施例中,如图17所示,提供一种轨迹规划装置,该装置包括:
目标位置获取模块510,用于获取智能体的目标位置;
当前轨迹获取模块520,用于获取智能体的当前轨迹;其中,当前轨迹至少包括当前位置信息;
判断模块530,根据所述当前位置信息,判断智能体是否位于抵抗域内;
新目标位置生成模块540,若是,根据当前位置增量信息,偏转所述目标位置信息,生成新目标位置信息;
新规划轨迹生成模块550,将当前轨迹和新目标位置信息输入智能动力系统行为模型,生成新规划轨迹指令;
规划轨迹生成模块560,若否,将当前轨迹和所述目标位置输入智能动力系统行为模型,输出规划轨迹指令。
进一步,在一个实施例中,新规划轨迹生成模块550包括:
第七参数匹配单元551,将当前参数与多个参考轨迹的多个参考参数进行匹配,以与当前参数最接近的参考参数对应的参考轨迹作为目标参考轨迹;
第七轨迹生成单元552,基于目标参考轨迹,将当前轨迹和新目标位置信息输入智能动力系统行为模型,生成新规划轨迹指令。
进一步,在一个实施例中,规划轨迹生成模块560包括:
第八参数匹配单元561,将当前参数与多个参考轨迹的多个参考参数进行匹配,以与当前参数最接近的参考参数对应的参考轨迹作为目标参考轨迹;
第八轨迹生成单元562,基于所述目标参考轨迹,将所述当前轨迹和所述目标位置信息输入所述智能动力系统行为模型,输出规划轨迹指令。
关于轨迹规划训练装置和轨迹规划装置的具体限定可以参见上文中对于轨迹规划训练方法和轨迹规划方法的限定,在此不再赘述。上述轨迹规划训练装置和轨迹规划装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,如图21所示,提供一种智能体训练系统,该系统包括:
示教主体500,用于执行示教行为;
示教轨迹生成装置600,用于根据所述示教行为获取或生成示教轨迹;
训练装置710,用于获取示教主体执行示教行为过程中的示教轨迹;获取智能动力系统行为模型的初始模型;根据所述示教轨迹,训练所述初始模型,输出智能动力系统行为模型。
关于训练装置的具体限定可以参见上文中对于轨迹规划训练方法的限定,在此不再赘述。
在一个实施例中,如图8、9或10所示,提供一种智能体系统,该系统包括:智能体800和控制装置720;
控制装置720,用于实现上面实施例所述的轨迹规划方法;
具体的,可以用于获取智能体的初始和目标位置信息;获取智能动力系统行为模型;将所述初始和目标位置信息,输入智能动力系统行为模型,输出规划轨迹指令;或
获取智能体的目标位置信息;获取智能体的当前轨迹;获取智能动力系统行为模型;将所述当前轨迹和所述目标位置信息输入智能动力系统行为模型, 输出规划轨迹指令;或
获取智能体的参考辅助参数;获取智能体的目标位置信息;获取智能体的当前辅助参数;计算参考辅助参数和当前辅助参数之间的误差;获取智能体的当前轨迹;将所述当前误差、所述当前轨迹和所述目标位置信息输入所述智能动力系统行为模型,输出规划轨迹指令和/或修正轨迹指令;或
以目标物位于目标区域内为假设条件,生成调整指令,以控制目标物从第一位置运动到第二位置;第二位置为满足预设装配条件的位置;获取目标物从第一位置运动到第二位置的预判参数;根据预判参数,判断目标物是否位于目标区域内;若否,以第二位置为基准,在沿辅助方向的预设范围内采集采样点;从采样点中筛选出位于目标区域内的采样点,以控制所述目标物运动到所述新的第二位置;基于智能动力系统行为模型,输出第一规划轨迹指令;若是,基于智能动力系统行为模型,输出第二规划轨迹指令;或
获取智能体的目标位置信息;获取智能体的当前轨迹;获取或生成障碍物的当前障碍信息;将所述当前障碍信息、所述当前轨迹和所述目标位置信息输入所述智能动力系统行为模型,输出规划轨迹指令和/或修正轨迹指令;或
获取智能体的目标位置信息;获取所述智能体的当前轨迹;其中,所述当前轨迹至少包括当前位置信息;根据当前位置信息,判断所述智能体是否位于抵抗域内;若是,根据当前位置增量信息,偏转所述目标位置信息,生成新目标位置信息;将所述当前轨迹和所述新目标位置信息输入所述智能动力系统行为模型,生成新规划轨迹指令;若否,将所述当前轨迹和所述目标位置输入所述智能动力系统行为模型,输出规划轨迹指令。
智能体800,用于根据控制装置的控制执行轨迹运动。
比如:根据所述规划轨迹指令和/或所述修正轨迹指令执行对应的轨迹运动;根据第一轨迹规划指令或第二轨迹规划指令等执行对应的轨迹运动。
关于控制装置的具体限定可以参见上文中对于轨迹规划方法的限定,在此不再赘述。
进一步,在一个实施例中,所述智能体系统还包括上面实施例所述的智能体训练系统。
上述训练装置和控制装置可以为可编程逻辑控制器(Programmable LogicController,PLC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、计算机(Personal Computer,PC)、工业控制计算机(Industrial Personal Computer, IPC)或服务器等等。控制装置根据预先固定的程序,结合人工输入的信息、参数或者外部的第一传感器和/或第二传感器(比如图像传感器)采集的数据等生成程序指令。
在一个实施例中,如图22所示,提供一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,处理器执行计算机程序时实现上面实施例所述的轨迹规划训练方法和/或轨迹规划方法。
在一个实施例中,提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上面实施例所述的轨迹规划训练方法和/或轨迹规划方法。
在一个实施例中,提供一种计算机可读存储介质,其上存储有上面实施例所述的用于轨迹规划的智能动力系统行为模型、轨迹规划训练方法和/或轨迹规划方法。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程 ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM 以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink) DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
需要说明的是,上述轨迹规划训练方法、轨迹规划方法、训练装置、轨迹规划装置、训练系统或智能体系统等等中提到的智能体、示教主体、训练装置、控制装置和/或传感器等等,即可以是真实环境下的真实的物体,也可以是仿真平台下的虚拟的物体,通过仿真环境以达到连接真实物体的效果。将依赖虚拟环境完成行为训练后的控制装置,移植到真实环境下,对真实的物体进行控制或者再训练,可以节省训练过程的资源和时间。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
除非另有定义,本说明书所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本说明书中在本发明的说明书中所使用的属于只是为了描述具体的实施方式的目的,不是用于限制本发明。
本发明的权利要求书和说明书及上述附图中的术语“第一”、“第二”、“第三”、“S110”、“S120”“S130”等等(如果存在)是用来区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”“具有”以及他们的任何变形,意图在于覆盖不排他的包含。例如:包括了一系列步骤或者模块的过程、方法、系统、产品或机器人不必限于清楚地列出的那些步骤或者模块,而是包括没有清楚地列出的或对于这些过程、方法、系统、产品或机器人固有的其它步骤或模块。
需要说明的是,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的结构和模块并不一定是本发明所必须的。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

Claims (18)

1.一种轨迹规划方法,其特征在于,所述方法包括:
获取智能体的初始和目标位置信息;
获取智能动力系统行为模型;及
将所述初始和目标位置信息输入智能动力系统行为模型,输出规划轨迹指令。
2.根据权利要求1所述的轨迹规划方法,其特征在于,当所述智能体为机械手,所述规划轨迹指令为:
由多个离散点组成的规划轨迹中的每个离散点对应的运动加速度和/或角加速度;和/或
所述将所述初始和目标位置信息输入智能动力系统行为模型,输出规划轨迹指令包括:
将当前参数与多个参考轨迹的多个参考参数进行匹配,以与所述当前参数最接近的所述参考参数对应的所述参考轨迹作为目标参考轨迹;
基于所述目标参考轨迹,将所述初始和所述目标位置信息输入所述智能动力系统行为模型,输出规划轨迹指令。
3.一种轨迹规划方法,其特征在于,所述方法包括:
获取智能体的目标位置信息;
获取所述智能体的当前轨迹;
获取智能动力系统行为模型;及
将所述当前轨迹和所述目标位置信息输入所述智能动力系统行为模型,输出规划轨迹指令。
4.根据权利要求3所述的智能体轨迹规划方法,其特征在于,当所述智能体为机械手,所述规划轨迹指令为:
所述智能体下一时刻对应的运动加速度和/或角加速度;和/或
所述将所述当前轨迹和所述目标位置信息输入所述智能动力系统行为模型,输出规划轨迹指令包括:
将当前参数与多个参考轨迹的多个参考参数进行匹配,以与所述当前参数最接近的所述参考参数对应的所述参考轨迹作为目标参考轨迹;
基于所述目标参考轨迹,将所述当前轨迹和所述目标位置信息输入所述智能动力系统行为模型,输出规划轨迹指令。
5.一种轨迹规划方法,其特征在于,所述方法包括:
获取智能体的参考辅助参数;
获取所述智能体的目标位置信息;
获取所述智能体的当前辅助参数;
计算所述参考辅助参数和所述当前辅助参数之间的误差;
获取所述智能体的当前轨迹;及
将所述当前误差、所述当前轨迹和所述目标位置信息输入所述智能动力系统行为模型,输出规划轨迹指令和/或修正轨迹指令。
6.根据权利要求5所述的智能体轨迹规划方法,其特征在于,所述获取智能体的参考辅助参数包括:
获取所述智能体的初始和目标位置信息;
获取智能体智能动力系统行为模型;
将所述初始和目标位置信息输入所述智能动力系统行为模型,输出规划轨迹指令的参考指令;及
获取所述智能体执行所述参考指令过程中的参考辅助参数。
7.根据权利要求5或6所述的智能体轨迹规划方法,其特征在于,当所述智能体为机械手,所述规划轨迹指令和/或所述修正轨迹指令为:
由多个离散点组成的规划轨迹和/或修正轨迹中的每个离散点对应的智能体的运动加速度和/或角加速度;和/或
所述将所述当前误差、所述当前轨迹和所述目标位置信息输入所述智能动力系统行为模型,输出规划轨迹指令和/或修正轨迹指令包括:
将当前参数与多个参考轨迹的多个参考参数进行匹配,以与所述当前参数最接近的所述参考参数对应的所述参考轨迹作为目标参考轨迹;
基于所述目标参考轨迹,将所述当前误差、所述当前轨迹和所述目标位置信息输入所述智能动力系统行为模型,输出规划轨迹指令和/或修正轨迹指令。
8.一种轨迹规划方法,其特征在于,所述方法包括:
以目标物位于目标区域内为假设条件,生成调整指令,以控制所述目标物从第一位置运动到第二位置;所述第二位置为满足预设装配条件的位置;
获取所述目标物从所述第一位置运动到所述第二位置的预判参数;根据所述预判参数,判断所述目标物是否位于目标区域内;
若否,以所述第二位置为基准,在沿辅助方向的预设范围内采集采样点;从所述采样点中筛选出位于目标区域内的采样点,以控制所述目标物运动到所述新的第二位置;基于智能动力系统行为模型,输出第一规划轨迹指令;
若是,基于所述智能动力系统行为模型,输出第二规划轨迹指令。
9.根据权利要求8所述的轨迹规划方法,其特征在于,所述基于智能动力系统行为模型,输出第一规划轨迹指令包括:
将当前参数与多个参考轨迹的多个参考参数进行匹配,以与所述当前参数最接近的所述参考参数对应的所述参考轨迹作为目标参考轨迹;
基于所述智能动力系统行为模型的所述目标参考轨迹,输出第一规划轨迹指令;或
所述基于智能动力系统行为模型,输出第二规划轨迹指令包括:
将当前参数与多个参考轨迹的多个参考参数进行匹配,以与所述当前参数最接近的所述参考参数对应的所述参考轨迹作为目标参考轨迹;
基于所述智能动力系统行为模型的所述目标参考轨迹,输出所述第二规划轨迹指令。
10.根据权利要求8或9所述的轨迹规划方法,其特征在于,所述以目标物位于目标区域内为假设条件,生成调整指令包括:
基于沿基准方向的力反馈,生成沿基准方向的基准运动指令,使得所述目标物首先由所述第一位置运动到第三位置;所述基准运动指令为控制所述目标物沿基准方向运动的指令;
生成辅助运动指令和基准运动指令,使得所述目标物从所述第三位置运动到所述第二位置;辅助运动指令为控制所述目标物沿辅助方向运动的指令;和/或
所述从采样点中筛选出位于目标区域内的采样点,以控制所述目标物运动到所述新的第二位置包括:
获取当前采样点;
生成控制指令,以控制目标物移动到新的所述第一位置;所述新的所述第一位置为所述当前采样点的位置;
重复执行如下所述步骤:以目标物位于目标区域内为假设条件,生成调整指令,以控制所述目标物从第一位置运动到第二位置;获取所述目标物从所述第一位置运动到所述第二位置的预判参数;根据所述预判参数,判断所述目标物是否位于目标区域内;直到所述判断结果为是为止,以此时的所述第二位置为所述新的第二位置。
11.一种轨迹规划方法,其特征在于,所述方法包括:
获取智能体的目标位置信息;
获取所述智能体的当前轨迹;
获取或生成障碍物的当前障碍信息;及
将所述当前障碍信息、所述当前轨迹和所述目标位置信息输入所述智能动力系统行为模型,输出规划轨迹指令和/或修正轨迹指令。
12.根据权利要求11所述的智能体轨迹规划方法,其特征在于,所述将所述当前障碍信息、所述当前轨迹和所述目标位置信息输入所述智能动力系统行为模型,输出规划轨迹指令和/或修正轨迹指令包括:
将当前参数与多个参考轨迹的多个参考参数进行匹配,以与所述当前参数最接近的所述参考参数对应的所述参考轨迹作为目标参考轨迹;
基于所述目标参考轨迹,将所述当前障碍信息、所述当前轨迹和所述目标位置信息输入所述智能动力系统行为模型,输出规划轨迹指令和/或修正轨迹指令。
13.一种轨迹规划方法,其特征在于,所述方法包括:
获取智能体的目标位置信息;
获取所述智能体的当前轨迹;其中,所述当前轨迹至少包括当前位置信息;
根据所述当前位置信息,判断所述智能体是否位于抵抗域内;
若是,根据当前位置增量信息,偏转所述目标位置信息,生成新目标位置信息;
将所述当前轨迹和所述新目标位置信息输入智能动力系统行为模型,生成新规划轨迹指令;及
若否,将所述当前轨迹和所述目标位置信息输入所述智能动力系统行为模型,输出规划轨迹指令。
14.根据权利要求13所述的智能体轨迹规划方法,其特征在于,所述将所述当前轨迹和所述新目标位置信息输入智能动力系统行为模型,生成新规划轨迹指令包括:
将当前参数与多个参考轨迹的多个参考参数进行匹配,以与当前参数最接近的参考参数对应的参考轨迹作为目标参考轨迹;
基于所述目标参考轨迹,将所述当前轨迹和所述新目标位置信息输入智能动力系统行为模型,生成新规划轨迹指令;或
将所述当前轨迹和所述目标位置信息输入所述智能动力系统行为模型,输出规划轨迹指令包括:
将当前参数与多个参考轨迹的多个参考参数进行匹配,以与当前参数最接近的参考参数对应的参考轨迹作为目标参考轨迹;
基于所述目标参考轨迹,将所述当前轨迹和所述目标位置信息输入所述智能动力系统行为模型,输出规划轨迹指令。
15.一种轨迹规划装置,其特征在于,所述装置包括:
位置信息获取模块,用于获取智能体的初始和目标位置信息;
行为模型获取模块,用于获取所述智能动力系统行为模型;及
规划轨迹生成模块,用于将所述初始和目标位置信息,输入所述智能动力系统行为模型,输出规划轨迹指令;或
目标位置获取模块,用于获取智能体的目标位置信息;
当前轨迹获取模块,用于获取所述智能体的当前轨迹;
行为模型获取模块,用于获取智能动力系统行为模型;及
规划轨迹生成模块,用于将所述当前轨迹和所述目标位置信息输入所述智能动力系统行为模型,输出规划轨迹指令;或
参考辅助参数获取模块,用于获取智能体的参考辅助参数;
目标位置获取模块,用于获取所述智能体的目标位置信息;
当前辅助参数获取模块,用于获取所述智能体的当前辅助参数;
误差计算模块,用于计算所述参考辅助参数和所述当前辅助参数之间的误差;
当前轨迹获取模块,用于获取所述智能体的当前轨迹;及
轨迹生成模块,用于将所述当前误差、所述当前轨迹和所述目标位置信息输入所述智能动力系统行为模型,输出规划轨迹指令和/或修正轨迹指令;或
指令生成模块,用于以目标物位于目标区域内为假设条件,生成调整指令,以控制所述目标物从第一位置运动到第二位置;所述第二位置为满足预设装配条件的位置;
参数获取模块,用于获取所述目标物从所述第一位置运动到所述第二位置的预判参数;目标判断模块,用于根据所述预判参数,判断所述目标物是否位于目标区域内;
位置生成模块,用于若否,以所述第二位置为基准,在沿辅助方向的预设范围内采集采样点;从所述采样点中筛选出位于目标区域内的采样点,以控制所述目标物运动到所述新的第二位置;第一轨迹生成模块,用于基于智能动力系统行为模型,输出第一规划轨迹指令;
第二轨迹生成模块,用于若是,基于所述智能动力系统行为模型,输出第二规划轨迹指令;或
目标位置获取模块,用于获取智能体的目标位置信息;
当前轨迹获取模块,用于获取所述智能体的当前轨迹;
当前障碍信息获取或生成模块,用于获取或生成当前障碍信息;
行为模型获取模块,用于获取智能动力系统行为模型;及
轨迹生成模块,用于将所述当前障碍信息、所述当前轨迹和所述目标位置信息输入所述智能动力系统行为模型,输出规划轨迹指令和/或修正轨迹指令;或
目标位置获取模块,用于获取智能体的目标位置;
当前轨迹获取模块,用于获取所述智能体的当前轨迹;其中,所述当前轨迹至少包括当前位置信息;
判断模块,根据所述当前位置信息,判断所述智能体是否位于抵抗域内;
新目标位置生成模块,若是,根据当前位置增量信息,偏转所述目标位置信息,生成新目标位置信息;
新规划轨迹生成模块,将所述当前轨迹和所述新目标位置信息输入智能动力系统行为模型,生成新规划轨迹指令;及
规划轨迹生成模块,若否,将所述当前轨迹和所述目标位置输入所述智能动力系统行为模型,输出规划轨迹指令。
16.一种智能体系统,其特征在于,所述系统包括控制装置和智能体;
所述控制装置,用于实现权利要求1-14任一项所述的轨迹规划方法;
所述智能体,用于根据所述控制装置的控制执行对应的轨迹运动。
17.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1-14任一项所述的轨迹规划方法。
18.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-14任一项所述的轨迹规划方法。
CN202010578867.0A 2019-06-28 2020-06-23 轨迹规划方法、装置及系统 Pending CN111958584A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201910571862 2019-06-28
CN2019105718622 2019-06-28

Publications (1)

Publication Number Publication Date
CN111958584A true CN111958584A (zh) 2020-11-20

Family

ID=73360677

Family Applications (2)

Application Number Title Priority Date Filing Date
CN202010174770.3A Pending CN112140101A (zh) 2019-06-28 2020-03-13 轨迹规划方法、装置及系统
CN202010578867.0A Pending CN111958584A (zh) 2019-06-28 2020-06-23 轨迹规划方法、装置及系统

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN202010174770.3A Pending CN112140101A (zh) 2019-06-28 2020-03-13 轨迹规划方法、装置及系统

Country Status (1)

Country Link
CN (2) CN112140101A (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112518756A (zh) * 2020-12-10 2021-03-19 深圳市优必选科技股份有限公司 机械臂的运动轨迹规划方法及装置、机械臂及存储介质
CN112882441A (zh) * 2021-01-27 2021-06-01 南京航空航天大学 一种用户自定义的轨迹规划方法
CN114029961A (zh) * 2021-12-16 2022-02-11 滁州学院 一种机械臂高精度传动的机器人控制方法及系统
CN114693721A (zh) * 2022-03-24 2022-07-01 美的集团(上海)有限公司 运动规划方法、装置及机器人
CN114888804A (zh) * 2022-05-18 2022-08-12 深圳鹏行智能研究有限公司 基于工作链的机器人控制装置及方法、介质、机器人
CN116197918A (zh) * 2023-05-05 2023-06-02 北京华晟经世信息技术股份有限公司 基于动作记录分析的机械手控制系统

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112140101A (zh) * 2019-06-28 2020-12-29 鲁班嫡系机器人(深圳)有限公司 轨迹规划方法、装置及系统
CN113070878B (zh) * 2021-03-26 2022-06-07 中国科学院深圳先进技术研究院 基于脉冲神经网络的机器人控制方法、机器人及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106114507A (zh) * 2016-06-21 2016-11-16 百度在线网络技术(北京)有限公司 用于智能车辆的局部轨迹规划方法和装置
WO2017219639A1 (zh) * 2016-06-20 2017-12-28 广州视源电子科技股份有限公司 一种机械臂的运动轨迹规划方法、装置及机器人
CN107538508A (zh) * 2017-02-16 2018-01-05 北京卫星环境工程研究所 基于视觉定位的机器人自动装配方法与系统
CN107645701A (zh) * 2017-09-12 2018-01-30 咪咕互动娱乐有限公司 一种生成运动轨迹的方法及装置
CN108646667A (zh) * 2018-03-05 2018-10-12 北京华航唯实机器人科技股份有限公司 轨迹生成方法及装置、终端
CN112140101A (zh) * 2019-06-28 2020-12-29 鲁班嫡系机器人(深圳)有限公司 轨迹规划方法、装置及系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3476549A1 (en) * 2017-10-27 2019-05-01 Creaholic SA Hardware module, robotic system, and method for operating the robotic system

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017219639A1 (zh) * 2016-06-20 2017-12-28 广州视源电子科技股份有限公司 一种机械臂的运动轨迹规划方法、装置及机器人
CN106114507A (zh) * 2016-06-21 2016-11-16 百度在线网络技术(北京)有限公司 用于智能车辆的局部轨迹规划方法和装置
CN107538508A (zh) * 2017-02-16 2018-01-05 北京卫星环境工程研究所 基于视觉定位的机器人自动装配方法与系统
CN107645701A (zh) * 2017-09-12 2018-01-30 咪咕互动娱乐有限公司 一种生成运动轨迹的方法及装置
CN108646667A (zh) * 2018-03-05 2018-10-12 北京华航唯实机器人科技股份有限公司 轨迹生成方法及装置、终端
CN112140101A (zh) * 2019-06-28 2020-12-29 鲁班嫡系机器人(深圳)有限公司 轨迹规划方法、装置及系统

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112518756A (zh) * 2020-12-10 2021-03-19 深圳市优必选科技股份有限公司 机械臂的运动轨迹规划方法及装置、机械臂及存储介质
CN112518756B (zh) * 2020-12-10 2022-08-05 深圳市优必选科技股份有限公司 机械臂的运动轨迹规划方法及装置、机械臂及存储介质
CN112882441A (zh) * 2021-01-27 2021-06-01 南京航空航天大学 一种用户自定义的轨迹规划方法
CN114029961A (zh) * 2021-12-16 2022-02-11 滁州学院 一种机械臂高精度传动的机器人控制方法及系统
CN114693721A (zh) * 2022-03-24 2022-07-01 美的集团(上海)有限公司 运动规划方法、装置及机器人
CN114693721B (zh) * 2022-03-24 2023-09-01 美的集团(上海)有限公司 运动规划方法、装置及机器人
CN114888804A (zh) * 2022-05-18 2022-08-12 深圳鹏行智能研究有限公司 基于工作链的机器人控制装置及方法、介质、机器人
CN114888804B (zh) * 2022-05-18 2024-03-12 深圳鹏行智能研究有限公司 基于工作链的机器人控制装置及方法、介质、机器人
CN116197918A (zh) * 2023-05-05 2023-06-02 北京华晟经世信息技术股份有限公司 基于动作记录分析的机械手控制系统

Also Published As

Publication number Publication date
CN112140101A (zh) 2020-12-29

Similar Documents

Publication Publication Date Title
CN111958584A (zh) 轨迹规划方法、装置及系统
CN110900598B (zh) 机器人三维运动空间动作模仿学习方法和系统
Mitrovic et al. Adaptive optimal feedback control with learned internal dynamics models
Scherzinger et al. Contact skill imitation learning for robot-independent assembly programming
CN116460860B (zh) 一种基于模型的机器人离线强化学习控制方法
JP7295421B2 (ja) 制御装置及び制御方法
Jamone et al. Incremental learning of context-dependent dynamic internal models for robot control
CN114080304B (zh) 控制装置、控制方法及控制程序
Okubanjo et al. Modeling of 2-DOF robot arm and control
CN118288294B (zh) 一种基于图像变导纳的机器人视觉伺服与人机协同控制方法
Sturm et al. Unsupervised body scheme learning through self-perception
Bargsten et al. Experimental robot inverse dynamics identification using classical and machine learning techniques
CN115685755A (zh) 一种基于离散控制障碍函数的人机协作控制方法
Lakhal et al. Control of a hyper-redundant robot for quality inspection in additive manufacturing for construction
CN115416024A (zh) 一种力矩控制的机械臂自主轨迹规划方法和系统
Jha et al. Robot programming by demonstration using teleoperation through imitation
Oikonomou et al. Reproduction of human demonstrations with a soft-robotic arm based on a library of learned probabilistic movement primitives
Nordmann et al. Teaching nullspace constraints in physical human-robot interaction using reservoir computing
Gäbert et al. Generation of human-like arm motions using sampling-based motion planning
CN107894709A (zh) 基于自适应评价网络冗余机器人视觉伺服控制
Martı́n et al. Robot arm reaching through neural inversions and reinforcement learning
Kawaharazuka et al. Dynamic task control method of a flexible manipulator using a deep recurrent neural network
Joukov et al. Gaussian process based model predictive controller for imitation learning
Sidhik et al. Towards an Online Framework for Changing-Contact Robot Manipulation Tasks
Cursi et al. Augmenting loss functions of feedforward neural networks with differential relationships for robot kinematic modelling

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
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20201120

WD01 Invention patent application deemed withdrawn after publication