CN114734436B - 一种机器人的编码器校准方法、装置及机器人 - Google Patents
一种机器人的编码器校准方法、装置及机器人 Download PDFInfo
- Publication number
- CN114734436B CN114734436B CN202210293808.8A CN202210293808A CN114734436B CN 114734436 B CN114734436 B CN 114734436B CN 202210293808 A CN202210293808 A CN 202210293808A CN 114734436 B CN114734436 B CN 114734436B
- Authority
- CN
- China
- Prior art keywords
- robot
- encoder
- motion
- change amount
- weight matrix
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 62
- 230000008859 change Effects 0.000 claims abstract description 103
- 239000011159 matrix material Substances 0.000 claims abstract description 99
- 230000008569 process Effects 0.000 claims abstract description 23
- 238000013507 mapping Methods 0.000 claims abstract description 10
- 239000002245 particle Substances 0.000 claims description 3
- 238000002922 simulated annealing Methods 0.000 claims description 3
- 238000010845 search algorithm Methods 0.000 claims description 2
- 238000009795 derivation Methods 0.000 claims 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 239000003638 chemical reducing agent Substances 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1679—Programme controls characterised by the tasks executed
- B25J9/1692—Calibration of manipulator
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J11/00—Manipulators not otherwise provided for
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J19/00—Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1602—Programme controls characterised by the control system, structure, architecture
- B25J9/161—Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1628—Programme controls characterised by the control loop
- B25J9/163—Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1674—Programme controls characterised by safety, monitoring, diagnostic
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01D—MEASURING NOT SPECIALLY ADAPTED FOR A SPECIFIC VARIABLE; ARRANGEMENTS FOR MEASURING TWO OR MORE VARIABLES NOT COVERED IN A SINGLE OTHER SUBCLASS; TARIFF METERING APPARATUS; MEASURING OR TESTING NOT OTHERWISE PROVIDED FOR
- G01D18/00—Testing or calibrating apparatus or arrangements provided for in groups G01D1/00 - G01D15/00
- G01D18/008—Testing or calibrating apparatus or arrangements provided for in groups G01D1/00 - G01D15/00 with calibration coefficients stored in memory
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Fuzzy Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Manipulator (AREA)
Abstract
本发明提供一种机器人的编码器校准方法、装置及机器人,所述方法包括:S1、机器人上电后,获取机器人的状态信息;S2、设置权重矩阵的初始值,根据机器人的状态信息和预先确定的预期关节运动量,基于权重矩阵的初始值确定机器人的关节运动量和TCP位姿变化量的映射关系;S3、根据预设的搜索算法搜索权重矩阵,当机器人的TCP位姿变化量满足预设的TCP位姿变化量阈值时,确定目标权重矩阵;S4、基于机器人的TCP位姿变化量,规划机器人每个插补周期的关节插补量,执行运动插补并在插补过程中检测编码器的校准状态,根据编码器的校准状态调整运动。本方案的机器人能够在插补运动过程中自动实现编码器零位的校准,且校准过程中机器人末端运动范围较小。
Description
技术领域
本发明涉及工业机器人技术领域,特别是涉及一种机器人的编码器校准方法、装置及机器人。
背景技术
机器人上电时,其内部存储有关节零位值,但该存储的关节零位值与真实的零点位置存在偏差,若不进行编码器的调零,会存在电机位置不准确,机器人运行精度不足的问题。所以,机器人开始执行工作前,需要对机器人的初始零位进行校准,以保证机器人工作的精度。现有技术中,通常基于外部的仪器、或者通过安装校准工装等方式,实现对机器人初始零位的校准,但以上方法操作比较复杂,尤其对于制造业等需要大批量使用机器人的场景,需要人工逐个进行校准,耗时耗力。
发明内容
本发明的目的在于提供一种机器人的编码器校准方法、装置及机器人,机器人上电后可依据该方法自动的对编码器零位进行校准,实现关节电机的快速归零,无需用户控制校准过程,同时,保证机器人末端的运动范围较小,避免发生碰撞等不安全因素。
为实现上述目标,本发明可采用如下技术方案:一种机器人的编码器校准方法,所述方法包括:S1、机器人上电后,获取机器人的状态信息;S2、设置权重矩阵的初始值,根据机器人的状态信息和预先确定的预期关节运动量,基于权重矩阵的初始值确定机器人的关节运动量和TCP位姿变化量的映射关系;S3、根据预设的搜索算法搜索权重矩阵,通过调整权重矩阵以改变TCP位姿变化量,当机器人的TCP位姿变化量满足预设的TCP位姿变化量阈值时,将当前的权重矩阵确定为目标权重矩阵;S4、基于机器人的TCP位姿变化量,规划机器人每个插补周期的关节插补量,执行运动插补并在插补过程中检测编码器的校准状态,根据编码器的校准状态调整机器人的运动。
进一步的,所述执行运动插补并在插补过程中检测编码器的校准状态,根据编码器的校准状态调整机器人的运动包括:检测编码器的校准状态发生变化时,结束执行运动插补;以及,判断是否已经完成机器人各编码器的校准,若是,则结束执行校准方法;若否,更新机器人的状态信息,回到S2。
进一步的,所述机器人的状态信息包括编码器的零位校准状态,步骤S1还包括:根据机器人的状态信息,确定机器人需要进行零位校准的编码器,确定实现编码器零位校准所需运动的机器人关节。
进一步的,所述编码器包括至少一个索引,关节旋转时检测编码器的索引以实现零位校准,所述预期关节运动量不小于关节转动以检测到索引所需的最大运动量
进一步的,所述编码器包括N个索引,所述预期关节运动量为关节旋转角度大于或等于360/N度。
进一步的,所述预设的搜索算法包括以下至少其一:粒子群搜索、模拟退火搜索、深度优先搜索、分支定界搜索、广度优先搜索。
进一步的,所述TCP位姿变化量阈值用于限制机器人TCP位姿的最大运动量,所述TCP位姿变化量阈值为区间阈值或最大值阈值。
进一步的,步骤S3当机器人的TCP位姿变化量满足预设的TCP位姿变化量阈值时,将当前的权重矩阵确定为目标权重矩阵包括:当机器人的TCP位姿变化量满足预设的TCP位姿变化量阈值,且机器人的TCP位姿变化量最小时,将当前的权重矩阵确定为目标权重矩阵。
本发明还可采用如下技术方案:一种机器人的编码器校准装置,包括:状态获取单元,用于机器人上电后,获取机器人的状态信息,所述机器人的状态信息包括机器人的关节角度;参数初始化单元,用于设置权重矩阵的初始值,根据机器人的状态信息和预先确定的预期关节运动量,基于权重矩阵的初始值确定机器人的关节运动量和TCP位姿变化量的映射关系;搜索单元,用于根据预设的搜索算法搜索权重矩阵,通过调整权重矩阵以改变TCP位姿变化量,当机器人的TCP位姿变化量满足预设的TCP位姿变化量阈值时,将当前的权重矩阵确定为目标权重矩阵;运动控制单元,用于基于机器人的TCP位姿变化量,规划机器人每个插补周期的关节插补量,执行运动插补并在插补过程中检测编码器的校准状态,根据编码器的校准状态调整机器人的运动。
本发明还可采用如下技术方案:一种机器人,包括如前文所述的机器人的编码器的校准装置。
与现有技术相比,本发明具体实施方式的有益效果为:机器人基于TCP运动检测编码器的零位,编码器的校准可在运动过程中实现,无需专业的仪器和用户的手动标定;预先设置TCP位姿变化量阈值,通过搜索算法搜索目标权重矩阵,机器人的TCP位姿在合理范围内较小变化,机器人末端位移较小。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1是本发明一个实施例的机器人的结构示意图;
图2是本发明一个实施例的机器人的编码器校准方法的示意图;
图3是本发明一个实施例的机器人的编码器校准方法的流程图;
图4是本发明一个实施例的机器人的编码器校准装置的模块图。
具体实施方式
为使本发明的技术方案更加清楚明了,下面将结合附图来描述本发明的实施例。应当理解的是,对实施方式的具体说明仅用于示教本领域技术人员如何实施本发明,而不是用于穷举本发明的所有可行方式,更不是用于限制本发明的具体实施范围。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都应属于本发明保护的范围。
本发明提供一种机器人的编码器的校准方法,其主要针对如图1所示的机器人,机器人100包括多个关节110,关节110是机器人的动力源,通过关节110的转动实现机器人100的各种运动。机器人可以连接工具200,通过连接不同种类的工具可以实现不同的功能。其中,关节110包括伺服电机、减速器、编码器等部件,编码器可以用于检测电机的旋转位置以判断关节运动的角度,进而实现机器人的运动控制和规划。
在本发明的一个实施例中,参图2,机器人的编码器校准方法主要包括:
S1、机器人上电后,获取机器人的状态信息;
S2、设置权重矩阵的初始值,根据机器人的状态信息和预先确定的预期关节运动量,基于权重矩阵的初始值确定机器人的关节运动量和TCP位姿变化量的映射关系;
S3、根据预设的搜索算法搜索权重矩阵,通过调整权重矩阵以改变TCP位姿变化量,当机器人的TCP位姿变化量满足预设的TCP位姿变化量阈值时,将当前的权重矩阵确定为目标权重矩阵;
S4、基于机器人的TCP位姿变化量,规划机器人每个插补周期的关节插补量,执行运动插补并在插补过程中检测编码器的校准状态,根据编码器的校准状态调整机器人的运动。
具体的,机器人可预先设定TCP位姿变化量阈值和预期关节运动量,上述TCP位姿变化量阈值和预期关节运动量可以是用户通过用户交互设备设定,或者,也可以是机器人的出厂参数默认配置。其中,所述TCP位姿变化量阈值用于限制机器人TCP位姿的最大运动量,所述预设的TCP位姿变化量阈值为区间阈值,当机器人的TCP位姿变化量落入该区间阈值时,获得满足条件的目标权重矩阵;或者,所述预设的TCP位姿变化量为最大值阈值,当机器人的TCP位姿变化量小于或等于该最大值阈值时,获得满足条件的目标权重矩阵。其中,机器人的TCP位姿变化量包括TCP的位置变化量和TCP的姿态变化量,通过设置TCP位姿变化量的阈值,可以确定TCP位姿变化量的范围,例如,可以设置TCP的位置不变姿态发生变化,或者,也可以设置TCP的位置和姿态均发生变化,通过TCP位姿变化量阈值的设置,能够控制机器人在运动过程中的TCP位姿变化量始终处于TCP位姿变化量阈值的约束范围内。可选的,在一个具体的实施例中,设置TCP位姿变化量阈值包括机器人在笛卡尔坐标系的X、Y、Z轴方向的旋转角度最大值为10度,则机器人的TCP位置不发生变化,TCP位姿在X、Y、Z轴方向的旋转角度均小于或等于10度。
具体的,TCP是机器人领域的通用概念,即Tool center point,简写为TCP,初始状态的工具中心点(TCP)是工具坐标系的原点。当我们以手动或者编程的方式让机器人去接近空间中的某一点时,其本质是让工具中心点去接近该点。同一个机器人,当安装不同工具时,具有不同的工具中心点。机器人的工具中心点通常位于工具上,但在一些特别的场景下,工具中心点也可能位于工具之外的位置。工具安装于机器人的末端,TCP点位于机器人末端方向上。
参图3,图3是本申请一个实施例的编码器校准方法的流程图,可以用于辅助说明机器人的编码器校准方法的运行流程。
针对步骤S1,机器人关节包括伺服电机,机器人上电后,伺服电机反馈机器人的状态信息,可选的,机器人的状态信息包括关节角度、编码器校准状态等信息。可理解的,机器人上电后,伺服电机反馈的关节角度信息为关节的初始角度。
进一步的,获取机器人的状态信息后,机器人的状态信息包括编码器校准状态,根据机器人的状态信息可以获知机器人需要进行零位校准的编码器,确定实现编码器零位校准所需运动的机器人关节,以进行后续的运动规划。通过在校准方法之初确定需要运动的机器人关节,对无需进行编码器校准的关节,可以使得其不转动或尽量少转动,以保证机器人末端TCP位姿运动量较小。
针对步骤S2,引入权重矩阵,根据权重矩阵来调整机器人的TCP位姿变化量。具体的,机器人的状态信息包括机器人关节角度,根据机器人的关节角度可求得当前雅克比矩阵J,其中,根据关节角度确定雅克比矩阵的方法是本领域的通用技术,此处不再赘述。根据预先确定的预期关节运动量Δq,可得:
ΔX=JΔq+E,
其中,ΔX是机器人的tcp位姿变化量,E是误差向量。由普通最小二乘,使得残差平方和最小即
Rss(Δq)=(ΔX-JΔq)T(ΔX-JΔq)
为使得机器人的TCP位姿变化量ΔX满足TCP位姿变化量阈值ΔX*要求,引入权重矩阵的初始值W0,由加权最小二乘法
Rss(Δq)=(ΔX-JΔq)TW0(ΔX-JΔq)
求导得到
Δq=(JTW0J)-1JTW0ΔX.
自此,基于权重矩阵的初始值W0确定了关节运动量Δq和机器人的TCP位姿运动量ΔX的映射关系。
其中,编码器包括至少一个索引,机器人的关节旋转时能够检测编码器的索引以实现零位校准,所述预期关节运动量不小于关节转动以检测到索引所需的最大运动量。具体的,假设编码器包括N个索引,当N个索引均匀分布时,所述预期关节运动量为关节旋转角度大于或等于360/N度。也即,当机器人上电后,假设编码器包括1个索引,则关节需要最多旋转一圈可以找到索引;假设编码器包括N个索引,则机器人关节最多旋转1/N圈即可以
当机器人的TCP位姿变化量满足TCP位姿变化量阈值时找到最近的索引。
针对步骤S3,基于预设的搜索算法搜索权重矩阵,其中,所述搜索算法可采用常见的搜索算法,例如可采用粒子群搜索、模拟退火搜索、深度优先搜索、分支定界搜索,广度优先搜索等方法,以广度优先搜索法为例,基于权重矩阵的初值和跟随步长,不断的调整权重矩阵,TCP位姿变化量跟随权重矩阵的变化而发生变化,当机器人的TCP位姿变化量满足预设的TCP位姿变化量阈值时,将当前的权重矩阵确定为目标权重矩阵。其中,所述权重矩阵为对角矩阵,在一个优选的实施例中,机器人为六关节的协作机器人,则权重矩阵为其中(w1,…,w6)为6个权重因子。具体的,搜索权重矩阵时,以权重矩阵的初始值开始搜索,判断机器人的TCP位姿变化量是否满足TCP位姿变化量阈值,若满足要求,则停止搜索权重矩阵,确定目标权重矩阵;若不满足要求,则继续根据跟随步长搜索权重矩阵,持续计算机器人的TCP位姿变化量,,停止搜索权重矩阵,确定当前的权重矩阵为目标权重矩阵,并据此执行后续的运动规划。示例性的,预先设定权重矩阵初始值W0及跟随步长,通过搜索确定最终的目标权重矩阵W*,使得
Δq=(JTWJ)-1JTW*ΔX*
进一步的,搜索权重矩阵过程中,通过机器人的TCP位姿变化量满足预设的TCP位姿变化量阈值,可确定目标权重矩阵。优选的,搜索目标权重矩阵过程中,当机器人的TCP位姿变化量满足预设的TCP位姿变化量阈值,且机器人的TCP位姿变化量最小时,将当前的权重矩阵确定为目标权重矩阵,此时,目标权重矩阵对应机器人基于预期关节运动量和TCP位姿变化量阈值的约束下最小的TCP位姿变化量,即在进行编码器校准的过程中,保证机器人末端的位姿变化最小。其中,确定机器人的TCP位姿变化量最小,即在搜索权重矩阵过程中,对满足条件的权重矩阵下的TCP位姿变化量进行多次比较,以获得TCP位姿变化量最小对应的目标权重矩阵。
针对S4,具体的,确定目标权重矩阵后,机器人的TCP位姿变化量也得以确定。基于最小二乘法和机器人的TCP位姿变化量,规划机器人每个插补周期的机器人TCP位姿变化量Δx′,从而求得每个插补周期的关节插补量Δq′=(JTWJ)-1JTWΔx′,机器人执行运动规划,向伺服电机发送脉冲,运动规划过程中检测编码器零位,以及,机器人执行运动插补并在插补过程中检测编码器的校准状态,根据编码器的校准状态调整机器人的运动。
其中,机器人执行插补过程中检测编码器的校准状态,当检测到编码器的校准状态发生变化时,说明当前校准的编码器已经完成校准,结束执行运动插补。同时,机器人通常包括多个编码器,需要判断是否对所有的编码器完成了校准,也即,当前校准的编码器完成校准时,判断是否已经完成机器人各编码器的零位校准,若是,则结束执行校准方法,若都,更新机器人的状态信息,回到S2,针对仍需校准的编码器再次进行校准,多次迭代直至所有编码器完成校准。具体的,机器人基于TCP的位姿变化量规划每个插补周期的关节插补量以对编码器进行校准,当机器人运行完当前规划各插补周期后,机器人的关节运动量满足预期关节运动量,预期关节量是机器人在校准过程中可能存在的最大运动量,机器人实际运行时,一些情况下,在执行运行规划的部分插补周期后,即完成了对当前校准的编码器的校准,此时结束执行运动插补,机器人对当前编码器的校准过程中关节运动量实际上小于预期关节运动量。具体的,对机器人的各编码器进行校准时,可以并行对多个编码器进行校准,或者,可以单独对某个编码器进行校准,当对多个编码器并行进行校准时,仅当当前校准的多个编码器的零位校准状态均发生变化时,结束执行运动插补。
其中,机器人的运动规划包括机器人绕TCP点执行旋转运动,也即机器人执行TCP运动,机器人执行TCP运动过程中,可以规划各关节的运动。可理解的,当机器人进入校准状态时,伺服电机处于使能状态,以使得关节可发生转动。
以上本申请的优选实施例,其有益效果在于:通过机器人自行运动的过程中检测编码器的零位,编码器的校准过程可自动实现,无需专业的仪器和用户的较多干预;同时,基于预设的机器人的TCP位姿变化量阈值,通过搜索目标权重矩阵调整机器人的TCP位姿变化量,机器人的TCP位姿在合理范围内较小变化,避免机器人末端变化量较大以导致发生碰撞等可能的风险。
本发明还提供一种机器人的编码器校准装置,参图4,编码器校准装置包括:
状态获取单元10,用于机器人上电后,获取机器人的状态信息;
参数初始化单元20,用于设置权重矩阵的初始值,根据机器人的状态信息和预先确定的预期关节运动量,基于权重矩阵的初始值确定机器人的关节运动量和TCP位姿变化量的映射关系;
搜索单元30,用于根据预设的搜索算法搜索权重矩阵,通过调整权重矩阵以改变TCP位姿变化量,当机器人的TCP位姿变化量满足预设的TCP位姿变化量阈值时,将当前的权重矩阵确定为目标权重矩阵;
运动控制单元40,用于基于机器人的TCP位姿变化量,规划机器人每个插补周期的关节插补量,执行运动插补并在插补过程中检测编码器的校准状态,根据编码器的校准状态调整机器人的运动。
其中,所述运动控制单元40还用于检测编码器的校准状态,检测编码器的零位校准状态发生变化时,结束执行运动插补;以及判断是否已经完成机器人各编码器的校准,若是,则结束执行校准方法,若否,更新机器人的状态信息,再次执行编码器校准。
所述状态获取单元10还用于根据机器人的状态信息,确定机器人需要进行零位校准的编码器,确定实现编码器零位校准所需运动的机器人关节。
所述搜索单元30还用于,当机器人的TCP位姿变化量满足预设的TCP位姿变化量阈值,且机器人的TCP位姿变化量最小时,将当前的权重矩阵确定为目标权重矩阵。
上述各单元的具体功能可参考上文,本实施例中相关内容与前文保持一致,此处不再赘述。
本发明还提供一种机器人,包括多个机器人关节,还包括前文中的编码器校准装置。机器人的其他部分可以参照现有技术,本文不再展开。
最后还需要指出,由于文字表达的有限性,上述说明仅是示例性的,并非穷尽性的,本发明并不限于所披露的各实施方式,在不偏离上述示例的范围和精神的情况下,对于本领域的技术人员来说还可以作若干改进和修饰,这些改进和修饰也应视为本发明的保护范围。因此本发明的保护范围应以权利要求为准。
Claims (10)
1.一种机器人的编码器校准方法,其特征在于,所述方法包括:
S1、机器人上电后,获取机器人的状态信息;
S2、设置权重矩阵的初始值,根据机器人的状态信息和预先确定的预期关节运动量,基于权重矩阵的初始值确定机器人的关节运动量和TCP位姿变化量的映射关系;
针对步骤S2,机器人的状态信息包括机器人关节角度,根据机器人的关节角度可求得当前雅克比矩阵J,根据预先确定的预期关节运动量Δq,可得:ΔX=JΔq+E,其中,ΔX是机器人的tcp位姿变化量,E是误差向量;由普通最小二乘,使得残差平方和最小即Rss(Δq)=(ΔX-JΔq)T(ΔX-JΔq);为使得机器人的TCP位姿变化量ΔX满足TCP位姿变化量阈值ΔX*要求,引入权重矩阵的初始值W0,由加权最小二乘法Rss(Δq)=(ΔX-JΔq)TW0(ΔX-JΔq),求导得到Δq=(JTW0J)-1JTW0ΔX;自此,基于权重矩阵的初始值W0确定了关节运动量Δq和机器人的TCP位姿运动量ΔX的映射关系;
S3、根据预设的搜索算法搜索权重矩阵,通过调整权重矩阵以改变TCP位姿变化量,当机器人的TCP位姿变化量满足预设的TCP位姿变化量阈值时,将当前的权重矩阵确定为目标权重矩阵;
S4、基于机器人的TCP位姿变化量,规划机器人每个插补周期的关节插补量,执行运动插补并在插补过程中检测编码器的校准状态,根据编码器的校准状态调整机器人的运动;针对步骤S4,确定目标权重矩阵后,机器人的TCP位姿变化量也得以确定;基于最小二乘法和机器人的TCP位姿变化量,规划机器人每个插补周期的机器人TCP位姿变化量Δx′,从而求得每个插补周期的关节插补量Δq′=(JTWJ)-1JTWΔx′,机器人执行运动规划,向伺服电机发送脉冲,运动规划过程中检测编码器零位,以及,机器人执行运动插补并在插补过程中检测编码器的校准状态,根据编码器的校准状态调整机器人的运动。
2.根据权利要求1所述的机器人的编码器校准方法,其特征在于,所述执行运动插补并在插补过程中检测编码器的校准状态,根据编码器的校准状态调整机器人的运动包括:检测编码器的校准状态发生变化时,结束执行运动插补;
以及,判断是否已经完成机器人各编码器的校准,若是,则结束执行校准方法;若否,更新机器人的状态信息,回到S2。
3.根据权利要求1所述的机器人的编码器校准方法,其特征在于,所述机器人的状态信息包括编码器的零位校准状态,步骤S1还包括:
根据机器人的状态信息,确定机器人需要进行零位校准的编码器,确定实现编码器零位校准所需运动的机器人关节。
4.根据权利要求1所述的机器人的编码器校准方法,其特征在于,所述编码器包括至少一个索引,关节旋转时检测编码器的索引以实现零位校准,所述预期关节运动量不小于关节转动以检测到索引所需的最大运动量。
5.根据权利要求4所述的机器人的编码器校准方法,其特征在于,所述编码器包括N个索引,所述预期关节运动量为关节旋转角度大于或等于360/N度。
6.根据权利要求1所述的机器人的编码器校准方法,其特征在于,所述预设的搜索算法包括以下至少其一:粒子群搜索、模拟退火搜索、深度优先搜索、分支定界搜索、广度优先搜索。
7.根据权利要求1所述的机器人的编码器校准方法,其特征在于,所述TCP位姿变化量阈值用于限制机器人TCP位姿的最大运动量,所述TCP位姿变化量阈值为区间阈值或最大值阈值。
8.根据权利要求1所述的机器人的编码器校准方法,其特征在于,步骤S3当机器人的TCP位姿变化量满足预设的TCP位姿变化量阈值时,将当前的权重矩阵确定为目标权重矩阵包括:
当机器人的TCP位姿变化量满足预设的TCP位姿变化量阈值,且机器人的TCP位姿变化量最小时,将当前的权重矩阵确定为目标权重矩阵。
9.一种机器人的编码器校准装置,其特征在于,包括:
状态获取单元,用于机器人上电后,获取机器人的状态信息,所述机器人的状态信息包括机器人的关节角度;
参数初始化单元,用于设置权重矩阵的初始值,根据机器人的状态信息和预先确定的预期关节运动量,基于权重矩阵的初始值确定机器人的关节运动量和TCP位姿变化量的映射关系;
机器人的状态信息包括机器人关节角度,根据机器人的关节角度可求得当前雅克比矩阵J,根据预先确定的预期关节运动量Δq,可得:ΔX=JΔq+E,其中,ΔX是机器人的tcp位姿变化量,E是误差向量;由普通最小二乘,使得残差平方和最小即Rss(Δq)=(ΔX-JΔq)T(ΔX-JΔq);为使得机器人的TCP位姿变化量ΔX满足TCP位姿变化量阈值ΔX*要求,引入权重矩阵的初始值W0,由加权最小二乘法Rss(Δq)=(ΔX-JΔq)TW0(ΔX-JΔq),求导得到Δq=(JTW0J)-1JTW0ΔX;自此,基于权重矩阵的初始值W0确定了关节运动量Δq和机器人的TCP位姿运动量ΔX的映射关系;
搜索单元,用于根据预设的搜索算法搜索权重矩阵,通过调整权重矩阵以改变TCP位姿变化量,当机器人的TCP位姿变化量满足预设的TCP位姿变化量阈值时,将当前的权重矩阵确定为目标权重矩阵;
运动控制单元,用于基于机器人的TCP位姿变化量,规划机器人每个插补周期的关节插补量,执行运动插补并在插补过程中检测编码器的校准状态,根据编码器的校准状态调整机器人的运动;
确定目标权重矩阵后,机器人的TCP位姿变化量也得以确定;基于最小二乘法和机器人的TCP位姿变化量,规划机器人每个插补周期的机器人TCP位姿变化量Δx′,从而求得每个插补周期的关节插补量Δq′=(JTWJ)-1JTWΔx′,机器人执行运动规划,向伺服电机发送脉冲,运动规划过程中检测编码器零位,以及,机器人执行运动插补并在插补过程中检测编码器的校准状态,根据编码器的校准状态调整机器人的运动。
10.一种机器人,其特征在于,所述机器人包括如权利要求9所述的机器人的编码器的校准装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210293808.8A CN114734436B (zh) | 2022-03-24 | 2022-03-24 | 一种机器人的编码器校准方法、装置及机器人 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210293808.8A CN114734436B (zh) | 2022-03-24 | 2022-03-24 | 一种机器人的编码器校准方法、装置及机器人 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114734436A CN114734436A (zh) | 2022-07-12 |
CN114734436B true CN114734436B (zh) | 2023-12-22 |
Family
ID=82276688
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210293808.8A Active CN114734436B (zh) | 2022-03-24 | 2022-03-24 | 一种机器人的编码器校准方法、装置及机器人 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114734436B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117207249B (zh) * | 2023-11-09 | 2024-02-06 | 江苏苏亿盟智能科技有限公司 | 一种机器人的编码器校准方法及其系统 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5239855A (en) * | 1991-07-12 | 1993-08-31 | Hewlett-Packard Company | Positional calibration of robotic arm joints relative to the gravity vector |
CN103302663A (zh) * | 2012-03-06 | 2013-09-18 | 株式会社捷太格特 | 用于机器人的校准方法和校准系统 |
CN105723455A (zh) * | 2013-11-13 | 2016-06-29 | 弗劳恩霍夫应用研究促进协会 | 用于编码音频信号的编码器、音频发送系统和用于确定校正值的方法 |
CN110076776A (zh) * | 2019-04-30 | 2019-08-02 | 南京云图机器人科技有限公司 | 一种使用惯性器件提升机器人稳定性的方法 |
CN110260894A (zh) * | 2019-06-11 | 2019-09-20 | 上海电姆机器人有限公司 | 一种整体式机器人关节定位的绝对值编码器 |
CN111070237A (zh) * | 2019-12-27 | 2020-04-28 | 深圳市越疆科技有限公司 | 一体化关节及一体化关节多传感器控制系统和方法 |
CN113712672A (zh) * | 2021-11-04 | 2021-11-30 | 极限人工智能(北京)有限公司 | 一种原点位置校准方法、装置、电子设备及存储介质 |
CN113910232A (zh) * | 2021-10-27 | 2022-01-11 | 苏州艾利特机器人有限公司 | 一种自适应姿态跟踪方法、装置、存储介质及电子设备 |
CN114102580A (zh) * | 2021-10-25 | 2022-03-01 | 珠海格力电器股份有限公司 | 一种工业机器人零点校准方法、校准装置及电子设备 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9427872B1 (en) * | 2014-12-21 | 2016-08-30 | Google Inc. | Devices and methods for encoder calibration |
JP7296593B2 (ja) * | 2018-05-16 | 2023-06-23 | パナソニックIpマネジメント株式会社 | エンコーダの異常検出方法、作動制御装置、ロボット及びロボットシステム |
-
2022
- 2022-03-24 CN CN202210293808.8A patent/CN114734436B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5239855A (en) * | 1991-07-12 | 1993-08-31 | Hewlett-Packard Company | Positional calibration of robotic arm joints relative to the gravity vector |
CN103302663A (zh) * | 2012-03-06 | 2013-09-18 | 株式会社捷太格特 | 用于机器人的校准方法和校准系统 |
CN105723455A (zh) * | 2013-11-13 | 2016-06-29 | 弗劳恩霍夫应用研究促进协会 | 用于编码音频信号的编码器、音频发送系统和用于确定校正值的方法 |
CN110076776A (zh) * | 2019-04-30 | 2019-08-02 | 南京云图机器人科技有限公司 | 一种使用惯性器件提升机器人稳定性的方法 |
CN110260894A (zh) * | 2019-06-11 | 2019-09-20 | 上海电姆机器人有限公司 | 一种整体式机器人关节定位的绝对值编码器 |
CN111070237A (zh) * | 2019-12-27 | 2020-04-28 | 深圳市越疆科技有限公司 | 一体化关节及一体化关节多传感器控制系统和方法 |
CN114102580A (zh) * | 2021-10-25 | 2022-03-01 | 珠海格力电器股份有限公司 | 一种工业机器人零点校准方法、校准装置及电子设备 |
CN113910232A (zh) * | 2021-10-27 | 2022-01-11 | 苏州艾利特机器人有限公司 | 一种自适应姿态跟踪方法、装置、存储介质及电子设备 |
CN113712672A (zh) * | 2021-11-04 | 2021-11-30 | 极限人工智能(北京)有限公司 | 一种原点位置校准方法、装置、电子设备及存储介质 |
Non-Patent Citations (1)
Title |
---|
6R工业机器人运动学算法的改进;吴挺;吴国魁;吴海彬;;机电工程(第07期) * |
Also Published As
Publication number | Publication date |
---|---|
CN114734436A (zh) | 2022-07-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108748159B (zh) | 一种机械臂工具坐标系自标定方法 | |
CN107995885B (zh) | 一种坐标系标定方法 、系统及装置 | |
CN110640747B (zh) | 机器人的手眼标定方法、系统、电子设备和存储介质 | |
US10668623B2 (en) | Method and system for robotic adaptive production | |
US9333654B2 (en) | Robot parts assembly on a workpiece moving on an assembly line | |
US6941192B2 (en) | Robot machining tool position and orientation calibration | |
CN109176505B (zh) | 一种基于球杆仪的六轴关节工业机器人空间误差标定方法 | |
US7756608B2 (en) | System for calibration of an industrial robot and a method thereof | |
US9452533B2 (en) | Robot modeling and positioning | |
CN111546334B (zh) | 一种减小轮廓误差的工业机器人在线位姿误差补偿方法 | |
CN108789404A (zh) | 一种基于视觉的串联机器人运动学参数标定方法 | |
CN112109084A (zh) | 基于机器人关节角度补偿的末端位置补偿方法及其应用 | |
CN110370271B (zh) | 工业串联机器人的关节传动比误差校准方法 | |
CN113211445B (zh) | 一种机器人参数标定方法、装置、设备及存储介质 | |
CN110883774A (zh) | 机器人关节角零位标定系统、方法及存储介质 | |
CN114734436B (zh) | 一种机器人的编码器校准方法、装置及机器人 | |
CN114654466B (zh) | 自动标定方法、装置、系统、电子设备及存储介质 | |
US11289303B2 (en) | Calibrating method and calibrating system | |
CN114734435B (zh) | 一种基于超球面的编码器校准方法、装置及系统 | |
JP2011036956A (ja) | ロボットの精度調整方法およびロボット | |
CN113240753A (zh) | 机器人与双轴变位机构基坐标系标定球面拟合法 | |
CN112847441B (zh) | 基于梯度下降法的六轴机器人坐标偏移检测方法和装置 | |
CN115674171A (zh) | 机器人位姿测量与补偿方法及系统、控制装置、存储介质 | |
JP5667437B2 (ja) | ロボットの外部軸の計測方法、ロボットの教示データ作成方法、およびロボットのコントローラ | |
CN114310869A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |