CN106502208B - 一种工业机器人tcp标定方法 - Google Patents

一种工业机器人tcp标定方法 Download PDF

Info

Publication number
CN106502208B
CN106502208B CN201610849202.2A CN201610849202A CN106502208B CN 106502208 B CN106502208 B CN 106502208B CN 201610849202 A CN201610849202 A CN 201610849202A CN 106502208 B CN106502208 B CN 106502208B
Authority
CN
China
Prior art keywords
mrow
mtr
mtd
msubsup
msub
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.)
Active
Application number
CN201610849202.2A
Other languages
English (en)
Other versions
CN106502208A (zh
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.)
Foshan Huashu Robot Co Ltd
Original Assignee
Foshan Huashu Robot 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 Foshan Huashu Robot Co Ltd filed Critical Foshan Huashu Robot Co Ltd
Priority to CN201610849202.2A priority Critical patent/CN106502208B/zh
Publication of CN106502208A publication Critical patent/CN106502208A/zh
Application granted granted Critical
Publication of CN106502208B publication Critical patent/CN106502208B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/408Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by data handling or data format, e.g. reading, buffering or conversion of data
    • G05B19/4083Adapting programme, configuration
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/35Nc in input of data, input till input file format
    • G05B2219/35356Data handling

Landscapes

  • Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Pharmaceuticals Containing Other Organic And Inorganic Compounds (AREA)
  • Numerical Control (AREA)
  • Manipulator (AREA)

Abstract

本发明公开了一种工业机器人TCP标定方法,通过示教并对姿势进行记录和计算各个姿势的连杆末端法兰盘坐标系的姿态矩阵和位移向量,再通过步骤:先求出TCP标定的超定方程组的最小二乘解Q,消除一次误差,再用Q求出TCP的最小二乘解,进一步消除误差,从而使整体的计算更加精确,提升了标定可靠性。

Description

