角度检测器的偏心误差校正方法及机器人系统与流程

文档序号:16764295发布日期:2019-01-29 17:54阅读:324来源:国知局
角度检测器的偏心误差校正方法及机器人系统与流程

本公开涉及一种角度检测器的偏心误差校正方法及机器人系统,角度检测器的偏心误差校正方法校正由于设置在机器人中的角度检测器的偏心产生的误差。

以往,通过检测角度的反馈来控制机器人的关节角度,该检测角度由安装在电机上的诸如光学编码器的角度检测器检测。另外,为了提高关于臂前端的定位精度,可以进一步安装角度检测器,该角度检测器直接读取通过诸如减速器的传动机构连接的臂的旋转角度。以下,将检测电机的旋转角度的角度检测器称为输入轴角度检测器。将检测臂的旋转角度的角度检测器称为输出轴角度检测器。

输入轴角度检测器通过将输入轴角度除以减速器的减速比来确定臂相对于预定原点的旋转角度。因此,输入轴角度检测器以与减速比相对应的高分辨率检测臂的旋转角度。因此,即使在输入轴角度检测器本身的分辨率或精度相对较低的情况下,输入轴角度检测器也能够进行精细控制。

另一方面,输出轴角度检测器直接检测臂的旋转角度,而不受相当于减速器中的齿隙(backlash)的量的位移、由减速器的弹性变形引起的扭转、减速器中的角传动误差等影响。

因此,在设置有输入轴角度检测器和输出轴角度检测器的情况下,通常使用以下组合。也就是说,考虑分辨率和检测精度,输入轴角度检测器主要用于角速度控制,输出轴角度检测器主要用于角度控制。由于输入轴角度和输出轴角度之间的相对差被检测作为扭转角度,所以角度检测器也可用于阻尼控制和力控制。

因此,在角度检测器的旋转中心已移位的情况下,即,角度检测器偏心的情况下,产生由角度检测器检测到的检测角度存在误差的问题。在下面,将由于角度检测器的偏心而产生的误差称为偏心误差。例如,jp-a-2015-194462提出了基于以周期的角度检测的输入轴角度和输出轴角度来校正偏心误差。前端位置精度由此得到提高。

然而,在机器人的关节部分中,除了角度检测器的偏心之外,还存在引起输入轴角度和输出轴角度之间的差异的其他因素。例如,这些因素包括减速器的齿隙和由自身臂重的影响引起的减速器的弹性变形。因此,基于输入轴角度和输出轴角度仅精确提取偏心误差是困难的。无法适当地校正偏心误差。



技术实现要素:

因此,期望提供一种用于角度检测器的偏心误差校正方法及机器人系统,该角度检测器的偏心误差校正方法能够适当地校正由于角度检测器的偏心产生的偏心误差。

本公开的示例性实施例提供一种用于角度检测器的偏心误差校正方法,用于校正由于包括输入轴角度检测器和输出轴角度检测器的机器人中的输出轴角度检测器中的偏心产生的偏心误差。首先,在臂的自重对旋转方向的影响被抑制的至少三个测量位置检测输出轴角度。在这种情况下,臂的自重对旋转方向的影响被抑制的位置包括旋转方向完全不受影响的位置和对旋转方向的影响基本上可忽略的位置。

如果输出轴角度检测器不偏心,则在每个测量位置处检测到的输出轴角度与表示臂的实际旋转角度的臂角度值一致,这是因为臂的自重的影响被抑制。另一方面,如果输出轴角度检测器偏心,则输出轴角度与臂角度值不同。然而,在输出轴角度和臂角度值不同的情况下,由于臂的自重的影响被抑制,所以该差异可被认为是由于输出轴角度检测器的偏心引起的偏心误差。

因此,臂角度值和输出轴角度之间的差被确定为每个测量位置处的偏心误差。因此,能够得到臂角度值和偏心误差的至少三个组合。

这里,当输出轴角度检测器偏心时,输出轴角度检测器的检测位置和臂的旋转中心之间的距离随着臂的旋转而变化。这里,当臂进行单次旋转时,检测位置返回到相同位置。因此,由于输出轴角度检测器的偏心而产生的偏心误差形成正弦波,正弦波的单个周期也是臂的单次旋转。

由于每个测量位置处的偏心误差用单个周期是臂的单次旋转的正弦波近似,因此可以确定表示臂角度值和偏心误差之间的关系的误差曲线。当使用该误差曲线时,如果偏心误差是θe并且臂角度值是θa,则偏心误差可以使用臂角度值是变量的函数f如下简单地表示。

θe=f(θa)

所确定的误差曲线表示臂角度值和偏心误差之间的关系。因此,为了在机器人的动作期间校正偏心误差,需要根据在动作期间可以检测的输入轴角度或输出轴角度确定臂角度值。

此时,在除上述测量位置之外的位置处,存在诸如齿隙、弹性变形和减速器中的角传动误差的误差因素。因此,如果根据由输入轴角度检测器检测到的输入轴角度确定臂角度值,则臂角度值可包括由上述误差因素引起的误差。最终确定的校正值产生误差。

另一方面,如上所述,由输出轴角度检测器检测到的输出轴角度不受诸如齿隙、弹性变形和减速器的角传动误差的误差因素影响。因此,优选地根据输出轴角度确定臂角度值。此时,输出轴角度被检测为臂角度值和偏心误差之和。其中,其关系表示如下。

输出轴角度=臂角度值+偏心误差

另外,根据上述两种关系,可以如下确定表示输出轴角度和臂角度值之间的对应关系的校正式。

输出轴角度=臂角度值(θa)+f(θa)

也就是说,根据在机器人的动作期间检测到的输出轴角度,能够确定与输出轴角度对应的臂角度值。然后,当确定与输出轴角度相对应的臂角度值时,能够基于上述的误差曲线仅提取与输出轴角度相对应的偏心误差。能够校正偏心误差。

由于在每个测量位置处检测到输出轴角度,并且将每个测量位置处的臂角度值和输出轴角度之差作为偏心误差来确定误差曲线,如上所述,在不包括诸如齿隙、弹性变形和减速器的角传动误差的误差的状态下,能够精确地提取与臂角度值相对应的偏心误差。

另外,由于使用误差曲线确定的将输出轴角度和臂角度值相关联的校正式,所以能够根据在动作期间可以检测到的输出轴角度确定臂角度值。当确定臂角度值时,能够精确地确定用于校正与臂角度值相对应的偏心误差(即,输出轴角度中包含的偏心误差)的校正值。因此,能够适当地校正由于输出轴角度检测器的偏心而产生的偏心误差。

另外,本公开的机器人系统包括执行上述处理的控制单元。因此,机器人系统能够适当地校正由于角度检测器的偏心而产生的偏心误差。

为了准确地确定校正值,重要的是在臂的自重的影响被抑制的姿势下测量偏心误差。此时,如果止动件的位置稍微改变,则不受自身臂重量影响的姿势在理论上是无限的。然而,实际的机器人未设置为能够进行这种微小的改变。因此,不受臂自身重量影响的姿势在现实中是有限的。

因此,如果着眼于偏心误差表现出接近正弦波的变化,由于在认为臂自身重量的影响被抑制的三个姿势下确定偏心误差,因此能够基于偏心误差表现出接近正弦波的变化的特性生成误差曲线。因此,本公开的方法适合用于实际的机器人。

另外,偏心误差校正的对象是输出轴角度检测器也是重要的。在机器人的组装完成之后,能够确认输出轴角度检测器是否偏心。也就是说,在机器人的组装完成之后、或者换言之在机器人的关节处于受到臂的自重的状态之后,能够确定输出轴角度检测器的偏心误差。

在这种情况下,考虑到机器人是相对较重的物体、以及损害机器人的风险,例如,对放置在地板上的机器人臂进行调整,使得不受到臂的自重的情况不能在制造现场实际执行。

在这方面,在本公开的方法中,能够对组装已完成的机器人确定误差曲线并且能够确定校正值。因此,优点在于能够在机器人的制造现场实际使用该方法。另外,在机器人的安装现场能够确定误差曲线并且还能够确定校正值。因此,本公开的方法非常有效。

在本公开中,可以将臂从上方与止动件接触的接触位置设定为测量位置中的至少一个。止动件以机械方式限制臂的旋转。止动件以机械方式附接到机器人。因此,止动件的位置被固定。止动件相对于臂的旋转中心的机械位置关系也被指定。另外,在接触位置,止动件支撑臂侧的自重。因此,臂侧的自重不会引起检测角度的误差。

因此,当臂处于接触位置时,可以通过止动件的位置、臂的外部尺寸等以机械方式识别臂角度值。因此,由于接触位置被设定为测量位置,因此能够仅提取由输出轴角度检测器的偏心引起的偏心误差。

在本公开中,垂直位置可以被设定为测量位置中的至少一个。垂直位置是臂侧的重心位于包含从臂的旋转中心垂直向上的方向的预定角度范围内的位置。当臂位于垂直位置时,在减速器中不在旋转方向上施加力。因此,认为减速器处于不发生弹性变形的状态、或者因为在旋转方向上施加的力最小而可忽略弹性变形的状态。

因此,在垂直位置,认为输入轴角度和输出轴角度基本上一致。在这种情况下,认为能够根据检测到的输入轴角度高精度地确定臂角度值。

因此,由于垂直位置被设定为测量位置,因此能够仅提取由输出轴角度检测器的偏心引起的偏心误差。另外,在垂直位置,例如,由于当臂直线延伸时臂定向在大致垂直的方向上,因此也能够以机械方式识别臂角度值。

在本公开中,当臂正向旋转时检测到的垂直位置上的输出轴角度与当臂以与正向旋转相同的速度反向旋转时检测到的垂直位置上的输出轴角度的平均值可以被设定为垂直位置上的输出轴角度。

当控制电机并且臂以固定速度正向旋转和反向旋转时,输出轴以被输入轴拉动(pull)的方式旋转。因此,在输出轴和输入轴之间产生扭转。当臂正向旋转时检测到的输出轴角度与当臂反向旋转时检测到的输出轴角度之间可能产生差异。

另一方面,当臂以相同速度旋转时,在正向旋转和反向旋转期间产生相同大小的扭转。由于正向旋转和反向旋转期间的输出轴角度的平均被设定为输出轴角度,因此能够基于消除扭转影响的输出轴角度确定校正值。能够提高校正值的精度。

在本公开中,可以确定近似于臂正向旋转时检测到的多个输入轴角度和输出轴角度之间的关系的正向旋转近似线、以及近似于臂以与正向旋转相同的速度反向旋转时检测到的多个输入轴角度和输出轴角度之间的关系的反向旋转近似线。可以将根据正向旋转近似线确定的垂直位置上的输出轴角度和根据反向旋转近似线确定的垂直位置上的输出轴角度的平均值设定为垂直位置上的输出轴角度。

例如,当使用应变波传动装置作为减速器时,角度检测器的检测值可能出现角传动误差。角传动误差由于根据输入轴角度确定的输出轴角度与理论值不同而引起。因此,当使用在垂直位置上检测一次的输出轴角度进行校正时,包含角传动误差。

因此,作为根据正向旋转近似线确定的输出轴角度和根据反向旋转近似线确定的输出轴角度的平均值被设定为垂直位置上的输出轴角度的结果,能够在角传动误差的影响被抑制的状态下确定输出轴角度。能够提高校正值的精度。

在本公开中,可以设定中心在臂的旋转中心的垂直上方的预定检测区域。在臂暂时旋转到检测范围的上限和下限中的任一者之后,臂从上限旋转到下限的同时在每个预定角度检测输出轴角度的处理和臂从下限旋转到上限的同时在每个预定角度检测输出轴角度的处理可以被执行相同的次数。可以将在处理中检测到的多个输出轴角度的平均值设定为垂直位置上的输出轴角度。

