工业机器人的示教轨迹复现方法、系统及机器人与流程

文档序号:17480554发布日期:2019-04-20 06:24阅读:907来源:国知局
工业机器人的示教轨迹复现方法、系统及机器人与流程

本发明属于机器人技术领域,尤其涉及一种工业机器人的示教轨迹复现方法、系统及机器人。



背景技术:

目前工业机器人的应用范围不断扩展,从汽车制造、电子装配、食品加工等各个传统应用场景,逐步渗透到消费、服务等新兴领域,这对工业机器人的易用性和方便性提出了更高的要求。

工业机器人一般是通过示教轨迹的方式确定期望的目标点和轨迹,然后根据外界信号触发重复执行示教过的轨迹。现有的拖动示教轨迹复现方法主要包括:在关节空间对示教轨迹进行拟合,通过多项式插值逼近原示教轨迹。或在笛卡尔空间对示教轨迹进行拟合,通过多段小线段逼近原示教轨迹。上述通过关节空间拟合获得的轨迹,存在机器人末端位姿误差大且末端位姿速度变化不可控的问题,上述通过多段小线段拟合获得的轨迹,存在所获得的轨迹不连续,需要对多个小线段的衔接处进行平滑处理,需要对机器人末端姿态进行平滑处理的问题。

综上所述,目前的拖动示教轨迹复现方法存在末端位姿误差大、位姿速度变化不可控且位姿曲线不连续的问题。



技术实现要素:

有鉴于此,本发明实施例提供了一种工业机器人的示教轨迹复现方法、系统及机器人,以解决目前的拖动示教轨迹复现方法存在末端位姿误差大、位姿速度变化不可控且位姿曲线不连续的问题。

本发明的第一方面提供了一种工业机器人的示教轨迹复现方法,包括:

采集机器人的各关节信息,根据机器人的各关节信息获取末端位姿的位姿信息,并对所述位姿信息进行滤波;

对滤波后位姿信息进行拟合,获取连续的复现轨迹;

根据所述复现轨迹计算复现轨迹的运行速度;

根据所述复现轨迹的运动速度对所述复现轨迹进行速度规划;

根据速度规划结果获取复现轨迹每个插补周期的位置信息,控制机器人根据所述位置信息进行运动。

本发明的第二方面提供了一种工业机器人的示教轨迹复现系统,包括:

位姿信息获取模块,用于采集机器人的各关节信息,根据机器人的各关节信息获取末端位姿的位姿信息,并对所述位姿信息进行滤波;

拟合模块,用于对滤波后位姿信息进行拟合,获取连续的复现轨迹;

速度计算模块,用于根据所述复现轨迹计算复现轨迹的运行速度;

速度规划模块,用于根据所述复现轨迹的运动速度对所述复现轨迹进行速度规划;

运动控制模块,用于根据速度规划结果获取复现轨迹每个插补周期的位置信息,控制机器人根据所述位置信息进行运动。

本发明的第三方面提供了一种机器人,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:

采集机器人的各关节信息,根据机器人的各关节信息获取末端位姿的位姿信息,并对所述位姿信息进行滤波;

对滤波后位姿信息进行拟合,获取连续的复现轨迹;

根据所述复现轨迹计算复现轨迹的运行速度;

根据所述复现轨迹的运动速度对所述复现轨迹进行速度规划;

根据速度规划结果获取复现轨迹每个插补周期的位置信息,控制机器人根据所述位置信息进行运动。

本发明的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:

采集机器人的各关节信息,根据机器人的各关节信息获取末端位姿的位姿信息,并对所述位姿信息进行滤波;

对滤波后位姿信息进行拟合,获取连续的复现轨迹;

根据所述复现轨迹计算复现轨迹的运行速度;

根据所述复现轨迹的运动速度对所述复现轨迹进行速度规划;

根据速度规划结果获取复现轨迹每个插补周期的位置信息,控制机器人根据所述位置信息进行运动。

本发明提供的一种工业机器人的示教轨迹复现方法、系统及机器人,通过采集机器人的关节信息,并基于各关节信息获取位姿信息并进行滤波,根据滤波后的位姿信息进行拟合得到的连续的复现轨迹,减少末端位姿的误差的同时保证复现轨迹的曲率连续,并对生成的复现轨迹进行速度规划,进而保证轨迹复现过程中速度可控,有效地解决了目前的拖动示教轨迹复现方法存在末端位姿误差大、位姿速度变化不可控且位姿曲线不连续的问题。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1是本发明实施例一提供的一种工业机器人的示教轨迹复现方法的实现流程示意图;