一种工业机器人TCP标定方法
技术领域
本发明涉及工业机器人技术领域,特别涉及工业机器人工具坐标系原点标定的方法。
背景技术
工业机器人完成各种工业作业任务,需要借助安装在机械手末端法兰盘的工具,编程人员希望机器人工具按照一定轨迹运行,因此需要对安装的工具进行标定。在不借助任何辅助设备的多点标定方法上,较多采用“四点标定”的方法。然而“四点标定”方法精确度不高,误差较大,使得标定结果不可靠。
发明内容
本发明要解决的技术问题是:解决了标定结果不可靠的问题。
本发明解决其技术问题的解决方案是:一种工业机器人TCP标定方法,包括如下步骤:
1)示教机器人以不同的姿势使得待标定的工具接触机器人灵活工作空间中一固定尖状物尖端,记录各个姿势的关节角坐标或者笛卡尔坐标,计算各个姿势的连杆末端法兰盘坐标系的姿态矩阵Ri(i=1、2…、n)和位移向量Ei(i=1、2、…、n);
2)利用姿势的姿态矩阵和位移向量计算TCP,计算步骤为:
先求出标识值Q:
再通过Q求到工具坐标系原点TCP值Ptcp
下标n为自然数。
对上述方案的进一步改进是,将步骤1)中的尖状物改为杆状且头部有尖端的物体。
对上述方案的进一步改进是,在步骤1)与步骤2)之间包括步骤:
a)对记录的姿势进行筛选,筛选步骤包括:
a1)对记录的姿势以任意4个姿势为一组进行分组,求出每一组
的误差系数,所述误差系数的计算方法包括:
a11)以任意3个姿势求出标识值Qn,直至求完所有的Qn,Qn的
计算方法是:
下标a,b,c为自然数;
a12)求出Qn之间的距离,最大的距离值则为误差系数;
a2)选出只存在于误差系数小于误差阈值的组的所有的姿势。
当然,对记录的姿势的筛选方式还有很多种,具体详见下述实施例。
在计算TCP前对记录的姿势进行一次筛选,可以将一些相关性很强的姿势去除掉,从而使标定结果更加精确。
对上述方案的进一步改进是,所述的误差阈值为1.5mm。当误差阈值设置过小时,筛选时则会将很多符合要求的姿势去除掉,有可能根本找不到符合要求的姿势;当误差阈值设置过大时,则会引入很多相关性很强的姿势,从而计算出的TCP达不到精度的要求。综合考量,选择误差阈值为1.5mm最为合适。
对上述方案的进一步改进是,步骤2)还包括步骤:3)将TCP值载入到工业机器人处理器中。
本发明的有益效果是:本发明通过提供一种工业机器人TCP标定方法包括:先示教并对姿势进行记录和计算各个姿势的连杆末端法兰盘坐标系的姿态矩阵和位移向量,先求出TCP标定的超定方程组的最小二乘解Q,消除一次误差,再用Q求出TCP的最小二乘解,进一步消除误差,从而使整体的计算更加精确,提升了标定可靠性。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单说明。显然,所描述的附图只是本发明的一部分实施例,而不是全部实施例,本领域的技术人员在不付出创造性劳动的前提下,还可以根据这些附图获得其他设计方案和附图。
图1是实施例1的步骤流程图;
图2是实施例2的步骤流程图。
具体实施方式
以下将结合实施例和附图对本发明的构思、具体结构及产生的技术效果进行清楚、完整的描述,以充分地理解本发明的目的、特征和效果。显然,所描述的实施例只是本发明的一部分实施例,而不是全部实施例,基于本发明的实施例,本领域的技术人员在不付出创造性劳动的前提下所获得的其他实施例,均属于本发明保护的范围。另外,文中所提到的所有联接/连接关系,并非单指构件直接相接,而是指可根据具体实施情况,通过添加或减少联接辅件,来组成更优的联接结构。本发明创造中的各个技术特征,在不互相矛盾冲突的前提下可以交互组合。
实施例1
为了验证本发明的具体执行情况,在机器人仿真软件上进行校核。仿真用机器人工具的理论TCP是(2,0,402),如图1所示的步骤流程图,执行步骤大致如下:
1)示教机器人以不同的姿势使得待标定的工具接触机器人灵活工作空间中一固定尖状物尖端,记录各个姿势的关节角坐标或者笛卡尔坐标,计算各个姿势的连杆末端法兰盘坐标系的姿态矩阵Ri(i=1、2…、n)和位移向量Ei(i=1、2、…、n);
记录5次姿势的六轴机器人的关节角坐标,得到表1;
表1
通过工业机器人运动学方程正解可以得到各个姿势的连杆末端法兰盘坐标系的姿态矩阵Ri(i=1、2…、n)和位移向量Ei(i=1、2、…、n);
2)对记录到的5个姿势进行筛选:以4个姿势为一组进行分组,得到5组不同组合,求出各组的误差系数,得到表2;判断各组的误差系数是否小于1.5mm,选出只存在于误差系数小于1.5mm的组合的所有姿势;
表2
误差系数的计算方法,以姿势1、2、3、4这一组合为例:
利用三点计算误差大的特点,用此来求出误差系数,将姿势1、2、3、4以3个姿势为一组,其组合有:
1)姿势1、2、3组合
2)姿势1、2、4组合
3)姿势1、3、4组合
4)姿势2、3、4组合
记姿势1、2、3组合计算得到的Qn为Qn123;记姿势1、2、4组合计算得到的Qn为Qn124;记姿势1、3、4组合计算得到的Qn为Qn134;记姿势2、3、4组合计算得到的Qn为Qn234。如下所示:
计算Qn123、Qn124、Qn134、Qn234的距离:||Qn123-Qn124||、||Qn123-Qn134||、||Qn123-Qn234||、||Qn134-Qn234||、||Qn134-Qn124||、||Qn234-Qn124||得到最大的距离值为误差系数,此误差系数为1.31070。
通过表2可以知道,选出的姿势为:姿势1、2、3、4、5。
3)通过选出来的姿势1、2、3、4、5,的连杆末端法兰盘坐标系的姿态矩阵和位移向量求出标识值Q,Q的实质为工具与所述尖状物尖端接触的点,再通过Q求出TCP,计算过程如下:
先求出Q:
Q的解为:
通过Q求出TCP:
求出TCP的解:
得到TCP坐标为(1.7583,0.0449,401.8629),对比理论TCP(2,0,402),得到的误差为0.2825mm。
从误差数据可以知道,误差很小,此方法提高了标定的精度,提高了标定的可靠性。
4)将得到的TCP值载入到工业机器人的处理器中。
实施例2
为了验证本发明的具体执行情况,在机器人仿真软件上进行校核。仿真用机器人的工具的理论TCP是(2,0,402),如图2所示的步骤流程图,执行步骤大致如下:
1)示教机器人以不同的姿势使得待标定的工具坐标系原点TCP接触机器人灵活工作空间中一固定尖状物尖端,记录各个姿势的关节角坐标或者笛卡尔坐标,计算各个姿势的连杆末端法兰盘坐标系的姿态矩阵Ri(i=1、2…、n)和位移向量Ei(i=1、2、…、n);
记录5次姿势的六轴机器人的关节角坐标,得到表3;
表3
通过机器人运动学方程正解可以得到每个姿势的连杆末端法兰盘坐标系的姿态矩阵和位移向量;
2)对记录到的5个姿势进行筛选:以4个姿势为一组进行分组,得到5组不同组合,求出各组的误差系数,得到表4,判断各组的误差系数是否小于1.5mm,选出误差系数小于1.5mm且误差系数数值最小的那一组的所有姿势;
姿势1、2、3、4点求得误差系数 1.65450 大于1.5
姿势1、2、3、5点求得误差系数 3.30840 大于1.5
姿势1、2、4、5点求得误差系数 1.05110 小于1.5
姿势1、3、4、5点求得误差系数 0.63973 小于1.5
姿势2、3、4、5点求得误差系数 3.06720 大于1.5
表4
误差系数的计算方法,以姿势1、2、3、4这一组合为例:
利用三点计算误差大的特点,用此来求出误差系数,将姿势1、2、3、4以3个姿势为一组,其组合有:
1)姿势1、2、3组合
2)姿势1、2、4组合
3)姿势1、3、4组合
4)姿势2、3、4组合
记姿势1、2、3组合计算得到的Qn为Qn123;记姿势1、2、4组合计算得到的Qn为Qn124;记姿势1、3、4组合计算得到的Qn为Qn134;记姿势2、3、4组合计算得到的Qn为Qn234。如下所示:
计算Qn123、Qn124、Qn134、Qn234的距离:||Qn123-Qn124||、||Qn123-Qn134||、||Qn123-Qn234||、||Qn134-Qn234||、||Qn134-Qn124||、||Qn234-Qn124||得到最大的距离值为误差系数,此误差系数为1.65450。
通过表4可以知道,选出的姿势为:姿势1、3、4、5。
3)通过选出来的姿势1、3、4、5,的连杆末端法兰盘坐标系的姿态矩阵和位移向量先求出标识值Q,Q的实质为工具与所述尖状物尖端接触的点,再通过Q求出TCP,计算过程如下:
Q的解为:
求出TCP的解:
得到TCP坐标为(1.4722,-0.0805,402.1971),对比理论TCP(2,0,402),得到的误差为0.5691mm。
从误差数据可以知道,误差很小,此方法提高了标定的精度,提高了标定的可靠性。
进一步作为优选的实施方式,在标定时,采集更加多的姿势进行计算,姿势越多,测量越精确。
以上对本发明的较佳实施方式进行了具体说明,但本发明创造并不限于所述实施例,熟悉本领域的技术人员在不违背本发明精神的前提下还可作出种种的等同变型或替换,这些等同的变型或替换均包含在本申请权利要求所限定的范围内。

