一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

机械臂控制装置、机械臂的生产系统和控制方法与流程

2022-11-23 11:41:03 来源:中国专利 TAG:


1.本发明涉及一种机械臂控制装置,涉及一种机械臂的生产系统和控制方法。


背景技术:

2.已知一种生产系统和机械臂,该生产系统中通过诸如传送带的传送系统来传送多个工件,以将工件供应到工厂中的生产线,该机械臂对供应的工件执行预定作业。


技术实现要素:

3.在本发明的一个方面,提供一种控制执行拾取和放置作业的机械臂的机械臂控制装置,该机械臂控制装置包括:工件选择部,所述工件选择部在由传送系统在预定的流动方向上传送的多个工件中选择作为要拾取和放置的工件的目标工件;以及动作控制部,控制机械臂的动作以在预定拾取位置处拾取目标工件并且将目标工件放置于在多个预定放置位置中选择的目标放置位置,其中,工件选择部将其作业开始时刻的工件位置在流动方向上处于作业开始时刻的机械臂的末端位置的上游的一部分工件设定作为选定候补件,作业开始时刻是拾取和放置作业的开始时刻,并且工件选择部在作为选定候补件的工件中,将从作业开始时刻的末端位置到作业开始时刻的工件位置的距离最短的工件选定作为目标工件。
附图说明
4.在附图中:
5.图1是示出根据第一实施例的生产系统的配置的示意图;
6.图2是根据第一实施例的关于拾取和放置作业的具体动作的示例的示意图;
7.图3是根据第一实施例的关于拾取和放置作业的具体动作的示例的示意图;
8.图4是根据第一实施例的关于拾取和放置作业的具体动作的示例的示意图;
9.图5是根据第一实施例的关于拾取和放置作业的具体动作的示例的示意图;
10.图6是根据第一实施例的关于拾取和放置作业的具体动作的示例的示意图;
11.图7是根据第一实施例的关于拾取和放置作业的具体动作的示例的示意图;
12.图8是示出根据第一实施例的关于拾取和放置作业的具体进程的示例的流程图;以及
13.图9是示出根据第二实施例的关于拾取和放置作业的具体进程的示例的流程图。
具体实施方式
14.jp2011-125989a公开了一种方法,其中多个工件由机械臂放置在传送系统上。此外,已知一种生产系统,其中通过诸如传送带的传送系统传送多个工件,以将工件供应到工厂中的生产线,并且机械臂对供应的工件执行预定作业。由机械臂执行的这种作业的示例包括机械臂拾取传送的工件并且将工件放置在预定放置位置处的拾取和放置作业。在这种
情况下,机械臂选择并拾取由传送系统沿预定流动方向传送的工件中的一个,并且将拾取的工件放置在放置托盘中的预定放置位置处。
15.在执行如上的拾取和放置作业的生产系统中,多个机械臂沿着传送带的流动方向布置成在流动方向上从上游部到下游部共线,并且每个机械臂执行相同的作业。传统上,这种生产系统的机械臂被设计为最优先考虑可靠地防止遗漏工件的发生,选择和拾取在流动方向上位于最下游的工件中的一个。
16.如上所述,利用传统的工件选择标准可靠地防止了遗漏的工件的发生。不幸的是,在传统的工件选择标准中,根据被选定为作业目标的工件的位置以及工件将被放置的放置托盘中的放置位置,机械臂的移动距离可能很长,这可能会非期望地增加作业所需的时间。其结果,机械臂的操作时间可能会有可能超过设备的假定循环时间。
17.本发明是鉴于上述情况而完成的,其目的在于提供一种缩短拾取和放置作业所需时间的机械臂控制装置、机械臂的制造系统和控制方法。
18.在本发明的一个方面,提供一种控制执行拾取和放置作业的机械臂的机械臂控制装置,该机械臂控制装置包括:工件选择部,在由传送系统在预定流动方向上传送的多个工件中选择作为要拾取和放置的工件的目标工件;以及动作控制部,控制机械臂的动作以在预定拾取位置处拾取目标工件并且将目标工件放置于在多个预定放置位置中选择的目标放置位置处,其中,工件选择部设定作业开始时刻的工件位置在流动方向上处于作业开始时刻的机械臂的末端位置的上游的一部分工件作为选定候补件,作业开始时刻是拾取和放置作业的开始时刻,并且工件选择部在作为选定候补件的工件中,选定从作业开始时刻的末端位置到作业开始时刻的工件位置的距离最短的工件作为目标工件。
19.虽然拾取和放置作业所需的时间也取决于机械臂的朝向,但时间主要取决于机械臂从作业开始时间点的末端位置到目标工件被拾取的时间点的目标工件位置的移动距离、以及机械臂从目标工件被拾取的时间点的目标工件位置到目标放置位置的移动距离。在下文中,在这些移动距离中,将前者移动距离称为第一移动距离,将后者移动距离称为第二移动距离。根据上述配置中的目标工件的选择标准,在作为选定候补件的工件中,具有最短第一移动距离的工件被选定为目标工件。这缩短了拾取和放置作业所需的时间。
20.在这种情况下,工件选择部设定作业开始时刻的工件位置在流动方向上处于当前末端位置的上游的工件作为选定候补件,并且作业开始时刻的工件位置在流动方向上处于末端位置的下游的工件不被包含在选定候补件中。进行这种设定的原因如下。即,工件由传送系统沿流动方向传送,并且工件的位置每刻沿流动方向移动。如果选定作业开始时刻的工件位置在流动方向上处于作业开始时刻的末端位置下游的工件作为目标工件,则目标工件在机械臂从作业开始时刻的末端位置朝向目标工件移动的同时继续沿与相关联的机械臂切实分离的方向移动。这会导致不必要地增加第一移动距离,或者在最坏的情况下,机械臂可能无法拾取目标工件。
21.相反,当选定作业开始时刻的工件位置在流动方向上处于作业开始时刻的末端位置的上游的工件作为目标工件时,目标工件在机械臂从作业开始时刻的末端位置朝向目标工件移动的同时大多朝向相关联的机械臂移动。因此,机械臂无法拾取目标工件的可能性非常低,并且第一移动距离缩短。因此,如在上述配置中,当设定作业开始时刻的工件位置在流动方向上处于作业开始时刻的末端位置的上游的工件作为选定候补件时,降低了机械
臂无法拾取工件的可能性的同时缩短了拾取和放置作业所需的时间。
22.机械臂控制装置可以进一步包括位置选择部,该位置选择部在多个预定放置位置中选择目标放置位置,该目标放置位置是目标工件将被放置的放置位置。
23.在机械臂控制装置中,位置选择部可以选定与未来工件位置(其是工件被机械臂拾取的时间点的目标工件的位置)的距离最短的放置位置中的一个作为目标放置位置。
24.在这种情况下,位置选择部选择具有最短第二移动距离的放置位置中的一个作为目标放置位置。因此,根据上述配置,主要确定拾取和放置作业所需的时间的第一移动距离和第二移动距离均被缩短。其结果,拾取和放置作业所需的时间进一步缩短。
25.在机械臂控制装置中,工件选择部可以在由位置选择部选择目标放置位置时或之后选择另一个目标工件。
26.在机械臂控制装置中,多个工件可以被传送,使得它们中的两个或更多个可以存在于传送系统的与流动方向正交的宽度方向上。
27.在本发明的另一方面,提供一种生产系统,包括:传送系统,在预定流动方向上传送多个工件;多个机械臂,执行拾取和放置作业,其中每个机械臂拾取由传送系统传送的工件中的一个并且将拾取的工件放置在多个预定放置位置中的一个;以及上述机械臂控制装置,其中,机械臂沿流动方向布置为在流动方向上从上游部至下游部共线,并且机械臂控制装置被配置为控制机械臂中的位于流动方向的最下游部的机械臂以外的一个或多个机械臂。
28.上述机械臂控制装置中使用的目标工件的选择标准最优先考虑缩短拾取和放置作业所需的时间。这可能会导致遗漏的工件。但是,利用如上配置的生产系统,可能遗漏工件的机械臂不位于流动方向上的最下游部,并且至少一个机械臂位于更下游。因此,即使由根据第一方面和第二方面的机械臂控制装置控制的机械臂遗漏任何工件,下游的机械臂也能够拾取遗漏的工件。因此,根据上述配置,整个生产系统防止了遗漏的工件的发生的同时缩短了拾取和放置作业所需的时间。
29.在该生产系统中,位于流动方向上最下游部的机械臂可以被配置为拾取由传送系统传送的多个工件中的位于流动方向上最下游部的工件,并且将拾取的工件放置在多个放置位置中的一个。
30.在本发明的另一方面,提供一种机械臂的控制方法,用于控制执行拾取和放置作业的机械臂,该方法包括:在由传送系统在预定流动方向上传送的多个工件中,设定作业开始时刻的工件位置在流动方向上处于作业开始时刻的机械臂的末端位置的上游的一部分工件作为选定候补件,作业开始时刻是拾取和放置作业的开始时刻;在作为选定候补件的工件中,选定从作业开始时刻的末端位置到作业开始时刻的工件位置的距离最短的工件作为目标工件;以及控制机械臂的动作以在预定拾取位置处拾取目标工件并且将目标工件放置于在多个预定放置位置中选择的目标放置位置。
31.现在将参考附图描述根据本发明的实施例。另外,对实施例中实质相同的部件标注相同的附图标记,并且省略详细的说明。
32.第一实施例
33.现在将参考图1至图8描述第一实施例。
34.如图1所示,本实施例的生产系统1例如包括:带式传送系统,其在本实施例中为传
送带2;机械臂3、4和5;控制器6、7和8;视觉系统9;以及编码器10。传送带2在预定的流动方向上传送多个工件11并且用作传送系统。在本说明书中,沿图1中的空心粗箭头所示的传送带2的流动方向a1的方向,即图1中的左右方向称为y轴。与y轴方向正交的方向和垂直方向,即图1中的上下方向称为x轴。在本说明书中,图1中的y轴的右侧方向被称为正向,图1中的x轴的向下方向被称为正向。
35.在生产系统1中,工件11由传送带2传送以将工件供应到工厂中的生产线。生产系统1包括如图1所示的步骤,即,如下的步骤:当工件11被传送带2传送时,机械臂3、4和5拾取工件11并且将它们以对齐的状态放置在放置托盘12中,该放置托盘12是矩形容器。换句话说,生产系统1包括将工件11从传送带2输送到放置托盘12的步骤。
36.在本实施例中,“由传送系统沿预定流动方向传送的多个工件”的描述是指传送多个工件11使得它们中的两个以上的工件可以存在于传送系统(传送带2)的与流动方向垂直的宽度方向(x轴方向)上。在这种情况下,当从y轴方向上的一点沿x轴方向观察传送带2时,仅可以观察到其中一个工件11,或者可以观察到两个以上的工件11。工件的平均数,即从y轴方向上的一点在x轴方向上观察到的工件11的平均数可以为1.5以上且200以下,3以上且150以下,5以上且1000以下或者5以上且30以下。
37.传送带2基本上连续移动而不停止。工件11例如是在本进程之前执行的先前进程中已经封装并且以单独封装状态被传送到本进程的食品,例如糖果和点心。工件11由传送带2以预定速度连续地传送。需要说明的是,在诸如图1的图中,仅一部分工件标注附图标记,并且省略其他工件的附图标记。机械臂3、4和5被配置为例如包括四轴臂的水平关节型机器人。
38.机械臂3、4和5执行拾取和放置作业,在拾取和放置作业中机械臂3、4和5中的每一个拾取由传送带2传送的工件11中的一个并将拾取的工件11放置在预定放置位置之一。具体地,机械臂3、4和5中的每一个使臂枢转以使其末端位于传送带2的上方,降低安装在臂的末端上的未示出的手部,并且通过用手部把持或吸附工件11来提起工件11。机械臂3、4和5中的每一个使臂枢转以使其末端位于相关联的放置托盘12的上方,降低手部,并在放置托盘12中的预定放置位置处从手部释放工件11。在这种情况下,放置位置包括每个放置托盘12中的九个放置位置p1至p9。
39.机械臂3、4和5沿着传送带2的流动方向a1,即沿着y轴,布置成在流动方向a1上从上游部到下游部共线。位于流动方向a1上最上游部的机械臂3由控制器6控制。位于流动方向a1上第二上游部的机械臂4由控制器7控制。位于流动方向a1上最下游部的机械臂5由控制器8控制。如上所述,控制器6、7和8分别控制机械臂3、4和5,并且用作机械臂控制装置。
40.将由机械臂3放置工件11的放置托盘12位于传送带2的两侧上机械臂3的附近以在传送带2位于其间的状态下彼此面对。将由机械臂4放置工件11的放置托盘12位于传送带2的两侧上机械臂4的附近以在传送带2位于其间的状态下彼此面对。将由机械臂5放置工件11的放置托盘12位于传送带2的两侧上机械臂5的附近以在传送带2位于其间的状态下彼此面对。
41.生产系统1利用以下配置实现使机械臂3、4和5能够追踪工件11并且执行拾取和放置作业而不停止传送带2的传送带追踪功能。即,包括诸如照相机的部件的视觉系统9在流动方向a1上机械臂3、4和5的上游的预定成像范围内拍摄工件11的图像。
42.未图示的控制装置或控制器6、7和8对由视觉系统9捕获的图像执行预定的图像识别处理,以获取关于传送带2上的工件11的位置和朝向。安装在传送带2上的编码器10输出与传送带2的移动距离和移动速度相对应的脉冲信号。基于该脉冲信号,控制装置或控制器6、7和8依次计算在成像范围内已获取其位置和朝向的工件11将如何被传递并且使机械臂3、4和5追踪工件11。
43.尽管将省略详细描述,但是控制位于流动方向a1上的最下游部的三个机械臂3、4和5中的一个(即机械臂5)的控制器8具有与传统控制器相同的配置和功能。因此,机械臂5被设计为最高优先考虑可靠地防止遗漏工件11的发生,选择并拾取位于流动方向a1上最下游的工件11中的一个。
44.控制三个机械臂3、4和5中的位于流动方向a1上最下游部的机械臂5以外的机械臂3和4的控制器6和7都具有以下独特的配置和功能。在以下的各个描述中,尽管以控制器6为例描述控制器6和7的具体配置和功能,但控制器7的具体配置和功能相同。控制器6通过由包括由未示出的cpu、rom和ram构成的计算机的控制装置来执行计算机程序从而控制机械臂3。
45.具体地,控制器6包括由例如逆变器电路构成的驱动单元。控制器6例如通过基于由与电机对应的编码器检测到的每个电机的旋转位置的反馈控制来驱动对机械臂3的轴进行驱动的各个电机。控制器6执行预先设定的动作程序来控制机械臂3,使得机械臂3的各个轴自动地执行预定动作。
46.控制器6包括诸如工件选择部13、位置选择部14、动作控制部15的功能块。功能块通过执行存储在rom中的计算机程序的控制器6的cpu来执行与计算机程序相对应的处理来实现,即,功能块通过软件实现。需要说明的是,至少一部分功能块可以通过硬件实现。
47.工件选择部13选择工件11中的作为要拾取和放置的工件11的目标工件。具体地,工件选择部13设定当前工件位置在流动方向a1上机械臂3的末端或手部的当前位置(称为当前末端位置)的上游的一部分工件11作为选定候补件,并且选定作为选定候补件的工件11中的具有从当前末端位置到当前工件位置的最短距离的工件11作为目标工件。
48.位置选择部14选择放置位置p1至p9中的作为目标工件将要被放置的放置位置的目标放置位置。具体地,位置选择部14选择放置位置p1至p9中的与未来工件位置(其是工件11被机械臂3拾取的时间点的目标工件的估计位置)的距离最短的放置位置作为目标放置位置。动作控制部15控制机械臂3的动作,以在预定的拾取位置拾取由工件选择部13选择的目标工件,并且将拾取的目标工件放置在由位置选择部14选择的目标放置位置处。
49.接下来,将参考图2至图7描述由控制器6执行的关于拾取和放置作业的具体动作的示例,该控制器6控制如上所述配置的机械臂3。需要说明的是,在图2至图7中,省略了机械臂3的图示,并且仅机械臂3的末端的位置用虚线圆圈示出。假设机械臂3已经在先前作业中将工件11放置在放置位置p9来进行描述。在这种情况下,由于机械臂3的末端位于放置位置p9处,所以放置位置p9成为初始的当前末端位置。
50.在这种情况下,追踪范围覆盖图2中由虚线矩形包围的范围t1,并且机械臂3将范围t1内的7个工件11视作追踪对象。在以下描述中,在数字末尾使用小写字母a至g来区分将作为追踪对象的七个工件11。需要说明的是,当七个工件11不需要相互区分时,七个工件11将被统称为工件11而省略了后面的字母字符。需要说明的是,图2中的工件11的位置示出了
当前工件位置。
51.如图2所示,工件选择部13形成第一搜索范围r1,第一搜索范围r1是其中心在当前末端位置处,具有在负x轴方向和正y轴方向上延伸的90度扇区的搜索范围。工件选择部13逐渐扩大如上所述作为90度扇区的第一搜索范围r1,并且选定在第一搜索范围r1内首先检测到的工件11作为目标工件。在本实施例中,当任意工件11的中心位置存在于第一搜索范围r1内时,工件选择部13判定工件11存在于第一搜索范围r1内。也就是说,由于在这种情况下工件选择部13通过点来判断各工件11的存在,因此首先检测到多个工件11的可能性非常低。在这种情况下,由于工件选择部13首先在第一搜索范围r1内检测到工件11c,所以工件11c被选定为目标工件。
52.随后,控制器6在机械臂3拾取工件11c的时间点获得未来工件位置,未来工件位置是目标工件(在这种情况下是工件11c)的估计位置。这种未来工件位置的计算通过上述的传送带追踪功能实现的。需要说明的是,在图3中,工件11的未来工件位置由实线表示,工件11c的当前工件位置由虚线表示。如图3所示,工件11c的未来工件位置从其当前工件位置沿负y轴方向偏移与机械臂3移动以拾取工件11c所需的时间相对应的量。
53.如图3所示,位置选择部14形成第二搜索范围r2,该第二搜索范围r2是其中心位于工件11c的未来工件位置,具有沿x轴正方向即朝向将放置工件11c的放置托盘12延伸的180度扇区的搜索范围。在这种情况下,由于将位于传送带2的x轴正方向上的一侧的放置托盘12中的放置位置p1至p9设定为搜索对象,因此形成具有沿x轴正方向延伸的180度扇区的第二搜索范围r2。然而,在将位于传送带2的负x轴方向的一侧的放置托盘12(未示出)中的放置位置p1至p9设定为搜索对象时,位置选择部14仅需要形成具有沿负x轴方向延伸的180度扇区的第二搜索范围r2。
54.位置选择部14逐渐扩大如上所述作为180度扇区的第二搜索范围r2,并且选定在第二搜索范围r2内首先检测到的放置位置作为目标放置位置。在本实施例中,当任何放置位置的中心位置存在于第二搜索范围r2内时,位置选择部14判定放置位置存在于第二搜索范围r2内。也就是说,由于在这种情况下位置选择部14通过点来判定每个放置位置的存在,所以首先检测到多个放置位置的可能性非常低。在这种情况下,由于位置选择部14首先在第二搜索范围r2内检测到放置位置p3,所以放置位置p3被选定作为目标放置位置。
55.随后,动作控制部15控制机械臂3的动作以拾取由工件选择部13选定作为目标工件的工件11c,并且将工件11c放置在由位置选择部14选定作为目标放置位置的放置位置p3处。如图4的实线箭头所示,在这种情况下的机械臂3的动作轨迹从当前的末端位置(即,放置位置p9)延伸到工件11c的未来工件位置,进而到达目标放置位置,目标放置位置是放置位置p3。需要说明的是,图4中的工件11的所有位置都示出了未来工件位置。这完成了对于工件11c的拾取和放置作业,并且随后开始了对于下一个工件11的拾取和放置作业。即,在对于工件11c的拾取和放置作业完成时,工件选择部13在多个工件11中选择另一工件11作为下一个目标工件11,下一个目标工件11是拾取和放置作业的目标。
56.在这种情况下,由于机械臂3的末端位于图5所示的放置位置p3,放置位置p3将成为当前的末端位置。需要说明的是,图5中的工件11的所有位置都示出了当前工件位置。如图5所示,工件选择部13以与先前作业相同方式形成第一搜索范围r1(其是其中心在当前末端位置的90度扇区),并且选定在第一搜索范围r1内首先检测到的工件11作为目标工件。在
这种情况下,由于工件选择部13首先在第一搜索范围r1内检测到工件11d,所以工件11d被选定作为目标工件。
57.随后,控制器6在机械臂3拾取工件11d的时间点获得未来工件位置,所述未来工件位置是目标工件(在这种情况下为工件11d)的估计位置。需要说明的是,在图6中,工件11的未来工件位置由实线表示,工件11d的当前工件位置由虚线表示。如图6所示,工件11d的未来工件位置从当前工件位置沿负y轴方向偏移与机械臂3移动以拾取工件11d所需的时间相对应的量。
58.如图6所示,位置选择部14以与先前作业相同的方式形成第二搜索范围r2(其是其中心在工件11d的未来工件位置的180度扇区),并且选定在第二搜索范围r2内首先检测到的放置位置作为目标放置位置。在这种情况下,位置选择部14首先在第二搜索范围r2内检测到放置位置p3,但是工件11c已经被放置在放置位置p3中。因此,位置选择部14不选定放置位置p3作为目标放置位置,并继续寻找放置位置。随后,位置选择部14在第二搜索范围r2内检测到放置位置p2,从而选择放置位置p2作为目标放置位置。
59.随后,动作控制部15控制机械臂3的动作,以拾取由工件选择部13选定作为目标工件的工件11d并且将工件11d放置在由位置选择部14选定作为目标放置位置的放置位置p2处。如图7的实线箭头所示,在这种情况下的机械臂3的动作轨迹从作为放置位置p3的当前末端位置延伸到工件11d的未来工件位置,进而达到作为放置位置p2的目标放置位置。需要说明的是,图7中的工件11的所有位置都示出了未来工件位置。这完成了对于工件11d的拾取和放置作业,并且随后开始对于下一个工件11的拾取和放置作业。
60.在本实施例中,重复执行上述操作,使得工件11被放置在相关联的放置托盘12中的所有的放置位置p1至p9。需要说明的是,在这种情况下,如图7所示,工件11a、11b和11e在没有被机械臂3拾取的情况下移动到追踪范围的下游并且将成为被机械臂3遗漏的遗漏工件。但是,被机械臂3遗漏的工件11a、11b和11e能够通过由位于下游的机械臂4和5执行的操作来拾取。
61.在这种情况下,工件11被连续地放置在两个放置托盘12中的一个,但是工件11可以交替地放置在两个放置托盘12中,使得工件11平均地放置在两个放置托盘12中。在这种情况下,拾取和放置作业也通过如上述的特定动作以相同的方式执行。
62.接下来,将参考图8描述关于由控制器6执行的拾取和放置作业的具体进程的示例,该控制器6控制如上所述配置的机械臂3。需要说明的是,在本说明书中,将描述直至机械臂3的动作轨迹被确定时为止的进程,并且将省略对动作轨迹被确定之后的进程的描述。首先,在步骤s1中,获取机械臂3的当前末端位置。在步骤s2,形成第一搜索范围r1,该第一搜索范围r1是其中心在当前末端位置的具有在负x轴方向和正y轴方向上延伸的90度扇区的搜索范围。在步骤s3,判断在第一搜索范围r1中是否检测到任何工件11。
63.如果在第一搜索范围r1中检测到工件11,则步骤s3的判定结果为“是”,并且进程进行到步骤s4。在步骤s4,选定检测到的工件11作为目标工件。如果在第一搜索范围r1中未检测到工件11,则步骤s3的判定结果为“否”,并且进程进行到步骤s5。在步骤s5,以使扇区半径增加预定值的方式扩大第一搜索范围r1。在执行步骤s5之后,进程进行到步骤s6,并且判定第一搜索范围r1是否达到上限。需要说明的是,可以基于例如机械臂3的可移动范围的上限或机械臂3执行拾取和放置作业所需的时间的上限来确定第一搜索范围r1的上限。
64.如果第一搜索范围r1小于上限,则步骤s6的判定结果为“否”,并且进程返回到步骤s3以继续搜索工件11。如果第一搜索范围r1已达到上限,则步骤s6的判定结果为“是”,并且进程进行到步骤s7。在步骤s7,由于没有检测到要被选定作为目标工件的工件11,因此执行预定的错误处理进程。在执行步骤s7之后,本进程结束。在执行步骤s4之后,进程进行到步骤s8,并且形成第二搜索范围r2,第二搜索范围r2是其中心在目标工件的未来工件位置,具有朝向放置托盘12延伸的180度扇区的搜索范围。
65.在步骤s9,判定在第二搜索范围r2内是否检测到任何放置位置。如果在第二搜索范围r2内检测到放置位置,则步骤s9的判定结果为“是”,并且进程进行到步骤s10。在步骤s10,检测到的放置位置被选定作为目标放置位置。如果在第二搜索范围r2内没有检测到放置位置或者工件11已经放置在检测到的放置位置中,则步骤s9的判定结果为“否”,并且进程进行到步骤s11。在步骤s11,以使扇区的半径增加预定值的方式扩大第二搜索范围r2。在执行步骤s11之后,进程进行到步骤s12,并且判定第二搜索范围r2是否已经达到上限。需要说明的是,第二搜索范围r2的上限被设定为比刚好覆盖放置托盘12中的所有放置位置p1至p9的范围大预定余量的范围。
66.如果第二搜索范围r2小于上限,则步骤s12的判定结果为“否”,并且进程返回到步骤s9以继续搜索放置位置。如果第二搜索范围r2已达到上限,则步骤s12的判定结果为“是”,并且进程进行到步骤s13。在步骤s13,由于没有检测到要选定作为目标放置位置的放置位置,因此执行预定的错误处理进程。在执行步骤s13之后,本进程结束。在执行步骤s10之后,进程进行到步骤s14。在步骤s14,确定动作轨迹,在该动作轨迹中当前末端位置被设定为起点,未来工件位置被设定为转移点,目标放置位置被设定为终点。在执行步骤s14之后,本进程结束。
67.上述本实施例具有以下有益效果。
68.本实施例的控制器6和7包括工件选择部13和位置选择部14,工件选择部13在工件11中选择要拾取和放置的工件11或目标工件,位置选择部14在放置位置中选择要放置目标工件的放置位置或目标放置位置。工件选择部13基于以下选择标准选择目标工件。即,工件选择部13将当前工件位置在传送带2的流动方向a1上在相关联的机械臂3或4的当前末端位置的上游的一部分工件11设定作为选定候补件,并且选定作为选定候补件的工件11中的具有从当前末端位置到当前工件位置的最短距离的工件11作为目标工件。
69.虽然拾取和放置作业所需的时间也取决于机械臂3和4的朝向,但时间主要取决于机械臂3和4从当前末端位置到未来工件位置(其是目标工件被拾取的时间点的目标工件的位置)的移动距离以及机械臂3和4从目标工件的未来工件位置到目标放置位置的移动距离。在下文中,在这些移动距离中,前者移动距离称为第一移动距离,后者移动距离称为第二移动距离。根据上述配置中的目标工件的选择标准,在作为选定候补件的工件11中,具有最短第一移动距离的工件11被选定作为目标工件。这缩短了拾取和放置作业所需的时间。
70.在这种情况下,工件选择部13将其当前工件位置在流动方向a1上的当前末端位置的上游的工件11设定作为选定候补件,并且其当前工件位置在流动方向上的当前末端位置的下游的工件11不被包括在选定候补件中。进行这种设定的原因如下。即,工件11由传送带2沿流动方向a1传送,并且工件11的位置每刻在流动方向上移动。
71.由于该配置,如果将其当前工件位置在流动方向a1上的当前末端位置的下游的工
件11选定作为目标工件,则目标工件在机械臂3或4从当前的末端位置朝向目标工件移动的同时继续沿与机械臂3或4切实分离的方向移动。这导致不必要地增加机械臂3或4的第一移动距离,或者在最坏的情况下,机械臂3或4可能无法拾取目标工件。
72.相对于此,如果其当前工件位置在流动方向上的当前末端位置的上游的工件被选定作为目标工件,则在机械臂3从当前的末端位置朝向目标工件移动的同时目标工件大多朝向机械臂3或4移动。因此,机械臂3或4无法拾取目标工件的可能性非常低,并且缩短了第一移动距离。因此,如在上述配置中,通过将其当前工件位置在流动方向a1上的当前末端位置的上游的工件11设定作为选定候补件,减少了机械臂3或4无法拾取工件的可能性的同时缩短了拾取和放置作业所需的时间。
73.位置选择部14选定放置托盘12中的放置位置p1至p9中的与未来工件位置(其是在机械臂3或4拾取工件11的时间点目标工件的位置)的距离最短的放置位置作为目标放置位置。也就是说,在这种情况下,位置选择部14选定放置位置p1至p9中的具有机械臂3或4的最短第二移动距离的放置位置作为目标放置位置。因此,根据上述配置,主要确定拾取和放置作业所需时间的第一移动距离和第二移动距离均被缩短。因此,进一步缩短了拾取和放置作业所需的时间。
74.本实施例的生产系统1包括:传送带2,沿预定流动方向a1传送工件11;机械臂3、4和5,执行拾取和放置作业,其中机械臂3、4和5中的每一个拾取由传送带2传送的工件11中的一个并且将拾取的工件11放置在预定放置位置中的一个;以及控制器6、7和8。在这种情况下,机械臂3、4和5沿流动方向a1布置成在流动方向a1上从上游部到下游部共线。
75.在机械臂3、4、5中,控制除位于流动方向a1上的最下游部的机械臂5以外的机械臂3和4的控制器6和7均具有如上所述的独特的配置和功能。由这些控制器6和7使用的目标工件的选择标准最优先考虑缩短拾取和放置作业所需的时间。这可能导致遗漏的工件11。然而,在根据上述配置的生产系统1中,可能遗漏工件11的机械臂3和4不位于流动方向a1上的最下游部,并且机械臂5位于更下游。
76.因此,即使由控制器6和7控制的机械臂3和4遗漏任何工件11,位于机械臂3和4下游的机械臂5也可以拾取遗漏的工件11。此外,在这种情况下,机械臂5被设计为最优先考虑可靠地防止遗漏的工件11的发生,选择并拾取位于流动方向a1上最下游的工件11中的一个。因此,根据上述配置,整个生产系统1防止了遗漏工件11的发生的同时缩短了拾取和放置作业所需的时间。
77.当第一搜索范围r1达到上限时,工件选择部13不选择目标工件,即在该时间点停止拾取工件11。利用基于机械臂3和4执行拾取和放置作业所需的时间的上限而确定的第一搜索范围r1的上限,当在追踪范围t1内仅具有第一移动距离极长的工件11时,工件选择部13停止拾取这样的工件11并且使下游机械臂5执行该作业。这有助于进一步缩短机械臂3和4执行拾取和放置作业所需的时间。
78.第二实施例
79.现在将参考图9来描述第二实施例。
80.在本实施例中,机械臂3、4和5将拾取的工件11按照该步骤放置在各放置托盘12中的放置位置p1至p9。因此,本实施例的位置选择部14从最后具有较小编号的位置按顺序选定放置位置p1至p9中的每一个作为目标放置位置。
81.因此,例如,本实施例的关于由控制机械臂3的控制器6执行的拾取和放置作业的具体进程的示例如图9所示。图9所示的本实施例的进程与图8所示的第一实施例的进程的不同之处在于省略了步骤s8至s13并且增加了步骤s21。在这种情况下,在执行步骤s8之后,进程进行到步骤s21。在步骤s21,在放置位置p1至p9中依次选择目标放置位置。在执行步骤s21之后,进程进行到步骤s14,并且动作轨迹被确定。
82.如上所述,根据本实施例,由于基于与第一实施例相同的选择标准来选定目标工件,因此也实现了与第一实施例相同的有利效果。即,由于整个生产系统1,减少了机械臂3和4无法拾取目标工件的可能性的同时,缩短了拾取和放置作业所需的时间,并且防止了遗漏的工件11的发生。
83.其他实施例
84.本发明不限于上述和附图所示的实施例,并且可以在不脱离本发明的范围的情况下进行修改、组合或扩大。
85.上述实施例中所示的数值是说明性的而不应被解释为限制性的。
86.生产系统1包括三个机械臂3、4和5。然而,生产系统1仅需要包括多个机械臂并且可以包括两个或四个以上的机械臂。当改变机械臂的数量时,仅是,控制除了位于传送带2的流动方向a1上的最下游部的机械臂之外的预定机械臂的控制器需要具有与上述实施例中所示的控制器6相同的配置和功能。
87.在上述实施例中,讨论了多个机械臂中的位于流动方向上的最下游部的机械臂被配置为拾取多个工件中的位于流动方向上的最下游部的工件。然而,本发明不限于这样的实施例。例如,所有的机械臂可以由根据本发明的上述的机械臂控制装置来控制。该实施例适合于当传送系统为圆形传送系统的情况。
88.在上述实施例中,讨论了在当前工件的拾取和放置作业完成时,工件选择部选择下一个目标工件。然而,本发明不限于这样的实施例。工件选择部可以在由位置选择部选择当前目标放置位置时或之后选择另一个目标工件。也就是说,在当前目标工件的目标放置位置已经确定时,作业开始时刻(其是下一个拾取和放置作业的开始时刻)的机械臂的末端位置被自动固定。在这种情况下,将术语“当前末端位置”和“当前工件位置”分别替换为“作业开始时刻的末端位置”和“作业开始时刻的工件位置”,以便工件选择部正确地选择目标工件。
89.在上述实施例中,讨论了诸如工件选择部13、位置选择部14和动作控制部15的功能块由包括cpu、rom、ram等的计算机来实现。然而,本发明不限于这些实施例。诸如工件选择部13、位置选择部14、动作控制部15的功能块也可以使用任意适当的半导体集成电路来实现,诸如cpu以外的运算装置、诸如pld(programmable logic device,可编程逻辑装置)、例如fpga(现场可编程门阵列)或fpaa(现场可编程模拟阵列)、asic(专用集成电路)或mpu(微处理单元)。每个功能块使用一个半导体集成电路或使用多个半导体集成电路来实现。一个半导体集成电路可以实现多个功能块。
90.本发明不限于应用于生产系统1的控制机械臂3和4的控制器6和7,并且可以应用于控制执行拾取和放置作业的一般机械臂控制装置。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献