机械手用位置检测装置以及检测方法、机械手系统转让专利

申请号 : CN201210031801.5

文献号 : CN102632506B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 五十岚克司浅田笃说田信之井内千惠子

申请人 : 精工爱普生株式会社

摘要 :

水平多关节机械手(机械手)用位置检测装置具有:对作为拍摄对象的机械手或工件进行拍摄的摄像头、根据图像算出拍摄对象的位置的控制部、获取机械手的第1以及第2马达的驱动量的I/O、将拍摄对象的算出位置和驱动量建立对应地存储的存储部。向所述摄像头以及I/O输入用于检测拍摄对象的位置的共同的触发信号。摄像头基于触发信号的输入开始拍摄对象的拍摄,而在I/O中,控制部基于该触发信号的输入获得驱动量。

权利要求 :

1.一种机械手用位置检测装置,其特征在于,具备:拍摄部,其在机械手的移动中对作为拍摄对象的所述机械手以及该机械手所保持的工件中的至少一方进行拍摄;

计算部,其根据拍摄到的图像来算出所述拍摄对象的位置;

获取部,其获取所述机械手的驱动源的驱动量;以及存储部,其将所述拍摄对象的算出位置和所述驱动量建立对应关系地存储,所述拍摄部以及所述获取部被输入用于检测所述拍摄对象的位置的共同的触发信号,所述拍摄部基于所述触发信号开始所述拍摄对象的拍摄,所述获取部基于所述触发信号开始所述驱动量的获取。

2.根据权利要求1所述的机械手用位置检测装置,其特征在于,具备指令输出部,该指令输出部在所述机械手的外部检测所述机械手或该机械手所保持的工件是否到达了规定的位置,在该检测的对象到达所述规定的位置时,向所述拍摄部和所述获取部输出所述共同的触发信号。

3.根据权利要求2所述的机械手用位置检测装置,其特征在于,所述指令输出部所检测的检测对象是所述拍摄部的所述拍摄对象,所述指令输出部对所述检测对象是否到达了所述拍摄部的拍摄区域进行检测。

4.根据权利要求1~3中任意一项所述的机械手用位置检测装置,其特征在于,所述拍摄对象是所述工件,在所述拍摄部的拍摄区域,把持所述工件的末端执行器相对于所述拍摄部被所述工件光学遮蔽。

5.根据权利要求1~3中任意一项所述的机械手用位置检测装置,其特征在于,所述存储部将所述拍摄对象的目标位置和所述驱动源的驱动量建立对应关系地存储,具备补正部,该补正部基于所述存储部所存储的所述算出位置和所述驱动量之间的对应关系,对所述目标位置和用于到达所述目标位置的驱动量之间的对应关系进行补正。

6.一种机械手系统,其特征在于,具备输送工件的机械手和对所述机械手的位置或所述机械手所输送的工件的位置进行检测的机械手用位置检测装置,所述机械手用位置检测装置是权利要求1~5中任意一项所述的机械手用位置检测装置。

7.一种机械手用位置检测方法,其特征在于,包括:在机械手的移动中对作为拍摄对象的所述机械手以及该机械手所保持的工件中的至少一方进行拍摄的工序;

根据拍摄到的图像来算出所述拍摄对象的位置的工序;

获取所述机械手的驱动源的驱动量的工序;以及

将所述拍摄对象的算出位置和所述驱动量建立对应关系地存储的工序,基于用于检测拍摄对象的位置的共同的触发信号,来开始拍摄所述拍摄对象的工序和获取所述驱动量的工序。

8.一种机械手用位置检测装置,其特征在于,具备:拍摄部,其在具有驱动源的机械手的移动中对所述机械手进行拍摄;

计算部,其根据由所述拍摄部拍摄到的图像来算出所述机械手的位置;

获取部,其获取利用所述驱动源来驱动所述机械手的驱动量;以及指令输出部,其对所述机械手在规定范围中移动了的情况进行检测,所述指令输出部对所述机械手在所述规定范围中移动了的情况进行检测来生成信号,所述拍摄部和所述获取部接收相同的所述信号。

9.根据权利要求8所述的机械手用位置检测装置,其特征在于,所述指令输出部检测在所述拍摄部进行拍摄的拍摄区域中存在用于所述机械手保持工件的末端执行器来生成所述信号。

10.根据权利要求8或者9所述的机械手用位置检测装置,其特征在于,所述指令输出部是具备投射光的投光部和接收光的受光部的光学式传感器。

说明书 :

机械手用位置检测装置以及检测方法、机械手系统

技术领域

[0001] 本发明涉及基于图像对机械手的位置或机械手所输送的工件的位置进行检测的机械手用位置检测装置、机械手系统以及机械手用位置检测方法。

背景技术