Claims (6)

1.一种工业机器人TCP标定方法,其特征在于:包括如下步骤:
1)示教机器人以不同的姿势使得待标定的工具接触机器人灵活工作空间中一固定尖状物尖端,记录各个姿势的关节角坐标或者笛卡尔坐标,计算各个姿势的连杆末端法兰盘坐标系的姿态矩阵Ri(i=1、2…、n)和位移向量Ei(i=1、2、…、n);
2)利用姿势的姿态矩阵和位移向量计算TCP,计算步骤为:
先求出标识值Q:
<mrow> <mi>Q</mi> <mo>=</mo> <mfrac> <mrow> <msup> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mrow> <msubsup> <mi>R</mi> <mn>1</mn> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msubsup> <mo>-</mo> <msubsup> <mi>R</mi> <mn>2</mn> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msubsup> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <msubsup> <mi>R</mi> <mn>1</mn> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msubsup> <mo>-</mo> <msubsup> <mi>R</mi> <mn>3</mn> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msubsup> </mrow> </mtd> </mtr> <mtr> <mtd> <mo>.</mo> </mtd> </mtr> <mtr> <mtd> <mo>.</mo> </mtd> </mtr> <mtr> <mtd> <mo>.</mo> </mtd> </mtr> <mtr> <mtd> <mrow> <msubsup> <mi>R</mi> <mn>1</mn> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msubsup> <mo>-</mo> <msubsup> <mi>R</mi> <mi>n</mi> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msubsup> </mrow> </mtd> </mtr> </mtable> </mfenced> <mi>T</mi> </msup> <mo>&amp;times;</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mrow> <msubsup> <mi>R</mi> <mn>1</mn> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msubsup> <mo>&amp;times;</mo> <msub> <mi>E</mi> <mn>1</mn> </msub> <mo>-</mo> <msubsup> <mi>R</mi> <mn>2</mn> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msubsup> <mo>&amp;times;</mo> <msub> <mi>E</mi> <mn>2</mn> </msub> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <msubsup> <mi>R</mi> <mn>1</mn> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msubsup> <mo>&amp;times;</mo> <msub> <mi>E</mi> <mn>1</mn> </msub> <mo>-</mo> <msubsup> <mi>R</mi> <mn>3</mn> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msubsup> <mo>&amp;times;</mo> <msub> <mi>E</mi> <mn>3</mn> </msub> </mrow> </mtd> </mtr> <mtr> <mtd> <mo>.</mo> </mtd> </mtr> <mtr> <mtd> <mo>.</mo> </mtd> </mtr> <mtr> <mtd> <mo>.</mo> </mtd> </mtr> <mtr> <mtd> <mrow> <msubsup> <mi>R</mi> <mn>1</mn> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msubsup> <mo>&amp;times;</mo> <msub> <mi>E</mi> <mn>1</mn> </msub> <mo>-</mo> <msubsup> <mi>R</mi> <mi>n</mi> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msubsup> <mo>&amp;times;</mo> <msub> <mi>E</mi> <mi>n</mi> </msub> </mrow> </mtd> </mtr> </mtable> </mfenced> </mrow> <mrow> <msup> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mrow> <msubsup> <mi>R</mi> <mn>1</mn> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msubsup> <mo>-</mo> <msubsup> <mi>R</mi> <mn>2</mn> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msubsup> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <msubsup> <mi>R</mi> <mn>1</mn> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msubsup> <mo>-</mo> <msubsup> <mi>R</mi> <mn>3</mn> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msubsup> </mrow> </mtd> </mtr> <mtr> <mtd> <mo>.</mo> </mtd> </mtr> <mtr> <mtd> <mo>.</mo> </mtd> </mtr> <mtr> <mtd> <mo>.</mo> </mtd> </mtr> <mtr> <mtd> <mrow> <msubsup> <mi>R</mi> <mn>1</mn> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msubsup> <mo>-</mo> <msubsup> <mi>R</mi> <mi>n</mi> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msubsup> </mrow> </mtd> </mtr> </mtable> </mfenced> <mi>T</mi> </msup> <mo>&amp;times;</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mrow> <msubsup> <mi>R</mi> <mn>1</mn> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msubsup> <mo>-</mo> <msubsup> <mi>R</mi> <mn>2</mn> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msubsup> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <msubsup> <mi>R</mi> <mn>1</mn> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msubsup> <mo>-</mo> <msubsup> <mi>R</mi> <mn>3</mn> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msubsup> </mrow> </mtd> </mtr> <mtr> <mtd> <mo>.</mo> </mtd> </mtr> <mtr> <mtd> <mo>.</mo> </mtd> </mtr> <mtr> <mtd> <mo>.</mo> </mtd> </mtr> <mtr> <mtd> <mrow> <msubsup> <mi>R</mi> <mn>1</mn> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msubsup> <mo>-</mo> <msubsup> <mi>R</mi> <mi>n</mi> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msubsup> </mrow> </mtd> </mtr> </mtable> </mfenced> </mrow> </mfrac> </mrow>
再通过Q求到工具坐标系原点TCP的值Ptcp
<mrow> <msub> <mi>P</mi> <mrow> <mi>t</mi> <mi>c</mi> <mi>p</mi> </mrow> </msub> <mo>=</mo> <mfrac> <mrow> <msup> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <msub> <mi>R</mi> <mn>1</mn> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <mi>R</mi> <mn>2</mn> </msub> </mtd> </mtr> <mtr> <mtd> <mo>.</mo> </mtd> </mtr> <mtr> <mtd> <mo>.</mo> </mtd> </mtr> <mtr> <mtd> <mo>.</mo> </mtd> </mtr> <mtr> <mtd> <msub> <mi>R</mi> <mrow> <mi>n</mi> <mo>-</mo> <mn>1</mn> </mrow> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <mi>R</mi> <mi>n</mi> </msub> </mtd> </mtr> </mtable> </mfenced> <mi>T</mi> </msup> <mo>&amp;times;</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mrow> <mi>Q</mi> <mo>-</mo> <msub> <mi>E</mi> <mn>1</mn> </msub> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mi>Q</mi> <mo>-</mo> <msub> <mi>E</mi> <mn>2</mn> </msub> </mrow> </mtd> </mtr> <mtr> <mtd> <mo>.</mo> </mtd> </mtr> <mtr> <mtd> <mo>.</mo> </mtd> </mtr> <mtr> <mtd> <mo>.</mo> </mtd> </mtr> <mtr> <mtd> <mrow> <mi>Q</mi> <mo>-</mo> <msub> <mi>E</mi> <mrow> <mi>n</mi> <mo>-</mo> <mn>1</mn> </mrow> </msub> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mi>Q</mi> <mo>-</mo> <msub> <mi>E</mi> <mi>n</mi> </msub> </mrow> </mtd> </mtr> </mtable> </mfenced> </mrow> <mrow> <msup> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <msub> <mi>R</mi> <mn>1</mn> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <mi>R</mi> <mn>2</mn> </msub> </mtd> </mtr> <mtr> <mtd> <mo>.</mo> </mtd> </mtr> <mtr> <mtd> <mo>.</mo> </mtd> </mtr> <mtr> <mtd> <mo>.</mo> </mtd> </mtr> <mtr> <mtd> <msub> <mi>R</mi> <mrow> <mi>n</mi> <mo>-</mo> <mn>1</mn> </mrow> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <mi>R</mi> <mi>n</mi> </msub> </mtd> </mtr> </mtable> </mfenced> <mi>T</mi> </msup> <mo>&amp;times;</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <msub> <mi>R</mi> <mn>1</mn> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <mi>R</mi> <mn>2</mn> </msub> </mtd> </mtr> <mtr> <mtd> <mo>.</mo> </mtd> </mtr> <mtr> <mtd> <mo>.</mo> </mtd> </mtr> <mtr> <mtd> <mo>.</mo> </mtd> </mtr> <mtr> <mtd> <msub> <mi>R</mi> <mrow> <mi>n</mi> <mo>-</mo> <mn>1</mn> </mrow> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <mi>R</mi> <mi>n</mi> </msub> </mtd> </mtr> </mtable> </mfenced> </mrow> </mfrac> </mrow>
下标n为自然数。
2.根据权利要求1所述的一种工业机器人TCP标定方法,其特征在于,所述步骤1)中的尖状物为杆状且头部有尖端的物体。
3.根据权利要求1所述的一种工业机器人TCP标定方法,其特征在于,所述步骤1)与步骤2)之间包括步骤:
a)对所述记录的姿势进行筛选,筛选步骤包括:
a1)对所述记录的姿势以任意4个姿势为一组进行分组,求出每一组的误差系数,所述误差系数的计算方法包括:
a11)以任意3个姿势求出标识值Qn,直至求完所有的Qn,Qn的计算方法是:
<mrow> <mi>Q</mi> <mi>n</mi> <mo>=</mo> <mfrac> <mrow> <msup> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mrow> <msubsup> <mi>R</mi> <mi>a</mi> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msubsup> <mo>-</mo> <msubsup> <mi>R</mi> <mi>b</mi> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msubsup> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <msubsup> <mi>R</mi> <mi>a</mi> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msubsup> <mo>-</mo> <msubsup> <mi>R</mi> <mi>c</mi> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msubsup> </mrow> </mtd> </mtr> </mtable> </mfenced> <mi>T</mi> </msup> <mo>&amp;times;</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mrow> <msubsup> <mi>R</mi> <mi>a</mi> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msubsup> <mo>&amp;times;</mo> <msub> <mi>E</mi> <mi>a</mi> </msub> <mo>-</mo> <msubsup> <mi>R</mi> <mi>b</mi> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msubsup> <mo>&amp;times;</mo> <msub> <mi>E</mi> <mi>b</mi> </msub> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <msubsup> <mi>R</mi> <mi>a</mi> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msubsup> <mo>&amp;times;</mo> <msub> <mi>E</mi> <mi>a</mi> </msub> <mo>-</mo> <msubsup> <mi>R</mi> <mi>c</mi> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msubsup> <mo>&amp;times;</mo> <msub> <mi>E</mi> <mi>c</mi> </msub> </mrow> </mtd> </mtr> </mtable> </mfenced> </mrow> <mrow> <msup> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mrow> <msubsup> <mi>R</mi> <mi>a</mi> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msubsup> <mo>-</mo> <msubsup> <mi>R</mi> <mi>b</mi> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msubsup> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <msubsup> <mi>R</mi> <mi>a</mi> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msubsup> <mo>-</mo> <msubsup> <mi>R</mi> <mi>c</mi> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msubsup> </mrow> </mtd> </mtr> </mtable> </mfenced> <mi>T</mi> </msup> <mo>&amp;times;</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mrow> <msubsup> <mi>R</mi> <mi>a</mi> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msubsup> <mo>-</mo> <msubsup> <mi>R</mi> <mi>b</mi> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msubsup> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <msubsup> <mi>R</mi> <mi>a</mi> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msubsup> <mo>-</mo> <msubsup> <mi>R</mi> <mi>c</mi> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msubsup> </mrow> </mtd> </mtr> </mtable> </mfenced> </mrow> </mfrac> </mrow>
下标a,b,c为自然数;
a12)求出Qn之间的距离,最大的距离值则为误差系数;
a2)选出只存在于误差系数小于误差阈值的组的所有的姿势。
4.根据权利要求1所述的一种工业机器人TCP标定方法,其特征在于,所述步骤1)与步骤2)之间包括步骤:
c)对所述记录的姿势进行筛选,筛选步骤包括:
c1)对所述记录的姿势以任意4个姿势进行分组,求出每一组的误差系数,所述误差系数的计算方法包括:
c11)以任意3个姿势求出标识值Qn,直至求完所有的Qn,Qn的计算方法是:
<mrow> <mi>Q</mi> <mi>n</mi> <mo>=</mo> <mfrac> <mrow> <msup> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mrow> <msubsup> <mi>R</mi> <mi>a</mi> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msubsup> <mo>-</mo> <msubsup> <mi>R</mi> <mi>b</mi> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msubsup> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <msubsup> <mi>R</mi> <mi>a</mi> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msubsup> <mo>-</mo> <msubsup> <mi>R</mi> <mi>c</mi> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msubsup> </mrow> </mtd> </mtr> </mtable> </mfenced> <mi>T</mi> </msup> <mo>&amp;times;</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mrow> <msubsup> <mi>R</mi> <mi>a</mi> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msubsup> <mo>&amp;times;</mo> <msub> <mi>E</mi> <mi>a</mi> </msub> <mo>-</mo> <msubsup> <mi>R</mi> <mi>b</mi> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msubsup> <mo>&amp;times;</mo> <msub> <mi>E</mi> <mi>b</mi> </msub> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <msubsup> <mi>R</mi> <mi>a</mi> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msubsup> <mo>&amp;times;</mo> <msub> <mi>E</mi> <mi>a</mi> </msub> <mo>-</mo> <msubsup> <mi>R</mi> <mi>c</mi> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msubsup> <mo>&amp;times;</mo> <msub> <mi>E</mi> <mi>c</mi> </msub> </mrow> </mtd> </mtr> </mtable> </mfenced> </mrow> <mrow> <msup> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mrow> <msubsup> <mi>R</mi> <mi>a</mi> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msubsup> <mo>-</mo> <msubsup> <mi>R</mi> <mi>b</mi> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msubsup> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <msubsup> <mi>R</mi> <mi>a</mi> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msubsup> <mo>-</mo> <msubsup> <mi>R</mi> <mi>c</mi> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msubsup> </mrow> </mtd> </mtr> </mtable> </mfenced> <mi>T</mi> </msup> <mo>&amp;times;</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mrow> <msubsup> <mi>R</mi> <mi>a</mi> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msubsup> <mo>-</mo> <msubsup> <mi>R</mi> <mi>b</mi> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msubsup> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <msubsup> <mi>R</mi> <mi>a</mi> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msubsup> <mo>-</mo> <msubsup> <mi>R</mi> <mi>c</mi> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msubsup> </mrow> </mtd> </mtr> </mtable> </mfenced> </mrow> </mfrac> </mrow>
下标a,b,c为自然数;
c12)求出Qn之间的距离,最大的距离值则为误差系数;
c2)选出误差系数小于误差阈值且误差系数数值最小的那一组的所有姿势。
5.根据权利要求3-4任一项所述的一种工业机器人TCP标定方法,其特征在于,所述误差阈值为1.5mm。
6.根据权利要求1所述一种工业机器人TCP标定方法,其特征在于,其特征在于还包括步骤:
3)将TCP值载入到工业机器人处理器中。
CN201610849202.2A 2016-09-23 2016-09-23 一种工业机器人tcp标定方法 Active CN106502208B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610849202.2A CN106502208B (zh) 2016-09-23 2016-09-23 一种工业机器人tcp标定方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610849202.2A CN106502208B (zh) 2016-09-23 2016-09-23 一种工业机器人tcp标定方法

