具备拍摄工件的视觉传感器的摄像装置的制作方法

文档序号:18037325发布日期:2019-06-28 23:30阅读:204来源:国知局
具备拍摄工件的视觉传感器的摄像装置的制作方法

本发明涉及一种具备拍摄工件的视觉传感器的摄像装置。



背景技术:

在现有技术中,已知一种由安装在机器人上的机械手把持工件,并运送工件的机器人系统。在机器人用机械手把持工件时,会有从希望的位置偏离而把持工件的情况。另外,已知一种在机器人上安装作业工具并对固定在架台上的工件进行预定作业的机器人系统。当在架台上固定工件时,会有工件的位置偏离希望的位置的情况。在这样的机器人系统中,最好准确地识别机器人所把持的工件的在机械手内的位置偏离或者固定在架台上的工件的位置偏离。

近年来,已知使用通过摄像机拍摄到的图像来检测机器人用机械手把持工件时的位置偏离或者固定在台架上的工件的位置偏离的技术。例如,摄像机被安装在机器人臂的前端部。在测量配置在架台上的工件的位置时,通过摄像机拍摄工件。根据工件的图像能够检测架台上的工件的位置(例如,日本特开2015-160264号公报以及日本特开2003-305675号公报)。

为了检测固定在架台上的工件或被机器人支持的工件,能够在预先决定的位置上配置视觉传感器来拍摄工件的图像。为了从通过视觉传感器拍摄到的图像检测工件,能够使用工件的轮廓线等特征。但是,根据拍摄图像的条件,有时图像变得不清晰而得不到适合工件检测的图像。例如,会有从建筑物的窗口进入的太阳光的强度或方向、或者配置在建筑物中的照明的强度或方向等发生变化的情况。即,会有环境光的强度或方向发生变化的情况。

如果环境光的强度或方向发生变化,则有时通过摄像机拍摄的工件表面的亮度发生变化,图像的对比度下降。或者,当工件有光泽时,会有由于在工件的表面正反射的光而亮度变得过高,工件轮廓线等特征不会显现在图像上的情况。换言之,会有在图像中产生光晕的情况。如果有轮廓线等特征的部分没有显现到图像上,则有时不能够检测工件或者不能够正确测量工件的表面状态。



技术实现要素:

本公开一个方式的摄像装置具备:视觉传感器,其拍摄工件的第一图像;以及移动装置,其移动工件以及视觉传感器中的一方,变更一方相对于另一方的相对的位置。摄像装置具备处理第一图像的图像处理装置。图像处理装置包括将第一图像与拍摄第一图像时的移动装置的位置作为组来进行存储的存储部。在预先决定在工件上定义的检测面和移动装置的位置即设定位置并存储在存储部中。视觉传感器以视觉传感器相对于工件的相对位置互不相同的方式拍摄多个第一图像。图像处理装置包括:图像转换部,其根据拍摄第一图像时的移动装置的位置,将多个第一图像转换为假设在设定位置进行拍摄时的多个第二图像。图像处理装置包括生成合成多个第二图像而得的合成图像的合成部。图像处理装置包括:合成图像处理部,其根据合成图像在检测面中进行工件的检测以及检查中的至少一方。

本公开的其他方式的摄像装置具备:多个视觉传感器,其拍摄工件的第一图像;第一固定部,其固定工件;以及第二固定部,其固定视觉传感器。摄像装置具备处理第一图像的图像处理装置。多个视觉传感器被配置成从互不相同的位置拍摄工件。图像处理装置包括将通过多个视觉传感器拍摄的第一图像和拍摄了第一图像的视觉传感器的位置作为组来进行存储的存储部。预先决定在工件上定义的检测面和用于检测工件的视觉传感器的位置即检测位置并存储在存储部中。图像处理装置包括图像转换部,其根据各个视觉传感器的位置将通过多个视觉传感器拍摄的多个第一图像转换为假设在检测位置进行拍摄时的多个第二图像。图像处理装置包括生成合成多个第二图像而得的合成图像的合成部。图像处理装置包括:合成图像处理部,其根据合成图像在检测面中进行工件的检测以及检查中的至少一方。

附图说明

图1是实施方式的第一机器人系统的侧面图。

图2是实施方式的机器人系统的框图。

图3是在第一机器人系统中说明摄像机的移动的机器人的侧面图。

图4是说明摄像机的检测位置的摄像机以及工件的侧面图。

图5是通过控制装置进行处理的图像。

图6是说明实际拍摄到的第一图像的像素与假设在检测位置配置了摄像机时的第二图像的像素之间的关系的摄像机以及检测面的侧面图。

图7是将实际拍摄到的第一图像放大后的像素图。

图8是计算假设在检测位置拍摄时的第二图像的像素值的方法的说明图。

图9是实施方式的第二机器人系统的侧面图。

图10是实施方式的第二机器人系统的其它侧面图。

图11是实施方式的运送系统的侧面图。

图12是实施方式的运送系统的框图。

图13是实施方式的摄像装置的侧面图。

图14是实施方式的摄像装置的框图。

具体实施方式

