CN112775955B - 机械手臂坐标确定方法、计算机装置 - Google Patents
机械手臂坐标确定方法、计算机装置 Download PDFInfo
- Publication number
- CN112775955B CN112775955B CN201911078444.6A CN201911078444A CN112775955B CN 112775955 B CN112775955 B CN 112775955B CN 201911078444 A CN201911078444 A CN 201911078444A CN 112775955 B CN112775955 B CN 112775955B
- Authority
- CN
- China
- Prior art keywords
- jigs
- coordinate
- position corresponding
- position coordinate
- jig
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1602—Programme controls characterised by the control system, structure, architecture
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1661—Programme controls characterised by programming, planning systems for manipulators characterised by task planning, object-oriented languages
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1664—Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1694—Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
- B25J9/1697—Vision controlled systems
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/37—Measurements
- G05B2219/37097—Marker on workpiece to detect reference position
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Automation & Control Theory (AREA)
- Manipulator (AREA)
- Numerical Control (AREA)
Abstract
本发明提供了一种机械手臂坐标确定方法,该方法在获得了任意一个治具所对应的参考位置的位置坐标,中间位置的位置坐标,以及目标位置的位置坐标后,仅需人工查找其他治具的参考位置的位置坐标即可获得其他治具的中间位置的位置坐标以及目标位置的位置坐标。利用本发明,无需更改现有治具及环境,缩短查找各个治具所对应的中间位置的位置坐标以及目标位置的位置坐标的时间,同时提升了工厂自动化切线的灵活度。本发明还提供一种实现所述机械手臂坐标确定方法的计算机装置。
Description
技术领域
本发明涉及车辆管理技术领域,具体涉及一种机械手臂坐标确定方法、计算机装置。
背景技术
工厂在使用机械手臂实施自动化生产时,通常是基于多个绝对坐标点来控制机械手臂的。举例而言,在控制机械手臂到达目标位置执行放或取的操作之前,通常需要控制机械手臂首先到达一个参考位置,然后控制机械手臂从参考位置到达一个中间位置,再控制机械手臂从中间位置到达目标位置执行放或取的操作。
目前,这些操作点即参考位置,中间位置,以及目标位置分别所对应的绝对坐标都要由人工操作的配合才能提取到。具体是由人工将机械手臂移动到每个操作点,然后由计算机装置提取每个操作点所对应的绝对坐标。然而,人工查找每个操作点的时间可能长达30分钟之久,所花费的时间很长,间接影响工厂的生产效率。
发明内容
鉴于以上内容,有必要提出一种机械手臂坐标确定方法、计算机装置,能够在无需更改现有治具及环境的前提下,缩短查找各个治具所对应的中间位置及目标位置的位置坐标的时间,同时提升了工厂自动化切线的灵活度。
本发明第一方面提供一种机械手臂坐标确定方法,应用于计算机装置,该方法包括:
设置步骤,将设置有标记物的目标物件置于多个治具中的其中一个治具;
第一拍摄步骤,控制所述机械手臂的摄像机拍摄一张包括了所述标记物的第一照片,并基于该拍摄得到的第一照片获取所述标记物的第一位置坐标;
第一计算步骤,基于所述标记物的第一位置坐标计算所述其中一个治具所对应的参考位置的位置坐标;
第一控制步骤,基于所述其中一个治具所对应的参考位置的位置坐标,控制所述机械手臂移动到所述其中一个治具所对应的参考位置;
第一移动步骤,将所述机械手臂从所述其中一个治具所对应的参考位置移动到所述其中一个治具所对应的中间位置;
第一读取步骤,从所述机械手臂所在的三维坐标系中读取所述机械手臂当前所在位置的位置坐标,将该读取的位置坐标作为所述其中一个治具所对应的所述中间位置的位置坐标;
第二移动步骤,将所述机械手臂从所述其中一个治具所对应的中间位置移动到所述其中一个治具所对应的目标位置;
第二读取步骤,从所述机械手臂所在的三维坐标系中读取所述机械手臂当前所在位置的位置坐标,将该读取的位置坐标作为所述其中一个治具所对应的所述目标位置的位置坐标,从而获得了所述其中一个治具所对应的参考位置的位置坐标、中间位置的位置坐标,以及目标位置的位置坐标;
第三移动步骤,将设置有所述标记物的所述目标物件从所述其中一个治具移动到所述多个治具中的另一个治具上;
第二拍摄步骤,控制所述摄像机拍摄一张包括了所述标记物的第二照片,并基于该拍摄得到的第二照片获取所述标记物的第二位置坐标;
第二计算步骤,基于所述标记物的第二位置坐标计算所述另一个治具所对应的参考位置的位置坐标;
第二控制步骤,基于所述另一个治具所对应的参考位置的位置坐标,控制所述机械手臂移动到所述另一个治具所对应的参考位置;
第三计算步骤,基于所述另一个治具所对应的参考位置的位置坐标,及所述其中一个治具所对应的中间位置的位置坐标与该其中一个治具所对应的参考位置的位置坐标之间的相对关系计算该另一个治具所对应的中间位置的位置坐标;以及基于所述另一个治具所对应的参考位置的位置坐标,及所述其中一个治具所对应的目标位置的位置坐标与该其中一个治具所对应的参考位置的位置坐标之间的相对关系计算该另一个治具所对应的目标位置的位置坐标;及
确定步骤,当确定所述多个治具中的还有其他治具所对应的参考位置的位置坐标、中间位置的位置坐标,以及目标位置的位置坐标尚未获得时,触发所述第三移动步骤。
优选地,所述第一计算步骤中,所述其中一个治具所对应的参考位置的位置坐标的横坐标和纵坐标与所述标记物的第一位置坐标的横坐标和纵坐标相同,所述其中一个治具所对应的参考位置的位置坐标的竖坐标等于所述标记物的第一位置坐标的竖坐标加上预设值d。
优选地,所述第三计算步骤中,所述其中一个治具所对应的参考位置的位置坐标为p0(X0,Y0,Z0),所述其中一个治具所对应的中间位置的位置坐标为p1(X1,Y1,Z1),所述其中一个治具所对应的目标位置的位置坐标p2(X2,Y2,Z2),以及所述另一个治具所对应的参考位置的位置坐标为p0’(X0’,Y0’,Z0’),所述另一个治具所对应的中间位置的位置坐标为p1’(X1’,Y1’,Z1’),其中,X1’=X0’+(X1-X0),Y1’=Y0’,Z1’=Z0’;所述另一个治具所对应的目标位置的位置坐标为p2’(X2’,Y2’,Z2’),其中,X2’=X0’+(X2-X0),Y2=Y0’,Z2’=Z0’。
优选地,该方法还包括步骤:
根据所获得的所述多个治具中的每个治具所对应的参考位置的位置坐标、中间位置的位置坐标,以及目标位置的位置坐标,控制所述机械手臂从对应的治具上抓取目标物件,或者将目标物件放置于对应的治具上。
本发明第二方面提供一种计算机装置,该计算机装置包括存储器和处理器,所述存储器用于存储多个模块,所述多个模块由所述处理器执行,所述多个模块包括:
执行模块,用于控制机械手臂的摄像机拍摄一张包括了标记物的第一照片,并基于该拍摄得到的第一照片获取所述标记物的第一位置坐标,其中,所述标记物设置于目标物件上,该目标物件置于多个治具中的其中一个治具上;
所述执行模块,还用于基于所述标记物的第一位置坐标计算所述其中一个治具所对应的参考位置的位置坐标;
所述执行模块,还用于基于所述其中一个治具所对应的参考位置的位置坐标,控制所述机械手臂移动到所述其中一个治具所对应的参考位置;
读取模块,用于当所述机械手臂从所述其中一个治具所对应的参考位置移动到所述其中一个治具所对应的中间位置时,从所述机械手臂所在的三维坐标系中读取所述机械手臂当前所在位置的位置坐标,将该读取的位置坐标作为所述其中一个治具所对应的所述中间位置的位置坐标;
所述读取模块,还用于当所述机械手臂从所述其中一个治具所对应的中间位置移动到所述其中一个治具所对应的目标位置时,从所述机械手臂所在的三维坐标系中读取所述机械手臂当前所在位置的位置坐标,将该读取的位置坐标作为所述其中一个治具所对应的所述目标位置的位置坐标,从而获得了所述其中一个治具所对应的参考位置的位置坐标、中间位置的位置坐标,以及目标位置的位置坐标;
所述执行模块,还用于当设置有所述标记物的所述目标物件从所述其中一个治具移动到所述多个治具中的另一个治具上时,控制所述摄像机拍摄一张包括了所述标记物的第二照片,并基于该拍摄得到的第二照片获取所述标记物的第二位置坐标;
所述执行模块,还用于基于所述标记物的第二位置坐标计算所述另一个治具所对应的参考位置的位置坐标;
所述执行模块,还用于基于所述另一个治具所对应的参考位置的位置坐标,控制所述机械手臂移动到所述另一个治具所对应的参考位置;
所述执行模块,还用于基于所述另一个治具所对应的参考位置的位置坐标,及所述其中一个治具所对应的中间位置的位置坐标与该其中一个治具所对应的参考位置的位置坐标之间的相对关系计算该另一个治具所对应的中间位置的位置坐标;以及基于所述另一个治具所对应的参考位置的位置坐标,及所述其中一个治具所对应的目标位置的位置坐标与该其中一个治具所对应的参考位置的位置坐标之间的相对关系计算该另一个治具所对应的目标位置的位置坐标。
优选地,所述其中一个治具所对应的参考位置的位置坐标的横坐标和纵坐标与所述标记物的第一位置坐标的横坐标和纵坐标相同,所述其中一个治具所对应的参考位置的位置坐标的竖坐标等于所述标记物的第一位置坐标的竖坐标加上预设值d。
优选地,所述其中一个治具所对应的参考位置的位置坐标为p0(X0,Y0,Z0),所述其中一个治具所对应的中间位置的位置坐标为p1(X1,Y1,Z1),所述其中一个治具所对应的目标位置的位置坐标p2(X2,Y2,Z2),以及所述另一个治具所对应的参考位置的位置坐标为p0’(X0’,Y0’,Z0’),所述另一个治具所对应的中间位置的位置坐标为p1’(X1’,Y1’,Z1’),其中,X1’=X0’+(X1-X0),Y1’=Y0’,Z1’=Z0’;所述另一个治具所对应的目标位置的位置坐标为p2’(X2’,Y2’,Z2’),其中,X2’=X0’+(X2-X0),Y2=Y0’,Z2’=Z0’。
优选地,所述执行模块,还用于:
根据所获得的所述多个治具中的每个治具所对应的参考位置的位置坐标、中间位置的位置坐标,以及目标位置的位置坐标,控制所述机械手臂从对应的治具上抓取目标物件,或者将目标物件放置于对应的治具上。
本发明实施例中所述的机械手臂坐标确定的方法、计算机装置,通过将设置有标记物的目标物件置于多个治具中的其中一个治具;控制所述机械手臂的摄像机拍摄一张包括了所述标记物的第一照片,并基于该拍摄得到的第一照片获取所述标记物的第一位置坐标基于所述标记物的第一位置坐标计算所述其中一个治具所对应的参考位置的位置坐标;基于所述其中一个治具所对应的参考位置的位置坐标,控制所述机械手臂移动到所述其中一个治具所对应的参考位置;将所述机械手臂从所述其中一个治具所对应的参考位置移动到所述其中一个治具所对应的中间位置;从所述机械手臂所在的三维坐标系中读取所述机械手臂当前所在位置的位置坐标,将该读取的位置坐标作为所述其中一个治具所对应的所述中间位置的位置坐标;将所述机械手臂从所述其中一个治具所对应的中间位置移动到所述其中一个治具所对应的目标位置;从所述机械手臂所在的三维坐标系中读取所述机械手臂当前所在位置的位置坐标,将该读取的位置坐标作为所述其中一个治具所对应的所述目标位置的位置坐标,从而获得了所述其中一个治具所对应的参考位置的位置坐标、中间位置的位置坐标,以及目标位置的位置坐标;将设置有所述标记物的所述目标物件从所述其中一个治具移动到所述多个治具中的另一个治具上;控制所述摄像机拍摄一张包括了所述标记物的第二照片,并基于该拍摄得到的第二照片获取所述标记物的第二位置坐标;基于所述标记物的第二位置坐标计算所述另一个治具所对应的参考位置的位置坐标;基于所述另一个治具所对应的参考位置的位置坐标,控制所述机械手臂移动到所述另一个治具所对应的参考位置;基于所述另一个治具所对应的参考位置的位置坐标,及所述其中一个治具所对应的中间位置的位置坐标与该其中一个治具所对应的参考位置的位置坐标之间的相对关系计算该另一个治具所对应的中间位置的位置坐标;以及基于所述另一个治具所对应的参考位置的位置坐标,及所述其中一个治具所对应的目标位置的位置坐标与该其中一个治具所对应的参考位置的位置坐标之间的相对关系计算该另一个治具所对应的目标位置的位置坐标,可以在无需更改现有治具及环境的前提下,缩短查找各个治具所对应的中间位置及目标位置的位置坐标的时间,同时提升了工厂自动化切线的灵活度。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1是本发明较佳实施例提供的机械手臂坐标确定方法的应用环境图。
图2示意机械手臂以及治具。
图3和图4是本发明较佳实施例提供的机械手臂坐标确定方法的流程图。
图5是本发明较佳实施例提供的机械手臂坐标确定系统的功能模块图。
图6是本发明较佳实施例提供的计算机装置的架构图。
如下具体实施方式将结合上述附图进一步说明本发明。
具体实施方式
为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施例对本发明进行详细描述。需要说明的是,在不冲突的情况下,本发明的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。
图1是本发明较佳实施例提供的机械手臂坐标确定方法的应用环境图。
在本实施例中,所述机械手臂坐标确定方法可以应用于由计算机装置1、机械手臂2,以及多个治具31所构成的应用环境中。
本实施例中,所述多个治具31呈阵列布置。所述多个治具31可以包括于一个外治具3中。当然,在其他实施例中,也可以有其他的布置,如无需内置于该外治具3中。本实施例中,外治具3和治具31都是指作为协助控制位置或动作(或两者)的一种模型工具。
本实施例中,计算机装置1可以与所述机械手臂2建立无线通讯连接。例如,所述计算机装置1可以通过无线路由器与机械手臂2建立通讯连接。
请同时参阅图2所示,本实施例中,所述机械手臂2包括基座21、臂部22、夹具23,以及设置在所述夹具23所在位置处的摄像机24。所述臂部22与所述基座21连接,所述夹具23设置在所述臂部22的前端。本实施例中,当用户将目标物件40放置于其中一个治具31上,所述计算机装置1可以控制所述相机22对准放置了所述目标物件40的治具31进行拍照。本实施例中,所述目标物件40上设置了一个标记物(Marker)41。例如,该标记物41可以粘贴于所述目标物件40上。该标记物41可以为ArUco Markers。由此,当计算机装置1获取到了设置有所述标记物41的目标物件40的照片后,所述计算机装置1可以获得所述标记物41的位置坐标。该标记物41的位置坐标也即是该标记物在所述机械手臂2所在的三维坐标系中的坐标。
需要说明的是,ArUco marker是一个二进制平方标记,它由一个宽的黑边和一个内部的二进制矩阵组成,内部的矩阵决定了ID。黑色的边界有利于快速检测到图像,二进制编码可以验证ID,并且允许错误检测和矫正技术的应用。ArUco Markers的大小决定了内部矩阵的大小。例如,一个4*4的ArUco Markers由16bits组成。
具体地,计算机装置1可以利用OpenCV的函数库(ArUco Libray)基于所拍摄获得的所述标记物41的照片来获取所述标记物41的位置坐标。需要说明的是,ArUco Libray是由科尔多瓦大学(西班牙)的Ava集团所研发。
本实施例中,所述目标物件40可以为所述机械手臂2需要从所述治具31上所夹取的物件或者是需要放置到该治具31上的物件。该目标物件40可以为任何产品例如主板或其他产品。
本实施例中,所述机械手臂2所在的三维坐标系可以是以所述基座21为原点,以该基座21所在的水平面为XOY平面,以及以竖直向上且垂直于该XOY平面所在方向为Z轴。
图3和图4是本发明较佳实施例提供的机械手臂坐标确定方法的流程图。
在本实施例中,所述机械手臂坐标确定方法可以应用于计算机装置中,对于需要进行机械手臂坐标确定的计算机装置,可以直接在计算机装置上集成本发明的方法所提供的用于机械手臂坐标确定的功能,或者以软件开发工具包(Software Development Kit,SDK)的形式运行在计算机装置上。
如图3和图4所示,所述机械手臂坐标确定方法具体包括以下步骤,根据不同的需求,该流程图中步骤的顺序可以改变,某些步骤可以省略。
步骤S1,由用户将设置有所述标记物41的目标物件40放置于所述多个治具31中的其中一个治具31,并移动机械手臂2使得摄像机24能拍摄到置于该其中一个治具31上的该目标物件40上的标记物41。
较佳地,移动机械手臂2使得摄像机24能拍摄到所述多个治具31中的每个治具31。
步骤S2,计算机装置1控制所述摄像机24拍摄一张包括了所述标记物41的第一照片,并基于该拍摄得到的第一照片获取所述标记物41的第一位置坐标。
如前面所述,该标记物41可以为ArUco Markers。由此,计算机装置1可以利用OpenCV的函数库(ArUco Libray)基于所拍摄获得的所述标记物41的第一照片来获取所述标记物41的第一位置坐标。该标记物41的第一位置坐标也即是该标记物41在所述机械手臂2所在的三维坐标系中的坐标。
步骤S3,计算机装置1基于所述标记物41的第一位置坐标计算所述其中一个治具31所对应的参考位置的位置坐标。
需要说明的是,本实施例中所提及的任一治具31所对应的参考位置是指机械手臂2需要将目标物件40放置到该任一治具31上,或者需要从该任一治具31上夹取所述目标物件40的过程中,需要经过的一个位置点。
以所述标记物41的第一位置坐标为(Xm1,Ym1,Zm1)为例,所述其中一个治具31所对应的参考位置的位置坐标可以是(Xm1,Ym1,Zm1+d)。即所述其中一个治具31所对应的参考位置的位置坐标的横坐标和纵坐标与所述标记物41的第一位置坐标的横坐标和纵坐标相同,所述其中一个治具31所对应的参考位置的位置坐标的竖坐标等于所述标记物41的第一位置坐标的竖坐标加上预设值d。
本实施例中,所述d的值是一个经验值。例如d等于30cm、25cm,或其他值。d的值的大小可以根据运用环境以及操作经验来预设。优选地,d等于30cm。
步骤S4,计算机装置1基于所述其中一个治具31所对应的参考位置的位置坐标,控制所述机械手臂2移动到所述其中一个治具31所对应的参考位置。
步骤S5,由用户将所述机械手臂2从所述其中一个治具31所对应的参考位置移动到所述其中一个治具31所对应的中间位置。
需要说明的是,本实施例中所提及的任一治具31所对应的所述中间位置不同于该任一治具31所对应的所述参考位置。
需要说明的是,本实施例中所提及的任一治具31所对应的中间位置可以定义为机械手臂2需要将目标物件40放置到该任一治具31上或者需要从该任一治具31夹取目标物件40的过程中所需要经过的一个位置点,该位置点介于所述参考位置和目标位置之间。
在一个实施例中,所述其中一个治具31所对应的中间位置为所述其中一个治具31所对应的参考位置的正下方,且所述其中一个治具31所对应的中间位置距离所述其中一个治具31所对应的参考位置为预设值例如20cm。
步骤S6,计算机装置1从所述机械手臂2所在的三维坐标系中读取所述机械手臂2当前所在位置(也即是所述其中一个治具31所对应的所述中间位置)的位置坐标,将该读取的位置坐标作为所述其中一个治具31所对应的所述中间位置的位置坐标。
步骤S7,由用户将所述机械手臂2从所述其中一个治具31所对应的中间位置移动到所述其中一个治具31所对应的目标位置。
需要说明的是,本实施例中所提及的任一治具31所对应的目标位置可以定义为机械手臂2将目标物件40放置到该任一治具31上或者从该任一治具31夹取目标物件40时的位置点。换句话来讲,所述任一治具31所对应的目标位置也即是指所述机械手臂2执行放的操作或者执行抓取的操作的位置点。
步骤S8,计算机装置1从所述机械手臂2所在的三维坐标系中读取所述机械手臂2当前所在位置(也即是所述其中一个治具31所对应的所述目标位置)的位置坐标,将该读取的位置坐标作为所述其中一个治具31所对应的所述目标位置的位置坐标,由此计算机装置1获得了所述其中一个治具31所对应的参考位置的位置坐标、中间位置的位置坐标,以及目标位置的位置坐标。
步骤S9,由用户将所述设置有所述标记物41的目标物件40从所述其中一个治具31移动到所述多个治具31中的另一个治具31上,以及移动机械手臂2使得摄像机24能拍摄到置于该另一个治具31上的所述目标物件40上的标记物41。
步骤S10,计算机装置1控制所述摄像机24拍摄一张包括了所述标记物41的第二照片,并基于该拍摄得到的第二照片获取所述标记物41的第二位置坐标。
同样地,计算机装置1可以利用OpenCV的函数库(ArUco Libray)基于所拍摄获得的所述标记物41的第二照片来获取所述标记物41的第二位置坐标。该标记物41的第二位置坐标也即是该标记物41在所述机械手臂2所在的三维坐标系中的坐标。
步骤S11,计算机装置1基于所述标记物41的第二位置坐标计算所述另一个治具31所对应的参考位置的位置坐标。
以所述标记物41的第二位置坐标为(Xm2,Ym2,Zm2)为例,所述另一个治具31所对应的参考位置的位置坐标可以是(Xm2,Ym2,Zm2+d)。即所述另一个治具31所对应的参考位置的位置坐标的横坐标和纵坐标与所述标记物41的第二位置坐标的横坐标和纵坐标相同,所述另一个治具31所对应的参考位置的位置坐标的竖坐标等于所述标记物41的第二位置坐标的竖坐标加上预设值d。
如前面所述,本实施例中,所述d的值是一个经验值。例如d等于30cm、25cm,或其他值。d的值的大小可以根据运用环境以及操作经验来预设。优选地,d等于30cm。
步骤S12,计算机装置1基于所述另一个治具31所对应的参考位置的位置坐标,控制所述机械手臂2移动到所述另一个治具31所对应的参考位置。
步骤S13,计算机装置1基于所述另一个治具31所对应的参考位置的位置坐标,及所述其中一个治具31所对应的中间位置的位置坐标与该其中一个治具31所对应的参考位置的位置坐标之间的相对关系计算该另一个治具31所对应的中间位置的位置坐标;以及基于所述另一个治具31所对应的参考位置的位置坐标,及所述其中一个治具31所对应的目标位置的位置坐标与该其中一个治具31所对应的参考位置的位置坐标之间的相对关系计算该另一个治具31所对应的目标位置的位置坐标。
具体地,假设所述其中一个治具31所对应的参考位置的位置坐标为p0(X0,Y0,Z0),所述其中一个治具31所对应的中间位置的位置坐标为p1(X1,Y1,Z1),所述其中一个治具31所对应的目标位置的位置坐标p2(X2,Y2,Z2),以及所述另一个治具31所对应的参考位置的位置坐标为
p0’(X0’,Y0’,Z0’),则所述另一个治具31所对应的中间位置的位置坐标为p1’(X1’,Y1’,Z1’),其中,X1’=X0’+(X1-X0),Y1’=Y0’,Z1’=Z0’;所述另一个治具31所对应的目标位置的位置坐标为p2’(X2’,Y2’,Z2’),其中,X2’=X0’+(X2-X0),Y2=Y0’,Z2’=Z0’。
举例而言,假设p0(X0,Y0,Z0)为(1,0,0),p1(X1,Y1,Z1)为(3,0,0),p2(X2,Y2,Z2)为(6,0,0),p0’(X0’,Y0’,Z0’)为(4,5,6),则可以计算得到X1’=6,X2’=9,即可计算得到p1’为(6,5,6),p2’(9,5,6)。
步骤S14,计算机装置1判断是否已经获得了所述多个治具31中的每个治具31所对应的参考位置的位置坐标、中间位置的位置坐标,以及目标位置的位置坐标。
若还有其他治具31所对应的参考位置的位置坐标、中间位置的位置坐标,以及目标位置的位置坐标尚未获得,则回到步骤S9,根据步骤S9-S13获取其他治具31所对应的参考位置的位置坐标、中间位置的位置坐标,以及目标位置的位置坐标。
在一个实施例中,若已经获得了所述多个治具31中的每个治具31所对应的参考位置的位置坐标、中间位置的位置坐标,以及目标位置的位置坐标,可以结束流程或者还可以进一步包括步骤S15。
步骤S15,计算机装置1根据所获得的所述多个治具31中的每个治具31所对应的参考位置的位置坐标、中间位置的位置坐标,以及目标位置的位置坐标,控制所述机械手臂2从对应的治具31上抓取目标物件40,或者将目标物件40放置于对应的治具31上。
举例而言,假设某个治具F所对应的参考位置p0’的位置坐标为(4,5,6)、中间位置p1’的位置坐标为(6,5,6),以及目标位置p2’的位置坐标为(9,5,6),当需要控制所述机械手臂2从所述治具F上抓取目标物件T时,则首先基于所述治具F所对应的参考位置p0’的位置坐标(4,5,6),控制所述机械手臂2移动到所述该参考位置p0’,然后基于所述治具F所对应的中间位置p1’的位置坐标为(6,5,6),控制所述机械手臂2从所述该参考位置p0’移动到所述该中间位置p1’,接着基于所述治具F所对应的目标位置p2’的位置坐标(9,5,6),控制所述机械手臂2从所述中间位置p1’移动到所述该目标位置p2’,然后在该目标位置p2’,控制所述机械手臂2执行抓取的操作从所述治具31上抓取目标物件40。
根据上述记载可知,本发明实施例的所述机械手臂坐标确定方法,在获得了任意一个治具31所对应的参考位置的位置坐标,中间位置的位置坐标,以及目标位置的位置坐标后,仅需人工查找其他治具31的参考位置的位置坐标即可获得其他治具31的中间位置的位置坐标以及目标位置的位置坐标。利用本发明,无需更改现有治具及环境,缩短查找各个治具31所对应的中间位置的位置坐标以及目标位置的位置坐标的时间,同时提升了工厂自动化切线的灵活度。
上述图3和图4详细介绍了本发明的机械手臂坐标确定方法,下面结合图5和图6,分别对实现所述机械手臂坐标确定方法的软件装置的功能模块以及实现所述机械手臂坐标确定方法的硬件装置架构进行介绍。
应该了解,所述实施例仅为说明之用,在专利申请范围上并不受此结构的限制。
参阅图5所示,是本发明较佳实施例提供的机械手臂坐标确定系统30的功能模块图。
在一些实施例中,所述机械手臂坐标确定系统30运行于计算机装置中。所述机械手臂坐标确定系统30可以包括多个由程序代码段所组成的功能模块。所述机械手臂坐标确定系统30中的各个程序段的计算机程序代码可以存储于计算机装置的存储器中,并由所述计算机装置的至少一个处理器所执行,以实现机械手臂坐标确定(详见对图3和图4描述)。
本实施例中,所述机械手臂坐标确定系统30根据其所执行的功能,可以被划分为多个功能模块。所述功能模块可以包括:执行模块301、读取模块302。本发明所称的模块是指一种能够被至少一个处理器所执行并且能够完成固定功能的一系列计算机程序段,其存储在存储器中。在本实施例中,关于各模块的功能将在后续的实施例中详述。
在本实施例中,首先由用户将设置有所述标记物41的目标物件40放置于所述多个治具31中的其中一个治具31,并移动机械手臂2使得摄像机24能拍摄到置于该其中一个治具31上的该目标物件40上的标记物41。
较佳地,移动机械手臂2使得摄像机24能拍摄到所述多个治具31中的每个治具31。
执行模块301控制所述摄像机24拍摄一张包括了所述标记物41的第一照片,并基于该拍摄得到的第一照片获取所述标记物41的第一位置坐标。
如前面所述,该标记物41可以为ArUco Markers。由此,执行模块301可以利用OpenCV的函数库(ArUco Libray)基于所拍摄获得的所述标记物41的第一照片来获取所述标记物41的第一位置坐标。该标记物41的第一位置坐标也即是该标记物41在所述机械手臂2所在的三维坐标系中的坐标。
执行模块301基于所述标记物41的第一位置坐标计算所述其中一个治具31所对应的参考位置的位置坐标。
需要说明的是,本实施例中所提及的任一治具31所对应的参考位置是指机械手臂2需要将目标物件40放置到该任一治具31上,或者需要从该任一治具31上夹取所述目标物件40的过程中,需要经过的一个位置点。
以所述标记物41的第一位置坐标为(Xm1,Ym1,Zm1)为例,所述其中一个治具31所对应的参考位置的位置坐标可以是(Xm1,Ym1,Zm1+d)。即所述其中一个治具31所对应的参考位置的位置坐标的横坐标和纵坐标与所述标记物41的第一位置坐标的横坐标和纵坐标相同,所述其中一个治具31所对应的参考位置的位置坐标的竖坐标等于所述标记物41的第一位置坐标的竖坐标加上预设值d。
本实施例中,所述d的值是一个经验值。例如d等于30cm、25cm,或其他值。d的值的大小可以根据运用环境以及操作经验来预设。优选地,d等于30cm。
执行模块301基于所述其中一个治具31所对应的参考位置的位置坐标,控制所述机械手臂2移动到所述其中一个治具31所对应的参考位置。
由用户将所述机械手臂2从所述其中一个治具31所对应的参考位置移动到所述其中一个治具31所对应的中间位置。
需要说明的是,本实施例中所提及的任一治具31所对应的所述中间位置不同于该任一治具31所对应的所述参考位置。
需要说明的是,本实施例中所提及的任一治具31所对应的中间位置可以定义为机械手臂2需要将目标物件40放置到该任一治具31上或者需要从该任一治具31夹取目标物件40的过程中所需要经过的一个位置点,该位置点介于所述参考位置和目标位置之间。
在一个实施例中,所述其中一个治具31所对应的中间位置为所述其中一个治具31所对应的参考位置的正下方,且所述其中一个治具31所对应的中间位置距离所述其中一个治具31所对应的参考位置为预设值例如20cm。
读取模块302从所述机械手臂2所在的三维坐标系中读取所述机械手臂2当前所在位置(也即是所述其中一个治具31所对应的所述中间位置)的位置坐标,将该读取的位置坐标作为所述其中一个治具31所对应的所述中间位置的位置坐标。
由用户将所述机械手臂2从所述其中一个治具31所对应的中间位置移动到所述其中一个治具31所对应的目标位置。
需要说明的是,本实施例中所提及的任一治具31所对应的目标位置可以定义为机械手臂2将目标物件40放置到该任一治具31上或者从该任一治具31夹取目标物件40时的位置点。换句话来讲,所述任一治具31所对应的目标位置也即是指所述机械手臂2执行放的操作或者执行抓取的操作的位置点。
读取模块302从所述机械手臂2所在的三维坐标系中读取所述机械手臂2当前所在位置(也即是所述其中一个治具31所对应的所述目标位置)的位置坐标,将该读取的位置坐标作为所述其中一个治具31所对应的所述目标位置的位置坐标,由此计算机装置1获得了所述其中一个治具31所对应的参考位置的位置坐标、中间位置的位置坐标,以及目标位置的位置坐标。
由用户将所述设置有所述标记物41的目标物件40从所述其中一个治具31移动到所述多个治具31中的另一个治具31上,以及移动机械手臂2使得摄像机24能拍摄到置于该另一个治具31上的所述目标物件40上的标记物41。
执行模块301控制所述摄像机24拍摄一张包括了所述标记物41的第二照片,并基于该拍摄得到的第二照片获取所述标记物41的第二位置坐标。
同样地,执行模块301可以利用OpenCV的函数库(ArUco Libray)基于所拍摄获得的所述标记物41的第二照片来获取所述标记物41的第二位置坐标。该标记物41的第二位置坐标也即是该标记物41在所述机械手臂2所在的三维坐标系中的坐标。
执行模块301基于所述标记物41的第二位置坐标计算所述另一个治具31所对应的参考位置的位置坐标。
以所述标记物41的第二位置坐标为(Xm2,Ym2,Zm2)为例,所述另一个治具31所对应的参考位置的位置坐标可以是(Xm2,Ym2,Zm2+d)。即所述另一个治具31所对应的参考位置的位置坐标的横坐标和纵坐标与所述标记物41的第二位置坐标的横坐标和纵坐标相同,所述另一个治具31所对应的参考位置的位置坐标的竖坐标等于所述标记物41的第二位置坐标的竖坐标加上预设值d。
如前面所述,本实施例中,所述d的值是一个经验值。例如d等于30cm、25cm,或其他值。d的值的大小可以根据运用环境以及操作经验来预设。优选地,d等于30cm。
执行模块301基于所述另一个治具31所对应的参考位置的位置坐标,控制所述机械手臂2移动到所述另一个治具31所对应的参考位置。
执行模块301基于所述另一个治具31所对应的参考位置的位置坐标,及所述其中一个治具31所对应的中间位置的位置坐标与该其中一个治具31所对应的参考位置的位置坐标之间的相对关系计算该另一个治具31所对应的中间位置的位置坐标;以及基于所述另一个治具31所对应的参考位置的位置坐标,及所述其中一个治具31所对应的目标位置的位置坐标与该其中一个治具31所对应的参考位置的位置坐标之间的相对关系计算该另一个治具31所对应的目标位置的位置坐标。
具体地,假设所述其中一个治具31所对应的参考位置的位置坐标为p0(X0,Y0,Z0),所述其中一个治具31所对应的中间位置的位置坐标为p1(X1,Y1,Z1),所述其中一个治具31所对应的目标位置的位置坐标p2(X2,Y2,Z2),以及所述另一个治具31所对应的参考位置的位置坐标为
p0’(X0’,Y0’,Z0’),则所述另一个治具31所对应的中间位置的位置坐标为p1’(X1’,Y1’,Z1’),其中,X1’=X0’+(X1-X0),Y1’=Y0’,Z1’=Z0’;所述另一个治具31所对应的目标位置的位置坐标为p2’(X2’,Y2’,Z2’),其中,X2’=X0’+(X2-X0),Y2=Y0’,Z2’=Z0’。
举例而言,假设p0(X0,Y0,Z0)为(1,0,0),p1(X1,Y1,Z1)为(3,0,0),p2(X2,Y2,Z2)为(6,0,0),p0’(X0’,Y0’,Z0’)为(4,5,6),则可以计算得到X1’=6,X2’=9,即可计算得到p1’为(6,5,6),p2’(9,5,6)。
执行模块301判断是否已经获得了所述多个治具31中的每个治具31所对应的参考位置的位置坐标、中间位置的位置坐标,以及目标位置的位置坐标。
若还有其他治具31所对应的参考位置的位置坐标、中间位置的位置坐标,以及目标位置的位置坐标尚未获得,则由用户将所述设置有所述标记物41的目标物件40从所述其中一个治具31移动到所述多个治具31中的其他治具31上,以及移动机械手臂使得摄像机能拍摄到置于该其他治具31上的所述目标物件40上的标记物41,由此获取其他治具31所对应的参考位置的位置坐标、中间位置的位置坐标,以及目标位置的位置坐标。
在一个实施例中,若已经获得了所述多个治具31中的每个治具31所对应的参考位置的位置坐标、中间位置的位置坐标,以及目标位置的位置坐标,执行模块301根据所获得的所述多个治具31中的每个治具31所对应的参考位置的位置坐标、中间位置的位置坐标,以及目标位置的位置坐标,控制所述机械手臂2从对应的治具31上抓取目标物件40,或者将目标物件40放置于对应的治具31上。
举例而言,假设某个治具F所对应的参考位置p0’的位置坐标为(4,5,6)、中间位置p1’的位置坐标为(6,5,6),以及目标位置p2’的位置坐标为(9,5,6),当需要控制所述机械手臂2从所述治具F上抓取目标物件T时,则首先基于所述治具F所对应的参考位置p0’的位置坐标(4,5,6),控制所述机械手臂2移动到所述该参考位置p0’,然后基于所述治具F所对应的中间位置p1’的位置坐标为(6,5,6),控制所述机械手臂2从所述该参考位置p0’移动到所述该中间位置p1’,接着基于所述治具F所对应的目标位置p2’的位置坐标(9,5,6),控制所述机械手臂2从所述中间位置p1’移动到所述该目标位置p2’,然后在该目标位置p2’,控制所述机械手臂2执行抓取的操作从所述治具31上抓取目标物件40。
根据上述记载可知,本发明实施例的所述机械手臂坐标确定方法,在获得了任意一个治具31所对应的参考位置的位置坐标,中间位置的位置坐标,以及目标位置的位置坐标后,仅需人工查找其他治具31的参考位置的位置坐标即可获得其他治具31的中间位置的位置坐标以及目标位置的位置坐标。利用本发明,无需更改现有治具及环境,缩短查找各个治具31所对应的中间位置的位置坐标以及目标位置的位置坐标的时间,同时提升了工厂自动化切线的灵活度。
参阅图6所示,为本发明较佳实施例提供的计算机装置的结构示意图。
本发明的较佳实施例中,计算机装置3包括互相之间电气连接的存储器31、至少一个处理器32。
本领域技术人员应该了解,图1示出的计算机装置3的结构并不构成本发明实施例的限定,所述计算机装置3还可以包括比图示更多或更少的其他硬件或者软件,或者不同的部件布置。例如,所述计算机装置3还可以包括显示屏等部件。
在一些实施例中,所述计算机装置3包括一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的终端,其硬件包括但不限于微处理器、专用集成电路、可编程门阵列、数字处理器及嵌入式设备等。
需要说明的是,所述计算机装置3仅为举例,其他现有的或今后可能出现的电子产品如可适应于本发明,也应包含在本发明的保护范围以内,并以引用方式包含于此。
在一些实施例中,所述存储器31可以用于存储计算机程序的程序代码和各种数据。例如,所述存储器31可以用于存储安装在所述计算机装置3中的机械手臂坐标确定系统30,并在计算机装置3的运行过程中实现高速、自动地完成程序或数据的存取。所述存储器31可以是包括只读存储器(Read-Only Memory,ROM)、可编程只读存储器(ProgrammableRead-Only Memory,PROM)、可擦除可编程只读存储器(Erasable Programmable Read-OnlyMemory,EPROM)、一次可编程只读存储器(One-time Programmable Read-Only Memory,OTPROM)、电子擦除式可复写只读存储器(Electrically-Erasable Programmable Read-Only Memory,EEPROM)、只读光盘(Compact Disc Read-Only Memory,CD-ROM)或其他光盘存储器、磁盘存储器、磁带存储器、或者任何其他能够用于携带或存储数据的计算机可读的存储介质。
在一些实施例中,所述至少一个处理器32可以由集成电路组成。例如,可以由单个封装的集成电路所组成,也可以是由多个相同功能或不同功能封装的集成电路所组成,包括一个或者多个中央处理器(Central Processing unit,CPU)、微处理器、数字处理芯片、图形处理器及各种控制芯片的组合等。所述至少一个处理器32是所述计算机装置3的控制核心(Control Unit),利用各种接口和线路连接整个计算机装置3的各个部件,通过运行或执行存储在所述存储器31内的程序或者模块,以及调用存储在所述存储器31内的数据,以执行计算机装置3的各种功能和处理数据。
尽管未示出,所述计算机装置3还可以包括给各个部件供电的电源(比如电池),优选的,电源可以通过电源管理装置与所述至少一个处理器32逻辑相连,从而通过电源管理装置实现管理充电、放电、以及功耗管理等功能。电源还可以包括一个或一个以上的直流或交流电源、再充电装置、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。所述计算机装置3还可以包括多种传感器、蓝牙模块、Wi-Fi模块等,在此不再赘述。
应该了解,所述实施例仅为说明之用,在专利申请范围上并不受此结构的限制。
上述以软件功能模块的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能模块包括若干指令,该若干指令用以使得一台计算机装置(可以车载电脑等)或处理器(processor)执行本发明各个实施例所述方法的部分。
在进一步的实施例中,结合图5,所述至少一个处理器32可执行所述计算机装置3的操作装置以及安装的各类应用程序(如机械手臂坐标确定系统30)等。
所述存储器31中存储有计算机程序代码,且所述至少一个处理器32可调用所述存储器31中存储的计算机程序代码以执行相关的功能。例如,图5中所述的各个模块是存储在所述存储器31中的计算机程序代码,并由所述至少一个处理器32所执行,从而实现所述各个模块的功能如确定机械手臂的坐标。
在本发明的一个实施例中,所述存储器31存储多个指令,所述多个指令被所述至少一个处理器32所执行以确定机械手臂的坐标。
具体地,所述至少一个处理器32执行上述多个指令以确定机械手臂的坐标的方法,请结合图3和图4所示,在此不再赘述。
在本发明所提供的几个实施例中,应该理解到,所揭露的计算机可读存储介质,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或,单数不排除复数。装置权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。
最后应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。
Claims (8)
1.一种机械手臂坐标确定方法,应用于计算机装置,其特征在于,该方法包括:
设置步骤,将设置有标记物的目标物件置于多个治具中的其中一个治具;
第一拍摄步骤,控制所述机械手臂的摄像机拍摄一张包括了所述标记物的第一照片,并基于该拍摄得到的第一照片获取所述标记物的第一位置坐标;
第一计算步骤,基于所述标记物的第一位置坐标计算所述其中一个治具所对应的参考位置的位置坐标;
第一控制步骤,基于所述其中一个治具所对应的参考位置的位置坐标,控制所述机械手臂移动到所述其中一个治具所对应的参考位置;
第一移动步骤,将所述机械手臂从所述其中一个治具所对应的参考位置移动到所述其中一个治具所对应的中间位置;
第一读取步骤,从所述机械手臂所在的三维坐标系中读取所述机械手臂当前所在位置的位置坐标,将该读取的位置坐标作为所述其中一个治具所对应的所述中间位置的位置坐标;
第二移动步骤,将所述机械手臂从所述其中一个治具所对应的中间位置移动到所述其中一个治具所对应的目标位置;
第二读取步骤,从所述机械手臂所在的三维坐标系中读取所述机械手臂当前所在位置的位置坐标,将该读取的位置坐标作为所述其中一个治具所对应的所述目标位置的位置坐标,从而获得了所述其中一个治具所对应的参考位置的位置坐标、中间位置的位置坐标,以及目标位置的位置坐标;
第三移动步骤,将设置有所述标记物的所述目标物件从所述其中一个治具移动到所述多个治具中的另一个治具上;
第二拍摄步骤,控制所述摄像机拍摄一张包括了所述标记物的第二照片,并基于该拍摄得到的第二照片获取所述标记物的第二位置坐标;
第二计算步骤,基于所述标记物的第二位置坐标计算所述另一个治具所对应的参考位置的位置坐标;
第二控制步骤,基于所述另一个治具所对应的参考位置的位置坐标,控制所述机械手臂移动到所述另一个治具所对应的参考位置;
第三计算步骤,基于所述另一个治具所对应的参考位置的位置坐标,及所述其中一个治具所对应的中间位置的位置坐标与该其中一个治具所对应的参考位置的位置坐标之间的相对关系计算该另一个治具所对应的中间位置的位置坐标;以及基于所述另一个治具所对应的参考位置的位置坐标,及所述其中一个治具所对应的目标位置的位置坐标与该其中一个治具所对应的参考位置的位置坐标之间的相对关系计算该另一个治具所对应的目标位置的位置坐标;及
确定步骤,当确定所述多个治具中的还有其他治具所对应的参考位置的位置坐标、中间位置的位置坐标,以及目标位置的位置坐标尚未获得时,触发所述第三移动步骤。
2.如权利要求1所述的机械手臂坐标确定方法,其特征在于,所述第一计算步骤中,所述其中一个治具所对应的参考位置的位置坐标的横坐标和纵坐标与所述标记物的第一位置坐标的横坐标和纵坐标相同,所述其中一个治具所对应的参考位置的位置坐标的竖坐标等于所述标记物的第一位置坐标的竖坐标加上预设值d。
3.如权利要求1所述的机械手臂坐标确定方法,其特征在于,所述第三计算步骤中,所述其中一个治具所对应的参考位置的位置坐标为p0(X0,Y0,Z0),所述其中一个治具所对应的中间位置的位置坐标为p1(X1,Y1,Z1),所述其中一个治具所对应的目标位置的位置坐标p2(X2,Y2,Z2),以及所述另一个治具所对应的参考位置的位置坐标为p0’(X0’,Y0’,Z0’),所述另一个治具所对应的中间位置的位置坐标为p1’(X1’,Y1’,Z1’),其中,X1’=X0’+(X1-X0),Y1’=Y0’,Z1’=Z0’;所述另一个治具所对应的目标位置的位置坐标为p2’(X2’,Y2’,Z2’),其中,X2’=X0’+(X2-X0),Y2=Y0’,Z2’=Z0’。
4.如权利要求1所述的机械手臂坐标确定方法,其特征在于,该方法还包括步骤:
根据所获得的所述多个治具中的每个治具所对应的参考位置的位置坐标、中间位置的位置坐标,以及目标位置的位置坐标,控制所述机械手臂从对应的治具上抓取目标物件,或者将目标物件放置于对应的治具上。
5.一种计算机装置,其特征在于,该计算机装置包括存储器和处理器,所述存储器用于存储多个模块,所述多个模块由所述处理器执行,所述多个模块包括:
执行模块,用于控制机械手臂的摄像机拍摄一张包括了标记物的第一照片,并基于该拍摄得到的第一照片获取所述标记物的第一位置坐标,其中,所述标记物设置于目标物件上,该目标物件置于多个治具中的其中一个治具上;
所述执行模块,还用于基于所述标记物的第一位置坐标计算所述其中一个治具所对应的参考位置的位置坐标;
所述执行模块,还用于基于所述其中一个治具所对应的参考位置的位置坐标,控制所述机械手臂移动到所述其中一个治具所对应的参考位置;
读取模块,用于当所述机械手臂从所述其中一个治具所对应的参考位置移动到所述其中一个治具所对应的中间位置时,从所述机械手臂所在的三维坐标系中读取所述机械手臂当前所在位置的位置坐标,将该读取的位置坐标作为所述其中一个治具所对应的所述中间位置的位置坐标;
所述读取模块,还用于当所述机械手臂从所述其中一个治具所对应的中间位置移动到所述其中一个治具所对应的目标位置时,从所述机械手臂所在的三维坐标系中读取所述机械手臂当前所在位置的位置坐标,将该读取的位置坐标作为所述其中一个治具所对应的所述目标位置的位置坐标,从而获得了所述其中一个治具所对应的参考位置的位置坐标、中间位置的位置坐标,以及目标位置的位置坐标;
所述执行模块,还用于当设置有所述标记物的所述目标物件从所述其中一个治具移动到所述多个治具中的另一个治具上时,控制所述摄像机拍摄一张包括了所述标记物的第二照片,并基于该拍摄得到的第二照片获取所述标记物的第二位置坐标;
所述执行模块,还用于基于所述标记物的第二位置坐标计算所述另一个治具所对应的参考位置的位置坐标;
所述执行模块,还用于基于所述另一个治具所对应的参考位置的位置坐标,控制所述机械手臂移动到所述另一个治具所对应的参考位置;
所述执行模块,还用于基于所述另一个治具所对应的参考位置的位置坐标,及所述其中一个治具所对应的中间位置的位置坐标与该其中一个治具所对应的参考位置的位置坐标之间的相对关系计算该另一个治具所对应的中间位置的位置坐标;以及基于所述另一个治具所对应的参考位置的位置坐标,及所述其中一个治具所对应的目标位置的位置坐标与该其中一个治具所对应的参考位置的位置坐标之间的相对关系计算该另一个治具所对应的目标位置的位置坐标。
6.如权利要求5所述的计算机装置,其特征在于,所述其中一个治具所对应的参考位置的位置坐标的横坐标和纵坐标与所述标记物的第一位置坐标的横坐标和纵坐标相同,所述其中一个治具所对应的参考位置的位置坐标的竖坐标等于所述标记物的第一位置坐标的竖坐标加上预设值d。
7.如权利要求5所述的计算机装置,其特征在于,所述其中一个治具所对应的参考位置的位置坐标为p0(X0,Y0,Z0),所述其中一个治具所对应的中间位置的位置坐标为p1(X1,Y1,Z1),所述其中一个治具所对应的目标位置的位置坐标p2(X2,Y2,Z2),以及所述另一个治具所对应的参考位置的位置坐标为p0’(X0’,Y0’,Z0’),所述另一个治具所对应的中间位置的位置坐标为p1’(X1’,Y1’,Z1’),其中,X1’=X0’+(X1-X0),Y1’=Y0’,Z1’=Z0’;所述另一个治具所对应的目标位置的位置坐标为p2’(X2’,Y2’,Z2’),其中,X2’=X0’+(X2-X0),Y2=Y0’,Z2’=Z0’。
8.如权利要求5所述的计算机装置,其特征在于,所述执行模块,还用于:
根据所获得的所述多个治具中的每个治具所对应的参考位置的位置坐标、中间位置的位置坐标,以及目标位置的位置坐标,控制所述机械手臂从对应的治具上抓取目标物件,或者将目标物件放置于对应的治具上。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911078444.6A CN112775955B (zh) | 2019-11-06 | 2019-11-06 | 机械手臂坐标确定方法、计算机装置 |
US17/091,345 US11618169B2 (en) | 2019-11-06 | 2020-11-06 | Computing device and method for determining coordinates of mechanical arm |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911078444.6A CN112775955B (zh) | 2019-11-06 | 2019-11-06 | 机械手臂坐标确定方法、计算机装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112775955A CN112775955A (zh) | 2021-05-11 |
CN112775955B true CN112775955B (zh) | 2022-02-11 |
Family
ID=75686860
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911078444.6A Active CN112775955B (zh) | 2019-11-06 | 2019-11-06 | 机械手臂坐标确定方法、计算机装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US11618169B2 (zh) |
CN (1) | CN112775955B (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007090448A (ja) * | 2005-09-27 | 2007-04-12 | Honda Motor Co Ltd | 二次元コード検出装置及びそのプログラム、並びに、ロボット制御情報生成装置及びロボット |
CN103105186A (zh) * | 2011-11-14 | 2013-05-15 | 鸿富锦精密工业(深圳)有限公司 | 自动更换测针系统及方法 |
CN106826822A (zh) * | 2017-01-25 | 2017-06-13 | 南京阿凡达机器人科技有限公司 | 一种基于ros系统的视觉定位及机械臂抓取实现方法 |
CN108340371A (zh) * | 2018-01-29 | 2018-07-31 | 珠海市俊凯机械科技有限公司 | 目标跟随点的定位方法以及系统 |
CN109784323A (zh) * | 2019-01-21 | 2019-05-21 | 北京旷视科技有限公司 | 图像识别的方法、装置、电子设备和计算机存储介质 |
JP2019076972A (ja) * | 2017-10-20 | 2019-05-23 | 株式会社安川電機 | 自動化装置 |
CN109909998A (zh) * | 2017-12-12 | 2019-06-21 | 北京猎户星空科技有限公司 | 一种控制机械臂运动的方法及装置 |
CN109910010A (zh) * | 2019-03-23 | 2019-06-21 | 广东石油化工学院 | 一种高效控制机器人的系统及方法 |
CN110355754A (zh) * | 2018-12-15 | 2019-10-22 | 深圳铭杰医疗科技有限公司 | 机器人手眼系统、控制方法、设备及存储介质 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6415190B2 (ja) * | 2014-09-03 | 2018-10-31 | キヤノン株式会社 | ロボット装置、ロボット制御プログラム、記録媒体、およびロボット装置の制御方法 |
JP6126183B2 (ja) * | 2015-10-05 | 2017-05-10 | ファナック株式会社 | ターゲットマークを撮像するカメラを備えたロボットシステム |
JP2018161726A (ja) * | 2017-03-27 | 2018-10-18 | セイコーエプソン株式会社 | ロボット制御装置、ロボット、及びロボットシステム |
-
2019
- 2019-11-06 CN CN201911078444.6A patent/CN112775955B/zh active Active
-
2020
- 2020-11-06 US US17/091,345 patent/US11618169B2/en active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007090448A (ja) * | 2005-09-27 | 2007-04-12 | Honda Motor Co Ltd | 二次元コード検出装置及びそのプログラム、並びに、ロボット制御情報生成装置及びロボット |
CN103105186A (zh) * | 2011-11-14 | 2013-05-15 | 鸿富锦精密工业(深圳)有限公司 | 自动更换测针系统及方法 |
CN106826822A (zh) * | 2017-01-25 | 2017-06-13 | 南京阿凡达机器人科技有限公司 | 一种基于ros系统的视觉定位及机械臂抓取实现方法 |
JP2019076972A (ja) * | 2017-10-20 | 2019-05-23 | 株式会社安川電機 | 自動化装置 |
CN109909998A (zh) * | 2017-12-12 | 2019-06-21 | 北京猎户星空科技有限公司 | 一种控制机械臂运动的方法及装置 |
CN108340371A (zh) * | 2018-01-29 | 2018-07-31 | 珠海市俊凯机械科技有限公司 | 目标跟随点的定位方法以及系统 |
CN110355754A (zh) * | 2018-12-15 | 2019-10-22 | 深圳铭杰医疗科技有限公司 | 机器人手眼系统、控制方法、设备及存储介质 |
CN109784323A (zh) * | 2019-01-21 | 2019-05-21 | 北京旷视科技有限公司 | 图像识别的方法、装置、电子设备和计算机存储介质 |
CN109910010A (zh) * | 2019-03-23 | 2019-06-21 | 广东石油化工学院 | 一种高效控制机器人的系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
US20210129343A1 (en) | 2021-05-06 |
CN112775955A (zh) | 2021-05-11 |
US11618169B2 (en) | 2023-04-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113119099A (zh) | 计算机装置、控制机械手臂夹取和放置物件的方法 | |
CN109807885A (zh) | 一种机械手的视觉标定方法、装置及智能终端 | |
CN113696188B (zh) | 手眼标定数据采集方法、装置、电子设备及存储介质 | |
CN113524187B (zh) | 一种工件抓取顺序的确定方法、装置、计算机设备及介质 | |
CN112809668A (zh) | 一种机械臂自动手眼标定的方法及系统、终端 | |
CN111060118A (zh) | 场景地图建立方法、设备及存储介质 | |
CN112965592A (zh) | 设备交互方法、装置及系统 | |
CN113119103B (zh) | 确定标记物的深度标准值的方法、计算机装置 | |
CN112775955B (zh) | 机械手臂坐标确定方法、计算机装置 | |
TWI709468B (zh) | 機械手臂座標確定方法、電腦裝置 | |
CN107492124B (zh) | 鱼眼摄像头的平面标定装置 | |
CN109968237A (zh) | 空调器的安装定位方法及装置 | |
CN117213469A (zh) | 地铁站厅的同步定位与建图方法、系统、设备及存储介质 | |
CN116519597B (zh) | 一种多轴系统检测方法、装置、上位机、介质及系统 | |
CN112948927A (zh) | 建筑墙角判断方法、计算机装置及存储介质 | |
CN113628284B (zh) | 位姿标定数据集生成方法、装置、系统、电子设备及介质 | |
CN110842917B (zh) | 串并联机械的机械参数的标定方法、电子装置及存储介质 | |
CN117437256A (zh) | 工件轮廓的标注方法、装置、设备及存储介质 | |
CN112668084A (zh) | 模板编码方法、计算机装置及存储介质 | |
TW202127377A (zh) | 確定標記物的深度標準值的方法、電腦裝置 | |
TWI723715B (zh) | 電腦裝置、控制機械手臂夾取和放置物件的方法 | |
CN116423525B (zh) | 一种自动手眼标定方法及系统、存储介质 | |
CN118269109B (zh) | 一种基于多轴机械臂的洗涤设备精确组装方法及相关装置 | |
CN116117810B (zh) | 一种不同机器人之间数据转换后二次校准的方法及装置 | |
CN118555472A (zh) | 一种基于vb.net的相机运动状态监测评估方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |