Robot control method, device, robot, storage medium and program product

By using a multi-level method to confirm threshold height, the problem of inaccurate recognition when cleaning robots cross thresholds is solved, improving recognition accuracy and control efficiency, and reducing the risk of structural damage.

CN122284397APending Publication Date: 2026-06-26BEIJING ROBOROCK INNOVATION TECH CO LTD

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
BEIJING ROBOROCK INNOVATION TECH CO LTD
Filing Date
2025-12-31
Publication Date
2026-06-26

AI Technical Summary

Technical Problem

When cleaning robots cross thresholds, misidentification or inaccurate height information can lead to improper actions, potentially causing structural damage and affecting their lifespan.

Method used

By employing a multi-layered approach to confirm threshold height, including initial confirmation and reconfirmation using sensor data, and combining target strategies under different detection states, the crossing strategy is optimized to improve recognition accuracy.

Benefits of technology

It improves the accuracy of threshold height recognition and robot crossing control, reduces the risk of collisions caused by misjudgment, and enhances control efficiency and safety.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122284397A_ABST
    Figure CN122284397A_ABST
Patent Text Reader

Abstract

This application relates to the field of robotics technology and provides a robot control method, device, robot, storage medium, and program product, comprising: when a threshold is detected, confirming the threshold height to obtain a first confirmation result; if the first confirmation result is a failure, reconfirming the threshold height based on the robot's sensor data to obtain a second confirmation result; if the second confirmation result is a success, controlling the robot to cross the threshold based on the confirmed threshold height. This method effectively improves the accuracy of threshold height recognition, thereby enhancing the robot's control accuracy in crossing thresholds.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application belongs to the field of robotics technology, and in particular relates to a robot control method, device, robot, and computer-readable storage medium. Background Technology

[0002] With the development of intelligent control technology, the application fields of robots are becoming increasingly widespread. Taking service robots as an example, their scope covers various scenarios such as homes, businesses, and industries, including domestic service robots, medical service robots, and public service robots. Among them, cleaning robots are a typical representative of service robots, capable of automatically performing cleaning tasks within a work area (such as a fixed indoor or outdoor area), greatly saving manpower.

[0003] Cleaning robots often need to cross obstacles such as thresholds during operation. For example, when crossing a threshold, the robot first needs to obtain the height information of the threshold and then perform the crossing action based on that information. However, in some application scenarios, the height information may be misidentified or inaccurate, leading to improper actions when the robot crosses the threshold. This could cause structural damage to the robot and thus affect its lifespan. Summary of the Invention

[0004] This application provides a robot control method, device, robot, storage medium, and program product, which can effectively improve the recognition accuracy of threshold height, thereby improving the control accuracy of the robot crossing threshold.

[0005] In a first aspect, embodiments of this application provide a robot control method, including: When a threshold is detected, the height of the threshold is confirmed to obtain a first confirmation result; If the first confirmation result is not passed, the threshold height of the threshold is confirmed again based on the robot's sensor data to obtain a second confirmation result; If the second confirmation result is passed, the robot is controlled to cross the threshold according to the confirmed threshold height.

[0006] In one possible implementation of the first aspect, confirming the threshold height of the threshold to obtain a first confirmation result includes: Obtain the height information of the threshold; If the height information is not obtained, and / or the height information does not include a height value, then the first confirmation result is a failure.

[0007] In one possible implementation of the first aspect, the step of reconfirming the threshold height based on the robot's sensor data to obtain a second confirmation result includes: The detection state for acquiring the height information is as follows: the detection state includes a first state and a second state, the first state indicating that the height information has been acquired and the height information does not include a height value, and the second state indicating that the height information has not been acquired; the threshold height of the threshold is reconfirmed based on the sensor data collected during the robot's movement according to the target strategy, and a second confirmation result is obtained; different detection states correspond to different target strategies.

[0008] In one possible implementation of the first aspect, the step of reconfirming the threshold height based on sensor data collected during the robot's movement according to the target strategy to obtain the second confirmation result includes: In the first state, the robot is controlled to move towards the threshold in the current posture, and sensor data during the robot's movement in the current posture is acquired to obtain the first data; If a collision is determined to have occurred based on the first data, the second confirmation result is "pass," and the threshold height is determined based on the first data.

[0009] In one possible implementation of the first aspect, the step of reconfirming the height information of the threshold based on sensor data collected during the robot's movement according to the target strategy to obtain the second confirmation result includes: In the second state, the robot is controlled to move towards the threshold in the current posture, and sensor data during the robot's movement in the current posture is acquired to obtain the second data; The threshold is re-identified based on the second data to obtain the re-identification result; If the re-identification result indicates that the threshold exists, then the robot is controlled to move towards the threshold in a first posture, and sensor data during the robot's movement in the first posture is acquired to obtain third data; wherein, the first posture is the robot moving at a first ground height, and the ground height of the robot in the first posture is greater than the ground height of the robot in the current posture. The threshold height is confirmed based on the third data, and the second confirmation result is obtained.

[0010] In one possible implementation of the first aspect, after re-identifying the threshold based on the second data to obtain the re-identification result, the method further includes: If the re-identification result indicates that the threshold does not exist, then the robot is controlled to move towards the threshold in a second posture; wherein, the second posture is that the robot moves at a second ground clearance height, which is lower than the first ground clearance height; If sensor data is acquired during the robot's movement in the second posture, the robot is controlled to move back towards the threshold in the first posture.

[0011] In one possible implementation of the first aspect, controlling the robot to cross the threshold based on the confirmed threshold height includes: A crossing strategy is determined based on the threshold height; wherein different threshold heights correspond to different crossing strategies, and the crossing strategy includes a preset crossing action and a preset number of attempts; The robot is controlled to cross the threshold according to the crossing strategy. In one possible implementation of the first aspect, controlling the robot to cross the threshold according to the crossing strategy includes: When the number of consecutive attempts reaches the preset number of attempts in the crossing strategy, if the robot fails to cross the threshold, the importance of this threshold crossing task is determined, and a judgment result is obtained. If the judgment result indicates importance, then the robot continues to be controlled to cross the threshold according to the preset crossing action in the crossing strategy.

