机器人的动作仿真装置、机器人的控制装置以及机器人的动作仿真方法与流程
未命名
09-09
阅读:73
评论:0

1.本发明涉及一种机器人的动作仿真装置、机器人的控制装置以及机器人的动作仿真方法。
背景技术:
2.以往,众所周知的是,判定工具的前端部的位置是否位于利用世界坐标系中的坐标值设定的任意大小的动作限制区域,在工具的前端部的位置位于动作限制区域内的情况下限制机器人的速度和加速度中的至少一方(例如,参照专利文献1)。
3.现有技术文献
4.专利文献
5.专利文献1:日本特开2018-062026号公报
技术实现要素:
6.发明要解决的问题
7.对工业用机器人装配末端执行器等各种装配物。这些装配物具有各不相同的承受载荷、刚度值等,因此当机器人的动作与装配物不相适应时,根据机器人动作的不同,有时装配物承受大的载荷而发生非预期的破损。
8.上述专利文献所记载的技术虽然设想到在装配于机器人的前端的特定的工具位于动作限制区域内的情况下限制机器人的速度和加速度中的至少一方,但是完全没有设想根据装配于机器人的装配物的承受载荷、刚度值等属性来限制机器人的动作。
9.另外,为了使机器人的动作与装配于机器人的各种属性的装配物相适应,优选的是使得用户能够根据装配物的属性来设定机器人的动作的约束。但是,上述专利文献所记载的技术完全没有设想由用户根据装配物的属性来设定机器人的动作的约束。
10.因此,在上述专利文献所记载的技术中,存在发生机器人的动作不与装配物相适应的情况的可能性,从而存在装配物承受超出设想的载荷而损伤的问题。
11.另外,作为装配物,除了有装配于机器人的前端的末端执行器等工具以外,还有装配于机器人的关节的轴之间的装配物。上述专利文献所记载的技术完全没有设想根据装配物相对于机器人的装配位置来限制机器人的动作。因此,存在机器人的动作不与装配于机器人的各种位置的装配物相适应的可能性,从而存在装配物承受超出设想的载荷而损伤的问题。
12.在一个方面,目的在于提供一种能够使机器人的动作与装配于机器人的装配物相适应从而抑制装配物的损伤的机器人的动作仿真装置、机器人的控制装置以及机器人的动作仿真方法。
13.用于解决问题的方案
14.本公开的宗旨如下。
15.在本发明的一个方式中,机器人的动作仿真装置具备:获取部,其获取装配于在关节处具有能够转动或直动的轴的机器人的与所述关节连结的连杆上的装配物相对于所述机器人的位置、以及针对在所述机器人进行了动作时产生于所述装配物的速度、加速度及作用力中的至少一者的约束条件;计算部,其计算被预计为在所述机器人执行了动作的情况下根据所述装配物相对于所述机器人的位置而产生于所述装配物的速度、加速度及作用力中的至少一者;以及比较部,其将所述计算部计算出的速度、加速度及作用力中的至少一者与所述约束条件进行比较。
16.也可以是,还具备判定部,所述判定部基于所述比较部的比较结果来判定所述计算部计算出的速度、加速度及作用力中的至少一者是否满足所述约束条件。
17.也可以是,所述判定部在判定为所述计算部计算出的速度、加速度及作用力中的至少一者未满足所述约束条件的情况下,进一步判定描述有所述机器人的动作的动作程序上的不满足所述约束条件的部位,还具备显示处理部,所述显示处理部进行用于将所述动作程序上的不满足所述约束条件的部位显示于显示装置的处理。
18.也可以是,还具备修正指示生成部,所述修正指示生成部在所述计算部计算出的速度、加速度及作用力中的至少一者未满足所述约束条件的情况下,生成用于以使所述计算部计算出的速度、加速度及作用力中的至少一者满足所述约束条件的方式修正所述动作程序的修正指示,所述显示处理部进行用于将所述修正指示显示于所述显示装置的处理。
19.也可以是,所述修正指示生成部在所述计算部计算出的速度或加速度满足所述约束条件的情况下,生成用于以使与该约束条件对应的速度或加速度在该约束条件的范围内增加的方式修正所述动作程序的修正指示。
20.也可以是,所述计算部计算被预计为在所述机器人基于按照所述修正指示进行了修正的修正后的所述动作程序执行了动作的情况下产生于所述装配物的速度、加速度及作用力中的至少一者,所述比较部将所述计算部基于修正后的所述动作程序计算出的速度、加速度及作用力中的至少一者与所述约束条件进行比较。
21.也可以是,还具备修正部,所述修正部在所述计算部计算出的速度、加速度及作用力中的至少一者未满足所述约束条件的情况下,以使所述计算部计算出的速度、加速度及作用力中的至少一者满足所述约束条件的方式修正所述动作程序。
22.也可以是,所述修正部在所述计算部计算出的速度或加速度满足所述约束条件的情况下,以使与该约束条件对应的速度或加速度在该约束条件的范围内增加的方式修正所述动作程序。
23.也可以是,所述机器人是在多个所述关节处分别具有所述轴的多关节机器人,所述装配物装配于与相邻的各个所述关节连结的所述连杆或所述机器人的最前端的所述连杆。
24.在本发明的其它方式中,机器人的控制装置具备上述的机器人的动作仿真装置,机器人的控制装置还具有控制所述机器人的动作的机器人控制部。
25.在本发明的另一方式中,机器人的动作仿真方法包括以下步骤:获取装配于在关节处具有能够转动或直动的轴的机器人的与所述关节连结的连杆上的装配物相对于所述机器人的位置、以及针对在所述机器人进行了动作时产生于所述装配物的速度、加速度及作用力中的至少一者的约束条件;计算被预计为在所述机器人执行了动作的情况下根据所
述装配物相对于所述机器人的位置而产生于所述装配物的速度、加速度及作用力中的至少一者;以及将计算出的速度、加速度及作用力中的至少一者与所述约束条件进行比较。
26.发明的效果
27.根据本发明,起到能够使机器人的动作与装配于机器人的装配物相适应从而抑制装配物的损伤的效果。
附图说明
28.图1是一个实施方式的安装有机器人的动作仿真装置的机器人系统的概要结构图。
29.图2是控制装置的概要结构图。
30.图3是处理器的功能框图。
31.图4是用于说明装配物相对于机器人的装配位置和重心位置的示意图。
32.图5是用于说明装配物相对于机器人的装配位置和重心位置的示意图。
33.图6是示出显示装置的显示画面所显示的与动作程序的修正相关联的显示内容的示意图。
34.图7是用于说明本实施方式所涉及的机器人的动作仿真方法的处理的流程图。
具体实施方式
35.下面,参照附图来说明本发明所涉及的几个实施方式。然而,这些说明仅例示了本发明的优选实施方式,并不是将本发明限定于这种特定的实施方式。
36.图1是一个实施方式的安装有机器人的动作仿真装置的机器人系统1000的概要结构图。机器人系统1000具有机器人100、装配于机器人100的前端的工具200、控制机器人100和工具200的控制装置300、显示装置400以及示教操作板500。
37.机器人100是多关节机器人,在图1所示的例子中具有6轴的关节。此外,下面,作为机器人100例示了在关节处具有能够转动的轴的多关节机器人,但是机器人100也可以是在关节处具有能够直动的轴的机器人、单轴机器人、并联机器人等各样的机器人。机器人100具有台座102、旋转台104、第一臂106、第二臂108以及腕部110。旋转台104、第一臂106、第二臂108以及腕部110分别被安装它们的关节处设置的轴所支承,通过伺服马达驱动这些轴而进行动作。
38.台座102是在机器人100设置在地板1上的情况下成为基部的构件。旋转台104通过关节112以能够以被设置成与台座102的一个面正交的轴为旋转中心转动的方式安装于台座102的顶面。
39.第一臂106的一端侧在设置于旋转台104的关节114处安装于旋转台104。在本实施方式中,如图1所示,第一臂106通过关节114能够以与台座102的安装旋转台104的面平行地设置的轴为中心转动。
40.第二臂108的一端侧通过设置于第一臂106的与关节114相反的一侧的另一端侧的关节116而被安装于第一臂106。在本实施方式中,如图1所示,第二臂108通过关节116能够以与台座102的安装旋转台104的面平行地设置的轴为中心转动。
41.腕部110经由关节118而被安装于第二臂108的与关节116相反的一侧的前端。腕部
110具有关节120,腕部110通过关节120能够以与关节114的轴及关节116的轴平行地设置的轴为旋转中心弯折。另外,腕部110在关节118处能够以与第二臂108的长度方向平行的轴为旋转中心在与第二臂108的长度方向正交的面上转动。并且,腕部110构成为:腕部110的与关节118相反的一侧的前端的工具安装面(工具安装部)122能够在关节119处转动。关节120的旋转轴构成为与关节118的旋转轴及关节119的旋转轴在同一点正交。
42.工具200安装于工具安装面122。工具200具有用于对工件w进行作业的机构或装置。例如,工具200可以具有用于加工工件w的激光,也可以具有用于焊接工件w的伺服枪。或者,工具200也可以具有用于把持工件w或组装于工件w的部件的末端执行器(机器人手)。
43.控制装置300是机器人的动作仿真装置的一个方式。控制装置300经由通信线路302来与机器人100连接,从机器人100经由通信线路302接收表示对设置于机器人100的各关节的轴进行驱动的伺服马达的动作状况的信息等。而且,控制装置300基于接收到的信息以及从上级控制装置(未图示)接收到的或者预先设定的表示机器人100的动作的信息来控制伺服马达,由此控制机器人100的各可动部的位置和姿势。
44.显示装置400例如由液晶显示装置(lcd)等构成。显示装置400基于控制装置300的指令来显示与后述的动作程序的修正有关的信息等。在示教操作板500输入由操作员进行的操作。操作员通过对该示教操作板500的手动操作,来执行机器人100的动作程序的生成、修正、登记、或各种参数的设定,除此以外还执行基于动作程序的机器人100的再现运转、手动连续进给等。此外,也可以将显示装置400与示教操作板500构成为一体。另外,示教操作板500也可以具有鼠标、键盘等操作输入构件。
45.如图1所示,在机器人系统1000中设定有固定于机器人基部的坐标系(下面称为机器人坐标系)σb和固定于工具安装面122的坐标系(下面称为工具安装面坐标系)σf。在控制装置300内,能够基于机器人100的关节的角度和臂长等机器人100的规格来随时获知工具安装面坐标系σf的原点的位置和姿势。
46.机器人100按照动作程序进行动作。例如,在工具200是末端执行器的情况下,机器人100按照动作程序使末端执行器的前端从第一位置(初始位置)移动至能够把持工件w的第二位置,在第二位置处把持了工件w之后,将工件w移动至第三位置以对工件w实施规定的加工(焊接等)。在这些动作中,第一~第三位置(坐标)以及机器人100进行动作时的速度、加速度被描述在动作程序中。
47.当机器人100按照动作程序进行动作时,在安装于机器人100的前端的工具安装面122的工具200产生作用力(惯性力)。另外,在工具200是末端执行器的情况下,当工件w被末端执行器把持时,工件w在机器人100进行了动作时对末端执行器产生作用力。由于所产生的作用力而存在应力集中于例如工具200的根部等的情况。
48.另外,在机器人100上除了装配工具200以外还装配各种装配物,关于这些装配物,存在装配于机器人100的除前端以外的部分的装配物。作为装配于机器人100的除前端以外的部分的装配物,例如可列举出线条体、夹紧钣金、送料器、端子台、空气电磁阀等。这些装配于机器人100的除前端以外的部分的装配物装配于机器人100的关节的轴之间。当机器人100动作时,在装配于机器人100的除前端以外的部分的装配物也产生作用力。
49.线条体包括线缆、空气管等。线缆例如包括向机器人100的前端的工具200或设置于关节的伺服马达等供给电力的电流供给用的线缆、向工具200发送控制信号的信号线缆
等。空气管是用于向例如机器人100的前端的工具200供给空气的管。夹紧钣金是将这些线条体沿着第一臂106、第二臂108固定的金属配件。在工具200是焊炬的情况下,送料器向焊炬供给焊接材料。端子台是用于固定将线条体之间连接的端子的台。空气电磁阀是用于对从空气管向工具200的空气的供给进行控制的阀。
50.设想到以下情况:当由于机器人100的动作而产生的作用力大时,导致装配物因作用力而发生破损。因此,优选的是,以使所产生的作用力处于与装配物的承受载荷、刚度值等相应的范围内的方式使机器人100动作。而且,产生于装配物的作用力的大小由装配物的质量和加速度决定,因此优选的是将机器人100进行动作时的加速度限制为规定的阈值以下,以收敛于与装配物的承受载荷、刚度值等相应的作用力的范围内。
51.关于机器人100进行动作时的速度,理论上来说只要机器人100以恒定速度进行动作就不产生作用力,但是当速度大时可能发生问题。当速度变大时,装配物、工件w所受到的风量与机器人100的动作相应地增加,因此有时会由于这一情况而产生问题,例如,在由末端执行器把持的被把持物是生鲜食品的情况下,当机器人100进行动作时的速度大时,有时生鲜食品由于与更多的空气接触而容易变坏。另外,当机器人100进行动作时的速度大时,可能使机器人100产生特定的振动。因而,优选的是,对机器人100的速度也进行限制以使其收敛为规定的阈值以下。此外,规定速度的上限的规定的阈值也可以根据用户的经验来决定。
52.鉴于上面的情况,在本实施方式中,由用户指定作用于装配物的速度、加速度、作用力中的至少一者以上的约束条件(阈值)。另外,在机器人100进行了动作时作用于装配物的作用力根据装配物相对于机器人100的装配位置、装配物的重心位置而不同,因此由用户指定表示在机器人100的哪个部分安装装配物的位置信息以及装配物的重心位置。此外,装配物的重心位置是装配物相对于机器人的位置的一个方式。而且,不是使机器人100实际动作,而是通过仿真来基于机器人100的动作信息计算装配物的速度、加速度、作用力中的至少一者以上,并判定计算出的值是否满足各自的约束条件。然后,在装配物的速度、加速度、作用力中的至少任一者未满足约束条件的情况下,对动作程序进行修正以满足约束条件。由此,当利用修正后的动作程序对机器人100进行控制时,机器人100动作时的速度、加速度或作用力处于约束条件的范围内,因此抑制在机器人100进行了动作时装配物破损等。
53.下面,说明用于实现如上面那样的处理的控制装置300的结构。图2是控制装置300的概要结构图。控制装置300具有通信接口310、驱动电路320、存储器330以及处理器340。通信接口310例如包括用于将控制装置300与通信线路302连接的通信接口和用于执行与经由通信线路302进行的信号的发送接收有关的处理的电路等。而且,通信接口310例如从机器人100经由通信线路302接收来自用于检测伺服马达130的旋转量的编码器的旋转量的测定值等表示伺服马达130的动作状况的信息,将该信息传递到处理器340。此外,在图3中,代表性地图示了一个伺服马达130,但是机器人100可以针对每个关节具有驱动该关节的轴的伺服马达。
54.另外,通信接口310包括用于将处理器340与显示装置400或示教操作板500连接的接口电路和用于执行与同示教操作板500或显示装置400之间的信号的发送接收有关的处理的电路等。
55.驱动电路320经由电流供给用的线缆来与伺服马达130连接,按照处理器340的控
制来将与使伺服马达130产生的转矩、旋转方向或旋转速度相应的电力供给到伺服马达130。
56.存储器330例如具有可读写的半导体存储器(ram:random access memory(随机存取存储器))和读取专用的半导体存储器(rom:read only memory(只读存储器))、非易失性存储器等。并且,存储器330也可以具有半导体存储卡、硬盘或光存储介质之类的存储介质以及访问该存储介质的装置。
57.存储器330存储上述的机器人100的动作程序等在控制装置300的处理器340中执行的机器人100的控制用的各种计算机程序等。具体地说,支持机器人100和控制装置300的基本功能的系统程序被保存于存储器330的rom。另外,机器人100的各关节之间的臂长等与机器人100的规格、标准有关的数据也被保存于存储器330的rom。另外,与应用程序相应地示教的机器人的动作程序(例如点焊的程序)以及关联设定数据被保存于存储器330的非易失性存储器。另外,存储器330存储使机器人100动作时的用于控制机器人100的动作的信息。并且,存储器330存储表示在机器人100动作的期间从机器人100得到的伺服马达130的动作状况的信息等。
58.图3是处理器340的与以下的处理有关的功能框图,即,判定机器人100的速度、加速度、作用力中的至少一者是否满足约束条件并在未满足约束条件的情况下修正动作程序的处理以及使用动作程序来控制机器人100的处理。处理器340具有获取部341、计算部342、比较部343、判定部344、程序修正部345、显示处理部346以及机器人控制部347。程序修正部345包括修正指示生成部345a和自动修正部345b。处理器340所具有的这些各部例如是通过在处理器340上执行的计算机程序实现的功能模块。或者,这些各部也可以作为安装于处理器340的一部分的专用的运算电路来被安装。用于执行处理器340所具有的各部的处理的计算机程序也可以以记录于半导体存储器、磁记录介质或光记录介质之类的计算机可读记录介质的形式来提供。
59.处理器340通过图3中示出的结构,不使机器人100实际动作而通过仿真来计算在机器人100进行了动作时产生的速度、加速度或作用力并判定是否满足约束条件。而且,处理器340在不满足约束条件的情况下进行用于修正动作程序的处理。此外,在图3所示的结构例中,处理器340具有机器人控制部347,但是本实施方式所涉及的机器人的动作仿真装置也可以不进行机器人100的控制,在该情况下也可以不具有机器人控制部347。例如,机器人的动作仿真装置也可以安装于个人计算机等不进行机器人100的控制的电子设备。
60.处理器340的获取部341获取由用户操作示教操作板500输入的装配物的速度、加速度以及作用力的约束条件中的至少一者。约束条件是由用户基于装配物的承受载荷、刚度值等指定并从示教操作板500输入的。例如,设为:装配物是装配于机器人100的前端的机器人手,机器人手的承受载荷为f[n],利用机器人手来搬送的搬送对象物(工件w)的质量为m[kg],搬送对象物的加速度为a[m/s2]。在承受载荷f和加速度a均为正的值的情况下,由于需要满足f》ma,因此加速度的约束条件为a《f/m。此外,设为此处的机器人手的承受载荷f是仅针对除由机器人手的自重产生的作用力以外的由搬送对象物产生的作用力的承受载荷。
[0061]
另外,获取部341获取由用户操作示教操作板500输入的与装配物有关的信息。与装配物有关的信息包含装配物装配于机器人100的装配位置、装配物的质量、装配物的重心位置。此外,装配位置是机器人100上的装配有装配物的位置,例如是装配物相对于比装配
物靠台座102侧的最接近装配物的轴的位置(坐标)。另外,重心位置是从装配位置观察时的坐标(以装配位置为原点的坐标)。
[0062]
图4和图5是用于说明装配物600相对于机器人100的装配位置和重心位置的示意图,是将机器人100所具有的各关节的轴和臂简化后示出的图。在图5和图6中,机器人100所具备的各关节的6个轴从台座102起向机器人100的前端依次被表示为第一轴a1、第二轴a2、第三轴a3、第四轴a4、第五轴a5、第六轴a6。此外,第一轴a1是关节112的轴,第二轴a2是关节114的轴,第三轴a3是关节116的轴,第四轴a4是关节118的轴,第五轴a5是关节120的轴,第六轴a6是关节119的轴。
[0063]
装配物600装配于在关节处具有能够转动或直动的轴的机器人的、以相对于关节能够转动或直动的方式与关节连结的连杆。此外,“装配物装配于连杆”包括装配物600直接装配于连杆的情况以及装配物600经由其它部件装配于连杆的情况这两方。例如,在装配物600是上述的线条体的情况下,装配物600经由夹紧板金装配于连杆,而这种方式也包括在“装配物装配于连杆”的情况中。在图1所示的多关节机器人的例子中,装配物600装配于工具安装面122等比第六轴a6靠机器人100的前端侧的位置、或者装配于机器人100的第i轴与第i+1轴之间。在装配物600装配于比第六轴a6靠机器人100的前端侧的位置的情况下,装配物600装配于在机器人100的前端侧与第六轴a6的关节119连结的连杆上(包括工具安装面122上)。另外,在装配物600装配于第i轴与第i+1轴之间的情况下,装配物600装配于与第i轴及第i+1轴的关节连结的连杆上(例如,第一臂106或第二臂108上等)。此外,i为自然数,i的最大值为机器人100的关节的数(轴数)减1所得到的值。例如,在如图1、图4以及图5所示的6轴的机器人100的情况下,i=1、2、3、4、5。
[0064]
图4示出了与图1同样地装配物600装配于工具安装面122的例子,装配物600与图1的工具200对应。另外,图5示出了装配物600装配于第三轴a3与第四轴a4之间的例子。即,图5相当于i=3的情况。
[0065]
在图4中,装配物600在位置p1装配于在机器人100的前端侧与第六轴a6连结的连杆处设置的工具安装面122。在图4中,p2示出了装配物600的重心位置。另外,在图5中,装配物600在位置p3装配于机器人100的第二臂108,p4示出了装配物600的重心位置。当将装配位置设为相对于最接近台座102侧的轴的位置时,在图4的情况下,装配位置p1是相对于第六轴a6的位置,在图5的情况下,装配位置p3是相对于第三轴a3的位置。另外,重心位置是从装配位置观察时的坐标,例如,能够使用根据装配物600的标准、形状等而预先决定的值、或者基于装配物600的密度、形状等计算出的值。
[0066]
在图4的情况下,用户从示教操作板500输入装配位置p1和重心位置p2来作为与装配物600有关的信息。另外,在图5的情况下,用户从示教操作板500输入装配物600的重心位置p3和重心位置p4。所输入的装配位置和重心位置通过获取部341来获取。
[0067]
处理器340的计算部342计算在机器人100执行了动作的情况下产生的装配物的速度、加速度、作用力中的至少一者。当设为将装配物600装配于第i轴与第i+1轴之间时,第一轴~第i轴的各轴的角速度与装配物的重心速度及姿势角速度的关系通过雅可比矩阵j来表示。关于雅可比矩阵j,通过基于用户输入的信息,对“第一轴~第i轴的各轴的角度(比装配物靠台座102侧的各轴的角度)、各轴之间的位置关系(第一臂106、第二臂108的长度等由机器人100的标准决定的参数)、从第i轴中心观察时的装配物的重心位置”与“从机器人坐
标系σb的原点观察时装配物的重心位置”之间的顺向运动学的关系进行偏微分而求出。此外,关于第一臂106、第二臂108的长度等由机器人100的标准决定的参数,使用预先保存在存储器303的rom中的值。另外,从第i轴中心观察时的装配物的重心位置是基于由获取部341获取到的装配物装配于机器人100的装配位置和装配物的重心位置来得到的。
[0068]
具体地说,当将从机器人坐标系σb的原点观察时的装配物的重心的位置和姿势设为r、将第一轴至第i轴的角度设为θ、将雅可比矩阵设为j时,装配物的重心的微小位移和姿势的微小旋转角为各轴的微小旋转角的函数,由公知的下面的(1)式来表示。另外,当对(1)式的两边进行时间微分时,得到下面的(2)式,得到“第一轴~第i轴的各轴的角加速度”与“装配物的重心的加速度及姿势加速度”之间的关系。此外,r是具有相对于机器人坐标系σb的xyz这3个轴的位置和姿势的6个分量的矢量。例如,在图5的例子中,r是具有相对于机器人坐标系σb的重心位置p4的位置(x、y、z)和姿势(φ
x
、φy、φz)的6个分量的矢量。另外,θ是以第一轴至第i轴的角度(θ1、θ2、
…
、θi)为分量的矢量。从顺向运动学来看,相对于机器人坐标系σb的重心位置p4的位置和姿势(矢量r)能够由第一轴至第i轴的角度(θ1、θ2、
…
、θ
i)
以及各轴之间的位置关系及从第i轴中心观察时的装配物的重心位置p4来规定,因此当对其进行偏微分时,得到雅可比矩阵。此外,在图5的例子中,i=3。
[0069]
[数1]
[0070][0071][0072]
如上面那样,通过使用雅可比矩阵j,能够基于第一轴~第i轴的各轴的角速度、角加速度来计算装配物的重心位置的速度、加速度、姿势角速度、姿势角加速度。计算部342根据(1)式、(2)式所示出的关系性,基于第一轴~第i轴的各轴的角速度、角加速度来计算装配物的重心位置的速度、加速度、姿势角速度、姿势角加速度。
[0073]
此时,计算部342能够基于规定了机器人100的动作的动作程序来得到第一轴~第i轴的各轴的角速度的信息,还能够得到第一轴~第i轴的各轴的角加速度的信息。例如,计算部342能够基于动作程序中描述的机器人100的前端的角速度、角加速度信息来计算第一轴~第i轴的各轴的角速度、角加速度,并基于此来计算装配物的重心位置的速度、加速度、姿势角速度、姿势角加速度。或者,在动作程序中描述有第一轴~第i轴的各轴的角速度、角加速度信息的情况下,计算部342也可以基于此来计算装配物的重心位置的速度、加速度、姿势角速度、姿势角加速度。
[0074]
另外,计算部342通过将计算出的装配物的加速度与装配物的质量相乘来计算产生于装配物的作用力。
[0075]
此外,在上面的说明中,设为将装配物600装配于第i轴与第i+1轴之间进行了说明,但是在将装配物600装配于比第六轴a6靠机器人100的前端侧的位置的情况下也同样,计算部342计算装配物600的重心位置处的装配物600的重心速度、加速度和姿势角速度、姿势角加速度。例如,在图4的例子中,从顺向运动学来看,相对于机器人坐标系σb的重心位置p2的位置和姿势(矢量r)能够由第一轴至第i+1轴的角度(θ1、θ2、
…
、θ
i+1
)以及各轴之间的位置关系及从第i+1轴中心观察时的装配物的重心位置p2来规定,因此当对其进行偏微分时,得到雅可比矩阵。
[0076]
另外,在机器人100是并联机器人(parallel robot)的情况下,计算部342能够基于表示并联机器人所具备的致动器的运动的参数(角速度、角加速度)以及装配物相对于并联机器人的与关节连结的连杆的装配位置、装配物的重心位置,来与多关节机器人的情况同样地计算装配物的重心位置的速度、加速度、姿势角速度、姿势角加速度。此外,在该情况下,与关节连结的连杆包括并联机器人的行走板(traveling plate)。关于并联机器人的顺向运动学的关系,能够适当使用公知的关系。例如,在6轴并联机器人的情况下,作为雅可比矩阵和顺向运动学,也可以应用文献“6自由度高速
パラレルロボット
hexa
の
開発”内山胜他、日本
ロボット
学会誌vol.12no.3,pp.451-458,1994中记载的雅可比矩阵和顺向运动学。
[0077]
处理器340的比较部343将计算部342计算出的装配物的速度、加速度或作用力与获取部341获取到的约束条件的速度、加速度或作用力分别进行比较。比较部343除了比较计算部342计算出的装配物的速度、加速度或作用力是否大于获取部341获取到的约束条件的速度、加速度或作用力以外,还将计算部342计算出的值与约束条件的值进行如下的比较:例如计算部342计算出的装配物的速度、加速度或作用力是获取部341获取到的约束条件的速度、加速度或作用力的百分之几等。在如后所述那样修正了动作程序的情况下,比较部343将计算部342基于修正后的程序计算出的装配物的速度、加速度或作用力与获取部341获取到的约束条件的速度、加速度或作用力分别进行比较。
[0078]
处理器340的判定部344基于比较部343的比较结果来判定计算部342计算出的装配物的速度、加速度或作用力是否满足获取部341获取到的约束条件的速度、加速度或作用力。判定部344在计算部342计算出的装配物的速度、加速度或作用力大于获取部341获取到的约束条件的速度、加速度或作用力的情况下,判定为未满足约束条件。另外,也可以是,判定部344在计算部342计算出的装配物的速度、加速度或作用力超过获取部341获取到的约束条件的速度、加速度或作用力的规定的比例(例如,80%等)的情况下,判定为未满足约束条件。
[0079]
另外,判定部344在判定为计算部342计算出的装配物的速度、加速度或作用力未满足约束条件的情况下,进一步判定在动作程序中不满足约束条件的部位。例如,判定部344基于根据使机器人100的前端以动作程序中描述的速度或加速度进行了动作的情况下的各轴的动作(角速度、角加速度)而产生的装配物的速度或加速度,将记载有要求对于装配物而言会产生超过约束条件的速度、加速度或作用力的运动的动作的动作程序中的特定部位(特定的行)判定为不满足约束条件的部位。
[0080]
处理器340的程序修正部345在计算部342计算出的装配物的速度、加速度或作用力未满足获取部341获取到的约束条件的速度、加速度或作用力的情况下,进行用于修正机器人100的动作程序的处理。
[0081]
作为修正动作程序的方法,能够是由用户手动进行修正的方法以及由处理器340自动进行修正的方法这两种方法。因此,程序修正部345进行的用于修正动作程序的处理包括生成用于指示用户修正动作程序的修正指示的处理以及自动修正动作程序的处理。在由用户手动修正动作程序的情况下,程序修正部345的修正指示生成部345a生成用于以使装配物的速度、加速度或作用力满足约束条件的方式修正动作程序的修正指示。程序修正部345的自动修正部345b不依赖于用户的操作而自动修正动作程序,以使装配物的速度、加速度或作用力满足约束条件。此外,用户能够通过对示教操作板500的操作输入来指定是手动
修正动作程序还是自动修正动作程序。
[0082]
另外,自动修正部345b基于比较部343的比较结果,在计算部342计算出的装配物的速度、加速度或作用力小于约束条件且对于约束条件存在余量的情况下,能够以使装配物的速度、加速度或作用力在约束条件的范围内增加的方式修正动作程序。由此,使机器人100的动作在约束条件的范围内进一步高速化。此外,用户能够通过对示教操作板500的操作输入来指定使机器人100的动作在约束条件的范围内进一步高速化。
[0083]
同样,修正指示生成部345a基于比较部343的比较结果,在计算部342计算出的装配物的速度、加速度或作用力小于约束条件且对于约束条件存在余量的情况下,能够生成用于以使装配物的速度、加速度或作用力在约束条件的范围内增加的方式修正动作程序的修正指示。
[0084]
下面,详细说明基于速度和加速度进行动作程序的自动修正的例子。在下面的例子中,用绝对值来评价速度或加速度,并修正动作程序。作为基本的想法,基于上述的(1)式,在使(1)式的左边示出的装配物的重心的速度(矢量r的一阶微分)增减x%的情况下,使(1)式的右边的各轴的角速度(角度θ的一阶微分)增减x%。因而,动作程序中描述的机器人100的前端的速度被修正成增减x%。
[0085]
另外,基于上述的(2)式,在使(2)式的左边示出的装配物的重心的加速度(矢量r的二阶微分值)增减x%的情况下,使(2)式的右边的各轴的角速度(角度θ的一阶微分)和各轴的角加速度(角度θ的二阶微分值)这两方增减x%。因而,动作程序中描述的机器人100的前端的加速度被修正成增减x%。其中,在该情况下,存在装配物的重心的速度变得不满足约束条件的可能性,因此在增加加速度的情况下需要考虑速度的约束条件。
[0086]
首先,说明基于速度的约束条件来修正动作程序的情况。在此,将获取部341获取到的装配物的速度的约束条件的阈值设为v
lim
,将计算部342计算出的装配物的速度设为v
act
。如果v
act-v
lim
≤0,则判定部344判定为满足约束条件,如果v
act-v
lim
》0,则判定部344判定为不满足约束条件。在不满足约束条件的情况下,自动修正部345b使各轴的角速度下降((v
act-v
lim
)/v
act
)*100[%]。
[0087]
另外,在满足速度的约束条件的情况下,自动修正部345b能够提高速度来使机器人100的动作高速化。在该情况下,自动修正部345b使各轴的角速度增加|(v
lim-v
act
)/v
act
|*100[%]。
[0088]
接着,说明基于加速度的约束条件来修正动作程序的情况。在此,将获取部341获取到的装配物的加速度的约束条件的阈值设为a
lim
,将计算部342计算出的装配物的加速度设为a
act
。如果a
act-a
lim
≤0,则判定部344判定为满足约束条件,如果a
act-a
lim
》0,则判定部344判定为不满足约束条件。在不满足约束条件的情况下,自动修正部345b使各轴的角速度和各轴的角加速度下降((a
act-a
lim
)/a
act
)*100[%]。
[0089]
另外,在满足加速度的约束条件的情况下,自动修正部345b能够增加速度和加速度来使机器人100的动作高速化。在该情况下,如果(v
lim-v
act
)/v
act
≥(a
lim-a
act
)/a
act
,则相比于速度而言,加速度对于约束条件的余量更小,因此自动修正部345b基于加速度来使各轴的角速度和各轴的角加速度增加((a
lim-a
act
)/a
act
)*100[%]。
[0090]
另外,如果|(v
lim-v
act
)/v
act
|《(a
lim-a
act
)/a
act
,则相比于加速度而言,速度对于约束条件的余量更小,因此自动修正部345b基于速度来使各轴的角速度和各轴的角加速度增
加|(v
lim-v
act
)/v
act
|*100[%]。其中,在不存在速度的约束条件的情况下,自动修正部345b使各轴的角速度和各轴的角加速度增加((a
lim-a
act
)/a
act
)*100[%]。另外,如上所述,存在装配物的速度变得不满足约束条件的可能性,因此在增加加速度的情况下考虑速度的约束条件。
[0091]
此外,在由用户手动修正动作程序的情况下,修正指示生成部351a生成包含上述的应使速度或加速度减少或增加的比例(%)的修正指示。
[0092]
处理器340的显示处理部346进行用于使显示装置400显示与动作程序的修正相关联的内容的处理。例如,显示处理部346进行用于将存储器330中存储的机器人100的动作程序显示于显示装置400的处理。另外,显示处理部346进行用于将由判定部344判定出的、动作程序中的不满足约束条件的部位(行)显示于显示装置400的处理。并且,显示处理部346进行用于将修正指示生成部345a生成出的修正指示显示于显示装置400的处理。显示处理部346为了进行这些显示,进行用于在显示装置400的显示画面上使对应的部位的像素发光的处理等。
[0093]
图6是示出显示装置400的显示画面402中显示的与动作程序的修正相关联的显示内容的示意图。如图6所示,在显示画面402显示动作程序404。在动作程序404的第1行示出了机器人100的前端的位置(位于最前端的轴的位置)p[1]、速度a[mm/s]以及加速度(acc)e[mm/s2]。同样地,在动作程序404的第2~4行也示出了机器人100的前端的位置、速度以及加速度。机器人100的动作从第1行起依次转变。通过该动作程序404,例如在机器人100的前端位于p[2]的情况下,机器人100的前端以速度b和加速度f移动。此外,在图6中,示出了动作程序404中的机器人100的位移的速度和加速度,但是也可以将姿势的角速度、角加速度也同样地显示。另外,也可以在动作程序404中示出各轴的速度、加速度。
[0094]
在按照机器人100的动作程序404的各行中描述的条件进行动作时,在不满足用户指定的约束条件的情况下,描述有移动后的到达点的行被高亮显示。图6示出了在机器人100的前端从位置p[2]移动到p[3]时计算部342计算出的加速度未满足约束条件的情况,在该情况下,动作程序404的第3行被高亮显示。此外,如上所述,动作程序404中的未满足约束条件的行是通过判定部344来判定的。而且,由显示处理部346进行用于高亮显示的处理。此外,高亮显示是以与显示画面402上的背景或字符的颜色不同的颜色来进行的。由此,用户能够在显示画面402上视觉识别动作程序404中的哪行未满足约束条件。
[0095]
另外,在比动作程序404的显示位置靠上侧的位置显示“第3行未满足加速度的约束条件。需要使加速度下降〇〇%。”这样的修正指示的消息406。修正指示的消息406是由修正指示生成部345a生成的。由此,能够向用户示出动作程序404不满足动作程序中的哪个条件、应该如何修正动作程序404,能够促使用户进行动作程序404的修正。在图6中,示出了动作程序的加速度未满足约束条件的情况,而在动作程序404的速度未满足约束条件的情况下也显示同样的消息406。
[0096]
另外,在动作程序404之下,显示有用于用户选择自动修正的自动修正按钮408以及在满足约束条件的情况下用于用户选择机器人100的高速化的高速化按钮410。用户通过操作示教操作板500来使显示画面402上的指示器对准自动修正按钮408并按下(点击)自动修正按钮408,由此能够选择自动修正。在选择了自动修正的情况下,由自动修正部345b进行动作程序404的自动修正,自动改写动作程序404中的被高亮的行(第3行)以满足约束条
件。
[0097]
同样地,在满足约束条件的情况下,用户通过操作示教操作板500来使显示画面402上的指示器对准高速化按钮410并按下高速化按钮410,由此能够在满足约束条件的同时选择使机器人100的动作高速化。
[0098]
此外,在图6中,例示了不满足约束条件的情况下的消息406,但是在满足约束条件的情况下,也可以显示促使高速化的消息406。在该情况下,例如,显示“满足加速度的约束条件,能够将加速度提高〇〇%。”之类的消息406。用户能够通过点击高速化按钮410或基于促使高速化的消息406修正动作程序404来使机器人100的动作高速化。
[0099]
处理器340的机器人控制部347基于动作程序来控制各关节的伺服马达,由此控制机器人100的动作。在修正了动作程序的情况下,机器人控制部347按照修正后的动作程序来控制机器人100的动作。
[0100]
接着,基于图7的流程图来说明本实施方式所涉及的机器人的动作仿真方法的处理。图7所示的处理是由控制装置300的处理器340按规定的控制周期进行的。作为进行机器人的动作仿真的前提,用户生成动作程序并事先存储到存储器330中。
[0101]
首先,处理器340的获取部341获取与装配物有关的约束条件以及与装配物有关的信息(装配物的质量、装配位置、重心位置等)(步骤s10)。当获取到与装配物有关的约束条件以及与装配物有关的信息时,处理器340开始机器人100的动作仿真(步骤s12)。
[0102]
接着,处理器340的计算部342使用雅可比矩阵,基于机器人100的各轴的信息(速度、加速度)来计算装配物的速度、加速度、作用力(步骤s14)。接着,比较部343将约束条件与通过步骤s14计算出的装配物的速度、加速度或作用力进行比较,判定部344判定是否满足约束条件(步骤s16)。
[0103]
当在步骤s16中判定为未满足约束条件时,修正指示生成部345a生成用于使用户修正动作程序的修正指示,显示处理部346在显示装置400的显示画面上显示动作程序上的不适当部位并且显示修正指示(步骤s18)。
[0104]
接着,判定自动修正按钮408是否被按下(步骤s20),在自动修正按钮408被按下的情况下,自动修正部345b自动修正动作程序(步骤s22)。在步骤s22之后,结束本控制周期的处理。
[0105]
另外,在步骤s20中自动修正按钮408未被按下的情况下,用户手动修正动作程序,因此获取用户从示教操作板500输入的动作程序的修正内容(步骤s28),返回到步骤s12以后的动作仿真的处理。
[0106]
另外,当在步骤s16中判定为满足了约束条件时,判定高速化按钮410是否被按下(步骤s24),在高速化按钮410被按下的情况下,自动修正部345b自动修正动作程序以使机器人100的动作高速化(步骤s26)。在步骤s26之后,本控制周期的处理结束。另外,在步骤s24中高速化按钮410未被按下的情况下,本控制周期的处理结束。此外,在步骤s26中,也可以取代自动修正部345b自动修正动作程序,而是由用户基于修正指示生成部345a生成的修正指示来手动修正动作程序。
[0107]
此外,机器人系统1000也可以具备多个机器人100以及与这多个机器人100分别对应的多个控制装置300。多个控制装置300中的各控制装置300针对对应的机器人100的装配物计算在装配物中产生的速度、加速度以及作用力中的至少一者,将计算结果与约束条件
进行比较。多个控制装置300可以经由网络相互连接,也可以经由网络还与接收多个控制装置300的比较结果的上级侧的装置连接。上级侧的装置也可以基于接收到的各控制装置300中的比较结果来进行故障预测。即使是各机器人100的装配物的速度、加速度或作用力满足了约束条件的情况,上级侧的装置也能够通过得到各机器人100的装配物的速度、加速度或作用力对于约束条件存在多少程度的余裕等信息,来识别各机器人100的装配物发生故障的可能性,从而能够进行各机器人100的故障预测。
[0108]
如上面所说明的那样,根据本实施方式,不使机器人100实际动作,而通过仿真来判定装配物的速度、加速度或作用力是否满足约束条件,在不满足约束条件的情况下修正动作程序。因而,通过预先修正动作程序以满足约束条件,从而抑制在使机器人100实际进行了动作时装配物发生非预期的破损。另外,由用户设定装配物的约束条件以及装配物的质量、装配位置、重心位置等与装配物有关的信息,因此能够以适合于装配于机器人100的各种装配物的方式进行动作程序的生成和修正,因此在选定装配物时不再需要配合机器人100的动作的约束来选定装配物。由此,对于不同的各种装配物,能够容易地进行满足约束条件的动作程序的生成。
[0109]
在此列举的所有例子和特定的用语是示教性的目的,旨在帮助读者理解本发明以及本发明的发明人对该技术的促进所贡献的概念,并且应被解释为不限定于与示出本发明的优势性和劣势性有关的本说明书的任何例子的结构、那种特定的列举出的例子和条件。详细地对本发明的实施方式进行了说明,但希望理解的是,能够在不脱离本发明的精神和范围的情况下对本发明的实施方式进行各种变更、置换以及修正。
[0110]
附图标记说明
[0111]
1:地板;100:机器人;102:台座;104:旋转台;106:第一臂;108:第二臂;110:腕部;112、114、116、118、119、120:关节;122:工具安装面;130:伺服马达;200:工具;300:控制装置;302:通信线路;310:通信接口;320:驱动电路;330:存储器;340:处理器;341:获取部;342:计算部;343:比较部;344:判定部;345:程序修正部;345a:修正指示生成部;345b:自动修正部;346:显示处理部;347:机器人控制部;400:显示装置;402:显示画面;404:动作程序;406:消息;408:自动修正按钮;410:高速化按钮;500:示教操作板;600:装配物;1000:机器人系统。
技术特征:
1.一种机器人的动作仿真装置,具备:获取部,其获取装配于在关节处具有能够转动或直动的轴的机器人的与所述关节连结的连杆上的装配物相对于所述机器人的位置、以及针对在所述机器人进行了动作时产生于所述装配物的速度、加速度及作用力中的至少一者的约束条件;计算部,其计算被预计为在所述机器人执行了动作的情况下根据所述装配物相对于所述机器人的位置而产生于所述装配物的速度、加速度及作用力中的至少一者;以及比较部,其将所述计算部计算出的速度、加速度及作用力中的至少一者与所述约束条件进行比较。2.根据权利要求1所述的机器人的动作仿真装置,其中,还具备判定部,所述判定部基于所述比较部的比较结果来判定所述计算部计算出的速度、加速度及作用力中的至少一者是否满足所述约束条件。3.根据权利要求2所述的机器人的动作仿真装置,其中,所述判定部在判定为所述计算部计算出的速度、加速度及作用力中的至少一者未满足所述约束条件的情况下,进一步判定描述有所述机器人的动作的动作程序上的不满足所述约束条件的部位,所述机器人的动作仿真装置还具备显示处理部,所述显示处理部进行用于将所述动作程序上的不满足所述约束条件的部位显示于显示装置的处理。4.根据权利要求3所述的机器人的动作仿真装置,其中,还具备修正指示生成部,所述修正指示生成部在所述计算部计算出的速度、加速度及作用力中的至少一者未满足所述约束条件的情况下,生成用于以使所述计算部计算出的速度、加速度及作用力中的至少一者满足所述约束条件的方式修正所述动作程序的修正指示,所述显示处理部进行用于将所述修正指示显示于所述显示装置的处理。5.根据权利要求4所述的机器人的动作仿真装置,其中,所述修正指示生成部在所述计算部计算出的速度或加速度满足所述约束条件的情况下,生成用于以使与该约束条件对应的速度或加速度在该约束条件的范围内增加的方式修正所述动作程序的修正指示。6.根据权利要求4所述的机器人的动作仿真装置,其中,所述计算部计算被预计为在所述机器人基于按照所述修正指示进行了修正的修正后的所述动作程序执行了动作的情况下产生于所述装配物的速度、加速度及作用力中的至少一者,所述比较部将所述计算部基于修正后的所述动作程序计算出的速度、加速度及作用力中的至少一者与所述约束条件进行比较。7.根据权利要求3所述的机器人的动作仿真装置,其中,还具备修正部,所述修正部在所述计算部计算出的速度、加速度及作用力中的至少一者未满足所述约束条件的情况下,以使所述计算部计算出的速度、加速度及作用力中的至少一者满足所述约束条件的方式修正所述动作程序。8.根据权利要求7所述的机器人的动作仿真装置,其中,所述修正部在所述计算部计算出的速度或加速度满足所述约束条件的情况下,以使与
该约束条件对应的速度或加速度在该约束条件的范围内增加的方式修正所述动作程序。9.根据权利要求1~8中的任一项所述的机器人的动作仿真装置,其中,所述机器人是在多个所述关节处分别具有所述轴的多关节机器人,所述装配物装配于与相邻的各个所述关节连结的所述连杆或所述机器人的最前端的所述连杆。10.一种机器人的控制装置,具备根据权利要求1~9中的任一项所述的机器人的动作仿真装置,所述机器人的控制装置还具有控制所述机器人的动作的机器人控制部。11.一种机器人的动作仿真方法,包括以下步骤:获取装配于在关节处具有能够转动或直动的轴的机器人的与所述关节连结的连杆上的装配物相对于所述机器人的位置、以及针对在所述机器人进行了动作时产生于所述装配物的速度、加速度及作用力中的至少一者的约束条件;计算被预计为在所述机器人执行了动作的情况下根据所述装配物相对于所述机器人的位置而产生于所述装配物的速度、加速度及作用力中的至少一者;以及将计算出的速度、加速度及作用力中的至少一者与所述约束条件进行比较。
技术总结
机器人的动作仿真装置具备:获取部(341),其获取装配于在关节处具有能够转动或直动的轴的机器人(100)的与关节连结的连杆上的装配物相对于机器人(100)的位置、以及针对在机器人(100)进行了动作时产生于装配物的速度、加速度及作用力中的至少一者的约束条件;计算部(342),其计算被预计为在机器人(100)执行了动作的情况下根据装配物相对于机器人(100)的位置而产生于装配物的速度、加速度及作用力中的至少一者;以及比较部(342),其将计算部(342)计算出的速度、加速度及作用力中的至少一者与约束条件进行比较。约束条件进行比较。约束条件进行比较。
技术研发人员:东松龙英 梶山贵史
受保护的技术使用者:发那科株式会社
技术研发日:2022.01.04
技术公布日:2023/9/7
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/