Robot, robot work docking method, and storage medium

By combining visual and positioning sensors, the robot's relative pose is calculated in real time and path planning is performed, which solves the problem of docking failure caused by low robot positioning accuracy and improves the docking success rate.

CN116551664BActive Publication Date: 2026-01-16SHENZHEN PUDU TECH CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202210107169.1
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-01-28
Publication Date
2026-01-16
Estimated Expiration
2042-01-28

AI Technical Summary

Technical Problem

The robot failed to dock due to low positioning accuracy when adding water or charging.

Method used

By combining visual and positioning sensors, images and positioning data are acquired in real time, the robot's relative pose to the calibration object is calculated, and when the calibration object is not included in the image, the pose is corrected using preset rules and differences to achieve path planning and docking.

Benefits of technology

It improved the robot's positioning accuracy and reduced the docking failure rate.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116551664B_ABST
    Figure CN116551664B_ABST
Patent Text Reader

Abstract

The robot comprises a memory and a processor. The memory stores a computer program. When the processor executes the computer program, the following steps are implemented. During movement of the robot from a target position to a first preset position, a first image is collected in real time by a visual sensor, and first relative poses are obtained by collecting first positioning data in real time by a positioning sensor. Second relative poses are obtained according to the first image, the first relative poses and a first difference value. After first target paths are obtained by real-time path planning according to the second relative poses and a preset relative pose, the robot is controlled to move along the first target paths to the first preset position. When it is determined that the robot has moved to the first preset position, the robot is controlled to move to a docking target to dock with the docking target. The problem that a robot is prone to docking failure due to low positioning accuracy can be solved.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application belongs to the technical field of robots, and particularly relates to a robot, a robot work docking method and a storage medium. BACKGROUND

[0002] With the development of the Internet era, intelligent robots are increasingly entering human life to help humans complete many things. Typically, intelligent robots can include cleaning robots (sweeping machines, mopping machines), service robots (meal delivery robots, oil filling robots, shopping guide robots), entertainment machines (chatting robots), and the like.

[0003] Taking a cleaning robot as an example, when the robot completes cleaning work, if it encounters a situation of insufficient clean water or insufficient power, the robot will perform autonomous water filling or charging work, which usually needs the robot to dock with a work station (such as a water filling station or a charging base station) to be completed.

[0004] At present, when the robot needs to fill water or charge, it mainly locates the pose information of the robot relative to the work station through the work station image containing a calibration object collected by the visual sensor installed on the robot, wherein the calibration object is arranged on the work station. However, when the robot rotates or moves, the work station image collected by the visual sensor may not contain the calibration object, so that the real-time pose information of the robot relative to the work station cannot be obtained, resulting in low positioning accuracy of the robot and further leading to docking failure. SUMMARY

[0005] Therefore, the present application provides a robot, a robot work docking method and a storage medium, which can solve the problem that the current robot is prone to docking failure due to low positioning accuracy.

[0006] A first aspect of the embodiment of the present application provides a robot, which comprises a memory and a processor, the memory stores executable program code, and the processor is used to execute the executable code to realize the following steps:

[0007] In the process of controlling the robot to move from a target position to a first preset position, a first image is collected in real time by a visual sensor, and first positioning data are collected in real time by a positioning sensor, and a first relative pose of the robot relative to a calibration object is obtained according to the first positioning data, the calibration object being arranged on a docking target of the robot;

[0008] When the calibration object is not contained in the first image, a second relative pose of the robot relative to the calibration object is obtained according to the first relative pose and a first preset rule;

[0009] When the calibration object is contained in the first image, the second relative pose is obtained according to the first image;

[0010] The first target path is obtained according to the second relative pose and the preset relative pose in real time, and the robot is controlled to move along the first target path to the first preset position; the preset relative pose is a relative pose at the first preset position;

[0011] When it is determined that the robot moves to the first preset position, the robot is controlled to move to the docking target to dock with the docking target.

[0012] In a further implementation form of the first aspect, when it is determined that the robot moves to the first preset position, the robot is controlled to move to the docking target to dock with the docking target, comprising:

[0013] When it is determined that the robot moves to the first preset position, a second image containing the calibration object is collected by the vision sensor, and a third relative pose of the robot relative to the calibration object is obtained according to the second image;

[0014] After the first direction is obtained according to the third relative pose, the robot is controlled to move along the first direction to dock with the docking target.

[0015] In a further implementation form of the first aspect, a sensor is arranged on the robot or the docking target, the sensor sends a docking success information when the robot and the docking target successfully dock, and after the first direction is obtained according to the third relative pose, the robot is controlled to move along the first direction to dock with the docking target, comprising:

[0016] The robot is controlled to move along the first direction by a first distance;

[0017] During the movement of the robot along the first direction by the first distance, when the docking success information is received, the robot is controlled to stop moving;

[0018] After the robot moves along the first direction by the first distance, when the docking success information is not received, the robot is controlled to move to the target position.

[0019] In a further implementation form of the first aspect, before the robot moves to the target position after the robot moves along the first direction by the first distance and the docking success information is not received, the processor is further configured to execute the executable program code to implement the following steps:

[0020] Second positioning data is collected by the positioning sensor, and a fourth relative pose of the robot relative to the calibration object is obtained according to the second positioning data;

[0021] After the second direction and the second distance are obtained according to the fourth relative pose, the robot is controlled to move along the second direction by the second distance to dock with the docking target;

[0022] After the robot moves along the second direction by the second distance, if the docking success information is not received, the robot is controlled to move to the target position.

[0023] In a further implementation form of the first aspect, when the calibration object is not contained in the first image, the second relative pose of the robot relative to the calibration object is obtained according to the first image and the first preset rule, comprising:

[0024] The first relative pose is added by the first difference value to obtain the second relative pose.

[0025] The first difference value is a difference value between a fifth relative pose and a sixth relative pose, the fifth relative pose is a relative pose of the robot relative to the calibration object obtained by a third image containing the calibration object collected by the vision sensor when the robot is located at the target position, and the sixth relative pose is a relative pose of the robot relative to the calibration object obtained by the third positioning data collected by the positioning sensor when the robot is located at the target position.

[0026] In a further implementation form of the first aspect, when the calibration object is contained in the first image, the second relative pose is obtained according to the first image, comprising:

[0027] The seventh relative pose of the robot relative to the calibration object is obtained according to the first image, and the seventh relative pose is directly taken as the second relative pose.

[0028] In a further implementation form of the first aspect, the vision sensor collects the first image according to a first preset frequency, and the positioning sensor collects the first positioning data according to a second preset frequency, the second preset frequency is greater than the first preset frequency; during the movement of the robot from the target position to the first preset position, the processor is further used to implement the following steps when executing the executable program code:

[0029] It is judged whether the latest first image is a used image or an unused image;

[0030] If the latest first image is a used image, the latest first positioning data is obtained by the positioning sensor, the first relative pose is determined according to the latest first positioning data, and the second relative pose is obtained according to the first relative pose and the first preset rule;

[0031] If the latest first image is an unused image, it is determined whether the calibration object is contained in the latest first image;

[0032] When the second relative pose has been obtained according to the latest first image, the latest first image is represented as a used image, otherwise, the latest first image is represented as an unused image.