例如,当使用应变波传动装置作为减速器时,角度检测器的检测值中可能包含上述的角传动误差。因此,通过臂的正向旋转和反向旋转能够在检测范围的上限和下限之间检测多个输出轴角度。

在这种情况下,设定检测范围使得其中心位于臂的旋转中心的垂直上方。另外,臂正向旋转和反向旋转。因此,可以将多个检测到的输出轴角度的总平均值用作垂直位置上的输出轴角度。另外,由于能够在角传动误差的影响被抑制的状态下确定输出轴角度,因此能够提高校正值的精度。

在本公开中,当使用校正式根据输出轴角度确定臂角度值时,校正式中包含的臂角度值的函数可以使用输入轴角度除以减速器的减速比得到的臂角度近似。

上述的校正式是表示为臂角度值(θa)和函数f(θa)之和的非线性公式。根据检测到的输出轴角度确定臂角度值是困难的。另外,计算负荷可能增加并且计算时间可能增长。

因此,关于函数f,通过用臂角度(θai)取代臂角度值(θa)简化校正式。在实际的机器人中,假设臂角度值(θa)和臂角度(θai)之差非常小。因此,即使用臂角度(θai)取代臂角度值(θa)时,也认为精度是与使用臂角度值(θa)时的精度相似的程度。

另外,作为用臂角度(θai)取代的结果,能够显著地减小计算负荷。因此,即使在机器人的动作期间使用校正式进行计算时,也可以容易地确定臂角度值和校正值,而不会引起影响控制的延迟。

附图说明

在图中:

图1是示意性表示根据第一实施例的机器人系统的结构的图;

图2是示意性表示机器人的关节部的概要图;

图3是校正偏心误差的处理的流程图;

图4是示意性表示垂直位置的图;

图5是示意性表示垂直位置上的输出轴角度的差异的图;

图6是臂角度值与输出轴角度之间的关系的示例的图;

图7是臂角度值与偏心误差之间的关系的示例的图;

图8是根据第二实施例的用于确定包含角传动误差的输出轴角度的方法的示例的图(1);

图9是根据第二实施例的用于确定包含角传动误差的输出轴角度的方法的示例的图(2);以及

图10是示意性表示用于增大接触位置的结构的示例的图。

具体实施方式

以下将参照附图描述多个实施例。使用相同的附图标记描述多个实施例中实质上相同的部分。

(第一实施例)

下面将参照图1至图7描述第一实施例。

如图1所示,根据本实施例的机器人系统1包括所谓的垂直多关节机器人2和控制机器人2的控制器3。

在机器人2中,肩部2b经由沿垂直方向设置的旋转轴以在水平方向上可旋转的方式连接到基座2a上。第一臂2c的一端经由沿水平方向设置的旋转轴以在垂直方向上可旋转的方式连接到肩部2b。第二臂2d的一端经由沿水平方向设置的旋转轴以在垂直方向上可旋转的方式连接到第一臂2c的另一端。工具2e连接到第二臂2d的另一端侧。工具2e相对于第二臂2d旋转。

另外,机器人2设置有止动件4。例如,止动件4以机械方式限制第一臂2c的运动的范围。止动件4也称为机械端。

根据本实施例,机器人2设置有第一止动件4a和第二止动件4b。第一止动件4a限制第一臂2c沿图1中的逆时针方向旋转时的运动范围。第二止动件4b限制第一臂2c沿图1中的顺时针方向旋转时的运动范围。

止动件4以固定或可拆卸的方式设置在安装孔(见图10)中。以下,将图1中的顺时针方向的旋转称为正向旋转。图1中的逆时针方向的旋转称为反向旋转。

第一止动件4a设置在比垂直线(lv)更靠向反向旋转侧的位置。垂直线(lv)表示从第一臂2c的旋转中心(j1)垂直向上的方向。在第一臂2c与第一止动件接触的状态下,第一止动件4a从下方支撑第一臂2c。换言之,第一臂2c从上方与第一止动件4a接触。

另外,在第一臂2c与第一止动件4a接触的状态下,第一止动件4a支撑第一臂2c侧的重量(即,包含第一臂2c的机器人2的前端侧的重量)。在下文中,为了方便,将诸如第一臂2c侧的重量的施加于机器人2的关节部的重量称为自身臂重。

第二止动件4b设置在比垂直线(lv)更靠向正向旋转侧的位置。在第一臂2c与第二止动件4b接触的状态下,第二止动件4b从下方支撑第一臂2c。换言之,第一臂2c从上方与第二止动件4b接触。另外,在第一臂2c与第二止动件4b接触的状态下,第二止动件4b支撑自身臂重。

这里,如图2所示,例如,在连接肩部2b和第一臂2c的关节部中,机器人2包括电机5、减速器6、输入轴角度检测器7、输出轴角度检测器8等。电机5驱动第一臂2c。减速器6连接到电机5的输出轴并用作传动机构。输入轴角度检测器7检测电机5的旋转角度。输出轴角度检测器8检测第一臂2c的旋转角度。

例如,电机5由步进电机构成。根据本实施例,减速器6由应变波传动装置构成。

输入轴角度检测器7和输出轴角度检测器8均由具有旋转盘和光学检测器的已知的编码器构成。以下,将输入轴角度检测器7的检测值称为输入轴角度。将输出轴角度检测器8的检测值称为输出轴角度。进一步,输入轴角度和输出轴角度也统称为检测角度。关于检测角度,正方向是臂的正向旋转方向。

在这种情况下,当输入轴角度检测器7的旋转中心是ji并且输出轴角度检测器8的旋转中心是jo时,在第一臂2c的情况下,输入轴角度检测器7的旋转中心(ji),或者更严格地说减速器6的输出轴的旋转中心,是第一臂2c的旋转中心(j1)。第一臂2c的旋转中心(j1)与输出轴角度检测器8的旋转中心(jo)之间的位置的差对应于输出轴角度检测器8的偏心。

