CN117769483A - 机器人控制设备、机器人控制系统以及机器人控制方法 - Google Patents

机器人控制设备、机器人控制系统以及机器人控制方法 Download PDF

Info

Publication number
CN117769483A
CN117769483A CN202280053884.XA CN202280053884A CN117769483A CN 117769483 A CN117769483 A CN 117769483A CN 202280053884 A CN202280053884 A CN 202280053884A CN 117769483 A CN117769483 A CN 117769483A
Authority
CN
China
Prior art keywords
calibration
robot
controller
posture
spatial information
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.)
Pending
Application number
CN202280053884.XA
Other languages
English (en)
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.)
Kyocera Corp
Original Assignee
Kyocera Corp
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 Kyocera Corp filed Critical Kyocera Corp
Publication of CN117769483A publication Critical patent/CN117769483A/zh
Pending legal-status Critical Current

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/1679Programme controls characterised by the tasks executed
    • B25J9/1692Calibration of manipulator
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • B25J19/02Sensing devices
    • B25J19/04Viewing devices
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/10Programme-controlled manipulators characterised by positioning means for manipulator elements
    • 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/39008Fixed camera detects reference pattern held by end effector

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Human Computer Interaction (AREA)
  • Manipulator (AREA)

Abstract

机器人控制设备包括控制器。控制器在至少一个第一校准位置处执行机器人的第一校准,该至少一个第一校准位置被包括在设置于机器人的操作空间中的第一校准范围中;以及在至少一个第二校准位置处执行机器人的第二校准,该至少一个第二校准位置被包括在限定第一校准范围的一部分的第二校准范围中,并且被设置为具有比至少一个第一校准位置更高的密度。

Description