[0033] In a first implementation form of the first aspect, after obtaining the first direction according to the third relative pose, before controlling the robot to move a first distance along the first direction, the processor, when executing the executable code, is configured to implement the following steps:

[0034] calculating a second difference value between the third relative pose and the preset relative pose, and when the second difference value meets a first preset range, controlling the robot to move the first distance along the first direction;

[0035] when the second difference value does not meet the first preset range, controlling the robot to move to the target position.

[0036] In another implementation form of the first aspect, the processor, when executing the executable code, is configured to implement the following steps:

[0037] processing the point cloud data collected by the laser sensor by using a SLAM method to obtain a map, wherein the laser sensor is carried on the robot, the map includes a map of the robot and a region where the docking target is located, and the map is provided with the target position and the first preset position.

[0038] The second aspect of the embodiment of the application provides a robot work docking device, which comprises:

[0039] a collection module, configured to collect a first image in real time by using a visual sensor and collect first positioning data in real time by using a positioning sensor during control of the robot to move from the target position to the first preset position, and obtain a first relative pose of the robot relative to a calibration object according to the first positioning data, the calibration object being arranged on a docking target of the robot, and the visual sensor and the positioning sensor being carried on the robot;

[0040] a first acquisition module, configured to obtain a second relative pose of the robot relative to the calibration object according to the first relative pose and a first preset rule when the first image does not contain the calibration object;

[0041] a second acquisition module, configured to obtain the second relative pose according to the first image when the first image contains the calibration object;

[0042] a first control module, configured to perform path planning in real time according to the second relative pose and a preset relative pose to obtain a first target path, and continue to control the robot to move to the first preset position along the first target path; the preset relative pose is a relative pose at the first preset position;

[0043] a second control module, configured to control the robot to move to the docking target to dock with the docking target when it is determined that the robot moves to the first preset position.

[0044] The third aspect of the embodiment of the application provides a robot work docking method, which comprises:

[0045] During the process of controlling the robot to move from the target position to the first preset position, the first image is acquired in real time through the vision sensor and the first positioning data is acquired in real time through the positioning sensor. The first relative pose of the robot relative to the calibration object is obtained based on the first positioning data. The calibration object is set on the robot's docking target, and the vision sensor and the positioning sensor are mounted on the robot.

[0046] The second relative pose is obtained based on the first image, the first relative pose, and the first difference.

[0047] The robot performs real-time path planning based on the second relative pose and the preset relative pose to obtain the first target path, and continues to control the robot to move along the first target path to the first preset position; the preset relative pose is the relative pose at the first preset position.

[0048] Once the robot has moved to the first preset position, control the robot to move toward the docking target and dock with it.

[0049] The first difference is the difference between the fifth relative pose and the sixth relative pose. The fifth relative pose is the robot's relative pose relative to the calibration object, obtained by the third image containing the calibration object collected by the vision sensor when the robot is at the target position. The sixth relative pose is the robot's relative pose relative to the calibration object, obtained by the third positioning data collected by the positioning sensor when the robot is at the target position.

[0050] A fourth aspect of this application provides a computer-readable storage medium storing a computer program that, when run on a processor, implements the robot docking method of any one of the first aspects of this application.

[0051] In this embodiment, during the process of controlling the robot to move from the target position to the first preset position, a first image is acquired in real time through a vision sensor, and first positioning data is acquired in real time through a positioning sensor. Based on the first positioning data, a first relative pose of the robot relative to a calibration object is obtained, and the calibration object is set on the docking target of the robot. When the first image does not contain the calibration object, a second relative pose of the robot relative to the calibration object is obtained based on the first relative pose and a first preset rule. When the first image contains the calibration object, the second relative pose is obtained based on the first image. Based on the second relative pose and the preset relative pose, path planning is performed in real time to obtain a first target path, and the robot continues to move along the first target path to the first preset position. The preset relative pose is the pose of the robot relative to the calibration object when it is located at the first preset position. When it is determined that the robot has moved to the first preset position, the robot is controlled to move towards the docking target and dock with the docking target.

[0052] It can be seen through the above method that the high-precision positioning of the robot is realized by using the visual sensor in combination with the positioning sensor in the embodiment of the application, so that the relative pose of the robot relative to the calibration object can be obtained when the image collected by the visual sensor does not contain the calibration object, thereby improving the positioning accuracy and reducing the docking failure rate.

[0053] It can be understood that the beneficial effects of the above-mentioned second aspect and fourth aspect can be referred to the related description in the first aspect, which will not be repeated here. BRIEF DESCRIPTION OF DRAWINGS

[0054] Figure 1 A structural schematic block diagram of a robot provided by an embodiment of the application is shown;

[0055] Figure 2 A flowchart of a robot operation docking method provided by an embodiment of the application is shown;

[0056] Figure 3 A schematic diagram of a world coordinate system establishment method provided by an embodiment of the application is shown;

[0057] Figure 4 A flowchart of a robot operation docking method provided by another embodiment of the application is shown;

[0058] Figure 5 A flowchart of a robot operation docking method provided by another embodiment of the application is shown;

[0059] Figure 6 A flowchart of a robot operation docking method provided by another embodiment of the application is shown;

[0060] Figure 7 A flowchart of a robot operation docking method provided by another embodiment of the application is shown;

[0061] Figure 8 A flowchart of a robot operation docking method provided by another embodiment of the application is shown;

[0062] Figure 9 A flowchart of a robot operation docking method provided by another embodiment of the application is shown;

[0063] Figure 10 A flowchart of a robot operation docking method provided by another embodiment of the application is shown;

[0064] Figure 11 A composition schematic block diagram of a robot operation docking device provided by an embodiment of the application is shown;

[0065] Figure 12 Fig. 1 shows a flowchart of a robot work docking method according to an embodiment of the present application. DETAILED DESCRIPTION

[0066] Referring to Figure 1 Fig. 1 shows a structure diagram of a robot according to an embodiment of the present application. For ease of illustration, only parts related to the embodiments of the present application are shown. The robot includes:

[0067] A processor 110 and a memory 120. The processor 110 is the operation and control core of the robot, and is the final execution unit of information processing and program running. The memory 120 is, for example, a hard disk drive memory, a non-volatile memory (such as a flash memory or other electronically programmable memory for forming a solid state drive), a volatile memory (such as a static or dynamic random access memory), etc., which is not limited in the embodiments of the present application. The memory 120 stores a computer program 130. The processor 110 linked with the memory 120 calls the computer program 130 stored in the memory 120 to execute the following robot work docking method.

[0068] Referring to Figure 2 Fig. 1 shows a flowchart of a robot work docking method according to an embodiment of the present application. As shown in the figure, the work docking method can include the following steps:

[0069] S21, in the process of controlling the robot to move from a target position to a first preset position, a first image is collected in real time by a visual sensor, and first positioning data is collected in real time by a positioning sensor, and a first relative pose of the robot relative to a calibration object is obtained according to the first positioning data. The visual sensor and the positioning sensor are carried on the robot, and the calibration object is arranged on the docking target of the robot.

[0070] In the embodiments of the present application, when the robot needs to work with the docking target, the robot will first arrive at the target position and move from the target position to the first preset position. It should be noted that the target position and the first preset position can be positions pre-deployed in a map, and the map includes a map of an area where the robot and the docking target are located.

