CN103459102B - 机器人控制装置、机器人控制方法、程序和记录介质 - Google Patents

机器人控制装置、机器人控制方法、程序和记录介质 Download PDF

Info

Publication number
CN103459102B
CN103459102B CN201280017069.4A CN201280017069A CN103459102B CN 103459102 B CN103459102 B CN 103459102B CN 201280017069 A CN201280017069 A CN 201280017069A CN 103459102 B CN103459102 B CN 103459102B
Authority
CN
China
Prior art keywords
coordinate
coordinate system
workpiece
camera
impact point
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.)
Expired - Fee Related
Application number
CN201280017069.4A
Other languages
English (en)
Other versions
CN103459102A (zh
Inventor
根岸真人
铃木秀明
饭塚信辅
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Publication of CN103459102A publication Critical patent/CN103459102A/zh
Application granted granted Critical
Publication of CN103459102B publication Critical patent/CN103459102B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • B25J9/1607Calculation of inertia, jacobian matrixes and inverses
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1694Programme 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/1697Vision controlled systems
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39022Transform between measuring and manipulator coordinate system
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39063Quick calculation of coordinates by using precalculated, stored matrixes, inverses
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40082Docking, align object on end effector with target
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40609Camera to monitor end effector as well as object to be handled
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01RELECTRICALLY-CONDUCTIVE CONNECTIONS; STRUCTURAL ASSOCIATIONS OF A PLURALITY OF MUTUALLY-INSULATED ELECTRICAL CONNECTING ELEMENTS; COUPLING DEVICES; CURRENT COLLECTORS
    • H01R43/00Apparatus or processes specially adapted for manufacturing, assembling, maintaining, or repairing of line connectors or current collectors or for joining electric conductors
    • H01R43/26Apparatus or processes specially adapted for manufacturing, assembling, maintaining, or repairing of line connectors or current collectors or for joining electric conductors for engaging or disengaging the two parts of a coupling device

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Automation & Control Theory (AREA)
  • Manipulator (AREA)
  • Automatic Assembly (AREA)
  • Numerical Control (AREA)

Abstract

计算照相机坐标系中的手部单元的第一坐标系CA、第一工件的第二坐标系CB以及第二工件的第三坐标系CC(S2、S3和S4)。计算第一和第二坐标变换矩阵ATBATC(S5和S6)。在第一工件的坐标系中设定目标点的坐标数据(S7)。在第二工件的坐标系中设定指令点的坐标数据(S8)。使用第一坐标变换矩阵ATB对目标点的坐标数据进行坐标变换(S9)。使用第二坐标变换矩阵ATC对指定点的坐标数据进行坐标变换(S10)。使用转换后的坐标数据生成操作指令(S11)。

Description

机器人控制装置、机器人控制方法、程序和记录介质
技术领域
本发明涉及能够将被机器人抓住的物体附接到另一物体的机器人控制装置、机器人控制方法、程序和记录介质。
背景技术
通常已经使用如下这样的机器人,该机器人包括机器人体部,该机器人体部具有包括多个铰链部件的多关节臂部单元和设置在该臂部单元端部的手部单元,该机器人使用手部单元抓住用作第一工件的物体,并且将抓住的物体附接到用作第二工件的另一物体。
此外,已经使用了包括立体方法的使用照相机测量位置的各种技术,并且通过这样的技术可测量通过照相机捕获的图像中包含的物体的特征点的3D位置。此外,可通过测量物体的多个特征点来测量物体的位置和取向。而且,作为照相机的替代组合地使用光发射机和光接收机来测量位置的各种技术已被使用。
通常,已经使用如下这样的机构,该机构被配置为使得用于捕获被抓住物体以及另一物体的图像以测量被抓住物体以及另一物体的位置和取向的照相机被固定于照相机安装台架,该照相机安装台架被设置在操作位置上方,在该操作位置,通过机器人体部使被抓住物体附接到另一物体(PTL1)。此外,固定于照相机体部的手部单元的照相机已被使用(PTL2)。
这里,如果手部单元以不同的次数抓住物体的不同位置,难以准确地将被抓住物体附接到另一物体。因此,被抓住物体和另一物体的位置和取向的测量结果应被反馈,使得用于指定机器人体部的轨迹的操作指令被生成。
这里,被抓住物体和另一物体的位置和取向由照相机基于照相机坐标系计算,然而被生成用于在预定轨迹中操作机器人体部的操作指令是基于机器人坐标系的。因此,应获得用于将照相机坐标系中的代表所测量的位置和取向的坐标数据转换至机器人坐标系中的坐标数据的坐标变换矩阵。
因此,通常,由于估计固定于照相机安装台架的照相机的在照相机坐标系中的位置和取向相对于机器人坐标系是恒定的,已经使用了包含预设恒定值的坐标变换矩阵。
此外,当照相机被固定于手部单元时,照相机坐标系中的位置和取向响应于机器人体部的操作而相对于机器人坐标系被改变。因此,相对于机器人坐标系的照相机坐标系中的位置和取向可根据手部的端部的位置和取向被估计,其中该手部的端部的位置和取向根据正向动力学使用机器人体部的关节角度被获得。坐标变换矩阵通常根据如上所述被估计的照相机坐标系和机器人坐标系之间的关系被计算。
引文列表
专利文献
PTL1:日本专利特开No.5-108126
PTL2:日本专利特开No.8-174457
发明内容
技术问题
近年来,已经非常需要由机器人体部执行的更加准确的组装操作。例如,已经需要由机器人体部执行的将设置在柔性线缆的末端的连接器连接到电子装置的连接器的操作。
但是,通常,认为照相机相对于诸如照相机安装台架或手部单元的固定物的位置是固定的,即,相对于机器人坐标系的照相机坐标系被预先获得或者可被导出。因此,照相机坐标系中的位置和取向的偏移没有被想到。
但是,从实际观点看,照相机坐标系中的位置和取向由于各种原因而改变。例如,照相机安装台架可根据机器人的操作而摇动,并且安装位置可由于环境温度的改变或者照相机温度的改变而偏移。类似地,当照相机固定于手部单元时,照相机的位置可相对于手部单元偏移。具体而言,从实际观点看,照相机的位置偏移,因此难以基于机器人坐标系准确地指定照相机坐标系中的位置和取向。此外,由于组装位置由于照相机位置的偏移而偏移,因而难以执行准确的组装操作。
实际上,当要由手部单元抓住的物体不是刚性体而是柔性体(柔软体)时,要被抓住的物体的位置和取向根据手部单元的取向或被抓住位置而显著改变。因此,被转换成机器人坐标系中的坐标数据的被抓住物体的位置和取向的坐标数据的准确度尤其重要。但是,当照相机的位置改变时,所计算的机器人坐标系中的坐标数据的准确度劣化。因此,难以执行准确的组装操作,并且当被抓住物体是柔性体时尤其困难。
因此,本发明提出了一种机器人控制装置、机器人控制方法、程序和记录介质,该机器人控制装置能够执行控制以使得即使当照相机偏移时仍不需要照相机坐标系和机器人坐标系之间的坐标数据的校正,并且即使当被手部单元抓住的第一工件中的位置偏移或者第一工件变形时仍执行准确的组装。
对于问题的解决方案
根据本发明的一个实施例,提供了一种控制机器人体部的机器人控制装置,该机器人体部包括具有相互耦接的多个链接部件的臂部单元以及设置在臂部单元的端部处的手部单元,该手部单元抓住第一工件并且使所抓住的第一工件附接到第二工件。该机器人控制装置包括照相机,被配置为输出通过捕获机器人体部、第一工件和第二工件的图像而获得的图像数据;第一坐标系计算单元,被配置为从图像数据计算代表在照相机的照相机坐标系中的手部单元的位置和取向的第一坐标系;第二坐标系计算单元,被配置为从图像数据计算代表在照相机的照相机坐标系中的第一工件的位置和取向的第二坐标系;第三坐标系计算单元,被配置为从图像数据计算代表在照相机的照相机坐标系中的第二工件的位置和取向的第三坐标系;第一坐标变换矩阵计算单元,被配置为计算用于将第二坐标系转变至第一坐标系的第一坐标变换矩阵;第二坐标变换矩阵计算单元,被配置为计算用于将第三坐标系转变至第一坐标系的第二坐标变换矩阵;目标点设定单元,被配置为在第一工件的坐标系中设定相对于第一工件具有恒定的位置和取向的目标点的坐标数据;指令点设定单元,被配置为在第二工件的坐标系中设定允许目标点以相对于第二工件恒定的位置和取向通过的指令点的坐标数据;第一坐标变换单元,被配置为使用第一坐标变换矩阵对通过目标点设定单元设定的目标点的坐标数据执行坐标变换;第二坐标变换单元,被配置为使用第二坐标变换矩阵对通过指令点设定单元设定的指令点的坐标数据执行坐标变换;操作指令生成单元,被配置为生成用于操作机器人体部以使得机器人体部遵循轨迹的操作指令,该轨迹被获得为使得已经受第一坐标变换单元执行的坐标变换的目标点的坐标数据通过已经受由第二坐标变换单元进行的坐标变换的指令点的坐标数据的位置;以及操作指令输出单元,被配置为将通过操作指令生成单元生成的操作指令输出至机器人体部。
根据本发明的另一实施例,提供了一种用于控制机器人体部的机器人控制方法,该机器人体部包括具有相互耦接的多个链接部件的臂部单元以及设置在臂部单元的端部处的手部单元,该手部单元抓住第一工件并且使所抓住的第一工件附接到第二工件。该机器人控制方法包括图像捕获步骤,用于通过使用照相机捕获机器人体部、第一工件和第二工件的图像而获得图像数据;第一坐标系计算步骤,用于从图像数据计算代表在照相机的照相机坐标系中的手部单元的位置和取向的第一坐标系;第二坐标系计算步骤,用于从图像数据计算代表在照相机的照相机坐标系中的第一工件的位置和取向的第二坐标系;第三坐标系计算步骤,用于从图像数据计算代表在照相机的照相机坐标系中的第二工件的位置和取向的第三坐标系;第一坐标变换矩阵计算步骤,用于计算用于将第二坐标系转变至第一坐标系的第一坐标变换矩阵;第二坐标变换矩阵计算步骤,用于计算用于将第三坐标系转变至第一坐标系的第二坐标变换矩阵;目标点设定步骤,用于在第一工件的坐标系中设定相对于第一工件具有恒定的位置和取向的目标点的坐标数据;指令点设定步骤,用于在第二工件的坐标系中设定允许目标点以相对于第二工件恒定的位置和取向通过的指令点的坐标数据;第一坐标变换步骤,用于使用第一坐标变换矩阵对在目标点设定步骤中设定的目标点的坐标数据执行坐标变换;第二坐标变换步骤,用于使用第二坐标变换矩阵对在指令点设定步骤中设定的指令点的坐标数据执行坐标变换;操作指令生成步骤,用于生成用于操作机器人体部以使得机器人体部遵循轨迹的操作指令,该轨迹被获得为使得已经受第一坐标变换步骤中执行的坐标变换的目标点的坐标数据通过已经受第二坐标变换步骤中进行的坐标变换的指令点的坐标数据的位置;以及操作指令输出步骤,用于将通过操作指令生成步骤中生成的操作指令输出至机器人体部。
根据本发明的还另一实施例,提供了一种使得控制机器人体部的计算机执行以下步骤的程序,该机器人体部包括具有相互耦接的多个链接部件的臂部单元以及设置在臂部单元的端部处的手部单元,该手部单元抓住第一工件并且使所抓住的第一工件附接到第二工件:图像捕获步骤,用于通过使用照相机捕获机器人体部、第一工件和第二工件的图像而获得图像数据;第一坐标系计算步骤,用于从图像数据计算代表在照相机的照相机坐标系中的手部单元的位置和取向的第一坐标系;第二坐标系计算步骤,用于从图像数据计算代表在照相机的照相机坐标系中的第一工件的位置和取向的第二坐标系;第三坐标系计算步骤,用于从图像数据计算代表在照相机的照相机坐标系中的第二工件的位置和取向的第三坐标系;第一坐标变换矩阵计算步骤,用于计算用于将第二坐标系转变至第一坐标系的第一坐标变换矩阵;第二坐标变换矩阵计算步骤,用于计算用于将第三坐标系转变至第一坐标系的第二坐标变换矩阵;目标点设定步骤,用于在第一工件的坐标系中设定相对于第一工件具有恒定的位置和取向的目标点的坐标数据;指令点设定步骤,用于在第二工件的坐标系中设定允许目标点以相对于第二工件恒定的位置和取向通过的指令点的坐标数据;第一坐标变换步骤,用于使用第一坐标变换矩阵对在目标点设定步骤中设定的目标点的坐标数据执行坐标变换;第二坐标变换步骤,用于使用第二坐标变换矩阵对在指令点设定步骤中设定的指令点的坐标数据执行坐标变换;操作指令生成步骤,用于生成用于操作机器人体部以使得机器人体部遵循轨迹的操作指令,该轨迹被获得为使得已经受第一坐标变换步骤中执行的坐标变换的目标点的坐标数据通过已经受第二坐标变换步骤中进行的坐标变换的指令点的坐标数据的位置;以及操作指令输出步骤,用于将在操作指令生成步骤中生成的操作指令输出至机器人体部。
根据本发明的还另一实施例,提供了一种作为存储该程序的计算机可读记录介质的记录介质。
本发明的有利效果
因此,即使当被手部单元抓住的第一工件的位置偏移或者第一工件变形时仍实现准确的组装。此外,即使当照相机的位置偏移时,仍实现准确的组装。
附图说明
图1是示意性地示出根据本发明的第一实施例的机器人的配置的示图。
图2是示出根据本发明的第一实施例的机器人控制器的功能框图。
图3是示出根据本发明的第一实施例的机器人控制装置的操作的流程图。
图4是示出图像数据中的连接器的示图。
图5是示出根据本发明的第一实施例的机器人所获得的第一工件的轨迹的示图。
图6是示出根据本发明的第二实施例的机器人所获得的第一工件的轨迹的示图。
图7是示意性地示出根据本发明的第三实施例的机器人的配置的示图。
图8是示出根据本发明的第四实施例的机器人所执行的使得长的第一工件通过在第二工件中形成的通孔的操作的示图
图9是示出根据本发明的第四实施例的机器人控制装置的操作的流程图。
图10是示意性地示出根据本发明的第五实施例的机器人的配置的示图。
具体实施方式
以后将参照附图描述本发明的实施例。
第一实施例
图1是示意性地示出根据本发明的第一实施例的机器人的配置的示图。机器人100包括机器人体部101和控制该机器人体部101的机器人控制装置102。
机器人体部101包括多关节臂部单元6以及设置在该臂部单元6的端部处的手部单元1,该臂部单元6包含多个链接部件6a至6f。臂部单元6包含串联地相互耦接的链接单元6a至6f并且可在关节部处摆动或旋转。
在链接部件6a至6f之中,设置在臂部单元6的近端部(一个端部)的链接部件6a固定于基部5的固定表面(上表面)。此外,手部单元1附接到链接部件6a至6f之中的设置在臂部单元6的远端部(另一个端部)的链接部件6f。此实施例的手部单元1包含一对手指1a和1b,并且可通过打开和闭合该对手指1a和1b来抓住物体或松开物体。此外,机器人体部101具有多个驱动单元7a至7f,该多个驱动单元7a至7f驱动链接部件6a至6f以及手部单元1,使得链接部件6a至6f和手部单元1旋转或摆动。驱动单元7a至7f例如为电动机。
在此实施例中,将描述要被手部单元1抓住的物体(第一工件)为柔性线缆2的情况,其中,该柔性线缆2在其端部处包含连接器2a。此外,将描述该柔性线缆2的连接器2a附接到作为另一物体(第二工件)的连接器3a的情况。连接器3a是固定于基部5的固定表面的电子装置3的一部分。
机器人控制装置102包括照相机4和机器人控制器(下文被简称为“控制器”)10,其获得从照相机4输出的图像数据,计算坐标变换矩阵,并且控制机器人体部101(驱动单元)。应指出,照相机4是所谓的数字静物照相机,并且可被认为是视觉传感器或视觉。但是,在此实施例中,照相机4被认为是包含数字静物照相机、视觉传感器和视觉的含义的“照相机”。在照相机4可捕获机器人体部101(尤其是手部单元1)、线缆2(尤其是连接器2a)和连接器3a的图像的位置(即,在机器人体部101、柔性线缆2和连接器3a被包含在单个图像中的位置),例如位于基部5正上方的位置,照相机4固定于未示出的照相机安装台架。
控制器10包含用作计算机的CPU10a、ROM10b和RAM10c。ROM10b存储由CPU10a使用以控制整个机器人100的程序以及机器人语言所描述的多个命令。该命令被用于操作机器人体部101并且基于机器人体部101的坐标系(机器人坐标系)被描述。RAM10c是临时存储数据的存储器等。
图2是示出控制器10的功能框图。控制器10包含第一至第三坐标系计算单元11至13以及第一和第二坐标变换矩阵计算单元14和15。控制器10进一步包括目标点设定单元16、指令点设定单元17、第一和第二坐标变换单元18和19、操作指令生成单元20和操作指令输出单元21。具体而言,CPU10a通过读取并执行ROM10b中记录的程序来用作第一坐标系计算单元11至操作指令输出单元21。应指出,尽管如图1所示控制器10包括单个CPU10a,但是本发明不限于此,并且控制器10可包含多个CPU,该多个CPU共享第一坐标系计算单元11至操作指令输出单元21的功能。当控制器10包括两个CPU时,例如,一个CPU可用作第一坐标系计算单元11至第二坐标变换单元19,并且另一个CPU可用作操作指令生成单元20和操作指令输出单元21。
下文,将参照图3所示的操作流程图描述机器人控制装置102的操作。首先,CPU10a操作照相机4并且使得照相机4捕获机器人体部101(尤其是手部单元1)、线缆2和连接器3a的图像。在由通过此捕获操作所获得的图像数据所表示的图像中,机器人体部101(尤其是手部单元1)、线缆2和连接器3a被捕获。然后,照相机4输出作为图像捕获的结果而获得的图像数据,并且CPU10a获得从照相机4输出的图像数据(在步骤S1:图像捕获过程中)。应指出,图像捕获紧接在手部单元1抓住线缆2之后执行。
接下来,第一坐标系计算单元11从通过照相机4获得的图像数据计算固定于手部单元1的第一坐标系CA(在步骤S2:第一坐标系计算过程中)。此外,第二坐标系计算单元12从通过照相机4获得的图像数据计算固定于连接器2a的第二坐标系CB(在步骤S3:第二坐标系计算过程中)。此外,第三坐标系计算单元13从通过照相机4获得的图像数据计算固定于连接器3a的第三坐标系CC(在步骤S4:第三坐标系计算过程中)。应指出,步骤S2至S4中的操作的顺序不限于此,并且步骤S2至S4中的操作中的任一个可被首先执行。
步骤S2至S4中获得的第一坐标系CA、第二坐标系CB和第三坐标系CC是基于照相机4的照相机坐标系的相对坐标系,并且分别代表照相机坐标系中的手部单元1、线缆2(连接器2a)和连接器3a的位置和取向。
下文,将参照具体示例描述获得第三坐标系CC的操作。应指出,将仅仅描述第三坐标系CC,这是因为第一坐标系CA和第二坐标系CB可被类似地获得。图4是示出图像数据中的连接器3a的示图。首先,第三坐标系计算单元13测量连接器3a的多个特征点,即对应于来自通过照相机4获得的图像数据的立方体的三个顶点(特征点)的3D坐标位置P0、P1和P2。此操作由普通图像处理执行。
接下来,包含这三个特征点的坐标位置P0、P1和P2的平面的法线方向被确定为Z轴。Z轴的方向对应于右旋螺钉当沿从坐标位置P0通过坐标位置P1到坐标位置P2的方向旋转时沿其所前进的方向。接下来,通过两个特征点(即,坐标位置P0和P2)的轴被确定为X轴,并且X轴从坐标点P0指向坐标点P2。接下来,与X轴和Z轴正交的轴被确定为Y轴。坐标线P0被确定为原点。
这样,获得第三坐标CC。具体而言,第三坐标系CC由如表达式(1)所示的四行四列的矩阵表示。
[数学式1]
C C = x 0 x 1 x 2 x y 0 y 1 y 2 y z 0 z 1 z 2 z 0 0 0 1 - - - ( 1 )
这里,“(x0,y0,z0)”指示照相机坐标系中的X轴方向上的单位向量,“(x1,y1,z1)”指示照相机坐标系中的Y轴方向上的单位向量,并且“(x2,y2,z2)”指示照相机坐标系中的Z轴方向上的单位向量。此外,“(x,y,z)”指示原点。
对于其它坐标系CA和CB也是如此。具体而言,三个坐标系CA、CB、CC从总共9个(3*3)测量点获得。
接下来,第一坐标变换矩阵计算单元14计算第一坐标变换矩阵ATB,其代表相对于第一坐标系CA的第二坐标系CB中的位置和取向(在步骤S5:第一坐标变换矩阵计算过程中)。此外,第二坐标变换矩阵计算单元15计算第二坐标变换矩阵ATC,其代表相对于第一坐标系CA的第三坐标系CC中的位置和取向(在步骤S6:第二坐标变换矩阵计算过程中)。应指出,步骤S5和S6中的操作的顺序不限于此,并且步骤S5和S6中的操作中的任一个可首先被执行。
这里,第一坐标变换矩阵ATB代表相对于第一坐标系CA的第二坐标系CB中的位置和取向,而第二坐标变换矩阵ATC代表相对于第一坐标系CA的第三坐标系CC中的位置和取向。具体而言,第一坐标变换矩阵ATB可将代表第二坐标系CB中的位置和取向的坐标数据转换成代表第一坐标系CA中的位置和取向的坐标数据。类似地,第二坐标变换矩阵ATC可将代表第三坐标系CC中的位置和取向的坐标数据转变成代表第一坐标系CA中的位置和取向的坐标数据。
这三个坐标系CA、CB和CC之间的相对位置和取向(即,坐标信息)可根据机器人工程学中经常使用的四行和四列的坐标变换矩阵由以下的表达式(2)表示。
[数学式2]
C B = C A T B A C C = C A T C A - - - ( 2 )
使用照相机4获得坐标系CA、CB和CC之间的相对位置和取向与获得两个坐标变换矩阵ATBATC相同。代表相对位置的这两个坐标变换矩阵ATBATC是从通过变更表达式(2)而获得的以下的表达式(3)获得的。此坐标变换矩阵包含四行和四列。
[数学式3]
T B A = inv ( C A ) C B T C A = inv ( C A ) C C - - - ( 3 )
这里,“inv()”代表逆矩阵。应指出,第三坐标系CC和代表相对于第二坐标系CB的第三坐标系CC中的位置和取向的第三坐标变换矩阵BTC由以下的表达式(4)表示。
[数学式4]
C C = C B T C B T C B = inv ( C B ) C C - - - ( 4 )
因此,尽管第二坐标变换矩阵ATC可根据以下表达式(5)获得,但是计算结果与表达式(3)的计算结果相同。
[表达式5]
ATC=ATB BTC(5)
此时,可通过使用如图1所示的固定于线缆2的连接器2a的目标点8和固定于连接器3a的指令点9生成机器人体部101的运动。作为简单的用于生成轨迹的方法,目标点9遵循指令点9以使得这些点被连接。
因此,首先,目标点设定单元16在线缆2的坐标系中设定相对于线缆2具有固定位置和取向的目标点8的坐标数据BPt(在步骤S7:目标点设定过程中)。应指出,线缆2的坐标系是基于机器人体部101的坐标系(机器人坐标系)的相对坐标系。尽管相对于机器人坐标系的线缆2的坐标系(矩阵)没有被获得,但是线缆2的坐标系中的目标点8的坐标数据BPt被设定为固定值,而不管线缆2的位置和取向如何。
此外,指令点设定单元17在连接器3a的坐标系中设定用于使得目标点8以相对于连接器3a固定的位置和取向通过的指令点9的坐标数据CPn1CPn2(在步骤S8:指令点设定过程中)。在此实施例中,指令点9的多个坐标数据(两个坐标数据)被设定。这里,连接器3a的坐标系是基于机器人坐标系的相对坐标系。尽管相对于机器人坐标系的连接器3a的坐标系(矩阵)还没有被获得,但是在连接器3a的坐标系中的指令点9的坐标数据CPn1CPn2被设定为固定值,而不管连接器3a的位置和取向如何。在图1中,设定多个指令点9,该多个指令点9指令执行一系列移动直至连接器2a连接到连接器3a。
目标点8的坐标数据BPt以及指令点9的坐标数据CPn1CPn2被存储在ROM10b中作为使用机器人语言描述的命令。在步骤S7和S8中,CPU10a从ROM10b读取该命令并解译该命令,以便将该命令作为坐标数据BPt、坐标数据CPn1和坐标数据CPn2存储在RAM10c中。
应指出,步骤S7和S8中的操作的顺序不限于此,并且步骤S7和S8中的操作的任一个可被首先执行。此外,步骤S7和S8中的操作可在步骤S6中的操作之前执行。
这里,尽管在步骤S5中基于照相机坐标系计算第一坐标变换矩阵ATB,但是照相机坐标系中的相对于手部单元1的坐标系的线缆2的坐标系中的相对位置和取向与机器人坐标系中的相同。类似地,尽管在步骤S6中基于照相机坐标系计算第二坐标变换矩阵ATC,但是照相机坐标系中的相对于手部单元1的坐标系的连接器3a的坐标系中的相对位置和取向与机器人坐标系中的相同。
因此,第一坐标变换单元18使用第一坐标变换矩阵ATB对于通过目标点设定单元16设定的目标点8的坐标数据BPt执行坐标变换,以便获得坐标数据Apt(在步骤S9:第一坐标变换过程中)。具体而言,第一坐标变换单元18根据以下表达式(6)获得坐标数据Apt
[数学式6]
AP1=ATB BP1(6)
由此,目标点8的坐标数据被从线缆2的坐标系中转换至手部单元1的坐标系中。在此情况下,RAM10c中存储的坐标数据BPt被坐标数据APt替代。这里,手部单元1的坐标系是基于机器人坐标系的相对坐标系。
此外,第二坐标变换单元19使用第二坐标变换矩阵ATC对于通过指令点设定单元17设定的指令点9的坐标数据CPn1和坐标数据CPn2执行坐标变换,以便获得坐标数据APn1以及坐标数据APn2(在步骤S10:第二坐标变换过程中)。具体而言,第二坐标变换单元18根据以下表达式(7)计算坐标数据APn(坐标数据APn1以及坐标数据APn2)。
[数学式7]
APn=ATC CPn(ATB BTC CPn)(7)
由此,目标点9的坐标数据被从连接器3a的坐标系中转变至手部单元1的坐标系中。在此情况下,RAM10c中存储的坐标数据CPn1和坐标数据CPn2被坐标数据APn1以及坐标数据APn2替代。
接下来,操作指令生成单元20生成如图5所示的轨迹O1,使得在坐标数据APt遵循轨迹O1的同时,通过由第一坐标变换单元18执行坐标变换而获得的目标点8的坐标数据APt与通过由第二坐标变换单元19执行坐标变换而获得的指令点9的坐标数据APn1以及坐标数据APn2重叠。具体而言,CPU10a使用存储在RAM10c中的坐标数据APt、坐标数据APn1以及坐标数据APn2来计算轨迹O1。应指出,尽管用于生成轨迹O1的方法的示例包括线性插值方法、样条插值方法、圆弧插值方法,但是该方法不特别局限于此。操作指令生成单元20使用轨迹O1计算手部单元1的轨迹,并且根据逆向运动学来计算手部单元1和链接部件6a至6f的关节角度。应指出,手部单元1的轨迹基于如下假设被计算,即线缆2的相对于手部单元1的位置和取向没有改变。然后,操作指令生成单元20生成如下的操作指令,该操作指令用于操作机器人体部101的驱动单元7a至7f以使得链接部件6a至6f和手部单元1具有所获得的关节角度(在步骤S11:操作指令生成过程中)。此操作指令代表手部单元1和链接部件6a至6f的关节角度。在此实施例中,基于相对于手部单元1的坐标系的线缆2的坐标系没有改变的假设,同时生成从要被发出以用于使用手部单元1抓住线缆2的指令到要被发出以用于将连接器2a连接到连接器3a的指令的一系列操作指令。
此后,操作指令输出单元21将通过操作指令生成单元20生成的操作指令输出至机器人体部101的驱动单元7a至7f(在步骤S12:操作指令输出过程中)。已经接收到该指令的驱动单元7a至7f根据该指令使链接部件6a至6f和手部单元1摆动或者旋转。
通过执行如上所述的步骤S1至S12中的操作,机器人体部101的手部单元1抓住的线缆2的连接器2a可附接到连接器3a,并且可实现准确的组装。
具体而言,即使当手部单元1抓住的线缆2的一部分偏移,所获得的第二坐标系CB通过计算被改变,并且第二坐标系CB的改变影响第一坐标变换矩阵ATB,并且进一步影响目标点8的坐标数据APt。具体而言,手部单元1抓住的线缆2的位置的偏移影响机器人体部101的操作,并且机器人体部101的轨迹被校正。此外,即使当连接器3a的位置偏移时,通过计算所获得的第三坐标系CC改变,并且第三坐标系CC的改变影响第二坐标变换矩阵ATC,并且进一步影响指令点9的坐标数据APn1和坐标数据APn2。具体而言,连接器3a的位置的偏移影响机器人体部101的操作,并且机器人体部101的轨迹被校正。由此,机器人体部101可被以高准确度操作,并且实现了准确组装。
此外,即使当要被抓住的线缆2是柔性体并且线缆2变形时,仍实现准确组装,这是因为当线缆2变形时第二坐标系CB改变。
此外,在此实施例中,获得在照相机坐标系中的手部单元1和线缆2之间的以及手部单元1和连接器3a之间的相对坐标变换矩阵ATBATC。然后,使用坐标变换矩阵ATBATC,将基于机器人坐标系的线缆2的坐标系中的目标点8的坐标数据以及连接器3a的坐标系中的指令点9的坐标数据转换成手部单元1的坐标系中的那些坐标数据。由于根据坐标数据APt、坐标数据APn1和坐标数据APn2生成操作指令,因此最终生成的操作指令不受照相机4的位置和取向影响。具体而言,由于用于将照相机坐标系转变至机器人坐标系的坐标变换矩阵没有被使用,即使当照相机4偏移时,该偏移仍不影响最终生成的操作指令。因此,在没有准确测量和校正照相机4的位置和取向的情况下仍实现准确组装。
这里,当在手部单元1移动时线缆2的相对于手部单元1的位置可能偏移时,此例程可执行多次。具体而言,从使用手部单元1抓住线缆2的操作到将连接器2a连接至连接器3a的操作的过程没有全部执行,而是以分割开的方式依次执行。在此情况中,从步骤S1至步骤S12的过程被执行与分割次数对应的多次。因此,即使当用作被抓紧物体的线缆2(即第一工件)变形时,仍实现准确的组装。
第二实施例
接下来,将描述根据本发明的第二实施例的机器人。图6是示出根据本发明的第二实施例的机器人所获得的第一工件的轨迹的示图。应指出,根据第二实施例的机器人的配置与第一实施例的相同,因此对于描述使用相同的附图标记。但是,机器人体部101的操作、即ROM106中存储的程序与第一实施例的不同。
在第一实施例中,已经描述了设定单个目标点8和多个指令点9的情况。此外,操作指令(即,机器人体部101的轨迹)被设定为使得目标点8通过指令点9。在第二实施例中,设定多个目标点8和单个指令点9。还在此情况中,CPU10a执行与由图3所示的第一实施例的流程图所表示的过程基本相同的过程。但是,在步骤S7中设定多个目标点8,并且目标点8的坐标数据由“BPt1”和“BPt2”指示。在步骤S9中,目标点8的坐标数据BPt1和坐标数据BPt2被转换成坐标数据APt1和坐标数据APt2。此外,在步骤S8中,设定单个指令点9,并且其坐标数据由“CPn”指示。在步骤S10中,坐标数据CPn被转换成坐标数据APn
此后,在步骤S11中,CPU10a生成如图6所示的轨迹O2,使得目标点8中的每一个通过对应于坐标数据APn的指令点9。CPU10a使用轨迹O2计算手部单元1的轨迹,并且根据逆向运动学计算手部单元1和链接部件6a至6f的角度。然后,CPU10a生成操作指令,该操作指令用于操作机器人体部101的驱动单元7a至7f以便链接部件6a至6f和手部单元1具有所获得的角度。
如上所述,即使当设定目标点8的多个坐标数据以及设定指令点9的单个坐标数据时,仍以类似的方式生成轨迹O2和操作指令。因此,可取得与第一实施例相同的效果。应指出,即使在单个目标点8和单个指令点9被设定的情况以及多个目标点8和多个目标点9被设定的情况中,仍取得相同的效果。
第三实施例
接下来,将描述根据本发明的第三实施例的机器人。图7是示意性地示出根据本发明的第三实施例的机器人100B的配置的示图。尽管已经在第一实施例中描述了照相机4固定于未示出的照相机安装台架的情况,但是在第三实施例中,照相机4固定于手部单元1。即使当照相机4因此固定于手部单元1时,手部单元1的坐标系中的目标点8和指令点9的坐标数据仍被通过使用坐标变换矩阵ATBATC通过坐标变换来计算,而不管照相机4的位置和取向如何,并且根据计算结果生成操作指令。具体而言,操作指令是根据通过使用相对坐标变换矩阵ATBATC通过坐标变换获得的目标点8和指令点9的坐标数据来生成的,而不使用用于将照相机坐标系转变至机器人坐标系的变换矩阵。因此,由于可在不获得相对于机器人坐标系的照相机坐标系中的位置和取向的情况下生成操作指令,因此不管照相机4的位置如何,即使当照相机4被固定于手部单元1时,仍可取得与第一实施例相同的效果。
第四实施例
接下来,将描述根据本发明的第四实施例的机器人。图8是示出使得长的第一工件通过第二工件中形成的通孔的操作的示图,并且图9是示出根据本发明的第四实施例的机器人的机器人控制装置的操作的操作流程图。应指出,与第一实施例的组件和操作相同的组件和操作被用与第一实施例相同的附图标记指示。
用作第一工件的被抓住物体2A是长的柔性体。用作第二工件的物体3A具有通孔3b,被抓住物体2A***该通孔3b。根据第四实施例的机器人执行将被手部单元1抓住的被抓住物体2A***物体3A的通孔3b的操作。
第四实施例与前述实施例的不同之处在于对于被抓住物体2A固定的坐标系和目标点8的坐标数据BPt的多个对被设定。在图8中,示出三对。具体而言,在图8中,对于被抓住物体2A固定的坐标系由“CB1”、“CB2”和“CB3”指示,并且所设定的目标点8的坐标数据由“B1Pt”、“B2Pt”和“B3Pt”指示。首先,用作目标点设定单元的CPU10a设定在被抓住物体2A的不同特征点中被规定的坐标系CB1、CB2和CB3中的多个目标点81、82和83的坐标数据B1Pt、坐标数据B2Pt和坐标数据B3Pt”(在步骤S21中)。在作为目标点设定过程的步骤S21中,沿被抓住物体2A的纵向方向设定目标点81、82和83。步骤S21中的操作被在执行步骤S3之前执行,步骤S3是第二坐标系计算过程。
此外,用作指令点设定单元的CPU10a在物体3A的坐标系中设定指令点9的坐标数据CPn1和坐标数据CPn2(步骤S22中)。
接下来,CPU10a依次选择坐标系CB1和坐标数据B1Pt的对、坐标系CB2和坐标数据B2Pt的对以及坐标系CB3和坐标数据B3Pt的对之一(在步骤S23:选择过程中)。具体而言,CPU10a选择还没有通过指令点的目标点81、82和83中的一个(在图8中距指令点最近的目标点81)。由于CPU10a是类似于带的长的柔性体,首先选择目标点81的坐标系CB1和坐标数据B1Pt的对。随后,依次选择目标点82的坐标系CB2和坐标数据B2Pt的对,以及目标点83的坐标系CB3和坐标数据B3Pt的对。
尽管在步骤S1至步骤S12中执行与第一实施例相同的过程,但是在步骤S3中,计算所选择的对的第二坐标系CB。具体而言,在步骤S3中,CPU10a从图像数据提取规定在步骤S23中选择的与目标点81对应的坐标系CB1的特征点,并且从所提取的特征点计算第二坐标系CB
然后,在步骤S9中,CPU10a使用第一坐标变换矩阵ATB对在步骤S23中从在步骤S21中设定的目标点81、82和83选择的目标点的坐标数据执行坐标变换。例如,CPU10a执行对所选择的对的目标点81的坐标数据B1Pt执行坐标变换以便获得坐标数据A1Pt
在步骤S11中,使用目标点8和指令点9计算机器人体部101的轨迹(即,操作指令),并且在步骤S12中,机器人体部101根据操作指令进行操作。作为结果,使得为带形的被抓住物体2A通过物体3A的通孔的操作的一部分被实现。
随后,CPU10a确定是否坐标系CB和目标点8的所有的对已被处理(在步骤S24:确定过程中)。当在步骤S24中确定为否定的时,过程返回步骤S1并且过程继续。具体而言,CPU10a实行再次执行从步骤S1到步骤S12的过程的再执行过程。
在再执行过程中,如果CPU10a在以前执行的步骤S23中已经选择了坐标系CB1和坐标数据B1Pt的对,则CPU10a在当前执行的步骤S23中选择坐标系CB2和坐标数据B2Pt的对。如果CPU10a在以前执行的步骤S23中已经选择了坐标系CB2和坐标数据B2Pt的对,则CPU10a在当前执行的步骤S23中选择坐标系CB3和坐标数据B3Pt的对。通过处理所有的对,取得与第一实施例相同的效果,并且可实现使得具有带形的被抓住物体2A通过物体3A的通孔3b的全部操作。
第五实施例
接下来,将描述根据本发明的第五实施例。图10是示意性地示出根据本发明的第五实施例的机器人100D的配置的示图。应指出,在图10中,与第一实施例的组件相同的组件被用与第一实施例的附图标记相同的附图标记指示。
第五实施例与第一实施例的不同之处在于被设置用于生成机器人体部101的操作指令的坐标系的位置。当使用高精度机器人时,用于机器人体部101的操作指令的坐标系不需要固定于手部单元1。
在第五实施例中,如图10所示,三个位置标记31被标记在基部5上作为基部特征点。位置标记31与机器人体部101的附接位置之间的相对位置被预先测量,即被预先获得。
尽管机器人控制装置102的操作与第一实施例的操作基本相同并且在第五实施例中执行与如图3所示的操作相同的操作,但是在步骤S1中要捕获的物体以及在步骤S2中执行的计算第一坐标系CA的过程与第一实施例中的那些不同。
在第五实施例中,在步骤S1中,CPU10a使用照相机4捕获位置标记31、线缆2和连接器3a以便获得图像数据。机器人体部10(或其附接位置)与基部5上的位置标记31之间的相对位置关系被预先获得。
在步骤S2中,首先,CPU10a通过从图像捕获所获得的图像数据提取位置标记31来计算代表在照相机4的照相机坐标系中的基部5的位置和取向的基部坐标系CD。用于从三个位置标记31获得基部坐标系CD的方法与在第一实施例中参照图4描述的方法相同。应指出,位置标记31优选地为黑色卵形,从而有助于图像数据的分析。在获得基部坐标系CD之后,CPU10a根据正向运动学从基部坐标系CD计算代表在照相机4的照相机坐标系中的手部单元1的位置和取向的第一坐标系CA。具体而言,由于机器人体部101的关节角度被预先获得,所以手部单元1的坐标系CA可被获得。这是直接力学的情况并且被公式化。
如上所述,作为直接获得手部单元1的坐标系CA的替代,可通过获得固定于基部5的坐标系CD根据正向运动学来获得坐标系CA。要执行的步骤S3至S12中的操作与第一实施例中的那些相同,因此它们的描述被省略。
由于在高精度机器人中坐标系CD至坐标系CA的变换的误差小,因此上述方法是有效的。因而,根据第五实施例,如果使用照相机4测量机器人体部101附接到的基部5的基部特征点,则不需要进行手部单元1的测量。
应指出,尽管在第五实施例中已经描述了在基部5上标记位置标记31的情况,但是位置标记31不必须被使用,只要使用照相机4识别出机器人体部101附接到其上的基部5的位置和取向即可。基部5的任意特征点(例如,角度或边缘线)可被设定为基部特征点。即使在此情况中,仍可获得基部坐标系CD
此外,尽管在第五实施例中基部坐标系CD固定于基部5,但是,基部坐标系CD可被固定于机器人体部101的一部分、臂部单元6的腕部或肘部。根据机器人工程学的机械学(正向运动学),手部单元1的坐标系CA可被从固定于机器人体部101的该部分的坐标系CD和关节角度获得。即,用于坐标系CD的计算的特征点可被设定于机器人体部101的臂部单元6。
以上已经基于第一到第五实施例描述了本发明。但是,本发明并不限于这些实施例。
三个坐标系CA、CB和CC之中的已被测量一次的坐标系的位置可被存储在存储器中,从而冗余测量操作被省略。具体而言,对于三个坐标系中的总是处于相同状态或者不相对于照相机移动的一个坐标系仅需要一次测量。因此,该三个坐标系的测量结果,在被执行多次的测量中不移动的坐标系的值可被存储在存储器中。这样,冗余测量可被省略。由此,由于测量所需的时间段可被省略,因而可实现组装操作所需的时间段的缩短。例如,在手持式照相机的情况中,如果手部单元在所有的捕获图像中都位于相同位置,因而不需要每次都执行测量。除了第一次测量之外的测量可被省略,并且先前测量值可被使用。此外,如果第二工件不相对于照相机移动,除了第一次测量之外的测量可被省略,并且可获得先前测量值。
此外,存储要由计算机读取的程序的记录介质并不限于ROM,HDD、诸如CD或DVD的介质或诸如USB的非易失性存储器可被用作记录介质。即,可使用任何记录介质,只要该记录介质以计算机可读的方式存储程序即可。
然后,使得计算机实现第一到第五实施例的功能的程序可通过各种记录介质的网络被提供给计算机,并且计算机可读取并执行程序代码。在此情况中,程序和存储该程序的计算机可读记录介质也可被包含在本发明中。
尽管已经参照示例性实施例描述了本发明,但是应理解,本发明不限于所公开的示例性实施例。权利要求的范围应被给予最宽泛的解释以便包含所有的变型以及等同结构和功能。
本申请要求2011年3月24日提交的日本专利申请No.2011-066000的权益,该日本专利申请通过引用而全文并入此。
附图标记列表
1手部单元
2柔性线缆(第一工件)
2a连接器
3a连接器(第二工件)
4照相机
5基部
6臂部单元
6a至6f链接部件
10机器人控制器
10aCPU
10bROM
10cRAM
11第一坐标系计算单元
12第二坐标系计算单元
13第三坐标系计算单元
14第一坐标变换矩阵计算单元
15第二坐标变换矩阵计算单元
16目标点设定单元
17指令点设定单元
18第一坐标变换单元
19第二坐标变换单元
20操作指令生成单元
21操作指令输出单元
101机器人体部
102机器人控制装置

Claims (5)

1.一种控制机器人体部的机器人控制装置,该机器人体部包括具有相互耦接的多个链接部件的臂部单元以及设置在臂部单元的端部处的手部单元,该手部单元抓住第一工件并且使所抓住的第一工件附接到第二工件,该机器人控制装置包括:
照相机,被配置为输出通过捕获机器人体部、第一工件和第二工件的图像而获得的图像数据;
第一坐标系计算单元,被配置为从图像数据计算代表在照相机的照相机坐标系中的手部单元的位置和取向的第一坐标系;
第二坐标系计算单元,被配置为从图像数据计算代表在照相机的照相机坐标系中的第一工件的位置和取向的第二坐标系;
第三坐标系计算单元,被配置为从图像数据计算代表在照相机的照相机坐标系中的第二工件的位置和取向的第三坐标系;
第一坐标变换矩阵计算单元,被配置为计算用于将第二坐标系转变至第一坐标系的第一坐标变换矩阵;
第二坐标变换矩阵计算单元,被配置为计算用于将第三坐标系转变至第一坐标系的第二坐标变换矩阵;
目标点设定单元,被配置为在第一工件的坐标系中设定相对于第一工件具有恒定的位置和取向的目标点的坐标数据;
指令点设定单元,被配置为在第二工件的坐标系中设定允许目标点以相对于第二工件恒定的位置和取向通过的指令点的坐标数据;
第一坐标变换单元,被配置为使用第一坐标变换矩阵对通过目标点设定单元设定的目标点的坐标数据执行坐标变换;
第二坐标变换单元,被配置为使用第二坐标变换矩阵对通过指令点设定单元设定的指令点的坐标数据执行坐标变换;
操作指令生成单元,被配置为生成用于操作机器人体部以使得机器人体部遵循轨迹的操作指令,该轨迹被获得为使得已经受第一坐标变换单元执行的坐标变换的目标点的坐标数据通过已经受由第二坐标变换单元进行的坐标变换的指令点的坐标数据的位置;以及
操作指令输出单元,被配置为将通过操作指令生成单元生成的操作指令输出至机器人体部。
2.一种用于控制机器人体部的机器人控制方法,该机器人体部包括具有相互耦接的多个链接部件的臂部单元以及设置在臂部单元的端部处的手部单元,该手部单元抓住第一工件并且使所抓住的第一工件附接到第二工件,该机器人控制方法包括:
图像捕获步骤,用于通过使用照相机捕获机器人体部、第一工件和第二工件的图像而获得图像数据;
第一坐标系计算步骤,用于从图像数据计算代表在照相机的照相机坐标系中的手部单元的位置和取向的第一坐标系;
第二坐标系计算步骤,用于从图像数据计算代表在照相机的照相机坐标系中的第一工件的位置和取向的第二坐标系;
第三坐标系计算步骤,用于从图像数据计算代表在照相机的照相机坐标系中的第二工件的位置和取向的第三坐标系;
第一坐标变换矩阵计算步骤,用于计算用于将第二坐标系转变至第一坐标系的第一坐标变换矩阵;
第二坐标变换矩阵计算步骤,用于计算用于将第三坐标系转变至第一坐标系的第二坐标变换矩阵;
目标点设定步骤,用于在第一工件的坐标系中设定相对于第一工件具有恒定的位置和取向的目标点的坐标数据;
指令点设定步骤,用于在第二工件的坐标系中设定允许目标点以相对于第二工件恒定的位置和取向通过的指令点的坐标数据;
第一坐标变换步骤,用于使用第一坐标变换矩阵对在目标点设定步骤中设定的目标点的坐标数据执行坐标变换;
第二坐标变换步骤,用于使用第二坐标变换矩阵对在指令点设定步骤中设定的指令点的坐标数据执行坐标变换;
操作指令生成步骤,用于生成用于操作机器人体部以使得机器人体部遵循轨迹的操作指令,该轨迹被获得为使得已经受第一坐标变换步骤中执行的坐标变换的目标点的坐标数据通过已经受第二坐标变换步骤中进行的坐标变换的指令点的坐标数据的位置;以及
操作指令输出步骤,用于将在操作指令生成步骤中生成的操作指令输出至机器人体部。
3.根据权利要求2所述的机器人控制方法,其中,目标点设定步骤包括选择步骤,该选择步骤在第二坐标系计算步骤之前被执行,该选择步骤用于在由第一工件的不同特征点所规定的不同坐标系中设定多个目标点的坐标数据并且从所述多个目标点中选择还没有通过指令点的目标点,
在第二坐标系计算步骤中,提取规定了在所述选择步骤中选择的目标点的坐标系的特征点,并且使用所提取的特征点计算第二坐标系,以及
在第一坐标变换步骤中,使用第一坐标变换矩阵对在所述选择步骤中从所述多个目标点中所选择的在目标点设定步骤中设定的目标点的坐标数据进行坐标变换。
4.一种用于控制机器人体部的机器人控制方法,该机器人体部固定于基部并且包括具有相互耦接的多个链接部件的臂部单元以及设置在臂部单元的端部处的手部单元,该手部单元抓住第一工件并且使所抓住的第一工件附接到第二工件,该机器人控制方法包括:
图像捕获步骤,用于通过使用照相机捕获基部、第一工件和第二工件的图像而获得图像数据;
第一坐标系计算步骤,用于从图像数据计算代表在照相机的照相机坐标系中的基部的位置和取向的基部坐标系,此后根据正向运动学从基部坐标系计算代表在照相机的照相机坐标系中的手部单元的位置和取向的第一坐标系;
第二坐标系计算步骤,用于从图像数据计算代表在照相机的照相机坐标系中的第一工件的位置和取向的第二坐标系;
第三坐标系计算步骤,用于从图像数据计算代表在照相机的照相机坐标系中的第二工件的位置和取向的第三坐标系;
第一坐标变换矩阵计算步骤,用于计算用于将第二坐标系转变至第一坐标系的第一坐标变换矩阵;
第二坐标变换矩阵计算步骤,用于计算用于将第三坐标系转变至第一坐标系的第二坐标变换矩阵;
目标点设定步骤,用于在第一工件的坐标系中设定相对于第一工件具有恒定的位置和取向的目标点的坐标数据;
指令点设定步骤,用于在第二工件的坐标系中设定允许目标点以相对于第二工件恒定的位置和取向通过的指令点的坐标数据;
第一坐标变换步骤,用于使用第一坐标变换矩阵对在目标点设定步骤中设定的目标点的坐标数据执行坐标变换;
第二坐标变换步骤,用于使用第二坐标变换矩阵对在指令点设定步骤中设定的指令点的坐标数据执行坐标变换;
操作指令生成步骤,用于生成用于操作机器人体部以使得机器人体部遵循轨迹的操作指令,该轨迹被获得为使得已经受第一坐标变换步骤中执行的坐标变换的目标点的坐标数据通过已经受由第二坐标变换步骤中进行的坐标变换的指令点的坐标数据的位置;以及
操作指令输出步骤,用于将通过操作指令生成步骤中生成的操作指令输出至机器人体部。
5.根据权利要求4所述的机器人控制方法,其中,目标点设定步骤包括选择步骤,该选择步骤在第二坐标系计算步骤之前被执行,该选择步骤用于在由第一工件的不同特征点所规定的不同坐标系中设定多个目标点的坐标数据并且从所述多个目标点中选择还没有通过指令点的目标点,
在第二坐标系计算步骤中,提取规定了在所述选择步骤中选择的目标点的坐标系的特征点,并且使用所提取的特征点计算第二坐标系,以及
在第一坐标变换步骤中,使用第一坐标变换矩阵对在所述选择步骤中从所述多个目标点中所选择的在目标点设定步骤中设定的目标点的坐标数据进行坐标变换。
CN201280017069.4A 2011-03-24 2012-03-19 机器人控制装置、机器人控制方法、程序和记录介质 Expired - Fee Related CN103459102B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2011066000A JP5744587B2 (ja) 2011-03-24 2011-03-24 ロボット制御装置、ロボット制御方法、プログラム及び記録媒体
JP2011-066000 2011-03-24
PCT/JP2012/001880 WO2012127845A1 (en) 2011-03-24 2012-03-19 Robot control apparatus, robot control method, program, and recording medium

Publications (2)

Publication Number Publication Date
CN103459102A CN103459102A (zh) 2013-12-18
CN103459102B true CN103459102B (zh) 2016-01-06

Family

ID=46062681

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201280017069.4A Expired - Fee Related CN103459102B (zh) 2011-03-24 2012-03-19 机器人控制装置、机器人控制方法、程序和记录介质

Country Status (4)

Country Link
US (1) US8977395B2 (zh)
JP (1) JP5744587B2 (zh)
CN (1) CN103459102B (zh)
WO (1) WO2012127845A1 (zh)

Families Citing this family (54)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140227977A1 (en) * 2013-02-12 2014-08-14 Zary Segall Method, node, device, and computer program for interaction
JP6025658B2 (ja) * 2013-05-29 2016-11-16 本田技研工業株式会社 コネクタ挿入方法及びコネクタ挿入装置
JP6322959B2 (ja) * 2013-11-05 2018-05-16 セイコーエプソン株式会社 ロボット、ロボットシステム、及びロボット制御装置
JP6364836B2 (ja) * 2014-03-14 2018-08-01 セイコーエプソン株式会社 ロボット、ロボットシステム、及び制御装置
US20150338213A1 (en) 2014-05-20 2015-11-26 Par Systems, Inc. Adaptive Manufacturing System
CN105313127A (zh) * 2014-06-02 2016-02-10 精工爱普生株式会社 机器人、机器人的控制方法以及机器人的控制装置
JP6427972B2 (ja) * 2014-06-12 2018-11-28 セイコーエプソン株式会社 ロボット、ロボットシステム及び制御装置
JP5911934B2 (ja) * 2014-09-18 2016-04-27 ファナック株式会社 輪郭線計測装置およびロボットシステム
WO2016069010A1 (en) * 2014-10-31 2016-05-06 Hewlett Packard Enterprise Development Lp Adaptive cooling assembly
CN104325268A (zh) * 2014-11-04 2015-02-04 南京赫曼机器人自动化有限公司 一种基于智能学习的工业机器人三维空间自主装配方法
JP6126067B2 (ja) * 2014-11-28 2017-05-10 ファナック株式会社 工作機械及びロボットを備えた協働システム
US9855658B2 (en) * 2015-03-19 2018-01-02 Rahul Babu Drone assisted adaptive robot control
JP6651707B2 (ja) * 2015-04-10 2020-02-19 セイコーエプソン株式会社 ロボット、制御装置、及び制御方法
JP6485199B2 (ja) * 2015-05-12 2019-03-20 富士通株式会社 把持装置及びフラットケーブル挿入装置
US10335951B2 (en) * 2015-07-29 2019-07-02 Canon Kabushiki Kaisha Information processing apparatus, information processing method, robot control apparatus, and robot system
US10290118B2 (en) * 2015-08-06 2019-05-14 Cognex Corporation System and method for tying together machine vision coordinate spaces in a guided assembly environment
US11054802B2 (en) * 2015-10-21 2021-07-06 Mitsubishi Electric Research Laboratories, Inc. System and method for performing operations of numerical control machines
WO2017134805A1 (ja) * 2016-02-05 2017-08-10 株式会社日立産機システム 位置検出装置、制御装置及び移動体
CN106041937B (zh) * 2016-08-16 2018-09-14 河南埃尔森智能科技有限公司 一种基于双目立体视觉的机械手抓取控制***的控制方法
JP6514156B2 (ja) * 2016-08-17 2019-05-15 ファナック株式会社 ロボット制御装置
JP2018074100A (ja) * 2016-11-04 2018-05-10 富士通株式会社 ラックマウント型情報処理装置
CN106826814B (zh) * 2016-12-16 2019-12-10 深圳市优必选科技有限公司 一种机器人的运动控制方法和运动控制***
WO2018120210A1 (zh) * 2016-12-30 2018-07-05 深圳配天智能技术研究院有限公司 确定码垛点位置信息的方法、装置及机器人
US11440184B2 (en) * 2017-02-09 2022-09-13 Mitsubishi Electric Corporation Position control device and position control method
EP3746270A4 (en) 2018-02-01 2021-10-13 ABB Schweiz AG VISION-BASED OPERATION FOR ROBOTS
EP3756835A4 (en) * 2018-02-23 2021-12-15 Kurashiki Boseki Kabushiki Kaisha LINEAR OBJECT POINT MOVEMENT PROCESS, CONTROL DEVICE AND THREE-DIMENSIONAL CAMERA
JP7140826B2 (ja) * 2018-03-28 2022-09-21 倉敷紡績株式会社 把持制御装置
JP6806736B2 (ja) * 2018-06-05 2021-01-06 ファナック株式会社 位置情報表示システム
JP6813537B2 (ja) * 2018-06-14 2021-01-13 ファナック株式会社 コネクタ接続用治具
JP7217109B2 (ja) * 2018-09-03 2023-02-02 倉敷紡績株式会社 帯状物の作業位置決定方法、ロボット制御方法、帯状物の作業位置決定装置および帯状物ハンドリングシステム
WO2020050121A1 (ja) * 2018-09-03 2020-03-12 倉敷紡績株式会社 帯状物の作業位置決定方法、ロボット制御方法、帯状物の作業位置決定装置、帯状物ハンドリングシステム、帯状物の3次元計測方法および帯状物の3次元計測装置
JP6673419B2 (ja) * 2018-09-19 2020-03-25 株式会社オートネットワーク技術研究所 配線部材
JP6882245B2 (ja) * 2018-10-22 2021-06-02 ファナック株式会社 ロボットシステム
US10738580B1 (en) 2019-02-14 2020-08-11 Service Alliance—Houston LLC Electric driven hydraulic fracking system
CA3072660C (en) 2019-02-14 2020-12-08 National Service Alliance - Houston Llc Electric driven hydraulic fracking operation
US10753153B1 (en) 2019-02-14 2020-08-25 National Service Alliance—Houston LLC Variable frequency drive configuration for electric driven hydraulic fracking system
US10753165B1 (en) 2019-02-14 2020-08-25 National Service Alliance—Houston LLC Parameter monitoring and control for an electric driven hydraulic fracking system
US10794165B2 (en) 2019-02-14 2020-10-06 National Service Alliance—Houston LLC Power distribution trailer for an electric driven hydraulic fracking system
JP2020138293A (ja) * 2019-02-28 2020-09-03 セイコーエプソン株式会社 ロボットシステムおよび制御方法
CN109909704B (zh) * 2019-03-06 2021-07-23 上海蔚来汽车有限公司 汽车门饰板装配方法和用于汽车门饰板装配的工装设备
DE102019108810B4 (de) 2019-04-04 2021-06-24 HELLA GmbH & Co. KGaA Griffelement zur Anordnung an einem Bauteil
EP3738725B1 (en) 2019-05-15 2022-02-16 Omron Corporation Measurement system, measurement device, measurement method, and measurement program
CN111984001A (zh) * 2019-05-21 2020-11-24 北京京东尚科信息技术有限公司 用于控制机器人的方法和装置
US11648674B2 (en) * 2019-07-23 2023-05-16 Teradyne, Inc. System and method for robotic bin picking using advanced scanning techniques
JP7396829B2 (ja) * 2019-07-31 2023-12-12 ファナック株式会社 ロボット座標系を設定する装置、ロボット制御装置、ロボットシステム、及び方法
US11679508B2 (en) * 2019-08-01 2023-06-20 Fanuc Corporation Robot device controller for controlling position of robot
JP2021030359A (ja) * 2019-08-22 2021-03-01 オムロン株式会社 制御装置、制御方法、及び制御プログラム
JP7306937B2 (ja) * 2019-09-25 2023-07-11 ファナック株式会社 ロボットに支持された部材の位置を調整するロボット装置の制御装置
CN110640746B (zh) * 2019-11-07 2023-03-24 上海电气集团股份有限公司 机器人的坐标系标定及定位方法、***、设备、介质
CN111015664B (zh) * 2019-12-26 2023-05-30 重庆盟讯电子科技有限公司 一种基于ccd相机的智能化识别方法
CN112847321B (zh) * 2021-01-04 2021-12-28 扬州市职业大学(扬州市广播电视大学) 基于人工智能的工业机器人视觉图像识别***
US20220234208A1 (en) * 2021-01-27 2022-07-28 The Boeing Company Image-Based Guidance for Robotic Wire Pickup
CN114918926B (zh) * 2022-07-22 2022-10-25 杭州柳叶刀机器人有限公司 机械臂视觉配准方法、装置、控制终端及存储介质
CN115609586B (zh) * 2022-10-21 2024-06-04 华中科技大学 一种基于抓取位姿约束的机器人高精度装配方法

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05108126A (ja) 1991-10-17 1993-04-30 Kobe Steel Ltd 位置ずれ較正装置
JPH05305591A (ja) * 1992-05-01 1993-11-19 Kobe Steel Ltd 組立ロボット
JP3394322B2 (ja) * 1994-05-19 2003-04-07 ファナック株式会社 視覚センサを用いた座標系設定方法
JPH08174457A (ja) 1994-12-27 1996-07-09 Nissan Motor Co Ltd 組立用ロボットの制御方法およびその装置
US6141863A (en) * 1996-10-24 2000-11-07 Fanuc Ltd. Force-controlled robot system with visual sensor for performing fitting operation
JP2000117563A (ja) * 1998-10-15 2000-04-25 Hitachi Ltd マーカを有する締結部品
WO2003064116A2 (en) 2002-01-31 2003-08-07 Braintech Canada, Inc. Method and apparatus for single camera 3d vision guided robotics
US6812665B2 (en) * 2002-04-19 2004-11-02 Abb Ab In-process relative robot workcell calibration
KR20060015557A (ko) * 2003-04-28 2006-02-17 스티븐 제임스 크램톤 외골격을 구비한 cmm 암
JP4167940B2 (ja) * 2003-05-29 2008-10-22 ファナック株式会社 ロボットシステム
US6822412B1 (en) * 2003-06-11 2004-11-23 Zhongxue Gan Method for calibrating and programming of a robot application
JP3946711B2 (ja) 2004-06-02 2007-07-18 ファナック株式会社 ロボットシステム
JP2008522836A (ja) * 2004-10-25 2008-07-03 ユニバーシティ・オブ・デイトン 運動学的ロボット・モデル・パラメータ決定によって多関節ロボットにおいて改善された精度を提供する方法及びシステム
JP2006212743A (ja) * 2005-02-04 2006-08-17 National Institute Of Advanced Industrial & Technology タスクスキルによるボルト組付け装置
JP2007185723A (ja) * 2006-01-11 2007-07-26 Fujifilm Corp 自動調芯装置及び方法
JP4271232B2 (ja) 2006-12-20 2009-06-03 ファナック株式会社 ロボットのオフラインプログラミングを実行するための装置、方法、プログラム及び記録媒体
WO2009059323A1 (en) * 2007-11-01 2009-05-07 Rimrock Automation, Inc. Dba Wolf Robotics A method and system for finding a tool center point for a robot using an external camera
JP5451219B2 (ja) * 2009-07-06 2014-03-26 キヤノン株式会社 部品組付け方法
JP4706991B2 (ja) 2010-10-05 2011-06-22 株式会社Gsユアサ リチウム二次電池の製造方法

Also Published As

Publication number Publication date
WO2012127845A1 (en) 2012-09-27
JP2012200805A (ja) 2012-10-22
US20140012416A1 (en) 2014-01-09
JP5744587B2 (ja) 2015-07-08
US8977395B2 (en) 2015-03-10
CN103459102A (zh) 2013-12-18

Similar Documents

Publication Publication Date Title
CN103459102B (zh) 机器人控制装置、机器人控制方法、程序和记录介质
Lee et al. Industrial robot calibration method using denavit—Hatenberg parameters
US20200139547A1 (en) Teaching device, teaching method, and robot system
JP3711105B2 (ja) 3次元計測装置
CN103372862B (zh) 机器人***及其校准方法、机器人、校准装置及数码相机
US7756608B2 (en) System for calibration of an industrial robot and a method thereof
US20080027580A1 (en) Robot programming method and apparatus with both vision and force
Creamer et al. Table-based volumetric error compensation of large five-axis machine tools
CN104057447A (zh) 机器人拾取***以及被加工物的制造方法
CN112025772B (zh) 一种基于视觉测量的机械臂自主标定方法
JP2017170599A (ja) ロボットを用いた位置決め装置
JP2005193311A (ja) 冗長マニピュレータの制御方法
JP2015089575A (ja) ロボット、制御装置、ロボットシステム及び制御方法
JP2012040634A (ja) 力制御ロボットのキャリブレーション装置と方法
CN114343847B (zh) 基于光学定位***的手术机器人的手眼标定方法
CN111687845B (zh) 一种基于惯性测量单元的机械臂运动学参数标定方法
CN110977980A (zh) 基于光学定位仪的机械臂实时手眼标定方法及***
CN114654466B (zh) 自动标定方法、装置、***、电子设备及存储介质
CN106671081B (zh) 一种基于单目视觉的少自由度机器人运动学标定方法
CN109397259B (zh) 用于确定机器人设备的绝对位置的方法和机器人设备
EP3693697A1 (en) Method for calibrating a 3d measurement arrangement
JP7436675B2 (ja) ロボット制御装置
JP2005157784A (ja) 小型アーティファクトを用いた運動機構の校正方法
Axelrod et al. Improving hand-eye calibration for robotic grasping and manipulation
CN108592838B (zh) 工具坐标系的标定方法、装置以及计算机存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20160106

CF01 Termination of patent right due to non-payment of annual fee