掌桥专利:专业的专利平台
掌桥专利
首页

一种机器人离线程序校准方法、计算机设备及可读存储介质

文献发布时间:2024-04-18 19:58:26


一种机器人离线程序校准方法、计算机设备及可读存储介质

技术领域

本申请涉及机器人应用技术领域,特别是涉及一种机器人离线程序校准方法、计算机设备及可读存储介质。

背景技术

目前,机器人是智能制造领域的关键基础设备,而机器人的位姿性能精度是决定其工业场景应用的重要技术指标。通过在虚拟环境中导入产品、工装、工具和机器人模型,构建虚拟的机器人系统模型,在虚拟环境中完成机器人的运动程序离线示教和编程。

由于机器人在现实环境中的安装位置和虚拟环境中的位置无法保证一致,导致仿真导出的离线程序在实际操作时存在误差,需要进行离线程序校准工作。

因此,亟需一种机器人离线程序校准方法。

发明内容

基于此,有必要针对上述技术问题,提供一种机器人离线程序校准方法、计算机设备及可读存储介质。

第一方面,提供了一种机器人离线程序校准方法,所述方法包括:

在现实环境中,获取机器人末端在预设工装位置对应的现实坐标数据,并构建现实坐标矩阵;

在虚拟环境中,获取所述机器人末端在所述预设工装位置对应的虚拟坐标数据,并构建虚拟坐标矩阵;

根据所述现实坐标矩阵、所述虚拟坐标矩阵和SVD分解算法,确定所述现实坐标矩阵和所述虚拟坐标矩阵对应的偏差变换矩阵;

根据所述偏差变换矩阵和预设的偏差位置数据分解算法,确定偏差位置数据;

基于所述偏差位置数据,对所述机器人末端的离线程序进行校准。

作为一种可选的实施方式,所述根据所述现实坐标矩阵、所述虚拟坐标矩阵和SVD分解算法,确定所述现实坐标矩阵和所述虚拟坐标矩阵对应的偏差变换矩阵,包括:

基于所述SVD分解算法,对所述虚拟坐标矩阵进行SVD分解,得到左奇异值矩阵、奇异值矩阵和右奇异值矩阵;

根据所述左奇异值矩阵、所述奇异值矩阵、所述右奇异值矩阵和所述现实坐标矩阵,确定所述现实坐标矩阵和所述虚拟坐标矩阵对应的偏差变换矩阵。

作为一种可选的实施方式,所述基于所述SVD分解算法,对所述虚拟坐标矩阵进行SVD分解,得到左奇异值矩阵、奇异值矩阵和右奇异值矩阵的公式为:

N=UVW

其中,N为虚拟坐标矩阵,U为左奇异值矩阵,V为奇异值矩阵,W

作为一种可选的实施方式,所述根据所述左奇异值矩阵、所述奇异值矩阵、所述右奇异值矩阵和所述现实坐标矩阵,确定所述现实坐标矩阵和所述虚拟坐标矩阵对应的偏差变换矩阵,包括:

分别确定所述左奇异值矩阵对应的第一逆矩阵、所述奇异值矩阵对应的第二逆矩阵和所述右奇异值矩阵对应的第三逆矩阵;

根据所述第一逆矩阵、所述第二逆矩阵、所述第三逆矩阵和所述现实坐标矩阵,确定所述现实坐标矩阵和所述虚拟坐标矩阵对应的偏差变换矩阵。

作为一种可选的实施方式,所述根据所述第一逆矩阵、所述第二逆矩阵、所述第三逆矩阵和所述现实坐标矩阵,确定所述现实坐标矩阵和所述虚拟坐标矩阵对应的偏差变换矩阵的公式为:

其中,bTp为偏差变换矩阵,M为现实坐标矩阵,U

作为一种可选的实施方式,所述偏差位置数据包括平移偏差坐标量和旋转偏差坐标量,所述根据所述偏差变换矩阵和预设的偏差位置数据分解算法,确定偏差位置数据的公式为:

其中,c表示三角函数cos,s表示三角函数sin,X

作为一种可选的实施方式,所述预设工装位置为基于滑橇或工装测量建立的坐标系中的至少一个预设的位置。

作为一种可选的实施方式,所述基于所述偏差位置数据,对所述机器人末端的离线程序进行校准,包括:

根据所述偏差位置数据,修正所述虚拟环境下所述机器人末端的位置;

输出所述虚拟环境下所述机器人末端的离线程序至所述现实环境下所述机器人末端。

第二方面,提供了一种计算机设备,包括存储器及处理器,所述存储器上存储有可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面任一项所述的方法步骤。

第三方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面任一项所述的方法步骤。

本申请提供了一种机器人离线程序校准方法、计算机设备及可读存储介质,所述方法包括:在现实环境中,获取机器人末端在预设工装位置对应的现实坐标数据,并构建现实坐标矩阵。在虚拟环境中,获取所述机器人末端在所述预设工装位置对应的虚拟坐标数据,并构建虚拟坐标矩阵。根据所述现实坐标矩阵、所述虚拟坐标矩阵和SVD分解算法,确定所述现实坐标矩阵和所述虚拟坐标矩阵对应的偏差变换矩阵。根据所述偏差变换矩阵和预设的偏差位置数据分解算法,确定偏差位置数据。基于所述偏差位置数据,对所述机器人末端的离线程序进行校准。本申请的实施例提供的技术方案至少带来以下有益效果:首先,对应用场景没有要求,易于运用和部署。其次,以现实环境中的机器人末端位置坐标为基准,通过计算偏差位置数据,校准虚拟环境中的机器人末端位置,校准后输出的离线程序,由于修正了位置偏差,可以供现实环境中的机器人直接使用,有效提升了仿真精度。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。

附图说明

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

图1为本申请实施例提供的一种机器人离线程序校准方法的流程图;

图2为本申请实施例提供的一种偏差变换矩阵的确定方法的流程图;

图3为本申请实施例提供的另一种偏差变换矩阵的确定方法的流程图;

图4为本申请实施例提供的另一种机器人离线程序校准方法的流程图;

图5为本申请实施例提供的一种机器人离线程序校准方法的示例的流程图;

图6为本申请实施例提供的一种现实环境的生产线示意图;

图7为本申请实施例提供的一种虚拟环境的生产线示意图;

图8为本申请实施例提供的一种计算机设备的结构示意图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

下面将结合具体实施方式,对本申请实施例提供的一种机器人离线程序校准方法进行详细的说明,图1为本申请实施例提供的一种机器人离线程序校准方法的流程图,如图1所示,具体步骤如下:

步骤101,在现实环境中,获取机器人末端在预设工装位置对应的现实坐标数据,并构建现实坐标矩阵。

在实施中,为了加快生产效率,在生产线上设置有机器人,机器人按照技术人员通过计算机输入的离线程序,通过机器人末端完成产品加工。在生产线上建立坐标系,并将机器人放置于坐标系内的预设工装位置上,并获取机器人末端在预设工装位置对应的现实坐标数据,并构建现实坐标矩阵。例如:图6为本申请实施例提供的一种现实环境的生产线示意图,如图6所示,生产线610的一侧设置有预设的工装位置,预设的工装位置包括位置P

步骤102,在虚拟环境中,获取机器人末端在预设工装位置对应的虚拟坐标数据,并构建虚拟坐标矩阵。

在实施中,在虚拟环境中,设置有与现实环境对应的坐标系,将机器人放置于坐标系内的预设工装位置上,虚拟环境中的工装位置与现实环境中的工装位置不一定相同。例如:图7为本申请实施例提供的一种虚拟环境的生产线示意图,如图7所示,生产线710的一侧设置有预设的工装位置,预设的工装位置包括位置P

作为一种可选的实施方式,预设工装位置为基于滑橇或工装测量建立的坐标系中的至少一个预设的位置。

步骤103,根据现实坐标矩阵、虚拟坐标矩阵和SVD分解算法,确定现实坐标矩阵和虚拟坐标矩阵对应的偏差变换矩阵。

在实施中,计算机根据现实坐标矩阵、虚拟坐标矩阵和SVD分解算法,确定现实坐标矩阵和虚拟坐标矩阵对应的偏差变换矩阵。针对虚拟坐标矩阵N和现实坐标矩阵M,存在矩阵bTp,使M=bTp×N,则bTp为现实坐标矩阵和虚拟坐标矩阵对应的偏差变换矩阵。

作为一种可选的实施方式,图2为本申请实施例提供的一种偏差变换矩阵的确定方法的流程图,如图2所示,步骤103中根据现实坐标矩阵、虚拟坐标矩阵和SVD分解算法,确定现实坐标矩阵和虚拟坐标矩阵对应的偏差变换矩阵的具体步骤如下:

步骤201,基于SVD分解算法,对虚拟坐标矩阵进行SVD分解,得到左奇异值矩阵、奇异值矩阵和右奇异值矩阵。

在实施中,SVD分解可以将任意矩阵分解成一个正交矩阵、一个对角矩阵和另一个正交矩阵的乘积,即左奇异值矩阵、奇异值矩阵和右奇异值矩阵。计算机基于SVD分解算法,对虚拟坐标矩阵进行SVD分解,得到左奇异值矩阵、奇异值矩阵和右奇异值矩阵。

作为一种可选的实施方式,步骤201中基于SVD分解算法,对虚拟坐标矩阵进行SVD分解,得到左奇异值矩阵、奇异值矩阵和右奇异值矩阵的公式为:

N=UVW

其中,N为虚拟坐标矩阵,U为左奇异值矩阵,V为奇异值矩阵,W

在实施中,对虚拟坐标矩阵进行SVD分解,得到N=UVW

步骤202,根据左奇异值矩阵、奇异值矩阵、右奇异值矩阵和现实坐标矩阵,确定现实坐标矩阵和虚拟坐标矩阵对应的偏差变换矩阵。

在实施中,计算机可以根据左奇异值矩阵、奇异值矩阵、右奇异值矩阵和现实坐标矩阵,确定现实坐标矩阵和虚拟坐标矩阵对应的偏差变换矩阵。

作为一种可选的实施方式,图3为本申请实施例提供的另一种偏差变换矩阵的确定方法的流程图,如图3所示,步骤202中根据左奇异值矩阵、奇异值矩阵、右奇异值矩阵和现实坐标矩阵,确定现实坐标矩阵和虚拟坐标矩阵对应的偏差变换矩阵的具体步骤如下:

步骤301,分别确定左奇异值矩阵对应的第一逆矩阵、奇异值矩阵对应的第二逆矩阵和右奇异值矩阵对应的第三逆矩阵。

在实施中,计算机分别确定左奇异值矩阵对应的第一逆矩阵、奇异值矩阵对应的第二逆矩阵和右奇异值矩阵对应的第三逆矩阵

步骤302,根据第一逆矩阵、第二逆矩阵、第三逆矩阵和现实坐标矩阵,确定现实坐标矩阵和虚拟坐标矩阵对应的偏差变换矩阵。

在实施中,计算机根据第一逆矩阵、第二逆矩阵、第三逆矩阵和现实坐标矩阵,确定现实坐标矩阵和虚拟坐标矩阵对应的偏差变换矩阵。

作为一种可选的实施方式,步骤302中根据第一逆矩阵、第二逆矩阵、第三逆矩阵和现实坐标矩阵,确定现实坐标矩阵和虚拟坐标矩阵对应的偏差变换矩阵的公式为:

其中,bTp为偏差变换矩阵,M为现实坐标矩阵,U

在实施中,根据M=bTp×N,N=UVW

步骤104,根据偏差变换矩阵和预设的偏差位置数据分解算法,确定偏差位置数据。

在实施中,技术人员可以根据空间运动学理论,预设偏差位置数据分解算法,将现实坐标矩阵与虚拟坐标矩阵对应的偏差变换矩阵分解,得到偏差位置数据。

作为一种可选的实施方式,步骤104中偏差位置数据包括平移偏差坐标量和旋转偏差坐标量,根据偏差变换矩阵和预设的偏差位置数据分解算法,确定偏差位置数据的公式为:

其中,c表示三角函数cos,s表示三角函数sin,X

在实施中,假设计算出的偏差变换矩阵为:

步骤105,基于偏差位置数据,对机器人末端的离线程序进行校准。

在实施中,计算机基于偏差位置数据,对机器人末端的离线程序进行校准。