[0071] As an example, the robot in the present application can be a cleaning robot, and the docking target can be a water filling station or a charging base station. The calibration object can be a calibration board provided with a checkerboard pattern, a four-month label pattern and a solid circle array pattern, and the calibration board is arranged on the docking target of the robot.

[0072] Referring to Figure 3In the embodiment of the present application, the center point of the calibration object is taken as the origin O of the world coordinate system, the horizontal direction through the origin on the plane where the calibration object is located is taken as the Y-axis of the world coordinate system, and the direction through the origin and perpendicular to the plane where the calibration object is located is taken as the X-axis of the world coordinate system. Since the world coordinate system is established on the plane of the calibration object, the Z coordinate of the calibration object in the world coordinate system is 0.

[0073] As shown in Figure 3 , a target position and a first preset position can be set in a map. When the cleaning robot has a water adding or charging requirement, the cleaning robot can be controlled to first reach the preset target position and then move from the target position to the first preset position. In the process of moving from the target position to the first preset position, a first image is collected in real time by a vision sensor on the robot. The first image can be any first image collected by the robot in the process of moving from the target position to the first preset position. At the same time, first positioning data is collected in real time by a positioning sensor on the robot. Similarly, the first positioning data is any first positioning data collected by the robot in the process of moving from the target position to the first preset position.

[0074] As an example, the positioning sensor in the present application can be a wheel odometer sensor. According to the first positioning data collected by the wheel odometer sensor, the rotational speed of the left wheel a l and the rotational speed of the right wheel a r on the robot chassis are obtained. The unit of the rotational speed is (turn / s). Since the radius R of the wheel of the robot is known, the circumference S of the corresponding wheel can also be obtained. Further, the advancing speed υ l of the left wheel a l S and the advancing speed υ r of the right wheel a r S can be obtained. Generally, the speed of the center point of the left and right wheel shafts is taken as the speed of the robot body, that is, After the speed of the robot body is obtained, the angular velocity can be obtained according to the relationship between the linear velocity υ and the angular velocity ω: υ = ω * R.

[0075] Generally, in a short time interval Δt, the robot is considered to be uniformly moving. Then, according to the pose information of the robot at the previous time, the speed and the angular velocity at the current time, and the preset trajectory deduction algorithm, the increments of the robot on the X and Y axes in the world coordinate system and the offset of the heading angle at the current time can be obtained, and further, the first relative pose of the robot relative to the calibration object at the current time can be obtained.

[0076] It should be further noted that the sensors carried in the embodiment of the present application are connected with the robot and can transmit data to the robot.

[0077] S22, when the calibration object is not contained in the first image, obtaining a second relative pose of the robot relative to the calibration object according to the first relative pose and a first preset rule.

[0078] In another embodiment of the present application, when the calibration object is not contained in the first image, obtaining a second relative pose of the robot relative to the calibration object according to the first relative pose and a first preset rule, comprises:

[0079] Adding the first relative pose to the first difference value to obtain the second relative pose.

[0080] It should be noted that the first difference value is the difference between the fifth relative pose and the sixth relative pose when the robot is located at the target position, wherein the fifth relative pose is the relative pose of the robot relative to the calibration object obtained according to the third image containing the calibration object collected by the vision sensor on the robot when the robot is located at the target position; the sixth relative pose is the relative pose of the robot relative to the calibration object obtained according to the third positioning data collected by the positioning sensor on the robot when the robot is located at the target position.

[0081] Wherein, the specific process of obtaining the fifth relative pose according to the third image containing the calibration object can be referred to the following example:

[0082] As an example, assuming that the calibration object in the present application is a calibration board provided with a circular array pattern, after the first image is collected by the vision sensor, the first image can be processed by using a preset image detection algorithm (for example, Blob feature analysis algorithm, DBSCAN density clustering algorithm and PNP algorithm) to obtain a target region, wherein the target region is an image region of the first image containing the calibration object, and the pixel coordinates (μ, v) of each pixel in the target region in the pixel coordinate system of the first image can also be obtained. Since the world coordinate system of the calibration board is predefined and the size of each circle on the calibration board is known, the physical coordinates (X, Y) of each pixel in the target region in the world coordinate system can be correspondingly obtained.

[0083] After the pixel coordinates (μ, v) of each pixel in the target region in the pixel coordinate system of the first image and the physical coordinates (X, Y) of each pixel in the target region in the world coordinate system are obtained, a preset camera (visual sensor) calibration algorithm is used for camera calibration, so that the extrinsic matrix R (rotation matrix) and T (translation matrix) of the camera are obtained, wherein the extrinsic matrix reflects the relative position of the camera coordinate system and the world coordinate system. Therefore, after the extrinsic matrix of the camera is obtained, the coordinates of the camera in the world coordinate system are obtained; wherein the coordinates of the camera in the world coordinate system are the pose of the camera relative to the calibration object, because the visual sensor is mounted on the robot, so the relative pose of the robot relative to the calibration object can be obtained according to the pose of the camera relative to the calibration object and the position of the camera on the robot. The relative pose includes the coordinate values of the robot in the X axis and the Y axis of the world coordinate system, and the included angle between the heading of the robot and the X axis of the world coordinate system.

[0084] In the embodiment of the application, when the calibration object is not included in the first image, the relative pose of the robot relative to the calibration object cannot be directly obtained from the first image. At this time, the second relative pose obtained by adding the first difference value to the first relative pose of the robot relative to the calibration object obtained from the first positioning data of the positioning sensor is taken as the relative pose of the robot relative to the calibration object, that is, the second relative pose is the simulated relative pose of the robot relative to the calibration object obtained from the image containing the calibration object collected by the visual sensor.

[0085] Then, the second relative pose is the relative pose of the robot relative to the calibration object at the current position (the current position is any position of the robot in the process of moving from the target position to the first preset position) in the process of moving from the target position to the first preset position.

[0086] S23, when the calibration object is included in the first image, obtaining the second relative pose according to the first image.

[0087] In another embodiment of the application, when the calibration object is included in the first image, the second relative pose is obtained according to the first image, comprising:

[0088] The seventh relative pose of the robot relative to the calibration object is obtained according to the first image, and the seventh relative pose is directly taken as the second relative pose.

[0089] In the embodiment of the application, when the calibration object is included in the first image, the seventh relative pose of the robot relative to the calibration object can be directly obtained according to the first image containing the calibration object, and the third relative pose obtained is taken as the second relative pose.

[0090] The process of obtaining the seventh relative pose according to the first image can refer to the process of obtaining the fifth relative pose according to the third image in S22. Details are not described herein.

[0091] Of course, a second pose can be obtained according to the first image, which reflects the pose of the visual sensor on the robot relative to the calibration object during the movement of the robot from the target position to the first preset position. Since the visual sensor is arranged on the robot, the seventh relative pose of the robot (the center in front of the robot or the center of the robot) relative to the calibration object can be obtained according to the second pose and the position of the visual sensor on the robot. After obtaining the seventh relative pose, the seventh relative pose is taken as the second relative pose, which represents the relative pose of the robot relative to the calibration object when the robot is at the current position (any position of the robot during the movement from the target position to the first preset position).

