[go: up one dir, main page]

CN116551665A - Method and device for calibrating calibration sensor coordinate system of robot - Google Patents

Method and device for calibrating calibration sensor coordinate system of robot Download PDF

Info

Publication number
CN116551665A
CN116551665A CN202210113328.9A CN202210113328A CN116551665A CN 116551665 A CN116551665 A CN 116551665A CN 202210113328 A CN202210113328 A CN 202210113328A CN 116551665 A CN116551665 A CN 116551665A
Authority
CN
China
Prior art keywords
adapter
axis
coordinate system
axis ray
plane
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
CN202210113328.9A
Other languages
Chinese (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.)
Robert Bosch GmbH
Original Assignee
Robert Bosch GmbH
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 Robert Bosch GmbH filed Critical Robert Bosch GmbH
Priority to CN202210113328.9A priority Critical patent/CN116551665A/en
Publication of CN116551665A publication Critical patent/CN116551665A/en
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
    • B23MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
    • B23KSOLDERING OR UNSOLDERING; WELDING; CLADDING OR PLATING BY SOLDERING OR WELDING; CUTTING BY APPLYING HEAT LOCALLY, e.g. FLAME CUTTING; WORKING BY LASER BEAM
    • B23K37/00Auxiliary devices or processes, not specially adapted for a procedure covered by only one of the other main groups of this subclass
    • B23K37/02Carriages for supporting the welding or cutting element
    • B23K37/0252Steering means
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Mechanical Engineering (AREA)
  • Robotics (AREA)
  • Physics & Mathematics (AREA)
  • Optics & Photonics (AREA)
  • Manipulator (AREA)

Abstract

本文公开了对机器人的校准传感器坐标系进行校准的方法和装置,其中,根据本公开的一个方面的一种方法包括:基于机器人的适配器在运动过程中与校准传感器的相交的X轴光线和Y轴光线的触碰,确定所述X轴光线和所述Y轴光线在机器人基座坐标系中的姿态,其中,所述校准传感器被用于对所述适配器的位姿进行校准,所述X轴光线和所述Y轴光线的交点是所述校准传感器坐标系的坐标原点;以及基于所述适配器在运动过程中与所述X轴光线和所述Y轴光线的触碰,确定所述X轴光线和所述Y轴光线的交点在所述机器人基座坐标系中的位置。

This paper discloses a method and apparatus for calibrating a calibration sensor coordinate system of a robot, wherein a method according to an aspect of the present disclosure includes: an X-axis ray and a Y-ray intersecting the calibration sensor based on an adapter of the robot during motion Axis rays are touched to determine the poses of the X-axis rays and the Y-axis rays in the robot base coordinate system, wherein the calibration sensor is used to calibrate the pose of the adapter, and the X The intersection point of the axis ray and the Y-axis ray is the coordinate origin of the calibration sensor coordinate system; and based on the touch of the adapter with the X-axis ray and the Y-axis ray during motion, determine the X The position of the intersection of the axis ray and the Y-axis ray in the coordinate system of the robot base.

Description

对机器人的校准传感器坐标系进行校准的方法和装置Method and device for calibrating a calibration sensor coordinate system of a robot

技术领域technical field

本公开总体上涉及机器人技术,更具体地,涉及用于对机器人的校准传感器坐标系进行校准的方法和装置。The present disclosure relates generally to robotics, and more particularly to methods and apparatus for calibrating a calibration sensor coordinate system of a robot.

背景技术Background technique

随着机器人技术的快速发展,工业机器人被越来越广泛地应用于各种工业领域,如焊接、装配等等。With the rapid development of robot technology, industrial robots are more and more widely used in various industrial fields, such as welding, assembly and so on.

在工业生产的现场,取决于生产任务的实际需求,需要在工业机器人的末端(通常是法兰盘)上固定一个适配器(或工具),例如,对于焊接机器人来说就是焊枪。要想让机器人能够准确完成所指定的任务,一个必不可少的环节是对机器人的适配器的端点(即工具中心点(tool center point,TCP),例如,焊针尖部)进行校准,明确其相对于作为基础的机器人基座(robot base,RB)坐标系的位置和姿态,这样的校准可以借助专门设置的校准传感器来进行。然而,缺少对校准传感器进行自动校准的方法。In the field of industrial production, depending on the actual requirements of the production task, it is necessary to fix an adapter (or tool) on the end of the industrial robot (usually a flange), for example, a welding torch for a welding robot. In order for the robot to accurately complete the specified tasks, an essential link is to calibrate the end point of the robot adapter (that is, the tool center point (TCP), for example, the tip of the welding needle) to clarify its relative Based on the position and orientation of the robot base (RB) coordinate system as the basis, such calibration can be performed with the help of specially set calibration sensors. However, methods for automatic calibration of calibration sensors are lacking.

发明内容Contents of the invention

在发明内容部分中,以简化的形式介绍一些选出的概念,其将在下面的具体实施方式部分中被进一步描述。该发明内容部分并非是要标识出所要求保护的主题的任何关键特征或必要特征,也不是要被用于帮助确定所要求保护的主题的范围。In the Summary section, a selection of concepts are introduced in a simplified form that are further described below in the Detailed Description section. This Summary is not intended to identify any key features or essential features of the claimed subject matter, nor is it intended to be used as an aid in determining the scope of the claimed subject matter.

根据本公开的一个方面,提供了一种用于对机器人的校准传感器坐标系进行校准的方法,所述方法包括:基于机器人的适配器在运动过程中与校准传感器的相交的X轴光线和Y轴光线的触碰,确定所述X轴光线和所述Y轴光线在机器人基座坐标系中的姿态,其中,所述校准传感器被用于对所述适配器的位姿进行校准,所述X轴光线和所述Y轴光线的交点是所述校准传感器坐标系的坐标原点;以及基于所述适配器在运动过程中与所述X轴光线和所述Y轴光线的触碰,确定所述X轴光线和所述Y轴光线的交点在所述机器人基座坐标系中的位置。According to one aspect of the present disclosure, there is provided a method for calibrating a calibration sensor coordinate system of a robot, the method comprising: an X-axis ray and a Y-axis based on an adapter of the robot intersecting the calibration sensor during motion The touch of the light rays determines the poses of the X-axis rays and the Y-axis rays in the robot base coordinate system, wherein the calibration sensor is used to calibrate the pose of the adapter, and the X-axis The intersection point of the ray and the Y-axis ray is the coordinate origin of the calibration sensor coordinate system; and the X-axis is determined based on the touch of the adapter with the X-axis ray and the Y-axis ray during motion The position of the intersection of the ray and the Y-axis ray in the coordinate system of the robot base.

根据本公开的另一个方面,提供了一种计算设备,所述计算设备包括:至少一个处理器;以及存储器,其耦合到所述至少一个处理器并用于存储指令,其中,所述指令在由所述至少一个处理器执行时,使得所述至少一个处理器:基于机器人的适配器在运动过程中与校准传感器的相交的X轴光线和Y轴光线的触碰,确定所述X轴光线和所述Y轴光线在机器人基座坐标系中的姿态,其中,所述校准传感器被用于对所述适配器的位姿进行校准,所述X轴光线和所述Y轴光线的交点是所述校准传感器坐标系的坐标原点;以及基于所述适配器在运动过程中与所述X轴光线和所述Y轴光线的触碰,确定所述X轴光线和所述Y轴光线的交点在所述机器人基座坐标系中的位置。According to another aspect of the present disclosure, there is provided a computing device comprising: at least one processor; and a memory coupled to the at least one processor and configured to store instructions, wherein the instructions are executed by When the at least one processor is executed, the at least one processor: based on the touch of the X-axis ray and the Y-axis ray intersecting the calibration sensor during the movement of the adapter of the robot, determine the X-axis ray and the Y-axis ray. The posture of the Y-axis ray in the robot base coordinate system, wherein the calibration sensor is used to calibrate the posture of the adapter, and the intersection of the X-axis ray and the Y-axis ray is the calibration The coordinate origin of the sensor coordinate system; and based on the touch of the adapter with the X-axis light and the Y-axis light during the movement, determine the intersection point of the X-axis light and the Y-axis light in the robot The position in the coordinate system of the base.

根据本公开的再一个方面,提供了一种用于对机器人的校准传感器坐标系进行校准的装置,所述装置包括:用于基于机器人的适配器在运动过程中与校准传感器的相交的X轴光线和Y轴光线的触碰,确定所述X轴光线和所述Y轴光线在机器人基座坐标系中的姿态的模块,其中,所述校准传感器被用于对所述适配器的位姿进行校准,所述X轴光线和所述Y轴光线的交点是所述校准传感器坐标系的坐标原点;以及用于基于所述适配器在运动过程中与所述X轴光线和所述Y轴光线的触碰,确定所述X轴光线和所述Y轴光线的交点在所述机器人基座坐标系中的位置的模块。According to still another aspect of the present disclosure, there is provided an apparatus for calibrating a calibration sensor coordinate system of a robot, the apparatus comprising: an X-axis ray used for intersecting the calibration sensor based on an adapter of the robot during motion Touching with the Y-axis light, a module for determining the attitude of the X-axis light and the Y-axis light in the robot base coordinate system, wherein the calibration sensor is used to calibrate the pose of the adapter , the intersection of the X-axis light and the Y-axis light is the coordinate origin of the calibration sensor coordinate system; touch, a module for determining the position of the intersection of the X-axis ray and the Y-axis ray in the coordinate system of the robot base.

根据本公开的又一个方面,提供了一种计算机可读存储介质,其上存储有指令,所述指令在由至少一个处理器执行时,使得所述至少一个处理器执行本文中描述的方法。According to yet another aspect of the present disclosure, there is provided a computer-readable storage medium having stored thereon instructions which, when executed by at least one processor, cause the at least one processor to perform the methods described herein.

根据本公开的另一个方面,提供了一种计算机程序产品,其包括指令,所述指令在由至少一个处理器执行时,使得所述至少一个处理器执行本文中描述的方法。According to another aspect of the present disclosure, there is provided a computer program product comprising instructions which, when executed by at least one processor, cause the at least one processor to perform the methods described herein.

附图说明Description of drawings

在附图中对本公开的实现以示例的形式而非限制的形式进行了说明,附图中相似的附图标记表示相同或类似的部件,其中:Implementations of the present disclosure are illustrated by way of example and not limitation in the accompanying drawings, in which like reference numerals indicate the same or similar parts, wherein:

图1示出了根据本公开的一些实现的工业机器人系统的示意图;Figure 1 shows a schematic diagram of an industrial robotic system according to some implementations of the present disclosure;

图2A示出了根据本公开的一些实现的示例性方法的流程图;Figure 2A shows a flowchart of an example method according to some implementations of the present disclosure;

图2B示出了根据本公开的一些实现的示例性操作;FIG. 2B illustrates example operations according to some implementations of the present disclosure;

图3A示出了根据本公开的一些实现,校准传感器的光线沿着适配器的主轴方向在机器人基座坐标系的XOY平面上的投影的示意图;Fig. 3A shows a schematic diagram of the projection of the light rays of the calibration sensor on the XOY plane of the robot base coordinate system along the main axis direction of the adapter according to some implementations of the present disclosure;

图3B示出了根据本公开的一些实现,校准传感器的光线沿着适配器的主轴方向在机器人基座坐标系的XOY平面上的投影的示意图;3B shows a schematic diagram of the projection of the light rays of the calibration sensor on the XOY plane of the robot base coordinate system along the main axis direction of the adapter according to some implementations of the present disclosure;

图4A示出了根据本公开的一些实现,针对不同的圆周运动适配器的相对位置关系的示意图;Fig. 4A shows a schematic diagram of the relative positional relationship of different circular motion adapters according to some implementations of the present disclosure;

图4B示出了根据本公开的一些实现的适配器的圆周运动的示意图;Figure 4B shows a schematic diagram of circular motion of an adapter according to some implementations of the present disclosure;

图5示出了根据本公开的一些实现的示例性装置的框图;以及Figure 5 shows a block diagram of an example apparatus according to some implementations of the present disclosure; and

图6示出了根据本公开的一些实现的示例性计算设备的框图。6 shows a block diagram of an example computing device according to some implementations of the disclosure.

附图标记列表List of reference signs

110:机器人 120:基座 130:操作臂110: robot 120: base 130: manipulator arm

140:末端 150:适配器 160:校准传感器140: end 150: adapter 160: calibration sensor

210:确定校准传感器的X轴光线和Y轴光线在机器人基座坐标系中的姿态210: Determine the posture of the X-axis light and Y-axis light of the calibration sensor in the robot base coordinate system

212:确定X轴光线和Y轴光线沿着适配器的主轴方向在机器人基座坐标系的XOY平面上的投影的斜率kx1和ky1 212: Determine the slope k x1 and k y1 of the projection of the X-axis ray and the Y-axis ray along the main axis direction of the adapter on the XOY plane of the robot base coordinate system

214:确定适配器在机器人基座坐标系中的初始姿态214: Determine the initial pose of the adapter in the robot base coordinate system

216:确定X轴光线和Y轴光线沿着第一次姿态调整后的适配器的主轴方向在XOY平面上的投影的斜率kx2和ky2 216: Determine the slope k x2 and k y2 of the projection of the X-axis ray and the Y-axis ray along the main axis direction of the adapter after the first attitude adjustment on the XOY plane

218:确定X轴光线和Y轴光线在机器人基座坐标系中的姿态218: Determine the posture of the X-axis light and the Y-axis light in the coordinate system of the robot base

220:确定X轴光线和Y轴光线的交点在机器人基座坐标系中的位置220: Determine the position of the intersection of the X-axis ray and the Y-axis ray in the coordinate system of the robot base

510:第一模块 520:第二模块510: first module 520: second module

610:处理器 620:存储器610: Processor 620: Memory

具体实施方式Detailed ways

在以下的说明书中,出于解释的目的,阐述了大量具体细节。然而,应当理解的是,本公开的实现无需这些具体细节就可以实施。在其它实例中,并未详细示出公知的电路、结构和技术,以免影响对说明书的理解。In the following description, for purposes of explanation, numerous specific details are set forth. However, it is understood that practice of the present disclosure may be practiced without these specific details. In other instances, well-known circuits, structures and techniques have not been shown in detail in order not to obscure the understanding of this description.

说明书通篇中对“一个实现”、“实现”、“示例性实现”、“一些实现”、“各种实现”等的引述表示所描述的本公开的实现可以包括特定的特征、结构或特性,然而,并不是说每个实现都必须要包含这些特定的特征、结构或特性。此外,一些实现可以具有针对其它实现描述的特征中的一些、全部,或者不具有针对其它实现描述的特征。References throughout the specification to "one implementation," "an implementation," "example implementation," "some implementations," "various implementations," etc. mean that the described implementations of the present disclosure may include a particular feature, structure, or characteristic , however, does not mean that every implementation must contain these particular features, structures, or characteristics. Furthermore, some implementations may have some, all, or none of the features described for other implementations.

以最有助于理解所要求保护的主题的方式,可能会将各种操作描述为依次序的多个分立的动作或操作。然而,描述的次序并不应当被解释为暗示这些操作必然是依赖于次序的。尤其是,这些操作可以不按照所呈现的次序来执行。在另外的一些实现中,还可以执行各种另外的操作,和/或忽略各种已经描述的操作。Various operations may be described as multiple discrete acts or operations, in sequence, in a manner that is most helpful in understanding the claimed subject matter. However, the order of description should not be construed as to imply that these operations are necessarily order-dependent. In particular, these operations may be performed out of the order presented. In some other implementations, various additional operations may also be performed, and/or various operations already described may be omitted.

在说明书和权利要求书中,可能会出现的短语“A和/或B”用来表示以下之一:(A)、(B)、(A和B)。类似地,可能会出现的短语“A、B和/或C”用来表示以下之一:(A)、(B)、(C)、(A和B)、(A和C)、(B和C)、(A和B和C)。In the specification and claims, the phrase "A and/or B" may appear to indicate one of the following: (A), (B), (A and B). Similarly, the phrase "A, B, and/or C" may appear to indicate one of the following: (A), (B), (C), (A and B), (A and C), (B and C), (A and B and C).

在说明书和权利要求书中,可能会用到术语“耦合”和“连接”及其派生词。需要理解的是,这些术语并非是要作为彼此的同义词。相反,在特定的实现中,“连接”用于表示两个或更多部件彼此直接物理或电接触,而“耦合”则用于表示两个或更多部件彼此协作或交互,但是它们可能、也可能不直接物理或电接触。In the specification and claims, the terms "coupled" and "connected", along with their derivatives, may be used. It should be understood that these terms are not intended as synonyms for each other. In contrast, within a particular implementation, "connected" is used to indicate that two or more components are in direct physical or electrical contact with each other, and "coupled" is used to indicate that two or more components co-operate or interact with each other, but they may, There may also be no direct physical or electrical contact.

对于工业机器人应用来说,固定在机器人的末端的适配器(或工具)的位姿需要首先被进行校准,这样才能确保适配器能够正确地完成所需要的复杂动作。这样的校准可以借助专门设置的校准传感器来进行。校准传感器可以包括在同一个水平面上布置的两个对射型光电传感器,其中,每一个对射型光电传感器包括用于发射光线的发射部、以及在相对位置处设置的用于感测这个对射型光电传感器的发射部所发射的光线的接收部,所发射的两条光线在同一个平面上并且相交。机器人的适配器按照控制命令在校准传感器的工作空间进行各种类型的运动,包括直线运动、圆周运动等等,当运动中的适配器触碰到光线时,会触发光电传感器产生相应的信号,可以基于此通过算法确定出适配器与校准传感器坐标系的相对关系,由此实现校准。For industrial robot applications, the pose of the adapter (or tool) fixed at the end of the robot needs to be calibrated first, so as to ensure that the adapter can correctly complete the required complex movements. Such calibration can be carried out by means of specially provided calibration sensors. The calibration sensor may include two through-beam photoelectric sensors arranged on the same horizontal plane, wherein each through-beam photoelectric sensor includes an emitting part for emitting light, and a sensor for sensing the pair The receiving part of the light emitted by the emitting part of the radiation photoelectric sensor, the two emitted light rays are on the same plane and intersect. The adapter of the robot performs various types of motion in the working space of the calibration sensor according to the control command, including linear motion, circular motion, etc. When the adapter in motion touches the light, it will trigger the photoelectric sensor to generate a corresponding signal, which can be based on This algorithm determines the relative relationship between the adapter and the calibration sensor coordinate system, thereby achieving calibration.

在对工业机器人系统进行设计时,校准传感器与机器人基座之间的相对位置关系是明确的。换句话说,无论是校准传感器坐标系的坐标原点在机器人基座坐标系中的位置、还是校准传感器坐标系在机器人基座坐标系中的姿态,均是在设计时就明确好的。然而,在实际应用场景中,取决于安装精度、拆装次数等多种原因,校准传感器的准确位姿相对于其设计值可能会存在一定的偏移。这种偏移,即便很小,也会对校准传感器所要做的工作(例如,对适配器进行校准)的结果产生不利的影响,并因此可能导致适配器工作异常。When designing an industrial robot system, the relative positional relationship between the calibration sensor and the robot base is clear. In other words, whether it is the position of the coordinate origin of the calibration sensor coordinate system in the robot base coordinate system, or the posture of the calibration sensor coordinate system in the robot base coordinate system, it is clear at the time of design. However, in actual application scenarios, depending on various reasons such as installation accuracy and disassembly times, the accurate pose of the calibration sensor may deviate from its design value. Such offsets, even small ones, can adversely affect the results of what is being done to calibrate the sensor (eg, calibrating the adapter), and thus may cause the adapter to function incorrectly.

要对校准传感器坐标系本身再进行校准,一种可能的方式是通过手动操作控制机器人做一定的动作,来使机器人获知偏移后的校准传感器坐标系的原点和姿态。但是,手动校准的方式的精确度仍存在一定问题。另一种可能的方式是引入其他的外部设备,例如激光跟踪仪、高精度的机械部件等等,来实现对校准传感器坐标系的校准。然而,这种方式带来的额外的高成本也是不可忽视的不利因素。To calibrate the calibration sensor coordinate system itself, one possible way is to control the robot to do certain actions through manual operation, so that the robot can know the origin and attitude of the offset calibration sensor coordinate system. However, the accuracy of the manual calibration method still has certain problems. Another possible way is to introduce other external devices, such as laser trackers, high-precision mechanical parts, etc., to realize the calibration of the calibration sensor coordinate system. However, the additional high cost brought by this method is also a disadvantage that cannot be ignored.

本公开给出了用于对机器人的校准传感器坐标系进行校准的有效机制。The present disclosure presents an efficient mechanism for calibrating a robot's calibration sensor coordinate system.

下面首先参考图1,其示出了根据本公开的一些实现的工业机器人系统100的示意图。如图所示的系统100包括机器人110。典型地,机器人110包括基座120、操作臂130、以及固定在操作臂的末端140(通常是法兰盘)的适配器(或工具)150。对于焊接机器人来说,适配器150就是焊枪。在机器人110的控制装置(未示出)的控制下,操作臂130以及适配器150做期望的运动,从而完成指定的任务。Reference is first made below to FIG. 1 , which shows a schematic diagram of an industrial robot system 100 according to some implementations of the present disclosure. The system 100 as shown includes a robot 110 . Typically, the robot 110 includes a base 120, a manipulation arm 130, and an adapter (or tool) 150 secured to a distal end 140 (typically a flange) of the manipulation arm. For a welding robot, the adapter 150 is the welding torch. Under the control of the control device (not shown) of the robot 110, the manipulator 130 and the adapter 150 make desired movements, so as to complete the designated tasks.

工业机器人系统100还包括校准传感器160。典型地,校准传感器160包括在同一个水平面上布置的两个对射型光电传感器,其中,每一个对射型光电传感器包括用于发射光线的发射部、以及在相对位置处设置的用于感测该发射部所发射的光线的接收部,两条光线在同一个平面上并且相互正交(如图1中虚线所示)。在校准操作过程中,适配器150在校准传感器160的工作空间(两条光线的覆盖范围内)内运动的过程中会与光线发生触碰,其主轴切割了光线,这一触碰情况会被该光线的接收部所检测到,对适配器150的校准基于这样的检测结果来完成。The industrial robotic system 100 also includes a calibration sensor 160 . Typically, the calibration sensor 160 includes two through-beam photoelectric sensors arranged on the same horizontal plane, wherein each through-beam photoelectric sensor includes an emitting part for emitting light, and a sensor for sensing Measure the receiving part of the light emitted by the emitting part, and the two rays are on the same plane and are perpendicular to each other (as shown by the dotted line in Figure 1). During the calibration operation, when the adapter 150 moves within the working space of the calibration sensor 160 (within the coverage of the two rays), it will touch the rays, and its main axis will cut the rays, and this contact will be detected by the adapter 160. The light is detected by the receiving portion, and the calibration of the adapter 150 is performed based on such detection results.

机器人110的基座坐标系,下文中简称为RB-xyz,是其它坐标系的参考坐标系。适配器150有自己的坐标系,即工具坐标系,下文中简称为AE-xyz。同样,校准传感器160也有自己的坐标系,下文中简称为PS-xyz。PS-xyz以相互正交的两条光线分别作为该坐标系的X轴和Y轴,因此X轴光线和Y轴光线的交点即为该坐标系的坐标原点,该坐标系的Z轴则可以根据右手定则确定出来。The base coordinate system of the robot 110 , hereinafter referred to simply as RB-xyz, is a reference coordinate system for other coordinate systems. The adapter 150 has its own coordinate system, that is, the tool coordinate system, hereinafter referred to as AE-xyz for short. Likewise, the calibration sensor 160 also has its own coordinate system, hereinafter referred to as PS-xyz for short. PS-xyz uses two mutually orthogonal rays as the X-axis and Y-axis of the coordinate system respectively, so the intersection of the X-axis rays and the Y-axis rays is the coordinate origin of the coordinate system, and the Z-axis of the coordinate system can be determined according to the right-hand rule.

如前所述,在实际应用场景中,校准传感器160的准确位姿相对于其最初的设计值可能会存在一定的偏移,因此有必要对校准传感器坐标系PS-xyz进行校准。As mentioned above, in actual application scenarios, the exact pose of the calibration sensor 160 may have a certain offset relative to its original design value, so it is necessary to calibrate the calibration sensor coordinate system PS-xyz.

对PS-xyz进行校准的过程是基于机器人基座坐标系RB-xyz来进行的。在根据本公开的一些实现中,还可以设定一平移后的机器人基座坐标系并以此为基础进行计算。该平移后的坐标系是通过平移RB-xyz得到的,平移量可以满足令该平移后的坐标系的坐标原点尽量接近PS-xyz的坐标原点,例如,可以将该平移后的坐标系的坐标原点设置为PS-xyz的坐标原点的设计值。因此,该平移后的坐标系与RB-xyz之间的相对位置关系是明确的。应理解的是,本文中所称的机器人基座坐标系RB-xyz,既可以是指初始的机器人基座坐标系,也可以是平移后的机器人基座坐标系。The process of calibrating PS-xyz is based on the robot base coordinate system RB-xyz. In some implementations according to the present disclosure, a translated robot base coordinate system can also be set and calculated based on this. The translated coordinate system is obtained by translating RB-xyz. The amount of translation can satisfy the coordinate origin of the translated coordinate system as close as possible to the coordinate origin of PS-xyz. For example, the coordinates of the translated coordinate system can be The origin is set to the design value of the coordinate origin of PS-xyz. Therefore, the relative positional relationship between the translated coordinate system and RB-xyz is clear. It should be understood that the robot base coordinate system RB-xyz referred to herein may refer to either the initial robot base coordinate system or the translated robot base coordinate system.

图2A示出了根据本公开的一些实现的示例性方法200的流程图。方法200可以用于对机器人的校准传感器坐标系PS-xyz进行校准。方法200可以由计算设备来实现,典型的计算设备可以包括处理器和存储器,这样的计算设备的示例可以包括计算机、工作站、服务器等等,然而本公开并不限于此。在根据本公开的一些实现中,所述计算设备可以是专用于对机器人的校准传感器坐标系进行校准的控制设备,其能够与校准传感器(如图1所示的校准传感器160)进行通信以接收校准传感器160传送的检测信号。在一些实现中,所述计算设备可以与机器人(如图1所示的机器人110)的控制装置进行通信,例如,可以命令机器人110执行期望的运动从而与校准传感器160产生交互。在一些实现中,所述计算设备可以是机器人110的控制装置。FIG. 2A shows a flowchart of an example method 200 according to some implementations of the disclosure. Method 200 may be used to calibrate a robot's calibration sensor coordinate system PS-xyz. The method 200 may be implemented by a computing device. A typical computing device may include a processor and a memory. Examples of such a computing device may include a computer, a workstation, a server, etc., but the present disclosure is not limited thereto. In some implementations according to the present disclosure, the computing device may be a control device dedicated to calibrating the calibration sensor coordinate system of the robot, which can communicate with the calibration sensor (such as the calibration sensor 160 shown in FIG. 1 ) to receive The detection signal transmitted by the sensor 160 is calibrated. In some implementations, the computing device may communicate with a control device of a robot (such as robot 110 shown in FIG. 1 ), eg, robot 110 may be commanded to perform desired motions to interact with calibration sensors 160 . In some implementations, the computing device may be a control device for robot 110 .

