A calibration method and system for an embodied robot

CN122723643APending Publication Date: 2026-09-11GUANGZHOU HENGYI TECHNOLOGY DEVELOPMENT CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202610916994.4
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2026-06-24
Publication Date
2026-09-11

AI Technical Summary

Technical Problem

整个过程耗时长、对操作人员技能要求高,且难以实现动态实时补偿,标定后仍可能残留较大位姿误差,影响机器人在精细操作任务中的定位精度

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122723643A_ABST
    Figure CN122723643A_ABST
Patent Text Reader

Abstract

This invention relates to the field of robot calibration technology, specifically to a calibration method and system for a unibody robot. The method includes: controlling the unibody robot to maintain its current posture and acquiring point cloud data of the surrounding scene using a depth camera mounted on its head; wherein a calibration carrier is fixed to the chest region of the unibody robot; if a preset calibration mark is identified in the point cloud data, the current pose error is determined based on the spatial coordinates of the calibration mark in the point cloud. This invention uses a calibration carrier fixed to the chest, utilizes a head-mounted depth camera to identify preset calibration marks, calculates the rotation and translation offsets between the body coordinate system and the global coordinate system, and constructs kinematic constraint equations for trajectory planning, ensuring that calibration points are accurately aligned with desired coordinates. It supports rapid calibration with a single mark and joint constraint calibration with two marks, and can select the optimal strategy according to different environments, effectively compensating for the robot's system pose error.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of robot calibration technology, specifically to a calibration method and system for an embodied robot. Background Technology

[0002] Currently, traditional calibration methods typically require the use of external high-precision measuring equipment such as laser trackers and total stations. The deviation between the calibration point and the reference marker is measured manually, and calibration is completed by manually adjusting the robot joints or resetting parameters. The entire process is time-consuming, requires highly skilled operators, and is difficult to achieve dynamic real-time compensation. Even after calibration, significant pose errors may still remain, affecting the robot's positioning accuracy in delicate tasks.

[0003] Furthermore, in traditional calibration processes, operators cannot quickly determine whether the calibration marker has been successfully identified or whether the system is in single-marker or dual-marker mode. They typically need to connect to a computer to check the software interface or rely on experience to make a judgment. When marker detection fails, there is no intuitive way to indicate the fault through the robot's own indicator lights, leading to repeated debugging processes, low efficiency, and difficulty in meeting the needs of rapid on-site deployment and maintenance. Summary of the Invention

[0004] To achieve the above objectives, a calibration method and system for embodied robots are provided.

[0005] Firstly, a method for calibrating an embodied robot includes: The robot is controlled to maintain its current posture and collects point cloud data of the surrounding scene through a depth camera mounted on its head; wherein, a calibration carrier is fixed in the chest area of ​​the robot. If a preset calibration mark is identified in the point cloud data, the current pose error is determined based on the spatial coordinates of the calibration mark in the point cloud; wherein, the current pose error is used to characterize the rotation and translation offset between the body coordinate system and the global coordinate system of the embodied robot. The desired alignment coordinates are determined based on the coordinates of the calibration points on the calibration carrier in the body coordinate system; wherein, the calibration points are used to achieve spatial matching with the calibration marks, the calibration marks are pre-arranged external reference marks, and the desired alignment coordinates are the coordinates of the calibration points in the global coordinate system when the calibration points and calibration marks are matched. The motion compensation vector is calculated based on the current pose error and the desired alignment coordinates, and the embodied robot is driven to perform compensation motion so that the calibration point approaches the desired alignment coordinates.

[0006] Preferably, solving for the motion compensation vector based on the current pose error and the desired alignment coordinates includes: Construct the corresponding kinematic constraint equations based on the geometric characteristics of the calibration points; The kinematic constraint equations are correlated with the current joint state of the android; wherein the kinematic constraint equations are referenced to the calibration point. Based on the current pose error and the desired alignment coordinates, the robot performs trajectory planning to obtain a compensated motion trajectory that satisfies the interference-free condition. The interference-free condition is that during the execution of the compensated motion trajectory, each joint of the robot does not exceed its range of motion and the end does not collide with surrounding objects. After the compensated motion is completed, the Euclidean distance between the calibration point and the desired alignment coordinates is less than a preset accuracy threshold. Control the embodied robot to move along the compensated motion trajectory.