机器人控制设备、机器人控制系统以及机器人控制方法
相关申请的交叉引用
本申请要求于2021年8月4日提交的日本专利申请No.2021-128491的优先权,其内容以全文引用的方式并入本文中。
技术领域
本公开涉及机器人控制设备、机器人控制系统以及机器人控制方法。
背景技术
在已知的机器人视觉系统中,无需额外的时间和精力即可自动执行校准操作(例如参见专利文献1)。
引文列表
专利文献
专利文献1:公开号为2010-172986的日本未审专利申请
发明内容
在本公开的实施例中,机器人控制设备包括被配置为控制机器人的控制器。控制器在至少一个第一校准位置处执行机器人的第一校准,该至少一个第一校准位置被包括在设置于机器人的操作空间中的第一校准范围中。控制器在至少一个第二校准位置处执行机器人的第二校准。该至少一个第二校准位置被包括在限定第一校准范围的一部分的第二校准范围中,并且被设置为具有比至少一个第一校准位置更高的密度。
根据本公开的实施例,一种机器人控制系统包括上述机器人控制设备和机器人。
根据本公开的实施例,一种机器人控制方法包括:由被配置为控制机器人的控制器在至少一个第一校准位置处执行机器人的第一校准,该至少一个第一校准位置被包括在设置于机器人的操作空间中的第一校准范围中。一种机器人控制方法包括:由该控制器在至少一个第二校准位置处执行机器人的第二校准,该至少一个第二校准位置被包括在限定第一校准范围的一部分的第二校准范围中,并且被设置为具有比至少一个第一校准位置更高的密度。
附图说明
图1是示出了根据实施例的机器人控制系统的配置示例的框图。
图2是示出了根据实施例的机器人控制系统的配置示例的示意图。
图3是示出了校准范围的示例的示意图。
图4是表示在根据实施例的机器人控制方法中执行第一校准的过程的示例的流程图。
图5是表示在根据实施例的机器人控制方法中执行第二校准的过程的示例的流程图。
具体实施方式
机器人作业中需要缩短校准操作所需的时间。利用根据本公开实施例的机器人控制设备、机器人控制系统和机器人控制方法,能够减少校准操作所花费的时间。
(机器人控制系统1的概要)
根据本实施例,如图1和图2所示,机器人控制系统1包括机器人40、机器人控制设备10和空间信息获取单元20。机器人40在预定的操作空间中操作。空间信息获取单元20生成机器人40进行操作的操作空间的深度信息。如稍后所述,空间信息获取单元20计算到位于操作空间中存在的物体50的表面上的测量点的距离。从空间信息获取单元20到测量点的距离也称为“深度”。深度信息指示针对每个测量点测量的深度。换句话说,深度信息指示到位于操作空间中存在的物体50的表面上的测量点的距离。深度信息可以被表达为深度图,其中从空间信息获取单元20观察的方向和该方向上的深度彼此关联。空间信息获取单元20基于(X,Y,Z)坐标系生成操作空间的深度信息。机器人控制设备10根据由空间信息获取单元20生成的深度信息来使机器人40操作。机器人控制设备10基于(X_RB,Y_RB,Z_RB)坐标系使机器人40操作。
(X_RB,Y_RB,Z_RB)坐标系也称为机器人40的坐标系。(X,Y,Z)坐标系也称为空间信息获取单元20的坐标系。机器人40的坐标系可以被设置为与空间信息获取单元20的坐标系相同或不同的坐标系。当机器人40的坐标系被设置为与空间信息获取单元20的坐标系不同的坐标系时,机器人控制设备10将基于空间信息获取单元20的坐标系生成的深度信息变换到机器人40的坐标系之后进行使用。
机器人40以及机器人控制设备10的数量不限于示出的示例那样的1个,也可以是2个或更多个。空间信息获取单元20的数量可以如示出的示例那样针对每个操作空间为1个,也可以是2个或更多个。下面将详细描述各个组件。
<机器人控制设备10>
机器人控制设备10包括控制器11和存储设备12。
控制器11可以包括至少一个处理器以实现机器人控制设备10的各种功能。处理器能够执行用于实现机器人控制设备10的各种功能的程序。处理器可以被实现为单个集成电路。集成电路也称为“IC”。处理器可以被实现为被连接以能够彼此通信的多个集成电路和分立电路。处理器可以包括CPU(中央处理单元)。处理器可以包括DSP(数字信号处理器)或GPU(图形处理单元)。处理器可以基于其他各种已知技术来实现。
存储设备12可以包括诸如磁盘的电磁存储介质或者诸如半导体存储器或磁存储器的存储器。存储设备12可以被构造为HDD(硬盘驱动器)或SSD(固态驱动器)。存储设备12存储各种类型的信息、在控制器11中执行的程序等。存储设备12可以用作控制器11的工作存储器。控制器11可以包括存储设备12的至少一部分。
机器人控制设备10还可以包括能够与空间信息获取单元20以及机器人40进行有线或无线通信的通信设备。通信设备可以被构造为能够根据基于各种通信标准的通信方法中合适的一种来执行通信。通信设备可以使用公知的通信技术来构成。省略对通信设备的硬件等的详细描述。通信设备的功能可以通过一个接口来实现,也可以通过针对每个连接目的地不同的单独的接口来实现。控制器11可以被构造为能够与空间信息获取单元20和机器人40进行通信。控制器11可以包括通信设备。
<机器人40>
如图2所示,机器人40包括臂42、安装到臂42的末端执行器44、以及附接到末端执行器44的标记46。标记46可以附接到臂42而不是末端执行器44。
臂42可以被构造为6轴或7轴竖直多关节机器人。臂42可以被构造为3轴或4轴水平多关节机器人或标量机器人。臂42可以被构造为2轴或3轴正交机器人。臂42可以被构造为并联连杆机器人等。构成臂42的轴的数量不限于上述作为示例的数量。
末端执行器44可以包括例如能够把持作业对象的握持手。握持手可以具有多个手指。握持手的手指的数量可以是两个或更多个。握持手的每个手指可以包括一个或多个关节。末端执行器44可以包括能够吸引作业对象的吸引手。末端执行器44可以包括能够铲起作业对象的铲带。末端执行器44可以包括工具,诸如钻头,从而能够执行各种类型的作业,诸如钻孔以在作业对象中形成孔。末端执行器44不限于上述示例,并且可以被构造为能够执行其他各种操作。
机器人40可以通过操作臂42来控制末端执行器44的位置。末端执行器44可以具有作为对作业对象的作用方向的基准的轴。当末端执行器44具有轴时,机器人40可以通过操作臂42来控制末端执行器44的轴的方向。机器人40控制末端执行器44作用于作业对象的操作的开始和结束。机器人40通过控制末端执行器44的操作,同时控制末端执行器44的位置或末端执行器44的轴的方向,能够使作业对象移动或者对作业对象进行作业。
机器人40还可以包括用于检测机器人40的部件的状态的传感器。传感器可以检测关于机器人40的部件的实际位置或姿势或者机器人40的部件的速度或加速度的信息。传感器可以检测作用在机器人40的部件上的力。传感器可以检测在用于驱动机器人40的部件的电机中流动的电流或者电机的扭矩。传感器可以检测作为机器人40的实际操作的结果而提供的信息。机器人控制设备10通过获取传感器的检测结果,能够掌握机器人40的实际操作的结果。也就说是,机器人控制设备10可以基于传感器的检测结果来获取机器人40的状态。
机器人控制设备10基于由空间信息获取单元20拍摄的标记46的图像来识别标记46的位置或者附接有标记46的末端执行器44的位置。机器人控制设备10还基于由空间信息获取单元20拍摄的标记46的图像来识别机器人40的状态。机器人控制设备10可以通过比较基于传感器的检测结果获取的机器人40的状态和基于标记46的拍摄图像获取的机器人40的状态,来执行机器人40的校准。
<空间信息获取单元20>
空间信息获取单元20获取关于机器人40的操作空间的空间信息。空间信息获取单元20可以拍摄操作空间的图像,并且可以获取操作空间的图像作为空间信息。如图2所示,空间信息获取单元20可以拍摄操作空间中存在的物体50的图像。空间信息获取单元20可以被构造为相机。3D立体相机拍摄操作空间中存在的物体50的图像,计算到位于操作空间中存在的物体50的表面上的测量点的距离作为深度,并且生成深度信息。空间信息获取单元20可以被构造为3D立体相机。空间信息获取单元20可以被构造为LiDAR(光检测和测距)传感器。LiDAR传感器测量到位于操作空间中存在的物体50的表面上的测量点的距离,并且生成深度信息。换句话说,空间信息获取单元20可以获取操作空间的深度信息作为空间信息。空间信息获取单元20不限于上述示例,并且可以被构造为各种其他设备中的合适的一种。空间信息获取单元20可以获取各种其他类型的信息作为空间信息,而不限于操作空间的图像或深度信息。空间信息获取单元20可以包括图像拍摄元件。空间信息获取单元20还可以包括光学系统。空间信息获取单元20可以将操作空间的拍摄图像输出到机器人控制设备10。空间信息获取单元20可以生成机器人40的操作空间中的深度信息,并且可以将生成的深度信息输出到机器人控制设备10。空间信息获取单元20可以生成机器人40的操作空间中的点云信息,并且可以将生成的点云信息输出到机器人控制设备10。因此,空间信息获取单元20可以以点云数据的形式输出空间信息。换句话说,点云信息可以包括空间信息。点云信息表示位于操作空间中存在的物体50的表面上的一组单独的测量点,并且包括每个测量点的坐标信息或颜色信息。点云信息也可以说是使用多个点来表示测量空间中的物体50的数据。由于空间信息是点云数据的形式,因此与空间信息基于由空间信息获取单元20获取的初始数据的情况相比,可以使数据密度更小。
空间信息获取单元20具有视野(Field Of View,FOV)。FOV对应于空间信息获取单元20的图像拍摄范围。空间信息获取单元20可以拍摄包括在FOV中的范围的图像。基于空间信息获取单元20的FOV和深度信息来确定空间信息获取单元20的实际视野大小。机器人控制设备10可以基于空间信息获取单元20的实际视野大小以及由空间信息获取单元20拍摄的包括机器人40上的标记46在内的图像两者,获取机器人40上的标记46的位置和姿态。具体而言,机器人控制设备10通过根据预定算法对拍摄到的标记46的图像进行解析,能够基于图像计算出标记46的位置以及姿势。预定算法可以包括例如数学公式、表格等和/或指定预定算术处理的程序。预定算法可以包括用于校正基于图像计算的结果的参数。
(机器人控制设备10的操作示例)
机器人控制设备10使机器人40操作而作用于操作空间中存在的诸如物体50的作业对象,或者使机器人40移动同时避开物体50。机器人控制设备10基于由空间信息获取单元20拍摄的物体50的图像,使机器人40操作从而作用于作业对象,或者使其移动同时避开物体50。
<校准>
机器人控制设备10的控制器11可以基于由空间信息获取单元20拍摄的图像中的标记46的位置和姿势来获取机器人40的状态,并且可以进一步获取机器人40与物体50之间的位置关系。另一方面,控制器11还通过机器人40上的传感器(诸如附接到臂42的编码器等)来获取机器人40的状态。基于传感器的检测的机器人40的状态比基于由空间信息获取单元20拍摄的图像的机器人40的状态更准确地表示机器人40的位置和姿势。因此,控制器11可以通过使基于由空间信息获取单元20拍摄的图像的机器人40的状态与基于机器人40上的传感器的检测的机器人40的状态一致,更高精度地在操作空间内控制机器人40。使基于由空间信息获取单元20拍摄的图像的机器人40的状态与由机器人40上的传感器检测到的机器人40的状态一致的操作也称为“校准”。更具体地,控制器11执行校准,使得空间信息获取单元20的(X,Y,Z)坐标系与机器人40的(X_RB,Y_RB,Z_RB)坐标系一致。控制器11可以估计空间信息获取单元20的坐标系与机器人40的坐标系之间的相对位置关系,并且可以基于估计的相对位置关系使空间信息获取单元20的坐标系与机器人40的坐标系一致。
控制器11可以通过将空间信息获取单元20的FOV的至少一部分设置为校准范围来执行校准。在本实施例中,控制器1J在图2和图3所示的第一校准范围60和第二校准范围62中的每一个中执行校准。第一校准范围60包括第二校准范围62。换句话说,第二校准范围62对应于第一校准范围60的一部分。第一校准范围60在图2和图3中表示为由双点划线包围的区域。第二校准范围62在图2和图3中被表示为由虚线包围的区域。当不需要区分第一校准范围60和第二校准范围62时,这两个校准范围均被简单地称为“校准范围”。校准范围对应于执行机器人40的校准的范围。校准范围可以包括机器人40的作业区域。校准范围可以是机器人40的作业区域与FOV重叠的范围。
此外,控制器11在校准范围内设置用于执行校准的点。用于执行校准的点也称为“校准位置”。设置在第一校准范围60中的校准位置也称为“第一校准位置”。设置在第二校准范围62中的校准位置也称为“第二校准位置”。第二校准位置被设置为与第一校准位置不同的位置。
控制器11将机器人40上的标记46移动到校准位置,并且指示空间信息获取单元20拍摄标记46的图像。控制器11基于标记46的拍摄图像来计算标记46的位置和姿势。控制器11校正基于图像计算出的标记46的位置和姿势,使得基于图像的标记46的位置和姿势与基于机器人40上的传感器的检测结果确定的标记46的位置和姿势一致。基于图像的标记46的位置和姿势的校正对应于校准。标记46的位置和姿势也称为“前端(tip)位置和姿势”。校准对应于前端位置和姿势的校正。校准位置对应于校正前端位置和姿势的位置。
更详细地,控制器11可以如下所述执行校准。控制器11生成用于将机器人40上的标记46移动到校准位置的机器人40的控制信息。控制器11根据控制信息来操作机器人40,并且将机器人40上的标记46移动到校准位置。控制器11从空间信息获取单元20获取标记46的拍摄图像。控制器11基于图像来计算标记46的位置和姿势。基于图像计算出的标记46的位置和姿势也称为“基于图像的前端位置和姿势”。控制器11计算基于机器人40上的传感器的检测结果确定的标记46的位置和姿势。基于传感器的检测结果计算出的标记46的位置和姿势也称为“基于传感器的前端位置和姿势”。控制器11将基于图像的前端位置和姿势与基于传感器的前端位置和姿势进行比较。控制器11校正基于图像的前端位置和姿势,使得基于图像的前端位置和姿势与基于传感器的前端位置和姿势一致。控制器11可以校正用于计算基于图像的前端位置和姿势的算法。控制器11可以校正包括在算法中的参数或者可以校正数学公式、表格或程序。当设置了多个校准位置时,控制器11将机器人40移动到每个校准位置,在每个校准位置处获取标记46的拍摄图像,并且校正基于图像的前端位置和姿势。
尽管在上述示例中对标记46的位置和姿势执行校准,但是要执行校准的目标不限于标记46的位置和姿势。换句话说,控制器11可以预先存储标记46的位置和作为机器人40的要执行校准的一部分给出的校准对象的位置之间的位置关系,并且可以根据基于图像的标记46的位置和姿势来计算校准对象的位置和姿势。然后,可以通过将计算出的校准对象的位置和姿势与基于机器人40上的传感器的检测结果的校准对象的位置和姿势进行比较来执行校准。因此,还可以对标记46的位置和姿势以外的目标执行校准。另外,在上述示例中,校准对象是机器人40的前端位置和姿势,校准对象不限于机器人40的前端位置和姿势,只要能够计算对象的位置和姿势即可。
《校准项目》
控制器11在执行校准之前预先设置校准范围。此外,控制器11设置包括在校准范围中的校准位置。控制器11在第一校准范围60内设置至少一个第一校准位置。控制器11在第二校准范围62内设置至少一个第二校准位置。控制器11设置校准位置,使得第二校准位置的密度高于第一校准位置的密度。换句话说,控制器11以比第一校准位置更高的密度设置第二校准位置。反过来说,控制器11以比第二校准位置更低的密度设置第一校准位置。第二校准位置的数量可以等于或大于第一校准位置的数量。
控制器11生成用于使机器人40移动到校准位置的机器人40的控制信息。控制器11生成指定机器人40移动后的前端位置和姿势以及机器人40上的标记46的识别结果的信息作为校准项目。指定当机器人40已经移动到设置在机器人40的操作空间中的第一校准范围60中所包括的至少一个第一校准位置时的末端位置和姿势以及机器人40上的标记46的识别结果的校准项目也称为“第一校准项目”。指定当机器人40已经移动到设置在机器人40的操作空间中的第二校准范围62中所包括的至少一个第二校准位置时的末端位置和姿势以及机器人40上的标记46的识别结果的校准项目也称为“第二校准项目”。校准项目各自是关于例如坐标的信息。更具体地,校准项目例如是指示当机器人40移动到校准位置时基于机器人40上的传感器的检测结果的前端位置和姿势的坐标信息,或者指示基于由空间信息获取单元20识别出的标记46的识别结果的前端位置和姿势的坐标信息。
控制器11可以如下所述生成校准项目。
控制器11例如从空间信息获取单元20获取关于空间信息获取单元20的实际视野大小的信息或者关于FOV的信息。控制器11基于空间信息获取单元20的实际视野大小或FOV以及机器人40的作业区域来设置校准范围。控制器11可以基于物体50在机器人40的操作空间中的位置来设置校准范围。控制器11可以基于由空间信息获取单元20检测到的物体50的深度信息或点云信息来设置校准范围。此外,控制器11可以例如基于实际视野尺寸和FOV来设置第一校准范围60。控制器11可以例如基于作业区域来设置第二校准范围62。校准范围可以包括多个第二校准范围62。当控制器11指示机器人40执行拾取和放置操作时,例如,控制器11可以针对机器人40抓握目标的位置和放置目标的位置中的每一个位置设置第二校准范围62作为作业区域。在图2和图3中,第一校准范围60的形状被设置为四棱台。第二校准范围62的形状被设置为长方体。校准范围的形状不限于上述示例,并且可以被设置为各种其他形状中的合适的一种。
控制器11使基于传感器的机器人40的前端位置和姿势与基于由空间信息获取单元20拍摄的图像的前端位置和姿势彼此一致。更详细地,控制器11将机器人40移动到第一位置。控制器11通过生成用于操作机器人40并将机器人40上的标记46移动到预定位置和姿势的控制信息,并且通过根据控制信息控制机器人40,来将机器人40移动到第一位置。第一位置可以是包括在空间信息获取单元20的FOV中的预定位置。第一位置例如可以是空间信息获取单元20的FOV的中心位置。控制器11获取当机器人40已经移动到第一位置时的标记46的图像,并且计算标记46的位置和姿势作为基于图像的前端位置和姿势。此外,控制器11计算基于传感器的前端位置和姿势。通过比较基于图像的前端位置和姿势与基于传感器的前端位置和姿势,控制器11校正机器人40的控制信息,使得机器人40的位置在图像内变成基于传感器的检测结果确定的第一位置。通过根据校正后的控制信息移动机器人40,控制器11更新机器人40的状态,使得机器人40在机器人40的坐标系中的位置与机器人40在空间信息获取单元20的坐标系中的位置彼此一致。换句话说,控制器11更新机器人40的状态,使得机器人40的位置在图像内变成与第一位置相同。
控制器11可以在校准范围内生成作为校准位置的候选的至少一个位置。作为校准位置的候选的至少一个位置也被称为“至少一个第二位置”。控制器11可以将第一位置设置为至少一个第二位置中的一个第二位置。控制器11可以将至少一个第二位置设置在与第一位置不同的位置。控制器11可以从设置在第一校准范围60和第二校准范围62中的每一个中的第一位置或至少一个第二位置中选择第一校准位置和第二校准位置。至少一个第二位置可以包括位于校准范围的拐角或一边上的点。备选地,至少一个第二位置可以包括位于校准范围内的点。通过模拟机器人40的操作,控制器11估计当机器人40已经移动到第二位置时的机器人40的状态。因此,控制器11计算假设机器人40移动到第二位置时的机器人40的状态。换句话说,控制器11估计假设机器人40移动到第一校准位置或第二校准位置时的机器人40的状态。由此,控制器11能够确定机器人40是否能够移动到例如由第一校准位置和第二校准位置表示的第二位置。
如稍后所述,第一校准是在第一校准位置中执行的校准,并且是在以较低密度设置的每个位置(以较宽间隔设置的位置)中以更简单的方式执行的校准。因此,控制器11能够通过执行第一校准以较少的操作来校正机器人40。第二校准是在第二校准位置中执行的校准,并且是在以较高密度设置的每个位置(以较窄间隔设置的位置)中以更精细的方式执行的校准。因此,控制器11能够通过执行第二校准来高精度地校正机器人40的操作。
如果假设机器人40移动到第二位置的机器人40的状态是不与物体50接触的状态、处于关节可动范围内的状态、以及处于非奇点的状态,则控制器11将第二位置登记为校准位置。当控制器11将第二位置登记为校准位置时,控制器11生成指定基于当机器人40已经移动到第二位置时机器人40上的传感器的检测结果的前端位置和姿势以及基于机器人40上的标记46的识别结果的前端位置和姿势的信息,作为多个校准项目。当控制器11不将第二位置登记为校准位置时,控制器11可以生成新的不同的第二位置,并且可以确定新的第二位置是否可以被登记为校准位置。当表示机器人40的关节角度的数值在关节可动范围内时,控制器11可以确定机器人40处于不受关节限制的状态。当表示机器人40的关节角度的数值在关节可动范围之外时,控制器11可以确定机器人40处于受到关节限制的状态。
奇点对应于从机器人40的结构角度不再能够控制机器人40的姿势。当机器人40待操作的路径包括奇点时,机器人40在奇点附近高速移动(失控),然后在奇点处停止。机器人40具有如下三种类型(1)至(3)的奇点:
(1)当控制机器人40移动到作业区域的外侧边界附近的位置时,作业区域外的点(作业区域对应于机器人40的操作空间)。
(2)即使位于作业区域内,但机器人40被控制为朝向机器人基座的正上方或正下方的位置的点。
(3)机器人40的臂42的最前关节的下一个关节的角度为零或180度的点(手腕对齐奇点)。
当表示机器人40的状态的数值与表示处于奇点的状态的数值一致时,控制器11可以确定机器人40处于奇点状态。当表示机器人40的状态的数值与表示处于奇点的状态的数值之间的差小于预定值时,控制器11可以确定机器人40处于奇点状态。表示机器人40的状态的数值可以包括例如臂42的关节角度或用于驱动机器人40的电机的扭矩。
如上所述,控制器11设置校准范围,并且在校准范围内设置校准位置。控制器11可以生成校准项目,作为指定当机器人40移动到校准位置时机器人40的前端位置和姿势的信息。
《执行校准》
控制器11执行校准,使得根据标记46的识别结果导出的前端位置和姿势的校准项目与根据机器人40上的传感器的检测结果导出的前端位置和姿势的校准项目一致。更详细地,控制器11将机器人40移动到校准位置。控制器11从空间信息获取单元20获取当机器人40已经移动到校准位置时的机器人40上的标记46的识别结果。控制器11计算作为标记46的识别结果而获取的前端位置和姿势的校准项目相对于机器人40的基于传感器的前端位置和姿势的校准项目的相对位置关系。相对位置关系对应于两个校准项目之间的坐标和角度的差异。控制器11校正空间信息获取单元20的坐标系,使其与机器人40的坐标系一致,从而使得与两个校准项目之间的相对位置关系相对应的坐标误差和角度误差为零或接近于零(即,误差变得小于预定值)。因此,控制器11可以通过使当机器人40移动到校准位置时的标记46的识别结果与由机器人40上的传感器指定的前端位置和姿势一致,来计算相对位置关系。备选地,控制器11可以使由机器人40上的传感器指定的前端位置和姿势与作为标记46的识别结果而识别的前端位置和姿势一致。
控制器11可以通过生成一个或多个校准项目来设置校准位置。反过来说,校准位置对应于为了生成校准项目而使机器人40移动到的位置。通过将校准位置应用于机器人40的控制,控制器11可以将机器人40移动到校准位置并且可以执行校准。应用第一校准项目的校准也称为“第一校准”。应用第二校准项目的校准也称为“第二校准”。控制器11可以通过将第一校准位置应用于机器人40的控制并且通过将机器人40移动到第一校准位置来执行第一校准。控制器11可以通过将第二校准位置应用于机器人40的控制并且通过将机器人40移动到第二校准位置来执行第二校准。
控制器11执行第一校准和第二校准。控制器1J通过执行第一校准,能够以较少的操作来校正机器人40。另一方面,控制器11通过执行第二校准,能够高精度地校正机器人40的操作。第一校准是在第一校准位置中执行的校准,并且在以较低密度设置的每个位置(以较宽间隔设置的位置)处以更简单的方式执行。因此,控制器11通过执行第一校准,能够以较少的操作来校正机器人40。第二校准是在第二校准位置中执行的校准,并且是在以较高密度设置的每个位置(以较窄间隔设置的位置)处以更精细的方式执行的校准。因此,控制器11通过执行第二校准,能够高精度地校正机器人40的操作。
第一校准可以是无论机器人40要执行的作业的细节如何都需要的校准。第二校准可以是根据机器人40要执行的作业的细节而需要的校准。换句话说,第一校准范围60可以是恒定范围,而与机器人40要执行的作业的细节无关,并且第二校准范围62可以是根据机器人40要执行的作业的细节而设置为不同大小的范围。
控制器11在机器人40开始作业之前执行校准。控制器11可以仅执行第一校准,从而能够以机器人40能够执行作业的精度来校正机器人40。
控制器11可以在执行第一校准之后执行第二校准。控制器11可以在执行第一校准之后开始机器人40的作业,并且可以在机器人40的作业期间执行第二校准。在这种情况下,控制器11在机器人40开始作业之前预先生成第一校准项目。控制器11可以在机器人40开始作业之前预先生成第二校准项目,或者在机器人40作业期间生成第二校准项目。
更详细地,控制器11基于已经通过执行第一校准而校正的坐标系开始机器人40的作业。控制器11将机器人40的位置和姿势控制为针对作业而确定的位置和姿势。当机器人40已经被控制到针对作业而确定的位置和姿势时,控制器11通过使用空间信息获取单元20识别标记46来获取基于图像的前端位置和姿势。此外,控制器11基于机器人40上的传感器的检测结果获取基于传感器的前端位置和姿势。控制器11可以根据基于图像的前端位置和姿势以及基于传感器的前端位置和姿势来执行校准。
控制器11可以将机器人40控制到针对作业而确定的位置和姿势时的机器人40的前端位置和姿势登记为校准位置。控制器11生成指定校准位置以及校准位置处的标记46的识别结果的校准项目作为第二校准项目。
控制器11可以生成第二校准项目,使得第二校准位置具有比第一校准位置更高的密度。相反地,控制器11可以根据第二校准位置的密度来生成第一校准项目,该密度是基于机器人40的作业的细节来确定的。更详细地,控制器11可以设置第一校准位置,使得应用于第一校准以在开始机器人40的作业之前执行第一校准的第一校准位置的密度低于第二校准位置的密度。以更简单的方式执行第一校准位置中的校准。以更精细的方式执行第二校准位置中的校准。由于第一校准位置被设置为使得第一校准位置的密度低于第二校准位置的密度,所以能够减轻以更简单的方式执行的第一校准的负担。
控制器11可以在机器人40执行作业的机器人40的操作空间的一部分中,以基于机器人40的作业精度所确定的密度设置第二校准位置。这使得能够以适当的密度设置第二校准位置。
(机器人控制方法的步骤示例)
机器人控制设备10的控制器11可以执行包括图4和图5所示的流程图的过程的机器人控制方法。机器人控制方法可以被实现为由构成控制器11的处理器执行的机器人控制程序。机器人控制程序可以存储在非暂时性计算机可读介质中。
首先,控制器11执行图4所示的流程图的过程作为第一校准。控制器11使机器人40移动到第一校准位置(步骤S1)。控制器11基于传感器的检测结果获取机器人40在机器人40已经移动到的第一校准位置处的状态(步骤S2)。控制器11获取机器人40已经移动到的第一校准位置处的标记46的识别结果(步骤S3)。
控制器11计算当机器人40已经移动到第一校准位置时的相对位置关系和误差(步骤S4)。更详细地,控制器11根据标记46的识别结果获取基于图像的前端位置和姿势,并且进一步根据传感器的检测结果获取基于传感器的前端位置和姿势。控制器11计算基于图像的前端位置和姿势与基于传感器的前端位置和姿势之间的相对位置关系和误差。控制器11可以计算总体校准误差作为误差。
控制器11确定第一校准项目中包括的所有的校准项目的相对位置关系和误差的计算是否已经完成(步骤S5)。如果没有完成所有的校准项目的相对位置关系和误差的计算(步骤S5:否),控制器11返回到步骤S1的过程,并且对于计算未完成的校准项目重复处理操作。如果完成了所有的校准项目的相对位置关系和误差的计算(步骤S5:是),控制器11基于针对每个校准项目计算出的相对位置关系和误差来校正坐标系(步骤S6)。更详细地,控制器11校正空间信息获取单元20的坐标系,以使其与机器人40的坐标系一致。在执行步骤S6的过程之后,控制器11结束图4所示的流程图的过程的执行。
然后,控制器11执行图5所示的流程图的过程作为第二校准。在图5所示的过程的示例中,假设没有预先设置第二校准项目。
控制器11开始机器人40的作业(步骤S11)。控制器11获取机器人40在机器人40为了执行作业而移动到的预定位置处的状态(步骤S12)。控制器11获取机器人40为了执行作业而移动到的预定位置处的标记46的识别结果(步骤S13)。在步骤S12和S13中,预定位置对应于机器人40的前端位置和姿势。控制器11可以将机器人40为了执行作业而移动到的任意位置设置为预定位置。控制器11可以将机器人40在作业期间暂时停止的位置设置为预定位置。
控制器11计算预定位置处的机器人40的前端位置和姿势的相对位置关系和误差(步骤S14)。控制器11确定误差是否大于阈值(步骤S15)。更具体地,控制器11可以针对位置和姿势的误差的总和计算一个评价值,并且可以将该评价值与阈值进行比较。在这种情况下,假设误差越大,则评价值被计算为越大的值。备选地,控制器11可以将位置误差的大小和姿势误差的大小与位置和姿势的相应阈值进行比较。与位置误差的大小进行比较的阈值也称为“第一阈值”。与姿势误差的大小进行比较的阈值也称为“第二阈值”。如果满足以下至少一个事实,即,位置误差的大小大于第一阈值的事实和姿态误差的大小大于第二阈值的事实,则控制器11可以确定误差大于阈值。如果位置误差的大小大于第一阈值并且姿势误差的大小大于第二阈值,则控制器11可以确定误差大于阈值。
如果误差不大于阈值(步骤S15:否),即,如果误差等于或小于阈值,则控制器11将预定位置登记为第二校准位置(步骤S16)。更具体地,控制器11可以将预定位置设置为第二校准位置来生成第二校准项目,并且可以将生成的第二校准项目存储在存储设备12中。另一方面,如果误差大于阈值(步骤S15:是),则控制器11不将预定位置登记为第二校准位置而返回到步骤S12的过程,并且在下一个预定位置处重复从步骤S12到S16的操作。
控制器11确定机器人40的作业是否已经完成(步骤S17)。如果机器人40的作业没有完成(步骤S17:否),则控制器11返回到步骤S12的过程,并且在下一个预定位置处重复从步骤S12到S16的操作。如果机器人40的作业已经完成(步骤S17:是),则控制器11结束图5所示的流程图的过程的执行。
(概括)
如上所述,使用根据本实施例的机器人控制设备10和机器人控制方法来分别执行第一校准和第二校准。由于在第一校准中设置的第一校准位置的密度被设置为低于在第二校准中设置的第二校准位置的密度,因此可以减轻第一校准的负担。由此,减少了第一校准所花费的时间。此外,在执行第一校准之后可以开始机器人40的作业。由此,能够减少用于使机器人40执行作业所花费的校准操作的时间。
在本实施例的机器人控制设备10以及机器人控制方法中,也可以在机器人40进行作业的期间执行第二校准。此外,第二校准可以在机器人40执行作业的范围内执行。因此,可以高效地执行校准。另外,可以高精度地执行校准。
如上所述,通过校准来指定空间信息获取单元20的坐标系与机器人40的坐标系之间的关系。在本实施例中,空间信息获取单元20的坐标系与机器人40的坐标系一致。坐标系之间的关系可能会由于各种原因而发生变化。当机器人40或机器人控制系统1发生异常时,坐标系之间的关系可能会改变。当机器人40停止时或者当机器人40启动时,坐标系之间的关系可能会改变。
在上述情况下,当已经执行了至少一次校准的机器人40正常启动时或者当启动机器人40以从异常的发生中恢复时,控制器11可以确定通过校准指定的坐标系之间的关系是否改变。如果坐标系之间的关系没有改变,则控制器11不需要执行坐标系之间的关系的校正或校准。另一方面,如果在机器人40启动时坐标系之间的关系改变,则控制器11确定是否可以校正坐标系之间的关系。如果可以校正坐标系之间的关系,则控制器11校正坐标系之间的关系并且不执行校准。如果不能校正坐标系之间的关系,则控制器11可以通过重新执行第一校准和第二校准来再次指定坐标系之间的关系。
换句话说,可以在机器人40停止时或者在机器人40启动时确定第一校准和第二校准的必要性。机器人40的停止不限于异常停止,也可以被视为指示指定作业的完成。机器人40的启动不限于在异常停止之后启动机器人40的情况,并且可以被视为指示指定作业的开始。
可以在每次作业细节改变时执行第二校准。此外,对于第二校准,可以在每次改变作业内容时确定在该时刻之前通过校准指定的坐标系之间的关系是否发生变更。如果坐标系之间的关系没有改变,则控制器11不需要执行坐标系之间的关系的校正或校准。另一方面,如果在机器人40启动时坐标系之间的关系改变,则控制器11确定是否可以校正坐标系之间的关系。如果可以校正坐标系之间的关系,则控制器11校正坐标系之间的关系并且不执行校准。如果不能校正坐标系之间的关系,则控制器11可以通过重新执行第二校准来再次指定坐标系之间的关系。可以仅执行第二校准作为当作业内容改变时要执行的校准。
在尝试确定是否要再次执行校准时,如下所述,控制器11确定机器人40的坐标系与空间信息获取单元20的坐标系之间的关系是否已经改变,并且进一步确定是否需要重新校准。
控制器11使机器人40移动到测量位置。控制器11将至少一个测量位置设置为包括在校准范围内的点。测量位置可以包括例如任何校准位置。测量位置可以包括例如校准范围的拐角点。测量位置可以包括例如上述第一位置或第二位置、或者不同于第一位置和第二位置的位置。测量位置可以包括在上次校准中使用的校准位置、或者与上次校准位置不同的位置。控制器11可以将例如校准范围内的点设置为测量位置。控制器11可以将校准范围中包括的各个点中的任意点设置为测量位置,而不限于上述点。
控制器11获取当机器人40已经移动到测量位置时的标记46的识别结果。控制器11基于标记46的识别结果计算机器人40的位置作为测量结果。控制器11计算测量位置的初始值与测量结果之间的差。由于机器人40基于传感器的检测结果移动到测量位置,因此控制器11可以计算设置的测量位置与测量结果之间的差,而不计算机器人40的基于传感器的位置。控制器11可以获取当机器人40已经移动到测量位置时的传感器的检测结果,可以根据这些检测结果计算机器人40的基于传感器的位置作为测量位置,可以将计算出的测量位置设置为测量位置的初始值,并且可以计算得到计算出的初始值与测量结果之间的差值。
控制器11基于测量位置的初始值与测量结果之间的差来确定是否要校正坐标系之间的关系。例如,如果测量位置的初始值与测量结果之间的差大于预定阈值,则控制器11确定要校正坐标系之间的关系。在控制器11获取多个测量位置的测量结果的情况下,如果测量位置的初始值中的至少一个与关注测量位置的测量结果之间的差大于预定阈值,则控制器11确定要校正坐标系之间的关系。如果测量位置的初始值与测量结果之间的差值等于或小于预定阈值,则控制器11确定不需要对坐标系之间的关系进行校正和重新校准。控制器11可以适当地设置预定阈值。在示例中,控制器11可以基于机器人40的操作期间的位置精度的规格来设置预定阈值。
在尝试校正坐标系之间的关系时,控制器11可以校正空间信息获取单元20的坐标系,使得空间信息获取单元20的坐标系与机器人40的坐标系一致。控制器11可以校正机器人40的坐标系,使得机器人40的坐标系与空间信息获取单元20的坐标系一致。
更详细地,控制器11可以通过旋转或平移空间信息获取单元20的坐标系或机器人40的坐标系来执行校正。控制器11可以通过增大或减小空间信息获取单元20的坐标系或机器人40的坐标系的比例来执行校正。控制器11可以校正空间信息获取单元20的坐标系或机器人40的坐标系的畸变。控制器11可以基于坐标系的校正来计算测量位置的校正值。
控制器11可以获取1个测量位置处的机器人40的前端位置和姿势,并且可以基于指示标记46的方向的信息(例如,旋转角度),不仅校正坐标系的平移方向,还校正坐标系的旋转方向。
尽管已经参照附图和示例描述了根据本公开的实施例,但是应当注意的是,本领域技术人员可以基于本公开对实施例进行各种变化或改变。因此,应当注意的是,这些变化或改变也落入本公开的范围内。例如,只要不存在理论上的矛盾,各部件所包含的功能等可以以将多个部件合并为一个或者将任一部件分割为多个部分的方式重新排列。
除了要组合的特征彼此互斥的情况之外,本公开中描述的所有配置要件和/或本文中公开的所有方法或所有处理步骤可以以可选组合来实现。此外,除非明确否认,本公开中描述的各种特征可以用对于相同目的、等同目的或相似目的有效的替代特征来替代。因此,除非明确否认,本文公开的各种特征仅是一系列相同或等同的综合特征的示例。
另外,根据本公开的实施例不限于上述实施例的任何具体配置。根据本公开的实施例可以扩展到本公开中描述的所有新颖特征或其组合,或者扩展到本公开中描述的所有新颖方法或处理步骤或其组合。
附图标记
1机器人控制系统
10机器人控制设备(11:控制器,12:存储设备)
20空间信息获取单元
40机器人(42:臂,44:末端执行器,46:标记)
50物体
60第一校准范围
62第二校准范围。