参照图1到图14说明实施方式的摄像装置。本实施方式的摄像装置根据通过视觉传感器拍摄到的图像来检测或检查工件。

图1是本实施方式的第一机器人系统的概略图。图2是本实施方式的机器人系统的框图。参照图1以及图2,机器人系统3具备把持工件38的机械手5、移动机械手5的机器人1。机器人系统3具备控制机器人系统3的控制装置2。另外,机器人系统3具备载置工件38的架台95。

本实施方式的机械手5是把持或释放工件38的末端执行器。作为安装在机器人1上的末端执行器不限于该方式而能够采用与机器人系统3进行的作业对应的任意作业工具。例如,作为末端执行器,能够采用实施焊接的作业工具或将密封材料涂在工件的表面的作业工具等。另外,也能够不在机器人1的手指上安装作业工具,而只将摄像机6安装在机器人1的手指上。

本实施方式的机器人1是包括多个关节部18的多关节机器人。机器人1包括上部臂11和下部臂12。下部臂12被旋转底座13支持。旋转底座13被底座14支持。机器人1包括与上部臂11的端部连接的手腕15。手腕15包括固定机械手5的法兰16。机器人1的结构部件被形成为绕预先决定的驱动轴旋转。作为机器人不限于该方式而能够采用可移动作业工具的任意机器人。

本实施方式的机器人1包括驱动上部臂11等结构部件的机器人驱动装置21。机器人驱动装置21包括驱动上部臂11、下部臂12、旋转底座13以及手腕15的驱动电动机。在关节部18中,由于机器人1的结构部件的方向发生变化,机器人1的位置以及姿势发生变化。机械手5包括驱动机械手5的机械手驱动装置22。本实施方式的机械手驱动装置22通过空气压来驱动机械手5。机械手驱动装置22包括用于将压缩空气提供给气缸的空气泵以及电磁阀。

控制装置2控制机器人1以及机械手5。控制装置2包括具有cpu(centralprocessingunit中央处理单元)、经由总线与cpu相互连接的ram(randomaccessmemory随机存取存储器)以及rom(readonlymemory只读存储器)等的运算处理装置(计算机)。机器人1根据控制装置2的动作指令进行驱动。机器人1根据动作程序41自动运送工件38。机器人驱动装置21以及机械手驱动装置22由控制装置2进行控制。

为了进行机器人1的动作而预先生成的动作程序41被输入到控制装置2中。动作程序41被存储在存储部42中。动作控制部43将用于根据动作程序41驱动机器人1的动作指令发送给机器人驱动部44。机器人驱动部44包括驱动驱动电动机的电路,根据动作指令向机器人驱动装置21供电。

另外,动作控制部43将驱动机械手驱动装置22的动作指令发送给机械手驱动部45。机械手驱动部45包括驱动空气泵等的电路,根据动作指令向空气泵等供电。

机器人1包括用于检测机器人1的位置以及姿势的状态检测器。本实施方式的状态检测器包括被安装在机器人驱动装置21的各驱动轴的驱动电动机上的位置检测器23。例如,位置检测器23能够检测机器人驱动装置21的驱动电动机进行驱动时的旋转角。通过位置检测器23的输出来检测机器人1的位置以及姿势。作为状态检测器不限于被安装在驱动电动机上的位置检测器,而可以采用能够检测机器人1的位置以及姿势的任意检测器。

在机器人系统3中,设定在机器人1的位置以及姿势发生了变化时不动的基准坐标系71。在图1所示的例子中,在机器人1的底座14上配置了基准坐标系71的原点。基准坐标系71也被称为世界坐标系。在基准坐标系71中,原点的位置被固定,而且坐标轴的方向被固定。即使机器人1的位置以及姿势发生变化,基准坐标系71的位置以及方向也不会变化。基准坐标系71作为坐标轴具有相互正交的x轴、y轴以及z轴。另外,设定w轴作为绕x轴的坐标轴。设定p轴作为绕y轴的坐标轴。设定r轴作为绕z轴的坐标轴。

另外,在法兰16的表面中固定机械手5的面中设定了法兰坐标系72。法兰坐标系72也被称为手指坐标系。法兰坐标系72的原点配置在法兰16的旋转轴上。法兰坐标系72具有相互正交的x轴、y轴以及z轴。另外,法兰坐标系72具有绕x轴的w轴、绕y轴的p轴以及绕z轴的r轴。如果机器人1的位置以及姿势发生变化,则法兰坐标系72的原点的位置以及坐标系的方向和法兰16一起发生变化。通过矩阵变换法兰坐标系72的坐标值,从而能够计算基准坐标系71的坐标值。或者,通过矩阵变换基准坐标系71的坐标值,从而能够计算法兰坐标系72的坐标值。

本实施方式的机器人系统3具备实施工件38的检测以及检查中的至少一方的摄像装置。在第一机器人系统3中,在机械手5把持工件38之前检测架台95中的工件38的位置。摄像装置具备作为拍摄工件38的第一图像的视觉传感器的摄像机6。第一图像是通过摄像机6实际拍摄工件38而得的图像。本实施方式的摄像机6是拍摄二维图像的摄像机。摄像机6被机器人1支持。摄像机6经由支持部件被固定在手腕15上。通过机器人1变更位置以及姿势,摄像机6以能够拍摄工件38的方式被固定在机器人1上。