Publications (2)

Publication Number Publication Date
CN106502208A CN106502208A (zh) 2017-03-15
CN106502208B true CN106502208B (zh) 2018-04-27

Family

ID=58291089

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610849202.2A Active CN106502208B (zh) 2016-09-23 2016-09-23 一种工业机器人tcp标定方法

Country Status (1)

Country Link
CN (1) CN106502208B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110039528A (zh) * 2019-03-15 2019-07-23 广州智能装备研究院有限公司 一种基于动态学习的工业机器人零点标定方法

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109909999B (zh) * 2017-12-13 2020-08-28 北京柏惠维康科技有限公司 一种获取机器人tcp坐标的方法和装置
CN109916352B (zh) * 2017-12-13 2020-09-25 北京柏惠维康科技有限公司 一种获取机器人tcp坐标的方法和装置
CN109916351B (zh) * 2017-12-13 2020-09-08 北京柏惠维康科技有限公司 一种获取机器人tcp坐标的方法和装置
CN108393896B (zh) * 2018-02-02 2021-04-09 山东大学 用于焊接机器人焊枪工具点及工件坐标系标定装置及方法
CN108731591B (zh) * 2018-04-24 2020-04-21 佛山智能装备技术研究院 一种基于平面约束的机器人工具坐标系标定方法
CN109465831B (zh) * 2018-12-17 2021-06-01 南京埃斯顿机器人工程有限公司 一种提升工业机器人工具坐标系标定精度的方法
CN110375688A (zh) * 2019-06-18 2019-10-25 宁波敏实汽车零部件技术研发有限公司 一种工业机器人工具坐标系姿态标定系统与方法
CN111360797A (zh) * 2020-03-16 2020-07-03 杭州腾聚科技有限公司 一种基于视觉的机器人tcp标定方法
CN112873213B (zh) * 2021-03-02 2022-06-10 南京达风数控技术有限公司 一种提升六关节机器人工具坐标系标定精度的方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102692873A (zh) * 2012-05-07 2012-09-26 上海理工大学 工业机器人定位精度标定方法
CN104457645A (zh) * 2014-11-27 2015-03-25 中南大学 一种利用二维测量功能平板的机器人工具中心点标定方法
CN104833324A (zh) * 2015-01-28 2015-08-12 江南大学 一种基于测量头的机器人标定方法
CN105066808A (zh) * 2015-07-14 2015-11-18 安徽工业大学 一种工业机器人运动学参数简易标定装置及其标定方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6812665B2 (en) * 2002-04-19 2004-11-02 Abb Ab In-process relative robot workcell calibration
JP2006099474A (ja) * 2004-09-29 2006-04-13 Fanuc Ltd ロボットの軌跡制御方法
CN100547614C (zh) * 2007-12-20 2009-10-07 昆山华恒工程技术中心有限公司 一种工业机器人的标定方法
US7979159B2 (en) * 2008-04-30 2011-07-12 Abb Technology Ab Method and system for determining the relation between a robot coordinate system and a local coordinate system located in the working range of the robot
WO2010060459A1 (en) * 2008-11-25 2010-06-03 Abb Technology Ab A method and an apparatus for calibration of an industrial robot system
CN102566577B (zh) * 2010-12-29 2014-01-29 沈阳新松机器人自动化股份有限公司 一种工业机器人简易标定方法
CN103322953B (zh) * 2013-05-22 2015-11-04 北京配天技术有限公司 工件坐标系的标定方法、装置及工件加工处理方法、装置
CN105588525B (zh) * 2014-11-14 2019-09-20 北京配天技术有限公司 一种工具在机器人法兰坐标系上的标定方法及装置
CN104890013A (zh) * 2015-06-02 2015-09-09 南京航空航天大学 一种基于拉线编码器的工业机器人标定算法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102692873A (zh) * 2012-05-07 2012-09-26 上海理工大学 工业机器人定位精度标定方法
CN104457645A (zh) * 2014-11-27 2015-03-25 中南大学 一种利用二维测量功能平板的机器人工具中心点标定方法
CN104833324A (zh) * 2015-01-28 2015-08-12 江南大学 一种基于测量头的机器人标定方法
CN105066808A (zh) * 2015-07-14 2015-11-18 安徽工业大学 一种工业机器人运动学参数简易标定装置及其标定方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110039528A (zh) * 2019-03-15 2019-07-23 广州智能装备研究院有限公司 一种基于动态学习的工业机器人零点标定方法