[0012] Secondly, embodiments of this application provide a robot control device, including: The confirmation unit is used to confirm the threshold height of the threshold when a threshold is detected, and obtain a first confirmation result; The reconfirmation unit is used to reconfirm the threshold height of the threshold based on the robot's sensor data if the first confirmation result is not passed, and obtain a second confirmation result. A control unit is configured to, if the second confirmation result is passed, control the robot to cross the threshold according to the confirmed threshold height.

[0013] Thirdly, embodiments of this application provide a robot, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to implement the robot control method as described in any one of the first aspects above.

[0014] Fourthly, embodiments of this application provide a computer-readable storage medium storing a computer program that, when executed by a processor, implements the robot control method as described in any one of the first aspects above.

[0015] Fifthly, embodiments of this application provide a computer program product that, when run, causes the robot control method described in any one of the first aspects to be executed.

[0016] In this embodiment, after the threshold is identified, the height information of the threshold is further confirmed. If the height information is not confirmed, the height information is reconfirmed based on sensor data. Through the above-mentioned multi-level confirmation process of the threshold height information, the recognition accuracy of the threshold height can be improved, thereby improving the control accuracy of the robot crossing the threshold. Attached Figure Description

[0017] To more clearly illustrate the technical solutions in the embodiments of this application, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0018] Figure 1 This is a flowchart illustrating the robot control method provided in an embodiment of this application; Figure 2 This is a schematic diagram of the process of crossing thresholds provided in the embodiments of this application; Figure 3 This is a structural block diagram of the robot control device provided in the embodiments of this application; Figure 4 This is a schematic diagram of the robot provided in the embodiments of this application. Detailed Implementation

[0019] In the following description, specific details such as particular system architectures and techniques are set forth for illustrative purposes and not for limitation, in order to provide a thorough understanding of the embodiments of this application. However, those skilled in the art will understand that this application may also be implemented in other embodiments without these specific details. In other instances, detailed descriptions of well-known systems, apparatuses, circuits, and methods have been omitted so as not to obscure the description of this application with unnecessary detail.

[0020] It should be understood that, when used in this application specification and the appended claims, the term "comprising" indicates the presence of the described features, integrals, steps, operations, elements and / or components, but does not exclude the presence or addition of one or more other features, integrals, steps, operations, elements, components and / or a collection thereof.

[0021] It should also be understood that the term “and / or” as used in this application specification and the appended claims means any combination of one or more of the associated listed items and all possible combinations, and includes such combinations.

[0022] As used in this application specification and the appended claims, the term "if" may be interpreted, depending on the context, as "when," "once," "in response to determination," or "in response to detection." Similarly, the phrase "if determined" or "if detected [the described condition or event]" may be interpreted, depending on the context, as meaning "once determined," "in response to determination," "once detected [the described condition or event]," or "in response to detection [the described condition or event]."

[0023] Furthermore, in the description of this application and the appended claims, the terms "first," "second," "third," etc., are used only to distinguish descriptions and should not be construed as indicating or implying relative importance.

[0024] References to "one embodiment" or "some embodiments" in this specification mean that one or more embodiments of this application include a specific feature, structure, or characteristic described in connection with that embodiment. Therefore, the phrases "in one embodiment," "in some embodiments," "in other embodiments," "in still other embodiments," etc., appearing in different parts of this specification do not necessarily refer to the same embodiment, but rather mean "one or more, but not all, embodiments," unless otherwise specifically emphasized.

[0025] With the development of intelligent control technology, the application fields of robots are becoming increasingly widespread. Taking service robots as an example, their scope covers various scenarios such as homes, businesses, and industries, including domestic service robots, medical service robots, and public service robots. Among them, cleaning robots are a typical representative of service robots, capable of automatically performing cleaning tasks within a work area (such as a fixed indoor or outdoor area), greatly saving manpower.

[0026] Cleaning robots often need to cross obstacles such as thresholds during operation. For example, when crossing a threshold, the robot first needs to obtain the height information of the threshold and then perform the crossing action based on that information. However, in some application scenarios, the height information may be misidentified or inaccurate, leading to improper actions when the robot crosses the threshold. This could cause structural damage to the robot and thus affect its lifespan.

[0027] Based on this, this application provides a robot control method. In this application embodiment, after identifying a threshold, the height information of the threshold is further confirmed. If the height information is not confirmed, the height information is reconfirmed based on sensor data. Through the above-mentioned multi-level confirmation process of the threshold height information, the recognition accuracy of the threshold height can be improved, thereby improving the control accuracy of the robot crossing the threshold.

[0028] See Figure 1 This is a flowchart illustrating the robot control method provided in an embodiment of this application. It is intended as an example and not a limitation. The method may include the following steps: S101, when a threshold is detected, the threshold height is confirmed to obtain the first confirmation result.

[0029] In one implementation, the robot stores the location information of the threshold if it last crossed it, or if the user added a marker to the threshold on a map, thus storing the threshold's location information. In either case, the robot can identify the threshold based on the stored location information.

[0030] In another implementation, the location information of the threshold is not stored. During the robot's movement, sensors on the robot detect the threshold in front of it. For example, the threshold can be detected by photoelectric sensors (such as lidar sensors, line structured light sensors, etc.), or by images of the road surface in front captured by a camera, or by multiple sensors working together (such as using lidar and a camera for detection), and so on.

[0031] Understandably, if the location information of the threshold is not stored, and / or the sensors on the robot do not detect a threshold in front of it during the robot's movement, then it is determined that the threshold has not been detected.

[0032] In one example, if no threshold is detected, but sensor data detects a tilt in the road ahead or a bump during the robot's movement, it can be identified as a potential threshold. The robot is then processed as if a threshold has been detected, but the initial confirmation result is a failure to pass. For example, the control steps in the second state of embodiment S102 can be executed.

[0033] In another example, if no threshold is detected, but the sensor data detects that the road ahead is tilted within a threshold and the robot does not experience any bumps during its movement, it can be determined that there is no threshold, and the robot can be controlled to continue moving in its current state.

[0034] In one embodiment, S101 includes: Obtain information about the height of the threshold; If no altitude information is obtained, and / or the altitude information does not include a altitude value, the first confirmation result is failure. If the height value is obtained, the first confirmation result is "pass".

[0035] It is understood that the first confirmation result in this application embodiment is used to confirm whether the threshold has a specific height value. In some cases, the stored information of the threshold includes height information but not the specific height value. For example, a user adds a threshold marker at a certain location on the map, but the robot does not cross the threshold. Therefore, it only "knows" that there is a threshold at that location, i.e., there is height information, but does not know the specific height value. In this case, the first confirmation result is "failed". In other cases, the user has not marked the threshold on the map, and the robot has not crossed the threshold, i.e., it has not obtained the height information for the absence of the threshold. In this case, the first confirmation result is "failed". In still other cases, the user marks the threshold on the map and marks the specific height value of the threshold, or the robot crosses the threshold, i.e., it obtains the specific height value of the threshold. In some implementations, the specific height value can also be a specific height range, and the robot can perform a crossing action based on this height range. In this case, the first confirmation result is "passed".

[0036] In the above method, obtaining the specific height value of the threshold is used as the first confirmation process. This judgment process is simple and clear, and can confirm the information most directly related to crossing the threshold (i.e., the threshold height), which is conducive to the precise control of crossing the threshold in the future and improves control efficiency.

[0037] S102, if the first confirmation result is not passed, the threshold height is reconfirmed based on the robot's sensor data to obtain the second confirmation result.

[0038] In one embodiment, S102 includes: S201, Detection status for obtaining height information.

[0039] The detection status includes a first status and a second status. The first status indicates that height information has been obtained, but the height information does not include a height value. The second status indicates that height information has not been obtained.

[0040] S202, based on the sensor data collected during the robot's movement according to the target strategy, the threshold height is reconfirmed to obtain a second confirmation result.

[0041] Different detection states correspond to different target strategies.

[0042] As described in S101, the first confirmation result of failure includes two cases: no height information was obtained (i.e., the second state) or the height information does not include a height value (i.e., the first state). In this embodiment, different target strategies are used to control the robot's movement according to different detection states of the height information to reconfirm the height value of the threshold. This is equivalent to further subdividing the situation when the threshold height is not determined (i.e., the first confirmation result is failure), and accurately matching the control strategy according to the subdivided situation to carry out targeted control, reducing the number of blind control attempts and improving control accuracy and efficiency.

[0043] In one implementation, S202 includes: In the first state, the robot is controlled to move towards the threshold in the current posture, and sensor data is acquired during the robot's movement in the current posture to obtain the first data; If a collision is determined based on the first data, the second confirmation result is "pass", and the threshold height is determined based on the first data. If the first data indicates that no collision has occurred, the second confirmation result is "failed," and the robot is controlled to continue moving in its current posture.

[0044] The current state refers to the robot's movement state when it has not changed its crossing action.

[0045] Understandably, if no collision occurs, it means that the robot can cross the threshold at its current height. Therefore, the robot can continue to move in its current posture, and the height information of the threshold can be updated and recorded for easy cleaning again.

[0046] Optionally, the sensor acquiring the first data can be a bumper positioned in front of the robot. If the robot collides with an object in front of it, the bumper's signal is triggered, meaning the first data is a preset value; if the robot does not collide with an object in front of it, the bumper's signal is not triggered, meaning the first data is empty or another preset value. For example, if the robot collides with an object in front of it, the first data is 1; if the robot does not collide with an object in front of it, the first data is 0. Therefore, it is possible to determine whether a collision has occurred in front of the robot based on the first data.

[0047] Of course, to prevent misjudgment, a time window can be set. Within a preset time window after confirming the first state, a judgment is made based on the first data obtained within the preset time window.

[0048] In one example, when using a buffer for judgment, the first data may also include the robot's current ground clearance and the buffer's installation position. Correspondingly, if the second confirmation result is successful, the step of determining the threshold height based on the first data may include: determining the buffer's ground clearance based on the robot's current ground clearance and the buffer's installation position in the first data; and determining the threshold height based on the buffer's ground clearance. For example, if the robot's current ground clearance is 5cm and the buffer's installation position is 2cm from the bottom of the robot, then the buffer's ground clearance is determined to be 5+2=7cm, and thus the threshold height is determined to be >7cm; in some cases, the buffer's installation position is at a distance from the bottom of the robot.

[0049] Optionally, the step of determining the threshold height based on the first data may include: determining the height range of the threshold height based on the first data.

[0050] Understandably, when detecting threshold height using a buffer, collisions prevent the precise value of the threshold's height from being obtained; only a range can be determined. In this case, an attempt can be made to cross the threshold using a stepping motion based on the determined height range. If the buffer stops colliding, the more accurate height range of the threshold can be determined based on the buffer's height above the ground in the two attempts. If the buffer continues to collide, it indicates that the threshold's height may be in a higher range, and another stepping motion can be attempted. In other words, in this situation, a more accurate height range of the threshold can be determined by continuously increasing the robot's height.

[0051] In another example, when the decision is made using a buffer, the first data may also include detection data from other sensors. For example, the first data may also include data from a camera or LiDAR. Accordingly, if the second confirmation result is successful, the step of determining the threshold height based on the first data may include: determining the specific height value of the threshold based on the data from other sensors in the first data. It can be understood that in this approach, it is equivalent to the buffer processing in conjunction with other sensors.

[0052] Optionally, the sensor acquiring the first data can be other sensors, such as a camera, LiDAR, etc. Taking LiDAR as an example, the first data can be a point cloud map. Based on the point cloud map, it calculates whether a threshold exists ahead and its specific height. If a threshold exists and its height is greater than the robot's current ground clearance, a collision is determined. Taking a camera as an example, the first data can be an image of the road ahead. Based on the captured image, image recognition processing is performed to detect whether a threshold exists ahead and its specific height. If a threshold exists and its height is greater than the robot's current buffer's ground clearance, a collision is determined. It's understandable that the collision determination in this case is equivalent to a prediction of the robot's collision situation over a future period, and the robot may not actually experience a collision.

[0053] In this embodiment, the first state indicates that height information has been obtained, but the height information does not include a height value. This is equivalent to confirming that there is a threshold ahead and that it has a height, but the specific threshold height is uncertain. In this case, it is only necessary to confirm the specific height of the threshold. Therefore, in the above method, collision detection is performed using sensor data (first data) during the robot's movement in the current posture, and the threshold height is confirmed based on whether a collision occurs. This method can quickly determine the threshold height, which helps improve control efficiency.

[0054] In one implementation, S202 includes: In the second state, the robot is controlled to move towards the threshold in the current posture, and sensor data during the robot's movement in the current posture is acquired to obtain the second data. The threshold is re-identified based on the second data to obtain the re-identification result; If the re-identification result indicates that the threshold exists, the robot is controlled to move towards the threshold in a first posture, and sensor data during the robot's movement in the first posture is acquired to obtain the third data; wherein, the first posture is the robot moving at a first ground clearance height, and the robot's ground clearance height in the first posture is greater than the robot's ground clearance height in the current posture. Based on the third data, the threshold height is confirmed, and the second confirmation result is obtained.

[0055] The sensor that acquires the second data can be a bumper placed in front of the robot, or other sensors (such as cameras or LiDAR). The process of re-identifying based on the second data is the process of detecting whether there is a threshold in front of the robot based on the second data. This implementation process is the same as the principle of detecting whether a collision has occurred based on the first data in the first state described above, and can be found in the description of the above embodiments, which will not be repeated here.

[0056] Optionally, the second state indicates that a threshold exists but height information has not been obtained. If a threshold is detected ahead based on the second data, that is, the confidence level of "the existence of a threshold" in the second state is confirmed, then it is determined that a threshold exists. If no threshold is detected ahead based on the second data, that is, it conflicts with "the existence of a threshold" in the second state, indicating that the confidence level of the threshold's existence is low, then it is determined that no threshold exists.

[0057] For example, the first posture is to lift all wheels, meaning all the robot's wheels are lifted; or the first posture is to lift the front wheels, meaning the robot's front wheels are lifted while the other wheels are not.

[0058] Optionally, the step of controlling the robot to move towards the threshold in a first posture may include: if the re-identification result indicates that the threshold exists, then directly control the robot to move in the first posture. Alternatively, if the re-identification result indicates that the threshold exists, first control the robot to move towards the threshold in the current posture; if the buffer in front of the robot is triggered, i.e., a collision occurs, then control the robot to move towards the threshold again in the first posture; if the buffer in front of the robot is not triggered, i.e., no collision occurs, then control the robot to continue moving in the current posture (equivalent to passing the threshold).

[0059] Due to limitations in sensor detection accuracy or environmental interference, threshold misjudgment may occur. In the above embodiment, in the second state, i.e., when no height information is obtained, the threshold is re-identified, which is equivalent to detecting the confidence level of the threshold information. If the re-identification result indicates that the threshold exists, it means that the confidence level of the threshold's existence is high, and in this case, the specific height of the threshold is further confirmed. In this way, the redundant height detection process caused by threshold misjudgment can be reduced, which helps to improve control efficiency.

[0060] In one implementation, after re-identifying the threshold based on the second data and obtaining the re-identification result, the method further includes: If the re-identification result indicates that the threshold does not exist, then control the robot to move towards the threshold in a second posture; wherein, the second posture is the robot moving at a second ground clearance height, which is lower than the first ground clearance height; If sensor data is acquired during the robot's second pose, the robot is controlled to move back towards the threshold in the first pose.

[0061] For example, the first posture is "all wheels raised," meaning all of the robot's wheels are raised. The second posture is "front wheels raised," meaning the robot's front wheels are raised while the other wheels remain raised. Compared to the first posture, the robot's ground clearance and crossing height are lower in the second posture, but its safety is higher. In some implementations, the second posture can also be an acceleration movement where the ground clearance is not adjusted, and the ground clearance in the second posture is the same as that in the current posture.

[0062] Optionally, if sensor data is acquired during the robot's movement in the second posture, after controlling the robot to move towards the threshold in the first posture, the process may further include: acquiring sensor data during the robot's movement in the first posture to obtain fourth data; confirming the threshold height based on the fourth data to obtain a second confirmation result.

[0063] The sensor that acquires the fourth data can be a bumper positioned in front of the robot, or other sensors (such as a camera or LiDAR). The method for determining the threshold height based on the fourth data is in principle the same as the method for determining the threshold height based on the first data, as described in the above embodiments, and will not be repeated here.

[0064] Optionally, the step of controlling the robot to move back towards the threshold in a second pose may include: if the re-identification result indicates that the threshold does not exist, then directly control the robot to move in the second pose. Alternatively, if the re-identification result indicates that the threshold does not exist, first control the robot to move towards the threshold in its current pose; if the buffer in front of the robot is triggered, i.e., a collision occurs, then control the robot to move back towards the threshold in the second pose; if the buffer in front of the robot is not triggered, i.e., no collision occurs, then control the robot to continue moving in its current pose (equivalent to passing the threshold).

[0065] Optionally, the sensor data acquired during the robot's movement in the second posture can be a trigger signal for the buffer. If a trigger signal is acquired, it indicates a collision has occurred, meaning the robot cannot cross the threshold at its current ground clearance. In this case, the robot is controlled to move back towards the threshold in the first posture (at a higher ground clearance). If no trigger signal is acquired, it indicates no collision has occurred, meaning the robot can cross the threshold at its current ground clearance. In this case, the robot is controlled to continue moving forward in the second posture.

[0066] Optionally, if sensor data is acquired during the robot's movement in the second posture, the step of controlling the robot to move back towards the threshold in the first posture can also involve controlling the robot to accelerate and move back towards the threshold in the first posture.