[0007] Preferably, determining the current pose error based on the spatial coordinates of the calibration mark in the point cloud includes: The marker offset vector is determined based on the spatial coordinates of the calibration marker in the point cloud data; wherein, the marker offset vector is used to describe the deviation of the position of the calibration marker in the global space from the origin of the global coordinate system; The extrinsic parameter matrix of the depth camera is calculated with the marker offset vector to determine the attitude error in the camera coordinate system; The current pose error is obtained by superimposing the pose error with the offset of the origin of the robot's body coordinate system in the camera coordinate system.

[0008] Preferably, before solving for the motion compensation vector based on the current pose error and the desired alignment coordinates, the method further includes: Determine the calibration strategy for the embodied robot; If the embodied robot is in a single-marker calibration strategy, then the operation of solving for the motion compensation vector based on the current pose error and the desired alignment coordinates is performed; If the embodied robot is in a dual-marker calibration strategy, then determine whether a second calibration mark exists in the point cloud data; If the second calibration mark exists in the point cloud data, the second pose error is determined based on the spatial coordinates of the second calibration mark in the point cloud data; wherein, the second pose error is used to describe the offset between the body coordinate system of the embodied robot and the local coordinate system where the second calibration mark is located; The second desired alignment coordinates are determined based on the coordinates of the second calibration point on the calibration carrier in the body coordinate system; wherein, the second calibration point is used for spatial matching with the second calibration mark, and the second desired alignment coordinates are the coordinates of the second calibration point in the global coordinate system when the second calibration point and the second calibration mark are matched; Perform the operation of solving the motion compensation vector based on the current pose error and the desired alignment coordinates, and solve the second motion compensation vector based on the second pose error and the second desired alignment coordinates, so that the second calibration point position approaches the second desired alignment coordinates.

[0009] Preferably, after controlling the android to move along the compensated motion trajectory, the method further includes: Determine whether the distance between the calibration point and the desired alignment coordinates is less than the preset accuracy threshold; If so, output a single-mark calibration completion signal to notify the user that the current single-mark calibration process has ended; Accordingly, after controlling the android to execute the second motion compensation vector, the method further includes: Determine whether the distance between the second calibration point and the second desired alignment coordinate is less than the preset accuracy threshold; If so, a dual-marker calibration completion signal will be output to notify the user that the dual-marker calibration process has ended.

[0010] Preferably, the right shoulder of the android is provided with a first status indicator light, and the right wrist of the android is provided with a second status indicator light; Accordingly, after acquiring point cloud data of the surrounding scene using a depth camera mounted on the head, the method further includes: Determine whether the calibration mark exists in the point cloud data; if yes, control the first status indicator to flash at a first frequency; if no, control the first status indicator to flash at a second frequency. Determine whether the second calibration mark exists in the point cloud data; if yes, control the second status indicator to flash at the first frequency; if no, control the second status indicator to flash at the second frequency.

[0011] Preferably, the body robot has a third status indicator light on its chest; Accordingly, after acquiring point cloud data of the surrounding scene using a depth camera mounted on the head, the method further includes: Determine whether the calibration mark exists in the point cloud data; if yes, keep the third status indicator light on; if no, turn off the third status indicator light. Determine whether the second calibration mark exists in the point cloud data; if yes, control the third status indicator to flash at a preset speed; if no, keep the current state of the third status indicator unchanged.

[0012] Secondly, this application also provides a calibration system for an embodied robot, comprising: The point cloud acquisition module is configured to control the android to maintain its current posture and acquire point cloud data of the surrounding scene through a depth camera installed on its head; wherein, a calibration carrier is fixed in the chest area of ​​the android. The pose determination module is configured to determine the current pose error based on the spatial coordinates of the calibration mark in the point cloud if a preset calibration mark is identified in the point cloud data; wherein the current pose error is used to characterize the rotation and translation offset between the body coordinate system and the global coordinate system of the embodied robot. The coordinate determination module is configured to determine the desired alignment coordinates based on the coordinates of the calibration point on the calibration carrier in the body coordinate system; wherein, the calibration point is used to complete spatial matching with the calibration mark, the calibration mark is a pre-arranged external reference mark, and the desired alignment coordinates are the coordinates of the calibration point in the global coordinate system when the calibration point and the calibration mark are matched; The execution compensation module is configured to solve for the motion compensation vector based on the current pose error and the desired alignment coordinates, and drive the embodied robot to perform compensation motion so that the calibration point approaches the desired alignment coordinates.

[0013] Thirdly, this application also provides a computer device, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the calibration method for an embodied robot.

[0014] Fourthly, this application also provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the calibration method for an embodied robot.

[0015] Compared with the prior art, the beneficial effects of the present invention are: This invention uses a chest-fixed calibration carrier and a head-mounted depth camera to identify preset calibration marks. It calculates the rotational and translational offsets between the body coordinate system and the global coordinate system, and constructs kinematic constraint equations for trajectory planning, ensuring precise alignment of calibration points with desired coordinates. It supports rapid single-marker calibration and dual-marker joint constraint calibration, and can select the optimal strategy based on different environments, effectively compensating for the robot's system pose error and improving the positioning accuracy of subsequent tasks. This invention uses status indicator lights on the right shoulder, right wrist, and chest. These lights provide real-time feedback on the detection status based on whether a calibration mark is detected, and whether a single or double mark is detected, using different modes such as flashing at different frequencies, constant light, breathing flashing, or being off. Operators can intuitively judge the mark detection status and calibration progress without needing an external display screen, reducing debugging difficulty, shortening calibration time, and improving on-site operation user-friendliness and work efficiency. Attached Figure Description

[0016] Figure 1 This is a schematic flowchart of the overall method in one embodiment of the present invention; Figure 2 This is a schematic diagram of the overall system architecture in one embodiment of the present invention; Figure 3 This is an internal structural diagram of a computer device according to one embodiment of the present invention; Figure 4 This is an internal structural diagram of a computer device according to another embodiment of the present invention. Detailed Implementation

[0017] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.

[0018] Example 1, please refer to Figure 1 This invention provides a technical solution: a calibration method for an embodied robot, comprising: S1. Control the embodied robot to maintain its current posture and collect point cloud data of the surrounding scene through a depth camera installed on its head; wherein, a calibration carrier is fixed in the chest area of ​​the embodied robot. S2. If a preset calibration mark is identified in the point cloud data, the current pose error is determined based on the spatial coordinates of the calibration mark in the point cloud; wherein, the current pose error is used to characterize the rotation and translation offset between the body coordinate system and the global coordinate system of the embodied robot. S3. Determine the desired alignment coordinates based on the coordinates of the calibration points on the calibration carrier in the body coordinate system; wherein, the calibration points are used to complete spatial matching with the calibration marks, the calibration marks are pre-arranged external reference marks, and the desired alignment coordinates are the coordinates of the calibration points in the global coordinate system when the calibration points and calibration marks are matched. S4. Solve for the motion compensation vector based on the current pose error and the desired alignment coordinates, and drive the embodied robot to perform compensation motion so that the calibration point approaches the desired alignment coordinates.

[0019] The embodied robot stands on the factory floor with a cross-shaped calibration carrier fixed to its chest area. The center of the cross is the calibration point. The robot's head depth camera scans around to collect point clouds. The robot identifies a pre-placed circular reflective mark on the wall as a calibration mark. Using the three-dimensional coordinates of the mark in the point cloud, the robot calculates the pose error between its current body coordinate system and the global coordinate system, for example, a rotational deviation of 3 degrees or a translational deviation of 5 centimeters. Based on the coordinates of the cross center on the calibration carrier in the body coordinate system, the robot calculates the position of the cross center in the global coordinate system when it aligns with the circular mark on the wall, i.e., the desired alignment coordinates. Combining the current pose error and the desired alignment coordinates, the robot solves for the motion vector that needs to be compensated, for example, moving forward 5 centimeters and rotating clockwise 3 degrees. The robot drives its wheels and waist joints to perform this compensation motion, bringing the chest cross center closer to the circular mark on the wall, thus completing the calibration.

[0020] The motion compensation vector is calculated based on the current pose error and the desired alignment coordinates, including: Construct the corresponding kinematic constraint equations based on the geometric characteristics of the calibration points; The kinematic constraint equations are correlated with the current joint state of the embodied robot; wherein the kinematic constraint equations use the calibration point as the reference origin; Based on the current pose error and the desired alignment coordinates, the robot performs trajectory planning to obtain a compensated motion trajectory that meets the interference-free condition. The interference-free condition means that during the execution of the compensated motion trajectory, each joint of the robot does not exceed its range of motion and the end does not collide with surrounding objects. After the compensated motion is completed, the Euclidean distance between the calibration point and the desired alignment coordinates is less than a preset accuracy threshold. Control the embodied robot to move along a compensated motion trajectory.