[0092] Correspondingly, the second relative pose of the robot relative to the calibration object includes the coordinate values of the robot on the X-axis and the Y-axis of the world coordinate system and the angle between the heading direction of the robot and the X-axis.

[0093] S24, real-time path planning is performed according to the second relative pose and the preset relative pose to obtain a first target path, and the robot is controlled to move along the first target path to the first preset position; the preset relative pose is the relative pose at the first preset position.

[0094] In the embodiment of the application, the second relative pose obtained in S22 or S23 and the preset relative pose of the robot relative to the calibration object when the robot is at the first preset position in an ideal case are used to perform real-time path planning to obtain a first target path.

[0095] After obtaining the first target path, the robot can be controlled to move from the position of the second relative pose to the first preset position along the first target path.

[0096] For ease of description, the target path obtained according to the second relative pose and the preset relative pose is defined as the first target path.

[0097] S25, when it is determined that the robot moves to the first preset position, the robot is controlled to move to the docking target to dock with the docking target.

[0098] In the embodiment of the application, when it is determined that the robot moves to the first preset position along the first target path, the robot is controlled to move from the first preset position to the docking target to dock with the docking target.

[0099] Referring to Figure 4In another embodiment of the present application, when it is determined that the robot moves to the first preset position, the robot is controlled to move to the docking target and dock with the docking target, comprising:

[0100] S2501, when it is determined that the robot moves to the first preset position, a second image containing the calibration object is collected by the visual sensor, and a third relative pose of the robot relative to the calibration object is obtained according to the second image.

[0101] In the embodiments of the present application, the detailed process of obtaining the third relative pose according to the second image can refer to the related description in S22, which will not be repeated here.

[0102] For the convenience of description, the image containing the calibration object collected by the visual sensor when the robot moves to the first preset position is defined as the second image, and the pose of the robot relative to the calibration object obtained according to the second image is defined as the third relative pose.

[0103] S2502, after obtaining the first direction according to the third relative pose, the robot is controlled to move along the first direction and dock with the docking target.

[0104] In the embodiments of the present application, the third relative pose obtained in S2501 contains the coordinate values of the robot on the X-axis and Y-axis of the world coordinate system and the heading angle of the robot, the heading angle is the included angle between the heading direction of the robot and the X-axis of the world coordinate system, and the direction of the heading angle is the first direction, and the first direction is also the direction from the current position of the robot to the docking target.

[0105] For the convenience of description, the included angle between the heading angle of the robot in the third relative pose and the X-axis is defined as the first direction.

[0106] Referring to Figure 5 In another embodiment of the present application, a sensor is arranged on the robot or the docking target, the sensor sends a docking success information when the robot and the docking target successfully dock, and after obtaining the first direction according to the third relative pose, the robot is controlled to move along the first direction and dock with the docking target, comprising:

[0107] S51, the robot is controlled to move a first distance along the first direction.

[0108] In the embodiments of the present application, after obtaining the first direction according to the third relative pose, the robot can be controlled to move a first distance along the first direction, and the first distance can be a distance preset according to the actual situation.

[0109] S52, during the movement of the robot along the first direction by the first distance, when the docking success information is received, the robot is controlled to stop moving.

[0110] In the embodiments of the present application, if the first docking port of the robot successfully docks with the second docking port of the docking target during the movement of the robot in the first direction by the first distance, the robot will receive docking success information. The docking success information can be information sent by a limit switch sensor, which can be located on the first docking port or the second docking port.

[0111] For example, the first docking port can be a water inlet of the cleaning robot, and the corresponding second docking port can be a water outlet of the water filling station; or the first docking port can be a charging port of the cleaning robot, and the corresponding second docking port can be a charging socket of the charging base. During the movement of the cleaning robot in the first direction by the first distance, if the docking success information is received, it indicates that the first docking port of the cleaning robot successfully docks with the second docking port of the docking target.

[0112] S53, after the robot moves in the first direction by the first distance, if the docking success information is not received, the robot is controlled to move to the target position.

[0113] In the embodiments of the present application, during the movement of the robot in the first direction by the first distance, and after the robot moves in the first direction by the first distance, if the docking success information sent by the limit switch sensor on the robot or the docking target is not received, after the robot moves in the first direction by the first distance, the robot is controlled to stop moving to the docking target, and the robot is controlled to move from the position after moving by the first distance to the target position.

[0114] Referring to Figure 6 In another embodiment of the present application, before the robot moves to the target position after the robot moves in the first direction by the first distance and the docking success information is not received, the processor is further configured to implement the following steps when executing the executable program code:

[0115] S61, the second positioning data is collected by the positioning sensor, and the fourth relative pose of the robot relative to the calibration object is obtained according to the second positioning data.

[0116] In the embodiments of the present application, after the robot is controlled to move in the first direction by the first distance, if the docking success information sent by the sensor on the first docking port or the sensor on the second docking port is not received, it indicates that the third relative pose obtained according to the second image collected by the robot at the first preset position is not accurate. At this time, the fourth relative pose of the robot relative to the calibration object is obtained directly according to the second positioning data collected by the positioning sensor.

[0117] For the convenience of description, the positioning data collected by the positioning sensor on the robot after the robot moves along the first direction by the first distance and before the successful docking information is received is defined as second positioning data, and the relative pose of the robot relative to the calibration object obtained according to the second positioning data is defined as a fourth relative pose.

[0118] It should be noted that the process of obtaining the fourth relative pose according to the second positioning data can refer to the related description of obtaining the first relative pose according to the first positioning data in S21, which will not be repeated here.

[0119] S62, after obtaining the second direction and the second distance according to the fourth relative pose, controlling the robot to dock with the docking target along the second direction by the second distance.

[0120] In the embodiments of the present application, the fourth relative pose includes the coordinate values of the robot on the X axis and the Y axis of the world coordinate system and the heading angle of the robot, the heading angle is the included angle between the heading direction of the robot and the X axis of the world coordinate system, and the direction of the heading angle is the second direction, and the second direction is also the direction from the current position of the robot to the docking target.

[0121] The second distance is the coordinate value of the robot on the X axis of the world coordinate system, which represents the distance from the robot at the position of the fourth relative pose to the center O (i.e. the origin of the world coordinate system) of the calibration object.

[0122] For the convenience of description, the included angle between the heading angle of the robot in the fourth relative pose and the X axis is defined as the second direction, and the coordinate value of the robot on the X axis of the world coordinate system is defined as the second distance.

[0123] S63, after the robot moves along the second direction by the second distance, when the successful docking information is not received, controlling the robot to move to the target position.

[0124] In the embodiments of the present application, after obtaining the second direction and the second distance according to the steps of S61-S62, the robot can be controlled to continue moving along the second direction by the second distance to dock with the docking target.

[0125] During the process of the robot moving along the second direction by the second distance, and after the robot moves along the second direction by the second distance, when the successful docking information is not received from the limit switch sensor on the robot or the docking target, the robot is controlled to stop moving to the docking target after the robot moves along the second direction by the second distance, and the robot is controlled to move from the position after moving by the second distance to the target position.

