CN116079726A - 机器人标定方法、装置和数据采集装置 - Google Patents

机器人标定方法、装置和数据采集装置 Download PDF

Info

Publication number
CN116079726A
CN116079726A CN202310033057.0A CN202310033057A CN116079726A CN 116079726 A CN116079726 A CN 116079726A CN 202310033057 A CN202310033057 A CN 202310033057A CN 116079726 A CN116079726 A CN 116079726A
Authority
CN
China
Prior art keywords
conversion
calibration
fixed
robot
conversion relation
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.)
Withdrawn
Application number
CN202310033057.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.)
Angshi Intelligent Shenzhen Co ltd
Original Assignee
Angshi Intelligent Shenzhen Co 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 Angshi Intelligent Shenzhen Co ltd filed Critical Angshi Intelligent Shenzhen Co ltd
Priority to CN202310033057.0A priority Critical patent/CN116079726A/zh
Publication of CN116079726A publication Critical patent/CN116079726A/zh
Withdrawn 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
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1694Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
    • B25J9/1697Vision controlled systems

Abstract

本申请涉及一种机器人标定方法、装置和数据采集装置。其中,标定方法包括:获取机器人运动到多个姿态下的变量数据;获取预设的转换模型;基于多个姿态下的运动变量参数、多张标定物图像和转换模型,标定固定参数和固定转换关系,得到固定参数和固定转换关系的目标标定值。采用本申请的方案可以较低的成本实现机器人的标定。

Description

