一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

机器人标定方法及装置与流程

2022-02-24 10:52:26 来源:中国专利 TAG:


1.本技术涉及机器人控制技术领域,具体而言,涉及一种机器人标定方法及装置。


背景技术:

2.随着现代化产业的快速发展,工业、制造业的自动化程度得到了大大提升,各个领域都朝着集成化、精密化、智能化方向推进。对于工业环境下,大型工件搬运或者加工给工人带来巨大不变,因此人们急需机器人自主抓取工件技术,随着加工质量的要求不断提高、机器人定位精度以及完成复杂任务的准确度成为了企业关注的重点,随之而来的,对机器人的标定提出了更高要求。
3.然而,传统的标定方法,标定的精度较低、标定的鲁棒性差已经不能满足需要,在标定的过程当中,对于操作人员要求较高,操作流程复杂,容易因为操作不当导致标定出错,大大降低了标定的效率。


技术实现要素:

4.本技术的实施例提供了一种机器人标定方法及装置,进而至少在一定程度上能够提高标定效率和标定精度。
5.本技术的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本技术的实践而习得。
6.根据本技术实施例的一个方面,提供了一种机器人标定方法,包括:获取目标标定轨迹,所述目标标定轨迹中包括多个标定点;根据所述目标标定轨迹控制机器人运动至各个标定点,并在所述机器人运动至所述各个标定点时,确定所述机器人在机器人基坐标系中的第一坐标值,得到多个第一坐标值;控制相机在所述机器人运动至所述各个标定点时进行图像采集,并根据采集到的图像确定所述机器人在相机坐标系中的第二坐标值,得到多个第二坐标值;根据所述多个第一坐标值和所述多个第二坐标值,确定标定结果。
7.根据本技术实施例的一个方面,提供了一种机器人标定装置,包括:获取模块,配置为获取目标标定轨迹,所述目标标定轨迹中包括多个标定点;第一控制模块,配置为根据所述目标标定轨迹控制机器人运动至各个标定点,并在所述机器人运动至所述各个标定点时,确定所述机器人在机器人基坐标系中的第一坐标值,得到多个第一坐标值;第二控制模块,配置为控制相机在所述机器人运动至所述各个标定点时进行图像采集,并根据采集到的图像确定所述机器人在相机坐标系中的第二坐标值,得到多个第二坐标值;确定模块,配置为根据所述多个第一坐标值和所述多个第二坐标值,确定标定结果。
8.在本技术的一些实施例中,基于前述方案,所述装置还包括:第三控制模块,配置为控制所述机器人进行实物抓取;计算模块,配置为根据所述标定结果,确定所述机器人进行实物抓取的抓取位置,并计算所述抓取位置和所述实物的实际位置之间的误差值。
9.在本技术的一些实施例中,基于前述方案,所述装置还包括:生成模块,配置为若所述误差值大于第一预设阈值,则生成第一提示消息,所述第一提示消息用于提示用户重
新进行实物抓取;发送模块,配置为若所述误差值小于所述第一预设阈值,则向用户发送第二提示消息,所述第二提示消息用于提示所述用户做出是否重新进行实物抓取的选择。
10.在本技术的一些实施例中,基于前述方案,所述第二控制模块包括:控制拍摄单元,配置为控制所述相机对周围环境进行拍摄,得到环境检测结果;生成通知单元,配置为根据所述环境检测结果,生成告警通知,以使用户根据所述告警通知进行相应调整。
11.在本技术的一些实施例中,基于前述方案,所述环境检测结果包括环境光线强度,所述生成通知单元配置为:在所述环境光线强度大于第二预设阈值时,生成告警通知,以使所述用户对所述环境光线强度进行调整。
12.在本技术的一些实施例中,基于前述方案,所述装置还包括:报告生成模块,配置为生成信息查看报告,所述信息查看报告至少包括标定过程中的环境情况、标定过程中出现的问题及其类型、标定过程的用时、标定结果、标定结果的误差以及误差原因分析中的一项或多项内容。
13.在本技术的一些实施例中,基于前述方案,所述获取模块包括:接收单元,配置为接收用户的注册请求,所述注册请求中包含有所述机器人的参数信息以及所述相机的参数信息;第一确定单元,配置为根据所述机器人的参数信息以及所述相机的参数信息,从标定信息数据库中确定匹配的标定轨迹;第二确定单元,配置为将所述匹配的标定轨迹作为所述目标标定轨迹。
14.在本技术的一些实施例中,基于前述方案,所述第一确定单元配置为:根据所述机器人的参数信息以及所述相机的参数信息,从所述标定信息数据库中获取目标标定信息;根据所述目标标定信息中包含的轨迹数据,确定匹配的标定轨迹。
15.在本技术的一些实施例中,基于前述方案,所述第一单元配置为:获取用户历史输入的机器人参数信息和相机参数信息;对所述机器人参数信息和所述相机参数信息进行特征提取,分别得到机器人参数特征向量和相机参数特征向量;将所述机器人参数特征向量和所述相机参数特征向量输入预先训练好的神经网络模型,得到所述神经网络模型输出的标定信息,其中所述神经网络模型是利用训练样本进行训练得到的,所述训练样本包括机器人参数信息、相机参数信息以及标定信息;将所述标定信息进行存储,形成所述标定信息数据库。
16.在本技术的一些实施例所提供的技术方案中,通过获取目标标定轨迹,目标标定轨迹中包括多个标定点,根据目标标定轨迹控制机器人运动至各个标定点,并在机器人运动至各个标定点时,确定机器人在机器人基坐标系中的第一坐标值,得到多个第一坐标值,控制相机在机器人运动至各个标定点时进行图像采集,并根据采集到的图像确定机器人在相机坐标系中的第二坐标值,得到多个第二坐标值,根据多个第一坐标值和多个第二坐标值,确定标定结果。本技术实施例的技术方案使得机器人按照目标标定轨迹中包含的多个标定点进行运动,相机自动进行拍照用来实现标定,不需要增加额外的硬件设备,降低了标定计算的复杂程度,提高了整个标定过程中的效率与精度。
17.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本技术。
附图说明
18.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本技术的实施例,并与说明书一起用于解释本技术的原理。显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
19.图1是本技术实施例提供的一种实施环境的示意图;
20.图2示出了根据本技术的一个实施例的机器人标定方法的流程图;
21.图3示出了根据本技术的一个实施例的机器人标定方法的流程图;
22.图4示出了根据本技术的一个实施例的机器人标定方法的流程图;
23.图5示出了根据本技术的一个实施例的机器人标定方法的流程图;
24.图6示出了根据本技术的一个实施例的机器人标定方法的流程图;
25.图7示出了根据本技术的一个实施例的机器人标定方法的流程图;
26.图8示出了根据本技术的一个实施例的机器人标定方法的交互流程图;
27.图9示出了根据本技术的一个实施例的机器人标定装置的框图;
28.图10示出了适于用来实现本技术实施例的电子设备的计算机系统的结构示意图。
具体实施方式
29.现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本技术将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。
30.此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本技术的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本技术的技术方案而没有特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装置、实现或者操作以避免模糊本技术的各方面。
31.需要说明的是,本技术的说明书和权利要求书及上述附图中使用的术语仅用于描述实施例,并不旨在限制本技术的范围。应该理解的是,术语“包括”、“包含”、“具有”等在本文中使用时指定存在所陈述的特点、整体、步骤、操作、元件、组件和/或其群组,但并不排除存在或添加其他特点、整体、步骤、操作、元件、组件和/或其群组中的一个或多个。
32.将进一步理解的是,尽管术语“第一”、“第二”、“第三”等可以在本文中用于描述各种元件,但是这些元件不应受这些术语的限制。这些术语仅用于区分一个元件和另一个元件。例如,在不脱离本发明的范围的情况下,第一元件可以被称为第二元件。类似地,第二元件可以被称为第一元件。如本文所使用的,术语“和/或”包含关联的列出的项目中的一个或多个的任何和所有组合。
33.附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
34.附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合
并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
35.应当理解,在本技术中,“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上。
36.对本技术实施例进行进一步详细说明之前,对本技术实施例中涉及的名词和术语进行说明,本技术实施例中涉及的名词和术语适用于如下的解释。
37.机器人标定:是使用参数辨识方法去处理通过先进的测量手段得到的机器人的相关数据来识别出机器人模型的准确参数,从而提高机器人绝对定位精度的过程。
38.启发式:自我发现的能力或运用某种方式或方法去判定事物的知识和技能。
39.启发式分析:由专家完成的一种分析,专家会将数字产品的设计与一系列预定义的设计原则和准则(也称为启发法)进行比较,从而为他们做出决定提供技术性指导。
40.启发式人机交互:从用户角度出发,为用户服务,提高人机之间的智能交互,启发式人机交互对于工业软件来说意义重大,不仅带来的是智能的人机交互,带来的还有巨大的经济效益。
41.图1是本发明实施例提供的一种实施环境的示意图。
42.如图1所示,该实施环境可以包括至少一个机器人101、相机102以及工控机103。工控机103可以是服务器、个人计算机、笔记本电脑或云计算中心等,工控机103带有启发式系统,该系统能够在标定操作过程加入智能帮助、智能辅助、智能报警和报告总结实现系统智能。
43.相机102安装位置可以与机器人101基座保持相对固定,即将相机102安装在机器人101基坐标系中某个固定的位置。该相机102可以从机器人101上方拍摄整个机器人工作平面,即相机102的视野可以覆盖机器人101的整个工作平面。
44.该实施环境可以包括至少一个标定物104,标定物104可以是标定模板、障碍物、磁钉等,标定物104可以安装在机器人101的操作臂末端,令标定物104在相机102的可视范围内,且标定物104可以由操作臂末端带动绕操作臂末端中心旋转轴进行水平旋转。为了避免标定时相机102采集到的标定图像存在畸变而影响标定效果,标定物104安装时可以令标定物104平面与相机102图像平面基本平行,示意性地,标定物104平面与相机102的图像平面的夹角小于5
°
。标定物104设置有标定图像,标定图像可以根据实际需要选择,例如,采用具有黑色边缘的正方形黑白棋盘格图像。
45.以下对本技术实施例的技术方案的实现细节进行详细阐述:
46.工业机器人外部标定包括工具坐标系、工件坐标系的标定,在机器人末端加装末端执行器之后,那么末端执行器的坐标相对于基座标系必然发生相应的改变,所以必须对其进行重新标定。机器视觉技术的发展对于机器人标定带来了全新的技术手段。机器视觉技术是一个综合了很多领域的技术,其中包含图像处理技术、光学技术、模式识别技术等。机器视觉技术不断发展,以其灵活性、非接触、效率高、精度高等优点是的工业检测、物体识别等领域备受青睐。所以机器人视觉技术对于标定来说是非常好的技术选择,利用视觉来进行标定可以大大提高标定的效率和标定的精度。在视觉标定过程中操作人员与标定软件之间的人机交互相对较少,这会带来标定出错率较高和效率低下的问题。随着当前人工智能技术、大数据技术、数据挖掘技术等的发展以及专家系统的广泛运用,人们对于工业软件的启发式人机交互的需求日益增加。
47.目前市场上有部分企业依然使用传统的标定方法,主要是基于几何结构参数已知的标定物进行成像,建立标定物体在世界坐标系中的坐标与在相机坐标系中的坐标之间的关系,求出相机的内外参数。但是这种方法必须先知道标定物体的相关参数才能进一步进行操作,在现实标定环境中难以精确获得标定块的参数。
48.此外,还有使用主动视觉标定方法的,该方法基于已知相机运动信息,即相机按照内部预先设定好的路径运动,相机配合采集图像信息。这种方法降低了计算的复杂程度,标定的鲁棒性较高,但是需要增加相机运动控制平台。此外,对于标定软件的设计这一方面,标定软件的交互性比较差,智能化程度较低,操作流程较为复杂。在标定过程中,会由于操作失误大大降低标定成功率和标定效率。并且,标定过程中软件不能给予用户提示和帮助,不利于用户对当前标定状态进行判断。
49.对此,本技术实施例中提供了一种机器人标定方法,首先获取目标标定轨迹,目标标定轨迹中包括多个标定点,然后根据目标标定轨迹控制机器人运动至各个标定点,并确定各个标定点在三维坐标系中的三维坐标值,得到多个三维坐标值,再次在机器人运动至各个标定点时,控制相机进行采图,并确定各个标定点在相机坐标系中的像素坐标值,得到多个三维坐标值,进而根据多个三维坐标值和多个像素坐标值,确定标定结果。本技术实施例中的技术方案通过相机对机器人根据目标标定轨迹的运动进行采图来实现标定,操作更加简便,不需要增加额外的硬件设备,降低计算标定过程内外参数和畸变参数计算的复杂程度,提高了计算效率和计算精度。
50.图2示出了根据本技术的一个实施例的机器人标定方法的流程图,该机器人标定方法可以由工控机来执行,该工控机可以是图1中所示的工控机103。参照图2所示,所述方法包括:
51.步骤s210、获取目标标定轨迹,所述目标标定轨迹中包括多个标定点;
52.步骤s220、根据所述目标标定轨迹控制机器人运动至各个标定点,并在所述机器人运动至所述各个标定点时,确定所述机器人在机器人基坐标系中的第一坐标值,得到多个第一坐标值;
53.步骤s230、控制相机在所述机器人运动至所述各个标定点时进行图像采集,并根据采集到的图像确定所述机器人在相机坐标系中的第二坐标值,得到多个第二坐标值;
54.步骤s240、根据所述多个第一坐标值和所述多个第二坐标值,确定标定结果。
55.下面对这些步骤进行详细描述。
56.在步骤s210中,获取目标标定轨迹,所述目标标定轨迹中包括多个标定点。
57.具体的,目标标定轨迹是机器人的运动路径,该运动路径的起始点可以是机器人当前所处的位置,该运动路径中包括多个标定点,机器人可以从当前所处的位置运动至各个标定点。
58.其中,目标标定轨迹可以由机器人自主进行标定轨迹规划,也可以由工控机为机器人进行标定轨迹规划,得到目标标定轨迹,再将目标标定轨迹发送给移动机器人。
59.在一个实施例中,多个标定点的数量可以是三点,也可以是九点,本技术实施例在此不进行具体限定。应当理解的是,为了避免标定过程中出现数据过拟合的现象,标定点的分布是相对比较分散的,对于机器人工作平面有比较好的覆盖。
60.在本技术的一个实施例中,由工控机为机器人进行标定轨迹规划可以是由工控机
根据标定信息数据库确定匹配的标定轨迹,如图5所示,步骤s210具体包括步骤s510-步骤s530,现详细说明如下:
61.步骤s510、接收用户的注册请求,所述注册请求中包含有所述机器人的参数信息以及所述相机的参数信息。
62.具体的,用户在开始执行标定任务时,可以先提交注册请求,提交注册请求的方式可以是用户在工控机的注册页面输入用户信息发起注册请求,用户的注册请求中可以包含有机器人的参数信息和相机的参数信息。
63.步骤s520、根据所述机器人的参数信息以及所述相机的参数信息,从标定信息数据库中确定匹配的标定轨迹。
64.在接收到用户的注册请求后,可以根据注册请求中包含的机器人的参数信息以及相机的参数信息,从标定信息数据库中确定匹配的标定轨迹。
65.在本技术的一个实施例中,如图6所示,步骤s520具体包括步骤s610-步骤s620,现详细说明如下:
66.步骤s610、根据所述机器人的参数信息以及所述相机的参数信息,从所述标定信息数据库中获取目标标定信息。
67.由于标定信息数据库中包含有标定过程涉及到的参数信息,因此,在获得机器人的参数信息以及相机的参数信息后,可以从标定信息数据库中获取目标标定信息,目标标定信息是与参数信息相对应的。
68.步骤s620、根据所述目标标定信息中包含的轨迹数据,确定匹配的标定轨迹。
69.目标标定信息中包含有轨迹数据,因此,可以根据目标标定信息中包含的轨迹数据确定出匹配的标定轨迹。
70.在本技术的一个实施例中,标定信息数据库是通过神经网络模型训练得到的标定信息所形成的数据库,参见图7,具体包括步骤s710-步骤s740,现详细说明如下:
71.步骤s710、获取用户历史输入的机器人参数信息和相机参数信息。
72.为了形成标定信息数据库,可以获取用户历史输入的机器人参数信息和相机参数信息,从而得到输入神经网络模型的数据集。
73.步骤s720、对所述机器人参数信息和所述相机参数信息进行特征提取,分别得到机器人参数特征向量和相机参数特征向量。
74.在通过步骤s710得到数据集后,可以对数据集中的机器人参数信息和相机参数信息进行特征提取,分别得到机器人参数特征向量和相机参数特征向量。
75.步骤s730、将所述机器人参数特征向量和所述相机参数特征向量输入预先训练好的神经网络模型,得到所述神经网络模型输出的标定信息,其中所述神经网络模型是利用训练样本进行训练得到的,所述训练样本包括机器人参数信息、相机参数信息以及标定信息。
76.具体的,神经网络模型是利用训练样本进行训练得到的,训练样本可以至少包括机器人参数信息、相机参数信息以及标定信息,通过神经网络模型可以得到标定信息,因此,在将机器人参数特征向量和相机参数特征向量输入神经网络模型后,可以得到神经网络模型输出的标定信息。将该标定信息进行存储,形成标定信息数据库。
77.步骤s740、将所述标定信息进行存储,形成所述标定信息数据库。
78.在得到标定信息后,可以将标定信息进行存储,形成标定信息数据库,标定信息数据库可以直接用于进行标定轨迹的匹配,当然,也可以提供标定过程中所需要的信息,或者对其他信息进行修正。
79.继续参见图5,在步骤s530中,将所述匹配的标定轨迹作为所述目标标定轨迹。
80.在通过步骤s520得到匹配的标定轨迹后,则可以直接将匹配的标定轨迹作为目标标定轨迹。
81.继续参见图2,在步骤s220中,根据所述目标标定轨迹控制机器人运动至各个标定点,并在所述机器人运动至所述各个标定点时,确定所述机器人在机器人基坐标系中的第一坐标值,得到多个第一坐标值。
82.具体的,工控机获取目标标定轨迹后,可以向机器人发送目标标定轨迹,控制机器人运动至各个标定点,可选地,目标标定轨迹可以携带在标定任务中,工控机可以向标定任务写入目标标定轨迹,机器人可以接收标定任务,解析该标定任务,得到标定任务携带的目标标定轨迹,从而根据目标标定轨迹运动至各个标定点。
83.在机器人运动至各个标定点时,工控机确定机器人在机器人基坐标系中的第一坐标值,也即是机器人操作臂末端在机器人基坐标系中的第一坐标值,得到多个第一坐标值。
84.在步骤s230中,控制相机在所述机器人运动至所述各个标定点时进行图像采集,并根据采集到的图像确定所述机器人在相机坐标系中的第二坐标值,得到多个第二坐标值。
85.具体的,在机器人运动至各个标定点时,控制相机进行采图,并根据采集到的图像确定机器人在相机坐标系中的第二坐标值,得到多个第二坐标值。
86.在本技术的一个实施例中,为了描述方便,将多个标定点分别记为a1、a2