本实施方式的摄像装置具备移动工件38以及摄像机6中的一方来变更一方相对于另一方的相对位置的移动装置。在机器人系统3中,机器人1作为移动装置发挥功能,摄像机6被装载在机器人1的手指上。如果机器人1的位置以及姿势发生变化,则摄像机6的位置以及姿势发生变化。另外,架台96作为固定工件38的固定部发挥功能。

摄像装置具备对通过视觉传感器拍摄到的第一图像进行处理的图像处理装置。在本实施方式的机器人系统3中,控制装置2作为图像处理装置发挥功能。控制装置2包括图像控制部51。图像控制部51包括将拍摄图像的指令发送给摄像机6的摄像控制部57。图像控制部51具有对通过摄像机6拍摄到的第一图像进行处理的功能。图像控制部51包括存储工件38的摄像相关的信息的存储部56。

图3表示说明拍摄工件时的摄像机的移动的机器人的侧面图。如果机器人1的位置以及姿势发生变化,则摄像机6的位置以及姿势发生变化。摄像机6能够配置在能够拍摄工件38的图像的任意位置上。在第一机器人系统3中,在预先决定的摄像机6的多个位置拍摄工件38。摄像机6对摄像位置不同的多个第一图像进行拍摄。在图3所示的例子中,摄像机6在位置p6a拍摄工件38。然后,如箭头91所示,在机器人1将摄像机6从位置p6a移动到位置p6b后,摄像机6拍摄工件38。另外,如箭头92所示,在机器人1将摄像机6移动到位置p6c后,摄像机6拍摄工件38。这样,以摄像机6相对于工件38的多个相对位置相互不同的方式拍摄工件38的多个第一图像。预先决定拍摄第一图像的摄像机6的多个位置p6a、p6b、p6c。另外,在动作程序41中设定与位置p6a、p6b、p6c对应的机器人1的位置以及姿势。摄像机6在预先决定的多个机器人1的位置以及姿势下拍摄多个第一图像。

另外,可以不预先决定机器人1的多个位置以及姿势而由摄像机6拍摄多个第一图像。例如,能够将摄像机6的初始位置设定为位置p6a,并将摄像机6移动后的位置设定为位置p6b。并且,在机器人1进行驱动,摄像机6从位置p6a移动到位置p6b的期间中,能够以固定的时间间隔拍摄工件38。此时,摄像机6拍摄到第一图像的瞬间的机器人1的位置以及姿势与各个第一图像关联,需要作为第一图像和机器人1的位置以及姿势的组存储在存储部56中。这里,存储了机器人1的位置以及姿势,但是不限于该方式。也可以将摄像机6的位置以及姿势等能够根据机器人1的位置以及姿势计算的位置存储在存储部56中。

图4表示说明拍摄工件的摄像机的位置以及用于检测工件的图像所对应的摄像机的位置的侧面图。在本实施方式中,在工件38上预先定义了用于检测工件38的检测面75。图像控制部51检测检测面75中的工件38的位置。检测面75能够以沿着工件38的一部分表面的方式进行设定。特别是检测面75能够以包含工件38的一部分表面的方式进行设定。并且,图像控制部51使用显现在该表面上的特征点或亮度值来实施工件38的检测以及检查中的至少一方。检测面75能够通过基准坐标系71来表示。检测面75的信息被存储在存储部56中。作为特征点能够使用各种各样的部分,但是在本实施方式中能够将边缘点作为特征点使用。边缘点是在图像中亮度梯度大的点,能够用于取得工件38的轮廓形状。提取边缘点的方法是众所周知的,所以这里省略说明。

通过摄像机6拍摄第一图像的位置是位置p6a、p6b、p6c。对此,预先决定用于检测工件38的摄像机6的位置即检测位置p6d。检测位置p6d是作业人员决定的虚拟位置。检测位置p6d能够设定在摄像机6能够拍摄工件38的任意位置。另外,用于在检测位置p6d配置摄像机6的机器人1的位置以及姿势被预先决定为移动装置的设定位置。该机器人1的位置以及姿势被存储在存储部56中。摄像机6的检测位置p6d的信息也可以通过基准坐标系71存储在存储部56中。另外,检测位置p6d不限于虚拟位置,也可以选择拍摄了多个第一图像的摄像机6的位置中的一个位置。

图5表示说明在本实施方式中拍摄的第一图像以及第一图像的处理的概略图。参照图2、图4以及图5,在位置p6a、p6b、p6c由摄像机6拍摄第一图像61a、61b、61c。第一图像61a是在位置p6a由摄像机6拍摄的图像,第一图像61b是在位置p6b由摄像机6拍摄的图像,第一图像61c是在位置p6c由摄像机6拍摄的图像。接着,图像控制部51如箭头93所示,将第一图像61a、61b、61c分别转换为在检测位置p6d拍摄时的第二图像62a、62b、62c。