机器人标定方法、装置和数据采集装置
技术领域
本申请涉及机器人技术领域,特别是涉及一种机器人标定方法、装置和数据采集装置。
背景技术
机器人的零部件在加工和组装过程中不可避免的存在一定的误差,因此机器人的实际固定参数与标称固定参数(固定参数可以表征机器人各个运动部分之间在部分维度上的固定位置关系)等之间往往存在误差,所以需要对机器人进行标定,以提高机器人定位的精度。
现有的机器人标定方法存在各种各样的问题,或者标定精度不高,又或者成本高,以基于反光器进行标定为例,在机器人末端固定反光器,反光器将激光跟踪仪发射的激光原路反射给激光跟踪仪,激光跟踪仪对接收到的激光信号处理分析,得到机器人末端的实际姿态,另外,基于机器人模型可以求取机器人末端的测量姿态,基于实际姿态和测量姿态可以对机器人模型中的固定参数等进行标定,这种标定方式需要采用高精度激光跟踪仪,但高精度激光跟踪仪往往很昂贵,因而造成标定成本的增加。
发明内容
本申请提供一种高精度、低成本的机器人标定方法、装置和数据采集装置。
第一方面,本发明实施例提供一种机器人标定方法,适用于标定系统,所述标定系统包括以下组件:运动采集器、图像传感器组件以及标定物;所述方法包括:
获取所述机器人运动到多个姿态下的变量数据;所述变量数据包括:所述机器人的运动变量参数和所述标定物的多张标定物图像;
获取预设的转换模型;所述转换模型基于第一类转换关系和具有初始值的固定转换关系构建;所述第一类转换关系为基于所述运动变量参数和具有初始值的固定参数构建的机器人模型;
基于所述多个姿态下的所述运动变量参数、所述多张标定物图像和所述转换模型,标定所述固定参数和所述固定转换关系,得到所述固定参数和所述固定转换关系的目标标定值。
在其中一个实施例中,所述固定转换关系包括:
所述标定系统中位置绝对固定的组件坐标系与所述机器人的基座坐标系之间的转换关系;以及
所述标定系统中位置相对固定的两个组件坐标系之间的转换关系。
在其中一个实施例中,所述图像传感器组件与所述机器人的末端位置相对固定,且所述标定物位置绝对固定;
所述固定转换关系包括:第三类转换关系和第四类转换关系;所述第三类转换关系为所述机器人的末端坐标系和图像传感器组件坐标系之间的转换关系,所述第四类转换关系为标定物坐标系和所述机器人的基座坐标系之间的转换关系;或
所述标定物与所述机器人的末端位置相对固定,且所述图像传感器组件绝对固定;
所述固定转换关系包括:第五类转换关系和第六类转换关系;所述第五类转换关系为所述图像传感器组件坐标系和所述机器人的基座坐标系之间的转换关系,所述第六类转换关系为机器人的末端坐标系和所述标定物坐标系之间的转换关系。
在其中一个实施例中,所述机器人包括机械手;
当所述图像传感器组件与所述机器人的末端位置相对固定,且所述标定物位置绝对固定;
在围绕所述机械手且对应图像传感器组件的视野范围内的多个方位上,分别设置有多个标定物;或
当所述标定物与所述机器人的末端位置相对固定,且所述图像传感器组件绝对固定;
在围绕所述机械手的多个方位上,分别设置有多个图像传感器组件。
在其中一个实施例中,所述基于所述多个姿态下的所述运动变量参数、所述多张标定物图像和所述转换模型,标定所述固定参数和所述固定转换关系,包括:
根据所述多张标定物的图像,求取所述多个姿态下的第二类转换关系;所述第二类转换关系为图像传感器组件坐标系和标定物坐标系之间的转换关系;
基于所述多个姿态下的所述运动变量参数、所述第二类转换关系,以及所述转换模型,标定所述固定参数和所述固定转换关系。
在其中一个实施例中,所述转换模型为所述第一类转换关系、所述第二类转换关系和所述固定转换关系构建的转换关系式。
在其中一个实施例中,所述根据所述多个姿态下的所述运动变量参数、所述第一类转换关系和所述转换模型,标定所述固定参数和所述固定转换关系,包括:
执行迭代标定操作;所述迭代标定操作包括:根据所述固定参数的初始值和所述多个姿态下的运动变量参数,计算得到所述多个姿态下的第一类转换关系的当前值;根据所述多个姿态下的第二类转换关系、所述第一类转换关系的当前值,以及所述固定转换关系的初始值,基于所述转换模型计算在所述多个姿态下的各个差值,以及所述差值的梯度;
根据所述差值的梯度对所述初始值进行修正,将修正后的初始标定值作为新的初始标定值,返回执行所述迭代标定操作得到新的差值的梯度,直至所述多个姿态下的所有新的差值全部小于预设阈值为止,并将新的差值小于预设阈值时的所述初始值作为所述目标标定值。
在其中一个实施例中,所述转换模型为基于成像公式,结合所述第一类转换关系和所述固定转换关系构建的转换关系式。
第二方面,本发明实施例提供一种机器人标定装置,适用于标定系统,所述标定系统包括以下组件:图像传感器组件、运动采集器以及标定物;所述装置包括:
变量获取模块,用于获取所述机器人运动到多个姿态下的变量数据;所述变量数据包括:所述机器人的运动变量参数和所述标定物的多张标定物图像;
转换求取模块,用于根据所述多张标定物的图像,求取所述多个姿态下的第二类转换关系;所述第二类转换关系为图像传感器组件坐标系和标定物坐标系之间的转换关系;
模型获取模块,用于获取预设的转换模型;所述转换模型表征所述标定系统中各组件坐标系之间的转换关系;所述转换模型中包括:所述第二类转换关系、第一类转换关系和具有初始值的固定转换关系;所述第二类转换关系为基于所述运动变量参数和具有初始值的固定参数构建的机器人模型;
目标标定模块,用于根据所述多个姿态下的所述运动变量参数、所述第一类转换关系和所述转换模型,标定所述固定参数和所述固定转换关系,得到所述固定参数和所述固定转换关系的目标标定值。
第三方面,本发明实施例提供一种机器人的标定系统的变量数据采集装置,所述装置包括运动采集器、图像传感器组件以及标定物;
所述图像传感器组件,用于拍摄标定物图像;
所述运动采集器,用于采集运动变量参数;
所述标定物和所述图像传感器组件其中之一固定在所述机器人的末端上;
所述标定物和图像传感器组件中的另一固定在所述机器人周边预设范围内;其中,设置在所述机器人周边预设范围内的所述标定物或所述图像传感器组件为多个。
上述机器人标定方法、装置、和数据采集装置,获取机器人运动到多个姿态下的变量数据;获取预设的转换模型;基于多个姿态下的运动变量参数、多张标定物图像和转换模型,标定固定参数和固定转换关系,得到固定参数和固定转换关系的目标标定值。采用本申请的方案可以较低的成本实现机器人的标定。
附图说明
图1A为一个实施例中机器人标定方法的应用环境第一平面示意图;图1B为一个实施例中机器人标定方法的应用环境第二平面示意图;
图2A为一个实施例中机器人标定系统的第一结构示意图;图2B为一个实施例中机器人标定系统的第二结构示意图;
图3A为一个实施例中机器人的第一结构示意图;图3B为一个实施例中机器人的第二结构示意图;图3C为一个实施例中机器人的第三结构示意图;图3D为一个实施例中机器人的第四结构示意图;图3E为一个实施例中机器人的第五结构示意图;图3F为一个实施例中机器人的第六结构示意图;图3G为一个实施例中机器人的第七结构示意图;图3H为一个实施例中机器人的第八结构示意图;
图4为一个实施例中立体标定板的结构示意图;
图5为一个实施例中计算机设备的内部结构示意图;
图6为一个实施例中机器人标定方法的第一流程示意图;
图7为一个实施例中机器人标定方法的第二流程示意图;
图8为一个实施例中机器人标定方法的第三流程示意图;
图9为一个实施例中目标标定过程的第一流程示意图;
图10为一个实施例中目标标定过程的第二流程示意图;
图11为一个实施例中目标标定过程的第三流程示意图;
图12为一个实施例中机器人标定装置的结构框图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施方式,对本申请进行进一步详细说明。应当理解,此处描述的具体实施方式仅仅用以解释本申请,并不用于限定本申请。
本申请涉及机器人技术领域,特别是涉及一种机器人标定方法、装置和数据采集装置。通过采用本申请的标定方法,可以较低的标定成本实现机器人较高精度的标定。
如图1A或1B所示,本发明实施方式提供一种机器人标定系统,该机器人标定系统包括:机器人10、运动采集器11、图像传感器组件20、标定物30和控制器40。
具体的,机器人10可以是:机械手,比如:并联机械手(如图3E所示)或串联机械手,以串联机械手为例,可以是三轴机械手(如图3B所示)、四轴机械手(如图3A所示)、六轴机械手(如图3C所示),七轴机械手(如图3D所示)等任意轴数的机械手;直线电机或线性模组构建的运动平台,比如:XYZ龙门机器人(如图3H所示),XY平台(如图3F所示),ZQ龙门(如图3G所示)等;或气动、液压等或以气动、液压等传动方式构建的执行机构等各种现在已有或将来开发的类似的执行机构。为方便理解,本实施方式下面以机器人10为机械手为例进行详细说明。
具体的,如图3A-3H所示,机械手可以由多个可动关节和连杆串联和/或并联而成,每个关节包括驱动单元,或者由多个包括驱动单元的驱动模块串联或并联而成等,本实施方式对此不作限制。
在一个实施方式中,机器人10的末端还可以设置至少一个末端执行器,末端执行器可以是各种吸盘或者夹爪等。需要说明的是,后面实施方式提到的机械手的末端可以指机械手的末端关节;或者,当末端关节的输出端设置末端执行器时,机械手的末端也可以指末端执行器等。为方便理解,本实施方式以机器人10为机械手,机械手的末端关节作为机械手的末端为例进行说明。
运动采集器11,用于采集机器人10的运动关节的运动变量参数;具体的,运动采集器11可以为各种现在已有或将来开发的采集器,比如:编码器。在一个实施方式中,运动采集器11设置在机器人10的运动关节上,比如:设置于马达上,在某些情况下,采集器也可以设置在机器人10外,比如:通过图像传感器采集机器人10运动到不同方位的图像从而进一步求取机器人10的运动变量。
其中,图像传感器组件20和标定物30为实现标定所需的其它部件,这二者的其中之一可以固定于机器人10上,另一个可以固定于机器人10周边预设空间范围内。
在一个实施方式中,如图1A或2A所示,可以将图像传感器组件20固定于机械手的末端,而将多个标定物30固定于机械手的周边。
在一个实施方式中,如图1B或2B所示,可以将标定物30固定于机械手的末端,而将多个图像传感器组件20固定于机械手的周边。
需要说明的是,上述机械手的周边可以根据需要设定为围绕机械手的任意方位,比如:可以为环绕机械手的方位(如图2A或2B所示),或者集中在机械手的周边局部某个预设范围内(省略附图)。具体的,可以根据机械手在工作过程中的实际运动范围设置图像传感器组件20或标定物30;另外,上述多个姿态可以体现为机械手的不同位置和方向,可以是机械手处于预设的多个姿态,也可以是机械手处于随机的多个姿态等,本实施方式对此不作限制。
需要说明的是,本实施方式中,机械手周边设置的多个图像传感器组件20或多个标定物30的具体数量不做限定,可以理解的是,通常设置的图像传感器20或标定物30的数量越多,机器人10标定的精度就越高。
如图2A或2B所示,在一个实施方式中,该标定系统还可以包括支架50,支架50设置在机械手周边,将图像传感器组件20或标定物30固定于支架50上,从而通过支架50将图像传感器组件20或标定物30固定于机械手的周边任意需要的位置。
其中,图像传感器组件20可以为一个或多个,图像传感器组件20用于拍摄标定物图像。具体的,每个图像传感器组件20可以设计为包括大于等于1的任意个图像传感器,比如:由1个图像传感器构成的单目图像传感器组件或者由2个图像传感器构成的双目图像传感器组件。具体的,图像传感器组件20采集的图像可以为2D图像或3D图像等。具体的,图像传感器组件20可以包括但不限于:2D照相机、3D照相机、摄像机、扫描仪或其他带有相关功能的设备(如手机、电脑)等。有关图像传感器组件20的其它相关描述会在后面实施方式有进一步描述。
其中,标定物30可以是具有特征图像的物体或直接标识在机械手的末端(比如:末端关节的输出端或末端关节的其它位置)具有特征的图像等,其中,标定物30上各点在标定物坐标系中的坐标是已知的。具体的,标定物30可以为标定板或者其他具有类似特征图像的结构。在一个实施方式中,以标定物30为标定板30为例,标定板上的特征图像可以为固定间距的图案阵列,如对称圆形阵列、非对称圆形阵列、棋盘阵列(如图1A或1B所示)等。
其中,控制器40可以通过有线或者无线方式分别通信连接机器人10和图像传感器组件20,分别与机器人10和图像传感器组件20进行通信,从而可以控制机器人10运动到不同姿态,还可以在不同姿态下获取通过图像传感器组件20采集的标定物30的图像或获取通过机器人10发送的运动变量参数等。
其中,如图4所示,标定物30为立体标定板,标定的内容除了标定机械手各轴的长度和安装角度之外,还可标定编码器的角度-脉冲曲线。
需要说明的是,在一个实施方式中,如图上述各个组件:运动采集器11、图像传感器组件20、标定物30等也可以称为机器人10标定系统的变量数据的采集装置。
图像传感器组件20,用于拍摄标定物30的图像;
运动采集器11,用于采集机器人10的运动变量参数;
标定物30和图像传感器组件20其中之一固定在机器人10的末端上;标定物30和图像传感器组件20中的另一固定在机器人10周边预设范围内;其中,设置在机器人10周边预设范围内的标定物30或图像传感器组件20为多个。
进一步,在一个实施方式中,图像传感器组件20采集机器人10运动到多个姿态下的标定物30的图像,以及运动采集器11采集机器人10在多个姿态下的运动变量参数,再将多个姿态下的标定物30的图像和运动变量参数通过直接或间接的方式发送给控制器40。
有关图像采集装置的其它相关描述参见上面的实施方式,在此不再重复赘述。
另外,上述无线方式可以包括但不限于:3G/4G/5G、IEEE规范802.11(Wi-Fi)、蓝牙、WiMAX(Worldwide Interoperability for MicrowaveAccess,全球互通微波访问)、IEEE规范802.15.4(Zigbee,紫蜂)、UWB(UltraWide Band,超宽带),以及其它现在已知或将来开发的无线连接方式。
控制器40可以根据预先固定的程序,结合输入的信息、参数或者外部传感器(比如图像传感器组件20)采集的数据等生成程序指令,实现对机器人10的标定。可以理解的是,控制器可以为机器人10的内置设备、附属设备或者是独立于机器人10的设备。为方便理解,在本实施方式以控制器为单独的设备进行说明。
具体的,控制器可以为计算机(Personal Computer,PC)、工业控制计算机(Industrial Personal Computer,IPC)、移动终端、可编程逻辑控制器(ProgrammableLogic Controller,PLC)、现场可编程门阵列(Field-Programmable GateArray,FPGA)、数字信号处理器(Digital Signal Processer,DSP)或微控制单元(Microcontroller unit,MCU)、服务器、包括终端和服务器的系统,并通过终端和服务器的交互实现等。有关控制器的具体限定可以参见下面实施方式中有关机器人10标定方法的限定。
具体的,可以应用于如图5所示的计算机设备中,该计算机设备可以是终端,也可以是服务器。该计算机设备包括通过系统总线连接的处理器、存储器、通信接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、运营商网络、NFC(近场通信)或其它技术实现。
本领域技术人员可以理解,图1-5中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的机器人、计算机设备等的限定,具体的机器人、计算机设备等可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施方式中,如图6所示,提供了一种机器人标定方法,以该方法适用于如图1A或1B所示的标定系统中的控制器40为例进行说明,可以包括以下步骤:
步骤S201,获取机器人运动到多个姿态下的变量数据;变量数据包括:机器人的运动变量参数和标定物的多张标定物图像;
步骤S202,获取预设的转换模型;转换模型基于第一类转换关系和具有初始值的固定转换关系构建;第一类转换关系为基于运动变量参数和具有初始值的固定参数构建的机器人模型;
步骤S203,基于多个姿态下的运动变量参数、多张标定物图像和转换模型,标定固定参数和固定转换关系,得到固定参数和固定转换关系的目标标定值。
通过根据多个姿态下的运动变量参数、多张标定物图像和转换模型,标定固定参数和固定转换关系,省去了昂贵的激光跟踪仪,从而以较低成本实现机器人的标定。
另外,通过结合多个姿态下的运动变量参数和多张标定物图像,通过调整固定参数和固定转换关系,使得标定结果可同时满足多个姿态下的转换模型的关系式成立,从而提高基于转换模型进行姿态计算的定位精度;另外,采用该方法可以避免了每个标定方法只能针对某类机器人进行标定的限定,大大提高了机器人标定方法对各类机器人标定的适应性。
另外,该标定方法降低了对机器人加工和组装过程中精度的要求,大大提高了机器人组装的效率,降低了因机器人加工精度要求过高而带来的高成本。
为方便理解,下面对上述方法步骤进行进一步详细描述。
步骤S201,获取机器人运动到多个姿态下的变量数据;变量数据包括:机器人的运动变量参数和标定物的多张标定物图像。
在一个实施方式中,如图7所示,步骤S201之前,还包括:
步骤S204向机器人发送运动指令,以指示机器人运动到多个姿态;
在一个实施方式中,控制器可以访问预先生成并存储的运动指令对应的存储地址,从访问的存储空间中提取存储的运动指令;在一个实施方式中,运动指令已预先生成并存储在服务器中,控制器可以生成运动指令获取请求,通过网络将运动指令获取请求发送至服务器;服务器接收运动指令获取请求,根据运动指令获取请求中的数据标识从数据库中提取运动指令,通过网络将运动指令发送至控制器;在一个实施方式中,控制器也可以基于用户输入的运动指令,或基于外部传感器实时采集的参数实时生成上述运动指令。
在一个实施方式中,以机器人为机械手为例,控制器可以接收机械手运动到多个姿态时,通过每个运动关节设置的编码器采集并反馈的运动变量参数,其中,该运动变量参数为机械手多个关节的运动变量参数。此外,在控制器发送指令指示机械手移动到多个不同的姿态时,控制器还可以接收图像传感器组件采集并发送的标定物的图像,或者获取图像传感器组件拍摄获得标定物的图像。其中,在每个姿态下,控制器可以获得运动变量参数和至少一个图像传感器组件拍摄的标定物的图像;当然,本申请并不限制在每个姿态下均需获得运动变量参数和标定物的图像。
示例性的,以六轴机械手为例,在控制器控制机器人运动到某个第一姿态下时,控制单元获取六个关节的编码器采集并发送的6个关节的运动变量参数;当控制器控制机器人运动到第二姿态下时,控制器再次获取第二姿态下六个关节的编码器采集并发送的6个关节的运动变量参数,依次类推。
需要说明的是,为提高机器人标定的精度,尽量获取机器人可运动范围内的多个姿态下的多张标定物的图像(比如:30张),通常认为,获取的多个姿态下的标定物的图像越多,则最终得到的机器人标定的精度越高。
S202,获取预设的转换模型;转换模型基于第一类转换关系和具有初始值的固定转换关系构建;第一类转换关系为基于运动变量参数和具有初始值的固定参数构建的机器人模型;
其中,固定转换关系是指不随姿态变化具有固定值的转换关系。
其中,固定参数是指机器人模型中具有固定值的参数,通常机器人模型是由运动变量参数和固定参数组合构建而成。
在一个实施方式中,固定转换关系可以为标定系统中位置绝对固定的组件坐标系与基座坐标系之间的转换关系、以及标定系统中位置相对固定的两个组件坐标系之间的转换关系。
其中,以机械手为例,位置绝对固定的组件坐标系为相对基座坐标系(机械手的基座上的固定坐标系,可以为世界坐标系)静止的组件坐标系,位置相对固定的两个组件坐标系为两个相对静止的组件坐标系。因此,在固定转换关系中,标定系统中位置绝对固定的组件坐标系与基座坐标系之间的转换关系为一个固定的转换关系,标定系统中位置相对固定的两个组件坐标系之间的转换关系也是一个固定的转换关系,均是不随机械手的姿态而改变的。
需要说明的是,在本实施方式中,如图1A所示,当图像传感器组件20固定在机械手的末端上,图像传感器组件20与机械手的末端位置相对固定,可以随机械手的末端的运动而相对基座坐标系运动;标定物30可以固定在机械手的周边的预设空间范围内,位置相对基座坐标系绝对固定。相应地,固定转换关系可以包括:第三类转换关系和第四类转换关系;第三类转换关系为机械手的末端坐标系和图像传感器组件坐标系之间的转换关系,第四类转换关系为标定物坐标系和基座坐标系之间的转换关系。
同样地,如图1B所示,当图像传感器组件20固定在机械手的周边的预设空间范围内时,标定物30可以固定在机械手的末端上,固定转换关系可以包括:第五类转换关系和第六类转换关系;第五类转换关系为图像传感器组件坐标系和基座坐标系之间的转换关系,第六类转换关系为机械手的末端坐标系和标定物坐标系之间的转换关系。
示例性地,控制器可以访问预先生成并存储的转换模型对应的存储地址对应的存储空间(可以是位于本地的存储空间、也可以是通过网络访问服务器),从访问的存储空间中提取预先存储的转换模型。
需要说明的是,转换模型可以是基于第一类转换关系和具有初始值的固定转换关系构建的任意的关系式;
在一个实施方式中,转换模型可以为第一类转换关系、第二类转换关系、和固定转换关系之间的转换关系式,通过转换模型表征标定系统中的机器人、图像传感器组件和标定物各组件的坐标系之间的转换关系;
其中,第二类转换关系为根据多张标定物的图像,求取的图像传感器组件坐标系和标定物坐标系之间的转换关系。
在一个实施方式中,控制器可以解析不同姿态下的标定物的图像,得到相应不同姿态下的第二类转换关系。在一个实施方式中,针对某个姿态,基于预先生成的某些相机标定结果(比如:内参、畸变参数),控制器可以先对该姿态下标定物的图像进行畸变处理,然后通过对图像的解析,可以获取标定物上的标识点在标定物图像坐标系中的坐标,而标定物上标识点在标定物坐标系中的坐标是已知的,从而可以根据标定物上各标识点分别在图像坐标系中的坐标和该对应点在标定物坐标系中的坐标,以及相机的内参(比如:焦距、偏心位移等)计算得到图像传感器组件坐标系和标定物坐标系之间的转换关系。
示例性的,上述计算的过程可以根据成像公式:
Figure BDA0004048052960000151
求取,其中,设标定物上某标识点在标定物坐标系下的三维坐标为M=[X,Y,Z]T,在去除畸变的情况下,实际拍摄得到的标定物在二维图像中的坐标为m=[u,v]T。可以在最后一维增加元素1,以得到他们的扩展向量:
Figure BDA0004048052960000152
Figure BDA0004048052960000153
式中A为相机内参,s是归一化参数,Rt为相机外参,也即本实施方式中的第二类转换关系;根据公式可以求得Rt,即第二类转换关系。
根据上面实施方式所述,控制器可以基于预先进行图像传感器组件标定所生成的某些图像传感器组件标定结果,根据获取的多张标定物图像,可以获取机械手在多个不同姿态下的多个标定物坐标系和图像传感器组件坐标系之间的多个转换关系Rt(即第二类转换关系),具体的,第二类转换关系根据所构建的转换模型的关系式需要,可以设定为标定物坐标系到图像传感器组件坐标系的转换关系,也可以为图像传感器组件坐标系到标定物坐标系的转换关系(二者互为逆矩阵)。具体地,控制器可以访问预先生成并存储的相机标定结果对应的存储地址,从访问的存储空间中提取存储的标定结果;在一些实施方式中,相机标定结果已预先生成并存储在服务器中,控制器可以生成相机标定结果获取请求,通过网络将相机标定结果获取请求发送至服务器;服务器接收相机标定结果获取请求,根据相机标定结果获取请求中的数据标识从数据库中提取相机标定结果,通过网络将相机标定结果发送至控制器。
如图1B所示,以“图像传感器组件20固定在机械手外”模式下为例,在一个实施方式中,转换模型可以为图像传感器组件坐标系、机械手的基座坐标系、机械手的末端坐标系和标定物坐标系之间构建的有关坐标系转换的转换关系式,也即第一类转换关系、第二类转换关系和固定转换关系之间构建的转换关系式。
具体的,转换模型可以为:G=Rt*B*F,或者可以为其它变形式,如G=F*B*Rt、Rt=B*F*G、F=G*Rt*B、B=Rt*G*F及基于此的其它类型的变形式,其中,Rt表征第二类转换关系,F表征第一类转换关系,B表征固定转换关系中的第五类转换关系,G表征固定转换关系中的第六类转换关系。
需要说明的是,F所表征第一类转换关系,根据关系式的需要,可以为由机器人的基座坐标系到机器人的末端坐标系的转换关系,也可以为由机器人的末端坐标系到机器人的基座坐标系的转换关系。比如,如图1B所示,在关系式G=Rt*B*F中,F表征机械手的末端坐标系到标定物坐标系的转换关系,而在关系式G=F*B*Rt中,F表征标定物坐标系到机械手的末端坐标系的转换关系。同理,第五类转换关系B和第六类转换关系G所表征的转换关系也需要根据具体的关系式来确定。比如,继续如图1B所示,继续以关系式G=Rt*B*F为例,B表征图像传感器组件坐标系到基座坐标系的第五类转换关系,G表征标定物坐标系到机器人坐标系的第六类转换关系,Rt表征标定物坐标系到图像传感器组件坐标系的转换关系。
可以理解的是,在理想的情况下,上述转换模型应为一个等式,则在每个姿态下,该姿态下的第二类转换关系、第一类转换关系和固定转换关系之间均应满足该转换关系式;实际上,由于机械手本身存在的误差等原因,上述关系式往往不能不能成立,实际计算中可能存在G-Rt*B*F=X,其中,X为该关系式的差值,标定的过程就是使得在各种姿态下该关系式的差值趋近于0。
固定参数的初始值可以为已知的该固定参数的标称值,或者为采用其它测量方式预先测量得到的测量值,总之,如前所述,固定参数的初始值存在一定误差,因此上述关系式无法成立,需要精确标定;固定转换关系的初始值同样可以基于CAD模型测量或者实际的机械手模型测量等测量方式,或者基于转换关系式计算得到,但同样存在一定误差,需要标定。因此,在已知固定参数的初始值、固定转换关系的初始值的情况下,可以根据不同姿态下的多个转换关系式,对固定参数和固定转换关系进行优化,使得优化后的固定参数和固定转换关系能够尽可能满足所有不同姿态下的转换关系式的成立,并将尽可能满足不同姿态下的转换关系式时的固定参数的标定值和固定转换关系的标定值,分别作为固定参数的目标标定值和固定转换关系的目标标定值。在后面实施方式中以“图像传感器组件固定在机械手上”模式和“图像传感器组件固定在机械手外”模式至少两种情况分别进行详细说明,这里不再赘述。
需要说明的是,不同结构的机器人,可以基于上述转换模型形成不同的变形式,即使相同结构的机器人,通过采用不同的变量数据、固定参数等,也可能形成不同的转换模型的变形式。
具体的,上述第一类转换关系为基于运动变量参数和具有初始值的固定参数构建的机器人模型,因此基于在不同姿态下因获取不同的运动变量参数,可以得到不同的第一类转换关系结果。
继续如图1B所示,在一个实施方式中,六轴机械手为例,以在“图像传感器组件20在机械手30外”模式下,以D-H(Denavit-Hartenberg)参数构建第一类转换关系F为例,转换模型可以为:G=Rtk*B*Fk(DH,θ1~6);
其中,θ1~6为六轴的运动变量参数,则在第k姿态下的第一类转换关系F=Fk(DH,θ1~6),,同时以Rtk表征第k姿态下的第二类转换关系(即图像传感器组件坐标系和标定物坐标系的转换关系)在机器人未标定的情况下,通常G-Rtk*B*Fk(DH,θ1~6)=Xk,Xk是第k个姿态下的误差值,标定后的理想情况下Xk趋近于0。
继续如图1B所示,在一个实施方式中,以机器人为机械手,图像传感器组件20在机械手30外模式下,以多个关节相对前一关节的坐标系变换构建第一类转换关系为例,则机械手的末端坐标系相对机械手的基座坐标系可以用旋转+平移矩阵表示,第六类转换关系G、第一类转换关系F等也同样可以用矩阵表示,则上述转换模型可以变形为:
Figure BDA0004048052960000181
其中,
Figure BDA0004048052960000182
对B的矩阵而言,ra1,ra2,ra3,ta均为3×1矩阵,[ra1 ra2 ra3]构成一3*3的旋转矩阵,ta为一3*1的平移矩阵,
Figure BDA0004048052960000183
为一4*4的旋转平移矩阵;同理,上述说明也适用于第六类转换关系G、第一类转换关系F的矩阵。
在一个实施方式中,以机器人为XYZ平台,图像传感器组件在机械手外模式下为例,转换模型可以为:
Rt=B*Ty*Q2*Tx*G
其中,
Figure BDA0004048052960000192
表征第二类转换关系,Ty*Q2*Tx表征第一类转换关系,B表征固定转换关系中的第五类转换关系,G表征固定转换关系中的第六类转换关系。Ty表示沿Y轴方向的运动量,Tx表示沿X轴方向的运动量,Q2为第X,Y两个轴之间的旋转角度,Ty和Tx为运动变量参数,Q2为固定参数。
需要说明的是,第一类转换关系(也称“机器人模型”)可以是指机器人的末端坐标系和基座坐标系之间的转换关系。不同结构的机器人,可以形成不同的第一类转换关系;即使相同结构的机器人,通过采用不同的参数,也可能形成不同的转换关系。
在一个实施方式中,以机器人为机械手为例,第一类转换关系可以由多个关节相对前一关节的坐标系变换结合起来得到,示例性的,以机器人为六轴机械手为例,则机器人模型可以表示为:0A60A1*1A2*2A3*3A4*4A5*5A6;在一个实施例中,相邻关节的姿态变换可以用
Figure BDA0004048052960000191
来表达;以六轴机械手为例,由于相邻两个关节之间只能绕关节轴相对旋转运动(即仅存在角运动),因此各个关节中代表位移量的Xi、Yi、Zi、Ui、Vi参数为固定参数,而只有Wi为关节的运动变量参数,该关节的运动变量参数可以根据各个关节的编码器反馈的位置信息获取。
在一个实施方式中,以机械手为例,第一类转换关系可以基于D-H参数建立,其中,D-H参数中也包括固定参数和运动变量参数。
具体的,以机械手为例,上述机械手的固定参数可以但不限于是:机械手的D-H参数中的固定参数或者上述各个轴的姿态中的Xi、Yi、Zi、Ui、Vi固定参数等。示例性地,对于D-H参数构建的机器人模型,可以在机械臂的各个关节上建立关节坐标系,根据机械手的D-H参数以及基座坐标系,可以确定正运动学方程,即机械手的运动变量参数与机械手末端在基座坐标系中的姿态(位置和方向)之间的关系,从而可以根据运动变量参数和固定参数计算机械手的末端坐标系和基座坐标系之间的转换关系,即第一类转换关系。
示意性地,D-H参数有多种表示方式,由机械手结构决定;在一些实施方式中,以某个六轴机械手为例,D-H参数可以采用如下的表示方式:
Figure BDA0004048052960000201
其中:连杆长度(a):两个关节的轴(旋转关节的旋转轴,平移关节的平移轴)之间的连杆长度;连杆扭角(alpha):一个关节的轴相对于另一个关节的轴绕它们的连杆旋转的角度;连杆偏距(d):一个关节与下一个关节的连杆和它与上一个关节的连杆沿这个关节轴的距离;关节角度(theta或θ):一个关节与下一个关节的连杆和它与上一个关节的连杆绕这个关节轴的转角。具体的,关节角度可以根据各个关节的位置编码器反馈的数据信息获取,而其它D-H参数如表中所示是固定的某个值,即固定参数。
示例性的,继续以机器人为六轴机械手为例,则由机器人的基座坐标系到机器人的末端坐标系的机器人模型可以表示为:
0A60A1*1A2*2A3*3A4*4A5*5A6
在一个实施例中,基于D-H参数的相邻两个关节之间的齐次变换矩阵可以表示如下,除此之外,也可以为其它矩阵,本实施方式不作限制。
Figure BDA0004048052960000211
在一个实施方式中,以机器人为XYZ平台为例,基于上面实施方式所述的转换模型中,第一类转换关系为Ty*Q2*Tx
需要说明的是,对于上述固定参数的初始值、固定转换关系的初始值,还可以采用除预先测量以外的方式得到。因为任一姿态下的第二类转换关系、第一类转换关系和固定转换关系之间均满足上述转换关系式,而上述固定转换关系包括:标定系统中位置绝对固定的组件坐标系与基座坐标系之间的第一固定转换关系、以及标定系统中位置相对固定的两个组件坐标系之间的第二固定转换关系,第二类转换关系可以基于上面所述的方法得到,第二类变化关系可以基于上面所述的固定参数和运动变量参数得到,因此在第一固定转换关系的初始值、第二固定转换关系的初始值和固定参数的初始值中任意两者已知的情况下,可以采用转换关系式计算第三者的初始值。比如,在第一固定转换关系的初始值和固定参数的初始值已知的情况下,可以根据任一姿态下的第二类转换关系、第一类转换关系和第一固定转换关系的初始值,采用转换关系式计算得到第二固定转换关系的初始值,作为所有姿态下的第二固定转换关系的初始值;或者也可以将第一固定转换关系的初始值和第二固定转换关系的初始值作为未知数,以固定参数为已知数,则基于已知的多个姿态下的第二类转换关系和第一类转换关系解转换关系式方程,从而求得第一固定转换关系的初始值和第二固定转换关系的初始值等等。可以理解的是,采用这种方式,存在两个优势:(1)降低了在固定参数的初始值、第一固定转换关系的初始值或第二固定转换关系的初始值,这三种初始值未知的情况下,需要采用测量方式测量得到初始值的工作量;(2)这三种初始值之间已经满足某一姿态下的转换关系式,初始值的选取更优,可以提高后续优化效率。
S203,基于多个姿态下的所述运动变量参数、多张标定物图像和转换模型,标定固定参数和固定转换关系,得到固定参数和固定转换关系的目标标定值。
需要说明的是,基于上面所述,在对固定参数进行标定时可以同步实现对固定转换关系的标定,从而得到固定参数的目标标定值和固定转换关系的目标标定值。其中,固定参数往往是我们需要的标定结果,而固定转换关系可以根据需要选择是否需要或部分需要。
在本实施方式的机器人标定方法中,无需采用高精度激光跟踪仪,而是采用了图像传感器组件和标定物,降低了标定成本。此外,因为考虑了固定参数和固定转换关系之间的由于误差的相互影响,因此同时对固定参数和固定转换关系进行了标定,可以避免单一对固定参数进行标定时,由于固定转换关系的误差导致标定精度差的问题,从而联合提高了固定参数和固定转换关系的标定精度,也避免了后续应用时再对固定转换关系进行标定时的工作量,提高了标定效率。
另外,在传统技术中采用激光跟踪仪标定的方式不单存在标定成本增加的问题,还存在精度不稳定的问题。这是由于激光跟踪仪的精度依赖距离的大小,距离越大精度越低,在机械手在各个方向移动标定的过程中,由于激光跟踪仪的发射器和反光器之际间距离不断发生变化,因此标定精度不稳定,可能需要进行多次标定,增加标定成本和工作量。而本实施方式的机械手标定方法中,相对激光跟踪仪而言,图像传感器组件的拍摄精度对距离的敏感度较低,因此避免了上述问题。
在一个实施方式中,根据上面实施方式所述,当转换模型为第一类转换关系、第二类转换关系和固定转换关系构建的转换关系式。
如图8所示,进一步,在一个实施例方式中,步骤S203包括:
步骤S301根据多张标定物的图像,求取多个姿态下的第二类转换关系;第二类转换关系为图像传感器组件坐标系和标定物坐标系之间的转换关系;
步骤S302基于多个姿态下的运动变量参数、第二类转换关系,以及转换模型,标定固定参数和固定转换关系。
根据多个姿态下的第二类转换关系、运动变量参数,以及机械手的固定参数的初始值、固定转换关系的初始值和转换模型,对固定参数和固定转换关系进行标定,得到固定参数的目标标定值和固定转换关系的目标标定值。
在一个实施方式中,可以基于梯度下降的方法进行标定。
如图9所示,在一个实施方式中,步骤S203的具体标定过程可以包括:
S401,执行迭代标定操作;迭代标定操作包括:根据固定参数的初始值和多个姿态下的运动变量参数,计算得到多个姿态下的第一类转换关系的当前值;根据多个姿态下的第二类转换关系、第一类转换关系的当前值,以及固定转换关系的初始值,基于转换模型计算在多个姿态下的各个差值,以及差值的梯度;
S403,判断各个差值是否小于预设阈值;若否,则执行S405;若是,则执行S404;其中,预设阈值为大于0的一个较小值,可以根据实际情况确定。
S405,根据差值的梯度对机械手的初始标定值进行修正,将修正后的初始值作为新的初始值,然后执行S401;初始值包括:固定转换关系的初始值以及固定参数的初始值;
S407,将差值小于预设阈值时的初始值作为目标标定值。
示例性的,以六轴机械手为例,将标定物固定在机械手末端,并在机械周边安装多组双目图像传感器组件用于观测标定物。首先对双目图像传感器组件做双目图像传感器组件标定(比如确定图像传感器组件坐标系与图像坐标系之间的转换关系),使双目图像传感器组件可以准确计算出图像传感器组件坐标系与标定物坐标系之间的转换关系
Figure BDA0004048052960000241
Figure BDA0004048052960000242
控制器生成控制指令,以控制机器人运动到不同姿态,在此过程中,使得标定物位于图像传感器组件视野内,控制器获取通过图像传感器组件拍摄的多个标定物图像,通过标定物图像计算出图像传感器组件坐标系与标定物坐标系的转换关系
Figure BDA0004048052960000243
并且记录下此时机械手各关节的角度θ1~θ6(可以表示为θ1~6),各个关节的角度为通过各个关节的编码器采集并发送给控制器的,机械手各关节读数结合机械手标称的D-H可以通过机械手运动学正解计算出机械手末端的姿态,从而确定第一类转换关系F;
以转换模型为G=Rt*B*F为例,示例性地,根据机械手的标称的固定参数(固定参数的初始值)和机械手某一姿态下的运动变量参数,基于正运动学生成具有标称的固定参数的第一类转换关系F;基于G=Rt*B*F关系式,结合多个姿态下的Rt的当前值、G的初始值、B的初始值以及F的当前初始值,根据多个不同姿态下的转换关系式,优化固定参数的初始值、G的初始值、B的初始值,得到优化后的固定参数的标定值、G的标定值、B的标定值,以使优化后的标定值能同时满足上述多个不同姿态下的转换关系式的成立。
示例性的,为方便理解,继续以六轴机械手,基于D-H参数构建转换模型为例,转换模型G=Rt*B*F可以变形为:G=Rtk*B*Fk(DH,θ1~6)
但实际上,因为误差,G-Rtk*B*Fk(DH,θ1~6)=Xk,通过优化B、G和D-H,运用梯度下降法可以计算出一个使各姿态下Xk均尽可能趋近于0(即第二数值尽可能小)的更准确的B、G和D-H,则优化后的B、G和D-H,即为最终的机械手的标定结果。
如此重复,基于多次采集的n组图像,相应得到n组参数,每组参数包括:Rtk、D-H、θ1~6,对应G-Rtk*B*Fk(DH,θ1~6)=Xk;此时通过优化B、G和D-H,运用梯度下降法可以计算出使得
Figure BDA0004048052960000251
最小时的B、G和D-H,作为最终的机械手的标定结果。
在另一个实施方式中,标定过程可以为:根据与成像公式结合后的转换模型,以及所述多个姿态下的所述运动变量参数,基于图像像素的重投影误差的方法,标定固定参数和固定转换关系的目标标定值。
如图10所示,在一个实施例中,步骤S203可以包括:
步骤S402根据固定参数的初始值和多个姿态下的运动变量参数,计算得到多个姿态下的第一类转换关系;
步骤S404根据第一类转换关系、固定转换关系的初始值和转换模型,求取多个姿态下标定物的标识点在标定物图像中的公式坐标;
示例性地,继续基于上述“图像传感器在机械手外”模式下,该转换模型可以为与成像公式结合的变形后的转换模型:
Figure BDA0004048052960000252
其中,成像公式为:
Figure BDA0004048052960000253
其中,设标定物上某标识点在标定物坐标系下的三维坐标为M=[X,Y,Z]T
不考虑畸变情况下,m为根据采集的多个姿态下的标定物图像得到的标定物的标识点在二维图像中的图像坐标,具体为m=[u,v]T
m0为基于
Figure BDA0004048052960000254
计算得到的标定物的标识点在图像中的公式坐标,具体为m0=[u0,v0]T
在最后一维增加元素1可以得到他们的扩展向量:
Figure BDA0004048052960000261
Figure BDA0004048052960000262
A为相机内参,s是归一化参数。
在另一个实施方式中,在考虑去除镜头畸变情况下,上述转换模型可以变形为:
Figure BDA0004048052960000263
其中,D为镜头畸变系数。
设Rt为标定物相对于相机的外参,所以相机的外参Rt同样具有与第二类转换关系Rt相同的格式,因此,Rt既可以代表相机的外参,又可以代表第二类转换关系;其中,Rt=B*F*G;
示例性地,继续基于上述“图像传感器在机械手外”模式下,控制器生成控制指令,以控制机器人运动到不同姿态,在此过程中,使得标定物位于图像传感器组件视野内,控制器获取通过图像传感器组件拍摄的多个标定物图像,通过标定物图像计算出图像传感器组件坐标系与标定物坐标系的转换关系To c,并且记录下此时机械手各关节的角度θ1~θ6(可以表示为θ1~6),各个关节的角度为通过各个关节的编码器采集并发送给控制器。
以Rt=B*F*G为例,,其中,B、F、G可以是4×4的矩阵,可以如下式表示:
Figure BDA0004048052960000264
其中,对
Figure BDA0004048052960000265
的矩阵而言,ra1,ra2,ra3,ta均为3×1矩阵,[ra1 ra2 ra3]构成一3*3的旋转矩阵,ta为一3*1的平移矩阵,
Figure BDA0004048052960000266
为一4*4的旋转平移矩阵;同理,上述说明也适用于F、G的矩阵。
设Rt为标定物相对于相机的外参,所以有:Rt=B*F*G,Rt为:
Figure BDA0004048052960000267
删除最后一行得到3*4的旋转平移矩阵Rt=[r1,r2,r3,t]。
由图像传感器的成像公式可得:
Figure BDA0004048052960000271
其中,对于Rt=B*F*G而言,G具有初始值;F可以根据固定参数的初始值和运动变量参数得到;B可以根据机械手在各个姿态下的标定物的图像得到;对于每个目标点,s为使根据公式(2-1)右边部分归一化计算得到的参数,通过A,Rt,
Figure BDA0004048052960000272
来计算m0
步骤S406,根据多个姿态下的标定物图像,求取标定物的标识点在标定物图像中的图像坐标;
而m为在不考虑畸变情况下,根据实际拍摄的图像得到的标定物在二维图像中的坐标,即m=[u,v]T
步骤S408,根据公式坐标和图像坐标计算重投影误差;
因为存在误差,上述转换模型关系式实际上可以表示为:
Figure BDA0004048052960000273
Figure BDA0004048052960000274
根据公式E=m0-m可计算出m和m0像素点之间的重投影误差;
步骤S410,基于最小化重投影误差的方法,标定固定参数和固定转换关系的目标标定值。
具体的,可以基于梯度递减方法,通过不断优化上述固定参数和固定转换关系的初始值,使得在各个姿态下得到的重投影误差都趋近于0,比如:小于某个预设阈值,以得到固定参数和固定转换关系的目标标定值。
如图11所示,为实现上述方法步骤,示例性的,步骤S203可以包括:
S501,执行迭代标定操作;迭代标定操作包括:根据固定参数的初始值和多个姿态下的运动变量参数,计算得到多个姿态下的第一类转换关系的当前值;根据第一类转换关系的当前值、固定转换关系的初始值和转换模型,求取标定物的标识点在标定物图像中的公式坐标;根据标定物图像,求取标定物的标识点在标定物图像中的图像坐标;基于公式坐标和图像坐标计算重投影误差,以及误差的梯度;
S502,判断各个差值是否小于预设阈值;若否,则执行S503;若是,则执行S404;其中,预设阈值为大于0的一个较小值,可以根据实际情况确定。
S503,根据差值的梯度对机器人的初始标定值进行修正,将修正后的初始值作为新的初始值,然后执行S501;初始值包括:固定转换关系的初始值以及固定参数的初始值;
S504,将差值小于预设阈值时的初始值作为目标标定值。
采用本实施方式的方法,相对于基于没有结合成像公式的转换模型进行标定的算法,可以更好利用固定参数的初始值、固定转换关系的初始值,以及不同姿态下的运动变量参数、第二类转换关系等各类参数,采用梯度下降法得到固定转换关系以及固定参数的目标标定值,目标标定值可以使得不同姿态下的各类参数均尽可能满足该模式下的转换关系式,提高了标定效率。
在一个实施方式中,参照图1A所示,以“图像传感器组件在执行器上”模式为例,图像传感器组件固定于机器人上,在围绕机械手且对应图像传感器组件的视野范围内的多个方位上,可以分别设置有一个或多个标定物。多个标定物可以提高被拍摄到的概率和标定物的图像的质量,提高标定效率;同时,较多的标定物的图像可以提高标定精度。另外,当存在多个图像传感器组件时,各图像传感器组件相对于机器人的朝向可以不同,以提高拍摄到的标定物的图像的质量,可以提高拍摄到标定板的概率和提高标定物的图像的质量,并可以提供不同拍摄方向的标定物的图像,从而提高标定效率和标定精度。
在一个实施方式中,转换模型为:H=F*I*Rt,或者可以为其它变形式,如H=Rt*I*F、Rt=H*F*I等等。
其中,以Rt表征第二类转换关系,F表征第一类转换关系,I表征固定转换关系中的第三类转换关系,H表征固定转换关系中的第四类转换关系。
与前面实施例方式的原理相同,I可以表征标定物坐标系到机器人基座坐标系的转换关系,也可以根据关系式的需要表征机器人基座坐标系到标定物坐标系的转换关系;H可以表征图像传感器坐标系到机器人末端坐标系的转换关系,也可以根据关系式的需要表征机器人末端坐标系到图像传感器坐标系的转换关系。
示例性的,为方便理解,下面以基于D-H参数构建的第一类转换关系为例,对标定方法进行说明。
图像传感器组件固定于机械手末端,在围绕机械手且对应图像传感器组件的视野范围内的多个方位上,可以分别设置有一个或多个标定物。首先对图像传感器组件做图像传感器组件标定(比如确定图像传感器组件坐标系与图像坐标系之间的转换关系),使图像传感器组件可以准确计算出图像传感器组件坐标系与标定物坐标系之间的转换关系Rt;控制器生成控制指令,以控制机器人运动到不同姿态,在此过程中,使得标定物位于图像传感器组件视野内,控制器获取通过图像传感器组件拍摄的多个标定物图像,通过标定物图像计算出图像传感器组件坐标系与标定物坐标系的转换关系
Figure BDA0004048052960000291
并且记录下此时机械手各关节的角度θ1~θ6(可以表示为θ1~6),各个关节的角度为通过各个关节的编码器采集并发送给控制器的,机械手各关节读数结合机械手标称的D-H可以通过机械手运动学正解计算出机械手末端的姿态,从而确定
Figure BDA0004048052960000292
以H=F*I*Rt为例,示例性地,根据机械手的标称的固定参数(固定参数的初始值)和机械手某一姿态下的运动变量参数,基于正运动学生成具有标称的固定参数的F;基于H=F*I*Rt关系式,结合多个姿态下的F、H的初始值、J的初始值以及Rt的当前初始值,根据多个不同姿态下的转换关系式,优化固定参数的初始值、H的初始值、I的初始值,得到优化后的固定参数的标定值、H的标定值、I的标定值,以使优化后的标定值能同时满足上述多个不同姿态下的转换关系式的成立。
具体地,以Fk表征第k姿态下的第一类转换关系,由于第一类转换关系可以基于正运动学由固定参数和运动变量参数计算得到,以六轴机械手,固定参数为D-H参数为例,θ1~6为六轴的运动变量参数,则在第k姿态下的第一类转换关系F=Fk(DH,θ1~6);同时以Rtk表征第k姿态下的第二类转换关系,则转换模型可以变形为:
H=Fk(DH,θ1~6)*I*Rtk
实际上,因为存在误差,因此H-Fk(DH,θ1~6)*I*Rtk=Xk;其中,Xk是由于机械手各待标定的参数的误差相关的数值,理想情况下趋近于0。此时通过优化I、H和D-H参数,运用梯度下降法可以计算出一个使各姿态下Xk均尽可能趋近于0(即第一数值尽可能小)的更准确的I、H和D-H,则优化后的I、H和D-H参数,即为最终的标定结果,其中,D-H为与机械手关联的标定结果。
如此重复多次可以拍下n组图片,相应得到n组参数,每组参数包括:Rtk、D-H、θ1~6,对应H-Fk(DH,θ1~6)*I*Rtk=Xk;此时通过优化I、H和D-H,运用梯度下降法可以计算出使得
Figure BDA0004048052960000301
最小时的I、H和D-H,作为最终的机械手的标定结果。
基于上述“图像传感器组件在执行器上”模式下,在另一个实施方式中,具体标定过程还可以将转化模型与成像公式结合,根据多个姿态下的运动变量参数,基于图像像素的重投影误差的方法,标定固定参数和固定转换关系的目标标定值。
对上述“图像传感器组件在执行器上”模式下的转换模型、第二类转换关系或具体标定过程等可以参见上述“图像传感器组件在执行器外”模式下的描述,这里不再详细赘述。
总之,在本实施方式中,在“图像传感器组件在执行器上”模式下,控制器可以根据固定参数的初始值、第五类转换关系的初始值、第六类转换关系的初始值,以及不同姿态下的运动变量参数、第二类转换关系等各类参数,采用梯度下降法得到第五类转换关系、第六类转换关系以及固定参数的目标标定值,目标标定值可以使得不同姿态下的各类参数均尽可能满足该模式下的人转换关系式,提高了标定效率。
应该理解的是,虽然图6-11的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图6-9中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施方式中,如图12所示,提供了一种机械手标定装置,适用于标定系统,标定系统包括以下组件:图像传感器组件、机械手以及预设的标定物;该装置包括:
变量获取模块61,用于获取机器人运动到多个姿态下的变量数据;变量数据包括:机器人的运动变量参数和标定物的多张标定物图像;
模型获取模块62,用于获取预设的转换模型;转换模型基于第一类转换关系和具有初始值的固定转换关系构建;第一类转换关系为基于运动变量参数和具有初始值的固定参数构建的机器人模型;
目标标定模块63,用于基于多个姿态下的所述运动变量参数、多张标定物图像和转换模型,标定固定参数和固定转换关系,得到固定参数和固定转换关系的目标标定值。
在一个实施方式中,机械手标定装置还包括:
指令发送模块,用于向机器人发送运动指令,以指示机器人运动到多个姿态。
在一个实施方式中,目标标定模块63包括:
转换求取单元631,用于根据所述多张标定物的图像,求取所述多个姿态下的第二类转换关系;所述第二类转换关系为图像传感器组件坐标系和标定物坐标系之间的转换关系;
目标标定单元632,用于基于所述多个姿态下的所述运动变量参数、所述第二类转换关系,以及所述转换模型,标定所述固定参数和所述固定转换关系。
在一个实施方式中,所述转换模型为所述第一类转换关系、所述第二类转换关系和所述固定转换关系构建的转换关系式,目标标定模块63包括:
第一迭代执行单元731,用于执行迭代标定操作;所述迭代标定操作包括:根据所述固定参数的初始值和所述多个姿态下的运动变量参数,计算得到所述多个姿态下的第一类转换关系的当前值;根据所述多个姿态下的第二类转换关系、所述第一类转换关系的当前值,以及所述固定转换关系的初始值,基于所述转换模型计算在所述多个姿态下的各个差值,以及所述差值的梯度;
第一目标修正单元732,用于根据所述差值的梯度对所述初始值进行修正,将修正后的初始标定值作为新的初始标定值,返回执行所述迭代标定操作得到新的差值的梯度,直至所述多个姿态下的所有新的差值全部小于预设阈值为止,并将新的差值小于预设阈值时的所述初始值作为所述目标标定值。
在一个实施方式中,所述转换模型为基于成像公式,结合所述第一类转换关系和所述固定转换关系构建的转换关系式,目标标定模块63包括:
转换计算单元831,用于根据所述固定参数的初始值和所述多个姿态下的运动变量参数,计算得到所述多个姿态下的第一类转换关系;
公式坐标求取单元832,用于根据所述第一类转换关系、所述固定转换关系的初始值和所述转换模型,求取所述多个姿态下所述标定物的标识点在所述标定物图像中的公式坐标;
图像坐标求取单元833,用于根据所述多个姿态下的所述标定物图像,求取所述标定物的所述标识点在所述标定物图像中的图像坐标;
误差计算单元834,用于根据所述公式坐标和所述图像坐标计算重投影误差;
目标标定单元835,用于单元基于最小化所述重投影误差的方法,标定所述固定参数和所述固定转换关系的所述目标标定值。
在一个实施方式中,目标标定模块63包括:
第二迭代执行单元931,用于执行迭代标定操作;所述迭代标定操作包括:根据所述固定参数的初始值和所述多个姿态下的运动变量参数,计算得到所述多个姿态下的第一类转换关系的当前值;根据所述第一类转换关系的当前值、所述固定转换关系的初始值和所述转换模型,求取所述标定物的标识点在所述标定物图像中的公式坐标;根据所述标定物图像,求取所述标定物的所述标识点在所述标定物图像中的图像坐标;基于所述公式坐标和所述图像坐标计算重投影误差;
第二目标修正单元932,用于根据所述重投影误差对所述初始值进行修正,将修正后的初始标定值作为新的初始标定值,返回执行所述迭代标定操作得到新的重投影误差,直至所述多个姿态下的所有新的重投影误差全部小于预设阈值为止,并将新的差值小于预设阈值时的所述初始值作为所述目标标定值。
关于机器人标定装置的具体限定可以参见上文中对于机器人标定方法的限定,在此不再赘述。上述机器人标定装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将控制装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施方式中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施方式中的对应过程,在此不再赘述。
在一个实施方式中,如图5所示,提供一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,处理器执行计算机程序时实现上述机器人标定方法的步骤。
在一个实施方式中,提供了一种可读存储介质,其上存储有计算机程序,适用于标定系统,该标定系统包括以下组件:图像传感器组件、机械手以及预设的标定物,计算机程序被处理器执行时实现上面实施方式中机器人标定方法的步骤。
本领域普通技术人员可以理解实现上述实施方式方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施方式的流程。其中,本申请所提供的各实施方式中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(BPROM)、电可擦除可编程ROM(BBPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(BSDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
当元件被表述“固定在”另一个元件,它可以直接在另一个元件上、或者其间可以存在一个或多个居中的元件、与另一个元件预制成一体。当一个元件被表述“连接”另一个元件,它可以是直接连接到另一个元件、或者其间可以存在一个或多个居中的元件。本说明书使用的术语“垂直的”、“水平的”、“左”、“右”、“内”、“外”以及类似的表述只是为了说明的目的。
本文术语中“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如:A和/或B,可以表示单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
在上述实施方式中,对各个实施方式的描述都各有侧重,某个实施方式中没有详述或记载的部分,可以参见其它实施方式的相关描述。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施方式方案的目的。
另外,在本发明各个实施方式中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
除非另有定义,本说明书所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本说明书中在本发明的说明书中所使用的属于只是为了描述具体的实施方式的目的,不是用于限制本发明。
本发明的权利要求书和说明书及上述附图中的术语“第一”、“第二”、“第三”、“S101”、“S102”、“S103”等等(如果存在)是用来区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施方式能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”、“具有”以及他们的任何变形,意图在于覆盖不排他的包含。比如:包括了一系列步骤或者模块的过程、方法、系统、产品或机器人不必限于清楚地列出的那些步骤或者模块,而是包括没有清楚地列出的或对于这些过程、方法、系统、产品或机器人固有的其它步骤或模块。
需要说明的是,本领域技术人员也应该知悉,说明书中所描述的实施方式均属于可选实施方式,所涉及的结构和模块并不一定是本发明所必须的。
以上所述实施方式仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

Claims (10)

1.一种机器人标定方法,其特征在于,适用于标定系统,所述标定系统包括以下组件:运动采集器、图像传感器组件以及标定物;所述方法包括:
获取所述机器人运动到多个姿态下的变量数据;所述变量数据包括:所述机器人的运动变量参数和所述标定物的多张标定物图像;
获取预设的转换模型;所述转换模型基于第一类转换关系和具有初始值的固定转换关系构建;所述第一类转换关系为基于所述运动变量参数和具有初始值的固定参数构建的机器人模型;
基于所述多个姿态下的所述运动变量参数、所述多张标定物图像和所述转换模型,标定所述固定参数和所述固定转换关系,得到所述固定参数和所述固定转换关系的目标标定值。
2.根据权利要求1所述的方法,其特征在于,所述固定转换关系包括:
所述标定系统中位置绝对固定的组件坐标系与所述机器人的基座坐标系之间的转换关系;以及
所述标定系统中位置相对固定的两个组件坐标系之间的转换关系。
3.根据权利要求2所述的方法,其特征在于,所述图像传感器组件与所述机器人的末端位置相对固定,且所述标定物位置绝对固定;
所述固定转换关系包括:第三类转换关系和第四类转换关系;所述第三类转换关系为所述机器人的末端坐标系和图像传感器组件坐标系之间的转换关系,所述第四类转换关系为标定物坐标系和所述机器人的基座坐标系之间的转换关系;或
所述标定物与所述机器人的末端位置相对固定,且所述图像传感器组件绝对固定;
所述固定转换关系包括:第五类转换关系和第六类转换关系;所述第五类转换关系为所述图像传感器组件坐标系和所述机器人的基座坐标系之间的转换关系,所述第六类转换关系为机器人的末端坐标系和所述标定物坐标系之间的转换关系。
4.根据权利要求3所述的方法,其特征在于,所述机器人包括机械手;
当所述图像传感器组件与所述机器人的末端位置相对固定,且所述标定物位置绝对固定;
在围绕所述机械手且对应图像传感器组件的视野范围内的多个方位上,分别设置有多个标定物;或
当所述标定物与所述机器人的末端位置相对固定,且所述图像传感器组件绝对固定;
在围绕所述机械手的多个方位上,分别设置有多个图像传感器组件。
5.根据权利要求1或2所述的方法,其特征在于,所述基于所述多个姿态下的所述运动变量参数、所述多张标定物图像和所述转换模型,标定所述固定参数和所述固定转换关系,包括:
根据所述多张标定物的图像,求取所述多个姿态下的第二类转换关系;所述第二类转换关系为图像传感器组件坐标系和标定物坐标系之间的转换关系;
基于所述多个姿态下的所述运动变量参数、所述第二类转换关系,以及所述转换模型,标定所述固定参数和所述固定转换关系。
6.根据权利要求5所述的方法,其特征在于,所述转换模型为所述第一类转换关系、所述第二类转换关系和所述固定转换关系构建的转换关系式。
7.根据权利要求6所述的方法,其特征在于,所述根据所述多个姿态下的所述运动变量参数、所述第一类转换关系和所述转换模型,标定所述固定参数和所述固定转换关系,包括:
执行迭代标定操作;所述迭代标定操作包括:根据所述固定参数的初始值和所述多个姿态下的运动变量参数,计算得到所述多个姿态下的第一类转换关系的当前值;根据所述多个姿态下的第二类转换关系、所述第一类转换关系的当前值,以及所述固定转换关系的初始值,基于所述转换模型计算在所述多个姿态下的各个差值,以及所述差值的梯度;
根据所述差值的梯度对所述初始值进行修正,将修正后的初始标定值作为新的初始标定值,返回执行所述迭代标定操作得到新的差值的梯度,直至所述多个姿态下的所有新的差值全部小于预设阈值为止,并将新的差值小于预设阈值时的所述初始值作为所述目标标定值。
8.根据权利要求1所述的方法,其特征在于,所述转换模型为基于成像公式,结合所述第一类转换关系和所述固定转换关系构建的转换关系式。
9.一种机器人标定装置,其特征在于,适用于标定系统,所述标定系统包括以下组件:图像传感器组件、运动采集器以及标定物;所述装置包括:
变量获取模块,用于获取所述机器人运动到多个姿态下的变量数据;所述变量数据包括:所述机器人的运动变量参数和所述标定物的多张标定物图像;
转换求取模块,用于根据所述多张标定物的图像,求取所述多个姿态下的第二类转换关系;所述第二类转换关系为图像传感器组件坐标系和标定物坐标系之间的转换关系;
模型获取模块,用于获取预设的转换模型;所述转换模型表征所述标定系统中各组件坐标系之间的转换关系;所述转换模型中包括:所述第二类转换关系、第一类转换关系和具有初始值的固定转换关系;所述第二类转换关系为基于所述运动变量参数和具有初始值的固定参数构建的机器人模型;
目标标定模块,用于根据所述多个姿态下的所述运动变量参数、所述第一类转换关系和所述转换模型,标定所述固定参数和所述固定转换关系,得到所述固定参数和所述固定转换关系的目标标定值。
10.一种机器人的标定系统的变量数据采集装置,其特征在于,所述装置包括运动采集器、图像传感器组件以及标定物;
所述图像传感器组件,用于拍摄标定物图像;
所述运动采集器,用于采集运动变量参数;
所述标定物和所述图像传感器组件其中之一固定在所述机器人的末端上;
所述标定物和图像传感器组件中的另一固定在所述机器人周边预设范围内;其中,设置在所述机器人周边预设范围内的所述标定物或所述图像传感器组件为多个。
CN202310033057.0A 2023-01-10 2023-01-10 机器人标定方法、装置和数据采集装置 Withdrawn CN116079726A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310033057.0A CN116079726A (zh) 2023-01-10 2023-01-10 机器人标定方法、装置和数据采集装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310033057.0A CN116079726A (zh) 2023-01-10 2023-01-10 机器人标定方法、装置和数据采集装置

Publications (1)

Publication Number Publication Date
CN116079726A true CN116079726A (zh) 2023-05-09

Family

ID=86186479

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310033057.0A Withdrawn CN116079726A (zh) 2023-01-10 2023-01-10 机器人标定方法、装置和数据采集装置

Country Status (1)

Country Link
CN (1) CN116079726A (zh)

Similar Documents

Publication Publication Date Title
JP6591507B2 (ja) 同時運動学およびハンドアイ較正
CN107738254B (zh) 一种机械臂坐标系的转换标定方法与系统
CN109859275B (zh) 一种基于s-r-s结构的康复机械臂的单目视觉手眼标定方法
CN111801198A (zh) 一种手眼标定方法、系统及计算机存储介质
JP6855492B2 (ja) ロボットシステム、ロボットシステム制御装置、およびロボットシステム制御方法
CN109807937B (zh) 一种基于自然场景的机器人手眼标定方法
JP2005201824A (ja) 計測装置
WO2021169855A1 (zh) 机器人校正方法、装置、计算机设备及存储介质
WO2018201677A1 (zh) 基于光束平差的远心镜头三维成像系统的标定方法及装置
JP6855491B2 (ja) ロボットシステム、ロボットシステム制御装置、およびロボットシステム制御方法
CN110722558B (zh) 机器人的原点校正方法、装置、控制器和存储介质
JP5450242B2 (ja) マニピュレータのキャリブレーション方法及びロボット制御システム
JP6922204B2 (ja) 制御装置、ロボットおよびロボットシステム
CN111612794A (zh) 基于多2d视觉的零部件高精度三维位姿估计方法及系统
CN113910219A (zh) 运动臂系统以及控制方法
CN110465946B (zh) 一种像素坐标与机器人坐标关系标定方法
WO2018209592A1 (zh) 一种机器人的运动控制方法、机器人及控制器
WO2023083056A1 (zh) 用于标定机器人的运动学参数的方法和装置
CN115284292A (zh) 基于激光相机的机械臂手眼标定方法及装置
JP7427370B2 (ja) 撮像装置、画像処理装置、画像処理方法、撮像装置の校正方法、ロボット装置、ロボット装置を用いた物品の製造方法、制御プログラムおよび記録媒体
JP6410411B2 (ja) パターンマッチング装置及びパターンマッチング方法
CN115870967A (zh) 机器人标定方法、装置、控制器、系统和存储介质
JP5574805B2 (ja) 視覚センサを有するマニピュレータのセンサキャリブレーション方法及びロボット制御システム
CN114187312A (zh) 目标物的抓取方法、装置、系统、存储介质及设备
CN116079726A (zh) 机器人标定方法、装置和数据采集装置

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

Application publication date: 20230509