参见图2A,方法200开始于步骤210,在该步骤中,基于机器人的适配器在运动过程中与校准传感器的相交的X轴光线和Y轴光线的触碰,确定所述X轴光线和所述Y轴光线在机器人基座坐标系中的姿态。本发明实施例中的所述校准传感器的相交的X轴光线和Y轴光线可以是相互正交。Referring to FIG. 2A, the method 200 starts at step 210. In this step, the X-axis light and the Y-axis light of the calibration sensor are determined based on the touching of the adapter of the robot with the intersecting X-axis light and the Y-axis light of the calibration sensor during motion. The attitude of the Y-axis ray in the coordinate system of the robot base. The intersecting X-axis rays and Y-axis rays of the calibration sensor in the embodiment of the present invention may be mutually orthogonal.

下面先转到图2B,其示出了根据本公开的一些实现的示例性操作。图2B所示的示例性操作可以对应于步骤210的一种实现方式。如图2B所示,首先可以执行操作212,在该操作中,确定校准传感器的X轴光线和Y轴光线沿着适配器的主轴方向在机器人基座坐标系的XOY平面上的投影的斜率kx1和ky1Turning first to FIG. 2B , which illustrates example operations according to some implementations of the present disclosure. The exemplary operations shown in FIG. 2B may correspond to an implementation of step 210 . As shown in FIG. 2B , first, operation 212 can be performed, in which the slope k x1 of the projection of the X-axis ray and Y-axis ray of the calibration sensor along the main axis direction of the adapter on the XOY plane of the robot base coordinate system can be determined and k y1 .

参见图3A,其示出了根据本公开的一些实现,校准传感器(如图1所示的校准传感器160)的光线沿着适配器(如图1所示的适配器150)的主轴方向在机器人基座坐标系(即RB-xyz)的XOY平面上的投影的示意图。在图3A中,相交的两条实线表示校准传感器160的X轴光线和Y轴光线。带箭头的线则表示适配器150,或者更具体地说,可以表示适配器150的主轴方向(对于焊枪来说,就是其焊针的轴向)。当适配器150在校准传感器160的工作空间内运动时,例如直线或圆周运动,主轴会切割校准传感器160的X轴光线和Y轴光线,如图中所示的那样。Referring to FIG. 3A , which shows that, according to some implementations of the present disclosure, light from a calibration sensor (such as calibration sensor 160 as shown in FIG. 1 ) passes through the robot base in the direction of the main axis of an adapter (such as adapter 150 as shown in FIG. 1 ). Schematic illustration of the projection on the XOY plane of the coordinate system (ie RB-xyz). In FIG. 3A , the two intersecting solid lines represent the X-axis light and the Y-axis light of the calibration sensor 160 . The line with the arrow indicates the adapter 150, or more specifically, may indicate the main axis direction of the adapter 150 (for a welding gun, it is the axial direction of its welding pin). When the adapter 150 moves within the working space of the calibration sensor 160 , such as linear or circular motion, the spindle will cut the X-axis light and the Y-axis light of the calibration sensor 160 , as shown in the figure.

图3A中的虚线则分别表示校准传感器160的X轴光线和Y轴光线沿着适配器150的主轴方向在RB-xyz的XOY平面上的投影。这里,对于所述X轴光线来说,其在RB-xyz的XOY平面上的投影可视为适配器150的主轴(当切割所述X轴光线时)与X轴光线所形成的平面与RB-xyz的XOY平面的交线。同样地,所述Y轴光线的投影可视为适配器150的主轴(当切割所述Y轴光线时)与Y轴光线所形成的平面与RB-xyz的XOY平面的交线。取决于适配器150的姿态(例如,其主轴可能垂直、或者不垂直于RB-xyz的XOY平面),这样的投影可以是正投影或斜投影。The dotted lines in FIG. 3A respectively represent the projections of the X-axis light and the Y-axis light of the calibration sensor 160 on the XOY plane of RB-xyz along the main axis direction of the adapter 150 . Here, for the X-axis ray, its projection on the XOY plane of RB-xyz can be regarded as the plane formed by the main axis of the adapter 150 (when cutting the X-axis ray) and the X-axis ray and RB-xyz. The intersection line of the XOY plane of xyz. Likewise, the projection of the Y-axis ray can be regarded as the intersection of the plane formed by the main axis of the adapter 150 (when cutting the Y-axis ray) and the Y-axis ray and the XOY plane of RB-xyz. Depending on the orientation of the adapter 150 (eg, its main axis may be perpendicular, or not, to the XOY plane of RB-xyz), such projection may be orthographic or oblique.

下面转到图3B,其同样示出了根据本公开的一些实现,校准传感器的光线沿着适配器的主轴方向在RB-xyz的XOY平面上的投影的示意图。相比于图3A,图3B描绘的是RB-xyz的XOY平面上的情况,这里,x_RB和y_RB分别表示RB-xyz的X轴和Y轴,而x_LS和y_LS则分别表示校准传感器的X轴光线和Y轴光线在RB-xyz的XOY平面上的投影。可以理解,图3中所示的两条投影线与RB-xyz的X轴和Y轴之间的相对位置关系仅仅是示意性的。Now turn to FIG. 3B , which also shows a schematic diagram of the projection of the light rays of the calibration sensor on the XOY plane of RB-xyz along the main axis direction of the adapter according to some implementations of the present disclosure. Compared to Figure 3A, Figure 3B depicts the situation on the XOY plane of RB-xyz, where x_RB and y_RB represent the X-axis and Y-axis of RB-xyz, respectively, while x_LS and y_LS represent the X-axis of the calibration sensor, respectively Projection of rays and Y-axis rays on the XOY plane of RB-xyz. It can be understood that the relative positional relationship between the two projection lines shown in FIG. 3 and the X-axis and Y-axis of RB-xyz is only schematic.

此外要注意的是,尽管校准传感器的X轴光线和Y轴光线是相互正交的,但其投影线并不相互垂直,这是因为校准传感器的位姿相对于其设计值存在着偏移。因此,在操作212中,分别确定x_LS的斜率kx1、以及y_LS的斜率ky1In addition, it should be noted that although the X-axis rays and Y-axis rays of the calibration sensor are orthogonal to each other, their projection lines are not perpendicular to each other, because the pose of the calibration sensor is offset relative to its design value. Therefore, in operation 212, the slope k x1 of x_LS and the slope k y1 of y_LS are determined, respectively.

根据本公开的一些实现,斜率kx1和ky1的确定可以包括,基于适配器150以指定的速度在平行于RB-xyz的XOY平面的平面上做与校准传感器160的X轴光线触碰的至少两次直线运动的触碰结果,来确定x_LS的斜率kx1,其中,所述至少两次直线运动的轨迹不在同一条直线上;以及,基于适配器150以指定的速度在平行于RB-xyz的XOY平面的平面上做与校准传感器160的Y轴光线触碰的至少两次直线运动的触碰结果,来确定y_LS的斜率ky1,其中,所述至少两次直线运动的轨迹不在同一条直线上。According to some implementations of the present disclosure, the determination of the slopes k x1 and ky1 may include, based on the adapter 150 doing at least the X-axis ray contact with the calibration sensor 160 at a specified speed on a plane parallel to the XOY plane of RB-xyz. The slope k x1 of x_LS is determined from the touch results of two straight-line movements, wherein the trajectories of the at least two straight-line movements are not on the same straight line; On the plane of the XOY plane, the touch result of at least two linear movements touching the Y-axis light of the calibration sensor 160 is used to determine the slope k y1 of y_LS, wherein the trajectories of the at least two linear movements are not on the same straight line superior.

以x_LS的斜率kx1为例,图3B中示出了根据本公开的一些实现的斜率确定方式。如图所示,可以以P1为起点,令适配器150以指定速度v做平行于y_RB的直线运动到P2,其间会触碰/切割X轴光线并因此会被校准传感器160检测到。根据检测到的触碰结果,可以分别获知从运动起点P1到触碰点的时间、以及从触碰点到终点P2的时间。相应地,这两段的长度,即j1和j2可以被计算出来。接着,可以相对于P1平移距离d到P3点,令适配器150以P3为起点以指定速度v做平行于y_RB的同样长度的直线运动到终点P4。同样可以根据触碰结果计算出j3和j4。这样,x_LS在RB-xyz的XOY平面上的斜率可以被表示为:Taking the slope k x1 of x_LS as an example, FIG. 3B shows a slope determination method according to some implementations of the present disclosure. As shown in the figure, starting from P1, the adapter 150 can make a linear motion parallel to y_RB at a specified speed v to P2, during which it will touch/cut the X-axis light and thus be detected by the calibration sensor 160 . According to the detected touch result, the time from the movement start point P1 to the touch point and the time from the touch point to the end point P2 can be obtained respectively. Correspondingly, the lengths of these two segments, j1 and j2, can be calculated. Then, relative to P1, the distance d can be translated to point P3, so that the adapter 150 can make a straight line of the same length parallel to y_RB with P3 as the starting point and the specified speed v to the end point P4. Similarly, j 3 and j 4 can be calculated according to the touch result. In this way, the slope of x_LS on the XOY plane of RB-xyz can be expressed as:

以类似的方式,可以通过令适配器150做与Y轴光线触碰的直线运动,根据触碰结果计算出y_LS的斜率ky1。具体操作在这里不再赘述。In a similar manner, the slope k y1 of y_LS can be calculated according to the touch result by making the adapter 150 make a linear movement in touch with the Y-axis light. The specific operation will not be repeated here.

要注意的是,关于斜率的确定,其它的实现方式也是可行的,本公开并不限于上面给出的特定示例。It should be noted that, regarding the determination of the slope, other implementations are also possible, and the present disclosure is not limited to the specific examples given above.

继续参见图2B,接下来前进到操作214,在该操作中,确定所述适配器在所述机器人基座坐标系中的初始姿态。在分别确定了X轴光线和Y轴光线在RB-xyz的XOY平面上的投影的斜率之后,可以通过令适配器150在校准传感器160的工作空间中进行指定的运动,来确定出适配器150的初始姿态。Continuing to refer to FIG. 2B , proceeding next to operation 214 , in which an initial pose of the adapter in the robot base coordinate system is determined. After determining the slopes of the projections of the X-axis ray and the Y-axis ray on the XOY plane of RB-xyz, the initial position of the adapter 150 can be determined by making the adapter 150 perform a specified movement in the working space of the calibration sensor 160. attitude.

更具体地,根据本公开的一些实现,可以通过令适配器150以指定的速度和指定的半径在平行于RB-xyz的XOY平面的平面上做与校准传感器160的X轴光线和Y轴光线触碰的三次圆周运动,根据触碰结果通过计算确定出适配器150的初始姿态。More specifically, according to some implementations of the present disclosure, the X-axis ray and the Y-axis ray of the calibration sensor 160 can be contacted by the adapter 150 at a specified speed and a specified radius on a plane parallel to the XOY plane of RB-xyz. According to the three circular movements of the touch, the initial posture of the adapter 150 is determined through calculation according to the touch result.

图4A示出了根据本公开的一些实现,针对不同的圆周运动适配器的相对位置关系。图4A中两条相交的线表示校准传感器160的X轴光线和Y轴光线;带箭头的线表示适配器150,箭头尖部表示适配器150的端点(通常也称为工具中心点,TCP);最底部的水平线则表示RB-xyz的XOY平面。首先,可以令适配器150的端点处于校准传感器160的工作空间中的某一位置,以此为中心令适配器150在平行于RB-xyz的XOY平面的平面上做第一次圆周运动,第一次圆周运动与校准传感器160的X轴光线和Y轴光线各触碰两次(后面可以根据触碰结果计算出第一次圆周运动的圆心位置(xA,yA))。然后,令适配器150沿着垂直于RB-xyz的XOY平面的方向移动一个垂直距离h(在这里示出为向下移动),在平行于RB-xyz的XOY平面上做分别与校准传感器160的X轴光线和Y轴光线各触碰两次的第二次圆周运动(后面可以根据触碰结果计算出第二次圆周运动的圆心位置(xB,yB));类似地,可以令适配器150沿着平行于RB-xyz的XOY平面的方向移动一个水平位移l,在平行于RB-xyz的XOY平面上做分别与校准传感器160的X轴光线和Y轴光线各触碰两次的第三次圆周运动(后面可以根据触碰结果计算出第三次圆周运动的圆心位置(xC,yC))。FIG. 4A illustrates relative positional relationships for different circular motion adapters, according to some implementations of the present disclosure. Two intersecting lines in FIG. 4A represent the X-axis ray and the Y-axis ray of the calibration sensor 160; the line with the arrow represents the adapter 150, and the tip of the arrow represents the end point of the adapter 150 (also commonly referred to as the tool center point, TCP); The bottom horizontal line represents the XOY plane of RB-xyz. First of all, the end point of the adapter 150 can be placed at a certain position in the working space of the calibration sensor 160, and the adapter 150 can make the first circular motion on a plane parallel to the XOY plane of RB-xyz with this as the center. The circular motion touches the X-axis light and the Y-axis light of the calibration sensor 160 twice respectively (later, the center position (x A , y A ) of the first circular motion can be calculated according to the touch result). Then, make the adapter 150 move a vertical distance h along the direction perpendicular to the XOY plane of RB-xyz (shown as moving downwards here), and do the alignment with the calibration sensor 160 on the XOY plane parallel to RB-xyz respectively. The second circular motion in which the X-axis light and the Y-axis light touch each twice (the center position (x B , y B ) of the second circular motion can be calculated later based on the touch result); similarly, the adapter can be 150 moves a horizontal displacement l along the direction parallel to the XOY plane of RB-xyz, and makes the first contact twice with the X-axis light and the Y-axis light of the calibration sensor 160 respectively on the XOY plane parallel to RB-xyz Three circular motions (the center position (x C , y C ) of the third circular motion can be calculated later based on the touch result).

