Repositioning method and system and cleaning robot
By integrating virtual wall layers in the cleaning robot map and remotely interacting with user authorization, the problem of crossing virtual walls during the cleaning robot relocation process is solved, improving security and success rate.
Patent Information
- Application Number
- CN202311843506.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-12-28
- Publication Date
- 2025-07-01
AI Technical Summary
During the relocation process, cleaning robots are prone to crossing virtual walls, resulting in damage to items or scenes, affecting the safety of use.
The virtual wall layer of the saved map is fused into the cleaning robot's current maintenance map, generate a relocation map, and control the robot to reposition without crossing the virtual wall according to the relocation map. If it fails, the user will be requested to cross the virtual wall through remote communication interaction.
It effectively avoids the situation where the cleaning robot crosses the virtual wall during the relocation process, and improves the security of use and the success rate of relocation.
Smart Images

Figure CN120232408A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the technical field of smart home devices, and particularly to a repositioning method, system, and cleaning robot. Background Art
[0002] With the development of smart home device technology, cleaning robots have emerged. After a cleaning robot restarts from a dormant state, it usually needs to perform repositioning to determine its own position.
[0003] In traditional technologies, the cleaning robot is usually controlled to move to the repositioning position point for repositioning, and during the repositioning movement, the real-time sensor data is matched with the historical map information. If the match is successful, it is considered that the cleaning robot has reached the repositioning position point and the repositioning is successful.
[0004] However, there are usually some virtual walls set by users in the map to avoid damage to items and scenarios and improve the use safety of the cleaning robot. However, during the repositioning movement, the cleaning robot often crosses the virtual wall, causing damage to items or scenarios and affecting the use safety of the cleaning robot. Summary of the Invention
[0005] Based on this, in view of the above technical problems, it is necessary to provide a repositioning method, system, and cleaning robot that can improve the use safety of the cleaning robot during repositioning.
[0006] In a first aspect, this application provides a repositioning method. Applied to a cleaning robot, the method includes:
[0007] Fusing the virtual wall layer of the saved map into the current maintenance map of the cleaning robot to generate a repositioning map;
[0008] According to the repositioning map, controlling the cleaning robot to perform repositioning without crossing the virtual wall.
[0009] In one of the embodiments, after controlling the cleaning robot to perform repositioning without crossing the virtual wall according to the repositioning map, the method further includes:
[0010] If the relocalization fails without crossing the virtual wall, a relocalization request is sent to the control terminal of the cleaning robot, where the relocalization request is used to request controlling the cleaning robot to perform relocalization on the premise of being able to cross the virtual wall; receive the request response information fed back by the control terminal. If the request response information indicates that the cleaning robot can cross the virtual wall, control the cleaning robot to perform relocalization on the premise of being able to cross the virtual wall; if the request response information indicates that the cleaning robot cannot cross the virtual wall, re-control the cleaning robot to perform relocalization on the premise of not being able to cross the virtual wall according to the relocalization map.
[0011] In one embodiment, after sending the relocalization request to the control terminal of the cleaning robot, the method further includes:
[0012] If the request response information of the relocalization request from the control terminal is not received within a preset time period, control the cleaning robot to perform relocalization on the premise of being able to cross the virtual wall.
[0013] In one embodiment, the virtual wall integrated into the current maintenance map in the virtual wall layer is a virtual wall with the cumulative crossing times less than or equal to the first preset number of times.
[0014] In one embodiment, the method further includes:
[0015] If the relocalization of the cleaning robot is successful, determine the target virtual wall crossed by the cleaning robot during this relocalization according to the relocalization movement path of the cleaning robot in the relocalization map; update the cumulative crossing times corresponding to the target virtual wall.
[0016] In one embodiment, after updating the cumulative crossing times corresponding to the target virtual wall in the virtual wall layer corresponding to the target virtual wall, it further includes:
[0017] Search for the target cumulative crossing times greater than the second preset number of times among the cumulative crossing times of all virtual walls; if the search is successful, delete the virtual wall corresponding to the target cumulative crossing times in the virtual wall layer.
[0018] In one embodiment, after sending the relocalization request to the control terminal of the cleaning robot, the method further includes:
[0019] If the request response information fed back by the control terminal indicates that the cleaning robot cannot cross the virtual wall, reset the cumulative crossing times of all virtual walls.
[0020] In one embodiment, the triggering conditions for the cleaning robot to perform the relocalization process include at least one of the following:
[0021] The lower base station of the cleaning robot is detected;
[0022] A position mutation of the cleaning robot is detected;
[0023] The cleaning robot is detected to start from the sleep state.
[0024] In a second aspect, the present application provides a relocalization method. Applied to a control terminal, the method includes:
[0025] If a relocalization request sent by the cleaning robot is received, a relocalization request message is output, where the relocalization request is sent after the cleaning robot fails to relocalize according to a relocalization map without crossing a virtual wall, so as to request to control the cleaning robot to relocalize on the premise of being able to cross the virtual wall; the relocalization map is obtained by fusing the virtual wall layer of the saved map into the current maintenance map of the cleaning robot, and the relocalization request message is used to prompt the user to select whether to allow the cleaning robot to relocalize on the premise of being able to cross the virtual wall; according to the user feedback information for the relocalization request message, a request response message is sent to the cleaning robot, where the request response message is used to indicate that the cleaning robot can cross the virtual wall or cannot cross the virtual wall.
[0026] In a third aspect, the present application further provides a relocalization system. The system includes:
[0027] A cleaning robot, configured to fuse the virtual wall layer of the saved map into the current maintenance map to generate a relocalization map; relocalize according to the relocalization map without crossing the virtual wall; if the relocalization fails without crossing the virtual wall, send a relocalization request to the control terminal;
[0028] The control terminal is configured to, if a relocalization request sent by the cleaning robot is received, output a relocalization request message, where the relocalization request message is used to prompt the user to select whether to allow the cleaning robot to relocalize on the premise of being able to cross the virtual wall; according to the user feedback information for the relocalization request message, send a request response message to the cleaning robot;
[0029] The cleaning robot is further configured to receive the request response message fed back by the control terminal. If the request response message indicates that the cleaning robot can cross the virtual wall, relocalize on the premise of being able to cross the virtual wall; if the request response message indicates that the cleaning robot cannot cross the virtual wall, relocalize again without crossing the virtual wall according to the relocalization map.
[0030] Fourthly, the present application also provides a cleaning robot. The cleaning robot includes a body, a driving component, a cleaning component, a memory, and a processor. The memory stores a computer program, and when the processor executes the computer program, the following steps are implemented:
[0031] Fuse the virtual wall layer of the saved map into the current maintenance map of the cleaning robot to generate a relocalization map; control the cleaning robot to perform relocalization without crossing the virtual wall according to the relocalization map.
[0032] Fifthly, the present application also provides a control terminal. The control terminal includes a memory and a processor. The memory stores a computer program, and when the processor executes the computer program, the following steps are implemented:
[0033] If a relocalization request sent by the cleaning robot is received, output a relocalization request message, where the relocalization request is sent after the cleaning robot fails to perform relocalization without crossing the virtual wall according to the relocalization map, so as to request to control the cleaning robot to perform relocalization on the premise of being able to cross the virtual wall; the relocalization map is obtained by fusing the virtual wall layer of the saved map into the current maintenance map of the cleaning robot, and the relocalization request message is used to prompt the user to select whether to allow the cleaning robot to perform relocalization on the premise of being able to cross the virtual wall; according to the user feedback information for the relocalization request message, send a request response message to the cleaning robot, where the request response message is used to indicate that the cleaning robot can cross the virtual wall or cannot cross the virtual wall.
[0034] For the above relocalization method, system and cleaning robot, by fusing the virtual wall layer of all saved maps into the current maintenance map of the cleaning robot to generate a relocalization map, there will be all virtual walls set by users in the map used by the cleaning robot during relocalization. Thus, according to the relocalization map, control the cleaning robot to perform relocalization without crossing the virtual wall. The cleaning robot will move while avoiding the virtual wall during relocalization, which can prevent the situation that the cleaning robot crosses the virtual wall during relocalization. Therefore, the probability of the cleaning robot damaging items or the scene during relocalization can be reduced, and thus the use safety of the cleaning robot during relocalization can be improved. Description of the Drawings
[0035] Figure 1 It is a schematic flowchart of the relocalization method in an embodiment;
[0036] Figure 2 It is a schematic flowchart of relocalization by crossing the virtual wall in an embodiment;
[0037] Figure 3 Schematic diagram of the process for updating the cumulative crossing times of the virtual wall in an embodiment;
[0038] Figure 4 Schematic diagram of the process for the cleaning robot to perform two-stage relocalization in an embodiment
[0039] Figure 5 Block diagram of the structure of the relocalization system in an embodiment;
[0040] Figure 6 Internal structure diagram of the cleaning robot in an embodiment;
[0041] Figure 7 Internal structure diagram of the control terminal in an embodiment. Detailed implementation manners
[0042] In order to make the objectives, technical solutions and advantages of the present application clearer and more understandable, the present application will be further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application and are not used to limit the present application.
[0043] Currently, cleaning robots have gradually become one of the commonly used smart home devices. Cleaning robots can actively perform cleaning tasks in the working space. Therefore, cleaning robots need to integrate map navigation functions, positioning functions, and cleaning functions in order to ensure that the cleaning robots can perform cleaning tasks stably and accurately in the working space. Before performing a cleaning task, a cleaning robot usually needs to first determine its own position in the map, that is, perform relocalization, in order to achieve accurate navigation when performing the cleaning task.
[0044] In one embodiment, as Figure 1 shown, a relocalization method is provided. In this embodiment, this method is illustrated by taking its application to a cleaning robot as an example. In this embodiment, the method includes the following steps:
[0045] Step 202, fusing the virtual wall layer of the saved map into the currently maintained map of the cleaning robot to generate a relocalization map.
[0046] Among them, multiple maps are usually saved in the cleaning robot. These maps can be area maps of different connected areas in the working space of the cleaning robot. For example, if the working space of the cleaning robot is Building A, and this Building A has Area a and Area b on different floors, and Area a and Area b are not directly connected, so there will be a map of Area a and a map of Area b in the cleaning robot; these maps can also be maps used by the cleaning robot in different cleaning modes. For example, the maps used by the cleaning robot in the mopping mode and the dust removal mode are usually different.
[0047] As an example, the saved map can be all the historical saved maps of the cleaning robot, or the maps saved within a certain period in the past, that is, partial historical saved maps.
[0048] As an example, maps are usually divided into different layers according to different needs, such as an obstacle area layer, a historical track layer, a virtual wall layer, or a no-drag area layer, etc.
[0049] As an example, step 202 includes: if the cleaning robot loses its current position information, extract the virtual wall layer of the saved map and fuse these virtual wall layers into the current maintained map of the cleaning robot to obtain a relocalization map.
[0050] As an example, according to different needs, the cleaning robot usually divides the map into different layers, such as a virtual wall layer, an obstacle layer, and a historical track layer, etc. Among them, the virtual wall layer is the layer that records the positions where the user sets to prohibit the cleaning robot from crossing, the obstacle layer is the layer that records the obstacles recognized by the cleaning robot, and the historical track layer is the layer that records the historical movement tracks of the cleaning robot.
[0051] As an example, there are various reasons for the cleaning robot to lose its current position information. For example, when the cleaning robot just starts from the sleep state, at this time the cleaning robot doesn't know whether it has been moved during the sleep state, and at this time it is also considered that the cleaning robot has lost its current position information and needs to perform relocalization; another example is that when the cleaning robot is picked up or after a large impact, the position of the cleaning robot changes suddenly, and at this time it is considered that the cleaning robot has lost its current position information and needs to perform relocalization; another example is that when the cleaning robot just gets off the base station, at this time the cleaning robot doesn't know its current position, and it can also be considered that the cleaning robot has lost its current position information.
[0052] In one embodiment, when the cleaning robot just gets off the base station, the cleaning robot needs to perform relocalization.
[0053] In one embodiment, when the position of the cleaning robot changes suddenly, the cleaning robot needs to perform relocalization.
[0054] In one embodiment, when the cleaning robot just starts from the sleep state, the cleaning robot needs to perform relocalization.
[0055] Step 204, according to the relocalization map, control the cleaning robot to perform relocalization on the premise of not crossing the virtual wall.
[0056] Among them, relocalization refers to the process by which a cleaning robot usually re-determines its own position in the environment. Specifically, it can be that the cleaning robot collects environmental information through sensors during movement, and matches the collected environmental information with the historical map information. If the match is successful, the pose of the cleaning robot in the historical map can be determined, and thus, based on the pose of the cleaning robot in the historical map, the relocalization is successful at this time. Among them, the sensors can be cameras, acoustic sensors, infrared sensors, etc.
[0057] As an example, step 204 includes: controlling the cleaning robot to move without crossing the virtual wall according to the relocalization map, and collecting environmental information through sensors during the movement; relocalizing the cleaning robot by matching the collected environmental information with the historical map information.
[0058] In the above relocalization method, by fusing the virtual wall layer of the saved map into the current maintenance map of the cleaning robot, a relocalization map is generated. In this way, all the virtual walls set by users will exist in the map used by the cleaning robot during relocalization. Thus, according to the relocalization map, the cleaning robot is controlled to perform relocalization without crossing the virtual wall. The cleaning robot will move while avoiding the virtual wall during relocalization, which can prevent the situation where the cleaning robot crosses the virtual wall during relocalization. Therefore, the probability of damage to items or scenes caused by the cleaning robot during relocalization can be reduced, and thus the use safety of the cleaning robot during relocalization can be improved.
[0059] In one embodiment, as Figure 2 shown, after controlling the cleaning robot to perform relocalization without crossing the virtual wall according to the relocalization map, the relocalization method further includes:
[0060] Step 302, if the relocalization fails without crossing the virtual wall, a relocalization request is sent to the control terminal of the cleaning robot, where the relocalization request is used to request to control the cleaning robot to perform relocalization on the premise of being able to cross the virtual wall.
[0061] Among them, since the virtual wall limits the relocalization movement range of the cleaning robot, the environmental information collected by the cleaning robot through sensors is limited, and it may happen that all the collected environmental information cannot be successfully matched with the historical map information. At this time, it is considered that the relocalization of the cleaning robot fails without crossing the virtual wall.
[0062] As an example, step 302 includes: if the relocalization of the cleaning robot fails without crossing the virtual wall, a relocalization request is sent to the control terminal of the cleaning robot, where the relocalization request is used to request the control terminal to control the cleaning robot to perform relocalization on the premise of being able to cross the virtual wall.
[0063] As an example, after receiving the relocation request, the control terminal may display the relocation request information on a preset display interface. The relocation request information is used to prompt the user to select whether to allow the cleaning robot to cross the virtual wall for relocation. Among them, the relocation request information may be a pop-up window message.
[0064] As an example, after receiving the relocation request, the control terminal may announce the relocation request information through voice broadcast. The relocation request information is used to prompt the user to select whether to allow the cleaning robot to cross the virtual wall for relocation.
[0065] Furthermore, the user may input confirmation information on the control terminal according to the relocation request information. Then, the cleaning robot generates a corresponding request response information according to the confirmation information input by the user. Among them, the confirmation information indicates whether the user allows or prohibits the cleaning robot from crossing the virtual wall.
[0066] As an example, the user may also perform a click operation on the control terminal according to the relocation request information. Among them, according to the click operation, the cleaning robot can determine whether the user allows or prohibits the cleaning robot from crossing the virtual wall. Thus, the cleaning robot can generate a corresponding request response information according to the click operation of the user.
[0067] Step 304: Receive the request response information fed back by the control terminal. If the request response information indicates that the cleaning robot can cross the virtual wall, control the cleaning robot to perform relocation on the premise that it can cross the virtual wall.
[0068] Step 306: If the request response information indicates that the cleaning robot cannot cross the virtual wall, re-control the cleaning robot to perform relocation on the premise that it cannot cross the virtual wall according to the relocation map.
[0069] Among them, the request response information is used to indicate that the user selects to allow or prohibit the cleaning robot from crossing the virtual wall.
[0070] As an example, steps 304 to 306 include: If the request response information indicates that the cleaning robot can cross the virtual wall, control the cleaning robot to move on the premise that it can cross the virtual wall, and collect environmental information through sensors during the movement; perform relocation on the cleaning robot by matching the collected environmental information with the historical map information; if the request response information indicates that the cleaning robot cannot cross the virtual wall, re-control the cleaning robot to move on the premise that it cannot cross the virtual wall according to the relocation map, and collect environmental information through sensors during the movement; perform relocation on the cleaning robot by matching the collected environmental information with the historical map information.
[0071] It should be noted that when the request response information indicates that the cleaning robot can cross the virtual wall, the cleaning robot can be controlled to move on the premise that it can cross the virtual wall according to the relocation map; or the cleaning robot can be controlled to move on the premise that it can cross the virtual wall according to other saved maps; at this time, since the cleaning robot does not need to consider the virtual wall when moving, there is no restriction on the type of navigation map.
[0072] In addition, when the request response information indicates that the cleaning robot cannot cross the virtual wall, the cleaning robot will usually continue to try to reposition when the virtual wall cannot be crossed.
[0073] As an example, if the cleaning robot successfully relocates without crossing the virtual wall, the cleaning robot can be controlled to perform a preset cleaning task.
[0074] It should be noted that, compared with the repositioning process of the cleaning robot in the prior art, the repositioning process of the cleaning robot in this embodiment is different in that the cleaning robot will interact with the control terminal, and the repositioning request information will be displayed on the control terminal.
[0075] In addition, the cleaning robot first relocates according to the relocation map without crossing the virtual wall, that is, the cleaning robot relocates within the limit range of the virtual wall. At this time, the movement range of the cleaning robot during the relocation process is limited to the virtual wall, and the movement range is relatively small. Furthermore, after the control terminal feeds back the request response information indicating that the virtual wall can be crossed, the cleaning robot may be relocated outside the limit range of the virtual wall. At this time, the movement range is relatively large. Therefore, compared with the process of directly relocating without considering the virtual wall in the prior art, the movement range of the cleaning robot during relocation in this embodiment is different.
[0076] In this embodiment, on the basis of considering the virtual wall for repositioning, further considering that when the cleaning robot fails to locate without crossing the virtual wall, the control terminal is requested to cross the virtual wall for repositioning through remote communication interaction. In this way, when there is a risk that the cleaning robot crosses the virtual wall, the user can use the control terminal to disagree with the cleaning robot to cross the virtual wall for repositioning, thereby avoiding damage to objects or the environment caused by the cleaning robot during repositioning, and improving the safety of the cleaning robot during repositioning. When there is no risk that the cleaning robot crosses the virtual wall, the user can use the control terminal to agree that the cleaning robot can cross the virtual wall for repositioning, thereby ensuring the repositioning success rate of the cleaning robot. In this way, a simple form of human-computer interaction can be used to ensure both the safety of use and the success rate of repositioning of the cleaning robot during repositioning.
[0077] It should be noted that when the cleaning robot sends a relocalization request to the control terminal, if the control terminal does not respond to the relocalization request, the cleaning robot will continuously perform relocalization without crossing the virtual wall or standby in place, which will cause the cleaning robot to fail to relocalize successfully for a long time and affect the relocalization efficiency of the cleaning robot.
[0078] In one embodiment, after sending a relocalization request to the control terminal of the cleaning robot, the method further includes:
[0079] If the request response information for the relocalization request is not received within a preset time period, control the cleaning robot to perform relocalization on the premise that the virtual wall can be crossed.
[0080] Specifically, continuously monitor within the preset time period whether the control terminal feeds back the request response information corresponding to the relocalization request. If not, control the cleaning robot to move on the premise that the virtual wall can be crossed, and collect environmental information through sensors during the movement; perform relocalization on the cleaning robot by matching the collected environmental information with the historical map information.
[0081] In the above embodiment, after the cleaning robot sends a relocalization request to the control terminal, it will continuously monitor within the preset time period whether the control terminal feeds back the request response information. If the cleaning robot does not feed back the request response information within the preset time period, it will directly control the cleaning robot to perform relocalization, giving priority to ensuring that the cleaning robot can relocalize successfully and improving the relocalization efficiency of the cleaning robot.
[0082] As an example, if the request response information indicates that the cleaning robot cannot cross the virtual wall, the cleaning robot will retry to perform relocalization without crossing the virtual wall. If the relocalization still fails, the cleaning robot will feed back the relocalization failure information to the control terminal.
[0083] As an example, if the cleaning robot receives the request response information indicating that the virtual wall cannot be crossed, it will feed back the relocalization failure information to the control terminal.
[0084] In one embodiment, the virtual wall integrated into the current maintenance map in the virtual wall layer is a virtual wall with the cumulative crossing times less than or equal to the first preset number of times.
[0085] Wherein, the cumulative crossing times is used to represent the cumulative number of times the virtual wall is crossed during previous relocalization processes. Each time the virtual wall is crossed during a relocalization process (i.e., the cleaning robot crosses the virtual wall for relocalization movement), the corresponding cumulative crossing times of the virtual wall is incremented by 1; the higher the cumulative crossing times of the virtual wall, the higher the safety of the cleaning robot crossing the virtual wall is considered.
[0086] As an example, fusing the virtual wall layer of the saved map into the current maintenance map of the cleaning robot to generate a relocalization map, including:
[0087] Fusing the virtual wall layer of the saved map into the current maintenance map of the cleaning robot; determining the cumulative crossing times corresponding to all virtual walls in the current maintenance map, and deleting the virtual walls with cumulative crossing times greater than the first preset number in the current maintenance map to obtain the relocalization map.
[0088] As an example, fusing the virtual wall layer of the saved map into the current maintenance map of the cleaning robot to generate a relocalization map, including:
[0089] Determining the cumulative crossing times of all virtual walls in the virtual wall layer of the saved map, and deleting the virtual walls with cumulative crossing times greater than the first preset number in the virtual wall layer of the saved map; fusing the virtual wall layer of the saved map after deleting the virtual walls into the current maintenance map of the cleaning robot to obtain the relocalization map.
[0090] In the above embodiments, only some virtual walls with lower safety after crossing can be retained in the relocalization map, which can reduce the number of virtual walls in the relocalization map, improve the size of the spatial area where the cleaning robot can perform relocalization movement without crossing virtual walls, and thus improve the success rate of relocalization of the cleaning robot without crossing virtual walls.
[0091] In one embodiment, as Figure 3 shown, the relocalization method further includes:
[0092] Step 402, if the cleaning robot relocalizes successfully, determining the target virtual wall crossed by the cleaning robot during this relocalization according to the relocalization movement path of the cleaning robot in the relocalization map.
[0093] Among them, if the cleaning robot crosses a virtual wall during the relocalization process, it means that the cleaning robot crosses the virtual wall for relocalization this time.
[0094] As an example, step 402 includes: if the cleaning robot relocalizes successfully, obtaining the relocalization movement path of the cleaning robot in the relocalization map and the virtual wall position information of all virtual walls in the relocalization map; positioning the target virtual wall crossed by the cleaning robot during this relocalization among all virtual walls according to the relocalization movement path and the virtual wall position information.
[0095] Step 404, updating the cumulative crossing times corresponding to the target virtual wall.
[0096] As an example, the cumulative crossing count corresponding to the target virtual wall can be increased. For example, the cumulative crossing count can be incremented by 1.
[0097] As an example, the cumulative crossing count can also be used to represent the number of times the cleaning robot has crossed the virtual wall. Step 404 includes:
[0098] Based on the relocalization movement path and the virtual wall position information of the target virtual wall, determine the number of times the cleaning robot has crossed the target virtual wall; based on the number of crossings, update the cumulative crossing count. For example, the number of crossings can be directly added to the cumulative crossing count. Among them, the higher the number of times the cleaning robot has safely crossed the virtual wall, the lower the risk of the cleaning robot crossing the virtual wall.
[0099] In the above embodiments, after the cleaning robot has successfully relocalized, the target virtual walls crossed by the cleaning robot during this relocalization process can be determined first according to the relocalization movement path, and then the cumulative crossing counts of these target virtual walls can be updated. In this way, by continuously maintaining and updating the cumulative crossing count corresponding to each virtual wall during the relocalization process, the cleaning robot can automatically learn which virtual walls are safe to cross and which are not. This provides a decision-making basis for selecting which virtual walls to add to the relocalization map during the next relocalization.
[0100] In one embodiment, after updating the cumulative crossing count corresponding to the target virtual wall in the virtual wall layer corresponding to the target virtual wall, it further includes:
[0101] Search for the target cumulative crossing count greater than the second preset count among the cumulative crossing counts of all virtual walls; if the search is successful, delete the virtual wall corresponding to the target cumulative crossing count in the virtual wall layer.
[0102] Among them, for a virtual wall, if the cleaning robot has crossed the virtual wall every time it relocalizes in the past, it means that the cleaning robot has basically no risk of crossing the virtual wall, and the virtual wall is basically ineffective (i.e., basically useless). At this time, the virtual wall can be deleted in the virtual wall layer to improve the simplicity of the virtual wall layer.
[0103] Specifically, search for the target cumulative crossing count greater than the second preset count among the cumulative crossing counts of all virtual walls; if the search is successful, it means that for the virtual wall corresponding to the target cumulative crossing count, the cleaning robot has basically no risk of crossing the virtual wall, and the virtual wall is basically ineffective. Thus, directly delete the virtual wall corresponding to the target cumulative crossing count in the virtual wall layer. This can achieve real-time update of the virtual wall layer for all saved maps, automatically detect and delete ineffective virtual walls in all virtual wall layers, and ensure the simplicity of the virtual wall layer.
[0104] As an example, the second preset number of times can be set to be greater than the first preset number of times. For example, the first preset number of times can be set to 10 times, and the second preset number of times can be set to 30 times. Or, the second preset number of times can be set to a preset multiple of the first preset number of times, etc., where the preset multiple is greater than 1.
[0105] In one embodiment, the relocating method further includes:
[0106] If the request response information fed back by the control terminal indicates that the cleaning robot cannot cross the virtual wall, reset the cumulative crossing times of all virtual walls.
[0107] Among them, if the cleaning robot receives the request response information indicating that the cleaning robot cannot cross the virtual wall, it means that it is possible that the user has temporarily adjusted the environmental layout near the virtual wall, and the safety level of the cleaning robot crossing each virtual wall may have changed. There is a greater risk for the cleaning robot to cross the virtual wall during the current time period. In order to prevent the situation of deleting the virtual wall with a lower safety level in the relocating map or deleting the virtual wall with a lower safety level in the virtual wall layer according to the cumulative crossing times, once the request failure information fed back by the control terminal is received, directly reset the cumulative crossing times of all virtual walls, which can improve the use safety of the cleaning robot during relocating.
[0108] In a complete embodiment, as Figure 4 shown, if the cleaning robot gets off the base station, the cleaning robot queries whether there is a virtual wall layer. If there is, fuse the virtual wall layer of the saved map into the current maintenance map of the cleaning robot to obtain a relocating map; according to the relocating map, control the cleaning robot to perform relocating without crossing the virtual wall (the first-stage relocating, with virtual wall restrictions); if the relocating is successful without crossing the virtual wall, determine that the relocating process is completed; if the relocating fails without crossing the virtual wall, send a relocating request to the control terminal of the cleaning robot, where the relocating request is used to request to control the cleaning robot to perform relocating on the premise of being able to cross the virtual wall; receive the request response information fed back by the control terminal. If the request response information indicates that the cleaning robot cannot cross the virtual wall, control the cleaning robot to perform relocating on the premise of not being able to cross the virtual wall (the second-stage relocating, without virtual wall restrictions). If the relocating is successful on the premise of crossing the virtual wall, determine that the relocating process is completed. If the relocating fails on the premise of crossing the virtual wall, the cleaning robot outputs a prompt message indicating that the relocating fails.
[0109] In the above embodiments, the cleaning robot realizes a two-stage relocalization process. The cleaning robot will preferentially choose to perform relocalization within the virtual wall limit, which can avoid the situation where the cleaning robot crosses the virtual wall during relocalization, improve the safety of the cleaning robot during relocalization, and then, when the relocalization fails within the virtual wall limit, it will cross the virtual wall to perform relocalization, thereby improving the success rate of the cleaning robot's relocalization.
[0110] In one embodiment, a relocalization method is provided. In this embodiment, an example is given where the method is applied to a control terminal. In this embodiment, the method includes the following steps:
[0111] If a relocalization request sent by the cleaning robot is received, then relocalization request information is output. Among them, the relocalization request is sent after the cleaning robot fails to perform relocalization according to the relocalization map without crossing the virtual wall, so as to request to control the cleaning robot to perform relocalization on the premise of being able to cross the virtual wall; the relocalization map is obtained by fusing the virtual wall layer of the saved map into the current maintenance map of the cleaning robot, and the relocalization request information is used to prompt the user to select whether to allow the cleaning robot to perform relocalization on the premise of being able to cross the virtual wall; according to the user feedback information for the relocalization request information, a request response information is sent to the cleaning robot, where the request response information is used to indicate that the cleaning robot can cross the virtual wall or cannot cross the virtual wall.
[0112] Among them, after the cleaning robot loses its current position information, it extracts the virtual wall layer of the saved map and fuses these virtual wall layers into the current maintenance map of the cleaning robot to form a relocalization map. Then the cleaning robot can perform relocalization according to the relocalization map without crossing the virtual wall. If the relocalization fails, it will send a relocalization request to the control terminal.
[0113] Specifically, if a relocalization request sent by the cleaning robot is received, the relocalization request information is displayed on the preset display interface of the control terminal. Among them, the relocalization request is sent after the cleaning robot fails to perform relocalization according to the relocalization map without crossing the virtual wall, so as to request to control the cleaning robot to perform relocalization on the premise of being able to cross the virtual wall; the user feedback information for the relocalization request information is received. If the user feedback information indicates that the cleaning robot is allowed to cross the virtual wall for relocalization, a request response information indicating that the virtual wall can be crossed is fed back to the cleaning robot; if the user feedback information indicates that the cleaning robot is not allowed to cross the virtual wall for relocalization, a request response information indicating that the virtual wall cannot be crossed is fed back to the cleaning robot.
[0114] Further, the user can input confirmation information on the control terminal according to the relocalization request information, and then the cleaning robot generates corresponding request response information according to the confirmation information input by the user, where the confirmation information indicates that the user allows or prohibits the cleaning robot from crossing the virtual wall.
[0115] As an example, the user can also perform a click operation on the control terminal according to the relocalization request information. The cleaning robot can determine whether the user allows or prohibits the cleaning robot from crossing the virtual wall according to the click operation, so that the cleaning robot can generate corresponding request response information according to the user's click operation.
[0116] As an example, if a relocalization request sent by the cleaning robot is received, the relocalization request information can also be broadcast in an audio playback manner through the control terminal.
[0117] As an example, the control terminal can be a mobile terminal such as a mobile phone or a smart bracelet, etc.
[0118] In the above relocalization method, after the relocalization fails on the premise that the cleaning robot does not cross the virtual wall, a request to cross the virtual wall for relocalization is sent to the control terminal through remote communication interaction. In this way, when there is a risk of the cleaning robot crossing the virtual wall, the user can disagree through the control terminal that the cleaning robot can cross the virtual wall for relocalization, avoiding damage to items or the environment when the cleaning robot relocalizes, and improving the use safety of the cleaning robot during relocalization. When there is no risk of the cleaning robot crossing the virtual wall, the user can agree through the control terminal that the cleaning robot can cross the virtual wall for relocalization, ensuring the relocalization success rate of the cleaning robot. In this way, through a simple human-machine interaction form, both the use safety and the relocalization success rate of the cleaning robot during relocalization can be taken into account.
[0119] It should be understood that although the steps in the flowcharts involved in the above-described embodiments are shown in sequence according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless there is a clear indication in this article, the execution of these steps has no strict order limit, and these steps can be executed in other orders. Moreover, at least a part of the steps in the flowcharts involved in the above-described embodiments may include multiple steps or multiple stages. These steps or stages are not necessarily executed at the same moment, but can be executed at different moments. The execution order of these steps or stages is not necessarily sequential, but can be executed alternately or in turn with at least a part of other steps or steps or stages in other steps.
[0120] Based on the same inventive concept, an embodiment of the present application further provides a relocating system for implementing the above-mentioned relocating method. The solution provided by this device for solving problems is similar to the solution described in the above method. Therefore, the specific limitations in one or more embodiments of the relocating system provided below can refer to the limitations on the relocating method in the foregoing, and will not be elaborated herein.
[0121] In one embodiment, as Figure 5 shown, a relocating system is provided, including: a cleaning robot 502 and a control terminal 504, where:
[0122] The cleaning robot is configured to fuse the virtual wall layer of the saved map into the currently maintained map to generate a relocating map; perform relocating without crossing the virtual wall according to the relocating map; if the relocating fails without crossing the virtual wall, send a relocating request to the control terminal.
[0123] The control terminal is configured to, if receiving the relocating request sent by the cleaning robot, output a relocating request message, where the relocating request message is used to prompt the user to select whether to allow the cleaning robot to perform relocating on the premise of being able to cross the virtual wall; send a request response message to the cleaning robot according to the user feedback information for the relocating request message.
[0124] The cleaning robot is further configured to receive the request response message fed back by the control terminal. If the request response message indicates that the cleaning robot can cross the virtual wall, perform relocating on the premise of being able to cross the virtual wall; if the request response message indicates that the cleaning robot cannot cross the virtual wall, re-perform relocating without crossing the virtual wall according to the relocating map.
[0125] In one embodiment, the cleaning robot is further configured to:
[0126] If the request response message for the relocating request is not received from the control terminal within a preset time period, control the cleaning robot to perform relocating on the premise of being able to cross the virtual wall.
[0127] In one embodiment, the virtual wall fused into the currently maintained map in the virtual wall layer is a virtual wall with the cumulative crossing times less than or equal to a first preset number of times.
[0128] In one embodiment, the cleaning robot is further configured to:
[0129] If the relocalization of the cleaning robot is successful, determine the target virtual wall crossed by the cleaning robot during this relocalization according to the relocalization movement path of the cleaning robot in the relocalization map; update the cumulative crossing times corresponding to the target virtual wall.
[0130] In one embodiment, the cleaning robot is further configured to:
[0131] Search for a target cumulative crossing time greater than a second preset time among the cumulative crossing times of all the virtual walls; if the search is successful, delete the virtual wall corresponding to the target cumulative crossing time in the virtual wall layer.
[0132] In one embodiment, the cleaning robot is further configured to:
[0133] If the request response information feedback by the control terminal indicates that the cleaning robot cannot cross the virtual wall, reset the cumulative crossing times of all the virtual walls.
[0134] In one embodiment, the triggering conditions for the cleaning robot to perform the relocalization process include at least one of the following:
[0135] Detecting that the cleaning robot gets off the base station;
[0136] Detecting that the cleaning robot has a position mutation;
[0137] Detecting that the cleaning robot starts from the sleep state.
[0138] Each module in the above relocalization system can be implemented in whole or in part by software, hardware, and their combination. The above modules can be embedded in the processor of the cleaning robot or the control terminal in hardware form or be independent of it, or can be stored in the memory of the cleaning robot or the control terminal in software form, so that the processor can call and execute the operations corresponding to the above modules.
[0139] In one embodiment, a cleaning robot is provided, and its internal structure diagram can be as Figure 6As shown in the figure. The cleaning robot includes a body, a driving component, a cleaning component, a processor, a memory, a communication interface, a display screen, and an input device connected by a system bus. Among them, the driving component includes driving wheels, a driving motor, etc., and the cleaning component includes a mop, a dust removal module, etc. The processor of the cleaning robot is used to provide computing and control capabilities. The memory of the cleaning robot includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system and a computer program. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The communication interface of the cleaning robot is used to communicate with an external terminal in a wired or wireless manner. The wireless manner can be implemented through WIFI, a mobile cellular network, NFC (Near Field Communication), or other technologies. When the computer program is executed by the processor, it implements a repositioning method.
[0140] In one embodiment, a control terminal is provided, and its internal structure diagram can be as Figure 7 shown. The control terminal includes a processor, a memory, a communication interface, a display screen, and an input device connected by a system bus. Among them, the processor of the control terminal is used to provide computing and control capabilities. The memory of the control terminal includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system and a computer program. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The communication interface of the control terminal is used to communicate with an external terminal in a wired or wireless manner. The wireless manner can be implemented through WIFI, a mobile cellular network, NFC (Near Field Communication), or other technologies. When the computer program is executed by the processor, it implements a repositioning method.
[0141] Those skilled in the art can understand that Figure 6 and Figure 7 the structures shown in are only block diagrams of some structures related to the solution of the present application, and do not constitute a limitation on the cleaning robot and the control terminal to which the solution of the present application is applied. The specific cleaning robot and control terminal may include more or fewer components than those shown in the figure, or combine certain components, or have different component arrangements.
[0142] In one embodiment, a cleaning robot is provided, including a body, a driving component, a cleaning component, a memory, and a processor. A computer program is stored in the memory. When the processor executes the computer program, the following steps are implemented:
[0143] Fuse the virtual wall layer of the saved map into the current maintenance map of the cleaning robot to generate a repositioning map; according to the repositioning map, control the cleaning robot to perform repositioning without crossing the virtual wall.
[0144] In one embodiment, when the processor executes the computer program, the following steps are further implemented:
[0145] If the relocation fails without crossing the virtual wall, a relocation request is sent to the control terminal of the cleaning robot, where the relocation request is used to request to control the cleaning robot to perform relocation on the premise of being able to cross the virtual wall; receive the request response information fed back by the control terminal. If the request response information indicates that the cleaning robot can cross the virtual wall, control the cleaning robot to perform relocation on the premise of being able to cross the virtual wall; if the request response information indicates that the cleaning robot cannot cross the virtual wall, re-control the cleaning robot to perform relocation on the premise of not being able to cross the virtual wall according to the relocation map.
[0146] In one embodiment, when the processor executes the computer program, the following steps are further implemented:
[0147] If the request response information of the relocation request is not received from the control terminal within a preset time period, control the cleaning robot to perform relocation on the premise of being able to cross the virtual wall.
[0148] In one embodiment, the virtual wall integrated into the current maintenance map in the virtual wall layer is a virtual wall with the cumulative crossing times less than or equal to the first preset times.
[0149] In one embodiment, when the processor executes the computer program, the following steps are further implemented:
[0150] If the relocation of the cleaning robot is successful, determine the target virtual wall crossed by the cleaning robot during this relocation according to the relocation movement path of the cleaning robot in the relocation map; update the cumulative crossing times corresponding to the target virtual wall.
[0151] In one embodiment, when the processor executes the computer program, the following steps are further implemented:
[0152] Search for the target cumulative crossing times greater than the second preset times among the cumulative crossing times of all virtual walls; if the search is successful, delete the virtual wall corresponding to the target cumulative crossing times in the virtual wall layer.
[0153] In one embodiment, when the processor executes the computer program, the following steps are further implemented:
[0154] If the request response information fed back by the control terminal indicates that the cleaning robot cannot cross the virtual wall, reset the cumulative crossing times of all virtual walls.
[0155] In one embodiment, the triggering conditions for the cleaning robot to perform the relocation process include at least one of the following:
[0156] The lower base station of the cleaning robot is detected;
[0157] A position mutation of the cleaning robot is detected;
[0158] The cleaning robot is detected to start from the sleep state.
[0159] In one embodiment, a control terminal is provided, including a memory and a processor. A computer program is stored in the memory. When the processor executes the computer program, the following steps are implemented:
[0160] If a relocalization request sent by the cleaning robot is received, relocalization request information is output, where the relocalization request is sent after the cleaning robot fails to relocalize according to a relocalization map without crossing a virtual wall, so as to request to control the cleaning robot to relocalize on the premise of being able to cross the virtual wall; the relocalization map is obtained by fusing the virtual wall layer of the saved map into the current maintenance map of the cleaning robot, and the relocalization request information is used to prompt the user to select whether to allow the cleaning robot to relocalize on the premise of being able to cross the virtual wall; according to the user feedback information for the relocalization request information, a request response information is sent to the cleaning robot, where the request response information is used to indicate that the cleaning robot can cross the virtual wall or cannot cross the virtual wall.
[0161] Those of ordinary skill in the art can understand that all or part of the processes in the methods of the above embodiments can be completed by instructing relevant hardware through a computer program. The computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above methods. Among them, any reference to a memory, database, or other medium used in the embodiments provided in the present application can include at least one of non-volatile and volatile memories. Non-volatile memories can include read-only memory (ROM), magnetic tapes, floppy disks, flash memories, optical memories, high-density embedded non-volatile memories, resistive random access memories (ReRAM), magnetoresistive random access memories (MRAM), ferroelectric random access memories (FRAM), phase change memories (PCM), graphene memories, etc. Volatile memories can include random access memory (RAM) or external cache memories, etc. By way of illustration and not limitation, RAM can be in various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM), etc. The databases involved in the embodiments provided in the present application can include at least one of relational databases and non-relational databases. Non-relational databases can include distributed databases based on blockchain, etc., without limitation. The processors involved in the embodiments provided in the present application can be general-purpose processors, central processors, graphics processors, digital signal processors, programmable logics, data processing logics based on quantum computing, etc., without limitation.
[0162] The technical features of the above embodiments can be combined arbitrarily. For the sake of concise description, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, it should be considered as the scope described in this specification.
[0163] The above-described embodiments merely represent several implementation manners of the present application. The description thereof is relatively specific and detailed, but it should not be construed as a limitation on the patent scope of the present application. It should be noted that for those of ordinary skill in the art, without departing from the concept of the present application, several modifications and improvements can still be made, and these all belong to the protection scope of the present application. Therefore, the protection scope of the present application should be subject to the appended claims.
Claims
1. A relocation method, characterized in that, Applied to a cleaning robot, the method includes: Fusing the virtual wall layer of the saved map into the current maintenance map of the cleaning robot to generate a relocalization map; Controlling the cleaning robot to perform relocalization without crossing the virtual wall according to the relocalization map.
2. The method according to claim 1, wherein After controlling the cleaning robot to perform relocalization without crossing the virtual wall according to the relocalization map, the method further includes: If the relocalization fails without crossing the virtual wall, sending a relocalization request to the control terminal of the cleaning robot, where the relocalization request is used to request to control the cleaning robot to perform relocalization with the premise of being able to cross the virtual wall; Receiving the request response information fed back by the control terminal, if the request response information indicates that the cleaning robot can cross the virtual wall, controlling the cleaning robot to perform relocalization with the premise of being able to cross the virtual wall; If the request response information indicates that the cleaning robot cannot cross the virtual wall, re-controlling the cleaning robot to perform relocalization without crossing the virtual wall according to the relocalization map.
3. The method according to claim 2, wherein After sending the relocalization request to the control terminal of the cleaning robot, the method further includes: If the request response information for the relocalization request is not received within a preset time period, controlling the cleaning robot to perform relocalization with the premise of being able to cross the virtual wall.
4. The method according to claim 1, wherein The virtual wall fused into the current maintenance map in the virtual wall layer is a virtual wall with the cumulative crossing times less than or equal to the first preset number of times.
5. The method according to claim 4, characterized in that The method further includes: If the cleaning robot relocalizes successfully, determining the target virtual wall crossed by the cleaning robot during this relocalization according to the relocalization movement path of the cleaning robot in the relocalization map; Updating the cumulative crossing times corresponding to the target virtual wall.
6. The method according to claim 5, wherein After updating the cumulative crossing times corresponding to the target virtual wall in the virtual wall layer corresponding to the target virtual wall, it further includes: Searching for the target cumulative crossing times greater than the second preset number of times among the cumulative crossing times of all virtual walls; If the search is successful, deleting the virtual wall corresponding to the target cumulative crossing times in the virtual wall layer.
7. The method according to claim 4, characterized in that, The method further includes: If the request response information fed back by the control terminal indicates that the cleaning robot cannot cross the virtual wall, resetting the cumulative crossing times of all virtual walls.
8. The method according to claim 1, wherein The triggering conditions for the cleaning robot to perform the relocalization process include at least one of the following: Detecting that the cleaning robot docks at the base station; Detecting that the cleaning robot has a position mutation; Detecting that the cleaning robot starts from the sleep state.
9. A relocation method, characterized in that, Applied to a control terminal, the method includes: If a relocalization request sent by the cleaning robot is received, output relocalization request information, where the relocalization request is sent after the cleaning robot fails to relocalize according to the relocalization map without crossing the virtual wall, so as to request to control the cleaning robot to relocalize on the premise of being able to cross the virtual wall; the relocalization map is obtained by fusing the virtual wall layer of the saved map into the current maintenance map of the cleaning robot, and the relocalization request information is used to prompt the user to select whether to allow the cleaning robot to relocalize on the premise of being able to cross the virtual wall; According to the user feedback information regarding the relocalization request information, send a request response information to the cleaning robot, where the request response information is used to indicate that the cleaning robot can cross the virtual wall or cannot cross the virtual wall.
10. A relocating system, characterized in that, The relocalization system includes: A cleaning robot, configured to fuse the virtual wall layer of the saved map into the current maintenance map to generate a relocalization map; relocalize according to the relocalization map without crossing the virtual wall; if the relocalization fails without crossing the virtual wall, send a relocalization request to the control terminal; The control terminal is configured to, if receiving the relocalization request sent by the cleaning robot, output relocalization request information, where the relocalization request information is used to prompt the user to select whether to allow the cleaning robot to relocalize on the premise of being able to cross the virtual wall; according to the user feedback information regarding the relocalization request information, send a request response information to the cleaning robot; The cleaning robot is further configured to receive the request response information fed back by the control terminal, if the request response information indicates that the cleaning robot can cross the virtual wall, relocalize on the premise of being able to cross the virtual wall; if the request response information indicates that the cleaning robot cannot cross the virtual wall, relocalize again without crossing the virtual wall according to the relocalization map.
11. A cleaning robot, comprising a body, a driving component, a cleaning component, a memory, and a processor, wherein the memory stores a computer program, and is characterized in that, When the processor executes the computer program, the steps of the method according to any one of claims 1 to 9 are implemented.