ai,则对于每个标定点ai,控制相机进行图像采集的过程可以是:控制机器的人操作臂末端移动至标定点ai,由操作臂末端带动标定物在水平面上绕操作臂末端的中心轴进行旋转,由相机采集标定物在3个不同位置的图像,根据采集到的3幅图像可以确定机器人在相机坐标系中的第二坐标值。
87.在本技术的一个实施例中,根据采集到的3幅图像可以确定机器人在相机坐标系中的第二坐标值的方式可以是:分别提取m个标志点在3幅图像中的坐标m=1,2,

,m。由于每个标志点在3幅图像中的坐标是由同一个点绕工业机器人操作臂末端的中心轴旋转得到,那么它们就在同一个圆上,而此圆的圆心就是操作臂末端在相机图像坐标系中的坐标。那么获取第二坐标值的具体方法为:对于每个标定数据采集点ai的3幅图像分别根据第m个标志点在3幅图像中的坐标计算得到其圆心坐标o i(m),然后将m个标志点所得到的圆心坐标o i(m)进行平均,所得到的平均坐标值即为在标定点ai时机器人的操作臂末端在相机坐标系中的第二坐标值。
88.在步骤s240中,根据所述多个第一坐标值和所述多个第二坐标值,确定标定结果。
89.根据上述过程,可以得到各个标定点下机器人在机器人基坐标系中的第一坐标值以及在相机坐标系中的第二坐标值,因此,便可以联立方程组,计算得到机器人基坐标系和相机坐标系之间的转换矩阵,从而完成标定。
90.现有的转换矩阵求解方法有很多,故本技术实施例在此不再赘述。
91.基于以上实施例的技术方案,机器人按照目标标定轨迹中包含的多个标定点进行
运动,相机自动进行拍照用来实现标定,不需要增加额外的硬件设备,降低了标定计算的复杂程度,提高了整个标定过程中的效率与精度。
92.在本技术的一个实施例中,在完成标定后,可以进一步验证标定结果是否可靠,如图3所示,在该实施例中,可以具体包括步骤s310-步骤s320,现详细说明如下:
93.步骤s310、控制所述机器人进行实物抓取。
94.具体的,在完成标定后,也即是得到机器人基坐标系和相机坐标系之间的转换矩阵关系后,还需要验证该转换矩阵关系是否正确,对此,可以通过控制机器人进行实物抓取以实现验证。
95.步骤s320、根据所述标定结果,确定所述机器人进行实物抓取的抓取位置,并计算所述抓取位置和所述实物的实际位置之间的误差值。
96.可以理解的是,在机器人进行实物抓取时,可以根据标定结果计算得到机器人进行实物抓取的抓取位置,然后计算出抓取位置和实物的实际位置之间的误差值,从而验证标定结果是否可靠。
97.在本技术的一个实施例中,仅仅进行实物抓取是完全不够的,还没有完成一个闭环的运行,还必须将误差值反馈给用户,如果误差值大于第一预设阈值,则可以生成第一提示消息,第一提示消息用于提示用户重新进行实物抓取。
98.具体的,第一提示消息可以是以小窗口的形式显示在用户界面的任意位置,也可以是以文字、图片以及语音的形式在用户界面的一角显示。
99.第一提示消息还可以有不同的特性,可以是显示预定时间后自动消失,也可以是在用户未对第一提示消息进行任何操作时,则一直显示第一提示消息。
100.反之,如果误差值小于第一预设阈值,则可以向用户发送第二提示消息,第二提示消息用于提示用户做出是否重新进行实物抓取的选择,此时,用户可以选择重新进行实物抓取,也可以选择不进行实物抓取。
101.示意性地,第二提示消息可以显示在用户界面的任何位置,可以是文字、图片或者语音等各种形式,例如,第二提示消息的内容为“是否重新进行实物抓取”,同时包括“是”和“否”两个选择项,在用户选择任何一个选项后,第二提示消息则可以自动消失。
102.以上实施例的技术方案,通过控制机器人进行实物抓取来验证标定结果是否可靠,在误差值不满足条件时,通过提示用户进行重新抓取或者提示用户做出是否重新抓取的选择,使得能够及时发现标定过程中出现的错误,提高了标定结果的准确性。
103.在本技术的一个实施例中,在根据目标标定轨迹控制机器人运动至各个标定点之前,可以利用相机对周围环境进行检测,在该实施例中,具体包括步骤s410-步骤s420,现详细说明如下:
104.步骤s410、控制所述相机对周围环境进行拍摄,得到环境检测结果。
105.具体的,对于外界环境,可以利用相机对周围环境进行检测,周围环境可以包括周围场景以及周围物品等,通过检测可以得到环境检测结果。
106.步骤s420、根据所述环境检测结果,生成告警通知,以使用户根据所述告警通知进行相应调整。
107.在得到环境检测结果之后,可以根据环境检测结果生成告警通知,从而使得用户可以根据告警通知进行相应调整。例如,可以对环境检测结果为洁净工厂或者噪声、震动较
大的场所分别采用不同的算法进行标定,从而保证标定精度要求。
108.在一个实施例中,环境检测结果可以包括环境光线强度,在环境光线强度大于第二预设阈值时,可以生成告警通知,建议用户对环境光线强度进行调整。其中,告警通知的形式可以是弹窗文字显示,也可以是语音播放,本技术实施例对告警通知的形式不做具体限定。
109.在本技术的一个实施例中,对于整个标定过程的结束来说,最好的效果就是用户知道本次标定的效果,以及操作过程当中的一些相关信息。因此,可以通过生成信息查看报告供用户查看,信息查看报告至少包括标定过程中的环境情况、标定过程中出现的问题及其类型、标定过程的用时、标定结果、标定结果的误差以及误差原因分析中的一项或多项内容。
110.在该实施例中,通过生成信息查看报告可以极大地帮助用户了解整个标定过程的情况,及时向用户反馈信息,保证了用户第一时间获得相关信息,从而保障了标定过程的顺利与快速地进行。
111.图8示出了根据本技术的一个实施例的机器人标定方法的交互流程图。
112.如图8所示,整个标定过程的启发式交互流程可以包括步骤s810-步骤s840,现详细说明如下:
113.步骤s810、在硬件与启发式系统连接成功后,获取目标标定轨迹。
114.机器人标定方法是基于启发式系统的工作机制,因此,在获取目标标定轨迹之前,需要将硬件(机器人和相机)连接至启发式系统。
115.启发式系统主要包括信息模块、神经网络模块和功能模块,其中,信息模块包括两部分,其中一部分用于通过用户界面接收用户输入的参数信息,并对获取到的参数信息进行挖掘,挖掘得到的参数特征向量在输入神经网络模块中的神经网络模型后,可以得到神经网络模型输出的标定信息,而信息模块的另一部分则可以用于存储神经网络模块输出的标定信息,形成标定信息数据库,从而可以通过标定信息数据库对标定过程进行智能推荐,例如,可以推荐目标标定轨迹,使得机器人按照目标标定轨迹中包含的标定点进行运动。
116.步骤s820、控制机器人运动至各个标定点,并控制相机进行采图。
117.需要说明的是,在控制机器人运动前,启发式系统中的功能模块可以对外界环境进行智能告警,具体的,启发式系统利用相机对周围环境进行检测,并可以根据环境检测结果生成告警通知,以使用户根据告警通知进行相应调整。系统会将相应的参数嵌入自身的算法当中,如果有必要将对洁净工厂和噪声、震动较大的场所将采用不同的算法来进行标定,从而保证标定的精度要求。如果光线强度过高,超过系统或者相机内置的阈值,系统将会产生告警通知,建议用户调整环境光线,其他影响因素也可以采用相似的机制生成告警通知。
118.如果在接收到告警通知后用户做了相应的调整,则可以开始控制机器人运动至各个标定点,并控制相机进行采图。
119.步骤s830、获取坐标值。
120.在机器人运动至各个标定点时,可以获取机器人在机器人基坐标系中的第一坐标值,得到多个第一坐标值,并可以根据相机在各个标定点采集到的图像,获取机器人在相机坐标系中的第二坐标值,得到多个第二坐标值。
121.步骤s840、计算坐标系转换矩阵,完成标定。
122.在得到各个标定点下机器人在机器人基坐标系中的第一坐标值以及在相机坐标系中的第二坐标值后,因此便可以联立方程组,计算得到机器人基坐标系和相机坐标系之间的转换矩阵,从而完成标定。
123.进一步,还需要说明的是,在完成标定过程后,还可以控制机器人进行实物抓取,以验证标定结果是否可靠,如果验证得到的误差值不满足条件,启发式系统可以向用户进行提示,提示用户重新进行抓取。
124.此外,在整个标定过程结束后,启发式系统还可以生成信息查看报告,以供用户查看与分析。
125.通过以上实施例的技术方案,启发式的设计交互一直贯穿整个系统的内部和外部,能够对用户进行提示和帮助,如果出现错误能够进行提示并且给予解决办法,极大帮助用户进行整个标定过程,大大提高了标定效率并且保证了标定的精度。
126.以下介绍本技术的装置实施例,可以用于执行本技术上述实施例中的机器人标定方法。对于本技术装置实施例中未披露的细节,请参照本技术上述的机器人标定方法的实施例。
127.图9示出了根据本技术的一个实施例的机器人标定装置的框图,参照图9所示,根据本技术的一个实施例的机器人标定装置900,包括:获取模块902、第一控制模块904、第二控制模块906以及确定模块908。
128.其中,获取模块902,配置为获取目标标定轨迹,所述目标标定轨迹中包括多个标定点;第一控制模块904,配置为根据所述目标标定轨迹控制机器人运动至各个标定点,并在所述机器人运动至所述各个标定点时,确定所述机器人在机器人基坐标系中的第一坐标值,得到多个第一坐标值;第二控制模块906,配置为控制相机在所述机器人运动至所述各个标定点时进行图像采集,并根据采集到的图像确定所述机器人在相机坐标系中的第二坐标值,得到多个第二坐标值;确定模块908,配置为根据所述多个第一坐标值和所述多个第二坐标值,确定标定结果。
129.在本技术的一些实施例中,所述装置还包括:第三控制模块,配置为控制所述机器人进行实物抓取;计算模块,配置为根据所述标定结果,确定所述机器人进行实物抓取的抓取位置,并计算所述抓取位置和所述实物的实际位置之间的误差值。
130.在本技术的一些实施例中,所述装置还包括:生成模块,配置为若所述误差值大于第一预设阈值,则生成第一提示消息,所述第一提示消息用于提示用户重新进行实物抓取;发送模块,配置为若所述误差值小于所述第一预设阈值,则向用户发送第二提示消息,所述第二提示消息用于提示所述用户做出是否重新进行实物抓取的选择。
131.在本技术的一些实施例中,所述第二控制模块906包括:控制拍摄单元,配置为控制所述相机对周围环境进行拍摄,得到环境检测结果;生成通知单元,配置为根据所述环境检测结果,生成告警通知,以使用户根据所述告警通知进行相应调整。
132.在本技术的一些实施例中,所述环境检测结果包括环境光线强度,所述生成通知单元配置为:在所述环境光线强度大于第二预设阈值时,生成告警通知,以使所述用户对所述环境光线强度进行调整。
133.在本技术的一些实施例中,所述装置还包括:报告生成模块,配置为生成信息查看
报告,所述信息查看报告至少包括标定过程中的环境情况、标定过程中出现的问题及其类型、标定过程的用时、标定结果、标定结果的误差以及误差原因分析中的一项或多项内容。
134.在本技术的一些实施例中,所述获取模块902包括:接收单元,配置为接收用户的注册请求,所述注册请求中包含有所述机器人的参数信息以及所述相机的参数信息;第一确定单元,配置为根据所述机器人的参数信息以及所述相机的参数信息,从标定信息数据库中确定匹配的标定轨迹;第二确定单元,配置为将所述匹配的标定轨迹作为所述目标标定轨迹。
135.在本技术的一些实施例中,所述第一确定单元配置为:根据所述机器人的参数信息以及所述相机的参数信息,从所述标定信息数据库中获取目标标定信息;根据所述目标标定信息中包含的轨迹数据,确定匹配的标定轨迹。
136.在本技术的一些实施例中,所述第一单元配置为:获取用户历史输入的机器人参数信息和相机参数信息;对所述机器人参数信息和所述相机参数信息进行特征提取,分别得到机器人参数特征向量和相机参数特征向量;将所述机器人参数特征向量和所述相机参数特征向量输入预先训练好的神经网络模型,得到所述神经网络模型输出的标定信息,其中所述神经网络模型是利用训练样本进行训练得到的,所述训练样本包括机器人参数信息、相机参数信息以及标定信息;将所述标定信息进行存储,形成所述标定信息数据库。
137.图10示出了适于用来实现本技术实施例的电子设备的计算机系统的结构示意图。
138.需要说明的是,图10示出的电子设备的计算机系统1000仅是一个示例,不应对本技术实施例的功能和使用范围带来任何限制。
139.如图10所示,计算机系统1000包括中央处理单元(central processing unit,cpu)1001,其可以根据存储在只读存储器(read-only memory,rom)1002中的程序或者从存储部分1008加载到随机访问存储器(random access memory,ram)1003中的程序而执行各种适当的动作和处理,例如执行上述实施例中所述的方法。在ram 1003中,还存储有系统操作所需的各种程序和数据。cpu 1001、rom 1002以及ram 1003通过总线1004彼此相连。输入/输出(input/output,i/o)接口1005也连接至总线1004。
140.以下部件连接至i/o接口1005:包括键盘、鼠标等的输入部分1006;包括诸如阴极射线管(cathode ray tube,crt)、液晶显示器(liquid crystal display,lcd)等以及扬声器等的输出部分1007;包括硬盘等的存储部分1008;以及包括诸如lan(local area network,局域网)卡、调制解调器等的网络接口卡的通信部分1009。通信部分1009经由诸如因特网的网络执行通信处理。驱动器1010也根据需要连接至i/o接口1005。可拆卸介质1011,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1010上,以便于从其上读出的计算机程序根据需要被安装入存储部分1008。
141.特别地,根据本技术的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本技术的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的计算机程序。在这样的实施例中,该计算机程序可以通过通信部分1009从网络上被下载和安装,和/或从可拆卸介质1011被安装。在该计算机程序被中央处理单元(cpu)1001执行时,执行本技术的系统中限定的各种功能。
142.需要说明的是,本技术实施例所示的计算机可读介质可以是计算机可读信号介质
或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(erasable programmable read only memory,eprom)、闪存、光纤、便携式紧凑磁盘只读存储器(compact disc read-only memory,cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本技术中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本技术中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的计算机程序。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的计算机程序可以用任何适当的介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
143.附图中的流程图和框图,图示了按照本技术各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。其中,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
144.描述于本技术实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现,所描述的单元也可以设置在处理器中。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。
145.作为另一方面,本技术还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该电子设备执行时,使得该电子设备实现上述实施例中所述的方法。
146.应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本技术的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
147.通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本技术实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是cd-rom,u盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算
设备(可以是个人计算机、服务器、触控终端、或者网络设备等)执行根据本技术实施方式的方法。
148.本领域技术人员在考虑说明书及实践这里公开的实施方式后,将容易想到本技术的其它实施方案。本技术旨在涵盖本技术的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本技术的一般性原理并包括本技术未公开的本技术领域中的公知常识或惯用技术手段。
149.应当理解的是,本技术并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本技术的范围仅由所附的权利要求来限制。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献