下面参考图4B,其示出了根据本公开的一些实现的适配器的圆周运动的示意图。适配器150以指定的速度和指定的半径在平行于RB-xyz的XOY平面的平面上做圆周运动(例如,这里是上述的第一次圆周运动),与校准传感器160的X轴和Y轴分别触碰两次,在图4B中即显示为圆与RB-xyz的XOY平面上的x_LS和y_LS(即校准传感器160的X轴光线和Y轴光线沿着适配器150的主轴方向在RB-xyz的XOY平面上的投影)分别相交两次。Reference is now made to FIG. 4B , which shows a schematic diagram of circular motion of an adapter according to some implementations of the present disclosure. The adapter 150 makes a circular motion (e.g., here the first circular motion described above) on a plane parallel to the XOY plane of RB-xyz at a specified speed and a specified radius, with the X and Y axes of the calibration sensor 160, respectively Touching twice, in FIG. 4B , it is shown as a circle and x_LS and y_LS on the XOY plane of RB-xyz (that is, the X-axis light and the Y-axis light of the calibration sensor 160 are along the main axis direction of the adapter 150 in the direction of the RB-xyz projection on the XOY plane) intersect twice respectively.

以与x_LS的两次触碰(图中示为P_x1和P_x2)为例,适配器150的运动速度和运动半径已知,就可以计算出P_x1到P_x2这一段圆弧的弧长,进而可以求得该圆周运动的圆心到x_LS的距离,在这里表示为dx。以同样的方式,也可以求得该圆周运动的圆心到y_LS的距离dy,在这里不再赘述。Taking the two touches with x_LS (shown as P_x1 and P_x2 in the figure) as an example, the moving speed and moving radius of the adapter 150 are known, and the arc length of the arc from P_x1 to P_x2 can be calculated, and then can be obtained The distance from the center of the circular movement to x_LS is denoted here as d x . In the same manner, the distance d y from the center of the circular motion to y_LS can also be obtained, which will not be repeated here.

x_LS的斜率kx1、以及y_LS的斜率ky1在前面的操作212中已经被确定出来,在此基础上,该圆周运动的圆心坐标(x,y)可以被表示为:The slope k x1 of x_LS and the slope k y1 of y_LS have been determined in the previous operation 212. On this basis, the coordinates (x, y) of the center of the circular motion can be expressed as:

由此,第一次圆周运动的圆心位置(xA,yA)被计算出来。以同样的方式,针对第二次圆周运动和第三次圆周运动,也可以计算出它们的圆心位置(xB,yB)、(xC,yC)。From this, the center position (x A , y A ) of the first circular motion is calculated. In the same way, for the second circular motion and the third circular motion, their center positions (x B , y B ), (x C , y C ) can also be calculated.

在适配器150的三次圆周运动的圆心位置已经被分别确定出来之后,下一步,可以计算出圆心位置之间的相对偏移。具体地,第二次圆周运动的圆心位置(xB,yB)相对于第一次圆周运动的圆心位置(xA,yA)的第一偏移Δ1可以被表示为:After the center positions of the three circular motions of the adapter 150 have been respectively determined, in the next step, the relative offset between the positions of the circle centers can be calculated. Specifically, the first offset Δ 1 of the center position (x B , y B ) of the second circular motion relative to the center position (x A , y A ) of the first circular motion can be expressed as:

Δ1=(Δx1,Δy1)=(xB-xA,yB-yA)Δ 1 =(Δx 1 ,Δy 1 )=(x B -x A ,y B -y A )

而第三次圆周运动的圆心位置(xC,yC)相对于第一次圆周运动的圆心位置(xA,yA)的第二横向偏移Δx2则可以被表示为:The second lateral offset Δx 2 of the center position (x C , y C ) of the third circular motion relative to the center position (x A , y A ) of the first circular motion can be expressed as:

Δx2=(xC-xA)Δx 2 =(x C -x A )

根据上述计算中获得的所述垂直距离h、所述水平位移l、所述第一偏移Δ1和所述第二横向偏移Δx2,可以进一步求得适配器150在RB-xyz中的初始姿态。所述初始姿态可以用适配器150的主轴在RB-xyz的YOZ平面上的投影与Z轴的夹角θy、以及在RB-xyz的XOZ平面上的投影与Z轴的夹角θx二者来表示。According to the vertical distance h, the horizontal displacement l, the first displacement Δ 1 and the second lateral displacement Δx 2 obtained in the above calculation, the initial position of the adapter 150 in RB-xyz can be further obtained attitude. The initial posture can be the angle θ y between the projection of the main axis of the adapter 150 on the YOZ plane of RB-xyz and the Z axis, and the angle θ x between the projection on the XOZ plane of RB-xyz and the Z axis. To represent.

更具体地,所述夹角θy和夹角θx可以被表示为:More specifically, the included angle θ y and the included angle θ x can be expressed as:

其中,lx是所述水平位移l在X轴方向上的分量。in, l x is the component of the horizontal displacement l in the X-axis direction.

换做用欧拉角来表征的话,适配器150的初始姿态可以被表示为:If it is represented by Euler angles, the initial posture of the adapter 150 can be expressed as:

要注意的是,关于适配器初始姿态的确定,其它的实现方式也是可行的,本公开并不限于上面给出的特定示例。It should be noted that, regarding the determination of the initial pose of the adapter, other implementations are also possible, and the present disclosure is not limited to the specific example given above.

继续参考图2B,接下来进行到操作216,在该操作中,确定所述X轴光线和所述Y轴光线沿着第一次姿态调整后的所述适配器的主轴方向在所述XOY平面上的投影的斜率kx2和ky2,其中,通过所述第一次姿态调整,所述适配器的姿态被调整为不同于所述初始姿态。Continuing to refer to FIG. 2B , proceed to operation 216. In this operation, it is determined that the X-axis ray and the Y-axis ray are on the XOY plane along the main axis direction of the adapter after the first attitude adjustment. The slopes k x2 and ky2 of the projections of , wherein, through the first attitude adjustment, the attitude of the adapter is adjusted to be different from the initial attitude.

继续前面的示例,在已经通过操作214确定出适配器150在RB-xyz中的初始姿态的情况下,根据本公开的一些实现,可以令机器人110进行第一次姿态调整操作,将适配器150的姿态从其初始姿态调整为一个不同的姿态。由于适配器150的初始姿态已经确定,调整后的姿态相应地也是明确的。在根据本公开的一些实现中,在确定出的适配器150的初始姿态并非垂直于RB-xyz的XOY平面的情况下,可以通过第一次姿态调整,使得适配器150的姿态被从初始姿态调整为垂直于RB-xyz的XOY平面。具体地,可以是将适配器150的主轴方向调整为垂直于RB-xyz的XOY平面,在这种情况下,适配器150的主轴在RB-xyz的YOZ平面上的投影与Z轴的夹角θy变为0度,而在RB-xyz的XOZ平面上的投影与Z轴的夹角θx也变为0度。在根据本公开的另一些实现中,在确定出的适配器150的初始姿态垂直于RB-xyz的XOY平面的情况下,可以通过第一次姿态调整,使得适配器150的姿态被从初始姿态调整为非垂直于RB-xyz的XOY平面。具体地,可以是将适配器150的主轴方向调整为非垂直于RB-xyz的XOY平面。Continuing with the previous example, in the case that the initial posture of the adapter 150 in RB-xyz has been determined through operation 214, according to some implementations of the present disclosure, the robot 110 can be made to perform the first posture adjustment operation, and the posture of the adapter 150 Adjust from its initial pose to a different pose. Since the initial posture of the adapter 150 has been determined, the adjusted posture is correspondingly unambiguous. In some implementations according to the present disclosure, when the determined initial posture of the adapter 150 is not perpendicular to the XOY plane of RB-xyz, the posture of the adapter 150 can be adjusted from the initial posture to XOY plane perpendicular to RB-xyz. Specifically, the direction of the main axis of the adapter 150 may be adjusted to be perpendicular to the XOY plane of RB-xyz. In this case, the included angle θ y between the projection of the main axis of the adapter 150 on the YOZ plane of RB-xyz and the Z axis becomes 0 degrees, and the angle θ x between the projection on the XOZ plane of RB-xyz and the Z axis also becomes 0 degrees. In other implementations according to the present disclosure, when the determined initial posture of the adapter 150 is perpendicular to the XOY plane of RB-xyz, the posture of the adapter 150 can be adjusted from the initial posture to XOY plane not perpendicular to RB-xyz. Specifically, the main axis direction of the adapter 150 may be adjusted to be non-perpendicular to the XOY plane of RB-xyz.

根据本公开的一些实现,在第一次姿态调整完成后,可以确定出校准传感器160的X轴光线和Y轴光线沿着第一次姿态调整后的适配器的主轴方向在RB-xyz的XOY平面上的投影的斜率kx2和ky2。更具体地,根据本公开的一些实现,所述斜率的确定可以包括:基于第一次姿态调整后的适配器150以指定的速度在平行于RB-xyz的XOY平面的平面上做与校准传感器160的X轴光线触碰的至少两次直线运动的触碰结果,来确定斜率kx2,其中,所述至少两次直线运动的轨迹不在同一条直线上;以及基于第一次姿态调整后的适配器150以指定的速度在平行于RB-xyz的XOY平面的平面上做与校准传感器160的Y轴光线触碰的至少两次直线运动的触碰结果,来确定斜率ky2,其中,所述至少两次直线运动的轨迹不在同一条直线上。According to some implementations of the present disclosure, after the first attitude adjustment is completed, it can be determined that the X-axis light and the Y-axis light of the calibration sensor 160 are on the XOY plane of RB-xyz along the main axis direction of the adapter after the first attitude adjustment. The slopes k x2 and k y2 of the projection on . More specifically, according to some implementations of the present disclosure, the determination of the slope may include: based on the first attitude adjustment, the adapter 150 performs an alignment with the calibration sensor 160 on a plane parallel to the XOY plane of RB-xyz at a specified speed. The slope k x2 is determined from the touch results of at least two linear movements touched by the X-axis light rays, wherein the trajectories of the at least two linear movements are not on the same straight line; and the adapter adjusted based on the first attitude 150 determines the slope ky2 from the touch result of at least two linear motions of the Y-axis light touch with the calibration sensor 160 on a plane parallel to the XOY plane of RB-xyz at a specified speed, wherein the at least The trajectories of two linear movements are not on the same straight line.

这里,对于斜率kx2和ky2的确定,可以采用与前述斜率kx1和ky1的具体示例性确定方式相同的方式来进行,在这里不再赘述。另一方面,关于斜率的确定,其它的实现方式也是可行的,本公开并不限于上面给出的特定示例。Here, the determination of the slopes k x2 and ky2 can be performed in the same manner as the specific exemplary determination of the slopes k x1 and ky1 described above, which will not be repeated here. On the other hand, regarding the determination of the slope, other implementations are also possible, and the present disclosure is not limited to the specific example given above.

然后,在操作218中,基于所述斜率kx1和ky1、所述斜率kx2和ky2、所述适配器的初始姿态以及所述第一次姿态调整后的所述适配器的姿态,确定所述X轴光线和所述Y轴光线在所述机器人基座坐标系中的姿态。Then, in operation 218, based on the slopes k x1 and ky1 , the slopes k x2 and ky2 , the initial pose of the adapter, and the pose of the adapter after the first pose adjustment, the The attitude of the X-axis ray and the Y-axis ray in the coordinate system of the robot base.

根据本公开的一些实现,确定校准传感器160的X轴光线在RB-xyz中的姿态可以包括:根据斜率kx1、斜率kx2、适配器150的初始姿态以及第一次姿态调整后的适配器150的姿态,求得RB-xyz中的第一平面和第二平面的交线,其中,所述第一平面是由表示校准传感器160的X轴光线沿着处于初始姿态的适配器150的主轴方向在RB-xyz的XOY平面上的投影在RB-xyz中的姿态的矢量和表示适配器150的初始姿态的矢量二者限定的,所述第二平面是由表示校准传感器160的X轴光线沿着第一次姿态调整后的适配器150的主轴方向在RB-xyz的XOY平面上的投影在RB-xyz中的姿态的矢量和表示第一次姿态调整后的适配器150的姿态的矢量二者限定的。According to some implementations of the present disclosure, determining the posture of the X-axis ray of the calibration sensor 160 in RB-xyz may include: according to the slope k x1 , the slope k x2 , the initial posture of the adapter 150 and the adjusted posture of the adapter 150 after the first posture Attitude, obtain the intersection of the first plane and the second plane in RB-xyz, wherein, the first plane is represented by the X-axis light of the calibration sensor 160 along the main axis direction of the adapter 150 in the initial attitude in RB - xyz on the XOY plane defined by both the vector representing the pose of the adapter 150 in RB-xyz and the vector representing the initial pose of the adapter 150, the second plane being defined by the X-axis ray representing the calibration sensor 160 along the first The projection of the main axis direction of the adapter 150 after the secondary posture adjustment on the XOY plane of RB-xyz defines the posture vector in RB-xyz and the vector representing the posture of the adapter 150 after the first posture adjustment.