第二图像62a、62b、62c是假定从检测位置p6d拍摄了显现在通过摄像机6拍摄到的第一图像61a、61b、61c上的工件38时的图像。第二图像62a是转换第一图像61a而得的图像,第二图像62b是转换第一图像61b而得的图像,第二图像62c是转换第一图像61c而得的图像。

接着,图像控制部51如箭头94所示那样,合成多个第二图像62a、62b、62c来生成一个合成图像63。在实际拍摄的第一图像61a、61b、61c中,会有工件38的边缘点不清晰的情况。例如会有在实际拍摄到的第一图像61b的部分65中产生光晕并且工件38的轮廓线不清晰的情况。即使在这种情况下,也能够通过生成合成图像63来排除不清晰的部分。

该结果为,图像控制部51能够准确地检测工件38的位置。之后,动作控制部43根据工件38的位置来修正机器人1的位置以及姿势。通过该控制,能够由机械手5把持工件38。

接着,参照图2至图5来详细说明本实施方式的控制。作业人员预先实施摄像机6的校准。求出校准数据59,该校准数据59用于关联成为摄像机6进行的测量处理的基准的摄像机坐标系和基准坐标系之间的关系。校准数据59被存储在存储部42中。图像控制部51从存储部42取得校准数据59,并存储在存储部56中。校准数据59中包括具有摄像机6的焦距以及镜头畸变等信息的内部参数。另外,校准数据59中包括具有法兰坐标系72相对于通过摄像机6拍摄的第一图像中的图像坐标系73的相对位置关系的外部参数。

另外,作业人员将输入数据58输入给控制装置2。输入数据58被存储在存储部42中。图像控制部51从存储部42取得输入数据58,存储在存储部56中。输入数据58包括检测面75的信息。检测面75能够通过平面进行设定。或者,检测面75可以包括曲面,或者也可以通过将多个多边形连接起来而形成。

本实施方式的检测面75由作业人员预先设定。检测面不限于该方式,也可以通过另外的传感器测量工件的预定表面,并包括该表面来设定检测面。

另外,作业人员决定将最终生成的合成图像设为从哪个位置拍摄的图像。输入数据58中包括用于在用于检测工件38的位置的检测位置p6d配置摄像机6的机器人1的位置以及姿势。在与检测位置p6d对应的图像中,可以采用与实际拍摄了工件38时的摄像条件不同的条件。例如,在与检测位置p6d对应的图像中,可以将摄像机的焦距、视角、像素数以及镜头畸变等设定为与实际拍摄了图像时的值不同的值。这种信息也能够包括在输入数据58中。

在动作程序41中预先决定用于拍摄第一图像的机器人1的位置以及姿势。动作控制部43根据动作程序41来变更机器人1的位置以及姿势以便拍摄工件38。摄像控制部57在机器人1成为了预先决定的位置以及姿势时,将拍摄工件38的图像的指令发送给摄像机6。摄像机6在预先决定的多个位置p6a、p6b、p6c拍摄工件38的第一图像。图3中,在位置p6a、p6b、p6c拍摄第一图像61a、61b、61c,但是不限于该方式,能够从任意的位置拍摄2个以上的第一图像。拍摄工件38的摄像机6的位置能够选择工件38进入摄像机6的视野的任意位置。这样,从多个视点拍摄工件38。

在图3所示的例子中,驱动机器人1的多个驱动轴,但是不限于该方式,可以使单一的驱动轴动作来变更摄像机6的位置。通过实施该控制,能够在驱动轴中抑制机器人1的结构部件进行动作时的误差。另外,在图3所示的例子中,变更摄像机6的方向(光轴的方向),但是不限于该方式,也可以不变更摄像机6的方向而使摄像机6平行移动。

图像控制部51包括取得摄像机6相对于工件38的相对位置的位置取得部52。位置取得部52取得拍摄工件38时的机器人1的位置以及姿势。位置取得部52根据机器人1的位置以及姿势和校准数据59来计算拍摄工件38时的摄像机6的位置。存储部56存储在多个位置由摄像机6拍摄的多个第一图像。另外,存储部56将拍摄第一图像时的机器人1的位置以及姿势与第一图像作为组进行存储。

图像控制部51包括:图像转换部53,其根据摄像机6相对于检测面75的相对位置,将通过摄像机6拍摄到的多个第一图像61a、61b、61c转换为假设在检测位置p6d拍摄时的多个第二图像62a、62b、62c。在这里的例子中,图像转换部53根据与第一图像61a、61b、61c关联存储的拍摄工件38时的机器人1的位置以及姿势,转换第一图像61a、61b、61c。图像转换部53将第一图像61a、61b、61c中分别包括的工件38转换为在假设通过与检测位置p6d对应的机器人1的设定位置拍摄时得到的工件38的第二图像62a、62b、62c。第二图像62a、62b、62c可以说是从相同的虚拟位置拍摄到的虚拟图像。接着,说明将图5中的实际拍摄到的第一图像61a、61b、61c转换为在检测位置p6d拍摄时的第二图像62a的处理。

图6表示说明实际拍摄第一图像时的摄像机的视线以及配置在检测位置的摄像机的视线的侧面图。图6中示出配置在实际拍摄的位置p6c的摄像机6和配置在检测位置p6d的摄像机6。在摄像机6的视场角内部能够设定摄像面76c、76d。摄像面76c、76d模拟了配置在摄像机6的内部的ccd(chargecoupledevice电荷耦合器件)传感器或cmos(complementarymetaloxidesemiconductor互补金属氧化物半导体)传感器等的图像传感器的表面。

如图5的第一图像61c所示,能够在通过摄像机6拍摄的图像中设定图像坐标系73。图像坐标系73是在拍摄到的图像中在预先决定的位置配置了原点的二维坐标系。图像坐标系73具有相互正交的x轴以及y轴。通过图像坐标系73的坐标值能够确定图像中的位置。或者,能够在摄像面76c、76d上设定图像坐标系73。

如果求出摄像机6的校准数据59,则在赋予了基准坐标系71中的三维点(以下注视点)时,能够计算在该三维点图像上的图像的位置、即图像坐标系73中的二维点。另外,在被赋予了预定注视点的图像即图像坐标系73中的二维点时,能够计算基准坐标系71中的视线(通过注视点和摄像机6的焦点的三维直线)。如果摄像机6选择第一图像61c中的1点,则能够计算从与该1点对应的摄像机6延伸的视线77c。视线77c能够通过法兰坐标系72来表示。

即,能够根据图像坐标系73中的任意1点求出法兰坐标系72中的摄像机6的视线77c。另外,通过机器人1的位置以及姿势能够求出基准坐标系71中的法兰坐标系72的原点的位置以及法兰坐标系72的姿势。因此,能够将通过法兰坐标系72表示的视线77c转换为通过基准坐标系71表示的视线77c。

与此相反,如果决定基准坐标系71中的1点,则能够计算基准坐标系71中的视线77c。并且,能够根据基准坐标系71中的视线77c来计算在图像坐标系73中对应的点的位置。

参照图4到图6,采用与位置p6c对应的第一图像61c以及转换后的第二图像62c为例进行说明。图像转换部53在假设为通过配置在检测位置p6d的摄像机6进行拍摄的第二图像62c中选择任意像素的中心点。例如,图像转换部53选择一个像素的中心点即点64b。图像转换部53根据图像坐标系73中的点64b的位置来计算通过法兰坐标系72表示的视线77d。进一步,图像转换部53计算通过基准坐标系71表示的视线77d。

图像转换部53计算视线77d与检测面75的交点78。该交点78的位置能够通过基准坐标系71来表示。接着,图像转换部53关于配置在实际进行了拍摄的位置p6c的摄像机6计算通过交点78的视线77c。图像转换部53将通过基准坐标系71表示的视线77c变更为通过法兰坐标系72表示的视线77c。进一步,图像转换部53根据视线77c来计算实际拍摄到的摄像面76c中的图像坐标系73的位置。这样,能够计算第一图像61c中的点64a的位置。

图7表示实际拍摄到的第一图像的放大图。图7表示与第二图像62c的点64b对应的点64a的周围的像素85a、85b、85c。点64a的位置为与检测位置p6d的第二图像62c的像素中心点64b对应的对应位置。点64a被配置在包括中心点81a的像素85a的内部。因此,图像转换部53能够在第二图像62c中将以点64b为中心的像素的值设定为第一图像61c中的像素85a的像素的值。像素的值是与像素的光亮度或颜色相关的值,例如能够采用亮度。

图像转换部53对第二图像62c中包括的所有像素实施这种第二图像62c中的像素值的计算。通过该控制,图像转换部53能够生成第二图像62c。

另外,当与第二图像62c中的位置对应的第一图像61c的位置在第一图像61c的范围外时,能够将第二图像62c的像素的值设定为预先决定的值。在图5的第二图像62c所示的例子中,当在通过摄像机6拍摄到的第一图像61c中没有对应的像素时,在第二图像62c中将像素的亮度设为零。即,在第二像素62c中,设定像素值使得变黑。

进一步,在第二图像62c中的像素的像素值计算中,为了准确地求出像素值,能够使用包括第一图像61c的点64a的像素85a周围的像素85b、85c的像素值。在本实施方式中,通过对点64a附近的多个像素85b、85c的像素值和包含点64a的像素85a的像素值进行线性插补,计算包含第二图像62c的点64b的像素的值。

图像转换部53判定点64a相对于像素85a的中心点81a的位置。在图7所示的例子中,点64a被配置在中心点81a的右侧,被配置在中心点81a的下侧。并且,图像转换部53选择像素85b以及像素85c作为离点64a最近的2个像素。

图8表示说明计算第二图像的像素的值时的线性插补的图。在包括x轴以及y轴的图像坐标系73中,分别设定像素85a、85b、85c的中心点81a、81b、81c。并且,设定与x轴以及y轴正交的像素值的坐标轴。图像转换部53计算分别通过中心点81a、81b、81c的像素值的平面82。图像转换部53计算从点64a垂直于包括x轴以及y轴的平面的线。图像转换部53计算该线与平面82的交点83。图像转换部53能够采用交点83的像素值作为包括第二图像62c的点64b的像素的像素值。

这样,摄像机6能够拍摄摄像位置相互不同的多个第一图像。图像转换部53转换多个第一图像来生成与检测位置对应的多个第二图像。图像转换部53计算与第二图像的像素对应的第一图像中的对应位置。图像转换部53能够根据包括第一图像中的对应位置的像素的值以及与包括对应位置的像素相邻的像素的值来计算第二图像的像素的值。通过采用该控制,在转换后的图像中能够计算更加准确的像素值。

另外,如上所述,图像转换部53根据包括对应位置的像素的值以及对应位置附近的多个像素的值,能够通过内插插补和外插插补来计算第二图像的像素的值。通过该控制,即使在第一图像中对应位置与像素的中心不一致的情况下,也能够更加准确地计算第二图像的像素的像素值。在上述的实施方式中,采用离对应位置最近的2个像素的像素值,但是不限于该方式,也可以采用离对应位置近的3个以上的像素的像素值。

参照图2以及图5,图像转换部53根据实际拍摄到的第一图像61a、61b、61c能够与检测位置对应地生成第二图像62a、62b、62c。

图像控制部51包括:合成部54,其合成通过图像转换部53进行转换而得的多个第二图像62a、62b、62c,生成与在检测位置拍摄的图像对应的合成图像63。合成部54如箭头94所示,合成多个第二图像62a、62b、62c,从而生成合成图像63。

合成部54根据第二图像62a、62b、62c中包括的像素的值来计算合成图像63中包括的像素的值。合成部54选择将合成图像63的一个点64c设为中心点的像素。并且,合成部54能够将以第二图像62a、62b、62c中的点64c设为中心的像素的值的平均值设定为合成图像63中的点64c的像素的值。或者,合成部54也可以将第二图像62a、62b、62c中的像素值的最小值或最大值设定为合成图像63的像素的值。例如,通过采用第二图像62a、62b、62c中的像素值的平均值、中央值或最小值,能够排除由于光晕而不清晰的部分的像素的值。另外,合成部54能够将通过图像转换部53转换而得的多个第二图像62a、62b、62c中的像素值的统计量设定为合成图像63的像素值。

另外,合成部54也可以排除像素值非常大的像素或者像素值非常小的像素。作业人员能够预先决定像素值相关的偏离值。合成部54能够根据偏离值排除像素值脱离预定范围的像素。另外,合成部54可以取得所有的像素值,通过统计方法设定偏离值。或者可以不使用像素值本身,而使用亮度梯度等能够根据像素值计算的值来排除包含偏离值的像素。

另外,在第二图像62a、62b、62c中,存在亮度被设定为零的黑色部分。合成部54在生成合成图像63时,能够排除该部分的像素值并计算像素值。另外,从检测面75上偏离的工件38的部分的形状没有以正确的形状显现。但是,通过合成多个第二图像,具有检测面75上的特征的部分以外的部分变得不清晰。用于工件38的检测的是具有检测面75上的特征的部分,所以关于不在检测面75上的部分没有问题。

本实施方式的摄像装置能够抑制环境光的影响或依赖于照明或工件的倾斜的对比度下降的影响。另外,当发现了光晕时,能够修正产生了光晕的部分。该结果为能够得到假设从检测位置进行了拍摄时的清晰的图像。本实施方式的摄像装置,即使在环境光的变化或对象物的亮度变化大时也能够捕捉对象物的特征。换言之,本实施方式的摄像装置能够得到清晰地显现了工件的特征点的图像。

本实施方式的摄像装置包括根据合成图像63在检测面75中检测工件38的合成图像处理部55。合成图像处理部55根据合成图像63中的工件38的特征点来检测工件38的位置。例如,作业人员能够预先生成通过配置在检测位置的摄像机6拍摄工件38而得的图像。存储部56能够将该图像作为基准图像预先进行存储。合成图像处理部55能够根据基准图像计算检测面75中的工件的位置。

图像控制部51将检测出的工件38的位置发送给动作控制部43。动作控制部43根据所取得的工件38的位置来修正在动作程序41中决定的机器人1的位置以及姿势。即,修正把持工件38时的机械手5的位置以及姿势。并且,动作控制部43能够驱动机器人1以及机械手5来把持工件38。

在第一机器人系统3中,为了把持固定在架台95上的工件38,检测架台95中的工件38的位置,但是不限于该方式。图像控制部51的合成图像处理部55能够根据合成图像实施工件38的检查。例如,合成图像处理部能够从合成图像测量工件的尺寸。并且,机器人系统能够根据预先决定的尺寸的判定值来实施工件尺寸的检查。作为工件的检查,不限于工件的尺寸的检查,而能够实施任意的工件的检查。例如能够对是否在工件的表面配置预定的部件来实施检查。或者,能够关于工件的表面是否存在伤来实施检查。