控制器3具有由微计算机等组成的控制单元3a(未示出)。控制器3控制机器人2的姿势和动作。例如,控制单元3a驱动每个关节部的电机5,并通过由安装到电机5的输入轴角度检测器7检测到的输入轴角度的反馈来控制机器人2的姿势。

另外,控制单元3a驱动工具2e并控制诸如工件的抓取的动作。另外,如下所述,控制单元3a执行用于校正由于输出轴角度检测器8的旋转中心的偏移引起的误差(即,由于输出轴角度检测器8的的偏心产生的偏心误差)的处理。

接下来,将描述上述结构的作用。

如上所述,当角度检测器的旋转中心和臂的旋转中心的位置不同并且角度检测器偏心时,出现由角度检测器检测到的检测角度产生误差的问题。可以认为,如果此时能够校正输出轴角度检测器8的偏心误差,则能够提高与臂的旋转角度有关的检测精度。

可以认为,如果此时不存在误差因素,则能够基于输入轴角度检测臂的旋转角度。然而,在设置在机器人2的关节部中的角度检测器的情况下,除了偏心误差之外,还存在引起输入轴角度和臂角度值之间的误差的其他因素。臂角度值表示臂的实际旋转角度。

具体地,如图2所示,在机器人2的关节部中,相对于输入轴角度(θi),可能产生相当于齿隙的量的差异(d1)和相当于弹性变形的量的差异(d2)。在图2中,为了便于描述,有意地扩大了差异。

在这些差异中,由于自身臂重影响旋转方向,所以产生相当于弹性变形的量的差异。因此,基于机器人2的姿势(即臂的旋转角度),差异的大小改变。因此,不能简单地基于输入轴角度(θi)确定臂的实际旋转角度。根据输入轴角度(θi)和输出轴角度(θi)之差即扭转角度仅精确地提取偏心误差是困难的。

在这种情况下,为了抑制自身臂重的影响,可以考虑在组装机器人2之前的阶段测量关节部的偏心的方法。然而,考虑到以下因素,很难认为这种方法是实用的。即,例如,由于输出轴角度检测器8安装到臂侧,因此由于装配误差导致偏心本身可能偏移。另外,进行组装使得不发生组装误差是困难的,并且可能导致生产性的显著降低。

还可以考虑以下的方法:基于诸如减速器6的刚性和臂的刚性的设计特性来估计和校正自身臂重的影响。然而,在这种方法中,设计特性可能与实际特性不同。另外,难以识别每个单独的减速器6的特性。因此,认为校正值可能包含误差并且难以精确校正。

此外,偏心误差校正的对象是输出轴角度检测器8也是重要的。在机器人2的组装完成之后,能够确认输出轴角度检测器8是否偏心。即,在机器人2的组装完成之后、或者换言之机器人2中的关节处于承受自身臂重的状态之后,能够确定输出轴角度检测器8的偏心误差。在这种情况下,考虑到机器人2是相对较重的物体、以及损害机器人2的风险,例如,对放置在地板上的机器人臂进行调整,使得不受到臂的自重的情况不能在制造现场实际执行。

因此,根据本实施例,以下面的方式适当地校正由输出轴角度检测器8的偏心引起的偏心误差。以下,将描述校正设置在第一臂2c中的输出轴角度检测器8的偏心误差的示例。

然而,基于类似的构想,也能够在其他臂中执行校正。另外,关于输入轴角度检测器7,假设已经进行了调整。例如,调整包括偏心等的校正以及原点对齐。这里,关于输入轴角度检测器7的调整,通常可以用单独的电机5进行偏心校正。原点的定位可以通过使臂与止动件4等接触来进行。

图3示出了根据本实施例的偏心误差校正方法中的处理的整个流程。以下,以第一臂2c为例进行说明。另外,根据本实施例,控制器3的控制单元3a执行下述处理。

尽管在下文中详细描述,但是图3中的步骤s1至s3是在机器人2未进行实际动作的非动作期间中执行的处理。例如,非动作期间是执行教示动作时。步骤s4是在非动作期间或机器人2执行实际动作的动作期间中能够执行的处理。步骤s5是在动作期间中执行的处理。另外,可以省略步骤s4。

首先,控制器3获取每个测量位置处的检测角度,即,输入轴角度和输出轴角度(步骤s1)。根据本实施例,将包括自身臂重不影响旋转方向的位置的至少三个位置设定为测量位置。在这种情况下,自身臂重不影响旋转方向的位置还包括旋转方向完全不受影响的位置和认为对旋转方向的影响基本上可忽略不计的位置。

根据本实施例,总共三个位置被设定为测量位置。即,第一臂2c与止动件4接触的两个接触位置以及自身臂重的重心位于包括从旋转中心垂直向上的方向的预定范围内的单个垂直位置被设定。

在测量位置中,接触位置是第一臂2c从上方与第一止动件4a接触的位置(pm1;见图6)和第一臂2c从上方与第二止动件4b接触的位置(pm2;见图6)。此时,当第一臂2c旋转到接触位置时,第一臂2c可以通过被驱动的电机5旋转。或者,作业者可以手动旋转第一臂2c。

止动件4的位置以机械方式被规定。因此,接触位置是第一臂2c与止动件4接触的状态下的旋转角度(即,接触位置处的臂角度值)可基于机器人2的机械设计值被识别的位置。另外,止动件4在接触位置支撑自身臂重。因此,臂侧的自重不会在输出轴侧引起误差。因此,接触位置可被认为是能够仅提取由于输出轴角度检测器8中的偏心引起的偏心误差的位置。另外,接触位置对应于可以基于机械设计值估计臂的旋转角度的位置和自身臂重不影响旋转方向的位置。

另一方面,例如,当要校正的臂是第一臂2c时,如图4所示,垂直位置是第一臂2c侧的重心(g)在垂直线(lv)上或在包括垂直线(lv)的预定角度范围(α)内的位置(pg;见图6)。