[0021] When solving for the motion compensation vector, kinematic constraint equations are first constructed based on the geometric characteristics of the calibration point. For example, the coordinates of the cross center on the calibration carrier relative to the robot's chest fixation plate are known. This constraint equation, with the calibration point as the reference origin, describes the mapping relationship between the robot's joint angles and the calibration point's coordinates in the world coordinate system. Then, the robot's current joint states (including the angle values ​​of the head, arms, waist, chassis, etc.) are read, and these current joint angle values ​​are substituted into the kinematic constraint equations to calculate the actual spatial coordinates of the calibration point in the current posture. Simultaneously, based on the calibration marks identified by the depth camera, the desired alignment coordinates, i.e., the target position that the calibration point should reach, are obtained. Based on the current pose error (e.g., translational and rotational deviations between actual and desired coordinates) and the desired alignment coordinates, trajectory planning is performed on the robot. The goal of the planning is to generate a compensated motion trajectory from the current pose to the target pose, which must meet the interference-free condition: during the movement, the robot's joints do not exceed their limit range, the end effector and body do not collide with surrounding objects, and after the movement, the Euclidean distance between the calibration point and the desired alignment coordinates is less than a preset accuracy threshold (e.g., 1 mm). For example, assuming the current chassis orientation deviation is 3 degrees and the position deviation is 5 cm, a trajectory is planned that first rotates 3 degrees clockwise and then moves forward 5 cm, during which the arm is kept tucked in to avoid colliding with the wall. After verifying that the trajectory meets the interference-free condition, the robot is controlled to move along the trajectory, so that the calibration point approaches the desired alignment coordinates, thus completing the calibration. If the distance is still greater than the threshold after one movement, the above steps are repeated for fine adjustment.

[0022] Determining the current pose error based on the spatial coordinates of the calibration markers in the point cloud includes: The marker offset vector is determined based on the spatial coordinates of the calibration markers in the point cloud data; the marker offset vector is used to describe the deviation of the calibration marker's position in the global space from the origin of the global coordinate system. The extrinsic parameter matrix of the depth camera and the marker offset vector are calculated to determine the attitude error in the camera coordinate system; The pose error is obtained by superimposing the pose error with the offset of the robot's body coordinate system origin in the camera coordinate system.

[0023] An embodied robot is calibrated in a factory workshop. The robot's head-mounted depth camera acquires a point cloud of the surrounding area, identifying pre-placed circular reflective calibration marks on the wall. The spatial coordinates of these marks are X = 2 meters, Y = 3 meters, and Z = 1 meter in the global coordinate system. The origin of the global coordinate system is set to the northeast corner of the workshop floor. The mark offset vector is the vector pointing from the global origin to the calibration mark, i.e., 2, 3, 1. The extrinsic parameter matrix of the depth camera describes the rotation and translation relationship of the camera coordinate system relative to the global coordinate system. The rotation part of the extrinsic parameter matrix is ​​known to be a 3×3 identity matrix, and the translation part is 0.1, 0.2, 0.5. The rotation part of the extrinsic parameter matrix is ​​multiplied by the mark offset vector, and the translation is added. In the first part, the coordinates of the calibration mark in the camera coordinate system are approximately 2.1, 3.2, 1.5. The difference between these coordinates and the desired position of the calibration mark on the camera is the attitude error, for example, a rotation error of 0.02 radians and a translation error of 0.05 meters. The origin of the robot's body coordinate system is located at the center of its chassis, and the offset of this origin in the camera coordinate system is known to be 0.5, 0, 0.2. The attitude error is added to this offset to obtain the current pose error, that is, the rotation deviation of the body coordinate system relative to the global coordinate system is 0.02 radians and the translation deviation is 0.1 meters. Based on this, the robot calculates the amount of motion that needs to be compensated, drives the wheels and joints to move, and aligns the calibration point with the calibration mark.

[0024] Before solving for the motion compensation vector based on the current pose error and the desired alignment coordinates, the method also includes: Determine the calibration strategy for the embodied robot; If the embodied robot is in a single-marker calibration strategy, it will perform the operation of solving the motion compensation vector based on the current pose error and the desired alignment coordinates; If the embodied robot is in a dual-marker calibration strategy, then determine whether a second calibration mark exists in the point cloud data; If a second calibration mark exists in the point cloud data, the second pose error is determined based on the spatial coordinates of the second calibration mark in the point cloud data; wherein, the second pose error is used to describe the offset between the body coordinate system of the embodied robot and the local coordinate system where the second calibration mark is located; The second desired alignment coordinates are determined based on the coordinates of the second calibration point on the calibration carrier in the body coordinate system; wherein, the second calibration point is used for spatial matching with the second calibration mark, and the second desired alignment coordinates are the coordinates of the second calibration point in the global coordinate system when the second calibration point and the second calibration mark are matched; Perform the operation of solving the motion compensation vector based on the current pose error and the desired alignment coordinates, and solve the second motion compensation vector based on the second pose error and the second desired alignment coordinates, so that the second calibration point position approaches the second desired alignment coordinates.

[0025] The embodied robot requires high-precision positioning in a large warehouse and employs a dual-marker calibration strategy. The robot scans its surroundings using a head-mounted depth camera, first identifying the first calibration mark, such as a red circular mark on a wall, and calculating the current pose error and desired alignment coordinates. Simultaneously, it checks for the presence of a second calibration mark, such as a blue square mark on the ground. If the blue square mark is identified in the point cloud, the second pose error is determined based on its spatial coordinates; this is the offset between the robot's body coordinate system and the local coordinate system of the blue square mark. For example, if the origin of the blue square mark's local coordinate system is located at its center, the robot's translational deviation relative to this origin is 0.2 meters, and its rotational deviation is 2 degrees. In addition to the crosshair center (the first calibration point), the calibration carrier also has a second calibration mark. The calibration point, such as the circular protrusion at the lower right corner of the carrier, has known coordinates in the body coordinate system. The expected coordinates when this second calibration point should align with the blue square mark are calculated; these are the second expected alignment coordinates. Then, the robot simultaneously solves for two motion compensation vectors: the first compensation vector makes the crosshair center approach the red circular mark, and the second compensation vector makes the lower right corner protrusion approach the blue square mark. Through trajectory planning, a set of joint movements is found that simultaneously satisfies both constraints without interference. For example, the robot simultaneously adjusts the chassis position and waist rotation to align the two calibration points with the two marks respectively. After completion, the robot's pose error is completely eliminated, achieving higher precision calibration. If only the first mark is available and the second mark is missing, the system reverts to a single-mark calibration strategy.

[0026] After controlling the embodied robot to move along a compensated motion trajectory, the method also includes: Determine whether the distance between the calibration point and the expected alignment coordinates is less than a preset accuracy threshold; If so, output a single-mark calibration completion signal to notify the user that the current single-mark calibration process has ended; Accordingly, after controlling the embodied robot to execute the second motion compensation vector, the following is also included: Determine whether the distance between the second calibration point and the second desired alignment coordinate is less than a preset accuracy threshold; If so, a dual-marker calibration completion signal will be output to notify the user that the dual-marker calibration process has ended.

[0027] When the embodied robot performs the single-mark calibration process, after the robot completes its movement along the compensated motion trajectory, it re-captures point clouds using a depth camera and calculates the Euclidean distance between the center of the cross on the calibration carrier and the circular reflective mark on the wall. Assuming a preset accuracy threshold of 1 mm, if the measured distance is 0.6 mm, which is less than the threshold, a single-mark calibration completion signal is output, and calibration success is displayed on the robot's screen. At the same time, a prompt sound is emitted to inform the user that the current single-mark calibration process has ended. If the distance is greater than the threshold, the above compensation steps are repeated until the target is met. In the dual-marker calibration process, the robot simultaneously performs motion compensation for the first and second marks. After the motion is completed, the distance between the first calibration point and the first desired alignment coordinate, and the distance between the second calibration point and the second desired alignment coordinate are calculated respectively. Assuming that the first distance is 0.8 mm and the second distance is 0.9 mm, both of which are less than the preset accuracy threshold of 1 mm, the dual-marker calibration completion signal is output, and the dual-marker calibration is successful, indicating to the user that the dual-marker calibration process has ended. If either distance exceeds the limit, the compensation motion continues.

[0028] The embodied robot has a first status indicator light on its right shoulder and a second status indicator light on its right wrist. Accordingly, after acquiring point cloud data of the surrounding scene using a depth camera mounted on the head, the method also includes: Determine whether a calibration mark exists in the point cloud data; if yes, control the first status indicator to flash at a first frequency; if no, control the first status indicator to flash at a second frequency. Determine whether a second calibration mark exists in the point cloud data; if yes, control the second status indicator to flash at a first frequency; if no, control the second status indicator to flash at a second frequency.