[0002] 从以往,已知例如专利文献1所述的那样,基于图像来对机械手所具有的末端执行器的位置或机械手的末端执行器所把持的工件的位置进行检测的方法。图5是表示对在输送工件的动作的中途所进行的机械手的位置检测以及工件的位置检测,应用上述方法的例子。
[0003] 如图5所示,在作为机械手的一种的水平多关节机械手40(以下称为机械手40)中内置有使与基台41连结的第1臂部42转动的第1马达41a、和使与第1臂部42连结的第2臂部43转动的第2马达43a。构成机械手40的第1臂部42以及第2臂部43向与这些第1马达41a以及第2马达43a各自的驱动量相应的位置移动。由此,机械手40通过与花键44的前端连结的末端执行器45,在把持位置P1处把持载置于载置台51的工件W,并且将工件W从把持位置P1向作为摄像头52正上方的拍摄位置P2输送。
[0004] 在机械手控制器60中搭载有对保存在机械手控制器60的动作程序进行解释而执行的控制部61、和基于控制部61所输出的控制信号向各驱动源输出驱动信号的马达驱动器62。此外,机械手控制器60搭载有根据由摄像头52拍摄到的图像,来算出末端执行器45或工件W的位置的图像处理部63。而且,机械手控制器60还搭载有对控制机械手40所需的各种数据进行存储的存储部64,在该存储部64保存有表示把持位置P1的坐标、拍摄位置P2的坐标的位置数据64a。
[0005] 在检测工件W相对于末端执行器45的位置时,首先利用控制部61来解释用于检测工件W的把持状态的动作程序,且利用控制部61来计算用于将末端执行器45从当前位置移动至把持位置P1的各驱动源的驱动量。接下来,基于控制部61的计算结果的驱动信号被从马达驱动器62输出至第1马达41a以及第2马达43a。由此,末端执行器45移动至把持位置P1而把持工件W。
[0006] 接下来,利用控制部61来计算用于将末端执行器45从把持位置P1移动至拍摄位置P2的各驱动源的驱动量,基于控制部61的计算结果的驱动信号被从马达驱动器62输出至第1马达41a以及第2马达43a。由此,在末端执行器45一直把持工件W的状态下,该末端执行器45移动到拍摄位置P2。
[0007] 若基于第1马达41a的编码器以及第2马达43a的编码器所输出的输出信号,控制部61掌握到末端执行器45到达拍摄位置P2这一情况,则控制部61输出用于驱动摄像头52的控制信号。由此,若利用摄像头52拍摄到处于被末端执行器45把持的状态的工件W,从控制部61输出用于获取图像的信号,则被摄像头52拍摄到的图像输入至图像处理部63。然后,图像处理部63根据图像算出工件W的位置,并且根据该算出的结果和拍摄位置P2的坐标,控制部61计算工件W相对于末端执行器45的位置。
[0008] 【专利文献1】日本特开2009-2860号公报
[0009] 可是,在所述的方法中,对处于被末端执行器45把持的状态的工件W进行拍摄时,要使末端执行器45的运动在拍摄位置P2处停止。并且,将末端执行器45的实际的位置作为预设的拍摄位置P2看待。
[0010] 可是,在这样的方法中,每当进行用于检测工件W的把持状态的动作时,机械手40的运动就被停止,如果在输送工件W的过程中检测这样的把持状态,则工件W的输送效率自然而然地下降。附带说明,除了检测工件W的把持状态的动作以外,在其他动作的过程中检测末端执行器45的位置时也同样地,只要使末端执行器45的运动停止在拍摄位置P2处,结果就是机械手40应该进行的本来的处理的效率下降。即、在所述的方法中,使根据拍摄图像算出的机械手的状态和各驱动源的驱动量相对应的处理会使除此之外的处理的效率下降。

发明内容

[0011] 本发明是鉴于上述实际情况而实现的,其目的在于提供一种机械手用位置检测装置、机械手系统以及机械手用位置检测方法,能够提高基于图像使机械手所具有的驱动源的驱动量和实际的机械手的状态相对应的处理的效率。
[0012] 本发明的机械手用位置检测装置的要旨在于,具备:拍摄部,其在机械手的移动中对作为拍摄对象的机械手以及机械手所保持的工件的至少一方进行拍摄;计算部,其根据拍摄到的图像来算出所述拍摄对象的位置;获取部,其获取所述机械手的驱动源的驱动量;以及存储部,其将所述拍摄对象的算出位置和所述驱动量建立对应关系地存储,所述拍摄部以及所述获取部被输入用于检测所述拍摄对象的位置的共同的触发信号,所述拍摄部基于所述触发信号开始所述拍摄对象的拍摄,所述获取部基于所述触发信号开始所述驱动量的获取。
[0013] 根据本发明的机械手用位置检测装置,基于用于检测拍摄对象的位置的触发信号,拍摄部对拍摄对象进行拍摄,且获取部获取驱动源的驱动量。而且,这样的触发信号被输入到拍摄部和获取部这双方,即、拍摄部和获取部是由共同的触发信号驱动。因此,即使是移动中的机械手、工件成为拍摄对象的拍摄的方式,只要这些拍摄部和获取部由共同的一个触发信号驱动,那么由拍摄部拍摄到的图像、和由获取部获取的驱动量在时间轴上是接近的。
[0014] 机械手其本身的图像和机械手的位置相关这一事实是理所当然的,而且,机械手所保持的工件的图像也和机械手的位置密切相关。因此,根据所述的构成,从移动中的机械手得到的2个信息,即、根据图像得到的机械手的位置和该位置处的驱动源的驱动量在时间轴上接近且互相对应。而且,这种对应是针对移动中的机械手而进行的,所以能够缩短或消除为了检测机械手的位置而停止机械手的期间、用于机械手停止后再加速的期间等。因此,能够提高基于图像使机械手所具有的驱动源的驱动量和实际的机械手的状态相对应的处理的效率。
[0015] 本发明优选具备指令输出部,该指令输出部在所述机械手的外部检测所述机械手或该机械手所保持的工件是否到达规定的位置,在该检测的对象到达所述规定的位置时,向所述拍摄部和所述获取部输出所述共同的触发信号。
[0016] 根据本发明,机械手或该机械手所保持的工件到达规定的位置时,拍摄部和获取部被驱动。因此,拍摄部拍摄的图像和获取部获取的驱动量通常是机械手或该机械手所保持的工件到达规定的位置时的值。如果是这样的结构,在每次触发信号输入时,拍摄部所拍摄的图像之间的差别不会很大。因此,能够预先将根据拍摄部所拍摄的图像算出拍摄对象的位置的方式做成简单的结构。而且,也能够提高通过这样的图像的处理所得到的结果的精度、即、拍摄对象的位置的精度。
[0017] 本发明优选,所述指令输出部的检测的对象是所述拍摄部的所述拍摄对象,所述指令输出部对所述检测的对象是否到达所述拍摄部的拍摄区域进行检测。
[0018] 根据本发明,在拍摄部的拍摄对象到达拍摄区域时,拍摄部和获取部被驱动。因此,可更加可靠地实现以下的内容,即、拍摄部所拍摄的图像中包含拍摄对象、以能够算出拍摄对象的位置为限来对拍摄对象进行拍摄。所以,能够进一步提高通过如上所述的图像的处理得到的结果的精度,即、拍摄对象的位置的精度。
[0019] 本发明优选,所述拍摄对象是所述工件,在所述拍摄部的拍摄区域,把持所述工件的末端执行器相对于所述拍摄部被所述工件光学遮蔽。
[0020] 根据本发明,基于拍摄部所拍摄的工件的图像算出工件的位置,而基于获取部所获取的驱动量算出末端执行器的位置。因此,即使在不能够通过拍摄部对末端执行器进行拍摄的情况下,也能够使工件的位置和把持该工件的末端执行器的位置相对应起来。即、即使在不能够通过拍摄部检测出末端执行器的位置的情况下,也能够掌握末端执行器和工件之间的相对位置。其结果,能够减少以末端执行器和工件双方被拍摄的方式而配置拍摄部的烦琐。而且,因为能够将拍摄部的拍摄区域设计成特定化为工件的位置,所以能够提高根据图像算出的工件的位置的精度。
[0021] 本发明优选,所述存储部将所述拍摄对象的目标位置和所述驱动源的驱动量建立对应关系地存储,具备补正部,该补正部基于所述存储部所存储的所述算出位置和所述驱动量的对应关系,对所述目标位置和用于到达所述目标位置的驱动量的对应关系进行补正。
[0022] 根据本发明,能够基于图像,使机械手所具有的驱动源的驱动量和实际的机械手的状态相对应,并且基于其对应关系对驱动源的驱动量进行补正。
[0023] 本发明的机械手系统的要旨在于,是具备输送工件的机械手和对所述机械手的位置或所述机械手所输送的工件的位置进行检测的机械手用位置检测装置的机械手系统,所述机械手用位置检测装置是上述机械手用位置检测装置。
[0024] 根据本发明的机械手系统,能够提供一种可提高基于图像使机械手所具有的驱动源的驱动量和实际的机械手的状态相对应的处理的效率。
[0025] 本发明的机械手用位置检测方法的要旨在于,包括:在机械手的移动中对作为拍摄对象的机械手以及该机械手所保持的工件中的至少一方进行拍摄的工序;根据拍摄到的图像来算出所述拍摄对象的位置的工序;获取所述机械手的驱动源的驱动量的工序;以及将所述拍摄对象的算出位置和所述驱动量建立对应关系地存储的工序,基于一个触发信号开始拍摄所述拍摄对象的工序和获取所述驱动量的工序。
[0026] 根据本发明的机械手用位置检测方法,基于用于检测拍摄对象的位置的一个触发信号,开始拍摄对象的拍摄和驱动源的驱动量的获取。因此,即使移动中的机械手、工件成为拍摄对象的拍摄的方式中,拍摄对象的图像和驱动源的驱动量在时间轴上接近且互相对应。即、这种对应是针对移动中的机械手而进行的,所以能够缩短或消除用于检测机械手的位置的机械手停止的期间、用于机械手停止后再加速的期间等。因此,能够提高根据图像检测机械手的位置时的处理的效率。