此时,可以基于机器人2的姿势粗略地识别机器人2的重心(g)。或者,例如,如果每个臂伸直等,作业者可以在视觉上粗略地确定重心(g)。另外,当重心(g)移动到垂直位置时,可以执行控制,使得基于输入轴角度的反馈通过被驱动的电机5使重心(g)到达垂直位置。或者,如果确定重心(g),则作业者可以通过手动地旋转第一臂2c在视觉上将重心(g)设定为基本上位于垂直位置。

另外,角度范围(α)被设定为如下的范围:在该范围内,与弹性变形相当的量的差异被认为是近似相等的。当通过被驱动的电机5执行控制时,可以参照输入轴角度设定角度范围(α)。

或者,在作业者手动地旋转第一臂2c的情况下,可以在视觉上设定角度范围(α),使得重心(g)在第一臂2c的旋转中心(j)的垂直上方。即,垂直位置对应于自身臂重不影响旋转方向的位置和预计旋转方向基本上不受自身臂重影响的位置。

这里,在垂直位置,尽管垂直向下方向的力被施加到减速器6,但是预计旋转方向上的力不会被施加或可忽略不计。因此,在减速器6中不会产生相当于弹性变形量的位移。

然而,在垂直位置,与接触位置不同,存在影响输出轴角度的其他因素。当控制电机5并且臂以固定速度正向旋转或反向旋转时,输出轴以被输入轴拉动的方式旋转。因此,在输出轴侧和输入轴侧之间产生扭转。

因此,当臂正向旋转时检测到的输出轴角度与当臂反向旋转时检测到的输出轴角度之间出现差异。

因此,根据本实施例,如图5所示,如果垂直位置处的输入轴角度是θg,则检测到当第一臂2c正向旋转并且到达垂直位置时的输出轴角度(θf)和当第一臂以与正向旋转相同的速度反向旋转并且到达垂直位置时的输出轴角度(θb)。检测到的输出轴角度的平均值用作垂直位置处的输出轴角度(θout)。

当第一臂2c以相同的速度旋转时,在正向旋转和反向旋转期间产生相同大小的扭转。因此,由于取正向旋转和反向旋转期间输出轴角度的平均值,因此可以在消除扭转的影响的状态下确定校正值。也就是说,在垂直位置,可以基本上忽略在旋转方向上施加的力。

因此,通过输入轴角度除以减速器6的减速比得到的值可以用作臂角度值。另外,相当于齿隙的量的位移是在反方向上的。因此,可以在相当于齿隙的量的位移也被抵消的状态下确定臂角度值。

以这种方式,垂直位置可以说是可以仅提取由于输出轴角度检测器8的偏心引起的偏心误差的位置。由于输出轴角度尚未校正,因此精度略有降低。在此,可以确定相对于在正向旋转和反向旋转期间相同的输出轴角度的输入轴角度的平均值,并将其用作臂角度值。

在检测到每个测量位置处的输入轴角度和输出轴角度之后,如图3所示,控制器3确定误差曲线(le)(步骤s2)。此时,当输出轴角度检测器8不偏心时,输出轴角度应与臂角度值一致。在这种情况下,如图6中的虚拟线(lt)所示,臂角度值和输出轴角度具有成正比例的关系。

相反,当输出轴角度检测器8偏心时,输出轴角度从虚拟线(lt)偏移相当于由于偏心引起的误差的量。因此,该差异可以用作由于输出轴角度检测器8的偏心产生的偏心误差。在自身臂重影响旋转方向的位置处,无法估计减速器6中的扭转量。因此,不能应用上述的构想。根据输入轴角度确定臂角度值变得困难。

在此,每个测量位置处的臂角度值和输出轴角度在接触位置(pm1)处是(θa1,θo1),在接触位置(pm2)处是(θa2,θo2),在垂直位置(pg)处是(θag,θout)。

此时,如上所述,虚拟线(lt)和输出轴角度之差是偏心误差。因此,控制器3将图6所示的臂角度值和输出轴角度之间的关系转换为图7所示的臂角度值和偏心误差之间的关系。关于转换,由于可以通过如下所述的偏移量(b)进行调整,因此例如可以以将任意的测量位置用作原点或水平轴的零点的方式进行转换。

在此,输出轴角度检测器8的偏心误差已知为正弦波的形式,在正弦波中单个周期为臂的单次旋转。其原因在于,当输出轴角度检测器8的旋转中心(jo)从第一臂2c的旋转中心(j)偏移时,光学检测器的检测位置随着第一臂2c的旋转而变化,并且当第一臂2a进行单次旋转时返回到相同位置。

因此,表示臂角度值(θa)与偏心误差(θe)之间的关系的误差曲线(le)可以用图7所示的通过每个测量位置的正弦波来近似。误差曲线例如可以通过下面的表达式(1)来确定。

这里,表达式(1)中存在三个未知数,即幅度(a)、相位(φ)和偏移量(b)。如上所述,确定三个测量位置中的每一个测量位置处的臂角度值(θa)和偏心误差(θe)。由于每个测量位置处的臂角度值(θa)和偏心误差(θe)被代入表达式(1)中,未知数即幅度(a)、相位(φ)和偏移量(b)可以被识别。由此可以确定误差曲线(le)。

误差曲线表示臂角度值(θa)与偏心误差(θe)之间的关系。因此,为了确定机器人2的动作期间的偏心误差,需要根据在动作期间能够检测到的任一检测角度识别臂角度值。由于自身臂重的影响,难以基于输入轴角度识别臂角度值。

根据本实施例,基于输出轴角度识别臂角度值(步骤s3)。如上所述,表达式(1)中的偏心误差(θe)是假设不存在偏心时输出轴角度(θo)和臂角度值(θa)之差。因此,其关系可以通过下面的表达式(2)表示。

θo=θa+θe(2)