图2是本发明实施例一提供的一种工业机器人的示教轨迹复现方法的位姿曲线的示意图;

图3是本发明实施例二提供的对应实施例一步骤s101的实现流程示意图;

图4是本发明实施例三提供的对应实施例一步骤s102的实现流程示意图;

图5是本发明实施例四提供的对应实施例一步骤s103的实现流程示意图;

图6是本发明实施例五提供的一种工业机器人的示教轨迹复现系统的结构示意图;

图7是本发明实施例六提供的对应实施例五中位姿信息获取模块101的结构示意图;

图8是本发明实施例七提供的对应实施例五中拟合模块102的结构示意图;

图9是本发明实施例八提供的对应实施例五中速度计算模块103的结构示意图;

图10是本发明实施例九提供的终端设备的示意图。

具体实施方式

以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本发明实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本发明。在其它情况中,省略对众所周知的系统、系统、电路以及方法的详细说明,以免不必要的细节妨碍本发明的描述。

为了说明本发明所述的技术方案,下面通过具体实施例来进行说明。

实施例一:

如图1所示,本实施例提供了一种工业机器人的示教轨迹复现方法,其具体包括:

步骤s101:采集机器人的各关节信息,根据机器人的各关节信息获取末端位姿的位姿信息,并对所述位姿信息进行滤波。

在具体应用中,拖动机器人产生一条示教轨迹,采集机器人的各关节信息,通过机器人运动学正解获得末端的笛卡尔位姿信息。对获取的位姿信息进行滤波,以消除位姿信息的噪声。位姿信息包括位置信息和姿态信息。需要说明的是,通过机器人运动学正解获得末端的笛卡尔位姿信息是本领域的现有技术,在此不再对其如何实现进行赘述。

在具体应用中,可以通过机器人各关节处的传感器采集机器人的各关节信息。还可以通过安装在机器人关节或电机端的编码器采集机器人的各关节信息,对此不加以限制。

步骤s102:对滤波后位姿信息进行拟合,获取连续的复现轨迹。

在具体应用中,采用nurbs曲线对位姿信息进行拟合,通过nurbs曲线进行拟合便能够得到连续的复现轨迹。如图2所示,采用nurbs曲线对复现轨迹进行拟合,得到连续的位姿曲线,上述位姿曲线便是复现轨迹。

在具体应用中,根据位置信息通过nurbs曲线进行拟合得到连续的位置曲线,根据姿态信息通过nurbs曲线进行拟合得到连续的姿态曲线。

步骤s103:根据所述复现轨迹计算复现轨迹的运行速度。

在具体应用中,根据复现轨迹中连续的位置曲线计算得到连续的位置曲线的总长度,并根据拖动机器人的总运动时长和上述连续的位置曲线的总长度计算得出复现轨迹的运行速度。

步骤s104:根据所述复现轨迹的运动速度对所述复现轨迹进行速度规划。

在具体应用中,根据计算所得复现轨迹的连续的位置曲线的总长度及计算得到的复现轨迹的运行速度,采用s型速度曲线进行速度规划。需要说明的是,s曲线用于速度规划是本领域的现有技术,本实施例不再对如何采用s型速度曲线进行速度规划进行赘述。

步骤s105:根据速度规划结果获取复现轨迹每个插补周期的位置信息,控制机器人根据所述位置信息进行运动。

在具体应用中,对于速度规划完成后的复现轨迹,将速度代入到该复现轨迹的姿态曲线中获得每个插补周期的位置信息。再控制机器人根据所述位置信息进行运动,实现对机器人的示教轨迹的复现。

本实施例提供的工业机器人的示教轨迹复现方法,通过采集机器人的关节信息,并基于各关节信息获取位姿信息并进行滤波,根据滤波后的位姿信息进行拟合得到的连续的复现轨迹,减少末端位姿的误差的同时保证复现轨迹的曲率连续,并对生成的复现轨迹进行速度规划,进而保证轨迹复现过程中速度可控,有效地解决了目前的拖动示教轨迹复现方法存在末端位姿误差大、位姿速度变化不可控且位姿曲线不连续的问题。