Claims (5)

1.一种机器人控制设备,包括被配置为控制机器人的控制器,
其中,所述控制器:
在至少一个第一校准位置处执行所述机器人的第一校准,所述至少一个第一校准位置被包括在设置于所述机器人的操作空间中的第一校准范围中;以及
在至少一个第二校准位置处执行所述机器人的第二校准,所述至少一个第二校准位置被包括在限定所述第一校准范围的一部分的第二校准范围中,并且被设置为具有比所述至少一个第一校准位置更高的密度。
2.根据权利要求1所述的机器人控制设备,其中,在所述机器人执行作业的空间中,以基于所述机器人的作业精度而确定的密度来设置所述第二校准位置。
3.根据权利要求1或2所述的机器人控制设备,其中,所述控制器基于所述机器人的所述操作空间的拍摄图像来执行所述第一校准和所述第二校准。
4.一种机器人控制系统,包括:
根据权利要求1至3中任一项所述的机器人控制设备;以及
所述机器人。
5.一种机器人控制方法,包括:
由被配置为控制机器人的控制器在至少一个第一校准位置处执行所述机器人的第一校准,所述至少一个第一校准位置被包括在设置于所述机器人的操作空间中的第一校准范围中;以及
由所述控制器在至少一个第二校准位置处执行所述机器人的第二校准,所述至少一个第二校准位置被包括在限定所述第一校准范围的一部分的第二校准范围中,并且被设置为具有比所述至少一个第一校准位置更高的密度。
CN202280053884.XA 2021-08-04 2022-08-04 机器人控制设备、机器人控制系统以及机器人控制方法 Pending CN117769483A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2021-128491 2021-08-04
JP2021128491 2021-08-04
PCT/JP2022/030010 WO2023013739A1 (ja) 2021-08-04 2022-08-04 ロボット制御装置、ロボット制御システム、及びロボット制御方法