当从表达式(1)和表达式(2)中消除偏心误差(θe)时,如下面的表达式(3)来确定输出轴角度(θe)与臂角度值(θa)之间的关系。表达式(3)对应于使用误差曲线将输出轴角度和臂角度值相关联的校正式。

如表达式(3)清楚地所示,当检测到输出轴角度时,可以确定与输出轴角度相对应的臂角度值(θa)。然后,当确定出臂角度值(θa)时,可以基于表达式(1)确定用于校正偏心误差(即由输出轴角度检测器8的偏心引起的误差)的校正值。

因此,当在机器人2的动作期间检测到输出轴角度时,可以准确地确定检测到的输出轴角度中包括的偏心误差。另外,由于偏心误差被用作校正值,因此可以准确地校正偏心误差。一目了然,从表达式(3)可以看出,臂角度值的多个候选被确定为解。然而,在实际的机器人2中,预计偏心误差的幅度非常小(可忽略不计)。因此,实际上,对多个解的考虑可认为是不必要的。

在此,表达式(3)是非线性的。因此,难以直接确定臂角度值(θa)。当在机器人2的动作期间执行计算时,计算负荷可能增加,或者处理速度可能降低。

如图3所示,控制器3执行校正准备(步骤s4)。在校正准备中,控制器3执行诸如生成参照表或近似公式的处理。参照表使得臂角度值(θa)或校正值本身能够被直接识别,或者通过插值等间接识别。近似式用能够在机器人2的动作期间没有延迟地确定臂角度值(θa)或校正值本身的程度的例如n阶多项式近似表达式(3)。

即,在步骤s4,控制器3执行用于有效地确定校正值的初步准备。参照表可以通过用虚拟值代入确定多个值并在所确定的值之间插补直线或曲线来生成。除了上述的参照表和n阶多项式之外的方法可以用于校正准备。另外,可以根据表达式(3)直接确定臂角度值(θa)。因此,可以省略步骤s4。可以在机器人2的动作期间基于表达式(1)和表达式(3)来确定臂角度值(θa)和校正值。

当完成或省略校正准备时,控制器3主要在机器人2的动作期间确定校正值并校正偏心误差(步骤s5)。具体地,例如,在机器人2的动作期间,控制器3相应地检测随着第一臂2c的旋转而改变的输出轴角度。

然后,控制器3使用上述的参照表或n阶多项式间接地或使用表达式(1)和表达式(3)直接地确定与检测到的输出轴角度或校正值本身相对应的臂角度值。然后,控制器3使用与所确定的臂角度值相对应的偏心误差作为校正值来校正输出轴角度中包含的偏心误差。

以这种方式,根据本实施例,基于在至少三个测量位置检测到的偏心误差来校正由于输出轴角度检测器8的偏心引起的偏心误差,所述至少三个测量位置对应于可以基于机械设计值估计臂的旋转角度的位置、臂的自重不影响旋转方向的位置以及预计旋转方向基本上不受臂的自重影响的位置中的至少一个或多个。

根据上述实施例,可以得到以下效果。

根据该实施例,在臂的自重不影响旋转方向的至少三个测量位置检测输出轴角度。将每个测量位置处的臂角度值与在每个测量位置处检测到的输出轴角度之差确定为偏心误差。然后,在每个测量位置处的臂角度值和偏心误差用正弦波近似,在正弦波中单个周期是臂的单次旋转。因此,确定表示臂角度值和偏心误差之间的关系的误差曲线。使用误差曲线确定将输出轴角度和臂角度值相关联的校正式。

接下来,当臂旋转时,基于校正式确定与检测到的输出轴角度相对应的臂角度值。基于误差曲线将与所确定的臂角度值相对应的偏心误差确定为校正值。偏心误差被校正。此时,从在每个测量位置处检测到的输出轴角度抑制或消除臂的自重的影响。因此,如果输出轴角度和臂角度值不同,则该差异被认为是由于输出轴角度检测器8的偏心而产生的偏心误差。

另外,已知由于输出轴角度检测器8的偏心引起的偏心误差形成正弦波,在正弦波中单个周期是臂的单次旋转。因此,作为在每个测量位置处的臂角度值和偏心误差用单个周期是臂的单次旋转的正弦波近似的结果,可以确定表示臂角度值与偏心误差之间的关系的误差曲线。

此时,所确定的误差曲线表示臂角度值和偏心误差之间的关系。因此,为了能够在机器人2的动作期间校正偏心误差,定义将输出轴角度和臂角度值相关联的校正式。基于在机器人2的动作期间检测到的输出轴角度,确定与输出轴角度相对应的臂角度值。使用与臂角度值相对应的校正值校正偏心误差。因此,能够精确地提取与臂角度值相对应的偏心误差。

在这种情况下,由于基于不受齿隙、弹性变形、减速器6中的角传动误差等影响的输出轴角度确定校正值,所以能够精确地确定校正值。另外,由于可以在机器人2的动作期间确定输出轴角度,所以可以在机器人2的动作期间进行校正。因此,能够适当地校正由于角度检测器的偏心引起的偏心误差。

根据该实施例,将臂与机械地限制臂的旋转的止动件4接触的接触位置设定为测量位置中的至少一个。止动件4机械地附接到机器人2。因此,止动件4的位置被固定。止动件4和臂的旋转中心之间的机械位置关系也被指定。此外,止动件4在接触位置支撑臂侧的自重。因此,臂侧的自重不会引起检测角度的误差。

因此,当臂处于接触位置时,可以基于止动件4的位置、臂的外部尺寸等以机械方式识别臂角度值。因此,接触位置被设定为测量位置的结果,能够仅提取由于输出轴角度检测器8的偏心引起的偏心误差。

根据该实施例,臂侧的重心被定位在包括从臂的旋转中心垂直向上的方向的范围内的垂直位置被设定为测量位置中的至少一个。当臂位于垂直位置时,旋转方向上的力不会施加到减速器6。因此,减速器6处于不发生弹性变形的状态、或者由于施加在旋转方向上的力最小而可忽略弹性变形的状态。

因此,在垂直位置,输入轴和输出轴被认为处于基本上一致的状态。在这种情况下,认为可以根据检测到的输入轴角度高精度地确定臂角度值。因此,作为垂直位置被设定为测量位置的结果,能够仅提取由输出轴角度检测器8的偏心引起的偏心误差。另外,在垂直位置,例如,由于臂伸直时臂的方向在基本上垂直的方向上,因此也可以以机械方式识别臂角度值。

根据该实施例,当将臂正向旋转时检测到的垂直位置处的输出轴角度和当臂以与正向旋转相同的速度反向旋转时的垂直位置处的输出轴角度的平均值被设定为垂直位置处的输出轴角度。当臂以相同的速度旋转时,在正向旋转和反向旋转期间产生相同大小的扭转。因此,作为正向旋转和反向旋转期间的输出轴角度的平均值被设定为输出轴角度的结果,能够确定与扭转的影响已被消除的输出轴角度相对应的校正值。能够提高校正值的精度。

包括执行上述处理的控制单元3a的机器人系统1也能够实现类似的效果。另外,在实际的机器人2中,止动件4的位置通常不作微小地改变。因此,自身臂重没有影响的姿势在现实中是有限的。因此,通过确定三个测量位置处的偏心误差,并且基于偏心误差表现出接近正弦波的变化的特性产生误差曲线,能够得到向实际机器人2的实际应用。

输出轴角度检测器8的偏心误差可以在机器人2组装完成之后确定,或者换句话说,在机器人2中的关节处于承受臂的自重的状态之后确定。然而,在上述方法中,能够关于已经完成组装的机器人2确定误差曲线并且能够确定校正值。因此,优点在于该方法能够在机器人2的制造现场中实际使用。此外,还能够在机器人2的安装现场确定误差曲线并且能够确定校正值。因此,本公开的方法非常方便。

(第二实施例)

下面将参照图8至图10说明第二实施例。根据第二实施例,将描述对实际机器人2有效的几种方法。然而,机器人2的结构和处理流程与根据第一实施例的结构和处理流程相同。因此,根据需要,还将参照图1至图7进行说明。此外,在下文中,对用于提高垂直位置处的输出轴角度的检测精度的两种方法以及用于增加接触位置并提高精度的一种方法分别进行说明。

<用于提高垂直位置处的输出轴角度的检测精度的方法1>

如根据上述的第一实施例所述,应变波传动装置可用作机器人2中的减速器6。已知在应变波传动装置的实际驱动期间明显地产生角传动误差。在此,角传动误差是由输入轴角度除以减速器6的减速比确定出的输出轴角度与理论值不同而产生的误差。已知,相对于输出轴侧的单次旋转,在减速比的整数倍的频率处产生角传动误差。

因此,当在臂的重心位于垂直线(lv)上的垂直位置的附近控制输入轴角度并且以固定的速度执行正向旋转和反向旋转时,如图8所示,除了输出轴被输入轴拉动之外,由于角传动误差,细微振动叠加在输出轴角度上。在图8中,将正向旋转期间角传动误差被叠加的状态下检测到的输出轴角度的示例示作正向旋转检测角度。将反向旋转期间角传动误差被叠加的状态下检测到的输出轴角度的示例示作反向旋转检测角度。

因此,即使当臂正向旋转时,由于角传动误差,可检测到不同的值作为在输入轴角度为θg的垂直位置处检测到的输出轴角度。当臂反向旋转时也同样适用。因此,当通过在垂直位置附近正向旋转或反向旋转的臂检测到输出轴角度时,产生与角传动误差相当的量的差异。校正值的精度可能降低。

因此,根据本实施例,确定正向旋转近似线(lf)和反向旋转近似线(lb)。正向旋转近似线(lf)近似正向旋转检测角度(即当臂正向旋转时检测到的多个输入轴角度和输出轴角度)之间的关系。反向旋转近似线(lb)近似反向旋转检测角度(即当臂以与正向旋转相同的速度反向旋转时检测到的多个输入轴角度和输出轴角度)之间的关系。

根据正向旋转近似线(lf)确定的垂直位置(输入轴角度=θg)处的输出轴角度(θf)和根据反向旋转近似线(lb)确定的垂直位置处的输出轴角度(θb)的平均值可以设定为垂直位置处的输出轴角度(θout)。或者,可以确定作为正向旋转近似线(lf)和反向旋转近似线(lb)的平均的平均值近似线(lout)。可以将垂直位置处的平均值近似线(lout)上的值设定为输出轴角度(θout)。

作为以这种方式基于正向旋转近似线(lf)和反向旋转近似线(lb)确定输出轴角度的结果,能够抑制角传动误差的影响。

此时,例如,用于确定近似线的垂直位置附近的范围可以基于输入轴角度设定在例如θg-x≤附近的范围≤θg+x的角度范围。

在这种情况下,当x过小时,角传动误差对近似线本身的影响很大。不能得到使用近似线的有利效果。因此,需要将x设定为至少等于或大于臂的单次旋转除以减速比得到的角度。相反,当x过大时,偏心的影响变得显著。

因此,考虑到角传动误差的影响和偏心的影响,优选地以非常均衡的方式设定x的大小。在这种情况下,根据第一实施例描述的用作垂直位置的角度范围(α)也可以被设定为垂直位置附近的范围。另外,关于近似线,可以用曲线而不是直线来进行近似。

<用于提高垂直位置处的输出轴角度的检测精度的方法2>

如上所述,当应变波传动装置用作减速器6时,由于角传动误差,输出轴角度的检测值可能产生差异。另外,即使臂以固定速度正向旋转和反向旋转,也可能发生由输入轴拉动输出轴引起的差异。

另外,当在垂直位置附近设定的检测范围内重复正向旋转和反向旋转时,如图9所示,当臂达到检测范围的上限或下限并且旋转方向相反时,输出轴表现出输出轴因摩擦而停止直到与输入轴之间的扭转变为相反的方向的行为。然后,当扭转方向改变时,输出轴被输入轴拉动并开始运动。

