执行手眼标定的机器人和电子设备的制作方法

文档序号:18512964发布日期:2019-08-24 09:15阅读:146来源:国知局
本公开涉及一种执行机器人的手眼标定的技术。
背景技术
::机器人系统可以包括用于抓取外部对象的机器臂和用于捕获外部对象的相机。对于机器人系统的操作,机器人系统可以执行手眼标定以计算被包括在机器臂中的末端效应器的坐标系与相机的坐标系之间的变换关系。为了执行手眼标定,特定点可能需要末端效应器的坐标系中的坐标和相机的坐标系中的坐标。以上信息仅作为背景信息呈现,以帮助理解本公开。对于上述任何内容是否适于作为关于本发明的现有技术,未作出任何确定,也未作出任何断言。技术实现要素:技术问题对于手眼标定,多个点可能需要末端效应器的坐标系中的坐标和相机的坐标系中的坐标。在相关技术的机器人系统中,当机器人系统的用户操作机器人系统时,可以获取上述坐标。然而,为了通过机器人系统的用户的操作获取上述坐标,可能需要大量的人力和时间。本公开的各方面用于解决至少上述问题和/或缺点,并且提供至少下述优点。因此,本公开的一方面用于提供一种能够减少用户参与手眼标定并且能够减少手眼标定所花费的时间的机器人、电子设备和方法。技术方案根据本公开的一方面,提供了一种用于执行手眼标定的机器人。机器人包括:机器臂,包括多个关节、通过多个关节中的至少一些关节而彼此可旋转地耦合的多个臂部、以及抓取外部对象的与多个关节中的一个连接的末端效应器;通信接口,以无线或有线方式与相机连接;以及控制电路,与机器臂和通信接口电连接。控制电路可以在由末端效应器抓取外部对象使得末端效应器的中心与外部对象的中心重合之后控制机器臂将外部对象放置在工作台上,可以从由相机捕获的外部对象的图像获取外部对象的中心点在相机的坐标系中的坐标,并且可以当外部对象被放置在工作台上时,基于末端效应器在机器人的基坐标系中的坐标和外部对象的中心点在相机的坐标系中的坐标来计算用于定义末端效应器的坐标系与相机的坐标系之间的关系的标定参数。根据本公开的另一方面,提供了一种用于执行包括末端效应器的机器人的手眼标定的电子设备。该电子设备包括:至少一个通信接口,以无线或有线方式与相机设备和机器人连接;以及处理器,与至少一个通信接口电连接。处理器可以在由末端效应器抓取外部对象使得末端效应器的中心与外部对象的中心重合之后控制机器人将外部对象放置在工作台上,可以从由相机设备捕获的外部对象的图像获取外部对象的中心点在相机设备的坐标系中的坐标,并且可以当外部对象被放置在工作台上时,基于末端效应器在机器人的基坐标系中的坐标和外部对象的中心点在相机设备的坐标系中的坐标来计算用于定义末端效应器的坐标系与相机设备的坐标系之间的关系的标定参数。根据本公开的另一方面,提供了一种用于执行包括末端效应器的机器人的手眼标定的电子设备。该电子设备包括:相机,被放置以捕获工作台的图像;通信接口,以无线或有线方式与机器人连接;处理器,与相机和通信接口电连接。处理器可以在末端效应器抓取外部对象使得末端效应器的中心与外部对象的中心重合之后控制机器人将外部对象放置在工作台上,可以从由相机捕获的外部对象的图像获取外部对象的中心点在相机的坐标系中的坐标,并且可以当外部对象被放置在工作台上时,基于末端效应器在机器人的基坐标系中的坐标和外部对象的中心点在相机的坐标系中的坐标来计算用于定义末端效应器的坐标系与相机的坐标系之间的关系的标定参数。技术效果根据本公开中公开的各种实施例,可以自动获取被放置在工作台上的各种位置处的外部对象的坐标,从而减少用于手眼标定的人力并快速执行手眼标定。可以提供通过本公开直接或间接理解的各种效果。通过结合附图公开了本公开的各种实施例的以下详细描述,本公开的其他方面、优点和显著特征对于本领域技术人员将变得显而易见。附图说明通过结合附图的以下描述,本公开的某些实施例的以上和其他方面、特征和优点将更加显而易见,其中:图1示出了根据本公开的实施例的机器人系统操作的环境;图2是示出根据本公开的实施例的机器人的配置的框图;图3是示出根据本公开的实施例的电子设备的配置的框图;图4示出了根据本公开的实施例的机器人系统的操作;图5示出了根据本公开的实施例的机器人系统的操作;图6示出了根据本公开的实施例的机器人系统的操作;图7示出了根据本公开的实施例的机器人系统的操作;图8示出了根据本公开的实施例的机器人系统的操作;图9示出了根据本公开的实施例的机器人系统的操作;图10示出了根据本公开的实施例的机器人系统的操作;图11是示出根据本公开的实施例的用于执行手眼标定的方法的流程图;并且图12是示出根据本公开的实施例的用于执行手眼标定的方法的流程图。在整个附图中,应该注意,相同的附图标记用于描绘相同或类似的元件、特征和结构。具体实施方式提供了参考附图的以下描述以帮助全面理解由权利要求及其等同物限定的本公开的各种实施例。它包括各种具体细节以帮助理解,但这些仅被视为示例性的。因此,本领域普通技术人员将认识到,在不脱离本公开的范围和精神的情况下,可以对本文描述的各种实施例进行各种改变和修改。另外,为了清楚和简明,可以省略对公知功能和结构的描述。在以下描述和权利要求中使用的术语和词语不限于书面含义,而是仅由发明人使用以使得能够清楚和一致地理解本公开。因此,对于本领域技术人员来说显而易见的是,提供本公开的各种实施例的以下描述仅为了说明目的,而不是为了限制由所附权利要求及其等同物限定的本公开的目的。应当理解,除非上下文另有明确规定,否则单数形式“一”和“该”包括复数指示物。因此,例如,对“组件表面”的引用包括对这样的表面中的一个或多个表面的引用。关于附图的描述,类似的元件可以由类似的附图标记而标记。在本公开中,表述“a或b”、“a或/和b中的至少一个”或“a或/和b中的一个或多个”等可以包括相关所列项目中一个或多个的任何和所有组合。诸如“第一”、“第二”等术语可以用于指代各种元件而不管顺序和/或优先级,并且将相关元件与其他元件区分开,但是不限制元件。当元件(例如,第一元件)被称为与另一元件(例如,第二元件)“(可操作地或通信地)”/“(可操作地或通信地)耦合到”另一元件(例如,第二元件)或“连接到”另一元件(例如,第二元件)时,该元件可以直接与其他元件耦合/耦合到其他元件或连接到其他元件,或者可以存在中间元件(例如,第三元件)。根据情况,本公开中使用的表述“被配置为”可以用作例如硬件或软件中的表述“适合于”、“具有能力”、“适应于”、“制造为”、“能够”或“设计为”。表述“被配置为……的设备”可以意味着该设备“能够”与另一设备或其他组件一起操作。例如,“配置为(或设置为)执行a、b和c的处理器”可以意味着用于执行对应操作的专用处理器(例如,嵌入式处理器)或通过运行存储在存储器设备中的一个或多个软件程序来执行对应操作的通用处理器(例如,中央处理单元(centralprocessingunit,cpu)或应用处理器)。根据本公开的各种实施例的电子设备可以包括例如智能电话、平板个人计算机(personalcomputer,pc)、移动电话、视频电话、电子书阅读器、台式pc、膝上型pc,上网本计算机、工作站、服务器、个人数字助理(personaldigitalassistant,pda)、便携式多媒体播放器(portablemultimediaplayer,pmp)、动态图像专家组阶段1或阶段2(motionpictureexpertsgroupphase1orphase2,mpeg-1或mpeg-2)音频层3(mp3)播放器、医疗设备、相机或可穿戴设备中的至少一个。根据各种实施例,可穿戴设备可以包括附件类型(例如,手表、戒指、手镯、脚镯、项链、眼镜、隐形眼镜或头戴式设备(head-mounted-device,hmd)、织物或服装-集成类型(例如,电子衣服)、附体类型(例如,皮肤垫或纹身)或生物可植入类型(例如,可植入电路)中的至少一种。根据各种实施例,电子设备可以包括例如电视(television,tv)、数字多功能盘(digitalversatiledisc,dvd)播放器、音频、冰箱、空调、清洁器、烤箱、微波炉、洗衣机、空气净化器、机顶盒、家庭自动化控制面板、安全控制面板、媒体盒(例如,samsunghomesynctm、appletvtm或googletvtm)、游戏控制台(例如,xboxtm或playstationtm)、电子词典、电子钥匙、便携式摄像机、电子相框等中的至少一个。根据另一实施例,电子设备可以包括各种医疗设备(例如,各种便携式医疗测量设备(例如,血糖监测设备、心跳测量设备、血压测量设备、体温测量设备等)、磁共振血管造影(magneticresonanceangiography,mra)、磁共振成像(magneticresonanceimaging,mri)、计算机断层扫描(computedtomography,ct)、扫描仪和超声波设备)、导航设备、全球导航卫星系统(globalnavigationsatellitesystem,gnss)、事件数据记录器(eventdatarecorder,edr)、飞行数据记录器(flightdatarecorder,fdr)、车辆信息娱乐设备、船舶电子设备(例如,导航系统和陀螺仪)、航空电子设备、安全设备、车辆主机(headunit)、工业或家用机器人、无人机、自动柜员机(automaticteller'smachine,atm)、商店的销售点(pointsofsale,pos)或物联网(例如,灯泡、各种传感器、喷水设备、火警、恒温器、路灯、烤面包机、健身设备、热水器、加热器、锅炉等)中的至少一个。根据实施例,电子设备可以包括家具或建筑物/结构的部分、电子板、电子签名接收设备、投影仪或各种测量仪器(例如,水表、电表、煤气表或波长计等)中的至少一个。根据各种实施例,电子设备可以是柔性电子设备或者两个或更多个上述设备的组合。此外,根据本公开的实施例的电子设备可以不限于上述电子设备。在本公开中,术语“用户”可以指使用电子设备的人或可以指使用电子设备的设备(例如,人工智能电子设备)。图1示出了根据本公开的实施例的机器人系统操作的环境。参考图1,根据实施例,机器人系统可以包括机器人100、相机200和电子设备300。机器人系统可以是例如工业机器人或服务机器人的系统。机器人100可以以无线或有线方式与电子设备300和相机200连接,并且相机200可以以无线或有线方式与电子设备300连接。根据实施例,机器人100可以包括多个关节111、多个臂部112和末端效应器113。臂部112可以通过关节111中的至少一些彼此可旋转地耦合。例如,第一臂部112a可以通过第一关节111a可旋转地耦合到第二臂部112b。第二臂部112b可以通过第二关节111b可旋转地耦合到第三臂部112c。第三臂部112c可以通过第三关节111c可旋转地耦合到末端效应器113。末端效应器113可以被配置为抓取外部对象。第一关节111a、第二关节111b和第三关节111c可以彼此独立地被驱动。根据实施例,机器人100可以抓取外部对象。例如,机器人100可以将所抓取的外部对象移动到与机器人100的基坐标系b中的坐标(bx,by,bz)相对应的位置。又例如,机器人100可以抓取位于机器人100的基坐标系b中的坐标(bx,by,bz)处的外部对象。机器人100可以识别机器人100的基坐标系b与末端效应器113的坐标系h之间的关系。根据实施例,相机200可以捕获图像。例如,相机200可以被放置以捕获工作台的图像,并且可以捕获工作台上的外部对象的图像。相机200可以将所获取的图像发送到机器人100或电子设备300。根据实施例,电子设备300可以控制机器人100和相机200。例如,电子设备300可以控制机器人100的移动和相机200的捕获。根据实施例,机器人100和相机200可以彼此独立地操作。电子设备300或机器人100可以分析由相机200捕获的图像,以获取相机200的坐标系c中的坐标(cx,cy,cz)。电子设备300或机器人100可以基于机器人100的基坐标系b中的坐标(bx,by,bz)和相机200的坐标系c中的坐标(cx,cy,cz)来计算末端效应器113的坐标系h与相机200的坐标系c之间的关系,从而执行手眼标定。图1示出了机器人100、相机200和电子设备300被单独实现,但不限于此。换句话说,机器人100、相机200和电子设备300中的至少一些可以整体实现。例如,相机200可以被包括在机器人100或电子设备300中,或者电子设备300可以被包括在机器人100中。在下文中,将参考图2描述能够在不由电子设备300控制的情况下独立地操作的机器人100。图2是示出根据本公开的实施例的机器人100的配置的框图。参考图2,根据实施例,机器人100可以包括机器臂110、输入设备120、通信接口130和控制电路150。机器臂110可以包括关节111、臂部112和末端效应器113。机器臂110可以抓取外部对象并且可以移动所抓取的外部对象。在以下描述中,将省略已经参考图1描述的关节111、臂部112和末端效应器113的冗余细节。输入设备120可以从机器人100的用户接收输入。输入设备120可以是例如诸如至少一个键、键盘、鼠标或触摸板的各种设备中的一种。根据实施例,输入设备120可以从机器人100的用户接收用于开始手眼标定的指令。通信接口130可以以无线或有线方式与相机200连接。例如,通信接口130可以是与相机200无线通信的无线通信电路。又例如,通信接口130可以是以有线方式与相机200连接的接口。根据实施例,机器人100还可以包括相机140。如果机器人100包括相机140,则通信接口130可以是将相机140与控制电路150连接的接口,并且控制电路150可以从相机140获取图像。为了便于解释,将在假设机器人100与放置在外部的相机200连接的情况下进行以下描述。控制电路150可以与机器臂110、输入设备120和通信接口130电连接。控制电路150可以控制机器臂110、输入设备120和通信接口130中的至少一些。根据实施例,外部对象可以由用户固定到末端效应器113,使得外部对象的中心与末端效应器113的中心重合。根据实施例,控制电路150可以通过使用末端效应器113来抓取外部对象。例如,在外部对象被放置在与指定坐标相对应的位置处的情况下,控制电路150可以将末端效应器113移动到指定坐标并且可以抓取外部对象。控制电路150可以通过使用末端效应器113来抓取外部对象,使得末端效应器113的中心与外部对象的中心重合。根据实施例,在由末端效应器113抓取外部对象使得末端效应器113的中心与外部对象的中心重合之后,控制电路150可以控制机器臂110将外部对象放置在工作台上。例如,控制电路150可以控制机器臂110将外部对象放置在指定工作台上的指定位置处。控制电路150可以控制例如机器臂110将外部对象放置在与机器人100的基坐标系b中的坐标(bx1,by1,bz1)相对应的位置处。根据实施例,控制电路150可以从由相机200捕获的外部对象的图像获取外部对象的中心点在相机200的坐标系中的坐标。控制电路150可以从相机200(或相机140)获取外部对象的图像。控制电路150可以例如通过分析所获取的图像来获取外部对象的中心点在相机200的坐标系c中的坐标(u1,v1)。根据实施例,控制电路150可以获取被放置在工作台上的各种位置处的外部对象的坐标。在获取坐标(bx1,by1,bz1)和坐标(u1,v1)之后,控制电路150可以将外部对象放置在另一位置处。控制电路150可以获取例如与放置在另一位置处的外部对象相对应的坐标(bx2,by2,bz2)和坐标(u2,v2)。在获取坐标(bx2,by2,bz2)和坐标(u2,v2)之后,控制电路150可以将外部对象放置在又一位置处。控制电路150可以获取例如与放置在又一位置处的外部对象相对应的坐标(bx3,by3,bz3)和坐标(u3,v3)。控制电路150可以重复上述操作,直到获取目标数量(例如,四个)的坐标集合。根据实施例,当外部对象被放置在工作台上时,控制电路150可以基于末端效应器113在机器人100的基坐标系b中的坐标和外部对象的中心点在相机200的坐标系c中的坐标来计算用于定义末端效应器113的坐标系h与相机200的坐标系c之间的关系的标定参数。例如,控制电路150可以基于机器人100的基坐标系b中的坐标(bx1,by1,bz1)、(bx2,by2,bz2)和(bx3,by3,bz3)以及相机200中的坐标系c中的坐标(u1,v1)、(u2,v2)和(u3,v3)来计算标定参数。标定参数可以包括例如用于定义末端效应器113的坐标系h与相机200的坐标系c之间的关系的平移向量和旋转矩阵。根据实施例,控制电路150可以基于用于定义机器人100的基坐标系b与相机200的坐标系c之间的关系的第一参数和用于定义机器人100的基坐标系b与末端效应器113的坐标系h之间的第二参数来计算标定参数。例如,控制电路150可以基于坐标(bx1,by1,bz1)、(bx2,by2,bz2)和(bx3,by3,bz3)以及(u1,v1)、(u2,v2)和(u3,v3)来计算用于定义基坐标系b与相机200的坐标系c之间的坐标变换关系的第一平移向量和第一旋转矩阵。用于定义机器人100的基坐标系b与末端效应器113的坐标系h之间的坐标变换关系的第二平移向量和第二旋转矩阵可以预先存储在机器人100中并且可以基于机器人运动学(robotkinematics)而计算。控制电路150可以基于第一平移向量、第一旋转矩阵、第二平移向量和第二旋转矩阵来计算标定参数。根据实施例,标定参数可以包括与投影变换相关联的单应矩阵(homographymatrix)。例如,在工作台的z坐标预先存储在机器人100中的情况下,控制电路150可以基于(bx1,by1)、(bx2,by2)、(bx3,by3)、(u1,v1)、(u2,v2)和(u3,v3)来计算单应矩阵。根据实施例,标定参数可以包括相机200的相机固有参数。控制电路150可以通过分析由相机200获取的图像来计算包括相机200的焦距和/或镜头畸变系数的、相机200的相机固有参数。控制电路150可以通过应用由zhengyouzhang建议的用于相机标定的灵活的新技术来计算上述参数中的至少一些(参见ieeetransactionsonpatternanalysisandmachineintelligence(ieee模式分析与机器智能汇刊),22(11):1330-1334,2000)。在下文中,将参考图3描述能够控制机器人100的电子设备300。图3是示出根据本公开的实施例的电子设备300的配置的框图。参考图3,根据实施例,电子设备300可以包括输入设备310、通信接口320和处理器340。电子设备300可以是能够控制机器人100和相机200的各种类型的计算设备中的一种。输入设备310可以从机器人100的用户接收输入。输入设备310可以是例如诸如至少一个键、键盘、鼠标或触摸板的各种设备中的一种。根据实施例,输入设备310可以从机器人100的用户接收用于开始手眼标定的指令。通信接口320可以以无线或有线方式与相机200和机器人100连接。例如,通信接口320可以是与相机200和/或机器人100无线通信的无线通信电路。又例如,通信接口320可以是以有线方式与相机200和/或机器人100连接的接口。图3示出了电子设备300包括一个通信接口320,但不限于此。电子设备300可以包括与相机200连接的第一通信接口和与机器人100连接的第二通信接口。根据实施例,电子设备300还可以包括相机330。如果电子设备300包括相机330,则通信接口320可以是将相机330与控制电路连接的接口,并且控制电路可以从相机330获取图像。处理器340可以与输入设备310和通信接口320电连接。处理器340可以包括输入设备310和通信接口320中的至少一部分。处理器340可以通过通信接口320控制相机200和机器人100。处理器340可以执行与图2的控制电路150的操作类似的操作。处理器340可以控制相机200和机器人100,从而计算用于定义末端效应器113的坐标系h与相机200的坐标系c之间的关系的标定参数。在下文中,将参考图4至图10描述根据实施例的机器人100和相机200的操作。参考图4至图10描述的操作可以被理解为由图2的机器人100或图3的电子设备300执行。为了便于解释,下面将图4至图10的操作描述为由图2的机器人100执行。图4示出了根据本公开的实施例的机器人系统的操作。参考图4,机器人100可以通过使用末端效应器113来抓取外部对象10。外部对象10可以由末端效应器113抓取,使得外部对象10的中心与末端效应器113的中心重合。外部对象10可以有具有被识别的中心的图案或形状。外部对象10可以具有例如如图4所示的格子图案。例如,外部对象10可以由机器人100的用户通过末端效应器113而抓取。根据实施例,如果外部对象10被放置在工作台上的指定位置处,则机器人100可以控制机器臂抓取外部对象10,使得末端效应器113的中心与外部对象10的中心重合。例如,如果用户在将外部对象10放置在指定位置处之后控制机器人100开始手眼标定,则机器人100可以通过使用末端效应器113来抓取放置在指定位置处的外部对象10,使得末端效应器113的中心与外部对象10的中心重合。图5示出了根据本公开的实施例的机器人系统的操作,并且图6示出了根据本公开的实施例的机器人系统的操作。参考图5和图6,机器人100可以在通过末端效应器抓取外部对象10使得末端效应器的中心与外部对象10的中心重合之后,控制机器臂将外部对象10放置在工作台20上。例如,在外部对象10由末端效应器抓取之后,如果通过输入设备输入了机器人100的用户的指令,则机器人100可以将外部对象10放置在工作台20上。机器人100可以将外部对象10放置在工作台20上的与机器人100的基坐标系b中的坐标(bx1,by1,bz1)相对应的位置处。机器人100可以基于机器人100的运动学将坐标(bx1,by1,bz1)重新定义为末端效应器的坐标系h中的坐标。机器人100的基坐标系b中的x-y平面可以与工作台20彼此平行,并且可以将坐标系b的x-y平面与工作台20之间的距离通知给机器人100。图7示出了根据本公开的实施例的机器人系统的操作。参考图7,机器人100可以在外部对象10的图像210由相机200捕获之前控制机器臂移出相机200的视线。当相机200捕获图像210时,机器人100可以将机器臂移出相机200的视线,使得外部对象10不被机器臂隐藏。相机200可以在机器臂移出相机200的视线之后捕获外部对象10的图像210。相机200可以被放置成面向工作台20。相机200可以存储所捕获的图像210。可以将由相机200捕获的图像210发送到机器人100。可以将由相机200捕获的图像210发送到图3的电子设备300。图8示出了根据本公开的实施例的机器人系统的操作。参考图8,机器人100可以通过使用外部对象的图案分析外部对象10的图像210来获取外部对象10的中心点在相机200的坐标系c中的坐标(u1,v1)。例如,机器人100可以分析由相机200捕获的外部对象10的图像210。机器人100可以通过分析图像210来识别外部对象10的格子图案。机器人100可以通过使用外部对象10的格子图案来获取外部对象10的中心点在相机200的坐标系c中的坐标(u1,v1)。尽管未在图8中示出,机器人100可以通过使用外部对象10的形状分析外部对象10的图像210来获取外部对象10的中心点在相机200的坐标系c中的坐标(u1,v1)。图9示出了根据本公开的实施例的机器人系统的操作。参考图9,机器人100可以在图像210被捕获之后抓取工作台20上的外部对象10。机器人100可以将末端效应器113移动到与机器人100的基坐标系b中的坐标(bx1,by1,bz1)相对应的位置,并且可以使用末端效应器113抓取外部对象10。机器人100可以在抓取外部对象10之后如图10所示将外部对象10移动到工作台20上的另一位置。图10示出了根据本公开的实施例的机器人系统的操作。参考图10,机器人100可以重复图4至图9中所示的操作。例如,机器人100可以抓取放置在与坐标(bx1,by1,bz1)相对应的位置处的外部对象10,然后可以将外部对象10移动到另一位置,例如,与坐标(bx2,by2,bz2)相对应的位置。机器人100可以在将外部对象10移动到与坐标(bx2,by2,bz2)相对应的位置之后,将机器臂移出相机200的视线以防止外部对象10被机器臂隐藏。相机200可以在机器臂移出相机200的视线之后捕获外部对象10的图像220。机器人100可以通过分析图像220来获取外部对象10的中心点在相机200的坐标系c中的坐标(u2,v2)。机器人100可以在图像220被捕获之后将末端效应器113移动到与坐标(bx2,by2,bz2)相对应的位置,并且可以通过使用末端效应器113来抓取外部对象10。机器人100可以在抓取外部对象10之后将外部对象10移动到工作台20上的又一位置(例如,坐标(bx3,by3,bz3))。机器人100可以获取例如至少四个坐标集合。机器人100可以基于获取的至少四个坐标集合来计算标定参数。随着坐标集合的数量增加,手眼标定的精度可以提高。图11是示出根据本公开的实施例的用于执行手眼标定的方法的流程图。在假设图2的机器人100或图3的电子设备300执行图11的过程的情况下进行以下描述。另外,可以理解,图11的操作由图2的机器人100的控制电路150或图3的电子设备300的处理器340执行。为了便于解释,将在假设图11的操作由图2的机器人100执行的情况下进行以下描述。参考图11,在操作1110中,机器人可以控制机器臂将外部对象放置在工作台上。例如,机器人可以控制机器臂将外部对象放置在工作台上的第一位置处。在操作1120中,机器人可以控制机器臂移出相机的视线。例如,机器人可以在相机捕获外部对象的图像之前将机器臂移出相机的视线以防止相机的视线被机器臂阻断。在操作1130中,机器人可以获取由相机捕获的外部对象的图像。例如,如果相机捕获放置在第一位置处的外部对象的图像,则机器人可以从相机接收放置在第一位置处的外部对象的图像。在操作1140中,机器人可以从图像获取外部对象的中心点在相机的坐标系中的坐标。例如,机器人可以通过分析被包括在所获取的图像中的外部对象的图案或形状来获取外部对象的中心点的坐标。在操作1150中,机器人可以确定是否获取了指定数量的坐标集合。例如,机器人可以确定是否获取了指定数量的坐标集合,具体的说,至少四个坐标集合。机器人可以重复操作1110至操作1140,直到获取指定数量的坐标集合。机器人可以将外部对象放置在第二位置、第三位置和第四位置处,并且可以通过重复操作获取第二位置的坐标、第三位置的坐标和第四位置的坐标。如果获取了指定数量的坐标集合,则在操作1160中,机器人可以基于末端效应器的坐标和外部对象的中心点的坐标来计算标定参数。例如,当放置外部对象时,机器人可以基于末端效应器的坐标系中的坐标和通过分析图像获取的外部对象的中心点的坐标来计算标定参数,该标定参数包括表示末端效应器的坐标系与相机的坐标系之间的关系的平移向量和旋转矩阵。图12是示出根据本公开的实施例的用于执行手眼标定的方法的流程图。在假设图2的机器人100或图3的电子设备300执行图12的过程的情况下进行以下描述。另外,可以理解,图12的操作由图2的机器人100的控制电路150或图3的电子设备300的处理器340执行。为了便于解释,将在假设图12的操作由图2的机器人100执行的情况下进行以下描述。参考图12,在操作1210中,机器人可以通过使用相机来获取图像。例如,机器人可以通过使用相机来连续获取工作台的多个图像。在操作1220中,机器人可以确定相机的位置是否被改变。例如,机器人可以将由相机获取的至少两个图像相互比较。在第一图像在像素亮度上与第二图像完全不同的情况下,机器人可以确定相机的位置被改变。如果不确定相机的位置被改变,则在操作1230中,机器人可以抓取外部对象。例如,机器人可以基于存储在机器人中的坐标来抓取外部对象。机器人可以在抓取外部对象之后移动外部对象。在操作1240中,机器人可以确定对外部对象的抓取是否成功。例如,机器人可以比较在抓取外部对象之前获取的图像和在抓取外部对象之后获取的图像。如果在抓取外部对象之前获取的图像与在抓取外部对象之后获取的图像在外部对象的区域中的像素的亮度方面不同,则机器人可以确定对外部对象的抓取成功。如果对外部对象的抓取成功,则机器人可以再次执行操作1210。如果相机的位置被改变或者如果对外部对象的抓取失败,则在操作1250中,机器人可以输出相机的位置改变的通知。例如,如果相机的位置被改变或者对外部对象的抓取失败,则机器人可以确定相机的位置被改变,并且可以向用户输出相机的位置改变的通知。机器人可以输出例如声音通知,并且可以向被包括在机器人(或电子设备)中的显示器或与机器人连接的显示器输出消息。机器人可以在输出通知之后再次执行参考图11描述的手眼标定。根据实施例,用于执行手眼标定的机器人可以包括:机器臂,包括多个关节、通过多个关节中的至少一些关节而彼此可旋转地耦合的多个臂部、以及抓取外部对象的与多个关节中的一个连接的末端效应器;通信接口,以无线或有线方式与相机连接;控制电路,与机器臂和通信接口电连接。控制电路可以包括在外部对象由末端效应器抓取使得末端效应器的中心与外部对象的中心重合之后控制机器臂将外部对象放置在工作台上,可以从由相机捕获的外部对象的图像获取外部对象的中心点在相机的坐标系中的坐标,并且可以当外部对象被放置在工作台上时,基于末端效应器在机器人的基坐标系中的坐标和外部对象的中心点在相机的坐标系中的坐标来计算用于定义末端效应器的坐标系与相机的坐标系之间的关系的标定参数。根据实施例,机器人还可以包括相机,并且通信接口可以是将相机与控制电路连接的接口。根据实施例,通信接口可以以无线方式与相机通信。根据实施例,如果外部对象被放置在工作台上的指定位置处,则控制电路可以控制机器臂抓取外部对象,使得末端效应器的中心与外部对象的中心重合。根据实施例,机器人还可以包括与控制电路电连接的输入设备以从机器人的用户接收输入。在外部对象由末端效应器抓取使得末端效应器的中心与外部对象的中心重合之后,如果通过输入设备输入机器人的用户的指令,则控制电路可以控制机器臂将外部对象放置在工作台上。根据实施例,在外部对象的图像由相机捕获之前,控制电路可以控制机器臂移出相机的视线。根据实施例,控制电路可以通过使用外部对象的图案分析外部对象的图像来获取外部对象的中心点在相机的坐标系中的坐标。根据实施例,控制电路可以在外部对象由末端效应器抓取使得末端效应器的中心与外部对象的中心重合之后,控制机器臂将外部对象放置在工作台上的第一位置处,可以当外部对象被放置在第一位置处时,获取末端效应器在机器人的基坐标系中的第一坐标,可以从由相机捕获的外部对象的第一图像获取外部对象的中心点在相机的坐标系统中的第一坐标,可以控制机器臂抓取放置在第一位置处的外部对象并将外部对象放置在工作台上与第一位置不同的第二位置处,可以当外部对象被放置在第二位置处时,获取末端效应器在机器人的基坐标系中的第二坐标,可以从由相机捕获的外部对象的第二图像获取外部对象的中心点在相机的坐标系中的第二坐标,并且可以基于末端效应器的第一坐标、外部对象的中心点的第一坐标、末端效应器的第二坐标和外部对象的中心点的第二坐标来计算用于定义末端效应器的坐标系与相机的坐标系之间的关系的标定参数。根据实施例,控制电路可以基于用于定义机器人的基坐标系与相机的坐标系之间的关系的第一参数和用于定义机器人的基坐标系与末端效应器的坐标系之间的关系的第二参数来计算标定参数。根据实施例,标定参数可以包括用于定义末端效应器的坐标系与相机的坐标系之间的关系的旋转矩阵和平移向量。根据实施例,标定参数可以包括与投影变换相关联的单应矩阵。根据实施例,标定参数可以包括相机固有参数,该相机固有参数包括相机的焦距或镜头畸变系数。根据实施例,用于执行包括末端效应器的机器人的手眼标定的电子设备可以包括:至少一个通信接口,以无线或有线方式与相机设备和机器人连接;以及处理器,与至少一个通信接口电连接。处理器可以在外部对象由末端效应器抓取使得末端效应器的中心与外部对象的中心重合之后控制机器人将外部对象放置在工作台上,从由相机设备捕获的外部对象的图像获取外部对象的中心点在相机设备的坐标系中的坐标,并且当外部对象被放置在工作台上时,基于末端效应器在机器人的基坐标系中的坐标和外部对象的中心点在相机设备的坐标系中的坐标来计算用于定义末端效应器的坐标系与相机设备的坐标系之间的关系的标定参数。根据实施例,在外部对象的图像由相机设备捕获之前,处理器可以控制机器人移出相机设备的视线。根据实施例,处理器可以通过使用外部对象的图案分析外部对象的图像来获取外部对象的中心点的坐标。根据实施例,处理器可以在外部对象由末端效应器抓取使得末端效应器的中心与外部对象的中心重合之后,控制机器人将外部对象放置在工作台上的第一位置处,可以当外部对象被放置在第一位置处时,获取末端效应器在机器人的基坐标系中的第一坐标,可以从由相机设备捕获的外部对象的第一图像获取外部对象的中心点在相机设备的坐标系中的第一坐标,可以控制机器人抓取放置在第一位置处的外部对象并将外部对象放置在工作台上与第一位置不同的第二位置处,可以当外部对象被放置在第二位置处时,获取末端效应器在机器人的基坐标系中的第二坐标,可以从由相机设备捕获的外部对象的第二图像获取外部对象的中心点在相机设备的坐标系中的第二坐标,并且可以基于末端效应器的第一坐标、外部对象的中心点的第一坐标、末端效应器的第二坐标和外部对象的中心点的第二坐标来计算用于定义末端效应器的坐标系与相机设备的坐标系之间的关系的标定参数。根据实施例,处理器可以基于用于定义机器人的基坐标系与相机设备的坐标系之间的关系的第一参数和用于定义机器人的基坐标系与末端效应器的坐标系之间的关系的第二参数来计算标定参数。根据实施例,标定参数可以包括用于定义末端效应器的坐标系与相机设备的坐标系之间的关系的旋转矩阵和平移向量。根据实施例,标定参数可以包括与末端效应器的坐标系和相机设备的坐标系之间的投影变换相关联的单应矩阵。根据实施例,用于执行包括末端效应器的机器人的手眼标定的电子设备可以包括:相机,被放置以捕获工作台的图像;通信接口,以无线或有线方式与机器人连接;以及处理器,与相机和通信接口电连接。处理器可以在外部对象由末端效应器抓取使得末端效应器的中心与外部对象的中心重合之后,控制机器人将外部对象放置在工作台上,可以从由相机捕获的外部对象的图像获取外部对象的中心点在相机的坐标系中的坐标,并且可以当外部对象被放置在工作台上时,基于末端效应器在机器人的基坐标系中的坐标和外部对象的中心点在相机的坐标系中的坐标来计算用于定义末端效应器的坐标系与相机的坐标系之间的关系的标定参数。本公开中使用的术语“模块”可以包括由硬件、软件和固件组成的单元,并且可以与术语“单元”、“逻辑”、“逻辑块”、“组件”和“电路”互换使用。“模块”可以是集成组件,或者可以是用于执行一个或多个功能或其一部分的最小单元。“模块”可以被机械地或电子地实现,并且可以包括用于执行已知或将要开发的一些操作的专用集成电路(application-specificintegratedcircuit,asic)芯片、现场可编程门阵列(field-programmablegatearray,fpga)或可编程逻辑器件中的至少一个。根据各种实施例的装置的至少一部分(例如,其模块或功能)或方法(例如,操作)可以例如由以程序模块形式存储在非暂时性计算机可读存储介质中的命令来实现。指令在由处理器运行时可以使得处理器执行与该指令相对应的功能。非暂时性计算机可读记录介质可以包括硬盘、软盘、磁介质(例如,磁带)、光学介质(例如,光盘只读存储器(compactdiscreadonlymemory,cd-rom)和dvd)、磁光介质(例如,软式光盘))和内部存储器。此外,程序指令不仅可以包括诸如由编译器生成的事物的机械代码,还可以包括使用解释器在计算机上可运行的高级语言代码。根据各种实施例的模块或程序模块可以包括上述元件中的至少一个,或者可以省略上述元件的一部分,或者还可以包括其他元件。根据各种实施例的由模块、程序模块或其他元件执行的操作可以顺序地、并行地、重复地或以启发式方法运行,或者一些操作可以以不同的顺序运行或者可以被省略。可替换地,可以添加其他操作。虽然已经参考本公开的各种实施例示出和描述了本公开,但是本领域技术人员将理解,在不脱离由所附权利要求及其等同物所限定的本公开的精神和范围的情况下,可以在其中进行形式和细节上的各种改变。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1