焊接机器人控制方法、装置、焊接机器人和可读介质与流程

文档序号:32399853发布日期:2022-12-02 18:39阅读:88来源:国知局
焊接机器人控制方法、装置、焊接机器人和可读介质与流程

1.本技术涉及机器人领域,尤其涉及一种焊接机器人控制方法、装置、焊接机器人和可读介质。


背景技术:

2.随着计算机科学和自动化控制的发展,各类自动加工机器人在各个领域中都得到了快速发展。在工业机器人领域中,自动化控制的焊接机器人得到了广泛应用。
3.在相关技术中,焊接机器人的控制流程根据手动控制机器人进行焊接的过程设定相关的运行数据,再由机器人根据其相机拍摄到的图像根据设定的运行数据进行焊接。
4.然而,上述方案中,由于运行数据根据手动控制过程设定,手动控制过程中控制人员的焊接技术水平以及误差对机器人自动焊接过程的影响较大,导致在焊接过程中存在偏差,降低了焊接的准确性。


技术实现要素:

5.基于上述技术问题,本技术提供一种焊接机器人控制方法、装置、焊接机器人和可读介质,以对焊接点进行准确定位,提高焊接精度。
6.本技术的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本技术的实践而习得。
7.根据本技术实施例的一个方面,提供一种焊接机器人控制方法,包括:
8.通过焊接机器人末端的三维相机,在多个指定采集位置对目标工件上的多个三维球进行点云数据采集,得到多个点云数据集合,其中,每个点云数据集合中包括一个指定采集位置对应的所述多个三维球的点云数据;
9.根据每个点云数据集合中所述多个三维球的点云数据,确定每个点云数据集合中各个三维球的球心位置,得到多个点云数据集合对应的球心位置集合;
10.根据所述球心位置集合中各个三维球的球心位置,生成手眼变换矩阵的补偿矩阵;
11.根据所述补偿矩阵和所述手眼变换矩阵,驱动所述焊接机器人通过所述焊接机器人的焊枪末端对所述目标工件进行焊接。
12.在本技术的一个实施例中,基于以上的技术方案,所述通过焊接机器人末端的三维相机,在多个指定采集位置对目标工件上的多个三维球进行点云数据采集,得到多个点云数据集合,包括:
13.在每个指定采集位置,通过焊接机器人末端的三维相机对目标工件上的多个三维球进行点云数据采集,得到所述多个三维球的原始三维数据和对应于各个指定采集位置的中心转换矩阵;
14.根据所述手眼变换矩阵和所述中心转换矩阵,将所述多个三维球的原始三维数据转换到焊接机器人坐标系下,得到多个点云数据集合。
15.在本技术的一个实施例中,基于以上的技术方案,所述根据每个点云数据集合中所述多个三维球的点云数据,确定每个点云数据集合中各个三维球的球心位置,得到多个点云数据集合对应的球心位置集合,包括:
16.对于每个点云数据集合,根据所述多个三维球的点云数据的空间分布进行采样,得到各个三维球对应的数据集合;
17.根据每个三维球对应的数据集合进行球形拟合,确定每个点云数据集合中各个三维球的球心坐标,得到多个点云数据集合对应的球心位置集合。
18.在本技术的一个实施例中,基于以上的技术方案,所述对于每个点云数据集合,根据所述多个三维球的点云数据的空间分布进行采样,得到各个三维球对应的数据集合,包括:
19.对于每个点云数据集合,根据在三维坐标轴上的预设范围对所述点云数据进行过滤,得到过滤点云数据;
20.根据多个预设空间盒体,对于落入相同预设空间盒体的过滤点云数据,提取与所述预设空间盒体的盒体中心最接近的过滤点云数据,得到采样点云数据,所述预设空间盒体为对所述目标工件所在三维空间进行划分得到的;
21.根据所述采样点云数据的空间位置进行聚类划分,得到每个三维球的点云数据的数据集合。
22.在本技术的一个实施例中,基于以上的技术方案,所述根据所述球心位置集合中各个三维球的球心位置,生成手眼变换矩阵的补偿矩阵,包括:
23.对于所述球心位置集合中每个点云数据集合对应的球心位置,分别计算指定三维球的球心与其他三维球的球心之间在三维坐标轴上的距离,得到球心距离;
24.根据所述球心距离,计算各个三维球在三维坐标轴上的平均距离,作为手眼变换矩阵的补偿矩阵。
25.在本技术的一个实施例中,基于以上的技术方案,所述在每个指定采集位置,通过焊接机器人末端的三维相机对目标工件上的多个三维球进行点云数据采集,得到所述多个三维球的原始三维数据和对应于各个指定采集位置的中心转换矩阵,包括:
26.按照预设路径信息,驱动所述焊接机器人末端依次到达各个指定采集位置;
27.在每个指定采集位置,通过所述焊接机器人末端的三维相机拍摄所述目标工件的一帧点云数据并记录当前位置的中心转换矩阵,所述三维图像中包含各个三维球的点云数据。
28.在本技术的一个实施例中,基于以上的技术方案,所述根据所述补偿矩阵和所述手眼变换矩阵,驱动所述焊接机器人通过所述焊接机器人的焊枪末端对所述目标工件进行焊接,包括:
29.通过所述三维相机,获取目标工件上待焊接位置的位置信息;
30.通过所述补偿矩阵和所述手眼变换矩阵,将所述待焊接位置的位置信息转换到焊接机器人坐标系下,得到目标位置信息;
31.根据所述目标位置信息,驱动所述焊枪末端对所述待焊接位置进行焊接。
32.根据本技术实施例的一个方面,提供一种焊接机器人控制装置,包括:
33.点云数据采集模块,用于通过焊接机器人末端的三维相机,在多个指定采集位置
对目标工件上的多个三维球进行点云数据采集,得到多个点云数据集合,其中,每个点云数据集合中包括一个指定采集位置对应的所述多个三维球的点云数据;
34.球心位置确定模块,用于根据每个点云数据集合中所述多个三维球的点云数据,确定每个点云数据集合中各个三维球的球心位置,得到多个点云数据集合对应的球心位置集合;
35.补偿矩阵生成模块,用于根据所述球心位置集合中各个三维球的球心位置,生成手眼变换矩阵的补偿矩阵;
36.驱动模块,用于根据所述补偿矩阵和所述手眼变换矩阵,驱动所述焊接机器人通过所述焊接机器人的焊枪末端对所述目标工件进行焊接。
37.根据本技术实施例的一个方面,提供一种焊接机器人,该焊接机器人包括:处理器;以及存储器,用于存储处理器的可执行指令;其中,该处理器配置为经由执行可执行指令来执行如以上技术方案中的焊接机器人控制方法。
38.根据本技术实施例的一个方面,提供一种计算机可读存储介质,其上存储有计算机程序,当该计算机程序被处理器执行时实现如以上技术方案中的焊接机器人控制方法。
39.在本技术的实施例中,通过焊接机器人末端的三维相机来采集目标工件上的三维球的点云数据,再根据点云数据计算手眼变换矩阵的补偿矩阵,从而对焊接机器人的焊枪末端与三维相机光心之间的偏差进行补偿,从而对焊接点进行准确定位,提高焊接精度。
40.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本技术。
附图说明
41.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本技术的实施例,并与说明书一起用于解释本技术的原理。显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
42.图1示意性地示出了本技术技术方案在一个应用场景中的示例性系统构架示意图;
43.图2为本技术实施例中目标工件和三维球的位置示意图;
44.图3为本技术实施例中一种焊接机器人控制方法的示意流程图;
45.图4为本技术实施例中焊接机器人控制方法的整体控制流程的流程示意图;
46.图5示意性地示出了本技术实施例中焊接机器人控制装置的组成框图;
47.图6示出了适于用来实现本技术实施例的电子设备的计算机系统的结构示意图。
具体实施方式
48.现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本技术将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。
49.此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本技术的实施例的充分理解。然而,
本领域技术人员将意识到,可以实践本技术的技术方案而没有特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装置、实现或者操作以避免模糊本技术的各方面。
50.附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
51.附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
52.下面介绍本技术的方案的应用场景。图1示意性地示出了本技术技术方案在一个应用场景中的示例性系统构架示意图。如图1所示,该应用场景包含焊接机器人110、三维相机120和目标工件130。本技术的方案驱动焊接机器人110根据三维相机120所拍摄到的三维点云数据来对目标工件130进行焊接。如图1所示的,目标工件130上设置有多个三维球。取决于目标工件的具体形状和焊接位置的需求,三维球的数量和位置可以不同。例如,请参阅图2,图2为本技术实施例中目标工件和三维球的位置示意图。如图2所示的,设置4个三维球,并且其中一个位于目标工件上的台阶上。在三维相机拍摄过程中,这些三维球会按照预设的规则出现目标工件的三维图像中。焊接机器人会根据这些三维球的点云数据进行计算,从而对焊接机器人根据三维图像进行焊接时,对焊枪末端与三维图像的光心之间的位置关系进行补偿和换算,从而对焊枪末端的位置进行准确的控制,完成焊接过程。
53.下面结合具体实施方式对本技术提供的技术方案做出详细说明。为了便于介绍,请参阅图3,图3为本技术实施例中一种焊接机器人控制方法的示意流程图。该方法可以应用于上述的焊接机器人中。在本技术实施例中,以焊接机器人作为执行主体来对焊接机器人控制方法进行介绍,该支付方法可以包括如下的步骤s310至s340:
54.步骤s310,通过焊接机器人末端的三维相机,在多个指定采集位置对目标工件上的多个三维球进行点云数据采集,得到多个点云数据集合,其中,每个点云数据集合中包括一个指定采集位置对应的所述多个三维球的点云数据。
55.具体地,焊接机器人的末端会按照预定的轨迹移动,并且在指定的采集位置停止并通过三维相机对目标工件进行拍摄。拍摄所得到的数据帧会包含目标工件上的多个三维球的点云数据。对三维球的点云数据进行数据采集,从而能够得到多个点云数据集合。每个点云数据集合是从一个指定采集位置采集的拍摄的数据帧中采集的点云数据,并且每个数据帧中都会包含多个三维球的点云数据。因此,可以理解的是,点云数据集合的数量通常等于所采集的数据帧的数量。如果在每个指定采集位置采集一帧数据,则点云数据集合的数量等于指定采集位置的数量。
56.在本技术的一个实施例中,上述步骤s310,通过焊接机器人末端的三维相机,在多个指定采集位置对目标工件上的多个三维球进行点云数据采集,得到多个点云数据集合,具体包含如下步骤:
57.在每个指定采集位置,通过焊接机器人末端的三维相机对目标工件上的多个三维球进行点云数据采集,得到所述多个三维球的原始三维数据和对应于各个指定采集位置的中心转换矩阵;
58.根据所述手眼变换矩阵和所述中心转换矩阵,将所述多个三维球的原始三维数据转换到焊接机器人坐标系下,得到多个点云数据集合。
59.在本技术的一个实施例中,上述步骤,在每个指定采集位置,通过焊接机器人末端的三维相机对目标工件上的多个三维球进行点云数据采集,得到所述多个三维球的原始三维数据和对应于各个指定采集位置的中心转换矩阵,具体包含如下步骤:
60.按照预设路径信息,驱动所述焊接机器人末端依次到达各个指定采集位置;
61.在每个指定采集位置,通过所述焊接机器人末端的三维相机拍摄所述目标工件的一帧点云数据并记录当前位置的中心转换矩阵,所述三维图像中包含各个三维球的点云数据。
62.具体地,焊接机器人会按照规划的“e”字形回旋上升运动轨迹,驱动焊接机器人末端带着三维相机到达多个指定的采样点上。依次按照不同的角度,通过三维数据相机获取目标工件上多个三维球的点云数据,并记录当前机器人中心转换矩阵toolpos。从而分别获得在相机坐标系下的n帧点云数据pcdn(n=1,2,

,n)和中心转换矩阵toolpos(n=1,2,

,n)。此外,焊接机器人会将pcdn点云数据根据未补偿的手眼变换矩阵handeye转换到机器人的基座坐标系下,记为pcdn’。其中,具体的转换过程如下:
63.pcdn’=transform(pcdn,toolposn*handeye),其中,(n=1,2,

,n)
64.步骤s320,根据每个点云数据集合中所述多个三维球的点云数据,确定每个点云数据集合中各个三维球的球心位置,得到多个点云数据集合对应的球心位置集合。
65.焊接机器人会根据每个点云数据集合中的多个三维球的点云数据来分别计算每个点云数据集合中各个三维球的球心位置,从而得到多个点云数据集合对应的球心位置集合。在球心位置集合中的球心位置可以按照点云数据集合来组织,即假定存在50个点云数据集合,并且三维球的数量为4个,则球心位置集合中会包含50组球心位置,每组球心位置中包含4个球心位置。
66.在本技术的一个实施例中,上述步骤s220,根据每个点云数据集合中所述多个三维球的点云数据,确定每个点云数据集合中各个三维球的球心位置,得到多个点云数据集合对应的球心位置集合,具体包含如下步骤:
67.对于每个点云数据集合,根据所述多个三维球的点云数据的空间分布进行采样,得到各个三维球对应的数据集合;
68.根据每个三维球对应的数据集合进行球形拟合,确定每个点云数据集合中各个三维球的球心坐标,得到多个点云数据集合对应的球心位置集合。
69.在本技术的一个实施例中,上述步骤,对于每个点云数据集合,根据所述多个三维球的点云数据的空间分布进行采样,得到各个三维球对应的数据集合,具体包含如下步骤:
70.对于每个点云数据集合,根据在三维坐标轴上的预设范围对所述点云数据进行过滤,得到过滤点云数据;
71.根据多个预设空间盒体,对于落入相同预设空间盒体的过滤点云数据,提取与所述预设空间盒体的盒体中心最接近的过滤点云数据,得到采样点云数据,所述预设空间盒体为对所述目标工件所在三维空间进行划分得到的;
72.根据所述采样点云数据的空间位置进行聚类划分,得到每个三维球的点云数据的数据集合。
73.具体地,焊接机器人会对每个点云数据集合中的点云数据进行采样。具体地,按照目标工件的指定尺寸以及与焊接机器人的整体相对位置等预设的信息,可以设置点云数据的空间取值范围,即在三维坐标系下的坐标范围,通常以机器人的基座坐标系为基准。在进行采样时,先根据点云数据在三维坐标系下的坐标以及空间取值范围进行过滤,从而过滤掉不在取值空间内的数据。然后,对于过滤后的数据,可以将按照预定的采样规则,将三维空间划分为多个空间盒体。三维球的点云数据会落入到某一个空间盒体中。每个空间盒体都作为一个取样器,对于一个空间盒体内的点云数据,会按照一定的规则来确定出一个代表数据,替代该空间盒体中的所有其他点云数据。例如,可以选择距离盒体中心最接近的点云数据,或者计算盒体中的点云数据的三维坐标的均值作为代表的点云数据。对于得到的采样点云数据,可以采用聚类算法按照空间位置或者相互之间的距离进行聚类。属于同一个三维球的数据会被划分到同一个聚类中,而离群的数据则可以被丢弃。可以理解,聚类结果中聚类的数量通常等于三维球的数量。以四个三维球为例,聚类结果通常会得到四个聚集结果,每个聚类结果对应于一个三维球。根据聚类结果,可进行球体拟合,并根据拟合的球体确定其球心位置,即球心在机器人基座坐标系下的坐标。对于每个点云数据集合进行采样和拟合,就可以得到每个点云数据集合对应的球心坐标,从而得到球心位置集合。
74.步骤s330,根据所述球心位置集合中各个三维球的球心位置,生成手眼变换矩阵的补偿矩阵。
75.具体地,焊接机器人根据球心位置集合中各个三维球的球心位置,可以计算出相机坐标系与机器人基座坐标系下的距离偏差,并且根据该距离偏差,可以进一步计算出对手眼变换矩阵的补偿矩阵,例如,通过计算各个球心之间的距离,或者计算各个球心与预先设定好的目标原点之间的距离,再根据计算得到的距离在三维坐标系下各个空间轴上的均值、中位值、最大值或者最小值等取值方式来确定补偿矩阵。该补偿矩阵可以在将三维相机为中心得到的空间位置转换到机器人基座坐标系下时,将三维相机到焊接机器人末端时间的三维空间补偿到转换结果中,来使得焊接机器人能够确定焊枪末端到目标工件之间的距离。
76.在本技术的一个实施例中,上述步骤s330,根据所述球心位置集合中各个三维球的球心位置,生成手眼变换矩阵的补偿矩阵,具体包含如下步骤:
77.对于所述球心位置集合中每个点云数据集合对应的球心位置,分别计算指定三维球的球心与其他三维球的球心之间在三维坐标轴上的距离,得到球心距离;
78.根据所述球心距离,计算各个三维球在三维坐标轴上的平均距离,作为手眼变换矩阵的补偿矩阵。
79.在三维球点云信息处理模块中得到机器人基座坐标系下球心集合cir0、cir1、cir2和cir3之间的x、y、z方向的欧氏距离集合ln(n=1,2,

),通过计算ln(n=1,2,

)集合x、y、z方向的平均值即手眼变换矩阵的补偿矩阵。最终经过补偿后的手眼变换矩阵t

tc
为:
[0080][0081]
其中t
tc
为三维相机坐标系c在机器人末端工具坐标系t下的表示,即未补偿前的手眼变换矩阵。
[0082]
步骤s340,根据所述补偿矩阵和所述手眼变换矩阵,驱动所述焊接机器人通过所述焊接机器人的焊枪末端对所述目标工件进行焊接。
[0083]
根据手眼变换矩阵和所得到的补偿矩阵,焊接机器人可以计算出目标工件的焊接点的具体位置,从而驱动焊枪末端对目标工件的焊接点进行焊接。
[0084]
在本技术的一个实施例中,上述步骤,根据所述补偿矩阵和所述手眼变换矩阵,驱动所述焊接机器人通过所述焊接机器人的焊枪末端对所述目标工件进行焊接,包括:
[0085]
通过所述三维相机,获取目标工件上待焊接位置的位置信息;
[0086]
通过所述补偿矩阵和所述手眼变换矩阵,将所述待焊接位置的位置信息转换到焊接机器人坐标系下,得到目标位置信息;
[0087]
根据所述目标位置信息,驱动所述焊枪末端对所述待焊接位置进行焊接。
[0088]
在本技术的实施例中,通过焊接机器人末端的三维相机来采集目标工件上的三维球的点云数据,再根据点云数据计算手眼变换矩阵的补偿矩阵,从而对焊接机器人的焊枪末端与三维相机光心之间的偏差进行补偿,从而焊接点进行准确定位,提高焊接精度。
[0089]
下面对本技术实施例的完整流程进行介绍。为了便于介绍,请参阅图4,图4为本技术实施例中焊接机器人控制方法的整体控制流程的流程示意图。如图4所示,在步骤401中,焊接机器人会驱动焊枪末端移动并启动三维数据相机,并且在步骤402中在指定的采集点采集三维球点云数据。随后,在步骤403中,将三维球点云数据转换到机器人基座坐标系下。在步骤404中,焊接急切人会通过直通滤波的方式去除不相关的点云,例如地面点云或周边环境的点云。随后,在步骤405中,对三维球点云进行均匀采样。在步骤406中,对于采样的结果进行聚类分割,从而去除空间噪声点。在步骤407中,基于聚类得到的三维球点云数据进行球形拟合,并且计算出球心。基于所得到的球心,在步骤408中可以计算各个球心在x轴、y轴和z轴方向上的欧式距离。随后在步骤409中,要判断当前的点云帧数数是否达到点云帧数阈值,如果未达到,则回到步骤401中继续进行采样和计算。如果已经达到点云帧数阈值,则在步骤410中计算所有点云在x轴、y轴和z轴方向上欧式距离的均方根误差,并且在步骤411中采用x轴、y轴和z轴方向上的均值误差对手眼矩阵进行补偿,从而在步骤412中输出机器人手眼补偿矩阵。
[0090]
应当注意,尽管在附图中以特定顺序描述了本技术中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等。
[0091]
以下介绍本技术的装置实施,可以用于执行本技术上述实施例中的焊接机器人控制方法。图5示意性地示出了本技术实施例中焊接机器人控制装置的组成框图。如图5所示,焊接机器人控制装置500主要可以包括:
[0092]
点云数据采集模块510,用于通过焊接机器人末端的三维相机,在多个指定采集位置对目标工件上的多个三维球进行点云数据采集,得到多个点云数据集合,其中,每个点云数据集合中包括一个指定采集位置对应的所述多个三维球的点云数据;
[0093]
球心位置确定模块520,用于根据每个点云数据集合中所述多个三维球的点云数据,确定每个点云数据集合中各个三维球的球心位置,得到多个点云数据集合对应的球心位置集合;
[0094]
补偿矩阵生成模块530,用于根据所述球心位置集合中各个三维球的球心位置,生成手眼变换矩阵的补偿矩阵;
[0095]
驱动模块540,用于根据所述补偿矩阵和所述手眼变换矩阵,驱动所述焊接机器人通过所述焊接机器人的焊枪末端对所述目标工件进行焊接。
[0096]
在本技术的一个实施例中,基于以上的技术方案,点云数据采集模块510包括:
[0097]
数据采集单元,用于在每个指定采集位置,通过焊接机器人末端的三维相机对目标工件上的多个三维球进行点云数据采集,得到所述多个三维球的原始三维数据和对应于各个指定采集位置的中心转换矩阵;
[0098]
数据转换单元,用于根据所述手眼变换矩阵和所述中心转换矩阵,将所述多个三维球的原始三维数据转换到焊接机器人坐标系下,得到多个点云数据集合。
[0099]
在本技术的一个实施例中,基于以上的技术方案,球心位置确定模块520包括:
[0100]
采样单元,用于对于每个点云数据集合,根据所述多个三维球的点云数据的空间分布进行采样,得到各个三维球对应的数据集合;
[0101]
拟合单元,用于根据每个三维球对应的数据集合进行球形拟合,确定每个点云数据集合中各个三维球的球心坐标,得到多个点云数据集合对应的球心位置集合。
[0102]
在本技术的一个实施例中,基于以上的技术方案,采样单元包括:
[0103]
过滤子单元,用于对于每个点云数据集合,根据在三维坐标轴上的预设范围对所述点云数据进行过滤,得到过滤点云数据;
[0104]
采样子单元,用于根据多个预设空间盒体,对于落入相同预设空间盒体的过滤点云数据,提取与所述预设空间盒体的盒体中心最接近的过滤点云数据,得到采样点云数据,所述预设空间盒体为对所述目标工件所在三维空间进行划分得到的;
[0105]
聚类子单元,用于根据所述采样点云数据的空间位置进行聚类划分,得到每个三维球的点云数据的数据集合。
[0106]
在本技术的一个实施例中,基于以上的技术方案,补偿矩阵生成模块530包括:
[0107]
距离计算单元,用于对于所述球心位置集合中每个点云数据集合对应的球心位置,分别计算指定三维球的球心与其他三维球的球心之间在三维坐标轴上的距离,得到球心距离;
[0108]
矩阵生成单元,用于根据所述球心距离,计算各个三维球在三维坐标轴上的平均距离,作为手眼变换矩阵的补偿矩阵。
[0109]
在本技术的一个实施例中,基于以上的技术方案,数据采集单元包括:
[0110]
驱动子单元,用于按照预设路径信息,驱动所述焊接机器人末端依次到达各个指定采集位置;
[0111]
拍摄子单元,用于在每个指定采集位置,通过所述焊接机器人末端的三维相机拍摄所述目标工件的一帧点云数据并记录当前位置的中心转换矩阵,所述三维图像中包含各个三维球的点云数据。
[0112]
在本技术的一个实施例中,基于以上的技术方案,驱动模块540包括:
[0113]
信息获取单元,用于通过所述三维相机,获取目标工件上待焊接位置的位置信息;
[0114]
坐标转换单元,用于通过所述补偿矩阵和所述手眼变换矩阵,将所述待焊接位置的位置信息转换到焊接机器人坐标系下,得到目标位置信息;
[0115]
焊枪驱动单元,用于根据所述目标位置信息,驱动所述焊枪末端对所述待焊接位置进行焊接。
[0116]
需要说明的是,上述实施例所提供的装置与上述实施例所提供的方法属于同一构思,其中各个模块执行操作的具体方式已经在方法实施例中进行了详细描述,此处不再赘述。
[0117]
图6示出了适于用来实现本技术实施例的电子设备的计算机系统的结构示意图。
[0118]
需要说明的是,图6示出的电子设备的计算机系统600仅是一个示例,不应对本技术实施例的功能和使用范围带来任何限制。
[0119]
如图6所示,计算机系统600包括中央处理单元(central processing unit,cpu)601,其可以根据存储在只读存储器(read-only memory,rom)602中的程序或者从储存部分608加载到随机访问存储器(random access memory,ram)603中的程序而执行各种适当的动作和处理。在ram 603中,还存储有系统操作所需的各种程序和数据。cpu 601、rom 602以及ram 603通过总线604彼此相连。输入/输出(input/output,i/o)接口605也连接至总线604。
[0120]
以下部件连接至i/o接口605:包括键盘、鼠标等的输入部分606;包括诸如阴极射线管(cathode ray tube,crt)、液晶显示器(liquid crystal display,lcd)等以及扬声器等的输出部分607;包括硬盘等的储存部分608;以及包括诸如lan(local area network,局域网)卡、调制解调器等的网络接口卡的通信部分609。通信部分609经由诸如因特网的网络执行通信处理。驱动器610也根据需要连接至i/o接口605。可拆卸介质611,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器610上,以便于从其上读出的计算机程序根据需要被安装入储存部分608。
[0121]
特别地,根据本技术的实施例,各个方法流程图中所描述的过程可以被实现为计算机软件程序。例如,本技术的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分609从网络上被下载和安装,和/或从可拆卸介质611被安装。在该计算机程序被中央处理单元(cpu)601执行时,执行本技术的系统中限定的各种功能。
[0122]
需要说明的是,本技术实施例所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(erasable programmable read only memory,eprom)、闪存、光纤、便携式紧凑磁盘只读存储器(compact disc read-only memory,cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本技术中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本技术中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读
存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
[0123]
附图中的流程图和框图,图示了按照本技术各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0124]
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本技术的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
[0125]
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本技术实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是cd-rom,u盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、触控终端、或者网络设备等)执行根据本技术实施方式的方法。
[0126]
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本技术的其它实施方案。本技术旨在涵盖本技术的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本技术的一般性原理并包括本技术未公开的本技术领域中的公知常识或惯用技术手段。
[0127]
应当理解的是,本技术并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本技术的范围仅由所附的权利要求来限制。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1