Sweeping machine control method and device, computer readable storage medium and sweeping machine
By locking the wheel assembly and executing the corresponding movement mode according to the function mode when the robot vacuum detects a collision or cliff, the problem of poor flexibility in the existing technology is solved, and the user's cleaning experience is improved.
Patent Information
- Application Number
- CN202211421673.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-11-14
- Publication Date
- 2026-01-06
- Estimated Expiration
- 2042-11-14
AI Technical Summary
Existing robotic vacuum cleaners have poor obstacle avoidance and motion recovery methods, which are not flexible enough to effectively handle complex application scenarios, resulting in a poor cleaning experience for users.
When a collision or cliff is detected, the robot vacuum stops moving and locks the wheels. It then performs the corresponding movement according to the current function mode (cleaning function mode or obstacle avoidance function mode), including acquiring radar data, adjusting orientation, reversing, or replanning the path.
It enhances the flexibility of obstacle avoidance and motion recovery methods, improving the user's cleaning experience in complex application scenarios.
Smart Images

Figure CN115670309B_ABST
Abstract
Description
Technical Field
[0001] This application belongs to the field of sweeping machine technology, and particularly relates to a sweeping machine control method, device, computer-readable storage medium, and sweeping machine. Background Technology
[0002] In recent years, the technology of household robotic vacuum cleaners has developed rapidly, and robotic vacuum cleaners have gradually entered thousands of households. Sweeping can automatically complete the cleaning of rooms for people, allowing them to have more time for other work and life tasks.
[0003] When faced with scenarios involving collisions or cliffs, robotic vacuum cleaners typically employ a fixed method for obstacle avoidance and recovery movement planning. However, this fixed method lacks flexibility and cannot handle complex application scenarios. For example, when needing to escape or cross obstacles, the fixed obstacle avoidance and recovery movement method can easily cause the robotic vacuum cleaner to get stuck in a cycle of repeated obstacle avoidance, resulting in a poor cleaning experience for the user. Summary of the Invention
[0004] In view of this, embodiments of this application provide a sweeping robot control method, device, computer-readable storage medium, and sweeping robot to solve the problems of poor flexibility and limited application scenarios of existing obstacle avoidance and motion recovery methods, resulting in a poor cleaning experience for users.
[0005] A first aspect of this application provides a sweeping robot control method, which may include:
[0006] When a target event is triggered, the robot vacuum cleaner is controlled to stop moving and its wheel assembly is locked; wherein, the target event includes detecting a collision or detecting a cliff;
[0007] Determine the current functional mode of the sweeper;
[0008] The robot vacuum cleaner is controlled to perform the movement mode corresponding to the target event according to the current functional mode.
[0009] In one specific implementation of the first aspect, controlling the sweeping robot to perform a movement mode corresponding to the target event according to the current functional mode may include:
[0010] If the target event is a detected collision and the current function mode is the obstacle avoidance function mode, then the radar data of the sweeping robot is acquired;
[0011] Based on the radar data, determine whether the sweeper's orientation is the optimal direction for escaping obstacles;
[0012] If the sweeper is not facing the optimal escape direction, the wheel set is unlocked and the sweeper is controlled to retreat a preset first distance.
[0013] Adjust the orientation of the sweeper to the optimal escape direction and control the sweeper to move forward.
[0014] In one specific implementation of the first aspect, after determining whether the sweeper's orientation is the optimal escape direction based on the radar data, it may further include:
[0015] If the sweeper is oriented in the optimal escape direction, then the wheel set is unlocked and the sweeper is controlled to move forward.
[0016] In one specific implementation of the first aspect, controlling the sweeping robot to perform a movement mode corresponding to the target event according to the current functional mode may include:
[0017] If the target event is a collision detection and the current function mode is the cleaning function mode, then the wheel set is unlocked and the robot vacuum is controlled to retreat a preset second distance.
[0018] The sweeper's travel path is replanned, and the sweeper is controlled to move according to the replanned travel path.
[0019] In one specific implementation of the first aspect, controlling the sweeping robot to perform a movement mode corresponding to the target event according to the current functional mode may include:
[0020] If the target event is the detection of a cliff, and the current function mode is the escape function mode or the cleaning function mode, then the angle information and ground detection information of the sweeper are obtained;
[0021] Based on the angle information and the ground inspection information, determine whether a false cliff detection has occurred;
[0022] If a cliff is falsely detected, the wheel set is unlocked and the sweeper is controlled to move forward.
[0023] In one specific implementation of the first aspect, after determining whether a cliff false detection has occurred based on the angle information and the ground inspection information, it may further include:
[0024] If no cliff false detection occurs, the wheel set is unlocked, and the sweeper is controlled to reverse a preset third distance.
[0025] The sweeper's travel path is replanned, and the sweeper is controlled to move according to the replanned travel path.
[0026] In one specific implementation of the first aspect, the angle information may include pitch angle and roll angle, and the ground detection information includes the sampled values of the ground detection sensor;
[0027] The step of determining whether a cliff false detection has occurred based on the angle information and the ground inspection information may include:
[0028] If the angle information meets a preset first condition and the ground detection information meets a preset second condition, then a cliff false detection is determined to have occurred; wherein, the first condition is that the deviation between the pitch angle and the preset reference pitch angle is greater than a preset first deviation amount, or the deviation between the roll angle and the preset reference roll angle is greater than a preset second deviation amount, and the second condition is that the deviation between the sampling value of the ground detection sensor and the preset reference sampling value is less than a preset third deviation amount;
[0029] If the angle information does not meet the first condition, or the ground inspection information does not meet the second condition, then it is determined that no false cliff detection has occurred.
[0030] A second aspect of this application provides a sweeper control device, which may include:
[0031] A motion control module is used to control the sweeper to stop moving and lock the sweeper's wheel assembly when a target event is triggered; wherein the target event includes detecting a collision or detecting a cliff;
[0032] A function mode determination module is used to determine the current function mode of the sweeper.
[0033] The motion mode execution module is used to control the sweeping robot to execute the motion mode corresponding to the target event according to the current functional mode.
[0034] In one specific implementation of the second aspect, the motion execution module may include:
[0035] The radar data acquisition unit is used to acquire the radar data of the sweeping robot if the target event is a detected collision and the current function mode is the escape function mode.
[0036] The escape direction determination unit is used to determine whether the sweeper's orientation is the optimal escape direction based on the radar data;
[0037] The first reversing unit is used to unlock the wheel set and control the sweeper to reversing a preset first distance if the sweeper's orientation is not the optimal escape direction.
[0038] The orientation adjustment unit is used to adjust the orientation of the sweeper to the optimal escape direction and control the sweeper to move forward.
[0039] In one specific implementation of the second aspect, the motion execution module may further include:
[0040] The forward control unit is used to unlock the wheel assembly and control the sweeper to move forward if the sweeper's orientation is the optimal escape direction.
[0041] In one specific implementation of the second aspect, the motion execution module may further include:
[0042] The second reversing unit is used to unlock the wheel assembly and control the sweeper to reversing a preset second distance if the target event is a detected collision and the current function mode is the cleaning function mode.
[0043] The path planning unit is used to replan the travel path of the sweeping machine and control the sweeping machine to move according to the replanned travel path.
[0044] In one specific implementation of the second aspect, the motion execution module may further include:
[0045] The information acquisition unit is used to acquire the angle information and ground detection information of the sweeper if the target event is the detection of a cliff and the current function mode is the escape function mode or the cleaning function mode.
[0046] The false detection judgment unit is used to determine whether a cliff false detection has occurred based on the angle information and the ground detection information;
[0047] The forward control unit is used to unlock the wheel assembly and control the sweeper to move forward if a cliff false detection occurs.
[0048] In one specific implementation of the second aspect, the motion execution module may further include:
[0049] The third reversing unit is used to unlock the wheel assembly and control the sweeper to reverse a preset third distance if no cliff false detection occurs.
[0050] The path planning unit is used to replan the travel path of the sweeping machine and control the sweeping machine to move according to the replanned travel path.
[0051] In one specific implementation of the second aspect, the false detection judgment unit may include:
[0052] The first false detection determination unit is used to determine that a cliff false detection has occurred if the angle information meets a preset first condition and the ground detection information meets a preset second condition; wherein, the first condition is that the deviation between the pitch angle and the preset reference pitch angle is greater than a preset first deviation amount, or the deviation between the roll angle and the preset reference roll angle is greater than a preset second deviation amount, and the second condition is that the deviation between the sampling value of the ground detection sensor and the preset reference sampling value is less than a preset third deviation amount;
[0053] The second false detection determination unit is used to determine that no cliff false detection has occurred if the angle information does not meet the first condition or the ground detection information does not meet the second condition.
[0054] A third aspect of this application provides a computer-readable storage medium storing a computer program that, when executed by a processor, implements the steps of any of the above-described sweeping robot control methods.
[0055] A fourth aspect of this application provides a sweeping 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 steps of any of the sweeping robot control methods described above.
[0056] The fifth aspect of this application provides a computer program product that, when run on a sweeping machine, causes the sweeping machine to perform the steps of any of the sweeping machine control methods described above.
[0057] The beneficial effects of this application embodiment compared to the prior art are as follows: When a target event is triggered, this application embodiment controls the sweeper to stop moving and locks the sweeper's wheel assembly; wherein, the target event includes detecting a collision or detecting a cliff; determining the sweeper's current functional mode; and controlling the sweeper to execute the movement mode corresponding to the target event according to the current functional mode. Through the above method, when a current event is triggered, the corresponding movement mode can be executed according to the sweeper's current functional mode, improving the flexibility of obstacle avoidance and movement recovery methods, and enhancing the user's cleaning experience in complex application scenarios. Attached Figure Description
[0058] 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.
[0059] Figure 1This is a flowchart of one embodiment of a sweeper control method in this application.
[0060] Figure 2 This is a schematic structural diagram of a sweeping machine according to an embodiment of this application;
[0061] Figure 3 This is a schematic diagram of an application scenario for a robotic vacuum cleaner;
[0062] Figure 4 A schematic flowchart illustrating the movement patterns of a robot vacuum cleaner when it detects a collision and enters the obstacle avoidance mode;
[0063] Figure 5 A schematic flowchart illustrating the movement pattern of a robot vacuum cleaner when it detects a collision and is in cleaning mode;
[0064] Figure 6 A flowchart illustrating the movement pattern of a robot vacuum cleaner when it detects a cliff and enters its obstacle-avoidance mode;
[0065] Figure 7 This is a structural diagram of one embodiment of a sweeper control device according to the present application.
[0066] Figure 8 This is a schematic block diagram of a sweeping machine according to an embodiment of this application. Detailed Implementation
[0067] To make the inventive objectives, features, and advantages of this application more apparent and understandable, the technical solutions in the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the embodiments described below are only some embodiments of this application, and not all embodiments. Based on the embodiments in this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.
[0068] It should be understood that, when used in this 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 collections thereof.
[0069] It should also be understood that the terminology used in this specification is for the purpose of describing particular embodiments only and is not intended to limit the scope of the application. As used in this specification and the appended claims, the singular forms “a,” “an,” and “the” are intended to include the plural forms unless the context clearly indicates otherwise.
[0070] It should also be further 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.
[0071] As used in this 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 phrases "if determined" or "if [described condition or event] is detected" may be interpreted, depending on the context, as "once determined," "in response to determination," "once [described condition or event] is detected," or "in response to detection of [described condition or event]."
[0072] Furthermore, in the description of this application, the terms "first," "second," "third," etc., are used only to distinguish descriptions and should not be construed as indicating or implying relative importance.
[0073] Existing obstacle avoidance and recovery methods lack flexibility and cannot handle complex application scenarios such as getting out of trouble or crossing obstacles.
[0074] In view of this, embodiments of this application provide a robot vacuum cleaner control method, apparatus, computer-readable storage medium, and robot vacuum cleaner. These embodiments enhance the flexibility of obstacle avoidance and motion recovery methods, improving the user's cleaning experience in complex application scenarios.
[0075] Please see Figure 1 One embodiment of a sweeper control method in this application may include:
[0076] Step S101: When the target event is triggered, control the sweeper to stop moving and lock the sweeper's wheel set.
[0077] The aforementioned target events may include detecting a collision or detecting a cliff.
[0078] Understandably, in real-world applications, when a robot vacuum encounters obstacles such as tables, chairs, feet, walls, slippers, or toys, it is considered to have detected a collision; similarly, when it detects steps, potholes, or other road conditions, it is considered to have detected a cliff.
[0079] In this embodiment, any existing collision detection and cliff detection technology can be used to perform collision and cliff detection on the sweeper. For example, data collected by pre-set collision sensors and ground detection sensors on the sweeper can be used to determine whether a collision or cliff situation exists. Alternatively, image processing can be performed on images captured by a camera to assist in the judgment.
[0080] This is just one example for reference. Figure 2 The structure of a sweeping machine in this embodiment may include: ground detection sensors 201, 202, 203, 204, 205 and 206, collision sensors 207 and 208, a left drive wheel 209, a right drive wheel 210, a swivel wheel 211, a radar 212, and a bumper strip 213. The ground detection sensors 201, 202, 203, 204, 205 and 206 are used to detect the distance between the sweeping machine and the ground; the collision sensors 207 and 208 are used to detect the collision location; the left drive wheel 209 and the right drive wheel 210 are used to drive the sweeping machine forward; the swivel wheel 211 is used to change the direction of travel of the sweeping machine; the radar 212 is used to detect the distance between obstacles and the sweeping machine; and the bumper strip 213 is used for collision protection of the sweeping machine.
[0081] In one possible embodiment, if the sweeper's anti-collision strip 213 collides with an obstacle, collision sensors 207 and 208 will be triggered, at which point it can be determined that the sweeper has detected a collision event.
[0082] In another possible embodiment, the floor sensor of the robot vacuum cleaner is an infrared pair consisting of an infrared light emitting tube and an infrared light receiving tube. The farther the infrared light emitting tube is from the ground, the smaller the sample value received by the infrared light receiving tube will be. Therefore, when the sample value is less than a preset sampling threshold, it can be determined that the robot vacuum cleaner has detected a cliff event.
[0083] In another possible embodiment, in order to perform more accurate motion recovery planning for the robot vacuum cleaner, the location coordinates of the collision or cliff detection can be marked on a map when a collision or cliff is detected.
[0084] If a collision or cliff is detected, the sweeper is controlled to stop moving and its wheels are locked. In this embodiment, the left drive wheel 209 and the right drive wheel 210 of the sweeper can be locked. The movement state of the sweeper can be controlled by a motion execution unit. The motion execution unit can be an independent microcontroller unit (MCU), a digital signal processing (DSP) module, or other control unit with high real-time performance; this application does not impose specific limitations on this.
[0085] It is understood that, in this embodiment of the application, to ensure the safety of the sweeper, sensors related to the sweeper's safety detection, such as collision sensors and ground detection sensors, can be directly connected to the motion execution unit to enable the motion execution unit to control and lock the wheel assembly. Furthermore, after locking the wheel assembly, the motion execution unit can notify the motion planning module to replan the motion pattern via serial communication or bus communication.
[0086] Step S102: Determine the current function mode of the sweeper.
[0087] In this embodiment of the application, the sweeper has a sweeping function mode and an obstacle-avoidance function mode. The sweeping function mode may include edge sweeping and zigzag sweeping.
[0088] Understandably, when performing cleaning tasks, robotic vacuum cleaners can use radar to receive data in real time for self-localization and obstacle detection; furthermore, when performing edge cleaning tasks, they can receive data from infrared sensors located along the edges of the vacuum cleaner for edge detection. Therefore, the functional mode of the robotic vacuum cleaner can be determined by the data collected by radar and infrared sensors.
[0089] In one possible embodiment, the user can initiate a cleaning task through an app linked to the robot vacuum, and the current functional mode of the robot vacuum can also be determined by querying the app linked to the robot vacuum.
[0090] It's important to note that the obstacle avoidance mode is a special case of the cleaning mode. When the robot vacuum is performing a cleaning task, it will replan its movement after detecting a collision. However, in scenarios with many obstacles, the robot vacuum can easily get stuck in narrow areas, potentially repeatedly detecting collisions and getting caught in a cycle of collision detection and movement planning. Figure 3 As shown, when the robot vacuum enters a space with densely packed table and chair legs to perform a cleaning task, if any of the obstacles 1 to 6 collide with the anti-collision strip, the collision switch will be triggered. During the process of replanning its movement, it is prone to repeatedly colliding with obstacles. Therefore, if the robot vacuum repeatedly detects collision events within a preset time, it can be determined that the robot vacuum is in the obstacle avoidance mode. For example, if the robot vacuum repeatedly detects collision events within 5 seconds, it can be determined that the robot vacuum is in obstacle avoidance mode.
[0091] Step S103: Control the sweeper to execute the movement mode corresponding to the target event according to the current function mode.
[0092] Understandably, different robot vacuum cleaner function modes may indicate different scenarios. For example, the edge cleaning function in the cleaning mode means that the robot vacuum maintains a certain distance from the wall, while the obstacle avoidance function means that the robot vacuum may be in a narrow space with many obstacles. Therefore, the movement plan needs to be determined based on the function mode and the target event.
[0093] In this embodiment of the application, if the target event is a collision detection and the current function mode is the escape function mode, then the following can be executed: Figure 4 The specific steps are as follows:
[0094] Step S401: Obtain radar data from the sweeping machine.
[0095] In this embodiment, radar data of the sweeping robot can be acquired at preset time intervals. The sweeping robot is equipped with radar 212; by acquiring radar data, position estimation and map building can be performed. For example, by scanning with radar, the coordinates of obstacles can be determined and recorded in the sweeping robot's map.
[0096] Step S402: Determine whether the sweeper's orientation is the optimal direction for getting out of trouble based on radar data.
[0097] Based on radar data, the coordinates and map information of obstacles can be determined, and the current orientation can be used to determine whether the sweeper's current direction is the optimal way to get out of trouble, in conjunction with the sweeper's own dimensions.
[0098] The optimal escape direction is the direction toward the optimal escape path, which can be obtained by any existing path planning method. This application embodiment does not impose any specific restrictions on this.
[0099] In one possible embodiment, a map can be constructed based on radar data, and detected obstacles can be marked on the map to calculate the cost of each possible path, thus obtaining a local cost map. Based on the obtained local cost map, the optimal escape path can be easily determined, and the direction in which the sweeper moves towards the optimal escape path is the optimal escape direction.
[0100] In another possible embodiment, images of obstacles can be captured by a camera pre-installed on the robot vacuum, the distance between obstacles can be determined, and this distance can be combined with the robot vacuum's own dimensions for judgment. For example, refer to... Figure 3The distance between obstacle 1 and obstacle 2 is 40 cm, the distance between obstacle 2 and obstacle 3 is 35 cm, the distance between obstacle 3 and obstacle 4 is 35 cm, the distance between obstacle 4 and obstacle 5 is 20 cm, the distance between obstacle 5 and obstacle 6 is 18 cm, and the distance between obstacle 6 and obstacle 1 is 36 cm. The diameter of the sweeper is 42 cm. Although the distance between obstacle 1 and obstacle 2 is less than the diameter of the sweeper, it is greater than the distance between the other obstacles. Therefore, the path to the gap between obstacle 1 and obstacle 2 can be identified as the optimal escape path, and the direction towards this path can be determined as the optimal escape direction.
[0101] In this embodiment of the application, if the direction of the sweeper is not the optimal direction for getting out of trouble, then steps S403 to S404 are executed; if the direction of the sweeper is the optimal direction for getting out of trouble, then step S405 is executed.
[0102] Step S403: Unlock the wheel assembly and control the sweeper to move backward a preset first distance.
[0103] In this embodiment, after a collision event is detected, the motion execution unit locks the wheel assembly until the motion planning module issues an unlocking command. Upon receiving the unlocking command from the motion planning module, the motion execution unit can unlock the robot vacuum's wheel assembly and control the robot vacuum to reverse a preset first distance.
[0104] The first distance mentioned above is a preset value, which can be set according to actual needs. For example, it can be set to 2 cm, 3 cm, etc. In this embodiment of the application, it can be preferably set to 2 cm.
[0105] Step S404: Adjust the orientation of the sweeper to the optimal direction for getting out of trouble, and control the sweeper to move forward.
[0106] After unlocking the sweeper's wheels, the sweeper can be controlled to move along the optimal escape path. Specifically, the omnidirectional wheels 211 can be used to adjust the sweeper's orientation to the optimal escape direction determined in step S402, and the sweeper can be controlled to move forward.
[0107] In one possible embodiment, while controlling the sweeper to move forward, radar data can be continuously acquired to detect obstacles in order to assist the sweeper in resuming its movement.
[0108] It's understandable that when a robot vacuum is in obstacle-avoidance mode, it's prone to repeatedly colliding with obstacles. Therefore, even while following the optimal obstacle-avoidance path, it may still encounter obstacles again. To avoid repeatedly executing these steps and interrupting the robot vacuum's motion recovery plan, the motion execution unit can be configured to stop locking the wheels after detecting a collision within a preset do-not-disturb period. For example, if another collision is detected within 3 seconds of the wheels being unlocked, but the motion planning module, based on radar detection of the obstacle, determines that the robot vacuum's current orientation is the optimal escape direction, then the wheels will not be locked, and the robot vacuum can continue moving forward.
[0109] Step S405: Unlock the wheel assembly and control the sweeper to move forward.
[0110] When the motion execution unit receives the unlocking command from the motion planning module, it can unlock the wheels of the sweeper and control the sweeper to move forward.
[0111] It is understandable that when in the escape mode, the exit of the optimal escape path may be relatively narrow and smaller than the diameter of the sweeper. Therefore, in order to escape smoothly, the sweeper can be controlled to accelerate forward at a preset acceleration in order to squeeze out of the narrow exit. The value of the acceleration can be preset, and this embodiment does not impose specific limitations on it.
[0112] In this embodiment of the application, if the target event is a collision detection and the current function mode is the cleaning function mode, then the following can be executed: Figure 5 The specific steps are as follows:
[0113] Step S501: Unlock the wheel assembly and control the sweeper to move backward a preset second distance.
[0114] When the motion execution unit receives the unlock wheel assembly command from the motion planning module, it unlocks the sweeper's wheels and controls the sweeper to retreat a preset second distance according to the command. The value of the second distance can be set according to the actual situation, for example, it can be set to 1 cm, 2 cm, etc., and in this embodiment, it can preferably be set to 3 cm.
[0115] Step S502: Replan the sweeper's travel path and control the sweeper to move according to the replanned travel path.
[0116] In this embodiment, the motion planning module can replan the travel path. For example, data from relevant sensors can be acquired and combined with a pre-constructed map to replan the path using any existing robot vacuum cleaner path planning method.
[0117] After the motion planning module replans the travel path, it can send a travel command to the motion control unit, which will then control the sweeper to travel along the replanned path.
[0118] Understandably, the motion control unit can adjust the orientation of the sweeper to match the direction of the travel path according to the planned path and the position and orientation of the sweeper, and then move forward at the preset speed and resume the cleaning task.
[0119] In this embodiment of the application, if the target event is the detection of a cliff, and the current functional mode is the escape function mode or the cleaning function mode, then the following can be executed: Figure 6 The specific steps are as follows:
[0120] Step S601: Obtain the angle information and floor inspection information of the sweeper.
[0121] The aforementioned angle information includes pitch angle and roll angle, and the aforementioned ground detection information includes the sampled values of the ground detection sensor.
[0122] Specifically, the pitch and roll angles can be calculated from data from the inertial measurement unit (IMU). Ground detection information can be acquired by ground detection sensors 201, 202, 203, 204, 205, and 206 pre-installed on the sweeper.
[0123] Step S602: Determine whether a cliff false detection has occurred based on the angle information and ground inspection information.
[0124] It's understandable that when a robot vacuum cleaner crosses obstacles, the front part of the machine might be lifted, potentially triggering a cliff detection. Therefore, to reduce the probability of false cliff detections, angle and ground detection information can be used to determine whether a false cliff detection has occurred.
[0125] Specifically, if the angle information meets a preset first condition and the ground detection information meets a preset second condition, a cliff false detection is determined to have occurred. The first condition is that the deviation between the pitch angle and a preset reference pitch angle is greater than a preset first deviation, or the deviation between the roll angle and a preset reference roll angle is greater than a preset second deviation. The second condition is that the deviation between the ground detection sensor's sampled value and a preset reference sampled value is less than a preset third deviation. If the angle information does not meet the first condition, or the ground detection information does not meet the second condition, a cliff false detection is determined not to have occurred. The reference pitch angle, reference roll angle, reference sampled value, first deviation, second deviation, and third deviation are all preset values. Developers can set these parameters based on experience; this application does not impose specific restrictions on the values of these six quantities.
[0126] In one possible embodiment, the pitch angle is 30 degrees, the roll angle is 15 degrees, the sampled value is 240, the reference pitch angle is 20 degrees, the reference roll angle is ±10 degrees, the reference sampled value is 300, the first deviation is 15 degrees, the second deviation is 10 degrees, and the third deviation is 100. Then, the deviation between the pitch angle and the preset reference pitch angle is less than 15 degrees, the deviation between the roll angle and the reference roll angle is less than 10 degrees, and the deviation between the sampled value of the ground detection sensor and the reference sampled value is less than 100. Therefore, it can be determined that the sweeping robot has falsely detected a cliff.
[0127] In this embodiment of the application, if a cliff false detection occurs, step S603 is executed; if no cliff false detection occurs, steps S604 to S605 are executed.
[0128] Step S603: Unlock the wheel assembly and control the sweeper to move forward.
[0129] If a cliff detection occurs falsely, the motion planning module can send a command to the motion execution unit to unlock the wheels and move forward. Upon receiving this command, the motion execution unit can unlock the robot vacuum's wheels and control the robot vacuum to move forward.
[0130] Step S604: Unlock the wheel assembly and control the sweeper to move backward a preset third distance.
[0131] If no cliff false detection occurs, it indicates that a cliff exists. After receiving the unlock wheel assembly and reverse commands from the motion planning module, the motion execution unit can unlock the sweeper's wheels according to the commands and control the sweeper to reverse a preset third distance. This third distance is a preset value, for example, it can be set to 2 cm, 3 cm, 4 cm, 5 cm, etc., and in this embodiment, it is preferably set to 5 cm.
[0132] In one possible embodiment, if any one of the ground detection sensors 201, 202, 203, and 204 in the front half of the sweeper detects a cliff event, it indicates that there is a cliff in front of the sweeper, and the sweeper can be controlled to move backward by 5 centimeters.
[0133] In another possible embodiment, if the ground detection sensor 205 or 206 on the rear half of the sweeper detects a cliff event, it indicates that there is a cliff behind the sweeper, and the sweeper can be controlled to move forward 5 centimeters.
[0134] In another possible embodiment, if any one of the ground detection sensors 201, 202, 203, and 204 on the front half of the sweeper detects a cliff event, the sweeper will be controlled to move backward by 5 centimeters. If, during the backward movement, the ground detection sensor 205 or 206 on the rear half of the sweeper detects a cliff event, it indicates that a cliff also exists behind the sweeper. In this case, the motion execution unit can immediately stop the backward movement and lock the wheel assembly. At the same time, the sweeper can also report the cliff event.
[0135] Step S605: Replan the sweeper's travel path and control the sweeper to move according to the replanned travel path.
[0136] The motion planning module can replan the sweeper's travel path, and the motion execution unit controls the sweeper to move according to the replanned travel path.
[0137] Understandably, if the motion planning module determines that the path before the false detection occurred is the optimal path, then there is no need to replan the path, and the movement can proceed according to the path before the false detection occurred.
[0138] In summary, when a target event is triggered, this embodiment controls the robot vacuum to stop moving and locks its wheels. The target event includes detecting a collision or a cliff. The current functional mode of the robot vacuum is determined, and the robot vacuum is controlled to execute a movement mode corresponding to the target event based on the current functional mode. Through this method, when a target event is triggered, the robot vacuum can execute a corresponding movement mode based on its current functional mode, improving the flexibility of obstacle avoidance and movement recovery methods and enhancing the user's cleaning experience in complex application scenarios.
[0139] 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.
[0140] Corresponding to the sweeper control method described in the above embodiments, Figure 7 This diagram illustrates a structural diagram of an embodiment of a sweeper control device provided in this application.
[0141] In this embodiment, a sweeper control device may include:
[0142] The motion control module 701 is used to control the sweeper to stop moving and lock the wheel assembly of the sweeper when a target event is triggered; wherein the target event includes detecting a collision or detecting a cliff;
[0143] Function mode determination module 702 is used to determine the current function mode of the sweeper;
[0144] The motion mode execution module 703 is used to control the sweeper to execute the motion mode corresponding to the target event according to the current functional mode.
[0145] In one specific implementation of this application embodiment, the motion mode execution module may include:
[0146] The radar data acquisition unit is used to acquire the radar data of the sweeping robot if the target event is a detected collision and the current function mode is the escape function mode.
[0147] The escape direction determination unit is used to determine whether the sweeper's orientation is the optimal escape direction based on the radar data;
[0148] The first reversing unit is used to unlock the wheel set and control the sweeper to reversing a preset first distance if the sweeper's orientation is not the optimal escape direction.
[0149] The orientation adjustment unit is used to adjust the orientation of the sweeper to the optimal escape direction and control the sweeper to move forward.
[0150] In one specific implementation of this application embodiment, the motion mode execution module may further include:
[0151] The forward control unit is used to unlock the wheel assembly and control the sweeper to move forward if the sweeper's orientation is the optimal escape direction.
[0152] In one specific implementation of this application embodiment, the motion mode execution module may further include:
[0153] The second reversing unit is used to unlock the wheel assembly and control the sweeper to reversing a preset second distance if the target event is a detected collision and the current function mode is the cleaning function mode.
[0154] The path planning unit is used to replan the travel path of the sweeping machine and control the sweeping machine to move according to the replanned travel path.
[0155] In one specific implementation of this application embodiment, the motion mode execution module may further include:
[0156] The information acquisition unit is used to acquire the angle information and ground detection information of the sweeper if the target event is the detection of a cliff and the current function mode is the escape function mode or the cleaning function mode.
[0157] The false detection judgment unit is used to determine whether a cliff false detection has occurred based on the angle information and the ground detection information;
[0158] The forward control unit is used to unlock the wheel assembly and control the sweeper to move forward if a cliff false detection occurs.
[0159] In one specific implementation of this application embodiment, the motion mode execution module may further include:
[0160] The third reversing unit is used to unlock the wheel assembly and control the sweeper to reverse a preset third distance if no cliff false detection occurs.
[0161] The path planning unit is used to replan the travel path of the sweeping machine and control the sweeping machine to move according to the replanned travel path.
[0162] In one specific implementation of this application embodiment, the false detection judgment unit may include:
[0163] The first false detection determination unit is used to determine that a cliff false detection has occurred if the angle information meets a preset first condition and the ground detection information meets a preset second condition; wherein, the first condition is that the deviation between the pitch angle and the preset reference pitch angle is greater than a preset first deviation amount, or the deviation between the roll angle and the preset reference roll angle is greater than a preset second deviation amount, and the second condition is that the deviation between the sampling value of the ground detection sensor and the preset reference sampling value is less than a preset third deviation amount;
[0164] The second false detection determination unit is used to determine that no cliff false detection has occurred if the angle information does not meet the first condition or the ground detection information does not meet the second condition.
[0165] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working processes of the devices, modules, and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here.
[0166] 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.
[0167] Figure 8 A schematic block diagram of a sweeping robot provided in an embodiment of this application is shown. For ease of explanation, only the parts related to the embodiment of this application are shown.
[0168] like Figure 8As shown, the sweeper 8 in this embodiment includes: a processor 80, a memory 81, and a computer program 82 stored in the memory 81 and executable on the processor 80. When the processor 80 executes the computer program 82, it implements the steps in the various sweeper control method embodiments described above, for example... Figure 1 Steps S101 to S103 are shown. Alternatively, when the processor 80 executes the computer program 82, it implements the functions of each module / unit in the above-described device embodiments, for example... Figure 7 The functions of modules 701 to 703 are shown.
[0169] For example, the computer program 82 may be divided into one or more modules / units, which are stored in the memory 81 and executed by the processor 80 to complete this application. The one or more modules / units may be a series of computer program instruction segments capable of performing specific functions, which describe the execution process of the computer program 82 in the sweeping robot 8.
[0170] Those skilled in the art will understand that Figure 8 This is merely an example of the robot vacuum cleaner 8 and does not constitute a limitation on the robot vacuum cleaner 8. It may include more or fewer components than shown, or combine certain components, or different components. For example, the robot vacuum cleaner 8 may also include input / output devices, network access devices, buses, etc.
[0171] The processor 80 can be a Central Processing Unit (CPU), or 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.
[0172] The memory 81 can be an internal storage unit of the robot vacuum cleaner 8, such as a hard drive or memory. The memory 81 can also be an external storage device of the robot vacuum cleaner 8, such as a plug-in hard drive, Smart Media Card (SMC), Secure Digital (SD) card, or Flash Card. Furthermore, the memory 81 can include both internal and external storage units of the robot vacuum cleaner 8. The memory 81 is used to store the computer program and other programs and data required by the robot vacuum cleaner 8. The memory 81 can also be used to temporarily store data that has been output or will be output.
[0173] 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.
[0174] 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.
[0175] 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.
[0176] In the embodiments provided in this application, it should be understood that the disclosed device / sweeper and method can be implemented in other ways. For example, the device / sweeper 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 coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between devices or units may be electrical, mechanical, or other forms.
[0177] 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.
[0178] Furthermore, the functional units in the various embodiments of this application 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.
[0179] If the integrated module / 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 can also 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 storage medium can include: any entity or device capable of carrying the computer program code, a recording medium, a USB flash drive, a portable hard drive, a magnetic disk, an optical disk, 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, etc. It should be noted that the content included in the computer-readable storage medium can be appropriately added or removed 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 telecommunication signals.
[0180] 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 sweeper control method, characterized in that, comprise: controlling the sweeper to stop moving and locking a wheel set of the sweeper when a target event is triggered, wherein the target event comprises detecting a collision or detecting a cliff; determining a current function mode of the sweeper; if the target event is detecting a collision and the current function mode is an escape function mode, obtaining radar data of the sweeper, determining whether an orientation of the sweeper is an optimal escape direction according to the radar data, unlocking the wheel set and controlling the sweeper to retreat a first preset distance if the orientation of the sweeper is not the optimal escape direction, adjusting the orientation of the sweeper to the optimal escape direction and controlling the sweeper to move forward; if the target event is detecting a collision and the current function mode is a cleaning function mode, unlocking the wheel set and controlling the sweeper to retreat a second preset distance, re-planning a moving path of the sweeper and controlling the sweeper to move according to the re-planned moving path; if the target event is detecting a cliff and the current function mode is the escape function mode or the cleaning function mode, obtaining angle information and ground detection information of the sweeper, and determining whether a cliff false detection occurs according to the angle information and the ground detection information, and unlocking the wheel set and controlling the sweeper to move forward if the cliff false detection occurs. 2.The method of claim 1, wherein, after determining whether the orientation of the sweeper is the optimal escape direction according to the radar data, the method further comprises: if the orientation of the sweeper is the optimal escape direction, unlocking the wheel set and controlling the sweeper to move forward. 3.The method of claim 1, wherein, after determining whether the cliff false detection occurs according to the angle information and the ground detection information, the method further comprises: if the cliff false detection does not occur, unlocking the wheel set and controlling the sweeper to retreat a third preset distance; re-planning a moving path of the sweeper and controlling the sweeper to move according to the re-planned moving path.
4. The floor cleaning machine control method of any one of claims 1-3, wherein, the angle information comprises a pitch angle and a roll angle, and the ground detection information comprises a sampling value of a ground detection sensor; the determining whether the cliff false detection occurs according to the angle information and the ground detection information comprises: if the angle information satisfies a first preset condition and the ground detection information satisfies a second preset condition, determining that the cliff false detection occurs, wherein the first condition is that a deviation between the pitch angle and a preset reference pitch angle is greater than a first preset deviation amount or a deviation between the roll angle and a preset reference roll angle is greater than a second preset deviation amount, and the second condition is that a deviation between the sampling value of the ground detection sensor and a preset reference sampling value is less than a third preset deviation amount; if the angle information does not satisfy the first condition or the ground detection information does not satisfy the second condition, determining that the cliff false detection does not occur.
5. A sweeper control device characterized by comprising: comprise: a motion control module configured to control a sweeper to stop moving and lock a wheel set of the sweeper when a target event is triggered, wherein the target event comprises detecting a collision or detecting a cliff; a function mode determination module configured to determine a current function mode of the sweeper; The motion mode execution module is configured to: if the target event is a detected collision and the current function mode is an escape function mode, acquire radar data of the robot cleaner; determine whether the orientation of the robot cleaner is an optimal escape direction according to the radar data; if the orientation of the robot cleaner is not the optimal escape direction, unlock the wheel set and control the robot cleaner to retreat by a first preset distance; adjust the orientation of the robot cleaner to the optimal escape direction and control the robot cleaner to move forward; if the target event is a detected collision and the current function mode is a cleaning function mode, unlock the wheel set and control the robot cleaner to retreat by a second preset distance; re-plan a travel path of the robot cleaner and control the robot cleaner to move according to the re-planned travel path; and if the target event is a detected cliff and the current function mode is the escape function mode or the cleaning function mode, acquire angle information and ground detection information of the robot cleaner; determine whether a cliff false detection occurs according to the angle information and the ground detection information; and if the cliff false detection occurs, unlock the wheel set and control the robot cleaner to move forward.
6. A computer-readable storage medium storing a computer program, the computer program comprising instructions that, when executed by a computer, cause the computer to perform the method of any one of claims 1 to 5. The computer program, when executed by a processor, implements the steps of the robot cleaner control method according to any one of claims 1 to 4.
7. A robot vacuum cleaner comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, The processor, when executing the computer program, implements the steps of the robot cleaner control method according to any one of claims 1 to 4.
Citation Information
Patent Citations
Moving robot and control method thereof
CN108724143A
Sweeper
CN110101341A