这里,所述第一平面平行于下述平面甚至可能与其重合:校准传感器160的X轴光线和处于初始姿态的适配器150的主轴(当该主轴切割X轴光线时)二者所在的那个平面。Here, the first plane is parallel to and possibly coincident with the plane where both the X-axis ray of the calibration sensor 160 and the main axis of the adapter 150 in the initial posture (when the main axis cuts the X-axis ray) lie.

根据本公开的一些实现,适配器150的初始姿态可以用下述矢量来表示:According to some implementations of the present disclosure, the initial pose of the adapter 150 may be represented by the following vector:

(tanθy,tanθx,1)(tanθ y ,tanθ x ,1)

校准传感器160的X轴光线沿着处于初始姿态的适配器150的主轴方向在RB-xyz的XOY平面上的投影(即图3B中所示的x_LS)在RB-xyz中的姿态可以用下述矢量来表示:The projection of the X-axis light of the calibration sensor 160 along the main axis direction of the adapter 150 in the initial posture on the XOY plane of RB-xyz (that is, x_LS shown in FIG. 3B ) in RB-xyz can be represented by the following vector To represent:

(1,kx1,0)(1,k x1 ,0)

因此,所述第一平面可以被表示为:Therefore, the first plane can be expressed as:

同样,所述第二平面平行于下述平面甚至可能与其重合:校准传感器160的X轴光线和第一次姿态调整后的适配器150的主轴(当该主轴切割X轴光线时)二者所在的那个平面。Likewise, the second plane is parallel to and possibly coincident with the plane where both the X-axis ray of the calibration sensor 160 and the main axis of the adapter 150 after the first attitude adjustment (when the main axis cuts the X-axis ray) that plane.

类似地,这里以通过第一次姿态调整将适配器150的姿态从其初始姿态调整为垂直于RB-xyz的XOY平面为例,利用第一次姿态调整后的适配器150的姿态的矢量表示(0,0,1)、以及校准传感器160的X轴光线沿着第一次姿态调整后的适配器150的主轴方向在RB-xyz的XOY平面上的投影在RB-xyz中的姿态的矢量表示(1,kx2,0),所述第二平面可以被表示为:Similarly, here is an example where the attitude of the adapter 150 is adjusted from its initial attitude to the XOY plane perpendicular to RB-xyz through the first attitude adjustment, and the vector representation of the attitude of the adapter 150 after the first attitude adjustment (0 , 0, 1), and the vector representation of the attitude in RB-xyz of the projection of the X-axis light of the calibration sensor 160 along the main axis direction of the adapter 150 after the first attitude adjustment on the XOY plane of RB-xyz (1 ,k x2 ,0), the second plane can be expressed as:

由此,所述第一平面与所述第二平面的交线,实际上也是在RB-xyz中与校准传感器160的X轴光线平行甚至重合的线,可以被表示为:Thus, the line of intersection between the first plane and the second plane is actually a line parallel to or even coincident with the X-axis ray of the calibration sensor 160 in RB-xyz, which can be expressed as:

根据本公开的一些实现,确定校准传感器160的Y轴光线在RB-xyz中的姿态可以包括:根据斜率ky1、斜率ky2、适配器150的初始姿态以及第一次姿态调整后的适配器150的姿态,求得RB-xyz中的第三平面和第四平面的交线,其中,所述第三平面是由表示校准传感器160的Y轴光线沿着处于初始姿态的适配器150的主轴方向在RB-xyz的XOY平面上的投影在RB-xyz中的姿态的矢量和表示适配器150的初始姿态的矢量二者限定的,所述第四平面是由表示校准传感器160的Y轴光线沿着第一次姿态调整后的适配器150的主轴方向在RB-xyz的XOY平面上的投影在RB-xyz中的姿态的矢量和表示第一次姿态调整后的适配器150的姿态的矢量二者限定的。According to some implementations of the present disclosure, determining the posture of the Y-axis ray of the calibration sensor 160 in RB-xyz may include: adjusting the posture of the adapter 150 according to the slope k y1 , the slope k y2 , the initial posture of the adapter 150 and the first posture Attitude, obtain the intersection of the third plane and the fourth plane in RB-xyz, wherein, the third plane is represented by the Y-axis light of the calibration sensor 160 along the main axis direction of the adapter 150 in the initial attitude in RB - xyz on the XOY plane defined by both the vector representing the pose in RB-xyz and the vector representing the initial pose of the adapter 150, the fourth plane being defined by the Y-axis ray representing the calibration sensor 160 along the first The projection of the main axis direction of the adapter 150 after the secondary posture adjustment on the XOY plane of RB-xyz defines the posture vector in RB-xyz and the vector representing the posture of the adapter 150 after the first posture adjustment.

这里,所述第三平面平行于下述平面甚至可能与其重合:校准传感器160的Y轴光线和处于初始姿态的适配器150的主轴(当该主轴切割Y轴光线时)二者所在的那个平面。Here, the third plane is parallel to and possibly coincident with the plane where both the Y-axis ray of the calibration sensor 160 and the main axis of the adapter 150 in the initial posture (when the main axis cuts the Y-axis ray) lie.

校准传感器160的Y轴光线沿着处于初始姿态的适配器150的主轴方向在RB-xyz的XOY平面上的投影(即图3B中所示的y_LS)在RB-xyz中的姿态可以用下述矢量来表示:The projection of the Y-axis ray of the calibration sensor 160 along the main axis direction of the adapter 150 in the initial posture on the XOY plane of RB-xyz (ie y_LS shown in FIG. 3B ) in RB-xyz can be represented by the following vector To represent:

(1,ky1,0)(1,k y1 ,0)

因此,所述第三平面可以被表示为:Therefore, the third plane can be expressed as:

同样,所述第四平面平行于下述平面甚至可能与其重合:校准传感器160的Y轴光线和第一次姿态调整后的适配器150的主轴(当该主轴切割Y轴光线时)二者所在的那个平面。Likewise, the fourth plane is parallel to and may even coincide with the plane where the Y-axis ray of the calibration sensor 160 and the main axis of the adapter 150 after the first attitude adjustment (when the main axis cuts the Y-axis ray) both lie. that plane.

类似地,仍旧以通过第一次姿态调整将适配器150的姿态从其初始姿态调整为垂直于RB-xyz的XOY平面为例,所述第四平面可以被表示为:Similarly, still taking the example of adjusting the posture of the adapter 150 from its initial posture to the XOY plane perpendicular to RB-xyz through the first posture adjustment, the fourth plane can be expressed as:

由此,所述第三平面与所述第四平面的交线,实际上也是在RB-xyz中与校准传感器160的Y轴光线平行甚至重合的线,可以被表示为:Therefore, the line of intersection between the third plane and the fourth plane is actually a line parallel to or even coincident with the Y-axis ray of the calibration sensor 160 in RB-xyz, which can be expressed as:

要注意的是,上述的通过第一次姿态调整将适配器150的姿态调整为垂直于RB-xyz的XOY平面仅仅作为示例,调整为其它的不同于所述初始姿态的姿态也同样是可行的,用对应的表示调整后的适配器150的姿态的矢量替代上述示例方程中的(0,0,1)即可。It should be noted that the above-mentioned adjustment of the posture of the adapter 150 to be perpendicular to the XOY plane of RB-xyz through the first posture adjustment is only an example, and it is also feasible to adjust to other postures different from the initial posture. It suffices to replace (0,0,1) in the above example equation with a corresponding vector representing the posture of the adapter 150 after adjustment.

如上所述,所述第一平面与所述第二平面的交线与校准传感器160的X轴光线平行甚至可能重合,并且所述第三平面与所述第四平面的交线与校准传感器160的Y轴光线平行甚至可能重合,利用上述方程求得这两条交线,也就获得了校准传感器160的X轴光线和Y轴光线在RB-xyz中的方向,即确定了校准传感器160的X轴光线和Y轴光线的姿态。As mentioned above, the intersection line of the first plane and the second plane is parallel to the X-axis ray of the calibration sensor 160 and may even coincide, and the intersection line of the third plane and the fourth plane is parallel to the X-axis ray of the calibration sensor 160 The Y-axis rays of the Y-axis rays are parallel and may even overlap. Using the above equation to obtain the two intersection lines, the directions of the X-axis rays and Y-axis rays of the calibration sensor 160 in RB-xyz are obtained, that is, the direction of the calibration sensor 160 is determined. The attitude of the X-axis ray and Y-axis ray.

此外,如前所述,校准传感器160的两条光线分别作为校准传感器坐标系PS-xyz的X轴和Y轴,而其Z轴则可以通过右手定则来确定出来。因此,在RB-xyz中确定了校准传感器160的X轴光线和Y轴光线的姿态,那么PS-xyz在RB-xyz中的姿态,换句话说,PS-xyz相对于RB-xyz的旋转矩阵也就确定出来了。In addition, as mentioned above, the two rays of the calibration sensor 160 serve as the X-axis and the Y-axis of the calibration sensor coordinate system PS-xyz respectively, and its Z-axis can be determined by the right-hand rule. Therefore, the attitude of the X-axis ray and the Y-axis ray of the calibration sensor 160 is determined in RB-xyz, then the attitude of PS-xyz in RB-xyz, in other words, the rotation matrix of PS-xyz relative to RB-xyz It was determined.

回到图2A,方法200还包括步骤220,在该步骤中,确定PS-xyz的坐标原点,也就是所述X轴光线和所述Y轴光线的交点,在所述机器人基座坐标系RB-xyz中的位置。Returning to FIG. 2A, the method 200 further includes step 220, in which step, the coordinate origin of PS-xyz is determined, that is, the intersection point of the X-axis ray and the Y-axis ray, in the robot base coordinate system RB - position in xyz.

根据本公开的一些实现,基于已经确定的PS-xyz的姿态,可以令机器人110进行第二次姿态调整操作,将适配器150的姿态调整为垂直于PS-xyz的XOY平面。具体地,可以将适配器150的主轴方向调整为垂直于校准传感器160的X轴光线和Y轴光线。According to some implementations of the present disclosure, based on the determined pose of PS-xyz, the robot 110 can be made to perform a second pose adjustment operation to adjust the pose of the adapter 150 to be perpendicular to the XOY plane of PS-xyz. Specifically, the main axis direction of the adapter 150 can be adjusted to be perpendicular to the X-axis light and the Y-axis light of the calibration sensor 160 .

接着,根据本公开的一些实现,可以令第二次姿态调整后的适配器150以指定的速度和指定的半径在平行于PS-xyz的XOY平面的平面上做与校准传感器160的X轴光线和Y轴光线触碰的圆周运动(例如,可以令该圆周运动的圆心落在RB-xyz的Z轴上,然而本公开并不限于此),该圆周运动在X轴光线和Y轴光线上各有两个触碰点(切割点)。相应地,由这些触碰点所限定的各段圆弧的弧长也可以被计算出来,由此,可以准确确定出校准传感器160的X轴光线和Y轴光线的交点在RB-xyz中的水平位置,即所述交点的x、y坐标值。Then, according to some implementations of the present disclosure, the adapter 150 after the second attitude adjustment can be made to make the X-axis ray and the X-axis ray of the calibration sensor 160 on a plane parallel to the XOY plane of PS-xyz at a specified speed and a specified radius. The circular motion touched by the Y-axis ray (for example, the center of the circular motion can be made to fall on the Z-axis of RB-xyz, but the present disclosure is not limited thereto), the circular motion is on the X-axis ray and the Y-axis ray respectively. There are two touching points (cutting points). Correspondingly, the arc length of each arc defined by these touch points can also be calculated, thus, the intersection point of the X-axis light and the Y-axis light of the calibration sensor 160 can be accurately determined in RB-xyz Horizontal position, that is, the x and y coordinate values of the intersection point.

现在,PS-xyz的坐标原点,即X轴光线和Y轴光线的交点,在RB-xyz中的垂直位置尚未确定。因此,根据本公开的一些实现,步骤220还可以包括,基于适配器150在移动到所述水平位置后以指定的速度在PS-xyz的Z轴上做直线运动与校准传感器的X轴光线和Y轴光线的触碰结果,来确定所述交点在RB-xyz中的垂直位置,即,所述交点的z坐标值。Now, the vertical position of the coordinate origin of PS-xyz, that is, the intersection of X-axis rays and Y-axis rays, in RB-xyz has not yet been determined. Therefore, according to some implementations of the present disclosure, step 220 may also include, based on the linear movement of the adapter 150 on the Z-axis of PS-xyz at a specified speed after moving to the horizontal position, and the X-axis light and Y axis of the calibration sensor. The touch result of the axis ray is used to determine the vertical position of the intersection point in RB-xyz, that is, the z coordinate value of the intersection point.

根据本公开的一些实现,可以令适配器150移动到所确定的所述交点在RB-xyz中的水平位置(由此适配器150的主轴移到了PS-xyz的Z轴上),然后从PS-xyz的Z轴上的任意一点作为起点,沿着该Z轴做试探性的直线运动。例如,如果在起点位置处适配器150已经在与校准传感器160的X轴光线和Y轴光线发生触碰,这表明适配器150的端点位置过低,则可以令适配器150的端点向着反方向直线运动,直到适配器150的端点恰好不触碰到校准传感器160的X轴光线和Y轴光线(此临界点即为PS-xyz的坐标原点)。另一方面,如果在起点位置处适配器150并未触碰到校准传感器160的X轴光线和Y轴光线,这表明适配器150的端点位置过高,则可以令适配器150的端点向着反方向直线运动,直到适配器150的端点恰好触碰到校准传感器160的X轴光线和Y轴光线(同样,此临界点即为PS-xyz的坐标原点)。由此,可以确定出PS-xyz的坐标原点在RB-xyz中的z坐标值。According to some implementations of the present disclosure, the adapter 150 can be moved to the determined horizontal position of the intersection point in RB-xyz (thus the main axis of the adapter 150 has moved to the Z axis of PS-xyz), and then from PS-xyz Take any point on the Z axis as the starting point, and make a tentative linear motion along the Z axis. For example, if the adapter 150 is already touching the X-axis light and the Y-axis light of the calibration sensor 160 at the starting position, which indicates that the end point of the adapter 150 is too low, then the end point of the adapter 150 can be moved linearly in the opposite direction, Until the end point of the adapter 150 just does not touch the X-axis light and the Y-axis light of the calibration sensor 160 (this critical point is the coordinate origin of PS-xyz). On the other hand, if the adapter 150 does not touch the X-axis light and the Y-axis light of the calibration sensor 160 at the starting position, which indicates that the end point of the adapter 150 is too high, the end point of the adapter 150 can be moved linearly in the opposite direction. , until the end point of the adapter 150 just touches the X-axis light and the Y-axis light of the calibration sensor 160 (similarly, this critical point is the coordinate origin of PS-xyz). Thus, the z coordinate value of the coordinate origin of PS-xyz in RB-xyz can be determined.

因此,通过步骤220,可以确定出PS-xyz的坐标原点在RB-xyz中的准确位置,要注意的是,关于PS-xyz的坐标原点的确定,其它的实现方式也是可行的,本公开并不限于上面给出的特定示例。Therefore, through step 220, the exact position of the coordinate origin of PS-xyz in RB-xyz can be determined, It should be noted that, regarding the determination of the coordinate origin of PS-xyz, other implementations are also possible, and the present disclosure is not limited to the specific example given above.

根据前述操作的结果,现在就能够得到PS-xyz相对于RB-xyz的变换矩阵,可以表示为:According to the results of the preceding operations, the transformation matrix of PS-xyz relative to RB-xyz can now be obtained, which can be expressed as:

由此,即完成了对机器人110的校准传感器坐标系的校准工作。Thus, the calibration of the calibration sensor coordinate system of the robot 110 is completed.

上文中结合图2A和2B描述了根据本公开的一些实现的方法200,本领域技术人员可以理解,这里所述的方法200仅仅是示例性的而非限制性的。在另外一些实现中,方法200还可以包括在说明书中描述的其它操作。此外,可以理解的是,示例性方法200的各种操作可以用软件、硬件、固件或其任意组合来实现。The method 200 according to some implementations of the present disclosure is described above with reference to FIGS. 2A and 2B . Those skilled in the art can understand that the method 200 described here is only exemplary and not limiting. In some other implementations, the method 200 may also include other operations described in the specification. Furthermore, it is to be understood that the various operations of exemplary method 200 may be implemented in software, hardware, firmware, or any combination thereof.

由此,根据本公开的一些实现,提供了用于对机器人的校准传感器坐标系进行校准的有效机制。借助于该机制,即便是在实际应用场景中由于一些原因导致校准传感器的准确位姿相对于其设计值出现一定偏移,也可以利用适配器在校准传感器的工作空间内的运动过程中与校准传感器的光线的触碰,相对于机器人基座坐标系对校准传感器坐标系实现自动化的、高精度的校准,而无需引入其它外部设备。Thus, according to some implementations of the present disclosure, an efficient mechanism for calibrating a robot's calibration sensor coordinate system is provided. With the help of this mechanism, even if the exact pose of the calibration sensor deviates from its design value due to some reasons in the actual application scenario, the adapter can be used to communicate with the calibration sensor during its movement in the working space of the calibration sensor. The touch of the light rays realizes automatic and high-precision calibration of the calibration sensor coordinate system relative to the robot base coordinate system without introducing other external devices.

下面参考图5,其示出了根据本公开的一些实现的示例性装置500的框图。所述装置500适于对机器人的校准传感器坐标系进行校准。Reference is now made to FIG. 5 , which shows a block diagram of an exemplary apparatus 500 according to some implementations of the present disclosure. The device 500 is adapted to calibrate a calibration sensor coordinate system of a robot.

如图5所示,装置500可以包括第一模块510,其用于基于机器人的适配器在运动过程中与校准传感器的相交的X轴光线和Y轴光线的触碰,确定所述X轴光线和所述Y轴光线在机器人基座坐标系中的姿态,其中,所述校准传感器被用于对所述适配器的位姿进行校准,所述X轴光线和所述Y轴光线的交点是所述校准传感器坐标系的坐标原点。装置500还可以包括第二模块520,其用于基于所述适配器在运动过程中与所述X轴光线和所述Y轴光线的触碰,确定所述X轴光线和所述Y轴光线的交点在所述机器人基座坐标系中的位置。As shown in FIG. 5 , the device 500 may include a first module 510, which is used to determine the X-axis light and the Y-axis light that intersect the X-axis light and the Y-axis light of the calibration sensor based on the touch of the adapter of the robot during the movement. The pose of the Y-axis light in the robot base coordinate system, wherein the calibration sensor is used to calibrate the pose of the adapter, and the intersection of the X-axis light and the Y-axis light is the The coordinate origin of the calibration sensor coordinate system. The device 500 may further include a second module 520, which is configured to determine the distance between the X-axis light and the Y-axis light based on the contact between the adapter and the X-axis light and the Y-axis light during the movement. The position of the intersection point in the coordinate system of the robot base.

在根据本公开的一些实现中,装置500的上述模块中的一个或多个中还可以包括进一步的模块、和/或装置500还可以包括附加的模块,用于执行说明书中已经描述的其它操作。In some implementations according to the present disclosure, one or more of the above-mentioned modules of the device 500 may further include further modules, and/or the device 500 may also include additional modules for performing other operations already described in the specification .

例如,在根据本公开的一些实现中,装置500的第一模块510可以包括:第一子模块,其用于确定所述X轴光线和所述Y轴光线沿着所述适配器的主轴方向在所述机器人基座坐标系的XOY平面上的投影的斜率kx1和ky1;第二子模块,其用于确定所述适配器在所述机器人基座坐标系中的初始姿态;第三子模块,其用于确定所述X轴光线和所述Y轴光线沿着第一次姿态调整后的所述适配器的主轴方向在所述XOY平面上的投影的斜率kx2和ky2,其中,通过所述第一次姿态调整,所述适配器的姿态被调整为不同于所述初始姿态;以及第四子模块,其用于基于所述斜率kx1和ky1、所述斜率kx2和ky2、所述适配器的初始姿态以及所述第一次姿态调整后的所述适配器的姿态,确定所述X轴光线和所述Y轴光线在所述机器人基座坐标系中的姿态。For example, in some implementations according to the present disclosure, the first module 510 of the device 500 may include: a first submodule, which is used to determine the X-axis light and the Y-axis light along the main axis direction of the adapter. The slopes k x1 and k y1 of the projection on the XOY plane of the robot base coordinate system; the second submodule, which is used to determine the initial posture of the adapter in the robot base coordinate system; the third submodule , which is used to determine the slopes k x2 and ky2 of the projections of the X-axis ray and the Y-axis ray on the XOY plane along the main axis direction of the adapter after the first attitude adjustment, wherein, by The first posture adjustment, the posture of the adapter is adjusted to be different from the initial posture; and a fourth sub-module, which is used to adjust the posture based on the slopes k x1 and ky1 , the slopes k x2 and ky2 , the initial posture of the adapter and the posture of the adapter after the first posture adjustment, and determine the postures of the X-axis ray and the Y-axis ray in the robot base coordinate system.

此外,在一些实现中,装置500的各种模块还可以取决于实际需求进行组合或拆分,这同样落入本公开的范围之内。In addition, in some implementations, various modules of the apparatus 500 may also be combined or disassembled depending on actual requirements, which also falls within the scope of the present disclosure.

本领域技术人员可以理解,示例性装置500可以用软件、硬件、固件、或其任意组合来实现。Those skilled in the art can understand that the exemplary device 500 can be implemented by software, hardware, firmware, or any combination thereof.

图6示出了根据本公开的一些实现的示例性计算设备600的框图。如图6所示,计算设备600可以包括至少一个处理器610。处理器610可以包括任意类型的通用处理单元(例如:CPU、GPU,等等)、专用处理单元、核心、电路、控制器,等等。此外,计算设备600还可以包括存储器620。存储器620可以包括任意类型的可以用于存储数据的介质。在一些实现中,存储器620被配置为存储指令,所述指令在执行时使得至少一个处理器610执行本文中所述的操作,例如,结合图2A的示例性方法200的流程图而描述的。FIG. 6 shows a block diagram of an example computing device 600 according to some implementations of the disclosure. As shown in FIG. 6 , computing device 600 may include at least one processor 610 . Processor 610 may include any type of general purpose processing unit (eg, CPU, GPU, etc.), special purpose processing unit, core, circuit, controller, etc. Additionally, computing device 600 may also include memory 620 . Memory 620 may include any type of media that may be used to store data. In some implementations, memory 620 is configured to store instructions that, when executed, cause at least one processor 610 to perform the operations described herein, eg, as described in connection with the flowchart of example method 200 of FIG. 2A .

此外,在一些实现中,计算设备600还可以耦合到或配备有一种或多种外设部件,所述外设部件可以包括但不限于显示器、扬声器、鼠标、键盘,等等。另外,在一些实现中,计算设备600还可以配备有通信接口,其可以支持各种类型的有线/无线通信协议以与通信网络进行通信。通信网络的示例可以包括但不限于:局域网(LAN)、城域网(MAN)、广域网(WAN)、公共电话网、互联网、内联网、物联网、红外网络、蓝牙网络、近场通信(NFC)网络、ZigBee网络,等等。Additionally, in some implementations, computing device 600 may also be coupled to or equipped with one or more peripheral components, which may include, but are not limited to, a display, speakers, mouse, keyboard, and the like. In addition, in some implementations, the computing device 600 may also be equipped with a communication interface, which may support various types of wired/wireless communication protocols to communicate with a communication network. Examples of communication networks may include, but are not limited to: Local Area Network (LAN), Metropolitan Area Network (MAN), Wide Area Network (WAN), Public Telephone Network, Internet, Intranet, Internet of Things, Infrared Network, Bluetooth Network, Near Field Communication (NFC ) network, ZigBee network, and so on.

此外,在一些实现中,上述及其它部件之间可以经由一种或多种总线/互连来相互通信,所述总线/互连可以支持任何合适的总线/互连协议,包括外围组件互连(PCI)、快速PCI快速、通用串行总线(USB)、串行附接SCSI(SAS)、串行ATA(SATA)、光纤通道(FC)、系统管理总线(SMBus),或其它合适的协议。Additionally, in some implementations, the above and other components may communicate with each other via one or more buses/interconnects that may support any suitable bus/interconnect protocol, including peripheral component interconnect (PCI), PCI Express, Universal Serial Bus (USB), Serial Attached SCSI (SAS), Serial ATA (SATA), Fiber Channel (FC), System Management Bus (SMBus), or other suitable protocol .

本领域技术人员可以理解,对于计算设备600的结构的上述描述仅仅是示例性而非限制性的,其它结构的设备也是可行的,只要能够用来实现本文中所述的功能。Those skilled in the art can understand that the above description of the structure of the computing device 600 is only exemplary and not restrictive, and devices with other structures are also feasible, as long as they can be used to implement the functions described herein.

本公开的各种实现可以使用硬件单元、软件单元或其组合来实现。硬件单元的示例可以包括设备、部件、处理器、微处理器、电路、电路元件(例如、晶体管、电阻器、电容器、电感器,等等)、集成电路、专用集成电路(ASIC)、可编程逻辑器件(PLD)、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、存储单元、逻辑门、寄存器、半导体器件、芯片、微芯片、芯片组,等等。软件单元的示例可以包括软件部件、程序、应用、计算机程序、应用程序、系统程序、机器程序、操作系统软件、中间件、固件、软件模块、例程、子例程、函数、方法、过程、软件接口、应用程序接口(API)、指令集、计算代码、计算机代码、代码段、计算机代码段、字、值、符号、或其任意组合。确定一个实现是使用硬件单元和/或软件单元来实施的可以取决于多种因素而变化,例如期望的计算速率、功率级别、耐热性、处理周期预算、输入数据速率、输出数据速率、存储器资源、数据总线速度,以及其它的设计或性能约束,正如一个给定的实现所期望的。Various implementations of the disclosure can be realized using hardware elements, software elements or a combination thereof. Examples of hardware elements may include devices, components, processors, microprocessors, circuits, circuit elements (e.g., transistors, resistors, capacitors, inductors, etc.), integrated circuits, application specific integrated circuits (ASICs), programmable Logic devices (PLDs), digital signal processors (DSPs), field programmable gate arrays (FPGAs), memory cells, logic gates, registers, semiconductor devices, chips, microchips, chipsets, and more. Examples of software elements may include software components, programs, applications, computer programs, application programs, system programs, machine programs, operating system software, middleware, firmware, software modules, routines, subroutines, functions, methods, procedures, A software interface, application programming interface (API), instruction set, computational code, computer code, code segment, computer code segment, word, value, symbol, or any combination thereof. Determining whether an implementation is implemented using hardware elements and/or software elements may vary depending on factors such as desired computation rate, power level, thermal tolerance, processing cycle budget, input data rate, output data rate, memory resources, data bus speed, and other design or performance constraints, as desired for a given implementation.

本公开的一些实现可以包括制品。制品可以包括存储介质,其用于存储逻辑。存储介质的示例可以包括一种或多种类型的能够存储电子数据的计算机可读存储介质,包括易失性存储器或非易失性存储器、可移动或不可移动存储器、可擦除或不可擦除存储器、可写或可重写存储器,等等。逻辑的示例可以包括各种软件单元,例如软件部件、程序、应用、计算机程序、应用程序、系统程序、机器程序、操作系统软件、中间件、固件、软件模块、例程、子例程、函数、方法、过程、软件接口、应用程序接口(API)、指令集、计算代码、计算机代码、代码段、计算机代码段、字、值、符号、或其任意组合。在一些实现中,例如,制品可以存储可执行的计算机程序指令,其在被处理器执行时,使得处理器执行本文中所述的方法和/或操作。可执行的计算机程序指令可以包括任意合适类型的代码,例如,源代码、编译代码、解释代码、可执行代码、静态代码、动态代码,等等。可执行的计算机程序指令可以根据预定义的用于命令计算机来执行特定功能的计算机语言、方式或语法来实现。所述指令可以使用任意适当的高级的、低级的、面向对象的、可视化的、编译的和/或解释的编程语言来实现。Some implementations of the disclosure may include articles of manufacture. An article of manufacture may include a storage medium for storing logic. Examples of storage media may include one or more types of computer-readable storage media capable of storing electronic data, including volatile or nonvolatile memory, removable or non-removable, erasable or non-erasable memory, writable or rewritable memory, etc. Examples of logic may include various software elements such as software components, programs, applications, computer programs, application programs, system programs, machine programs, operating system software, middleware, firmware, software modules, routines, subroutines, functions , method, procedure, software interface, application programming interface (API), instruction set, computational code, computer code, code segment, computer code segment, word, value, symbol, or any combination thereof. In some implementations, for example, an article of manufacture may store executable computer program instructions that, when executed by a processor, cause the processor to perform the methods and/or operations described herein. Executable computer program instructions may comprise any suitable type of code, eg, source code, compiled code, interpreted code, executable code, static code, dynamic code, etc. Executable computer program instructions may be implemented according to a predefined computer language, manner or syntax for instructing a computer to perform specific functions. The instructions may be implemented using any suitable high-level, low-level, object-oriented, visual, compiled and/or interpreted programming language.

下面描述本公开的一些示例性实现:Some exemplary implementations of the present disclosure are described below:

示例1描述了一种用于对机器人的校准传感器坐标系进行校准的方法,所述方法包括:基于机器人的适配器在运动过程中与校准传感器的相交的X轴光线和Y轴光线的触碰,确定所述X轴光线和所述Y轴光线在机器人基座坐标系中的姿态,其中,所述校准传感器被用于对所述适配器的位姿进行校准,所述X轴光线和所述Y轴光线的交点是所述校准传感器坐标系的坐标原点;以及基于所述适配器在运动过程中与所述X轴光线和所述Y轴光线的触碰,确定所述X轴光线和所述Y轴光线的交点在所述机器人基座坐标系中的位置。Example 1 describes a method for calibrating the calibration sensor coordinate system of a robot, the method comprising: touching the X-axis light and the Y-axis light intersecting the calibration sensor based on the adapter of the robot during motion, determining the poses of the X-axis rays and the Y-axis rays in the robot base coordinate system, wherein the calibration sensor is used to calibrate the pose of the adapter, and the X-axis rays and the Y-axis rays The intersection point of the axis rays is the coordinate origin of the calibration sensor coordinate system; and based on the touch of the adapter with the X-axis rays and the Y-axis rays during the movement, determine the X-axis rays and the Y-axis rays The position of the intersection point of the axis rays in the coordinate system of the robot base.

示例2可以包括示例1所述的主题,其中,确定所述X轴光线和所述Y轴光线在所述机器人基座坐标系中的姿态包括:确定所述X轴光线和所述Y轴光线沿着所述适配器的主轴方向在所述机器人基座坐标系的XOY平面上的投影的斜率kx1和ky1;确定所述适配器在所述机器人基座坐标系中的初始姿态;确定所述X轴光线和所述Y轴光线沿着第一次姿态调整后的所述适配器的主轴方向在所述XOY平面上的投影的斜率kx2和ky2,其中,通过所述第一次姿态调整,所述适配器的姿态被调整为不同于所述初始姿态;以及基于所述斜率kx1和ky1、所述斜率kx2和ky2、所述适配器的初始姿态以及所述第一次姿态调整后的所述适配器的姿态,确定所述X轴光线和所述Y轴光线在所述机器人基座坐标系中的姿态。Example 2 may include the subject matter of Example 1, wherein determining the pose of the X-axis ray and the Y-axis ray in the robot base coordinate system includes: determining the X-axis ray and the Y-axis ray The slope k x1 and k y1 of the projection along the main axis direction of the adapter on the XOY plane of the robot base coordinate system; determine the initial posture of the adapter in the robot base coordinate system; determine the The slopes k x2 and ky2 of the projections of the X-axis ray and the Y-axis ray along the main axis direction of the adapter on the XOY plane after the first attitude adjustment, wherein, through the first attitude adjustment , the posture of the adapter is adjusted to be different from the initial posture; and based on the slopes k x1 and ky1 , the slopes k x2 and ky2 , the initial posture of the adapter, and the first posture adjustment After the pose of the adapter, the poses of the X-axis ray and the Y-axis ray in the coordinate system of the robot base are determined.

示例3可以包括示例2所述的主题,其中,确定斜率kx1和ky1包括:基于所述适配器以指定的速度在平行于所述XOY平面的平面上做与所述X轴光线触碰的至少两次直线运动的触碰结果,来确定所述X轴光线沿着所述适配器的主轴方向在所述XOY平面上的投影的斜率kx1;以及基于所述适配器以指定的速度在平行于所述XOY平面的平面上做与所述Y轴光线触碰的至少两次直线运动的触碰结果,来确定所述Y轴光线沿着所述适配器的主轴方向在所述XOY平面上的投影的斜率ky1Example 3 may include the subject matter of Example 2, wherein determining slopes k x1 and k y1 comprises: ray contact with the X-axis based on the adapter at a specified velocity on a plane parallel to the XOY plane The touch results of at least two linear movements to determine the slope k x1 of the projection of the X-axis ray along the main axis direction of the adapter on the XOY plane; and based on the adapter moving at a specified speed parallel to The touch result of at least two linear movements touching the Y-axis light on the plane of the XOY plane to determine the projection of the Y-axis light on the XOY plane along the main axis direction of the adapter The slope of k y1 .

示例4可以包括示例2-3其中之一所述的主题,其中,确定所述适配器在所述机器人基座坐标系中的初始姿态包括:基于所述适配器以指定的速度和指定的半径在平行于所述XOY平面的平面上做与所述X轴光线和所述Y轴光线触碰的三次圆周运动的触碰结果,并且基于所述斜率kx1和ky1,来确定所述三次圆周运动各自的圆心位置(xA,yA)、(xB,yB)和(xC,yC),其中,对于第二次圆周运动,所述适配器的端点相对于第一次圆周运动时沿着垂直于所述XOY平面的方向移动了垂直距离h,对于第三次圆周运动,所述适配器的端点相对于所述第一次圆周运动时沿着平行于所述XOY平面的方向移动了水平位移l;计算所述第二次圆周运动的圆心位置(xB,yB)相对于所述第一次圆周运动的圆心位置(xA,yA)的第一偏移Δ1=(Δx1,Δy1)=(xB-xA,yB-yA),以及所述第三次圆周运动的圆心位置(xC,yC)相对于所述第一次圆周运动的圆心位置(xA,yA)的第二横向偏移Δx2=(xC-xA);以及根据所述垂直距离h、所述水平位移l、所述第一偏移Δ1和所述第二横向偏移Δx2,求得所述适配器的主轴在所述机器人基座坐标系的YOZ平面上的投影与Z轴的夹角θy,以及在所述机器人基座坐标系的XOZ平面上的投影与Z轴的夹角θxExample 4 may include the subject matter of any one of Examples 2-3, wherein determining an initial pose of the adapter in the robot base coordinate system includes: The touch result of three circular motions touching the X-axis ray and the Y-axis ray on the plane of the XOY plane, and determining the three circular motions based on the slopes k x1 and k y1 The respective center positions (x A ,y A ), (x B ,y B ) and (x C ,y C ), where, for the second circular movement, the end points of the adapter are relative to the first circular movement The vertical distance h is moved along the direction perpendicular to the XOY plane, and for the third circular motion, the end point of the adapter is moved in a direction parallel to the XOY plane relative to the first circular motion Horizontal displacement l; calculate the first offset Δ 1 of the center position (x B , y B ) of the second circular motion relative to the center position (x A , y A ) of the first circular motion =( Δx 1 , Δy 1 )=(x B -x A , y B -y A ), and the position of the center of circle (x C , y C ) of the third circular motion relative to the center of circle of the first circular motion The second lateral offset Δx 2 of position (x A , y A ) = (x C -x A ); and according to the vertical distance h, the horizontal displacement l, the first offset Δ 1 and the For the second lateral offset Δx 2 , obtain the angle θ y between the projection of the main axis of the adapter on the YOZ plane of the robot base coordinate system and the Z axis, and the XOZ plane of the robot base coordinate system The angle θ x between the projection on and the Z axis.

示例5可以包括示例4其中之一所述的主题,其中,所述夹角θy和所述夹角θx为:Example 5 may include the subject matter of one of Example 4, wherein said angle θ y and said angle θ x are:

其中,lx是所述水平位移l在X轴方向上的分量。in, l x is the component of the horizontal displacement l in the X-axis direction.

示例6可以包括示例2-5其中之一所述的主题,其中,通过所述第一次姿态调整,所述适配器的姿态被从所述初始姿态调整为垂直于所述XOY平面。Example 6 may include the subject matter of any one of Examples 2-5, wherein, by the first attitude adjustment, the adapter's attitude is adjusted from the initial attitude to be perpendicular to the XOY plane.

示例7可以包括示例2-6其中之一所述的主题,其中,确定斜率kx2和ky2包括:基于所述第一次姿态调整后的所述适配器以指定的速度在平行于所述XOY平面的平面上做与所述X轴光线触碰的至少两次直线运动的触碰结果,来确定所述X轴光线沿着所述第一次姿态调整后的所述适配器的主轴方向在所述XOY平面上的投影的斜率kx2;以及基于所述第一次姿态调整后的所述适配器以指定的速度在平行于所述XOY平面的平面上做与所述Y轴光线触碰的至少两次直线运动的触碰结果,来确定所述Y轴光线沿着所述第一次姿态调整后的所述适配器的主轴方向在所述XOY平面上的投影的斜率ky2Example 7 may include the subject matter of any one of Examples 2-6, wherein determining slopes k x2 and ky 2 comprises: adjusting the adapter based on the first attitude at a specified speed parallel to the XOY The contact result of at least two linear movements touching the X-axis ray on the plane of the plane is determined to determine that the X-axis ray is in the direction of the main axis of the adapter after the first attitude adjustment. the slope k x2 of the projection on the XOY plane; and the adapter adjusted based on the first attitude at a specified speed on a plane parallel to the XOY plane at least touches the Y-axis ray The touch result of the two linear movements is used to determine the slope k y2 of the projection of the Y-axis ray along the main axis direction of the adapter after the first attitude adjustment on the XOY plane.

示例8可以包括示例2-7其中之一所述的主题,其中,确定所述X轴光线和所述Y轴光线在所述机器人基座坐标系中的姿态包括:根据所述斜率kx1、所述斜率kx2、所述适配器的初始姿态以及所述第一次姿态调整后的所述适配器的姿态,求得所述机器人基座坐标系中的第一平面和第二平面的交线,其中,所述第一平面是由表示所述X轴光线沿着处于所述初始姿态的所述适配器的主轴方向在所述XOY平面上的投影在所述机器人基座坐标系中的姿态的矢量和表示所述适配器的初始姿态的矢量限定的,所述第二平面是由表示所述X轴光线沿着所述第一次姿态调整后的所述适配器的主轴方向在所述XOY平面上的投影在所述机器人基座坐标系中的姿态的矢量和表示所述第一次姿态调整后的所述适配器的姿态的矢量限定的;以及根据所述斜率ky1、所述斜率ky2、所述适配器的初始姿态以及所述第一次姿态调整后的所述适配器的姿态,求得所述机器人基座坐标系中的第三平面和第四平面的交线,其中,所述第三平面是由表示所述Y轴光线沿着处于所述初始姿态的所述适配器的主轴方向在所述XOY平面上的投影在所述机器人基座坐标系中的姿态的矢量和表示所述适配器的初始姿态的矢量限定的,所述第四平面是由表示所述Y轴光线沿着所述第一次姿态调整后的所述适配器的主轴方向在所述XOY平面上的投影在所述机器人基座坐标系中的姿态的矢量和表示所述第一次姿态调整后的所述适配器的姿态的矢量限定的。Example 8 may include the subject matter of any one of Examples 2-7, wherein determining the poses of the X-axis ray and the Y-axis ray in the robot base coordinate system includes: according to the slope k x1 , The slope k x2 , the initial posture of the adapter and the posture of the adapter after the first posture adjustment are obtained to obtain the intersection line of the first plane and the second plane in the coordinate system of the robot base, Wherein, the first plane is a vector representing the posture of the projection of the X-axis ray along the main axis direction of the adapter in the initial posture on the XOY plane in the robot base coordinate system and a vector representing the initial posture of the adapter, the second plane is defined by the XOY plane on the XOY plane represented by the X-axis ray along the main axis direction of the adapter after the first posture adjustment defined by the vector of the posture projected in the robot base coordinate system and the vector representing the posture of the adapter after the first posture adjustment; and according to the slope k y1 , the slope k y2 , the The initial posture of the adapter and the posture of the adapter after the first posture adjustment, obtain the intersection of the third plane and the fourth plane in the robot base coordinate system, wherein the third plane is the vector representing the posture of the projection of the Y-axis ray along the main axis direction of the adapter in the initial posture on the XOY plane in the robot base coordinate system and represents the initial position of the adapter The vector of attitude is defined, and the fourth plane is projected on the robot base by the projection of the Y-axis light along the main axis direction of the adapter after the first attitude adjustment on the XOY plane The pose vector in the coordinate system is defined by the vector representing the pose of the adapter after the first pose adjustment.