[0067] In the above embodiments, if the re-identification result indicates that the threshold does not exist, it means that the confidence level of the existence of the threshold is low. It is possible that a threshold exists ahead, or it is an obstacle. In this case, the robot can first attempt to cross it at a lower altitude; if that fails, it can then attempt to cross it at a higher altitude. This layered height confirmation method is more reliable, resulting in more accurate height information and precise control. Furthermore, it reduces the risk of collisions caused by the robot approaching directly at a higher altitude, improving the stability and safety of robot control.

[0068] S103, if the second confirmation result is passed, then control the robot to cross the threshold according to the confirmed threshold height.

[0069] For example, see Figure 2 This is a schematic diagram of a threshold-crossing process provided in an embodiment of this application. For example... Figure 2 As shown, the process of crossing thresholds may include the following steps: For the first branch, if a threshold is identified, height information is available, and the height information is confirmed, steps 11 and 12 are executed. That is, the robot's posture is adjusted according to the confirmed height value, and the robot is controlled to perform the crossing according to the crossing strategy corresponding to the height value.

[0070] The situation of this branch road is equivalent to Figure 1 In the embodiment, the threshold is identified and the first confirmation result is passed.

[0071] In the second branch, if a threshold is detected and height information is available but not confirmed, the first data is obtained. If a collision is determined based on the first data, step 211 is executed. In this case, the second confirmation result is passed, and the threshold height is confirmed based on the first data. Then, step 11 is executed, that is, the posture is adjusted according to the confirmed threshold height, and step 12 is executed to call the corresponding crossing strategy.

[0072] The situation of this branch road is equivalent to Figure 1 In the embodiment, the situation is that a threshold is identified, the first confirmation result is "not passed", and a collision occurs in the first state.

[0073] For the third branch, if a threshold is detected and height information is available but not confirmed, first data is obtained. If it is determined that no collision has occurred based on the first data, then the path continues to pass.

[0074] The situation of this branch road is equivalent to Figure 1 In the embodiment, the situation is that a threshold is identified, the first confirmation result is "not passed", and no collision occurs in the first state.

[0075] In the fourth branch, if a threshold is identified but no height information is available, step 31 is executed to obtain the second data; re-identification is performed based on the second data; if the re-identification result indicates the existence of a threshold (high confidence), then step 311 is executed to control the robot to move back towards the threshold in the first posture; step 312 is executed to obtain the sensor data during the robot's movement in the first posture to obtain the third data, and the threshold height is confirmed based on the third data; step 11 is executed, that is, the posture is adjusted according to the confirmed threshold height, and step 12 is executed to call the corresponding crossing strategy.

[0076] Optionally, the step of confirming the threshold height based on the third data may include: determining a height range of the threshold height based on the third data; determining a specific height value within the height range, and controlling the robot to attempt to cross based on the height value; if the crossing is successful, determining the height value as the threshold height; if the crossing fails, re-determining a larger height value within the height range, and continuing to control the robot to attempt to cross based on the re-determined height value.

[0077] The situation of this branch road is equivalent to Figure 1 In the embodiment, the situation where a threshold is identified, the first confirmation result is "not passed," and the re-identification result in the second state indicates that the threshold exists.

[0078] In the fifth branch, if a threshold is identified but no height information is available, step 31 is executed to obtain the second data; re-identification is performed based on the second data; if the re-identification result indicates that there is no threshold (low confidence), step 313 is executed to control the robot to move back towards the threshold in the second posture; if a collision occurs (i.e., sensor data is obtained during the robot's movement in the second posture), step S314 is executed to control the robot to move back towards the threshold in the first posture in order to attempt to cross the threshold.

[0079] The situation of this branch road is equivalent to Figure 1 In the embodiment, the case where a threshold is identified, the first confirmation result is "not passed," and the second state indicates that the re-identification result means the threshold does not exist.

[0080] For the sixth branch, if no threshold is detected, the sensor data will detect a tilt in the road ahead or a bump during the robot's movement. If a tilt or bump is detected, it can be determined as a suspected threshold and then handled as if a threshold has been detected but no height information is available.

[0081] For the seventh branch, if no threshold is detected, the robot can detect road tilt or bumps during its movement using sensor data. If the road tilt is within the threshold and there are no bumps, it can be determined that there is no threshold, and the robot can be controlled to continue moving in the current state.

[0082] Branches ⑥ and ⑦ are equivalent to Figure 1 Two scenarios where the threshold was not identified in the example.

[0083] from Figure 2 As shown in the flowchart, in this embodiment, after identifying the threshold, the height information of the threshold is further confirmed. If the height information is not confirmed, it is reconfirmed based on sensor data. Through the above-mentioned multi-level confirmation process of the threshold height information, the accuracy of threshold height recognition can be improved, thereby improving the control accuracy of the robot crossing the threshold. Furthermore, using different methods to specifically confirm the threshold height for different detection states can reduce redundant height detection processes caused by threshold misjudgment, which is beneficial to improving control efficiency and control accuracy.

[0084] In one embodiment, S103 includes: The crossing strategy is determined based on the threshold height; the robot is then controlled to cross the threshold based on the crossing strategy.

[0085] Different crossing strategies are based on different threshold heights. The threshold height may include a first threshold height and / or a second threshold height, where the first threshold height is higher than or equal to the second threshold height. The crossing strategy includes a preset crossing action and a preset number of attempts. The complexity of the preset crossing action corresponding to the first threshold height may be higher than the complexity of the preset crossing action corresponding to the second threshold height, and the preset number of attempts corresponding to the first threshold height may be less than the preset number of attempts corresponding to the second threshold height.

[0086] For example, for the first threshold height, which is relatively difficult to cross, the preset crossing action in the corresponding crossing strategy can be a complete crossing attempt, such as first accelerating to try to cross, if unsuccessful, raising the front wheel, if unsuccessful, raising all wheels, and if unsuccessful, using the swing arm wheel to support the fuselage, with the preset number of attempts set to 2; or the preset crossing action can be directly raising all wheels or directly using the swing arm wheel, with the preset number of attempts set to 2; or the preset crossing action can be first raising all wheels, and if unsuccessful, using the swing arm wheel to support the fuselage, with the preset number of attempts set to 2. For the second threshold height, which is relatively easy to cross, the preset crossing action in the corresponding crossing strategy can be a simple crossing attempt, such as raising only the front wheel or only raising all wheels, with the preset number of attempts set to 3.

[0087] Understandably, the fuselage's ground clearance during acceleration is less than when the front wheels are raised; the fuselage's ground clearance when the front wheels are raised is less than when all wheels are raised; and the fuselage's ground clearance when all wheels are raised is less than when the fuselage is supported by the swing arm wheels. Accordingly, the complexity of the crossing maneuver, from highest to lowest, is: supporting the fuselage with the swing arm wheels, raising all wheels, raising the front wheels, and accelerating through.

[0088] It should be noted that the above are merely examples of preset crossing actions. In actual applications, depending on the different structural designs of the robot, other preset crossing actions may be set, or the preset crossing action may be a combination of multiple individual actions. For example, the preset crossing action may be a combination of lifting the full wheel and using the swing arm wheel, or a combination of lifting the front wheel and acceleration, or a combination of using the swing arm wheel and deceleration, and so on. This application does not specifically limit the preset crossing action.

[0089] For thresholds that are difficult to cross, using highly complex preset crossing actions can increase the probability of successful crossing. If the threshold still cannot be crossed even with highly complex preset crossing actions, it indicates that the success rate of crossing the threshold is low. Therefore, setting fewer attempts can effectively reduce redundant control. Conversely, for thresholds that are easy to cross, using low-complexity preset crossing actions and increasing the number of attempts can improve the probability of successful crossing, reduce safety malfunctions when the robot performs complex actions, and improve the robot's safety.

[0090] In one implementation, the steps for controlling the robot to cross a threshold according to the crossing strategy include: When the number of consecutive attempts reaches the preset number of attempts in the crossing strategy, if the robot fails to cross the threshold, the importance of this threshold crossing task is determined, and a judgment result is obtained. If the judgment result indicates that it is important, then continue to control the robot to cross the threshold according to the preset crossing action in the crossing strategy; If the judgment result indicates that it is not important, then stop this threshold crossing task.

[0091] Optionally, the importance of the threshold-crossing task can be determined based on factors such as its impact on the robot's return to the dock and its impact on the user experience. For example, if the robot's planned return route passes through this threshold, it cannot return to the dock if it does not perform the threshold-crossing task; in this case, the threshold-crossing task has a high impact on the robot's return to the dock. Conversely, if a user control command is received, but the corresponding task does not require crossing the threshold, the threshold-crossing task has a low impact on the user experience.

[0092] Optionally, each attempt to cross the threshold can start from the same position or from a different position. In the case of a different position, it can be another position within a preset range of the previous attempt's position. For example, if the first attempt fails, the second attempt can move to another position within the preset range of the first attempt's position and try again.

[0093] In the above method, determining whether to continue attempting to cross the threshold based on the importance of the current threshold-crossing task can effectively reduce the ineffective consumption caused by repeated attempts by the robot, ensuring that the robot's critical tasks can continue to be executed and improving control efficiency.

[0094] Optionally, within a preset number of attempts, if the robot successfully crosses the threshold, the relevant information for that successful threshold crossing can be updated and recorded, including but not limited to the threshold height, crossing action, crossing location, and crossing route.

[0095] It should be noted that the method provided in this application embodiment can be applied not only to application scenarios of crossing thresholds, but also to other scenarios of crossing obstacles of a certain height, without specifically limiting the type of obstacles that the robot needs to cross.

[0096] It should be understood that the sequence number of each step in the above embodiments does not imply the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of this application.

[0097] Corresponding to the robot control method described in the above embodiments, Figure 3 This is a structural block diagram of the robot control device provided in the embodiments of this application. For ease of explanation, only the parts related to the embodiments of this application are shown.

[0098] Reference Figure 3 The device includes: The confirmation unit 31 is used to confirm the threshold height of the threshold when a threshold is detected, and obtain a first confirmation result.

[0099] The reconfirmation unit 32 is used to reconfirm the threshold height of the threshold based on the robot's sensor data if the first confirmation result is not passed, and obtain a second confirmation result.

[0100] Control unit 33 is configured to, if the second confirmation result is passed, control the robot to cross the threshold according to the confirmed threshold height.

[0101] Optionally, the confirmation unit 31 is also used for: Obtain the height information of the threshold; If the height information is not obtained, and / or the height information does not include a height value, then the first confirmation result is a failure.

[0102] Optionally, the reconfirmation unit 32 is also used for: The detection state for acquiring the height information includes a first state and a second state, wherein the first state indicates that the height information has been acquired and the height information does not include a height value, and the second state indicates that the height information has not been acquired. The threshold height is reconfirmed based on the sensor data collected during the robot's movement according to the target strategy, resulting in the second confirmation result; wherein different detection states correspond to different target strategies.

[0103] Optionally, the reconfirmation unit 32 is also used for: In the first state, the robot is controlled to move towards the threshold in the current posture, and sensor data during the robot's movement in the current posture is acquired to obtain the first data; If a collision is determined to have occurred based on the first data, the second confirmation result is "pass," and the threshold height is determined based on the first data.

[0104] Optionally, the reconfirmation unit 32 is also used for: In the second state, the robot is controlled to move towards the threshold in the current posture, and sensor data during the robot's movement in the current posture is acquired to obtain the second data; The threshold is re-identified based on the second data to obtain the re-identification result; If the re-identification result indicates that the threshold exists, then the robot is controlled to move towards the threshold in a first posture, and sensor data during the robot's movement in the first posture is acquired to obtain third data; wherein, the first posture is the robot moving at a first ground height, and the ground height of the robot in the first posture is greater than the ground height of the robot in the current posture. The threshold height is confirmed based on the third data, and the second confirmation result is obtained.

[0105] Optionally, the reconfirmation unit 32 is also used for: If the re-identification result indicates that the threshold does not exist, then the robot is controlled to move towards the threshold in a second posture; wherein, the second posture is that the robot moves at a second ground clearance height, which is lower than the first ground clearance height; If sensor data is acquired during the robot's movement in the second posture, the robot is controlled to move back towards the threshold in the first posture.

[0106] Optionally, the control unit 33 is also used for: A crossing strategy is determined based on the threshold height; wherein different threshold heights correspond to different crossing strategies, and the crossing strategy includes a preset crossing action and a preset number of attempts; The robot is controlled to cross the threshold according to the crossing strategy. Optionally, the control unit 33 is also used for: When the number of consecutive attempts reaches the preset number of attempts in the crossing strategy, if the robot fails to cross the threshold, the importance of this threshold crossing task is determined, and a judgment result is obtained. If the judgment result indicates that it is important, then the robot continues to be controlled to cross the threshold according to the preset crossing action in the crossing strategy; If the judgment result indicates that it is not important, then the current threshold crossing task will be stopped.

[0107] It should be noted that the information interaction and execution process between the above-mentioned devices / units are based on the same concept as the method embodiments of this application. For details on their specific functions and technical effects, please refer to the method embodiments section, and they will not be repeated here.

[0108] in addition, Figure 3 The robot control device shown can be a software unit, hardware unit, or a combination of software and hardware built into an existing robot, or it can be integrated into the robot as an independent attachment, or it can exist as an independent robot.

[0109] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the above-described division of functional units and modules is merely an example. In practical applications, the above functions can be assigned to different functional units and modules as needed, that is, the internal structure of the device can be divided into different functional units or modules to complete all or part of the functions described above. The functional units and modules in the embodiments can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit. Furthermore, the specific names of the functional units and modules are only for easy differentiation and are not intended to limit the scope of protection of this application. The specific working process of the units and modules in the above system can be referred to the corresponding process in the foregoing method embodiments, and will not be repeated here.

[0110] Figure 4 This is a schematic diagram of the robot provided in an embodiment of this application. Figure 4 As shown, the robot 4 in this embodiment includes: at least one processor 40 ( Figure 4(Only one is shown in the diagram) a processor, a memory 41, and a computer program 42 stored in the memory 41 and executable on the at least one processor 40, which, when executing the computer program 42, implements the steps in any of the robot control method embodiments described above.

[0111] The robot may include, but is not limited to, a processor and memory. Those skilled in the art will understand that... Figure 4 The example shown is merely of robot 4 and does not constitute a limitation on robot 4. It may include more or fewer parts than shown, or combine certain parts, or different parts, such as input / output devices, network access devices, etc.

[0112] The processor 40 can be a Central Processing Unit (CPU), but it can also be other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The general-purpose processor can be a microprocessor or any conventional processor.

[0113] In some embodiments, the memory 41 may be an internal storage unit of the robot 4, such as a hard disk or memory of the robot 4. In other embodiments, the memory 41 may be an external storage device of the robot 4, such as a plug-in hard disk, smart media card (SMC), secure digital (SD) card, flash card, etc., equipped on the robot 4. Furthermore, the memory 41 may include both internal storage units and external storage devices of the robot 4. The memory 41 is used to store operating systems, applications, boot loaders, data, and other programs, such as the program code of computer programs. The memory 41 can also be used to temporarily store data that has been output or will be output.

[0114] This application also provides a computer-readable storage medium storing a computer program that, when executed by a processor, can implement the steps in the above-described method embodiments.

[0115] This application provides a computer program product that, when run, causes the steps in the above-described method embodiments to be executed.

[0116] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, all or part of the processes in the methods of the above embodiments of this application can be implemented by a computer program instructing related hardware. The computer program can be stored in a computer-readable storage medium, and when executed by a processor, it can implement the steps of the various method embodiments described above. The computer program includes computer program code, which can be in the form of source code, object code, executable files, or certain intermediate forms. The computer-readable medium can include at least: any entity or device capable of carrying computer program code to a device / terminal equipment, a recording medium, a computer memory, a read-only memory (ROM), a random access memory (RAM), an electrical carrier signal, a telecommunication signal, and a software distribution medium. Examples include USB flash drives, portable hard drives, magnetic disks, or optical disks. In some jurisdictions, according to legislation and patent practice, computer-readable media cannot be electrical carrier signals or telecommunication signals.

[0117] In the above embodiments, the descriptions of each embodiment have different focuses. For parts that are not described in detail or recorded in a certain embodiment, please refer to the relevant descriptions of other embodiments.

[0118] Those skilled in the art will recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.

[0119] In the embodiments provided in this application, it should be understood that the disclosed devices / terminal equipment and methods can be implemented in other ways. For example, the device / terminal equipment embodiments described above are merely illustrative. For instance, the division of modules or units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the displayed or discussed mutual coupling or direct coupling or communication connection may be through some interfaces; the indirect coupling or communication connection between devices or units may be electrical, mechanical, or other forms.

[0120] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.

[0121] The above-described embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit them. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of this application, and should all be included within the protection scope of this application.

Claims

1. A robot control method, characterized in that, include: When a threshold is detected, the height of the threshold is confirmed to obtain a first confirmation result; If the first confirmation result is not passed, the threshold height of the threshold is confirmed again based on the robot's sensor data to obtain a second confirmation result; If the second confirmation result is passed, the robot is controlled to cross the threshold according to the confirmed threshold height.

2. The robot control method as described in claim 1, characterized in that, The process of confirming the threshold height to obtain a first confirmation result includes: Obtain the height information of the threshold; If the height information is not obtained, and / or the height information does not include a height value, then the first confirmation result is a failure.

3. The robot control method as described in claim 1 or 2, characterized in that, The step of reconfirming the threshold height based on the robot's sensor data to obtain a second confirmation result includes: The detection state for acquiring the height information includes a first state and a second state, wherein the first state indicates that the height information has been acquired and the height information does not include a height value, and the second state indicates that the height information has not been acquired. The threshold height is reconfirmed based on the sensor data collected during the robot's movement according to the target strategy, resulting in the second confirmation result; wherein different detection states correspond to different target strategies.

4. The robot control method as described in claim 3, characterized in that, The step of reconfirming the threshold height based on sensor data collected during the robot's movement according to the target strategy, and obtaining the second confirmation result, includes: In the first state, the robot is controlled to move towards the threshold in the current posture, and sensor data during the robot's movement in the current posture is acquired to obtain the first data; If a collision is determined to have occurred based on the first data, the second confirmation result is "pass," and the threshold height is determined based on the first data.

5. The robot control method as described in claim 3, characterized in that, The step of reconfirming the height information of the threshold based on sensor data collected during the robot's movement according to the target strategy to obtain the second confirmation result includes: In the second state, the robot is controlled to move towards the threshold in the current posture, and sensor data during the robot's movement in the current posture is acquired to obtain the second data; The threshold is re-identified based on the second data to obtain the re-identification result; If the re-identification result indicates that the threshold exists, then the robot is controlled to move towards the threshold in a first posture, and sensor data during the robot's movement in the first posture is acquired to obtain third data; wherein, the first posture is the robot moving at a first ground height, and the ground height of the robot in the first posture is greater than the ground height of the robot in the current posture. The threshold height is confirmed based on the third data, and the second confirmation result is obtained.

6. The robot control method as described in claim 5, characterized in that, After re-identifying the threshold based on the second data to obtain the re-identification result, the method further includes: If the re-identification result indicates that the threshold does not exist, then the robot is controlled to move towards the threshold in a second posture; wherein, the second posture is that the robot moves at a second ground clearance height, which is lower than the first ground clearance height; If sensor data is acquired during the robot's movement in the second posture, the robot is controlled to move back towards the threshold in the first posture.

7. The robot control method according to any one of claims 1 to 6, characterized in that, The step of controlling the robot to cross the threshold based on the confirmed threshold height includes: A crossing strategy is determined based on the threshold height; wherein different threshold heights correspond to different crossing strategies, and the crossing strategy includes a preset crossing action and a preset number of attempts; The robot is controlled to cross the threshold according to the crossing strategy.

8. The robot control method as described in claim 7, characterized in that, The step of controlling the robot to cross the threshold according to the crossing strategy includes: When the number of consecutive attempts reaches the preset number of attempts in the crossing strategy, if the robot fails to cross the threshold, the importance of this threshold crossing task is determined, and a judgment result is obtained. If the judgment result indicates importance, then the robot continues to be controlled to cross the threshold according to the preset crossing action in the crossing strategy.

9. A robot control device, characterized in that, include: The confirmation unit is used to confirm the threshold height of the threshold when a threshold is detected, and obtain a first confirmation result; The reconfirmation unit is used to reconfirm the threshold height based on the robot's sensor data if the first confirmation result is "failure", thereby obtaining a second confirmation result. A control unit is configured to, if the second confirmation result is passed, control the robot to cross the threshold according to the confirmed threshold height.

10. The robot control device as described in claim 9, characterized in that, The confirmation unit is also used for: Obtain the height information of the threshold; If the height information is not obtained, and / or the height information does not include a height value, then the first confirmation result is a failure.

11. The robot control device as described in claim 9 or 10, characterized in that, The reconfirmation unit is also used for: The detection state for acquiring the height information includes a first state and a second state, wherein the first state indicates that the height information has been acquired and the height information does not include a height value, and the second state indicates that the height information has not been acquired. The threshold height is reconfirmed based on the sensor data collected during the robot's movement according to the target strategy, resulting in the second confirmation result; wherein different detection states correspond to different target strategies.

12. The robot control device as described in claim 11, characterized in that, The reconfirmation unit is also used for: In the first state, the robot is controlled to move towards the threshold in the current posture, and sensor data during the robot's movement in the current posture is acquired to obtain the first data; If a collision is determined to have occurred based on the first data, the second confirmation result is "pass," and the threshold height is determined based on the first data.

13. The robot control device as described in claim 11, characterized in that, The reconfirmation unit is also used for: In the second state, the robot is controlled to move towards the threshold in the current posture, and sensor data during the robot's movement in the current posture is acquired to obtain the second data; The threshold is re-identified based on the second data to obtain the re-identification result; If the re-identification result indicates that the threshold exists, then the robot is controlled to move towards the threshold in a first posture, and sensor data during the robot's movement in the first posture is acquired to obtain third data; wherein, the first posture is the robot moving at a first ground height, and the ground height of the robot in the first posture is greater than the ground height of the robot in the current posture. The threshold height is confirmed based on the third data, and the second confirmation result is obtained.

14. The robot control device as described in claim 13, characterized in that, The reconfirmation unit is also used for: After re-identifying the threshold based on the second data and obtaining the re-identification result, if the re-identification result indicates that the threshold does not exist, the robot is controlled to move towards the threshold in a second posture; wherein, the second posture is that the robot moves at a second ground clearance height, which is lower than the first ground clearance height; If sensor data is acquired during the robot's movement in the second posture, the robot is controlled to move back towards the threshold in the first posture.

15. The robot control device according to any one of claims 9 to 14, characterized in that, The control unit is also used for: A crossing strategy is determined based on the threshold height; wherein different threshold heights correspond to different crossing strategies, and the crossing strategy includes a preset crossing action and a preset number of attempts; The robot is controlled to cross the threshold according to the crossing strategy.

16. The robot control device as described in claim 15, characterized in that, The control unit is also used for: When the number of consecutive attempts reaches the preset number of attempts in the crossing strategy, if the robot fails to cross the threshold, the importance of this threshold crossing task is determined, and a judgment result is obtained. If the judgment result indicates importance, then the robot continues to be controlled to cross the threshold according to the preset crossing action in the crossing strategy.

17. A robot comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the computer program, it implements the method as described in any one of claims 1 to 8.

18. A computer-readable storage medium storing a computer program, characterized in that, When the computer program is executed by a processor, it implements the method as described in any one of claims 1 to 8.

19. A computer program product, characterized in that, When the computer program product is run, the steps of the method as described in any one of claims 1 to 8 are performed.