作为一种可选的实施方式,图4为本申请实施例提供的另一种机器人离线程序校准方法的流程图,如图4所示,步骤105中基于偏差位置数据,对机器人末端的离线程序进行校准,包括:

步骤401,根据偏差位置数据,修正虚拟环境下机器人末端的位置。

在实施中,计算机根据偏差位置数据,修正虚拟环境下机器人末端的位置,以使虚拟环境下的机器人末端位置与现实环境中一致。

步骤402,输出虚拟环境下机器人末端的离线程序至现实环境下机器人末端。

在实施中,虚拟环境下的机器人末端位置与现实环境中一致的情况下,在虚拟环境中,技术人员通过计算机对机器人的运动程序离线示教和编程,然后输出离线程序至现实环境下机器人末端。

可选的,图5为本申请实施例提供的一种机器人离线程序校准方法的示例的流程图,如图5所示,具体如下:

步骤501,开始;

步骤502,基于滑橇测量建立坐标系;

步骤503,在现实环境中,机器人位于第一工装位置,测量机器人末端第一现实位置坐标;

步骤504,在现实环境中,机器人位于第二工装位置,测量机器人末端第二现实位置坐标;

步骤505,在现实环境中,机器人位于第三工装位置,测量机器人末端第三现实位置坐标;

步骤506,在虚拟环境中,机器人位于第四工装位置,测量机器人末端第一虚拟位置坐标;

步骤507,在虚拟环境中,机器人位于第五工装位置,测量机器人末端第二虚拟位置坐标;

步骤508,在虚拟环境中,机器人位于第六工装位置,测量机器人末端第三虚拟位置坐标;

步骤509,整理数据,确定现实坐标矩阵和虚拟坐标矩阵;

步骤510,根据现实坐标矩阵和虚拟坐标矩阵,确定偏差位置数据;

步骤511,使用偏差位置数据修正虚拟环境下机器人位置;

步骤512,在虚拟环境下,重新输出离线程序,供现实环境中的机器人使用;

步骤513,结束。

本申请实施例提供了一种机器人离线程序校准方法,方法包括:在现实环境中,获取机器人末端在预设工装位置对应的现实坐标数据,并构建现实坐标矩阵。在虚拟环境中,获取机器人末端在预设工装位置对应的虚拟坐标数据,并构建虚拟坐标矩阵。根据现实坐标矩阵、虚拟坐标矩阵和SVD分解算法,确定现实坐标矩阵和虚拟坐标矩阵对应的偏差变换矩阵。根据偏差变换矩阵和预设的偏差位置数据分解算法,确定偏差位置数据。基于偏差位置数据,对机器人末端的离线程序进行校准。本申请的实施例提供的技术方案至少带来以下有益效果:首先,对应用场景没有要求,易于运用和部署。其次,以现实环境中的机器人末端位置坐标为基准,通过计算偏差位置数据,校准虚拟环境中的机器人末端位置,校准后输出的离线程序,由于修正了位置偏差,可以供现实环境中的机器人直接使用,有效提升了仿真精度。

应该理解的是,虽然图1至图5的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图1至图5中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。

可以理解的是,本说明书中上述方法的各个实施例之间相同/相似的部分可互相参见,每个实施例重点说明的是与其他实施例的不同之处,相关之处参见其他方法实施例的说明即可。

在一个实施例中,提供了一种计算机设备,如图8所示,包括存储器及处理器,所述存储器上存储有可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述机器人离线程序校准的方法步骤。

在一个实施例中,一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述机器人离线程序校准的方法的步骤。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(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)等。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

还需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于展示的数据、分析的数据等),均为经用户授权或者经过各方充分授权的信息和数据。

本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

相关技术
  • 一种机器人行走参数优化方法、计算机设备以及可读存储介质
  • 一种应用程序安全管控方法、设备及计算机可读存储介质
  • 一种应用程序广播处理方法、设备及计算机可读存储介质
  • 一种离线命令词库更新方法、终端及计算机可读存储介质
  • 一种机器人控制方法、机器人及计算机可读存储介质
  • 一种基于离线数据的图像处理方法、系统、设备及计算机可读存储介质
  • 一种离线录像方法、装置、设备以及计算机可读存储介质
技术分类

06120116492746