Publications (1)

Publication Number Publication Date
CN117769483A true CN117769483A (zh) 2024-03-26

Family

ID=85155767

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202280053884.XA Pending CN117769483A (zh) 2021-08-04 2022-08-04 机器人控制设备、机器人控制系统以及机器人控制方法

Country Status (5)

Country Link
US (1) US20240342917A1 (zh)
EP (1) EP4382260A1 (zh)
JP (1) JPWO2023013739A1 (zh)
CN (1) CN117769483A (zh)
WO (1) WO2023013739A1 (zh)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0774964B2 (ja) * 1987-06-25 1995-08-09 日本鋼管株式会社 ロボットの位置決め誤差補正方法
JP5365218B2 (ja) 2009-01-28 2013-12-11 富士電機株式会社 ロボットビジョンシステムおよび自動キャリブレーション方法
JP7035727B2 (ja) * 2018-03-30 2022-03-15 日本電産株式会社 キャリブレーション精度の評価方法及び評価装置

Also Published As

Publication number Publication date
EP4382260A1 (en) 2024-06-12
WO2023013739A1 (ja) 2023-02-09
US20240342917A1 (en) 2024-10-17
JPWO2023013739A1 (zh) 2023-02-09

Similar Documents

Publication Publication Date Title
JP6966582B2 (ja) ロボットモーション用のビジョンシステムの自動ハンドアイ校正のためのシステム及び方法
JP6180087B2 (ja) 情報処理装置及び情報処理方法
EP2636493B1 (en) Information processing apparatus and information processing method
JP5778311B1 (ja) ピッキング装置およびピッキング方法
US9519736B2 (en) Data generation device for vision sensor and detection simulation system
JP6348097B2 (ja) ワーク位置姿勢算出装置およびハンドリングシステム
JP6912415B2 (ja) ハンド制御装置およびハンド制御システム
JP6855492B2 (ja) ロボットシステム、ロボットシステム制御装置、およびロボットシステム制御方法
JP2016099257A (ja) 情報処理装置及び情報処理方法
KR20140008262A (ko) 로봇 시스템, 로봇, 로봇 제어 장치, 로봇 제어 방법 및 로봇 제어 프로그램
CN110621447B (zh) 机器人传送器校准方法、机器人系统以及控制系统
US20170277167A1 (en) Robot system, robot control device, and robot
JP6885856B2 (ja) ロボットシステムおよびキャリブレーション方法
CN113302027B (zh) 作业坐标生成装置
WO2023013740A1 (ja) ロボット制御装置、ロボット制御システム、及びロボット制御方法
US11267129B2 (en) Automatic positioning method and automatic control device
CN117769483A (zh) 机器人控制设备、机器人控制系统以及机器人控制方法
JP6176091B2 (ja) 把持方法、運搬方法及びロボット
EP4382258A1 (en) Robot control device, robot control system, and robot control method
CN116390834A (zh) 机器人系统
WO2023013699A1 (ja) ロボット制御装置、ロボット制御システム、及びロボット制御方法
JP2010256209A (ja) 袋状ワーク認識装置および方法
JP2024090687A (ja) ロボット制御システム
CN117716205A (zh) 信息处理装置、信息处理方法、成像装置和信息处理系统
JP2021091070A (ja) ロボット制御装置

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