示例9可以包括示例2-8其中之一所述的主题,其中,确定所述X轴光线和所述Y轴光线的交点在所述机器人基座坐标系中的位置包括:基于第二次姿态调整后的所述适配器以指定的速度和指定的半径在平行于所述校准传感器坐标系的XOY平面的平面上做与所述X轴光线和所述Y轴光线触碰的圆周运动的触碰结果,来确定所述交点在所述机器人基座坐标系中的水平位置,其中,通过所述第二次姿态调整,所述适配器的姿态被调整为垂直于所述校准传感器坐标系的XOY平面;以及基于所述适配器在移动到所述水平位置后以指定的速度在所述校准传感器坐标系的Z轴上做直线运动与所述X轴光线和所述Y轴光线的触碰结果,来确定所述交点在所述机器人基座坐标系中的垂直位置。Example 9 may include the subject matter of any one of Examples 2-8, wherein determining a position of an intersection point of the X-axis ray and the Y-axis ray in the robot base coordinate system includes: based on a second pose The adjusted adapter touches the X-axis ray and the Y-axis ray in a circular motion on a plane parallel to the XOY plane of the calibration sensor coordinate system at a specified speed and a specified radius As a result, the horizontal position of the intersection point in the robot base coordinate system is determined, wherein, through the second attitude adjustment, the attitude of the adapter is adjusted to be perpendicular to the XOY plane of the calibration sensor coordinate system and based on the contact result of the adapter moving linearly on the Z-axis of the calibration sensor coordinate system at a specified speed with the X-axis light and the Y-axis light after moving to the horizontal position, to A vertical position of the intersection point in the robot base coordinate system is determined.

示例10描述了一种计算设备,所述计算设备包括:至少一个处理器;以及存储器,其耦合到所述至少一个处理器并用于存储指令,其中,所述指令在由所述至少一个处理器执行时,使得所述至少一个处理器执行根据前述示例1-9中的任意一项所述的方法。Example 10 describes a computing device comprising: at least one processor; and a memory coupled to the at least one processor and configured to store instructions, wherein the instructions are executed by the at least one processor When executed, the at least one processor is made to execute the method according to any one of the preceding Examples 1-9.

示例11描述了一种用于对机器人的校准传感器坐标系进行校准的装置,所述装置包括用于执行根据前述示例1-9中的任意一项所述的方法的模块。Example 11 describes an apparatus for calibrating a calibration sensor coordinate system of a robot, the apparatus comprising means for performing the method according to any one of the preceding examples 1-9.

示例12描述了一种计算机可读存储介质,其上存储有指令,所述指令在由至少一个处理器执行时,使得所述至少一个处理器执行根据前述示例1-9中的任意一项所述的方法。Example 12 describes a computer-readable storage medium having stored thereon instructions that, when executed by at least one processor, cause the at least one processor to perform any of the preceding Examples 1-9. described method.

示例13描述了一种计算机程序产品,其包括指令,所述指令在由至少一个处理器执行时,使得所述至少一个处理器执行根据前述示例1-9中的任意一项所述的方法。Example 13 describes a computer program product comprising instructions which, when executed by at least one processor, cause the at least one processor to perform the method according to any one of the preceding Examples 1-9.

上面已经描述的包括所公开的架构的示例。当然并不可能描述部件和/或方法的每种可以想见的组合,但是本领域技术人员可以理解,许多其它的组合和排列也是可行的。因此,该新颖架构旨在涵盖落入所附权利要求的精神和范围之内的所有这样的替代、修改和变型。What has been described above includes examples of the disclosed architecture. It is, of course, not possible to describe every conceivable combination of components and/or methodologies, but those skilled in the art will appreciate that many other combinations and permutations are possible. Accordingly, the novel architecture is intended to embrace all such alternatives, modifications and variations that fall within the spirit and scope of the appended claims.

Claims (13)

1. A method for calibrating a calibration sensor coordinate system of a robot, the method comprising:
Determining (210) the pose of an X-axis ray and a Y-axis ray in a robot base coordinate system based on the touching of the X-axis ray and the Y-axis ray of an adapter of the robot intersecting a calibration sensor during movement, wherein the calibration sensor is used to calibrate the pose of the adapter, and the intersection of the X-axis ray and the Y-axis ray is the origin of coordinates of the calibration sensor coordinate system; and
based on the adapter touching the X-axis ray and the Y-axis ray during movement, a position of an intersection of the X-axis ray and the Y-axis ray in the robot base coordinate system is determined (220).
2. The method of claim 1, wherein determining the pose of the X-axis ray and the Y-axis ray in the robot base coordinate system comprises:
determining (212) a slope k of a projection of the X-axis ray and the Y-axis ray along a major axis direction of the adapter onto an XOY plane of the robot base coordinate system x1 and ky1
Determining (214) an initial pose of the adapter in the robot base coordinate system;
determining (216) a slope k of a projection of the X-axis ray and the Y-axis ray onto the XOY plane along a major axis direction of the adapter after the first pose adjustment x2 and ky2 Wherein, by the first attitude adjustment, the attitude of the adapter is adjusted to be different from the initial attitude; and
based on the slope k x1 and ky1 The slope k x2 and ky2 The initial pose of the adapter and the pose of the adapter after the first pose adjustment determine (218) the pose of the X-axis ray and the Y-axis ray in the robot base coordinate system.
3. The method of claim 2, wherein a slope k is determined x1 and ky1 Comprising the following steps:
determining a slope k of a projection of the X-axis ray on the XOY plane along a main axis direction of the adapter based on a touch result of the adapter making at least two rectilinear motions of the X-axis ray on a plane parallel to the XOY plane at a specified speed x1; and
determining that the Y-axis ray is in the XOY plane along the main axis direction of the adapter based on the touch result of the adapter making at least two rectilinear motions of the Y-axis ray on a plane parallel to the XOY plane at a specified speedSlope k of projection on y1
4. The method of claim 2, wherein determining an initial pose of the adapter in the robot base coordinate system comprises:
Making a touch result of three circular motions of the adapter on a plane parallel to the XOY plane at a specified speed and a specified radius, the three circular motions being touched with the X-axis ray and the Y-axis ray, and based on the slope k x1 and ky1 To determine the respective center positions (x A ,y A )、(x B ,y B) and (xC ,y C ) Wherein for a second circular movement the end point of the adapter is moved a vertical distance h in a direction perpendicular to the XOY plane with respect to a first circular movement and for a third circular movement the end point of the adapter is moved a horizontal displacement l in a direction parallel to the XOY plane with respect to the first circular movement;
calculating the center position (x B ,y B ) Relative to the centre position (x A ,y A ) Is a first offset delta of (1) 1 =(Δx 1 ,Δy 1 )=(x B -x A ,y B -y A ) And the center position (x C ,y C ) Relative to the centre position (x A ,y A ) Is a second lateral offset deltax of (2) 2 =(x C -x A); and
according to the vertical distance h, the horizontal displacement l and the first offset delta 1 And the second lateral offset Deltax 2 Obtaining an included angle theta between the projection of the main shaft of the adapter on the YOZ plane of the robot base coordinate system and the Z axis y And an angle θ between the projection on the XOZ plane of the robot base coordinate system and the Z axis x
5. According to claimThe method of 4, wherein the included angle θ y And the included angle theta x The method comprises the following steps:
wherein ,l x is the component of the horizontal displacement l in the X-axis direction.
6. The method of claim 2, wherein the pose of the adapter is adjusted from the initial pose to be perpendicular to the XOY plane by the first pose adjustment.
7. The method of claim 2, wherein a slope k is determined x2 and ky2 Comprising the following steps:
determining a slope k of projection of the X-axis ray on the XOY plane along the main axis direction of the adapter after the first posture adjustment based on a touch result of the adapter after the first posture adjustment making at least two linear motions of touching the X-axis ray on a plane parallel to the XOY plane at a specified speed x2; and
determining a slope k of projection of the Y-axis ray on the XOY plane along the main axis direction of the adapter after the first posture adjustment based on a touch result of the adapter after the first posture adjustment making at least two linear motions of touching the Y-axis ray on a plane parallel to the XOY plane at a specified speed y2
8. The method of claim 2, wherein determining the pose of the X-axis ray and the Y-axis ray in the robot base coordinate system comprises:
according to the slope k x1 The slope k x2 Obtaining an intersection line of a first plane and a second plane in the robot base coordinate system, wherein the first plane is defined by a vector representing a posture of the X-axis ray in the robot base coordinate system projected on the XOY plane along a main axis direction of the adapter in the initial posture and a vector representing the initial posture of the adapter, and the second plane is defined by a vector representing a posture of the X-axis ray in the robot base coordinate system projected on the XOY plane along the main axis direction of the adapter after the first posture adjustment and a vector representing a posture of the adapter after the first posture adjustment; and
according to the slope k y1 The slope k y2 And obtaining an intersection line of a third plane and a fourth plane in the robot base coordinate system, wherein the third plane is defined by a vector representing a posture of the Y-axis ray projected on the XOY plane along a main axis direction of the adapter in the initial posture in the robot base coordinate system and a vector representing the initial posture of the adapter, and the fourth plane is defined by a vector representing a posture of the Y-axis ray projected on the XOY plane along a main axis direction of the adapter in the first posture adjustment in the robot base coordinate system and a vector representing a posture of the adapter in the first posture adjustment.
9. The method of claim 2, wherein determining the location of the intersection of the X-axis ray and the Y-axis ray in the robot base coordinate system comprises:
determining a horizontal position of the intersection point in the robot base coordinate system based on a touching result of the adapter after the second posture adjustment by making a circular motion touching the X-axis ray and the Y-axis ray on a plane parallel to the XOY plane of the calibration sensor coordinate system at a specified speed and a specified radius, wherein the posture of the adapter is adjusted to be perpendicular to the XOY plane of the calibration sensor coordinate system by the second posture adjustment; and
and determining the vertical position of the intersection point in the robot base coordinate system based on the touch result of the adapter, which moves to the horizontal position and then makes linear motion on the Z axis of the calibration sensor coordinate system at a specified speed, and the X axis ray and the Y axis ray.
10. A computing device, the computing device comprising:
at least one processor (610); and
a memory (620) coupled to the at least one processor and configured to store instructions, wherein the instructions, when executed by the at least one processor, cause the at least one processor to perform the method of any of claims 1-9.
11. An apparatus for calibrating a calibration sensor coordinate system of a robot, the apparatus comprising means for performing the method of any of claims 1-9.
12. A computer-readable storage medium having instructions stored thereon, which when executed by at least one processor, cause the at least one processor to perform the method of any of claims 1-9.
13. A computer program product comprising instructions which, when executed by at least one processor, cause the at least one processor to perform the method of any of claims 1-9.
CN202210113328.9A 2022-01-30 2022-01-30 Method and device for calibrating calibration sensor coordinate system of robot Pending CN116551665A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210113328.9A CN116551665A (en) 2022-01-30 2022-01-30 Method and device for calibrating calibration sensor coordinate system of robot

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210113328.9A CN116551665A (en) 2022-01-30 2022-01-30 Method and device for calibrating calibration sensor coordinate system of robot

Publications (1)

Publication Number Publication Date
CN116551665A true CN116551665A (en) 2023-08-08

Family

ID=87492052

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210113328.9A Pending CN116551665A (en) 2022-01-30 2022-01-30 Method and device for calibrating calibration sensor coordinate system of robot

Country Status (1)

Country Link
CN (1) CN116551665A (en)

Similar Documents

Publication Publication Date Title
CN107738254B (en) A method and system for converting and calibrating a manipulator coordinate system
US10525597B2 (en) Robot and robot system
JP4191080B2 (en) Measuring device
CN110587595B (en) Method for operating a robot, data storage device, robot and robot system
WO2018090323A1 (en) Method, system, and device for calibrating coordinate system
JP6859756B2 (en) Control systems, controllers, control methods, and control programs
CN110148187A (en) A kind of the high-precision hand and eye calibrating method and system of SCARA manipulator Eye-in-Hand
TWI622865B (en) Method and device for robot direct lead through teaching
CN107214692A (en) The automatic calibration method of robot system
CN113211445B (en) Robot parameter calibration method, device, equipment and storage medium
CN106003020A (en) Robot, robot control device, and robotic system
JP2010149267A (en) Robot calibration method and device
EP3781901B1 (en) Dynamically adapting operation of a coordinate measuring machine
WO2019114631A1 (en) Method and device for acquiring tcp coordinates of robot
CN113334112A (en) Workpiece alignment method and device for secondary clamping of machine tool and computer storage medium
CN107953333B (en) Control method and system for calibrating tool at tail end of manipulator
CN114012724A (en) Industrial robot coordinate system automatic calibration method based on probe
CN108908344A (en) A kind of crusing robot mechanical arm tail end space-location method
CN111216136A (en) Multi-degree-of-freedom mechanical arm control system, method, storage medium and computer
JP6011089B2 (en) Robot system and robot control apparatus and method
CN116551665A (en) Method and device for calibrating calibration sensor coordinate system of robot
CN116572255B (en) Coordinate origin calibration method, calibration device and medium
CN116834024B (en) Calibration method, calibration device and medium of robot user coordinate system
CN111275662B (en) Workpiece positioning methods, devices, equipment and storage media based on QR codes
CN115723135A (en) Calibration method, calibration device, electronic equipment and computer storage medium

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