首页 / 机器人控制器

机器人控制器实质审查 发明

技术领域

[0001] 本发明涉及一种机器人控制器。

相关背景技术

[0002] 以往,已知有具备能够把持工件的手部的机器人(例如专利文献1)。
[0003] 专利文献1:日本特开2017‑36924号公报

具体实施方式

[0021] 以下,参照附图对本发明的示例性的实施方式进行说明。
[0022] <1.通过3D打印机制造的夹具>
[0023] 由于3D打印机可以使用树脂等容易地形成具有复杂结构的立体模型而不需要金属磨具,所以它们被应用于各种领域。在用于组装产品的工厂中,使用在生产产品时被辅助性地使用的器具即夹具。夹具是为了保持工件而使用的。通过制造与工件匹配的夹具,能够将工件固定在容易进行作业的位置或角度。
[0024] 有时为了制造夹具而使用3D打印机。图1是示意性地表示通过3D打印机制造的夹具的一例的图。3D打印机以从下方层叠材料的方式形成夹具,因此如图1所示那样制造的夹具J具有在层叠方向Dj上层叠材料的结构。此外,在图1中,图示了由夹具J保持的工件W。
[0025] 但是,如图2所示,使用3D打印机制造的夹具具有相对于层叠方向Dj的负荷(LA等)强度强,但相对于与层叠方向Dj正交的方向的负荷(LB、LC等)强度弱的特征。
[0026] 在将夹具配置于具有能够把持工件的结构的机器人的作业环境中的情况下,当机器人与工件接触时,对保持工件的夹具施加负荷。在通过3D打印机制造夹具的情况下,因施加负荷的方向,有可能对夹具带来不良影响。因此,为了抑制这种对夹具的不良影响,要求适当地控制机器人。
[0027] <2.机器人系统>
[0028] 图3是示出本发明的示例的实施方式的机器人系统10的结构的图。机器人系统10具有机器人1、机器人控制器2、示教器3、外部PC(个人计算机)4。
[0029] 如图4中示意性地示出的一例那样,机器人1是工业用的多关节机器人(机械臂)。机器人1在各关节轴上搭载有电动机,在前端部具有手部1A。手部1A构成为把持工件。此外,手部1A可以是通过手指把持工件的结构,也可以是通过吸附来把持工件的结构。通过电动机的驱动,手部1A被控制为预定的位置和姿势。
[0030] 另外,机器人1在各关节部具有转矩传感器1B。转矩传感器1B构成为检测施加于各关节轴的转矩,例如由应变仪构成。通过检测各关节轴的转矩并综合评价,能够推测手部1A的把持状态。此外,为了掌握手部1A的把持状态,也可以使用设置在手部1A的手腕部的力觉传感器或设置在手部1A的指尖的触觉传感器来代替转矩传感器。
[0031] 机器人控制器2是用于控制机器人1的装置,具有控制部21和存储部22。机器人控制器2例如由PC构成。控制部21使用存储在存储部22中的机器人程序22A、示教点数据22B以及控制程序22C来执行各种控制。
[0032] 在机器人控制器2上连接有被称为示教器3的操作装置。使用示教器3,能够在机器人控制器2中登记机器人1的位置姿势。例如,通过示教器3中的操作来控制机器人1的关节,如果在期望的位置姿势时在示教器3中进行登记操作,则此时的位置姿势被登记在机器人控制器2中。将这样的登记作业称为示教,并将所登记的位置姿势称为示教点。将示教点作为示教点数据22B登记在存储部22中。此外,示教点是机器人1的前端部(手部1A)的位置姿势信息。
[0033] 机器人程序22A例如由BASIC或Python等编程语言构成。在外部PC4中,通过对使用了示教点数据22B的动作指令进行编程,可以生成机器人程序22A。控制程序22C是进行用于实现由机器人程序22A指令的动作的控制的程序。控制部21所包含的把持控制部21A执行与机器人1对工件的把持相关的控制。把持控制部21A按照控制程序22C执行控制。
[0034] <3.机器人控制>
[0035] 接着,参照图5所示的流程图,对机器人控制器2的控制进行说明。图5所示的控制由把持控制部21A执行,表示手部1A到达用于把持工件的目标地点为止的控制。
[0036] 在此,在图6中示意性地示出了机器人1的作业环境的一例,在该作业环境中,配置多个使用3D打印机制造的夹具J(J1、J2)。此外,本发明也能够应用于配置单个夹具J的作业环境。
[0037] 若开始图5所示的处理,则首先在步骤S1中,把持控制部21A取得机器人1的前端部(手部1A)的当前位置。此外,如图6所示,手部1A的位置等各种位置坐标在固定坐标系(X,Y,Z)中被确定。
[0038] 接着,进入步骤S2,把持控制部21A计算用于移动到目标地点(目标坐标)的、机器人一个控制周期量的微小动作。然后,在步骤S3中,把持控制部21A判定微小动作后的手部1A的位置是否在夹具J的预定范围内。在此,使用图7对夹具J的预定范围的一个例子进行说明。
[0039] 图7是表示对夹具J预先设定的预定范围S的图。图7所示的预定范围S是以中心Cs为中心的球体的空间。预定范围S的半径为表示夹具J的层叠方向的层叠方向向量Vj的长度。预定范围S包围夹具J的整体。此外,预定范围S也可以包围夹具J的一部分。通过将中心Cs的位置和预定范围S的半径预先存储在存储部22中,能够设定夹具J的预定范围S。此外,如图6所示,在设定多个夹具J(J1、J2)的情况下,通过对每个夹具J设定中心Cs和半径,对每个夹具J设定预定范围S(S1、S2)。
[0040] 此外,夹具J的预定范围不限于球体,例如也可以是立方体等。
[0041] 在步骤S3中夹具J的预定范围S如上所述为球体的情况下,通过手部1A的微小动作后的位置与中心Cs的位置之间的距离是否为所设定的半径以下,能够判定手部1A是否在夹具J的预定范围S内。由此,能够判定手部1A是否位于接近夹具J的位置。此外,在步骤S3中,对多个夹具J中的一个进行判定。
[0042] 在步骤S3中,在夹具J的预定范围内的情况下(步骤S3的“是”),进入步骤S4。在步骤S4中,如图8所示,把持控制部21A计算夹具J的层叠方向向量Vj与手部1A的微小动作方向所成的角度θ。在0度至90度的范围内计算角度θ。角度θ越接近90度,表示微小动作方向是夹具J的强度越弱的方向。在此,表示层叠方向Dj的层叠方向向量Vj按每个夹具J被预先存储在存储部22中(图6的Vj1、Vj2)。
[0043] 接着,在步骤S5中,如图8所示,把持控制部21A将微小动作的移动量M分解为夹具J的层叠方向Dj的成分M1和与其正交的方向的成分M2。
[0044] 然后,进入步骤S6,把持控制部21A使上述正交的方向的成分(移动量成分)M2减少。在此,上述计算出的角度θ越接近90度,减少量越大。例如,设为与角度θ成比例的减少量。
[0045] 接着,进入步骤S7,把持控制部21A根据上述正交的方向的减少后的成分和层叠方向Dj的成分来更新微小动作。由此,机器人1控制周期中的微小动作的移动量减少,手部1A的动作速度减少。因此,在手部1A接近夹具J的情况下,在手部1A与工件接触之前预先使手部1A的动作速度减少,即使在手部1A与工件接触的情况下,也能够抑制向夹具J的强度弱的方向的负荷。此外,在更新后的微小动作中的移动量由于移动量的衰减而比最低移动量小的情况下,将更新后的微小动作中的移动量设为最低移动量。
[0046] 此外,也可以根据在步骤S4中计算出的角度θ是否为预定的角度阈值以上,来对是否执行步骤S6中的减少处理进行切换。在该情况下,在步骤S6中,将减少量设为固定值。
[0047] 在步骤S7之后,在步骤S8中,把持控制部21A执行负荷检测阈值的降低处理。负荷检测阈值是用于检测施加于手部1A的过负荷的阈值,例如是设置于机器人1的转矩传感器1B的转矩检测阈值。在这种情况下,在步骤S8中,转矩检测阈值从初始值降低。该情况下的降低量例如是与在步骤S4中计算出的角度θ成比例的降低量。或者,也可以根据角度θ是否为预定的角度阈值以上来对是否使转矩检测阈值降低固定值进行切换。
[0048] 此外,负荷检测阈值也可以是根据由转矩传感器1B检测出的转矩推测出的负荷的阈值。另外,转矩检测阈值等负荷检测阈值的初始值也可以针对每个夹具J而不同。由3D打印机制造的夹具J的强度根据材质(ABS、PLA等)、或内侧的填充率、填充方式而变化,因此根据夹具J的强度设定上初始值。具体而言,强度越强,使初始值越大即可。
[0049] 另一方面,在步骤S3中在夹具J的预定范围S外的情况下(步骤S3的“否”),进入步骤S9。
[0050] 在步骤S8(或步骤S3)之后,进入步骤S9,把持控制部21A判定是否对所有的夹具J进行了处理。在没有对所有的夹具J进行处理的情况下(步骤S9的“否”),返回步骤S3。在此,在处于夹具J的预定范围S内的情况下(步骤S3的“是”),执行步骤S4以后的处理。
[0051] 例如,如图9所示,在夹具J1的预定范围S1和夹具J2的预定范围S2在重复区域SA重叠的情况下,在手部1A位于重复区域SA的情况下,对夹具J1、J2分别执行步骤S4以后的处理。
[0052] 在对所有的夹具J完成了处理的情况下(步骤S9的“是”),进入步骤S10,把持控制部21A执行手部1A的微小动作。然后,在步骤S11中,把持控制部21A判定手部1A是否到达了目标地点。在未到达的情况下(步骤S11的“否”),返回步骤S1。在该情况下,在步骤S2中计算出的微小动作的移动量与在步骤S10中执行的微小动作的移动量相同。在到达的情况下(步骤11的“是”),图5的处理结束。
[0053] 此外,把持控制部21A与图5的处理并行地执行使用了负荷检测阈值的控制。具体地说,例如,判定手部1A的当前位置位于多个夹具J中的哪一个夹具的预定范围S内,针对手部1A所在的预定范围S计算中心Cs的位置与手部1A的位置之间的距离,对关于距离最短的夹具J的负荷检测阈值与当前的负荷检测值(例如转矩传感器1B的转矩检测值)进行比较。作为比较结果,在负荷检测值超过负荷检测阈值的情况下,使机器人1的动作停止。在步骤S8中负荷检测阈值降低的情况下,机器人1的动作容易停止,能够抑制过负荷对夹具J的不良影响。
[0054] 另外,图5的处理在产品的批量生产时的机器人1的工作时执行,但也可以在示教后的动作确认时执行。由此,例如在确认了动作速度的减少的情况下,也能够以变更手部1A的轨迹的方式再次进行示教。
[0055] 换言之,机器人控制器2是用于控制能够把持工件的机器人1的机器人控制器,具备:存储部22,其存储层叠方向向量信息Vj,该层叠方向向量信息Vj表示用于保持工件的夹具J所具有的层叠构造的层叠方向Dj;把持控制部21A,其在通过机器人1把持工件时,基于层叠方向向量信息Vj执行与机器人1的把持相关的控制。
[0056] 由此,在利用机器人1把持工件时,难以向层叠构造的夹具J的强度弱的方向施加过负荷,能够抑制对夹具J的不良影响。另外,机器人程序22A本身不需要特别有意识地进行调整。
[0057] 另外,设定包围夹具J的至少一部分的预定范围S,把持控制部21A判断机器人1中的预定位置是否包含在预定范围S内,在包含的情况下执行与机器人1的把持相关的控制。由此,在机器人1接近夹具J的情况下,能够自动地执行控制。
[0058] 另外,预定范围S是以层叠方向向量信息Vj的向量长度为半径的球体。由此,容易确定预定范围。
[0059] 另外,把持控制部21A在机器人1中的预定位置包含在预定范围S内的情况下,计算层叠方向向量信息的向量Vj与机器人1的动作方向所成的角度θ,根据计算结果使机器人1的动作速度减小。
[0060] 由此,在机器人1接近夹具J的情况下,根据机器人1的动作方向与夹具J的强度弱的方向的关系,在机器人1与工件接触之前预先使机器人1的移动速度减小,因此能够抑制对夹具的不良影响。
[0061] 另外,把持控制部21A也可以根据上述计算结果使动作速度的减小量连续地变化。在该情况下,能够更细致地执行动作速度的减小控制。
[0062] 另外,把持控制部21A也可以根据上述计算结果与角度阈值之间的关系来对是否减小动作速度进行切换。由此,能够抑制运算负荷。
[0063] 另外,在图5的处理中,把持控制部21A也可以除了计算出的角度θ之外,还根据预定范围S的中心Cs与微小动作后的位置之间的距离来改变步骤S6中的减小量。具体而言,上述距离越短,使上述减小量越大。即,把持控制部21A根据上述计算结果和机器人1与夹具J之间的距离来减小动作速度。由此,能够更细致地执行动作速度的减小控制。
[0064] 此外,如上所述,通过3D打印机制造的夹具J的强度根据材料、填充率、填充方法等而变化。因此,也可以是,机器人控制器2从3D打印机取得与这些强度相关的参数,把持控制部21A在图5的处理中,除了计算出的角度θ以外,还根据上述取得的参数来改变步骤S6中的减小量。具体地说,强度越强,减小量越小。即,把持控制部21A基于与夹具J的强度相关的参数来减小动作速度。由此,能够更细致地执行动作速度的减小控制。
[0065] 另外,把持控制部21A在机器人1中的预定位置包含在预定范围S内的情况下,计算层叠方向向量信息的向量Vj与机器人1的动作方向所成的角度θ,根据计算结果,降低用于检测对机器人1施加的过负荷的负荷检测阈值。
[0066] 由此,在机器人1接近夹具J的情况下,根据机器人1的动作方向与夹具的弱方向的关系,在机器人1与工件接触之前预先使负荷检测阈值降低,因此容易进行过负荷的情况下的动作(例如停止),能够抑制对夹具J的不良影响。
[0067] 另外,把持控制部21A也可以根据上述计算结果使负荷检测阈值的降低量连续地变化。由此,能够更细致地控制负荷检测阈值的降低。
[0068] 另外,把持控制部21A也可以根据上述计算结果与角度阈值的关系,对是否使负荷检测阈值降低进行切换。由此,能够抑制运算负荷。
[0069] 另外,在图5的处理中,把持控制部21A也可以除了计算出的角度θ以外,还根据预定范围S的中心Cs与微小动作后的位置之间的距离来改变步骤S8中的降低量。具体地说,上述距离越短,上述降低量越大。即,把持控制部21A根据上述计算结果和机器人1与夹具J之间的距离来降低负荷检测阈值。由此,能够更细致地执行负荷检测阈值的控制。
[0070] 另外,在图5的处理中,把持控制部21A也可以除了计算出的角度θ以外,还根据与上述取得的夹具J的强度相关的参数,使步骤S8中的降低量变化。具体而言,强度越强,降低量越小。即,把持控制部21A基于与夹具J的强度相关的参数来降低负荷检测阈值。由此,能够更细致地执行负荷检测阈值的控制。
[0071] 另外,把持控制部21A按多个夹具J中的每一个判断机器人1的预定位置是否包含在预定范围S内。由此,能够应对配置多个具有层叠构造的夹具的情况。
[0072] 另外,夹具J是通过3D打印机形成层叠构造的夹具。在少量多品种生产等中需要根据对象物而形状各不相同的夹具的情况下,通过3D打印机制造夹具是高效的,在这样的状况下本发明是有效的。
[0073] <4.机器人控制的变形例>
[0074] 另外,作为检测到负荷的情况下的控制,也可以执行如下那样的控制。例如在基于转矩传感器1B的检测而检测出施加于手部1A的负荷的情况下,如图10所示,把持控制部21A将检测出的负荷的向量L分解为层叠方向向量Vj的方向的成分L1和与该方向正交的方向的成分L2。把持控制部21A在成分L2的大小为固定值以上的情况下,使机器人1的动作紧急停止。此外,在该情况下,也可以使机器人1在负荷的向量L的方向上移动手部1A。由此,能够使手部1A向包含与夹具J的强度弱且负荷成分增加的方向(与L2的方向相反的方向)相反的方向的成分的方向移动。在这样进行手部1A的反转动作之后,使机器人1的动作停止。由此,能够防止在机器人1停止后对夹具J持续施加负荷。
[0075] 即,把持控制部21A在检测出施加于机器人1的负荷的情况下,基于将负荷的向量分解为层叠方向向量信息的向量方向的成分L1和与该向量方向正交的方向的成分时的上述正交方向的成分L2的大小,控制机器人1的动作。由此,在对机器人1施加负荷的情况下,能够在夹具J中的弱方向的负荷成分大的情况下执行适当的动作控制(停止或反转动作)。
[0076] <5.对操作者的通知控制>
[0077] 在手部1A是例如图11所示的平行卡盘型手部的情况下,在闭合作为卡盘而构成的把持部11的情况下,无法调整对工件施加的力的增减,因此,在把持部11闭合的瞬间对夹具J施加负荷,有可能对夹具J产生不良影响。因此,把持控制部21A基于手部1A的姿势来计算把持部11的开闭方向Doc,并计算开闭方向Doc与层叠向量Vj所成的角度。在计算出的角度接近90度的情况下,把持控制部21A向操作者通知警报。通知例如通过声音或显示等进行。由此,促使操作者事先确认闭合卡盘是否没有问题。
[0078] 即,机器人1具备具有能够开闭的把持部11的手部1A,把持控制部21A基于手部1A的姿势计算把持部11的开闭方向Doc,计算开闭方向Doc与层叠方向向量信息的向量Vj所成的角度,并基于该角度的计算结果执行通知控制。由此,在把持部11的开闭方向Doc接近夹具J的弱的方向的情况下,能够通知操作者。
[0079] <6.其它>
[0080] 以上,说明了本发明的实施方式。另外,本发明的范围不限定于上述实施方式。本发明可以在不脱离发明主旨的范围内对上述实施方式进行各种变更来实施。另外,在上述实施方式中说明的事项在不产生矛盾的范围内能够适当地任意组合。
[0081] <7.附记>
[0082] 如上所述,本发明的一个方式的机器人控制器(2)是用于控制能够把持工件的机器人(1)的机器人控制器,该机器人控制器具备:存储部(22),其存储表示用于保持所述工件的夹具(J)所具有的层叠构造的层叠方向的层叠方向向量信息(Vj);把持控制部(21A),其在通过所述机器人把持所述工件时,基于所述层叠方向向量信息执行与所述机器人的把持相关的控制(第一结构)
[0083] 另外,在上述第一结构中,也可以构成为,设定包围所述夹具的至少一部分的预定范围(S),所述把持控制部判断所述机器人中的预定位置是否包含在所述预定范围内,在包含的情况下执行与所述机器人的把持相关的控制(第二结构)
[0084] 另外,在上述第二结构中,也可以构成为,所述预定范围是以所述层叠方向向量信息的向量长度为半径的球体(第三结构)。
[0085] 另外,在上述第二或第三结构中,也可以构成为,在所述机器人的所述预定位置包含在所述预定范围内的情况下,所述把持控制部计算所述层叠方向向量信息的向量与所述机器人的动作方向所成的角度(θ),并基于计算结果使所述机器人的动作速度减小(第四结构)。
[0086] 另外,在上述第四结构中,也可以构成为,所述把持控制部根据所述计算结果使所述动作速度的减小量连续地变化(第五结构)。
[0087] 另外,在上述第四结构中,也可以构成为,所述把持控制部根据所述计算结果与角度阈值的关系,对是否使所述动作速度减小进行切换(第六结构)。
[0088] 另外,在上述第四或第五结构中,也可以构成为,所述把持控制部根据所述计算结果和所述机器人与所述夹具之间的距离来减小所述动作速度(第七结构)。
[0089] 另外,在上述第四或第五结构中,也可以构成为,所述把持控制部基于与所述夹具的强度相关的参数使所述动作速度减小(第八结构)。
[0090] 另外,在上述第二或第三结构中,也可以构成为,在所述机器人的所述预定位置包含在所述预定范围内的情况下,所述把持控制部计算所述层叠方向向量信息的向量与所述机器人的动作方向所成的角度,并基于计算结果,使用于检测施加于所述机器人的过负荷的负荷检测阈值降低(第九结构)。
[0091] 另外,在上述第九结构中,也可以构成为,所述把持控制部根据所述计算结果使所述负荷检测阈值的降低量连续地变化(第十结构)。
[0092] 另外,在上述第九结构中,也可以构成为,所述把持控制部根据所述计算结果与角度阈值的关系,对是否降低所述负荷阈值进行切换(第十一结构)。
[0093] 另外,在上述第九或第十结构中,也可以构成为,所述把持控制部基于所述计算结果和所述机器人与所述夹具的距离,使所述负荷阈值降低。(第十二结构)。
[0094] 另外,在上述第九或第十结构中,也可以构成为,所述把持控制部基于与所述夹具的强度相关的参数使所述负荷检测阈值降低(第十三结构)。
[0095] 另外,在上述第二至第十三结构中的任一结构中,也可以构成为,所述把持控制部按多个所述夹具中的每一个判断所述机器人的所述预定位置是否包含在所述预定范围内(第十四结构)。
[0096] 另外,在上述第一至第十四结构中的任一结构中,也可以构成为,所述把持控制部在检测出施加于所述机器人的负荷的情况下,基于将所述负荷的向量分解为所述层叠方向向量信息的向量方向的成分和与该向量方向正交的方向的成分时的所述正交的方向的成分的大小,控制所述机器人的动作(第十五结构)。
[0097] 另外,在上述第一至第十五结构中的任一结构中,也可以构成为,所述机器人具备具有能够开闭的把持部的手部,所述把持控制部基于所述手部的姿势计算所述把持部的开闭方向,计算所述开闭方向与所述层叠方向向量信息的向量所成的角度,并基于该角度的计算结果执行通知控制。(第十六结构)
[0098] 另外,在上述第一至第十六结构中的任一结构中,也可以构成为,所述夹具是通过3D打印机形成所述层叠构造的夹具(第十七结构)。
[0099] 本发明的技术例如能够利用于工业用的机器人系统。

当前第1页 第1页 第2页 第3页