Also Published As

Publication number Publication date
CN106502208A (zh) 2017-03-15

Similar Documents

Publication Publication Date Title
CN106502208B (zh) 一种工业机器人tcp标定方法
CN110640745B (zh) 基于视觉的机器人自动标定方法、设备和存储介质
CN109822574B (zh) 一种工业机器人末端六维力传感器标定的方法
US8818747B2 (en) Calibration of a triaxial magnetic field sensor
CN100533087C (zh) 高精度压力传感器的误差补偿方法
CN107378952B (zh) 一种冗余度机械臂末端执行器姿态保持的解决方法
CN105588525B (zh) 一种工具在机器人法兰坐标系上的标定方法及装置
CN110900610B (zh) 一种基于lm算法和粒子滤波算法优化的工业机器人标定方法
CN107817682B (zh) 一种基于手眼相机的空间机械臂在轨标定方法及系统
CN111168719B (zh) 一种基于定位工装的机器人校准方法及系统
CN105509671B (zh) 一种利用平面标定板的机器人工具中心点标定方法
US20060026852A1 (en) Reference coordinate calculating method, reference coordinate calculating program, recording medium thereof, reference plate and form measuring machine
CN113370221B (zh) 机器人tcp标定系统、方法、装置、设备及存储介质
JP2015147280A (ja) ロボット較正方法
CN111216138A (zh) 机器人标定方法、机器人标定系统及可读存储介质
CN109129465B (zh) 一种机器人手眼标定系统及其工作流程
CN113211445B (zh) 一种机器人参数标定方法、装置、设备及存储介质
CN112123341B (zh) 机器人双臂协调运动控制方法、装置和电子设备
US20210323161A1 (en) Ultrasonic testing system of dual robot arms and method thereof
CN109344477B (zh) 一种6自由度机械臂逆运动学求解方法
CN104714473B (zh) 一种管路柔性装焊的导管余量切割位置计算方法
CN114454174B (zh) 机械臂动作捕捉方法、介质、电子设备及系统
CN104408299A (zh) 基于距离识别冗余运动学参数的机器人位置误差补偿方法
CN109465831B (zh) 一种提升工业机器人工具坐标系标定精度的方法
CN113378349B (zh) S-r-s结构七自由度机械臂逆运动学解析解的数值稳定算法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant