Device control method, device, mobile robot and storage medium
By identifying and adjusting the cleaning strategy for slipping areas, the problem of repeated cleaning caused by the gyro machine slipping on areas such as carpets was solved, achieving quick escape and efficient cleaning.
Patent Information
- Application Number
- CN202211605162.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-12-14
- Publication Date
- 2025-09-09
- Estimated Expiration
- 2042-12-14
AI Technical Summary
Gyroscopic machines are prone to slipping when cleaning areas such as carpets, causing the machine to deviate from its route and repeat cleaning, and unable to leave the area to complete the cleaning task.
By determining the slippage status of the cleaning area, the system identifies the slippage area and adjusts the cleaning strategy to avoid slippage again, including adjusting the cleaning direction, coverage spacing and navigation path.
The mobile robot can quickly escape from slippery areas, avoid dead loops, and improve sensitivity and cleaning efficiency.
Smart Images

Figure CN116172476B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of robotics technology, and in particular to a device control method, apparatus, mobile robot and storage medium. Background Art
[0002] When a gyroscopic machine is cleaning, if it encounters an area such as a carpet, the motor wheel of the gyroscopic machine is likely to rub against the area and slip, causing the machine to deviate from the prescribed route. However, the machine itself is unaware of the deviation and continues to clean the area according to the original cleaning method, causing the machine to repeatedly clean the same covered straight line and be unable to leave the area and complete the cleaning task. Summary of the Invention
[0003] The main purpose of the present invention is to provide a device control method, apparatus, mobile robot and storage medium, aiming to solve the technical problem of how to ensure rapid escape from slipping in the prior art.
[0004] To achieve the above object, the present invention provides a device control method, which includes:
[0005] Determining that the vehicle is in a slipping state while cleaning a cleaning area, wherein the cleaning area is an area to be cleaned according to a preset cleaning strategy;
[0006] determining a slippery area in the cleaning area;
[0007] A cleaning strategy for the slipping area in the cleaning area is adjusted to avoid slipping again.
[0008] Optionally, determining that the cleaning area is in a slipping state includes:
[0009] It is determined that a slip event occurs in the cleaning area, and when the slip event satisfies one or more of the following conditions, it is determined that the cleaning area is in a slip state:
[0010] The duration of the slip event is greater than a preset time length;
[0011] The number of times the slip event occurs is greater than a preset number;
[0012] The slip distance of the slip event is greater than a preset distance.
[0013] Optionally, the determining that a slip event occurs in the cleaning area includes one of the following methods:
[0014] determining a skidding deflection angle according to the odometer position and the actual position, and determining that a skidding event occurs when the skidding deflection angle is greater than a preset angle;
[0015] determining the occurrence of a skid event according to the received skid prompt instruction;
[0016] The occurrence of skid is determined based on the preset route and the actual route.
[0017] Optionally, determining the slipping area in the cleaning area includes one of the following methods:
[0018] determining an area of a preset area including a slipping position in the cleaning area as a slipping area;
[0019] determining the remaining areas in the cleaning area as slip areas;
[0020] Odometer data and actual position data are obtained, and a deflection direction and an offset distance where a slip occurs are determined based on the odometer data and the actual position data, and a slip area in the cleaning area is determined according to the deflection direction and the offset distance.
[0021] Optionally, adjusting a cleaning strategy for the slipping area in the cleaning area to avoid slipping again includes:
[0022] determining whether the sliding direction is consistent with a preset cleaning direction of the cleaning area;
[0023] If yes, continue cleaning according to the preset cleaning strategy, and record the area of each slip, and repeat cleaning the area after the cleaning area is completed;
[0024] If not, the cleaning coverage interval in the preset cleaning direction in the preset cleaning strategy is increased, and the areas missed in each cleaning are recorded. After the cleaning area is cleaned, the area is cleaned again.
[0025] Optionally, repeatedly cleaning the area includes:
[0026] Re-determine the cleaning starting point and cleaning direction of the area, and cover and clean the area according to the cleaning speed, cleaning force, number of cleanings, and / or the angle of the long and short sides of the bow that are different from the preset cleaning strategy.
[0027] Optionally, increasing the cleaning coverage distance in a preset cleaning direction in the preset cleaning strategy includes:
[0028] Determine the skid deflection angle and forward displacement based on odometer data and actual position data;
[0029] determining an offset distance according to the forward displacement and the offset angle;
[0030] The cleaning coverage interval in the preset cleaning direction in the preset cleaning strategy is increased according to the offset distance.
[0031] Optionally, after increasing the cleaning coverage distance in the preset cleaning direction in the preset cleaning strategy, the method further includes:
[0032] Determine the slip location and offset distance;
[0033] Obtaining a navigation target point based on the skidding position and the offset distance;
[0034] replanning the navigation path according to the skidding position and the navigation target point;
[0035] The missed scanning areas are determined according to the navigation path.
[0036] Optionally, after increasing the cleaning coverage distance in the preset cleaning direction in the preset cleaning strategy, the method further includes:
[0037] Obtain the forward route of the odometer data and the forward route of the actual position data;
[0038] When the forward route of the odometer data and the forward route of the actual position data coincide with each other, the sweep coverage interval is restored.
[0039] In addition, to achieve the above-mentioned object, the present invention further provides a device control apparatus, the device control apparatus comprising:
[0040] a determination module, configured to determine that a cleaning area is in a slipping state when cleaning the area, wherein the cleaning area is an area to be cleaned according to a preset cleaning strategy;
[0041] The determining module is further configured to determine a slipping area in the cleaning area;
[0042] The adjustment module is used to adjust the cleaning strategy of the slipping area in the cleaning area to avoid slipping again.
[0043] In addition, to achieve the above-mentioned purpose, the present invention also proposes a mobile robot, which includes: a memory, a processor, and a device control program stored in the memory and executable on the processor, wherein the device control program is configured to implement the device control method described above.
[0044] In addition, to achieve the above-mentioned purpose, the present invention further proposes a storage medium, on which a device control program is stored. When the device control program is executed by a processor, the device control method as described above is implemented.
[0045] The present invention determines that a cleaning area is in a slipping state when cleaning, wherein the cleaning area is an area to be cleaned according to a preset cleaning strategy; determines a slipping area within the cleaning area; and adjusts the cleaning strategy for the slipping area within the cleaning area to prevent further slipping. In this way, when it is determined that a cleaning area is in a slipping state when cleaning, the slipping area is determined, and the cleaning strategy for the slipping area is adjusted to prevent further slipping, thereby preventing the mobile robot from entering an endless loop in the slipping area and being unable to escape. This enables the mobile robot to quickly escape from a slipping situation and improves the sensitivity of the mobile robot. BRIEF DESCRIPTION OF THE DRAWINGS
[0046] Figure 1 Schematic diagram of the structure of a device controlling a mobile robot in a hardware operating environment according to an embodiment of the present invention;
[0047] Figure 2 This is a flow chart of an embodiment of a device control method of the present invention;
[0048] Figure 3 A schematic diagram of determining a slip area according to an embodiment of a device control method of the present invention;
[0049] Figure 4 A schematic diagram of determining a slip area according to an embodiment of a device control method of the present invention;
[0050] Figure 5 A schematic diagram of determining a slip area according to an embodiment of a device control method of the present invention;
[0051] Figure 6 This is a flow chart of an embodiment of a device control method of the present invention;
[0052] Figure 7 A schematic diagram of a route of an embodiment of a device control method of the present invention;
[0053] Figure 8 This is a flow chart of an embodiment of a device control method of the present invention;
[0054] Figure 9 A schematic diagram of the cleaning direction of an embodiment of the device control method of the present invention;
[0055] Figure 10 A schematic diagram of a cleaning strategy according to an embodiment of the device control method of the present invention;
[0056] Figure 11 A schematic diagram of determining a missed scan area according to an embodiment of a device control method of the present invention;
[0057] Figure 12 This is a structural block diagram of an embodiment of the equipment control device of the present invention.
[0058] The purpose, features and advantages of the present invention will be further described with reference to the accompanying drawings and in conjunction with the embodiments. DETAILED DESCRIPTION
[0059] It should be understood that the specific embodiments described herein are only used to explain the present invention and are not intended to limit the present invention.
[0060] Reference Figure 1 , Figure 1 This is a schematic diagram of the structure of a device-controlled mobile robot in the hardware operating environment involved in an embodiment of the present invention.
[0061] like Figure 1 As shown, the device for controlling the mobile robot may include: a processor 1001, such as a central processing unit (CPU), a communication bus 1002, a user interface 1003, a network interface 1004, and a memory 1005. The communication bus 1002 is used to realize the connection and communication between these components. The user interface 1003 may include a display screen (Display), an input unit such as a keyboard (Keyboard), and the user interface 1003 may optionally include a standard wired interface and a wireless interface. The network interface 1004 may optionally include a standard wired interface and a wireless interface (such as a wireless fidelity (Wi-Fi) interface). The memory 1005 may be a high-speed random access memory (Random Access Memory, RAM) memory, or a stable non-volatile memory (Non-Volatile Memory, NVM), such as a disk memory. The memory 1005 may also be a storage device independent of the aforementioned processor 1001.
[0062] Those skilled in the art will understand that Figure 1 The structure shown in the figure does not constitute a limitation on the device for controlling a mobile robot, and may include more or fewer components than shown in the figure, or combine certain components, or arrange the components differently.
[0063] like Figure 1 As shown, the memory 1005 as a storage medium may include an operating system, a network communication module, a user interface module, and a device control program.
[0064] exist Figure 1In the device-controlled mobile robot shown, the network interface 1004 is mainly used for data communication with the network server; the user interface 1003 is mainly used for data interaction with the user; the processor 1001 and the memory 1005 in the device-controlled mobile robot of the present invention can be set in the device-controlled mobile robot, and the device-controlled mobile robot calls the device control program stored in the memory 1005 through the processor 1001, and executes the device control method provided by the embodiment of the present invention.
[0065] The embodiment of the present invention provides a device control method, referring to Figure 2 , Figure 2 The figure is a flow chart of an embodiment of a device control method of the present invention.
[0066] The device control method includes the following steps:
[0067] Step S10: determining that the cleaning area is in a slipping state when cleaning, wherein the cleaning area is an area to be cleaned according to a preset cleaning strategy.
[0068] It should be noted that the executor of this embodiment is a mobile robot, which can realize all the functions of an intelligent cleaning robot, including but not limited to cleaning, mobile following, and voice interaction with the user, and may also include other functions, which are not limited in this embodiment.
[0069] It is understandable that the mobile robot is equipped with an IMU (Inertial Measurement Unit) and a wheel encoder, which collect data in real time to obtain the odometer data and actual position data of the mobile robot.
[0070] In practice, when the mobile robot is performing routine floor cleaning, the X-axis calculated by the IMU and the wheel encoder are nearly identical, allowing the robot to travel in a straight line. However, when the robot is in a slippery area, such as a carpet, friction between the wheels causes a difference in the speed of the left and right wheels. The robot will shift toward the slower wheel speed, causing it to move diagonally. This is considered slippage.
[0071] In the specific implementation, the cleaning area refers to the area designated in the cleaning task received by the mobile robot and needs to be cleaned according to the preset cleaning strategy. The preset cleaning strategy includes but is not limited to the pre-set cleaning speed, cleaning force, number of cleanings, the angle of the long and short sides of the bow-shaped coverage of the mobile robot, and other strategies. The cleaning force is not limited to the mop pressure and suction power.
[0072] It should be noted that the mobile robot determines whether a slip event occurs in the cleaning area. When a slip event occurs in the cleaning area and the slip event meets the preset slip condition, it is determined that the mobile robot is in a slip state when cleaning the cleaning area.
[0073] Step S20: determining a slipping area in the cleaning area.
[0074] It should be noted that the slip area refers to the area where the mobile robot slips. When the mobile robot determines that it is in a slip state while cleaning the cleaning area, the slip area in the cleaning area can be determined based on the location and / or odometer data and actual position data where the slip event occurred.
[0075] It can be understood that in order to accurately divide the slip area in the cleaning area, further, the determination of the slip area in the cleaning area includes one of the following methods: determining an area of a preset area containing the slip position in the cleaning area as the slip area; determining the remaining areas in the cleaning area as the slip area; obtaining odometer data and actual position data, and determining the deflection direction and offset distance of the slip based on the odometer data and the actual position data, and determining the slip area in the cleaning area according to the deflection direction and offset distance.
[0076] In a specific implementation, the slip position refers to the position of the mobile robot when a slip event occurs, and the two reflect the angular displacement, three-axis attitude angle, and acceleration of the mobile robot.
[0077] It should be noted that when the mobile robot determines the slipping area in the cleaning area, it can adopt any of the three methods. First, it obtains the slipping position, takes the slipping position as the center or edge, selects an area of a preset area, and then uses the selected area as the slipping area. The slipping area can also be selected in other ways, but the selected area of the preset area must include the slipping position. For example, Figure 3 As shown in the figure, A is the cleaning area, a is the slip position of the mobile robot when a slip event occurs, and the preset area is 5 square meters. The slip area obtained when a is the edge is B, and the slip area obtained when a is the center is C.
[0078] It is understandable that, secondly, if the mobile robot is determined to be in a slipping state, the remaining uncleaned areas in the cleaning area are all regarded as slipping areas. Figure 4 As shown, A is the cleaning area, the mobile robot is determined to be in a slipping state at a, part B on the left side of a is the cleaned area, and part C on the right side of a is the uncleaned area, so C is regarded as the slipping area.
[0079] In the specific implementation, thirdly, the odometer data and actual position data are obtained. Since the device orientation of the mobile robot remains positive when it slips, a displacement deviation angle is generated between the x-axis vector value calculated based on the odometer data and the x-axis vector value calculated based on the actual position data. At the same time, the displacement increments generated by the mobile robot in the x and y directions are determined based on the odometer data and the actual position data. The direction corresponding to the displacement deviation angle generated during slipping is the deflection direction, and the displacement increments in the x and y directions are the offset distance. The slip area is the area delineated in the deflection direction with the displacement increments in the x and y directions as the length and width. Figure 5 As shown in the figure, a is the displacement deviation angle caused by the mobile robot slipping, a = tana = y / x, y is the displacement increment in the y direction, and x is the displacement increment in the x direction. The slip area is A. The x direction is the forward direction of the mobile robot, and the y direction is the preset cleaning direction in the preset cleaning strategy.
[0080] Step S30: adjusting the cleaning strategy for the slipping area in the cleaning area to avoid slipping again.
[0081] It should be noted that after the slipping area is determined, the cleaning strategy of the slipping area is adjusted to enable the mobile robot to quickly escape from the slipping area, thereby avoiding slipping again.
[0082] This embodiment determines that a cleaning area is in a slipping state while cleaning, where the cleaning area is an area cleaned according to a preset cleaning strategy; determines a slipping area within the cleaning area; and adjusts the cleaning strategy for the slipping area within the cleaning area to prevent further slipping. In this manner, when a slipping state is determined while cleaning the cleaning area, the slipping area is determined and the cleaning strategy for the slipping area is adjusted to prevent further slipping. This prevents the mobile robot from being trapped in an endless loop in the slipping area and unable to escape, enabling the mobile robot to quickly escape from a slipping situation and improving the sensitivity of the mobile robot.
[0083] refer to Figure 6 , Figure 6 A more detailed flow chart of a device control method of the present invention.
[0084] Based on the above content, the device control method provided by the present invention is further introduced, wherein determining that the cleaning area is in a slipping state includes:
[0085] Step S11: determining that a slip event occurs in the cleaning area, and when the slip event satisfies one or more of the following conditions, determining that the cleaning area is in a slip state.
[0086] It should be noted that when a slip event occurs in the mobile robot, it is necessary to determine whether the slip event meets one or more of the preset slip conditions, and then determine that the mobile robot is in a slip state in the cleaning area.
[0087] It can be understood that in order to accurately determine whether a slip event occurs in the cleaning area of the mobile robot, further, the determination of the occurrence of a slip event in the cleaning area includes one of the following methods: determining the slip deflection angle based on the odometer position and the actual position, and determining that a slip event occurs when the slip deflection angle is greater than a preset angle; determining that a slip event occurs based on a received slip prompt instruction; determining that a slip occurs based on a preset route and an actual route.
[0088] In a specific implementation, a slip event is determined when one or more of the following conditions occur within the cleaning area: First, the odometer position of the mobile robot is determined based on odometer data, the actual position of the mobile robot is determined based on actual position data, and the displacement deviation angle between the odometer position and the actual position is determined based on the x-axis. This displacement deviation angle is the slip deflection angle. A slip event is determined when the slip deflection angle is greater than a preset angle. The preset angle is a pre-set angle threshold used to determine whether the mobile robot has experienced a slip event.
[0089] It should be noted that, secondly, when the mobile robot receives a slip prompt instruction sent by the user or the control terminal, it determines that the mobile robot has a slip event. The user can send a slip prompt instruction through voice or through the operating controls on the mobile robot. The control terminal can monitor the operating status of the mobile robot in real time, and when it is determined that the mobile robot has a slip event based on the real-time monitoring data, a slip prompt instruction is generated and sent to the mobile robot.
[0090] It is understandable that, thirdly, the preset route refers to the route that is pre-set in the cleaning area according to the preset cleaning strategy, and the actual route refers to the cleaning route determined according to the actual position data of the wheel set code disk. When the preset route and the actual route do not coincide, it means that the mobile robot has a position offset during the cleaning process, and it is determined that the mobile robot has a slip event. For example, Figure 7 As shown, the preset route is 1 and the actual route is 2, which means that the mobile robot has slipped in the cleaning area.
[0091] Step S12: The duration of the slip event is greater than a preset time length.
[0092] It should be noted that when a slip event occurs in the mobile robot, it is necessary to determine whether the slip event meets one or more of the preset slip conditions before the mobile robot is determined to be in a slipping state within the cleaning area. First, if the slip event lasts longer than a preset time, it indicates that the mobile robot is in a slipping state within the cleaning area. The preset time is a pre-set period of time used to determine whether the mobile robot is in a slipping state. For example, if the preset time is 30 seconds, if the slip duration reaches 30.01 seconds, the mobile robot is determined to be in a slipping state within the cleaning area.
[0093] Step S13: The number of times the slip event occurs is greater than a preset number.
[0094] It should be noted that, secondly, if the number of slip events exceeds a preset number, it indicates that the mobile robot is slipping within the cleaning area. The preset number is a pre-set threshold for determining whether the mobile robot is slipping. For example, if the preset number is three, and the mobile robot slips four times, it is determined to be slipping within the cleaning area.
[0095] Step S14: The slip distance of the slip event is greater than a preset distance.
[0096] It should be noted that, thirdly, if the slip distance of a slip event exceeds a preset distance, it indicates that the mobile robot is slipping within the cleaning area. The preset distance is a pre-set distance threshold used to determine whether the mobile robot is slipping. For example, if the preset distance is 3 meters and the mobile robot slips 3.1 meters while cleaning, it is determined to be slipping within the cleaning area.
[0097] It is understood that if a slip event occurs in the mobile robot and one or more of the above conditions are met simultaneously, the mobile robot can be determined to be in a slipping state within the cleaning area. For example, if the duration of the slip event in the cleaning area exceeds a preset event length, the number of slip events exceeds a preset number, and the slip distance of the slip event exceeds a preset distance, the mobile robot can be determined to be in a slipping state within the cleaning area.
[0098] In this embodiment, a slip event is determined to occur within the cleaning area, and the area is determined to be slipping if one or more of the following conditions are met: the slip event lasts longer than a preset time; the slip event occurs more than a preset number of times; or the slip distance exceeds a preset distance. This approach determines whether the mobile robot is slipping within the cleaning area based on the duration, number of occurrences, and distance of the slip event, ensuring the accuracy of the slip state determination process and preventing false triggering of the slip state.
[0099] refer to Figure 8 , Figure 8 A more detailed flow chart of a device control method provided by the present invention.
[0100] Based on the above content, the device control method provided by the present invention is further introduced. In this embodiment, the device control method adjusts the cleaning strategy for the slipping area in the cleaning area to prevent slipping again, including:
[0101] Step S31: Determine whether the sliding direction is consistent with the preset cleaning direction of the cleaning area.
[0102] It should be noted that the slip direction refers to the deflection direction of the mobile robot when the slip event occurs, and the preset cleaning direction refers to the cleaning direction of the mobile robot set in the preset cleaning strategy. When the mobile robot is determined to be slipping within the cleaning area, it is determined whether the slip direction is consistent with the preset cleaning direction.
[0103] Step S32: If yes, continue cleaning according to the preset cleaning strategy, and record the area of each slip. After the cleaning area is cleaned, repeat cleaning the area.
[0104] It should be noted that if the mobile robot's slipping direction is consistent with the preset cleaning direction, the mobile robot will quickly leave the slipping area, and continue cleaning according to the preset cleaning strategy, and record the slipping area determined according to the slipping state. After cleaning the cleaning area, it will repeat the cleaning of the slipping area. For example, Figure 9 As shown, the preset cleaning direction is to clean to the right. The actual route during slipping is shown as 1, which means that the slipping direction is also to the right. At this time, the slipping area is recorded, and after the cleaning area is completed, the slipping area is cleaned repeatedly.
[0105] It is understood that in order to ensure the cleaning quality when repeatedly cleaning an area, the repeated cleaning of the area further includes: re-determining the cleaning starting point and cleaning direction of the area, and performing a covering cleaning of the area according to a cleaning speed, cleaning force, number of cleanings, and / or the angle of the long and short sides of the bow-shaped coverage that are different from the preset cleaning strategy. In other examples, different from the preset cleaning strategy, the slippery area can also be cleaned again according to a spiral cleaning method or a tic-tac-toe covering cleaning method.
[0106] In a specific implementation, the cleaning starting point is determined based on the edge position of the slipping area, and the direction that is the same as, opposite to, or perpendicular to the slipping direction can be used as the cleaning direction. The area is cleaned according to the cleaning speed, cleaning force, cleaning times, and / or the angle of the long and short sides of the bow that are different from the preset cleaning strategy. The cleaning force includes but is not limited to the mop pressure and suction power. For example, Figure 10 As shown in the figure, the preset cleaning direction is cleaning to the right, and the angle of the long side and the short side covered by the bow in the preset cleaning strategy is a. When repeatedly cleaning area A, the angle of the long side and the short side covered by the bow is as shown in b, and the adjusted cleaning direction is cleaning to the right, and the cleaning starting point is G.
[0107] Step S33: If not, increase the cleaning coverage distance in the preset cleaning direction in the preset cleaning strategy, and record the areas that were missed each time. After the cleaning area is cleaned, repeat the cleaning of the area.
[0108] It should be noted that if the sliding direction of the mobile robot is inconsistent with the preset cleaning direction, the cleaning coverage distance in the preset cleaning direction in the preset cleaning strategy will be increased. The cleaning coverage distance refers to the lateral coverage distance of the mobile robot during cleaning.
[0109] It is understandable that in order to ensure that the mobile robot can quickly escape from the slipping area, when the mobile robot slips and meets certain conditions, the missed sweeping area is determined, and the robot moves from the slipping position to the end point of the missed sweeping area to escape from the missed sweeping area. The missed sweeping area is not cleaned during the movement, and the missed sweeping area is cleaned repeatedly after the cleaning area is cleaned. The specific process of repeatedly cleaning the missed sweeping area is as follows: based on the edge position of the missed sweeping area, the cleaning starting point is determined, and the direction that is the same as, opposite to, or perpendicular to the slipping direction can be used as the cleaning direction. The area is covered and cleaned according to the cleaning speed, cleaning force, number of cleanings, and / or the angle of the long side and the short side of the bow that are different from the preset cleaning strategy. The cleaning force includes but is not limited to the mop pressure and the vacuum power.
[0110] In a specific implementation, in order to ensure the cleaning quality and enable the mobile robot to quickly escape the slipping area, 5 further increases the cleaning coverage distance in the preset cleaning direction in the preset cleaning strategy, including:
[0111] Determine the slip deflection angle and forward displacement according to the odometer data and the actual position data; determine the offset distance according to the forward displacement and the offset angle; and increase the cleaning coverage spacing in the preset cleaning direction in the preset cleaning strategy according to the offset distance.
[0112] It should be noted that the slip deflection angle refers to the displacement deviation angle a generated when the mobile robot slips, the forward displacement refers to the displacement increment x in the direction perpendicular to the preset cleaning direction, and the offset distance refers to the displacement increment y in the preset cleaning direction. Since a=tana=y / x, the offset distance can be determined based on the forward displacement and the offset angle.
[0113] It can be understood that the adjusted cleaning coverage distance is determined based on the sum of the offset distance and the cleaning coverage distance in the preset cleaning direction in the preset cleaning strategy. For example, if the offset distance is y and the cleaning coverage distance in the preset cleaning direction in the preset cleaning strategy is m, then the adjusted cleaning coverage distance is m+y.
[0114] This increases the cleaning coverage distance in the preset cleaning direction in the preset cleaning strategy.
[0115] In a specific implementation, in order to ensure that the mobile robot can escape quickly and accurately determine the missed cleaning area, further, after the cleaning coverage distance in the preset cleaning direction in the preset cleaning strategy is increased,
[0116] The method further includes: determining a skidding position and an offset distance; obtaining a navigation target point based on the skidding position and the offset distance 0; and replanning a navigation path according to the skidding position and the navigation target point.
[0117] The missed scanning areas are determined according to the navigation path.
[0118] It should be noted that the number of slip events is counted, and when the number of slip events reaches the preset escape number, the slip position when the preset escape number is reached is determined, and the preset escape number is obtained.
[0119] The offset distance of the preset number of escape times is added to obtain the escape distance, and the first navigation coordinate value in the preset cleaning direction is determined based on the coordinate value in the preset cleaning direction in the position coordinate of the skidding position and the escape distance, and the second navigation coordinate value in the direction perpendicular to the preset cleaning direction is determined by the preset route, and the position coordinates of the navigation target point are determined according to the first navigation coordinate value and the second navigation coordinate value, and the path is planned according to the position coordinates of the skidding position and the position coordinates of the navigation target point to obtain the navigation coordinate value.
[0120] The mobile robot moves to the navigation target point according to the navigation path, and determines the missed scanning area based on the slip position, navigation 0 target point and navigation path.
[0121] It is understandable that if Figure 11As shown, the preset escape times are 5 times, the cleaning area is A, the mobile robot has experienced 5 slip events at position a, and the corresponding offset distances when the 5 slip events occurred are y1, y2, y3, y4, and y5 respectively. The escape distance is y1+y2+y3+y4+y5=y6, and the position coordinates at a are (m, n). Based on the coordinate value n in the preset cleaning direction in the position coordinates of the slip position and the escape distance y6, the first navigation coordinate value in the preset cleaning direction is determined to be n+y6, and the preset route is determined to be The coordinate axis is established at the starting point, and the second navigation coordinate value is 0. The navigation target point is b, and the position coordinate at b is (0, n+y6). Path planning is performed based on a and b to obtain navigation path 1. The mobile robot moves directly from a to b according to 1, and the missed area is B. In addition to the cleaned area C and the missed area B in the cleaning area A, there is also an uncleaned area D with the navigation target point b as the starting point. After the mobile robot completes cleaning the uncleaned area D, it returns to the missed area B and repeats cleaning the missed area B.
[0122] In a specific implementation, in order to ensure the normal progress of cleaning, further, after increasing the cleaning coverage distance in the preset cleaning direction in the preset cleaning strategy, it also includes: obtaining the forward route of the odometer data and the forward route of the actual position data; when the forward route of the odometer data and the forward route of the actual position data coincide, restoring the cleaning coverage distance.
[0123] It should be noted that the forward route collected by the odometer data and the forward route of the actual position data are obtained. The forward route here refers to the driving path in the direction perpendicular to the preset cleaning direction. When the forward route collected by the odometer data and the forward route of the actual position data coincide with each other, it means that the mobile robot has not slipped. At this time, the cleaning coverage interval is restored, and cleaning is performed using the cleaning coverage interval in the preset cleaning direction in the preset cleaning strategy.
[0124] This embodiment determines whether the slip direction is consistent with the preset cleaning direction of the cleaning area. If so, cleaning continues according to the preset cleaning strategy, and the area of each slip is recorded. After cleaning the cleaning area, the cleaning is repeated. If not, the cleaning coverage interval in the preset cleaning direction of the preset cleaning strategy is increased, and the areas missed are recorded. After cleaning the cleaning area, the cleaning is repeated. By determining whether the slip direction is consistent with the preset cleaning direction, different cleaning methods are used according to different situations, which not only ensures cleaning quality but also prevents the mobile robot from getting stuck in the escape area.
[0125] In addition, refer to Figure 12 , an embodiment of the present invention further provides a device control device, the device control device comprising:
[0126] The determination module 10 is used to determine whether a cleaning area is in a slipping state when cleaning, and the cleaning area is an area that is cleaned according to a preset cleaning strategy.
[0127] The determining module 10 is further configured to determine a slipping area in the cleaning area.
[0128] The adjustment module 20 is configured to adjust a cleaning strategy for the slipping area in the cleaning area to avoid slipping again.
[0129] This embodiment determines that a cleaning area is in a slipping state while cleaning, where the cleaning area is an area cleaned according to a preset cleaning strategy; determines a slipping area within the cleaning area; and adjusts the cleaning strategy for the slipping area within the cleaning area to prevent further slipping. In this manner, when a slipping state is determined while cleaning the cleaning area, the slipping area is determined and the cleaning strategy for the slipping area is adjusted to prevent further slipping. This prevents the mobile robot from being trapped in an endless loop in the slipping area and unable to escape, enabling the mobile robot to quickly escape from a slipping situation and improving the sensitivity of the mobile robot.
[0130] In one embodiment, the determining module 10 is further configured to determine that a slip event occurs in the cleaning area, and to determine that the cleaning area is in a slip state when the slip event satisfies one or more of the following conditions:
[0131] The duration of the slip event is greater than a preset time length;
[0132] The number of times the slip event occurs is greater than a preset number;
[0133] The slip distance of the slip event is greater than a preset distance.
[0134] In one embodiment, the determining module 10 is further configured to determine a slip deflection angle based on the odometer position and the actual position, and determine that a slip event occurs when the slip deflection angle is greater than a preset angle;
[0135] determining the occurrence of a skid event according to the received skid prompt instruction;
[0136] The occurrence of skid is determined based on the preset route and the actual route.
[0137] In one embodiment, the determining module 10 is further configured to determine an area of a preset area including a slipping position in the cleaning area as a slipping area;
[0138] determining the remaining areas in the cleaning area as slip areas;
[0139] Odometer data and actual position data are obtained, and a deflection direction and an offset distance where a slip occurs are determined based on the odometer data and the actual position data, and a slip area in the cleaning area is determined according to the deflection direction and the offset distance.
[0140] In one embodiment, the adjustment module 20 is further configured to determine whether the sliding direction is consistent with a preset cleaning direction of the cleaning area;
[0141] If yes, continue cleaning according to the preset cleaning strategy, and record the area of each slip, and repeat cleaning the area after the cleaning area is completed;
[0142] If not, the cleaning coverage interval in the preset cleaning direction in the preset cleaning strategy is increased, and the areas missed in each cleaning are recorded. After the cleaning area is cleaned, the area is cleaned again.
[0143] In one embodiment, the adjustment module 20 is also used to re-determine the cleaning starting point and cleaning direction of the area, and to cover and clean the area according to a cleaning speed, cleaning force, number of cleanings, and / or the angle of the long and short sides of the bow that are different from the preset cleaning strategy.
[0144] In one embodiment, the adjustment module 20 is further configured to determine the slip deflection angle and the forward displacement according to the odometer data and the actual position data;
[0145] determining an offset distance according to the forward displacement and the offset angle;
[0146] The cleaning coverage interval in the preset cleaning direction in the preset cleaning strategy is increased according to the offset distance.
[0147] In one embodiment, the adjustment module 20 is further configured to determine a slip position and an offset distance;
[0148] Obtaining a navigation target point based on the skidding position and the offset distance;
[0149] replanning the navigation path according to the skidding position and the navigation target point;
[0150] The missed scanning areas are determined according to the navigation path.
[0151] In one embodiment, the adjustment module 20 is further configured to obtain a forward route of the odometer data and a forward route of the actual position data;
[0152] When the forward route of the odometer data and the forward route of the actual position data coincide with each other, the sweep coverage interval is restored.
[0153] Since the present device adopts all the technical solutions of all the above embodiments, it has at least all the beneficial effects brought about by the technical solutions of the above embodiments, which will not be described one by one here.
[0154] In addition, an embodiment of the present invention further provides a storage medium, on which a device control program is stored. When the device control program is executed by a processor, the steps of the device control method described above are implemented.
[0155] Since the storage medium adopts all the technical solutions of all the above embodiments, it has at least all the beneficial effects brought by the technical solutions of the above embodiments, which will not be described one by one here.
[0156] It should be noted that the workflow described above is merely illustrative and does not limit the scope of protection of the present invention. In practical applications, technicians in this field can select part or all of it according to actual needs to achieve the purpose of the embodiment scheme, and no limitation is made here.
[0157] In addition, for technical details not fully described in this embodiment, please refer to the device control method provided in any embodiment of the present invention, and will not be repeated here.
[0158] In addition, it should be noted that, in this document, the terms "comprises," "includes," or any other variations thereof are intended to encompass non-exclusive inclusion, such that a process, method, article, or system comprising a series of elements includes not only those elements but also other elements not explicitly listed, or elements inherent to such process, method, article, or system. In the absence of further limitations, an element defined by the phrase "comprising a ..." does not exclude the presence of other identical elements in the process, method, article, or system comprising the element.
[0159] The serial numbers of the above embodiments of the present invention are for description only and do not represent the advantages or disadvantages of the embodiments.
[0160] Through the description of the above implementation methods, those skilled in the art can clearly understand that the above-mentioned embodiment methods can be implemented by means of software plus the necessary general hardware platform, and of course can also be implemented by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of the present invention is essentially or the part that contributes to the existing technology can be embodied in the form of a software product, which is stored in a storage medium (such as read-only memory (ROM) / RAM, magnetic disk, optical disk), and includes a number of instructions for enabling a terminal mobile robot (which can be a mobile phone, computer, server, or network mobile robot, etc.) to execute the methods described in each embodiment of the present invention.
[0161] The above are only preferred embodiments of the present invention and are not intended to limit the patent scope of the present invention. Any equivalent structure or equivalent process transformation made using the contents of the present invention description and drawings, or directly or indirectly applied in other related technical fields, are also included in the patent protection scope of the present invention.
Claims
1. A device control method, characterized in that: The device control method includes: Determining that the vehicle is in a slipping state while cleaning a cleaning area, wherein the cleaning area is an area to be cleaned according to a preset cleaning strategy; determining a slippery area in the cleaning area; Adjusting a cleaning strategy for the slipping area in the cleaning area to avoid slipping again; The adjusting of the cleaning strategy of the slipping area in the cleaning area to avoid slipping again includes: determining whether the sliding direction is consistent with a preset cleaning direction of the cleaning area; If so, continue cleaning according to the preset cleaning strategy, and record the area of each slip. After the cleaning area is completed, repeat cleaning the area.
2. The device control method according to claim 1, wherein: Determining that the cleaning area is in a slipping state includes: It is determined that a slip event occurs in the cleaning area, and when the slip event satisfies one or more of the following conditions, it is determined that the cleaning area is in a slip state: The duration of the slip event is greater than a preset time length; The number of times the slip event occurs is greater than a preset number; The slip distance of the slip event is greater than a preset distance.
3. The device control method according to claim 2, wherein: Determining that a slip event occurs in the cleaning area includes one of the following methods: determining a skidding deflection angle according to the odometer position and the actual position, and determining that a skidding event occurs when the skidding deflection angle is greater than a preset angle; determining the occurrence of a skid event according to the received skid prompt instruction; The occurrence of skid is determined based on the preset route and the actual route.
4. The device control method according to claim 1, wherein: Determining the slipping area in the cleaning area includes one of the following methods: determining an area of a preset area including a slipping position in the cleaning area as a slipping area; determining the remaining areas in the cleaning area as slip areas; Odometer data and actual position data are obtained, and a deflection direction and an offset distance where a slip occurs are determined based on the odometer data and the actual position data, and a slip area in the cleaning area is determined according to the deflection direction and the offset distance.
5. The device control method according to any one of claims 1 to 4, characterized in that: The adjusting the cleaning strategy of the slipping area in the cleaning area to avoid slipping again further includes: determining whether the sliding direction is consistent with a preset cleaning direction of the cleaning area; If not, the cleaning coverage interval in the preset cleaning direction in the preset cleaning strategy is increased, and the areas missed in each cleaning are recorded. After the cleaning area is cleaned, the area is cleaned again.
6. The device control method according to any one of claims 1 to 4, characterized in that: The repeatedly cleaning the area comprises: Re-determine the cleaning starting point and cleaning direction of the area, and cover and clean the area according to the cleaning speed, cleaning force, number of cleanings, and / or the angle of the long and short sides of the bow that are different from the preset cleaning strategy.
7. The device control method according to claim 5, wherein: Increasing the cleaning coverage distance in the preset cleaning direction in the preset cleaning strategy includes: Determine the skid deflection angle and forward displacement based on odometer data and actual position data; determining an offset distance according to the forward displacement and the offset angle; The cleaning coverage interval in the preset cleaning direction in the preset cleaning strategy is increased according to the offset distance.
8. The device control method according to claim 5, wherein: After increasing the cleaning coverage distance in the preset cleaning direction in the preset cleaning strategy, the method further includes: Determine the slip location and offset distance; Obtaining a navigation target point based on the skidding position and the offset distance; replanning the navigation path according to the skidding position and the navigation target point; The missed scanning areas are determined according to the navigation path.
9. The device control method according to claim 5, wherein: After increasing the cleaning coverage distance in the preset cleaning direction in the preset cleaning strategy, the method further includes: Obtain the forward route of the odometer data and the forward route of the actual position data; When the forward route of the odometer data and the forward route of the actual position data coincide with each other, the sweep coverage interval is restored.
10. A device control device, characterized in that: The equipment control device includes: a determination module, configured to determine that a cleaning area is in a slipping state when cleaning the area, wherein the cleaning area is an area to be cleaned according to a preset cleaning strategy; The determining module is further configured to determine a slipping area in the cleaning area; An adjustment module is used to adjust the cleaning strategy for the slipping area in the cleaning area to avoid slipping again; determine whether the slipping direction is consistent with the preset cleaning direction of the cleaning area; if so, continue cleaning according to the preset cleaning strategy, and record the area of each slip, and repeat cleaning the area after the cleaning area is completed.
11. A mobile robot, characterized in that: The mobile robot includes: a memory, a processor, and a device control program stored in the memory and executable on the processor, wherein the device control program is configured to implement the device control method according to any one of claims 1 to 9.
12. A storage medium, characterized in that: The storage medium stores a device control program, and when the device control program is executed by the processor, the device control method according to any one of claims 1 to 9 is implemented.
Citation Information
Patent Citations
Method for solving slipping problem of cleaning robot and cleaning robot
CN114343522A