附图说明

[0027] 图1是表示本发明的机械手系统的一个实施方式的简要构成的图。
[0028] 图2是表示该实施方式中的触发信号生成时的拍摄区域和被末端执行器把持的工件的关系的图。
[0029] 图3是表示机械手的位置检测处理的步骤的流程图。
[0030] 图4是表示变形例中的触发信号生成时的拍摄区域和被末端执行器把持的工件的关系的图。
[0031] 图5是表示以往的机械手系统的简要构成的图。
[0032] 附图标记说明:
[0033] 10、40…水平多关节机械手(机械手),11、41…基台,11a、41a…第1马达,11b…第1编码器,12、42…第1臂部,12a…第1旋转轴,12b…第2旋转轴,13、43…第2臂部,13a、
43a…第2马达,13b…第2编码器,13c…第3马达,14、44…花键,15、45…末端执行器,21、
51…载置台,22、52…摄像头,22a…拍摄区域,23…光学传感器,23a…投光部,23b…受光部,30、60…机械手控制器,31、62…I/O,32、63…图像处理部,33、61…控制部,34、64…存储部,34a…机械手数据,34b…相关数据,64a…拍摄位置数据存储部,P1…把持位置,P2…拍摄位置,W…工件,Wa…重心。

具体实施方式

[0034] 以下,参照图1~图3,对本发明的机械手用位置检测装置、机械手系统以及机械手用位置检测方法的一个实施方式进行说明。
[0035] [机械手系统]
[0036] 首先,参照图1对机械手系统进行说明。如该图1所示那样,第1臂部12经由向铅垂方向延伸的第1旋转轴12a,相对于基台11在水平方向可转动地与水平多关节机械手(以下,称为机械手)10的基台11连结。在上述基台11中内置有作为驱动源的第1马达11a,该第1马达11a通过使第1旋转轴12a旋转而使第1臂部12转动。而且,在基台11搭载有对作为第1马达11a的驱动量的转速进行检测并输出的第1编码器11b。
[0037] 第2臂部13经由向铅垂方向延伸的第2旋转轴12b,相对于第1臂部12在水平方向可转动地与第1臂部12的前端连结。在第2臂部13中搭载有作为驱动源的第2马达13a,该第2马达13a通过使第2旋转轴12b旋转而使第2臂部13转动。而且,在第2臂部
13搭载有对作为第2马达13a的驱动量的转速进行检测并输出的第2编码器13b。
[0038] 在第2臂部13的前端,设置有由于沿铅垂方向贯通第2臂部13因此能够沿相对于该第2臂部13的铅垂方向,即、上下方向移动的花键14。在第2臂部13上搭载有使花键14边旋转边沿上下方向移动的第3马达13c。在花键14的前端连结有把持作为机械手10的输送对象的工件W的末端执行器15。工件W在例如静止的载置台21上载置在成为利用上述末端执行器15进行工件W的把持的位置的把持位置P1。
[0039] 在这样的机械手10中进行工件W的把持动作时,位于该动作的始点的规定位置的末端执行器15通过因第1马达11a的旋转而带来的第1臂部12的转动、和因第2马达13a的旋转带来的第2臂部13的转动,例如移动到把持位置P1的正上方。其中,此时的第1马达11a的驱动量以及驱动方向、和第2马达13a的驱动量以及驱动方向是通过连结上述始点和把持位置P1的末端执行器15的轨道而决定的。而且,若末端执行器15到达把持位置P1的正上方,则通过第3马达13c的旋转,花键14边旋转边朝向工件W下降。若因花键14的下降,与该花键14的前端连结的末端执行器15下降到能够吸附工件W的位置为止,则末端执行器15针对载置台21上的工件W开始把持该工件W。
[0040] 接下来,若花键14上升到规定的位置,例如与载置台21上的物品等不碰撞的位置为止,则通过上述第1臂部12和第2臂部13再次转动,位于把持位置P1的末端执行器15移动到作为机械手10的动作的终点的例如工件W的输送位置的正上方为止。然后,因花键14的下降,到达输送位置的末端执行器15,解除工件W的把持从而将工件W配置于输送位置。
[0041] 另一方面,在机械手10的周边、能够对被上述末端执行器15把持的工件W进行拍摄的位置处配置有作为拍摄部的摄像头22。摄像头22配置成能够使作为拍摄对象的工件W从其正下方收纳于该摄像头22的拍摄区域。即、摄像头22配置成将末端执行器15的轨迹例如连结末端执行器15移动中的始点和终点的最短距离上等的拍摄位置P2收纳于拍摄区域内。然后,被摄像头22拍摄到的图像被一定期间存储于该摄像头22所具有的存储部。
[0042] 在摄像头22的附近,设置有作为指令输出部的光学传感器23。光学传感器23具有:由例如输出半导体激光等光的设备构成的投光部23a、由接受从该投光部23a输出的光的例如受光元件等的设备构成的受光部23b。在投光部23a和受光部23b之间,从投光部23a输出的检测光线23c以横切上述摄像头22的拍摄区域的方式形成。另外,受光部23b在不能接受到投光部23a输出的光时,输出用于检测工件W的位置,例如工件W的重心的位置的触发信号。
[0043] 上述机械手10连接着对上述第1臂部12、第2臂部13、花键14以及末端执行器15等的动作进行控制的机械手控制器30。在机械手控制器30中搭载有对保存在机械手控制器30的动作程序进行解释并执行的控制部33、和基于控制部33输出的控制信号向各驱动源输出驱动信号的未图示的马达驱动器。控制部33对末端执行器15移动的轨迹进行计算,并且计算用于使末端执行器15沿该轨迹移动的第1马达11a的驱动量和第2马达13a的驱动量。然后,控制部33向马达驱动器输出用于以基于计算结果的驱动量驱动各驱动源的驱动信号。
[0044] 在机械手控制器30搭载有构成进行各种信号的输入以及输出的获取部的输入输出部(以下称为I/O)31。表示第1马达11a的转速的数据从第1编码器11b按规定的检测周期输入至I/O31,并且表示第2马达13a的转速的数据从第2编码器13b也按相同的规定检测周期输入至I/O31。而且,表示所述第3马达13c的转速的数据也从未图示的编码器按规定的检测周期输入至所述I/O31。
[0045] 若被上述末端执行器15把持的工件W的一端超出检测光线23c,则从光学传感器23的受光部23b向所述摄像头22和I/O31输出共同的触发信号。摄像头22通过接受该触发信号开始拍摄,对存在于拍摄区域22a中的工件W进行拍摄。另外,通过I/O31接受该触发信号,控制部33掌握触发信号输入至I/O31这一情况。接下来,控制部33经由I/O31分别获得表示第1马达11a的转速的最新数据、表示第2马达13a的转速的最新数据、以及表示第3马达13c的转速的最新数据。然后,构成获取部的控制部33若获得这些表示转速的最新数据,则基于该数据,算出末端执行器15的位置(x2,y2,z2)。
[0046] 在机械手控制器30中搭载有作为计算部的图像处理部32。图像处理部32在接受到与上述摄像头22拍摄到的图像相当的数据之后,基于与该图像有关的数据来算出工件W的重心的位置(x1,y1,z1),并向控制部33输出。控制部33若获得工件W的重心的位置,则基于该工件W的重心的位置和末端执行器15的位置的差量,对此次的动作中的末端执行器15的终点、下次动作中的末端执行器15的始点等进行补正。即、控制部33也作为补正部发挥功能,该补正部利用通过共同的触发信号获得的工件W的重心的位置和末端执行器15的位置,对机械手10的动作进行补正。
[0047] 并且,在机械手控制器30中搭载有对与机械手10的动作控制有关的程序、各种数据进行存储的存储部34。在存储部34中保存有各臂部的长度和各臂部的连结处等用于从基于末端执行器15的目标位置的轨道算出机械手10的姿势的机械手数据34a。而且,在存储部34中保存有用于使用与各马达11a、13a连结的减速机的减速比或各马达11a、13a的初始位置等根据机械手10的姿势算出各马达11a、13a的驱动量的关系式等,使末端执行器15的目标位置和各马达11a、13a的驱动量相对应的对应关系。并且,在存储部34a中还保存有使通过共同的触发信号得到的工件W的重心的位置和末端执行器15的位置相对应的数据,即相关数据34b。另外,在存储部34还保存有表示工件W的外形线的数据、用于根据工件W的外形线算出工件W的重心的计算式等、用于根据工件W的图像算出工件W的重心位置的数据。
[0048] 在本实施方式中,由上述摄像头22、光学传感器23以及机械手控制器30构成机械手10的位置检测装置。
[0049] 接下来,对由上述的结构构成的机器手系统的作用,与机械手控制器30对机械手10的动作进行控制的情况一起进行说明。
[0050] 使位于动作始点的规定位置的末端执行器15移动至把持位置P1时,首先,控制部33从各个第1编码器11b以及第2编码器13b获取表示各马达11a、13a转速的数据,掌握末端执行器15的当前位置。控制部33计算连结末端执行器15的当前位置和作为存储在存储部34的目标位置的把持位置P1的轨道,并且算出用于使末端执行器15沿该轨道移动的各马达11a、13a的驱动量。之后,控制部33针对第1马达11a以及第2马达13a向马达驱动器输出与各个驱动量对应的驱动信号。由此,通过第1臂部12以及第2臂部的移动,位于规定位置的末端执行器15朝向把持位置P1移动。
[0051] 若机械手10的末端执行器15到达把持位置P1的正上方,则机械手控制器30通过使花键14下降,使与该花键14的前端连结的末端执行器15向载置于载置台21的工件W靠近。此时,控制部33根据从搭载于上述第2臂部13的未图示的第3马达用的编码器得到的花键14的前端位置、和作为目标位置存储在存储部34的载置台21的表面附近的位置的差值算出花键14的下降量。控制部33将与下降量相应的驱动信号从马达驱动器向第3马达13c输出。
[0052] 接下来,使把持着工件W的末端执行器15从把持位置P1移动到作为动作终点的输送位置时,控制部33使位于载置台21的表面附近的花键14的前端,上升到规定的位置例如与载置台21上的物品等不碰撞的位置。因此,算出该花键14的前端的当前位置和上述规定的位置的差量。而且,控制部33将与该差量相应的驱动信号从马达驱动器向第3马达13c输出。之后,控制部33计算连结位于把持位置P1的正上方时的末端执行器15的当前位置和存储在存储部34的输送位置的轨道,并且算出用于使末端执行器15沿该轨道移动的各马达11a、13a的驱动量。末端执行器15的当前位置是如上所述基于第1编码器11b以及第2编码器13b的输出信号而算出的。并且,控制部33相对于各马达11a、13a,向马达驱动器输出与各个驱动量对应的驱动信号。
[0053] 这样的动作被机械手控制器30控制的机械手10在从上述把持位置P1向输送位置输送工件W时,在末端执行器15把持工件W的状态下横切所述摄像头22的拍摄区域。
[0054] [触发信号的生成方法]
[0055] 以下,参照图2,对上述光学传感器23的触发信号的生成进行说明。如图2所示,上述摄像头22的拍摄区域22a具有能够收纳上述工件W整体的尺寸,例如呈矩形平面状。如上所述,上述摄像头22配置成能够使被末端执行器15把持的工件W从其正下方收纳于拍摄区域22a。因此,在机械手10的移动中,把持工件W的末端执行器15横切拍摄区域22a。
[0056] 以上述检测光线23c横切拍摄区域22a的方式,在拍摄区域22a的附近配置有光学传感器23。即、构成光学传感器23的投光部23a和受光部23b隔着拍摄区域22a对置地配置。投光部23a和受光部23b配置在即使工件W的任一端部超出检测光线23c,在工件W的端部超出该工件W时,该工件W整体也收纳于拍摄区域22a内的位置。
[0057] 横切拍摄区域22a的工件W的面积是覆盖末端执行器15的前端整体的大小。因此。末端执行器15相对于上述摄像头22被工件W光学遮蔽。由此,由摄像头22所拍摄的图像中,只有工件W。
[0058] 被上述末端执行器15把持的工件W被摄像头22拍摄时,首先,该工件W在从把持位置P1向输送位置输送的中途进入到所述拍摄区域22a内。若工件W的一端横切检测光线23c,则从投光部23a输出的光被工件W遮蔽,从而投光部23a输出的光不能被受光部23b接受。由此,受光部23b生成在摄像头22中是用于开始拍摄的触发信号,并且在机械手控制器30的I/O31中用于开始从各个第1编码器11b以及第2编码器13b获取数据的触发信号。受光部23b向摄像头22和机械手控制器30的I/O31输出共同的一个触发信号。接下来,基于共同的触发信号开始摄像头22中的拍摄、和机械手控制器30的I/O31中的上述信号的获取。由此,I/O31能够获取工件W的拍摄时的末端执行器15的位置。
[0059] [机械手的位置检测处理]
[0060] 以下,参照图3,对为了检测机械手10特别是机械手10具有的末端执行器15的位置,在机械手控制器30、光学传感器23、以及摄像头22中进行的处理的步骤进行说明。
[0061] 在该处理中,首先,机械手控制器30通过使第1臂部12和第2臂部13动作,从而使位于始点的机械手10的末端执行器15向把持位置P1移动。若末端执行器15移动到把持位置P1,则如图3所示,机械手控制器30使末端执行器15把持工件W之后,使通过机械手10的从把持位置P1向输送位置的工件W的输送开始(步骤S1)。
[0062] 然后,在机械手10的移动中,工件W的一端进入到摄像头22的拍摄区域22a,若横切光学传感器23的检测光线23c,即、若末端执行器15到达拍摄位置P2或拍摄位置P2的附近,则投光部23a输出的光因被工件W遮住所以不能到达受光部23b。由此,光学传感器23检测出被末端执行器15把持的工件W到达拍摄位置P2这一情况。这样,光学传感器23的受光部23b以不能接受到光这一情况为契机,生成一个触发信号之后,将该触发信号向机械手控制器30的I/O31和摄像头22输出(步骤S2)。
[0063] 经由I/O31接收到上述触发信号的控制部33,经由I/O31获得从各个第1编码器11b以及第2编码器13b按每个规定的检测周期所输入的数据中的最新的数据(步骤S3-1)。然后,机械手控制器30的控制部33基于在步骤S3-1获取的信号、和存储在上述存储部34的机械手数据34a,算出末端执行器15的位置。而且,接收到与机械手控制器30接收到的触发信号共同的触发信号的摄像头22,通过按快门对收纳于拍摄区域22a内的工件W进行拍摄(步骤S3-2)。
[0064] 接下来,机械手控制器30要求摄像头22向该机械手控制器30的图像处理部32输出通过与摄像头22共同的触发信号开始的拍摄数据(步骤S4)。接受了这样的要求的摄像头22向图像处理部32输出上述拍摄数据(步骤S5)。若完成了图像处理部32的拍摄数据的接受,则该图像处理部32基于拍摄数据算出工件W的重心Wa的位置(步骤S6)。
[0065] 机械手控制器30的控制部33生成使先前算出的末端执行器15的位置和工件W的重心Wa的位置相对应的相关数据34b(步骤S7)。控制部33在算出上述工件W的重心Wa的位置和末端执行器15的位置的差量之后,基于该差量和上述的对应关系,对工件W的输送目标位置进行补正(步骤S8)。
[0066] 根据以上说明的上述实施方式,能够获得以下所列举出的效果。
[0067] (1)基于用于检测末端执行器15的位置的触发信号,摄像头22开始末端执行器15的拍摄,且机械手控制器30的I/O31开始第1马达11a以及第2马达13a的驱动量的获取。即、摄像头22和I/O31由共同的触发信号驱动。因此,即使是移动中的机械手10把持的工件W为拍摄对象,只要输入至I/O31的触发信号和输入至摄像头22的触发信号是共同的,那么在摄像头22所拍摄的图像、和在I/O31所获取的最新的驱动量在时间轴上是接近的。因此,从移动中的机械手10获得的2个信息,即、根据图像所获得的机械手10的末端执行器15的位置和该位置的第1马达11a以及第2马达13a的驱动量在时间轴上接近且互相对应。这样对应是针对移动中的机械手10而进行的,所以能够缩短或消除为了检测末端执行器15的位置而使机械手10停止的期间、用于机械手10停止后再加速的期间等。因此,能够提高基于图像使机械手10具有的第1马达11a以及第2马达13a的驱动量和实际的机械手10的状态相对应起来的处理的效率。
[0068] (2)在机械手10把持的工件W超出检测光线23c时,摄像头22和I/O31被驱动。因此,摄像头22拍摄的图像和I/O31获取的驱动量通常是机械手10把持的工件W到达规定位置时的驱动量。如果是这样的结构,在每次的触发信号输入时,拍摄部所拍摄的图像之间的差别不会很大。因此能够预先将根据摄像头22所拍摄的图像算出工件W的位置的处理的方式做成简单的结构,而且能够提高通过这样的图像处理获得的结果的精度、即工件W的重心Wa的位置的精度。
[0069] (3)在摄像头22的拍摄对象超出拍摄区域22a的检测光线23c时,摄像头22和I/O31被驱动。因此,更加可靠地实现以下的内容,即、在摄像头22所拍摄的图像中包含工件W、以能够算出工件W的重心Wa的位置为限对工件W进行拍摄。所以,能够进一步提高通过图像处理获得的结果的精度,即、拍摄对象的位置的精度。
[0070] (4)基于摄像头22所拍摄的工件W的图像,算出工件W的重心Wa的位置,而基于I/O31所获取的上述驱动量算出末端执行器15的位置。因此,即使是不能够通过摄像头22对末端执行器15进行拍摄的情况下,也能够使工件W的位置和把持该工件W的末端执行器15的位置相对应。即、即使是不能够通过摄像头22对末端执行器15的位置进行检测的情况下,也能够掌握末端执行器15和工件W的相对位置。其结果,能够减轻以末端执行器15和工件W双方被拍摄的方式配置摄像头22的烦琐。而且,因为能够将摄像头22的拍摄区域22a设计成特定化为工件W的位置,所以能够提高根据图像算出的工件W的重心Wa的位置的精度。
[0071] (5)机械手控制器30的存储部34将工件W的目标位置例如把持位置P1或输送位置、和第1马达11a以及第2马达13a的驱动量相对应地存储。而且具备作为基于存储部34存储的工件W的重心Wa的位置和驱动量的对应关系对上述目标位置和用于到达该目标位置的驱动量的对应关系进行补正的补正部发挥功能的控制部33。由此,能够基于图像,使机械手10具有的第1马达11a以及第2马达13a的驱动量和实际的机械手10的状态相对应,并且能够基于其对应关系对第1马达11a以及第2马达13a的驱动量进行补正。
[0072] 也能够如下所述适当地变更上述实施方式来实施。
[0073] 工件W并不限于载置于静止的载置台21上,也可以载置于例如像传送带这样的时间经过的同时工件W的位置移动的地方。
[0074] 以在拍摄区域22a内收纳工件W整体和被该工件W覆盖的末端执行器15的方式,设置摄像头22的位置、拍摄区域22a的大小、以及光学传感器23的位置。并不限于此,例如如图4所示,也可以以摄像头22拍摄时末端执行器15没有收纳于拍摄区域22a内,仅工件W的一部分收纳于拍摄区域22a内的方式来设定摄像头22的位置、拍摄区域22a的大小、以及光学传感器23的位置。此时,如果在机械手控制器30的存储部34预先存储有与工件W的形状有关的信息,那么根据摄像头22所拍摄的工件W的一部分,也能够算出该工件W的重心Wa的位置。
[0075] 作为工件W的位置,算出该工件W的重心Wa的位置,但是,也可以算出重心Wa以外的任意的位置。
[0076] 机械手10是作为水平多关节机械手来具体实现的,但是作为除此以外的机械手例如垂直多关节机械手也可以具体实现。
[0077] 上述摄像头22只要能够对工件W进行拍摄即可,也可以搭载于机械手10。例如,如果是把持工件的末端执行器的前端和作为基台和第1臂部的连结部分的第1间接错位的机械手,那么也可以在该机械手的第1臂部搭载摄像头。
[0078] 摄像头22的拍摄对象也也可以是工件W和末端执行器15这双方,或也可以仅是末端执行器15。其中,摄像头22的拍摄对象是工件W和末端执行器15这双方的情况下,能够根据摄像头22拍摄的图像算出工件W和末端执行器15这双方的位置。因此,能够使基于第1马达11a的驱动量以及第2马达13a的驱动量的机械手10或末端执行器15的位置、和基于图像的工件W以及末端执行器15的位置相对应。另外,摄像头22的拍摄对象是末端执行器15的情况下,能够使基于摄像头22拍摄的图像的末端执行器15的位置、和基于所述驱动量的末端执行器15的位置相对应。
[0079] 光学传感器23检测末端执行器15的位置的位置也可以是与摄像头22的拍摄区域22a不同的位置。总之,只要是能够检测出拍摄对象移动拍摄区域22a的位置即可,例如,也可以是末端执行器15的轨道中相对所述拍摄区域22a的前方位置。即使是这样的结构,如果末端执行器15到达前方位置,只要该末端执行器15沿该轨道移动,也能够大概掌握该末端执行器15什么时候移动到拍摄区域22a内。然后,光学传感器23检测出末端执行器15的位置之后,光学传感器23使触发信号的输出延迟拍摄对象进入拍摄区域22a内的规定时间即可。
[0080] 在上述机械手控制器30中,也可以基于预先计算机械手10的轨道的轨道计算处理的结果,估计拍摄对象移动到拍摄区域22a内的时间。而且,也可以构成为该机械手控制器30在所述估计的时间向摄像头22和I/O31输出共同的触发信号。
[0081] 有时接受作为摄像头22开始拍摄的指令的触发信号之后到对图像进行拍摄为止的时间亦即拍摄时间与接受作为I/O31开始获取的指令的触发信号之后到获取驱动量为止的时间亦即获取时间相比会很长。在这样的情况下,优选与向获取部输入触发信号的时间相比,先向摄像头22输入触发信号,并且通过这样的时间差对拍摄时间和获取时间的差进行补偿。
[0082] 输入给摄像头22和I/O31的共同的触发信号并不限于在机械手控制器30的外部生成的触发信号,也可以是在机械手控制器30的内部生成的触发信号。总之,触发信号是在拍摄对象进入拍摄区域22a内的时间生成的信号即可。