[0126] Referring to Figure 7In another embodiment of the present application, the visual sensor collects the first image in real time at a first preset frequency; the positioning sensor collects the first positioning data in real time at a second preset frequency, and the second preset frequency is greater than the first preset frequency; during the movement of the robot from the target position to the first preset position, the processor is further configured to implement the following steps when executing the executable program code:

[0127] S71, determining whether the latest first image is a used image.

[0128] In the embodiment of the present application, the first preset frequency is the frequency of the visual sensor collecting image data, and the second preset frequency is the frequency of the positioning sensor collecting positioning data. The positioning sensor (such as a wheel odometer) has a higher frame rate than the visual sensor, that is, the second preset frequency is greater than the first preset frequency (that is, the positioning sensor collects more positioning data than the visual sensor in a unit of time).

[0129] During the movement of the robot from the target position to the first preset position, the image collected by the visual sensor on the robot is the first image, that is, the first image is any first image collected by the robot during the movement from the target position to the first preset position.

[0130] In the embodiment of the present application, the image containing the calibration object collected by the visual sensor on the robot is mainly used to obtain the relative pose of the robot relative to the calibration object. When the image collected by the visual sensor on the robot does not contain the calibration object, the relative pose of the robot relative to the calibration object is obtained according to the positioning data collected by the positioning sensor on the robot and the first difference.

[0131] During the movement of the robot from the target position to the first preset position, in order to obtain the relative pose of the robot relative to the calibration object in real time, and further improve the positioning accuracy of the robot. In the embodiment of the present application, it is necessary to determine whether the image collected by the visual sensor is a used image (that is, whether it is the latest image collected by the visual sensor on the robot).

[0132] S72, if the latest first image is a used image, obtaining the latest first positioning data through the positioning sensor, determining the first relative pose according to the latest first positioning data, and obtaining the second relative pose according to the first relative pose and the first preset rule.

[0133] In the embodiment of the present application, if the first image is a used image, that is, the first image is not the latest image collected by the visual sensor on the robot during the movement of the robot, the latest first positioning data (that is, the positioning data collected at the current position of the robot during the movement of the robot from the target position to the first preset position) is collected through the positioning sensor on the robot.

[0134] After obtaining the latest first positioning data, the latest first relative pose is obtained according to the first positioning data, and the second relative pose is obtained according to the first relative pose and the first preset rule.

[0135] The process of obtaining the second relative pose according to the first relative pose and the first preset rule can refer to the related description in S21, and will not be described here.

[0136] S73, if the latest first image is a never-used image, determining whether the first image contains a calibration object; wherein the first image is a never-used image when obtaining the second relative pose according to the first image.

[0137] In the embodiment of the application, if the first image is a never-used image, that is, the first image is the latest image collected by the visual sensor on the robot during the movement of the robot. At this time, it is determined whether the first image contains a calibration object. When the first image contains a calibration object, the seventh relative pose of the robot relative to the calibration object can be directly obtained according to the first image, and the seventh relative pose is taken as the second relative pose.

[0138] Referring to Figure 8 In another embodiment of the application, after obtaining the first direction according to the third relative pose, before controlling the robot to move a first distance along the first direction, the processor is used to execute executable code to implement the following steps:

[0139] S81, calculating a second difference value between the third relative pose and a preset relative pose, and when the second difference value meets a first preset range, controlling the robot to move a first distance along the first direction.

[0140] In the embodiment of the application, referring to Figure 3 , assuming that the third relative pose of the robot relative to the calibration object is (x2, y2, theta2) when the robot is at the first preset position, and the preset relative pose is (0, y1, 0), the difference C1 between y1 and y2 is calculated, and the second difference x2 and C1 are obtained. It is determined whether x2 and C1 are both within a second preset range. If the second difference is within the second preset range, the robot is controlled to move a first distance along the first direction obtained in S24 to dock with the docking target.

[0141] S82, when the second difference does not meet the first preset range, the robot is controlled to move to the target position.

[0142] In the embodiment of the application, when the second difference does not meet the second preset range, the robot is controlled to move to the target position, and the positioning and docking work is restarted.

[0143] In another embodiment of the present application, the processor is configured to implement the following steps when executing the executable code:

[0144] The point cloud data collected by the laser sensor is processed by using the SLAM method to obtain a map, wherein the laser sensor is mounted on the robot, and the map includes a map of a region where the robot and the docking target are located, and the map is provided with a target position and a first preset position.

[0145] For example, the robot in the present application can be a cleaning robot, and the docking target can be a water filling station or a charging base station. Before performing the docking method of the present application, the point cloud data of the region where the cleaning robot and the water filling station or the charging base station are located can be collected by the laser sensor on the cleaning robot, and the collected point cloud data is processed by using the SLAM method to obtain a map containing the region where the cleaning robot and the water filling station or the charging base station are located.

[0146] After obtaining the map, as shown in Figure 3 , the target position and the first preset position can be set in the map, and when the cleaning robot needs to be filled with water or charged, the cleaning robot can be controlled to first reach the preset target position and then move from the target position to the first preset position.

[0147] Of course, the laser sensor + SLAM method is only one method for obtaining the map in the present application, and cannot constitute the only limitation of the present application. In addition, the wheel odometer method, the visual sensor + SLAM method, etc. can also be used to obtain the map including the region where the robot and the docking target are located.

[0148] It should be noted again that the sensors mounted in the embodiments of the present application are connected with the robot, and the data can be transmitted to the robot.

[0149] Referring to Figure 9 , in another embodiment of the present application, when the second difference does not satisfy the first preset range, the robot is controlled to move to the target position, and then when the robot does not receive the docking success information after moving a second distance along the second direction, the robot is controlled to move to the target position, and the processor is configured to implement the following steps when executing the executable code:

[0150] S91, in the process of controlling the robot to move from the target position to the docking target, the fourth image is collected in real time by the visual sensor, the fourth positioning data is collected in real time by the positioning sensor, and the eighth relative pose of the robot relative to the calibration object is obtained according to the fourth positioning data.

[0151] For the convenience of description, the image collected by the vision sensor in real time in the process that the robot moves to the target position and moves from the target position to the first preset position again when the robot returns to the target position or when the robot moves a second distance along the second direction and does not receive the docking success information when the second difference does not satisfy the first preset range is defined as a fourth image; meanwhile, the data collected by the positioning sensor in real time is defined as fourth positioning data, and the relative pose obtained according to the fourth positioning data is defined as an eighth relative pose.

[0152] Of course, the process of obtaining the eighth relative pose according to the fourth positioning data can refer to the related description in S21, which will not be repeated here.

[0153] S92, when the fourth image does not contain the calibration object, obtaining a ninth relative pose according to the eighth relative pose and a second preset rule.

[0154] The second preset rule in the embodiment of the application can be that the ninth relative pose is obtained by adding a third difference to the eighth relative pose, wherein the third difference can be equal to the first difference, or can be different from the first difference, which is not limited in the application.

[0155] When the third difference is different from the first difference, the third difference can be a difference between a twelfth relative pose and a thirteenth relative pose, wherein the twelfth relative pose is a relative pose of the robot with respect to the calibration object obtained by the vision sensor when the robot is located at the target position and the sixth image containing the calibration object, and the thirteenth relative pose is a relative pose of the robot with respect to the calibration object obtained by the positioning sensor when the robot is located at the target position and the fifth positioning data.

[0156] S93, when the fourth image contains the calibration object, obtaining the ninth relative pose according to the fourth image.

[0157] In the embodiment of the application, when the fourth image contains the calibration object, the tenth relative pose of the robot with respect to the calibration object obtained according to the fourth image is directly obtained as the ninth relative pose.

[0158] It should be noted that the process of obtaining the tenth relative pose according to the fourth image can refer to the related description in S22, which will not be repeated here.

[0159] S94, planning a second target path according to the ninth relative pose and a preset relative pose in real time, and continuing to control the robot to move along the second target path to the first preset position.

[0160] In the embodiment of the application, according to the ninth relative pose and the preset relative pose at the first preset position, a path from the position where the ninth relative pose is located to the first preset position can be planned.

[0161] For ease of description, the path obtained according to the ninth relative pose and the preset relative pose is defined as a second target path.

[0162] After the second target path is obtained, the robot can be controlled to move along the second target path from the position where the ninth relative pose is located to the first preset position.

[0163] S95, when it is determined that the robot moves to the first preset position, a fifth image containing the calibration object is collected by the vision sensor, and an eleventh relative pose of the robot relative to the calibration object is obtained according to the fifth image.

[0164] In the embodiments of the present application, for ease of description, the image collected by the vision sensor on the robot when the robot reaches the first preset position is defined as the fifth image, and the relative pose of the robot relative to the calibration object obtained according to the fifth image is defined as the eleventh relative pose.

[0165] S96, after obtaining the third direction according to the eleventh relative pose, the robot is controlled to move a first distance along the third direction.

[0166] In the embodiments of the present application, the eleventh relative pose contains the coordinate values of the robot on the X axis and the Y axis of the world coordinate system and the heading angle of the robot, the heading angle is the included angle between the heading direction of the robot and the X axis of the world coordinate system, and the direction where the heading angle is located is the third direction, and the third direction is also the direction from the current position of the robot to the docking target.

[0167] For ease of description, the included angle between the heading angle of the robot in the eleventh relative pose and the X axis is defined as the third direction.

[0168] S97, during the movement of the robot along the third direction by the first distance, when the docking success information is received, the robot is controlled to stop moving.

[0169] In the embodiments of the present application, after obtaining the third direction according to the eleventh relative pose, the robot can be controlled to move along the third direction by the first distance. During the movement of the robot along the third direction by the first distance, if the first docking port of the robot successfully docks with the second docking port of the docking target, the docking success information will be received, and at this time the robot can be controlled to stop moving.

[0170] S98, after the robot moves along the third direction by the first distance, when the docking success information is not received, the robot is controlled to move to the target position.

[0171] In the embodiments of the present application, during the movement of the robot along the third direction by the first distance, and after the movement of the robot along the third direction by the first distance, if the docking success information sent by the limit switch sensor on the robot or the docking target is not received, the robot is controlled to stop moving to the docking target after the movement of the robot along the third direction by the first distance, and the robot is controlled to move from the position after the movement by the first distance to the target position.

[0172] Referring to Figure 10 In another embodiment of the present application, before the robot is controlled to move to the target position after the movement of the robot along the third direction by the first distance and the non-receipt of the docking success information, the processor is further configured to execute the executable program code to implement the following steps:

[0173] S1001, the sixth positioning data is collected by the positioning sensor, and the fourteenth relative pose of the robot relative to the calibration object is obtained according to the sixth positioning data.

[0174] In the embodiments of the present application, after the robot is controlled to move along the third direction by the first distance, if the docking success information sent by the sensor on the first docking interface or the sensor on the second docking interface is not received, it indicates that the eleventh relative pose obtained according to the fifth image collected by the robot at the first preset position is not accurate, at this time, the fourteenth relative pose of the robot relative to the calibration object is obtained directly according to the sixth positioning data collected by the positioning sensor.

[0175] For ease of description, the positioning data collected by the positioning sensor on the robot after the movement of the robot along the first direction by the first distance and the non-receipt of the docking success information is defined as the sixth positioning data, and correspondingly, the relative pose of the robot relative to the calibration object obtained according to the sixth positioning data collected by the positioning sensor is defined as the fourteenth relative pose.

[0176] It should be noted that the process of obtaining the fourteenth relative pose according to the sixth positioning data can refer to the related description of obtaining the first relative pose according to the first positioning data in S21, which will not be repeated here.

[0177] S1002, after obtaining the fourth direction and the third distance according to the fourteenth relative pose, the robot is controlled to move along the fourth direction by the third distance to dock with the docking target.

[0178] In the embodiments of the present application, the fourteenth relative pose includes the coordinate values of the robot on the X axis and the Y axis of the world coordinate system and the heading angle of the robot, the heading angle is the included angle between the heading direction of the robot and the X axis of the world coordinate system, and the direction of the heading angle is the fourth direction, and the fourth direction is also the direction from the current position of the robot to the docking target.

[0179] The third distance is a coordinate value of the robot on the X-axis of the world coordinate system, which represents a distance of the robot from the center O (i.e., the origin of the world coordinate system) at the position of the fourteenth relative pose.

[0180] For ease of description, the angle between the heading angle of the robot in the fourteenth relative pose and the X-axis is defined as a fourth direction, and the coordinate value of the robot on the X-axis of the world coordinate system is defined as a third distance.

[0181] S1003, after the robot moves the third distance along the fourth direction, if no docking success information is received, controlling an alarm device on the robot to issue an alarm prompt or controlling the robot to move to the target position to re-execute the work docking step.

[0182] In the embodiments of the present application, after the fourth direction and the third distance are obtained according to the steps S1001-S1002, the robot can be controlled to continue moving the third distance along the fourth direction to dock with the docking target.

[0183] If no docking success information is received from the limit switch sensor on the robot or the docking target during the movement of the robot along the fourth direction and after the robot moves the third distance along the fourth direction, the robot is controlled to stop moving towards the docking target after the robot moves the third distance along the fourth direction, and the robot is controlled to move from the position after moving the third distance to the target position to re-execute the work docking step.

[0184] Of course, when no docking success information is received after the robot moves the third distance along the fourth direction, the alarm device on the robot can also be controlled to issue an alarm prompt sound. See Figure 11 , Figure 11 A composition schematic block diagram of a robot work docking device provided by the embodiments of the present application is shown, for ease of illustration, only parts related to the embodiments of the present application are shown, wherein the work docking device 11 comprises:

[0185] The acquisition module 1101 is configured to acquire a first image in real time through a visual sensor and acquire first positioning data in real time through a positioning sensor during movement of the robot from the target position to the first preset position, and obtain a first relative pose of the robot relative to a calibration object according to the first positioning data, the calibration object being arranged on a docking target of the robot, and the visual sensor and the positioning sensor being carried on the robot.

[0186] The first acquisition module 1102 is configured to obtain a second relative pose of the robot relative to the calibration object according to the first relative pose and a first preset rule when the first image does not contain the calibration object.

[0187] The second acquisition module 1103 is configured to obtain a second relative pose according to the first image when the first image contains the calibration object.

[0188] The first control module 1104 is configured to perform real-time path planning according to the second relative pose and a preset relative pose to obtain a first target path, and continue to control the robot to move along the first target path to the first preset position; the preset relative pose is a relative pose at the first preset position.

[0189] The second control module 1105 is configured to control the robot to move to the docking target to dock with the docking target when it is determined that the robot moves to the first preset position.

[0190] In another embodiment of the present application, the second control module 1105 is further configured to:

[0191] acquire a second image containing the calibration object through the vision sensor when it is determined that the robot moves to the first preset position, and obtain a third relative pose of the robot relative to the calibration object according to the second image;

[0192] After obtaining the first direction according to the third relative pose, control the robot to move along the first direction to dock with the docking target.

[0193] Optionally, a sensor is arranged on the robot or the docking target, and the sensor sends a docking success information when the robot and the docking target successfully dock.

[0194] In another embodiment of the present application, the second control module 1105 is further configured to:

[0195] control the robot to move a first distance along the first direction;

[0196] During the process that the robot moves the first distance along the first direction, stop the robot when the docking success information is received;

[0197] After the robot moves the first distance along the first direction, control the robot to move to the target position when the docking success information is not received.

[0198] In another embodiment of the present application, after the robot moves the first distance along the first direction and before the robot moves to the target position, the acquisition module 1101 is further configured to:

[0199] acquire second positioning data through the positioning sensor, and obtain a fourth relative pose of the robot relative to the calibration object according to the second positioning data.

[0200] The second control module 1105 is further configured to: after obtaining the second direction and the second distance according to the fourth relative pose, control the robot to dock with the docking target by moving along the second direction for the second distance; and after the robot moves along the second direction for the second distance, control the robot to move to the target position when no docking success information is received.

[0201] In another embodiment of the present application, the first acquisition module 1102 is further configured to:

[0202] When the first image does not contain the calibration object, add the first difference value to the first relative pose to obtain the second relative pose;

[0203] The first difference value is a difference value between a fifth relative pose and a sixth relative pose, the fifth relative pose is a relative pose of the robot with respect to the calibration object obtained by a third image containing the calibration object collected by the vision sensor when the robot is at the target position, and the sixth relative pose is a relative pose of the robot with respect to the calibration object obtained by the third positioning data collected by the positioning sensor when the robot is at the target position.

[0204] In another embodiment of the present application, the second acquisition module 1103 is further configured to:

[0205] When the first image contains the calibration object, obtain a seventh relative pose of the robot with respect to the calibration object according to the first image, and directly take the seventh relative pose as the second relative pose.

[0206] Optionally, the vision sensor collects the first image at a first preset frequency; and the positioning sensor collects the first positioning data at a second preset frequency, the second preset frequency being greater than the first preset frequency.

[0207] In another embodiment of the present application, the robot work docking device 11 further comprises:

[0208] The judging module is configured to judge whether the latest first image is an unused image during movement of the robot from the target position to the first preset position.

[0209] The third acquisition module is configured to, if the latest first image is a used image, acquire the latest first positioning data by the positioning sensor, determine the first relative pose according to the latest first positioning data, and obtain the second relative pose according to the first relative pose and the first preset rule.

[0210] The fourth acquisition module is configured to, if the latest first image is an unused image, determine whether the calibration object is contained in the latest first image; wherein, when the second relative pose has been obtained according to the latest first image, the latest first image is regarded as a used image, otherwise, the latest first image is regarded as an unused image.

[0211] In another embodiment of the present application, the robot work docking device 11 further comprises:

[0212] a calculation module, configured to, after obtaining the first direction according to the third relative pose, calculate a second difference value between the third relative pose and the preset relative pose before controlling the robot to move a first distance along the first direction, and control the robot to move the first distance along the first direction when the second difference value meets a first preset range;

[0213] a third control module, configured to control the robot to move to the target position when the second difference value does not meet the first preset range.

[0214] In another embodiment of the present application, the robot work docking device 11 further comprises:

[0215] a map construction module, configured to process the point cloud data collected by the laser sensor by using a SLAM method to obtain a map, wherein the laser sensor is carried on the robot, the map comprises a map of a region where the robot and the docking target are located, and the target position and the first preset position are set on the map.

[0216] It should be noted that the execution process between the above-mentioned devices / modules and the information interaction between them are based on the same concept as the robot-based work docking method provided in the embodiments of the present application. For specific functions and technical effects brought by them, please refer to the method embodiment part, which will not be repeated here.

[0217] Referring to Figure 12 , a flowchart of a robot work docking method provided in another embodiment of the present application, which is applicable to Figure 1 the robot shown in the figure. As shown in the figure, the method comprises:

[0218] S1201, in the process of controlling the robot to move from the target position to the first preset position, a first image is collected in real time by a vision sensor, a first positioning data is collected in real time by a positioning sensor, and a first relative pose of the robot relative to a calibration object is obtained according to the first positioning data, the calibration object is set on the docking target of the robot, and the vision sensor and the positioning sensor are carried on the robot.

[0219] The description of the embodiments of the present application can refer to the related description in S21, which will not be repeated here.

[0220] S1202, obtaining a second relative pose according to the first image, the first relative pose and the first difference value.

[0221] The first difference value is a difference value between the fifth relative pose and the sixth relative pose, the fifth relative pose is a relative pose of the robot with respect to the calibration object obtained by the vision sensor when the robot is located at the target position and a third image containing the calibration object, and the sixth relative pose is a relative pose of the robot with respect to the calibration object obtained by the positioning sensor when the robot is located at the target position and third positioning data.

[0222] It should be noted that the process of obtaining the fifth relative pose according to the third image in the embodiment of the application can refer to the related description in S22, and the process of obtaining the first relative pose according to the first positioning data can refer to the related description in S21.

[0223] In the embodiment of the application, when the first image collected does not contain the calibration object, the first relative pose is added to the first difference value to obtain the second relative pose. When the first image collected contains the calibration object, the second relative pose is obtained according to the first image. The specific process of obtaining the second relative pose according to the first image can refer to the related description of S23.

[0224] S1203, obtaining a first target path in real time according to the second relative pose and a preset relative pose, and continuing to control the robot to move along the first target path to a first preset position; the preset relative pose is a relative pose at the first preset position.

[0225] The description of the embodiment of the application can refer to the related description in S24, which will not be repeated here.

[0226] S1204, when it is determined that the robot moves to the first preset position, controlling the robot to move to the docking target to dock with the docking target

[0227] The description of the embodiment of the application can refer to the related description in S25, which will not be repeated here.

[0228] As another embodiment of the application, a computer readable storage medium stores a computer program, and the computer program realizes any robot work docking method provided by the embodiment of the application when running on a processor.

[0229] The robot work docking method provided by the embodiment of the application can be stored in a computer readable storage medium if it is realized in the form of a software function unit and sold or used as an independent product. Based on such understanding, all or part of the processes in the above-mentioned embodiment methods can also be completed by a computer program instructing related hardware, and the computer program can be stored in a computer readable storage medium. The computer program can implement the steps of each method embodiment when executed by one or more processors.

[0230] Likewise, as a computer program product, when the computer program product is run on the robot, the robot is caused to perform the steps to implement each of the above method embodiments.