因此,作为检测范围的上限和下限之间的正向旋转和反向旋转被重复多次并且取此时确定的输出轴角度的平均值的结果,可以确定形成图9中大致菱形形状的输出轴角度的轨迹的中心位置(即垂直位置)处的输出轴角度。

然而,当停止的臂最初旋转到检测范围的上限或下限时,如图9所示,该初始动作期间的行为与上述不同。因此,为了提高精度,优选排除在初始旋转期间得到的输出轴角度。

在此,在臂暂时旋转到检测范围的上限和下限中的任一者之后,使臂从上限旋转到下限的同时在每个预定角度处检测输出轴角度的处理以及使臂以相同的速度从下限旋转到上限的同时在每个预定角度检测输出轴角度的处理被执行相同的次数。将在处理中检测到的多个输出轴角度的平均值设定为垂直位置处的输出轴角度。因此,可以在角传动误差的影响被抑制的状态下确定输出轴角度。

<通过增加测量位置来提高精度的方法>

给出了在根据第一实施例的机器人2中止动件4设置在垂直位置的正向旋转侧和反向旋转侧的示例。然而,也可以假设根据机器人2的使用方式臂不能旋转到垂直位置的情况。

因此,如图10所示,例如,在机器人2中设置多个螺纹安装孔(tappedattachmentholes)41。止动件4作为夹具安装到安装孔41。因此,机器人2可以设置成使得可以增加自身臂重没有影响的接触位置的数量。

因此,由于接触位置的数量增加,即使在止动件4设置在不夹住垂直位置的位置或者臂不能旋转到垂直位置的情况下,也可以设置至少三个接触位置。

安装孔41的位置以机械方式确定。因此,可以在臂与止动件4接触的接触位置处确定正确的臂角度值。在这种情况下,仅在执行用于确定误差曲线的处理时仅需要对安装在安装孔41的止动件4进行安装。由于止动件4随后被移除,因此可以防止在机器人2的动作期间被止动件4干扰。限制臂的运动范围的止动件4可以保持原样安装。

此外,由于设置四个或更多接触位置,所以能够在测量误差的影响被进一步抑制的状态下确定误差曲线。能够更准确地确定校正值。在这种情况下,毋庸多言,也可以使用垂直位置。

包括执行上述处理的控制单元3a的机器人系统1也能够实现类似的效果。

(第三实施例)

下面将描述第三实施例。根据第三实施例,将描述用于简化用于确定校正值的计算的方法。

根据第一实施例描述以下方法。即,使用表达式(3)确定与输出轴角度(θo)对应的臂角度值(θa)。然后,根据表达式(1)确定所确定的臂角度值(θa)处的校正值。然而,如上所述,当根据表达式(3)直接确定臂角度值(θa)时,计算是困难的。计算负荷的增加成为一个问题。

因此,根据本实施例,校正式中包含的臂角度值的函数(即,在下面表示为误差项的表达式(3)的右侧的第二项)用输入轴角度除以减速器6的减速比得到的臂角度近似。由此简化了计算。在下文中,为了方便,下面的表达式(3)右侧的第二项称为误差项。

具体而言,将误差项中包含的臂角度值(θa)设定为输入轴角度(θi)除以减速器6的减速比得到的臂角度(θai)。因此,误差项近似成例如下面的近似项。

然后,使用近似项将表达式(3)近似成例如下面的表达式(4)。

在该表达式(4)的情况下,尽管最初应使用臂角度值(θa)进行计算,但是使用臂角度(θai)进行近似。因此,根据臂的旋转角度,可能发生包含由自身臂重的影响引起的误差。即使在最终确定的臂角度值(θa)中也可能产生略微的误差。

然而,尽管偏心误差以单个周期是臂的单次旋转的正弦波的形式变化,但是在实际机器人2中臂角度值(θa)和臂角度(θai)之差非常小。表达式(3)中的右侧和表达式(4)中的右侧可以被认为基本相等。因此,即使当如表达式(4)中那样使用臂角度(θai)时,也可以以与表达式(3)大致相同程度的精度校正偏心误差。

也就是说,当确定校正值时,臂角度值(θa)用输入轴角度除以减速器6的减速比得到的臂角度(θai)近似。因此,如表达式(4)所示,臂角度值(θa)可以通过四个基本算术运算和三角函数确定。因此,可以显著地降低计算负荷。

包括执行上述处理的控制单元3a的机器人系统1也能够实现类似的效果。

(其他实施例)

本公开不仅限于根据上述的实施例作为示例给出的结构。在不脱离本发明的精神的情况下,可以进行各种修改、扩展和组合。

根据实施例,给出了控制器3执行图3所示的处理的示例。然而,步骤s1至s4的处理可以通过示教器或高阶控制设备(未示出)执行。

根据第一实施例给出了使用接触位置和垂直位置执行校正的示例。然而,由于自身臂重的重心(g)根据机器人2的姿势而变化,在图3中,例如,可以认为例如在机器人2的臂相对于垂直线(lv)对称的状态下可能存在输入轴角度不同的多个垂直位置。另外,如根据第二实施例所述,也可以设置多个接触位置。

因此,可以使用单个接触位置和两个垂直位置来执行校正。或者,可以使用多个接触位置和多个垂直位置来执行校正。此外,可以仅使用三个或更多接触位置或仅使用三个或更多垂直位置来执行校正。

根据实施例的接触位置也是能够以机械方式确定臂角度值的位置。然而,由于止动件4支撑自身臂重,所以接触位置也是旋转方向上的力不施加到减速器6并且不会发生相当于弹性变形的量的位移的位置。因此,例如,如果在臂被按压的一侧不发生弹性变形,例如臂被手动旋转而位于接触位置时,可以认为未产生输入轴和输出轴之间的扭转或扭转很小。因此,每个测量位置处的臂角度值也可以根据输入轴角度确定。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1