【技术实现步骤摘要】
根据人类演示的机器人程序生成方法
[0001]本专利技术涉及工业机器人编程领域,更具体地,涉及一种通过人类演示对机器人进行编程以执行工件拾取、移动和放置操作的方法,包括视觉和力传感器以跟踪人手和工件两者,其中所述方法使用传感器输入来教导运动和状态改变逻辑,并根据运动和状态改变生成机器人编程命令。
技术介绍
[0002]使用工业机器人重复地执行大范围的制造、装配和材料移动操作是众所周知的。然而,使用传统方法教导机器人执行诸如在传送带上以随机位置和定向拾取工件并将工件移动到运输容器之类的甚至相当简单的操作是不直观、耗时和/或昂贵的。
[0003]传统上,已经由人类操作者使用教导器来教导机器人执行上述类型的拾取和放置操作。教导器由操作者使用,以指示机器人进行增量移动
‑
例如“在X方向慢进”或“绕本地Z轴旋转夹具
”‑
直到机器人及其夹具处于正确的位置和定向以夹持工件。然后,机器人控制器记录机器人配置以及工件位置和姿态,以用于“拾取”操作。然后,类似的教导器命令被用于定义“移动”和“放置”操作。然而,经常发现使用教导器对机器人进行编程是不直观的、容易出错的且耗时的,尤其是对于非专业操作者而言。
[0004]另一种已知的教导机器人执行拾取和放置操作的技术是使用运动捕捉系统。运动捕捉系统由多个相机组成,这些相机排列在工作单元周围,以在操作者操纵工件时记录操作者和工件的位置和定向。操作者和/或工件可以具有附加的可唯一识别的标记点,以便在执行操作时更精确地检测相机图像中操作者和工件上 ...
【技术保护点】
【技术特征摘要】
1.一种用于根据人类演示来创建机器人运动程序的方法,所述方法包括:通过人类演示者的手演示在工件上的操作;通过具有处理器和存储器的计算机来分析演示在所述工件上的所述操作的所述手的多个相机图像,以创建手运动数据;通过所述计算机来分析所述演示的多个相机图像、来自力传感器的信号、来自麦克风的信号和来自输入信号装置的信号中的一个或多个,以创建逻辑数据;以及基于所述手运动数据和所述逻辑数据生成所述机器人运动程序,所述程序包括使机器人操纵夹具以在所述工件上执行所述操作的指令。2.根据权利要求1所述的方法,其中,所述多个相机图像由单个二维(2D)或三维(3D)相机拍摄。3.根据权利要求1所述的方法,其中,分析演示所述操作的所述手的多个相机图像包括识别所述手上的多个点的三维(3D)坐标位置,所述多个点包括拇指和食指中的每一个的指尖、根部指节和第二指节。4.根据权利要求3所述的方法,其中,生成机器人运动程序包括:对于由所述多个相机图像中的一个相机图像描绘的多个时间步中的每一个时间步,基于所述手上的所述多个点的3D坐标位置计算手坐标框架,将所述手坐标框架转换为定义夹具的位置和定向的夹具坐标框架,以及使用在所述多个时间步处的所述夹具坐标框架生成所述机器人运动程序。5.根据权利要求1所述的方法,其中,创建所述逻辑数据包括:在所述操作期间检测状态转换,使用所述状态转换来使夹具激活和停用命令与所述手运动数据中的特定时间步同步,以及将所述夹具激活和停用命令包括在所述机器人运动程序中。6.根据权利要求5所述的方法,其中,检测状态转换包括分析所述手和所述工件的所述多个相机图像以确定手中心点和工件中心点之间的距离。7.根据权利要求6所述的方法,其中,拾取状态转换由所述手中心点和所述工件中心点之间的距离降到预定阈值以下来触发,从所述拾取状态的移动状态转换由所述手中心点从一个时间步到下一个时间步的运动来触发,并且从所述移动状态的放置状态转换由所述手中心点与所述工件中心点之间的所述距离超过所述预定阈值或新计算的阈值来触发。8.根据权利要求5所述的方法,其中,检测状态转换包括:分析所述人类演示者的第二只手的多个相机图像,以及当检测到所述第二只手的预定手势时触发状态转换。9.根据权利要求5所述的方法,其中,检测状态转换包括:从配置为登记所述人类演示者的第二只手的按钮按压的设备接收信号,以及当检测到所述按钮按压时触发状态转换。10.根据权利要求5所述的方法,其中,检测状态转换包括:从配置为检测来自所述人类演示者的口头命令的麦克风接收信号,以及当检测到预定口头命令时触发状态转换,包括针对词语拾取、移动和放置中的每一个的对应的状态转换。11.根据权利要求5所述的方法,其中,检测状态转换包括:从力传感器接收信号,所述力传感器配置为在所述操作期间检测所述工件上的力,以及基于来自所述力传感器的所述信号触发状态转换,包括检测到峰值,随后是来自所述力传感器的所述信号中的下降,以触发拾取状态转换或放置状态转换。12.根据权利要求1所述的方法,其中,创建所述手运动数据包括:在生成所述机器人运动程序之前改进所述手运动数据,包括对所述手运动数据执行最小二乘拟合以创建改进的
手运动数据,以及通过所述改进的手运动数据计算样条插值以生成所述机器人运动程序。13.根据权利要求1所述的方法,其中,创建所述手运动数据包括:在生成所述机器人运动程序之前改进所述手运动数据,包括用分段线性函数替换所述手运动数据,所述分段线性函数具有从起始点向上的垂直直线段,随后是通过所述手运动数据中的最高点的水平直线段,随后是向下至结束点的垂直直线段,以及,使用所述分段线性函数来生成所述机器人运动程序。14.根据权利要求1所述的方法,其中,创建所述手运动数据包括:在创建所述机器人运动程序之前改进所述手运动数据,包括用根据所述工件的表面的法线计算的夹具轴线来替换根据所述手运动数据确定的夹具轴线。15.根据权利要求1所述的方法,还包括:通过机器人控制器使用所述机器人运动程序来使所述机器人操纵所述夹具以在所述工件上执行所述操作。16.一种用于根据人类演示来创建机器人运动程序的方法,所述方法包括:定义操作的状态机模型,所述状态机...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。