[0029] Before the embodied robot performs the calibration process, its right shoulder and right wrist are equipped with red and green dual-color LED indicator lights. After the robot starts, the head depth camera begins to collect the surrounding point cloud. If a preset circular reflective calibration mark is identified in the point cloud, the first status indicator light on the right shoulder will flash green three times per second at a rapid frequency. If no mark is identified, it will flash red once per second at a slow frequency. At the same time, if a second calibration mark, such as a square reflector, is also identified in the point cloud, the second status indicator light on the right wrist will flash green three times per second at a rapid frequency. If no second mark is identified, it will flash red once per second at a slow frequency. The operator can quickly determine whether the calibration mark has been successfully detected by observing the indicator light status without checking the screen. For example, when the green light on the right shoulder flashes rapidly and the red light on the right wrist flashes slowly, it indicates that only the first mark has been detected, and the robot will perform a single-mark calibration strategy. When both indicator lights are flashing green rapidly, it indicates that both marks have been detected, and the robot will perform a dual-mark calibration. If both lights are flashing red slowly, it indicates that no mark has been detected, and the robot's position needs to be adjusted or the environment checked.

[0030] The android has a third status indicator light on its chest; Accordingly, after acquiring point cloud data of the surrounding scene using a depth camera mounted on the head, the method also includes: Determine if a calibration mark exists in the point cloud data; if yes, keep the third status indicator light on; otherwise, turn off the third status indicator light. Determine whether a second calibration mark exists in the point cloud data; if so, control the third status indicator to flash at a preset speed; if not, keep the current state of the third status indicator unchanged.

[0031] During the calibration process, the embodied robot has a ring-shaped white LED indicator installed on its chest. After the robot starts, the head depth camera collects the surrounding point cloud. First, it checks whether a preset circular reflective calibration mark exists in the point cloud. If it exists, the third status indicator on the chest is kept on, emitting a stable white light. If it does not exist, the indicator is turned off. Next, based on the first judgment, it checks whether a second calibration mark, such as a square reflector, exists in the point cloud. If a second calibration mark exists, the third status indicator is controlled to flash at a preset speed, i.e., the brightness changes from bright to dark and back to bright every 2 seconds, simulating a breathing effect. If no second calibration mark exists, the current state of the third status indicator remains unchanged; if it was previously constantly on, it remains constantly on, and if it was previously off, it remains off. For example, if the robot detects a circular mark but not a square mark, the indicator is constantly on. If both marks are detected simultaneously, the indicator flashes. If no mark is detected, the indicator is off. The operator can intuitively understand the detection status of the calibration mark by observing the on / off and flashing patterns of the indicator. For example, flashing indicates that both marks are ready, constantly on indicates only one mark, and off indicates no mark.

[0032] Example 2, please refer to Figure 2 This invention provides a technical solution: a calibration system for an embodied robot, applicable to the aforementioned calibration method for an embodied robot, comprising: Point cloud acquisition module 1 is configured to control the embodied robot to maintain its current posture and acquire point cloud data of the surrounding scene through a depth camera installed on its head; wherein, a calibration carrier is fixed in the chest area of ​​the embodied robot. The pose determination module 2 is configured to determine the current pose error based on the spatial coordinates of the calibration mark in the point cloud if a preset calibration mark is identified in the point cloud data; wherein, the current pose error is used to characterize the rotation and translation offset between the body coordinate system and the global coordinate system of the embodied robot. The coordinate determination module 3 is configured to determine the desired alignment coordinates based on the coordinates of the calibration points on the calibration carrier in the body coordinate system; wherein, the calibration points are used to complete spatial matching with the calibration marks, the calibration marks are pre-arranged external reference marks, and the desired alignment coordinates are the coordinates of the calibration points in the global coordinate system when the calibration points and calibration marks are matched. The execution compensation module 4 is configured to solve the motion compensation vector based on the current pose error and the desired alignment coordinates, and drive the embodied robot to perform compensation motion so that the calibration point approaches the desired alignment coordinates.