实施例二:

如图3所示,在本实施例中,实施例一中的步骤s101具体包括:

步骤s201:拖动机器人产生示教轨迹,采集所述机器人的各关节信息。

在具体应用中,通过拖动机器人,使得机器人产生示教轨迹,采集机器人各关节的关节信息。可以通过机器人各关节处的传感器采集机器人的各关节信息。还可以通过安装在机器人关节或电机端的编码器采集机器人的各关节信息,对此不加以限制。

步骤s202:根据所述机器人的各关节信息基于机器人正向运动学确定所述机器人的末端位姿的笛卡尔位姿信息。

需要说明的是,根据所述机器人的各关节信息基于机器人正向运动学确定所述机器人的末端位姿的笛卡尔位姿信息的确定方法作为现有技术手段,可以采用现有的确定方法来实现,在此不加以赘述。

步骤s203:对获取的笛卡尔位姿信息进行滤波,消除位姿信息的噪音。

在具体应用中,对该关节位置值进行滤波处理以消除高频抖动。具体的,分析实际实验数据可以发现,在低速或高速拖动时,传感器采集到的关节位置存在一定的高频抖动,需要通过滤波来消除位姿信息的噪音(高频抖动)。滤波可以采用带阻滤波器结合带通滤波器的形式,带阻滤波器滤除人手特定频率的抖动,带通滤波器消除摩擦力导致的高频抖动,同时保留期望的轨迹信息。

实施例三:

如图4所示,在本实施例中,实施例一中的步骤s102具体包括:

步骤s301:对采集的位姿信息,采用nurbs曲线进行拟合,得到连续的复现轨迹;所述位姿信息包括位置信息和姿态信息。

在具体应用中,对于采集的位置信息采用nurbs曲线进行拟合,获得连续的位置曲线,所述连续的位置曲线为:其中,di为位置曲线控制顶点,wi为权因子,为p次b样条基函数;

在具体应用中,对于采集的姿态信息采用nurbs曲线进行拟合,获得连续的姿态曲线,所述连续的姿态曲线为:其中,为姿态nurbs曲线控制顶点,wi为权因子,为p次b样条基函数。

在具体应用中,采用b样条曲线拟合能够保证生成曲线的曲率连续性。

实施例四:

如图5所示,在本实施例中,实施例一中的步骤s103具体包括:

步骤s401:根据所述复现轨迹计算位置曲线的总长度。

在具体应用中,根据所述复现轨迹计算位置曲线的总长度的计算公式为:其中,p′(u)为p(u)对参数u的一阶导数,p(u)是复现轨迹的位置曲线。需要说明的是,利用数值积分法即可获得位置曲线总长度的近似解。

步骤s402:根据采集时间和位置曲线的总长度计算复现轨迹的运行速度。

在具体应用中,根据采集时间和位置曲线的总长度计算复现轨迹的运行速度的计算公式为:其中,tt为采集时间。

实施例五:

如图6所示,本实施例提供一种工业机器人的示教轨迹复现系统100,用于执行实施例一中的方法步骤,其包括位姿信息获取模块101、拟合模块102、速度计算模块103、速度规划模块104以及运动控制模块105。

位姿信息获取模块101用于采集机器人的各关节信息,根据机器人的各关节信息获取末端位姿的位姿信息,并对所述位姿信息进行滤波。

拟合模块102用于对滤波后位姿信息进行拟合,获取连续的复现轨迹。

速度计算模块103用于根据所述复现轨迹计算复现轨迹的运行速度。

速度规划模块104用于根据所述复现轨迹的运动速度对所述复现轨迹进行速度规划。

运动控制模块105用于根据速度规划结果获取复现轨迹每个插补周期的位置信息,控制机器人根据所述位置信息进行运动。

需要说明的是,本发明实施例提供的工业机器人的示教轨迹复现系统,由于与本发明图1所示方法实施例基于同一构思,其带来的技术效果与本发明图1所示方法实施例相同,具体内容可参见本发明图1所示方法实施例中的叙述,此处不再赘述。

因此,本实施例提供的一种工业机器人的示教轨迹复现系统,同样能够通过采集机器人的关节信息,并基于各关节信息获取位姿信息并进行滤波,根据滤波后的位姿信息进行拟合得到的连续的复现轨迹,减少末端位姿的误差的同时保证复现轨迹的曲率连续,并对生成的复现轨迹进行速度规划,进而保证轨迹复现过程中速度可控,有效地解决了目前的拖动示教轨迹复现方法存在末端位姿误差大、位姿速度变化不可控且位姿曲线不连续的问题。

实施例六:

如图7所示,在本实施例中,实施例五中的位姿信息获取模块101包括用于执行图3所对应的实施例中的方法步骤的结构,其包括采集单元201、确定单元202以及滤波单元203。

采集单元201用于拖动机器人产生示教轨迹,采集所述机器人的各关节信息。

确定单元202用于根据所述机器人的各关节信息基于机器人正向运动学确定所述机器人的末端位姿的笛卡尔位姿信息。

滤波单元203用于对获取的笛卡尔位姿信息进行滤波,消除位姿信息的噪音。

实施例七:

如图8所示,在本实施例中,实施例五中的拟合模块102包括用于执行图4所对应的实施例中的方法步骤的结构,其包括拟合单元301。

拟合单元301用于对采集的位姿信息,采用nurbs曲线进行拟合,得到连续的复现轨迹;所述位姿信息包括位置信息和姿态信息。

对于采集的位置信息采用nurbs曲线进行拟合,获得连续的位置曲线,所述连续的位置曲线为:其中,di为位置曲线控制顶点,wi为权因子,为p次b样条基函数;

对于采集的姿态信息采用nurbs曲线进行拟合,获得连续的姿态曲线,所述连续的姿态曲线为:其中,为姿态nurbs曲线控制顶点,wi为权因子,为p次b样条基函数。

实施例八:

如图9所示,在本实施例中,实施例五中的速度计算模块103包括用于执行图5所对应的实施例中的方法步骤的结构,其包括第一计算单元401和第二计算单元402。

第一计算单元401用于根据所述复现轨迹计算位置曲线的总长度。

第二计算单元402用于根据采集时间和位置曲线的总长度计算复现轨迹的运行速度。

实施例九:

图10是本发明实施例七提供的机器人的示意图。如图10所示,该实施例的机器人9包括:处理器90、存储器91以及存储在所述存储器91中并可在所述处理器90上运行的计算机程序92,例如程序。所述处理器90执行所述计算机程序92时实现上述各个图片处理方法实施例中的步骤,例如图1所示的步骤s101至s105。或者,所述处理器90执行所述计算机程序92时实现上述系统实施例中各模块/单元的功能,例如图6所示模块101至105的功能。

示例性的,所述计算机程序92可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器91中,并由所述处理器90执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序92在所述机器人9中的执行过程。例如,所述计算机程序92可以被分割成位姿信息获取模块、拟合模块、速度计算模块、速度规划模块以及运动控制模块,各模块具体功能如下:

位姿信息获取模块,用于采集机器人的各关节信息,根据机器人的各关节信息获取末端位姿的位姿信息,并对所述位姿信息进行滤波;

拟合模块,用于对滤波后位姿信息进行拟合,获取连续的复现轨迹;

速度计算模块,用于根据所述复现轨迹计算复现轨迹的运行速度;

速度规划模块,用于根据所述复现轨迹的运动速度对所述复现轨迹进行速度规划;

运动控制模块,用于根据速度规划结果获取复现轨迹每个插补周期的位置信息,控制机器人根据所述位置信息进行运动。

所称处理器90可以是中央处理单元(centralprocessingunit,cpu),还可以是其他通用处理器、数字信号处理器(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现成可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

所述存储器91可以是所述机器人9的内部存储单元,例如机器人9的硬盘或内存。所述存储器91也可以是所述机器人9的外部存储设备,例如所述机器人9上配备的插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)等。进一步地,所述存储器91还可以既包括所述机器人9的内部存储单元也包括外部存储设备。所述存储器91用于存储所述计算机程序以及所述机器人所需的其他程序和数据。所述存储器91还可以用于暂时地存储已经输出或者将要输出的数据。

所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述系统的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述无线终端中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

在本发明所提供的实施例中,应该理解到,所揭露的系统/机器人和方法,可以通过其它的方式实现。例如,以上所描述的系统/机器人实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,系统或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。

所述设置为分离部件说明的单元可以是或者也可以不是物理上分开的,设置为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的模块/单元如果以软件功能单元的形式实现并设置为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或系统、记录介质、u盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括是电载波信号和电信信号。

以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1