[0231] The computer program includes computer program code, which can be in the form of source code, object code, executable code, or some intermediate form. The computer-readable storage medium can include any entity or device capable of carrying the computer program code, a recording medium, a USB flash drive, a mobile hard disk, a magnetic disk, an optical disk, a computer memory, a Read-Only Memory (ROM), a Random Access Memory (RAM), an electrical carrier signal, a telecommunications signal, and a software distribution medium, etc.

[0232] It should be noted that the content contained in the computer-readable storage medium can be appropriately increased or decreased according to the requirements of legislation and patent practice in the jurisdiction, for example, in some jurisdictions, according to legislation and patent practice, the computer-readable storage medium does not include electrical carrier signals and telecommunications signals.

[0233] Finally, it should be noted that: the above embodiments are only used to illustrate the technical solutions of the present application, and not to limit them; although the present application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand: it can still modify the technical solutions recorded in the foregoing embodiments, or make equivalent replacement for part or all of the technical features; and these modifications or replacements do not make the essence of the corresponding technical solutions deviate from the scope of the technical solutions of the embodiments of the present application.

Claims

1. A robot on which a vision sensor and a positioning sensor are mounted, characterized by, The robot comprises a memory and a processor, the memory stores executable program code, and the processor is configured to execute the executable program code to implement the following steps: In the process of controlling the robot to move from a target position to a first preset position, a first image is collected in real time by the visual sensor, and first positioning data is collected in real time by the positioning sensor, and a first relative pose of the robot relative to a calibration object is obtained according to the first positioning data, the calibration object is arranged on the docking target of the robot; wherein the target position and the first preset position are positions pre-deployed in a map, and the map comprises a map of a region where the robot and the docking target are located; When the calibration object is not included in the first image, a second relative pose of the robot relative to the calibration object is obtained according to the first relative pose and a first preset rule, including: adding a first difference value to the first relative pose to obtain the second relative pose; wherein the first difference value is the difference between a fifth relative pose and a sixth relative pose, the fifth relative pose is the relative pose of the robot relative to the calibration object obtained by the visual sensor when the robot is located at the target position; the sixth relative pose is the relative pose of the robot relative to the calibration object obtained by the positioning sensor when the robot is located at the target position; When the calibration object is included in the first image, the second relative pose is obtained according to the first image; A first target path is planned in real time according to the second relative pose and a preset relative pose, and the robot is controlled to move along the first target path to the first preset position; the preset relative pose is the pose of the robot relative to the calibration object when the robot is located at the first preset position; When it is determined that the robot moves to the first preset position, the robot is controlled to move to the docking target to dock with the docking target.

2. The robot of claim 1, wherein, The robot is controlled to move to the docking target to dock with the docking target when it is determined that the robot moves to the first preset position, comprising: When it is determined that the robot moves to the first preset position, a second image containing the calibration object is collected by the visual sensor, and a third relative pose of the robot relative to the calibration object is obtained according to the second image; After obtaining the first direction according to the third relative pose, the robot is controlled to move along the first direction to dock with the docking target.

3. The robot of claim 2, wherein, The robot or the docking target is provided with a sensor, the sensor sends a docking success information when the robot and the docking target dock successfully, and after obtaining the first direction according to the third relative pose, the robot is controlled to move along the first direction to dock with the docking target, comprising: The robot is controlled to move a first distance along the first direction; controlling the robot to stop moving when the docking success information is received during the robot moving the first distance along the first direction; controlling the robot to move to the target position when the docking success information is not received after the robot moving the first distance along the first direction.

4. The robot of claim 3, wherein, The processor, when executing the executable program code, further causes the following steps to be implemented before controlling the robot to move to the target position after the robot moving the first distance along the first direction and not receiving the docking success information: acquiring second positioning data by the positioning sensor, and obtaining a fourth relative pose of the robot relative to the calibration object according to the second positioning data; controlling the robot to dock with the docking target by moving a second distance along a second direction according to the fourth relative pose and the second distance; controlling the robot to move to the target position when the docking success information is not received after the robot moving the second distance along the second direction.

5. The robot of claim 1, wherein, The method, when the calibration object is included in the first image, obtaining the second relative pose according to the first image, comprises: obtaining a seventh relative pose of the robot relative to the calibration object according to the first image, and directly taking the seventh relative pose as the second relative pose.

6. The robot of claim 1, wherein, The visual sensor acquires the first image in real time according to a first preset frequency; the positioning sensor acquires the first positioning data in real time according to a second preset frequency, and the second preset frequency is greater than the first preset frequency; the processor, when executing the executable program code, further causes the following steps to be implemented during controlling the robot to move from a target position to a first preset position: determining whether a latest first image is a used image or an unused image; if the latest first image is a used image, acquiring the latest first positioning data by the positioning sensor, determining the first relative pose according to the latest first positioning data, and obtaining the second relative pose according to the first relative pose and the first preset rule; if the latest first image is an unused image, determining whether the calibration object is included in the latest first image; wherein, when the second relative pose has been obtained according to the latest first image, the latest first image is represented as a used image, otherwise the latest first image is represented as an unused image.

7. The robot of claim 2 or 3, wherein, The processor, when executing the executable program code, further causes the following steps to be implemented before controlling the robot to move a first distance along a first direction according to the third relative pose and the first direction: calculating a second difference value between the third relative pose and the preset relative pose, and controlling the robot to move the first distance along the first direction when the second difference value meets a first preset range; controlling the robot to move to the target position when the second difference value does not meet the first preset range.

8. A method of robot job docking, the method comprising: The method comprises: In the process of controlling the robot to move from a target position to a first preset position, a first image is collected in real time by a vision sensor, and first positioning data is collected in real time by a positioning sensor, and a first relative pose of the robot relative to a calibration object is obtained according to the first positioning data, the calibration object is arranged on a docking target of the robot, and the vision sensor and the positioning sensor are carried on the robot; wherein the target position and the first preset position are positions pre-deployed in a map, and the map includes a map of a region where the robot and the docking target are located. When the calibration object is not included in the first image, a second relative pose of the robot relative to the calibration object is obtained according to the first relative pose and a first preset rule, including: adding a first difference value to the first relative pose to obtain the second relative pose. When the calibration object is included in the first image, the second relative pose is obtained according to the first image. A first target path is planned in real time according to the second relative pose and a preset relative pose, and the robot is controlled to move along the first target path to the first preset position; the preset relative pose is a pose of the robot relative to the calibration object when the robot is located at the first preset position. When it is determined that the robot moves to the first preset position, the robot is controlled to move to the docking target to dock with the docking target. The first difference value is the difference between a fifth relative pose and a sixth relative pose, the fifth relative pose is a relative pose of the robot relative to the calibration object obtained by a third image containing the calibration object collected by the vision sensor when the robot is located at the target position, and the sixth relative pose is a relative pose of the robot relative to the calibration object obtained by third positioning data collected by the positioning sensor when the robot is located at the target position.

9. A computer-readable storage medium having stored thereon a computer program, characterized in that, The computer program is used to implement a robot work docking method when executed by a processor, and the robot work docking method is used to implement the robot work docking method for the robot in any one of claims 1 to 8.

Citation Information

Patent Citations

  • Robot charger docking control

    US20190155295A1