[0033] Example 3, please refer to Figure 3 This invention provides a technical solution: a computer device, which can be a server. The computer device includes a processor, memory, input / output interfaces (I / O), and a communication interface. The processor, memory, and I / O interfaces are connected via a system bus, and the communication interface is connected to the system bus via the I / O interfaces. The processor provides computing and control capabilities. The memory includes a non-volatile storage medium and internal memory. The non-volatile storage medium stores an operating system, computer programs, and a database. The internal memory provides an environment for the operation of the operating system and computer programs in the non-volatile storage medium. The I / O interfaces are used for exchanging information between the processor and external devices. The communication interface is used for communicating with external terminals via a network connection. When the computer program is executed by the processor, it implements a calibration method for an embodied robot.

[0034] Example 4, please refer to Figure 4 This invention provides a technical solution: a computer device, which can be a terminal. The computer device includes a processor, a memory, an input / output interface, a communication interface, a display unit, and an input device. The processor, memory, and input / output interface are connected via a system bus, and the communication interface, display unit, and input device are also connected to the system bus via the input / output interface. The processor provides computing and control capabilities. The memory includes a non-volatile storage medium and internal memory. The non-volatile storage medium stores an operating system and computer programs. The internal memory provides an environment for the operation of the operating system and computer programs in the non-volatile storage medium. The input / output interface is used for exchanging information between the processor and external devices. The communication interface is used for wired or wireless communication with external terminals; wireless communication can be achieved through Wi-Fi, mobile cellular networks, NFC (Near Field Communication), or other technologies. When the computer program is executed by the processor, it enables distributed control of multi-task collaborative loading and unloading of a logistics robot. The display unit is used to form a visually visible image and can be a display screen, a projection device, or a virtual reality imaging device. The display screen can be an LCD screen or an e-ink screen. The input device of the computer device can be a touch layer covering the display screen, or buttons, a trackball, or a touchpad set on the computer device casing, or an external keyboard, touchpad, or mouse, etc. The embodiments of the present invention have been described in detail above with reference to the accompanying drawings. However, the present invention is not limited thereto. Various changes can be made within the scope of knowledge possessed by those skilled in the art without departing from the spirit of the present invention.

Claims

1. A calibration method for an embodied robot, characterized in that, include: The robot is controlled to maintain its current posture and collects point cloud data of the surrounding scene through a depth camera mounted on its head; wherein, a calibration carrier is fixed in the chest area of ​​the robot. If a preset calibration mark is identified in the point cloud data, the current pose error is determined based on the spatial coordinates of the calibration mark in the point cloud; wherein, the current pose error is used to characterize the rotation and translation offset between the body coordinate system and the global coordinate system of the embodied robot. The desired alignment coordinates are determined based on the coordinates of the calibration points on the calibration carrier in the body coordinate system; wherein, the calibration points are used to achieve spatial matching with the calibration marks, the calibration marks are pre-arranged external reference marks, and the desired alignment coordinates are the coordinates of the calibration points in the global coordinate system when the calibration points and calibration marks are matched. The motion compensation vector is calculated based on the current pose error and the desired alignment coordinates, and the embodied robot is driven to perform compensation motion so that the calibration point approaches the desired alignment coordinates.

2. The calibration method for a unibody robot according to claim 1, characterized in that, Solving for the motion compensation vector based on the current pose error and the desired alignment coordinates includes: Construct the corresponding kinematic constraint equations based on the geometric characteristics of the calibration points; The kinematic constraint equations are correlated with the current joint state of the android; wherein the kinematic constraint equations are referenced to the calibration point. Based on the current pose error and the desired alignment coordinates, the robot performs trajectory planning to obtain a compensated motion trajectory that satisfies the interference-free condition. The interference-free condition is that during the execution of the compensated motion trajectory, each joint of the robot does not exceed its range of motion and the end does not collide with surrounding objects. After the compensated motion is completed, the Euclidean distance between the calibration point and the desired alignment coordinates is less than a preset accuracy threshold. Control the embodied robot to move along the compensated motion trajectory.

3. The calibration method for a unibody robot according to claim 2, characterized in that, Determining the current pose error based on the spatial coordinates of the calibration markers in the point cloud includes: The marker offset vector is determined based on the spatial coordinates of the calibration marker in the point cloud data; wherein, the marker offset vector is used to describe the deviation of the position of the calibration marker in the global space from the origin of the global coordinate system; The extrinsic parameter matrix of the depth camera is calculated with the marker offset vector to determine the attitude error in the camera coordinate system; The current pose error is obtained by superimposing the pose error with the offset of the origin of the robot's body coordinate system in the camera coordinate system.