在第一机器人系统3中,形成为固定工件的位置,摄像机通过移动装置移动,但是不限于该方式。也可以固定摄像机的位置,工件通过移动装置进行移动。

图9表示本实施方式的第二机器人系统的侧面图。在第二机器人系统4中,摄像机6被固定在架台96上。工件38由机器人1支持。第二机器人系统4如箭头105所示那样将装载在架台101上的工件38运送到架台102。机器人1的位置以及姿势发生变化,从而工件38从位置p38s被运送到位置p38e。第二机器人系统4的摄像装置检测通过机械手5把持了工件38时的机械手5内的工件38的位置偏离。

图10表示第二机器人系统4的其他侧面图。参照图2以及图10,摄像机6被固定在预先决定的位置。预先设定包括工件38底面的检测面75。另外,预先决定通过摄像机6拍摄工件38时的工件38的多个位置p38a、p38b。与工件38的位置p38a、p38b对应的机器人1的位置以及姿势被预先决定并被设定在动作程序41中。进一步,预先决定用于检测工件38的工件38的检测位置。在存储部56中存储用于在检测位置配置工件38的机器人1的位置以及姿势作为移动装置的设定位置。工件38的检测位置能够设定在通过摄像机6能够拍摄工件38的任意位置上。摄像机6进行校正,从而能够计算图像坐标系73中的点的位置所对应的基准坐标系71中的摄像机6的视线。

机器人1为了通过摄像机6拍摄多个第一图像而移动工件38。摄像机6在工件38被配置在多个位置p38a、p38b时拍摄工件38。位置取得部52取得拍摄工件38时的机器人1的位置以及姿势。位置取得部52根据机器人1的位置以及姿势来计算工件38的位置p38a、p38b。存储部56将拍摄到的第一图像和与工件38的多个位置p38a、p38b对应的机器人1的位置以及姿势作为组来进行存储。即,存储部56存储多个第一图像与移动装置的位置的组。

图像转换部53根据拍摄工件38时的机器人1的位置以及姿势,将通过摄像机6拍摄到的多个第一图像转换为多个第二图像,使得在设定位置进行拍摄时和在工件38位于位置p38a、p38b时进行拍摄时,工件38和摄像机6的相对位置关系变得相同。在第二机器人系统4中,能够根据通过图像坐标系73表示的点的位置来计算通过基准坐标系71表示的摄像机6的视线。或者,能够根据通过基准坐标系71表示的点来计算通过图像坐标系73表示的点的位置。

合成部54合成通过图像转换部53转换而得的多个第二图像来生成合成图像。合成图像处理部55能够根据合成图像中的工件的特征点来检测工件38的位置。合成图像处理部55能够根据机器人1的位置以及姿势和工件38的位置来修正把持工件38时的偏离。

这里,参照图9说明修正把持了工件38时的偏离的方法。在以下的说明中,w1、p2等表示位置的记号是齐次转换矩阵。在本实施方式中,为了修正机械手5内的工件38的把持的偏离,测量工件38相对于机器人1的臂前端部的相对位置。如果通过q1’表示假设工件38被配置在检测位置时的机器人1的位置,通过w1’表示基准坐标系71中的工件38的位置,则能够根据以下的式(1)计算工件38相对于机器人1的臂前端部的相对位置v1’。

v1’=q1’-1·w1’……(1)

并且,关于在示教了工件38的最终位置p38e时所把持的工件38的位置p2,如果将工件38相对于机器人1臂前端的相对位置设为v1,则能够根据以下的式(2)来计算应该释放工件38的位置p2’。机器人1能够在修正后的位置p2’释放工件38。

p2’=p2·v1·v1’-1……(2)

在上述实施方式中,合成图像处理部55根据合成图像修正把持了工件38时的偏离,但是不限于该方式。合成图像处理部55与第一机器人系统同样,能够使用检测面75上的工件38的特征点来实施工件38的检查。第二机器人系统的其他结构、作用以及效果与本实施方式的第一机器人系统同样。

图11表示本实施方式的运送系统的侧面图。图12表示本实施方式的运送系统的框图。参照图11以及图12,运送系统9具备摄像装置。运送系统9具备传送带7作为移动工件38的移动装置。运送系统9具有代替第二机器人系统4的机器人1而配置传送带7的结构。工件38通过传送带7进行驱动而向箭头90所示的方向移动。即,通过传送带7进行驱动,工件38的位置发生变化,视觉传感器和工件38之间的相对位置发生变化。作为视觉传感器的摄像机6被支持部件97支持。

运送系统9具备控制传送带7以及摄像机6的控制装置8。控制装置8通过包括cpu等的运算处理装置构成。控制装置8包括传送带驱动部46。传送带7包括具有用于驱动带子的驱动电动机的传送带驱动装置24。每个驱动电动机中配置检测驱动电动机的旋转位置的位置检测器25作为状态检测器。

控制装置8作为图像处理装置发挥功能。控制装置8与图2所示的机器人系统的控制装置2同样地包括图像控制部51。摄像机6被固定在能够拍摄工件38的预先决定的位置。预先设定了包括工件38的表面的检测面75。另外,预先决定用于通过摄像机6拍摄工件38的工件38的多个位置p38a、p38b。工件38的位置p38a、p38b所对应的传送带7的带子的位置被设定在动作程序41中。进一步,预先决定用于检测工件38的位置的工件38的检测位置。在存储部56中存储用于将工件38配置在检测位置的带子的位置作为移动装置的设定位置。

传送带7为了通过摄像机6拍摄多个第一图像而移动工件38。并且,摄像机6在被配置在多个位置p38a、p38b时拍摄工件38。位置取得部52从安装在传送带7上的位置检测器25等的解码器取得拍摄工件38时的传送带7的带子的位置。位置取得部52根据传送带7的带子的位置计算工件38的位置p38a、p38b。存储部56将拍摄到的第一图像和与工件38的位置p38a、p38b对应的传送带7的带子的位置作为组进行存储。存储部56存储多个第一图像与移动装置的位置的组。之后,与第二机器人系统4同样,图像转换部53将第一图像转换为与检测位置对应的第二图像。即,将第一图像转换为假设在传送带的设定位置进行了拍摄时的第二图像。合成部54合成与检测位置对应的多个第二图像。合成图像处理部55能够进行工件38的位置检测或检查。

运送系统的其他结构、作用以及效果与本实施方式的第一机器人系统以及第二机器人系统相同。

图13表示本实施方式的摄像装置的侧面图。图14表示本实施方式的摄像装置的框图。摄像装置可以不具备上述机器人1以及传送带7等移动装置。图13以及图14所示的摄像装置中,工件38以及摄像机31、32双方被固定在预先决定的位置。图13以及图14所示的摄像装置在本实施方式的第一机器人系统3中配置多个摄像机31、32来代替由机器人1变更摄像机6进行拍摄的位置。并且,通过位置相互不同的多个摄像机31、32来拍摄多个第一图像。

摄像装置具备作为固定工件38的第一固定部的架台85、作为拍摄工件38的第一图像的多个视觉传感器的多个摄像机31、32。第一摄像机31以及第二摄像机32被作为第二固定部的支持部件98、99支持。摄像机31、32分离,以便从相互不同的位置来拍摄工件38。

摄像装置包括控制装置10,该控制装置10作为处理通过摄像机31、32拍摄到的第一图像的图像处理装置而发挥功能。控制装置10通过包括cpu等的运算处理装置而构成。控制装置10具有与图2所示的机器人系统的图像控制部51同样的结构。摄像控制部57将拍摄图像的指令发送给第一摄像机31以及第二摄像机32。存储部56将通过第一摄像机31以及第二摄像机32拍摄到的第一图像与拍摄了第一图像的摄像机31、32的位置作为组进行存储。

在摄像装置中,预先设定基准坐标系71。在图13所示的例子中,基准坐标系71被设定在架台95上。另外,在固定在架台95上的工件38上定义检测面75。进一步,预先决定用于检测工件38的摄像机的检测位置p6d并存储在存储部56中。每个摄像机31、32被校正为能够计算出与图像坐标系73中的点的位置对应的基准坐标系71中的摄像机的视线。

控制装置10的位置取得部52取得预先决定的摄像机31、32的位置。图像转换部53将通过多个摄像机31、32拍摄到的多个第一图像转换为假设在检测位置p6d拍摄时的第二图像。图像转换部53根据摄像机31、32的位置来转换第一图像。另外,合成部54合成通过图像转换部53转换而得的多个第二图像来生成合成图像。并且,合成图像处理部55能够根据合成图像在检测面75中进行工件38的检测以及检查中的至少一方。例如,合成图像处理部55能够根据预先决定的判定值实施工件38的尺寸检查。或者,也可以另外配置运送工件38的机器人等。摄像装置能够检测架台95中的工件38的位置并发送给机器人的控制装置等。

在图13以及图14所示的例子中,配置2个摄像机,但是不限于该方式。摄像装置可以具备3个以上的摄像机。图像转换部53能够转换与摄像机的台数对应的个数的第一图像。

关于摄像装置的其他结构、作用以及效果,与本实施方式的第一机器人系统、第二机器人系统以及运送系统相同。

在上述实施方式中,说明各种工件检测中的工件的位置检测,但是不限于该方式。本实施方式的控制能够适用于检测任意工件的控制。例如,摄像装置能够实施判定在预定的范围内部是否配置了工件的控制。或者,在配置了大量工件时,摄像装置能够实施判定是否存在预定个数的工件的控制。

另外,在上述实施方式中,在一个工件上配置了一个检测面,但是不限于该方式,可以对一个工件配置多个检测面。摄像装置能够按照每个检测面进行工件的检测以及检查中的至少一方。

根据本公开的一个方式,能够提供一种摄像装置,该摄像装置即使环境光的变化或对象物的亮度变化较大也能够捕捉对象物的特征。

上述实施方式能够适当组合。在上述每个附图中,对相同或等同的部分标注相同的标记。另外,上述实施方式是例示而不限定发明。另外,在实施方式中包括请求专利保护的范围所表示的实施方式的变更。

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