4. The calibration method for a unibody robot according to claim 3, characterized in that, Before solving for the motion compensation vector based on the current pose error and the desired alignment coordinates, the method further includes: Determine the calibration strategy for the embodied robot; If the embodied robot is in a single-marker calibration strategy, then the operation of solving for the motion compensation vector based on the current pose error and the desired alignment coordinates is performed; If the embodied robot is in a dual-marker calibration strategy, then determine whether a second calibration mark exists in the point cloud data; If the second calibration mark exists in the point cloud data, the second pose error is determined based on the spatial coordinates of the second calibration mark in the point cloud data; wherein, the second pose error is used to describe the offset between the body coordinate system of the embodied robot and the local coordinate system where the second calibration mark is located; The second desired alignment coordinates are determined based on the coordinates of the second calibration point on the calibration carrier in the body coordinate system; wherein, the second calibration point is used for spatial matching with the second calibration mark, and the second desired alignment coordinates are the coordinates of the second calibration point in the global coordinate system when the second calibration point and the second calibration mark are matched; Perform the operation of solving the motion compensation vector based on the current pose error and the desired alignment coordinates, and solve the second motion compensation vector based on the second pose error and the second desired alignment coordinates, so that the second calibration point position approaches the second desired alignment coordinates.

5. The calibration method for a unibody robot according to claim 4, characterized in that, After controlling the android to move along the compensated motion trajectory, the method further includes: Determine whether the distance between the calibration point and the desired alignment coordinates is less than the preset accuracy threshold; If so, output a single-mark calibration completion signal to notify the user that the current single-mark calibration process has ended; Accordingly, after controlling the android to execute the second motion compensation vector, the method further includes: Determine whether the distance between the second calibration point and the second desired alignment coordinate is less than the preset accuracy threshold; If so, a dual-marker calibration completion signal will be output to notify the user that the dual-marker calibration process has ended.

6. The calibration method for a unibody robot according to claim 5, characterized in that, The embodied robot has a first status indicator light on its right shoulder and a second status indicator light on its right wrist. Accordingly, after acquiring point cloud data of the surrounding scene using a depth camera mounted on the head, the method further includes: Determine whether the calibration mark exists in the point cloud data; if yes, control the first status indicator to flash at a first frequency; if no, control the first status indicator to flash at a second frequency. Determine whether the second calibration mark exists in the point cloud data; if yes, control the second status indicator to flash at the first frequency; if no, control the second status indicator to flash at the second frequency.

7. The calibration method for a unibody robot according to claim 6, characterized in that, The body robot is equipped with a third status indicator light on its chest; Accordingly, after acquiring point cloud data of the surrounding scene using a depth camera mounted on the head, the method further includes: Determine whether the calibration mark exists in the point cloud data; if yes, keep the third status indicator light on; if no, turn off the third status indicator light. Determine whether the second calibration mark exists in the point cloud data; if yes, control the third status indicator to flash at a preset speed; if no, keep the current state of the third status indicator unchanged.

8. A calibration system for a hymenoid robot, applicable to the calibration method for a hymenoid robot as described in any one of claims 1-7, characterized in that, include: The point cloud acquisition module is configured to control the android to maintain its current posture and acquire point cloud data of the surrounding scene through a depth camera installed on its head; wherein, a calibration carrier is fixed in the chest area of ​​the android. The pose determination module is configured to determine the current pose error based on the spatial coordinates of the calibration mark in the point cloud if a preset calibration mark is identified in the point cloud data; wherein the current pose error is used to characterize the rotation and translation offset between the body coordinate system and the global coordinate system of the embodied robot. The coordinate determination module is configured to determine the desired alignment coordinates based on the coordinates of the calibration point on the calibration carrier in the body coordinate system; wherein, the calibration point is used to complete spatial matching with the calibration mark, the calibration mark is a pre-arranged external reference mark, and the desired alignment coordinates are the coordinates of the calibration point in the global coordinate system when the calibration point and the calibration mark are matched; The execution compensation module is configured to solve for the motion compensation vector based on the current pose error and the desired alignment coordinates, and drive the embodied robot to perform compensation motion so that the calibration point approaches the desired alignment coordinates.

9. A computer device comprising a memory and a processor, wherein the memory stores a computer program, characterized in that, When the processor executes the computer program, it implements the steps of the method according to any one of claims 1 to 7.

10. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 7.