The present disclosure relates to a self-propelled device and a method for controlling the self-propelled device, and in particular to a self-propelled device and a method for controlling the same that facilitates a user to control a divided area to be cleaned.
Currently, it is known that a self-propelled device can move by itself around objects, obstacles, walls and surfaces in surrounding environment. In some cases, it may be necessary to restrict the self-propelled device to move within a specific area. To do this, a barrier can be set to prevent the self-propelled device from moving out of the specific area. For example, a marker can be detected by the self-propelled device, and a marking device can be placed in the environment to restrict the self-propelled device from entering and moving out from the specific area.
In addition, Self-propelled devices can also be used to move throughout surfaces and perform operations, such as cleaning, performing a surface treatment, and/or painting. However, in the conventional technologies, from a user's point of view, the movement path of the self-propelled device may be unpredictable, and thus the user cannot control the area that needs to be cleaned. In addition, there is no function which allows a user to input cleaning information in the conventional technologies. U.S. Pat. No. 10,168,709B2 discloses a technology that allows users to control the order of cleaning areas. However, the cleaning sequence made by the user may not be the best cleaning path, resulting in too much time needed for cleaning. In addition, the planning of the movement path of the self-propelled device is more complicated.
An objective of the present disclosure is to provide a self-propelled device, which can receive cleaning information from a remote device and clean an area allowed by a virtual gateway specified in the cleaning information.
According to an embodiment of the present disclosure, the self-propelled device includes a moving means, a sensing module and a control module. The moving means is used for moving the self-propelled device on a surface. The sensing module is used for sensing information of the self-propelled device moving on the surface. The control module is electrically connected to the sensing module and the self-propelled device. The control module includes a processor and a memory. The memory is coupled to the processor, and the memory includes a non-transitory computer-readable storage medium storing a computer-readable program code, wherein the computer-readable program code is executed by the processor to perform an operation. The operation includes: obtaining map data including a plurality of virtual gateways, in which each of the virtual gateways corresponds to a divided area and includes an open status or a closed status, wherein the open status is configured to allow the self-propelled device to pass through, and the closed status is configured to prevent the self-propelled device from passing through; receiving cleaning information from a remote device, in which the cleaning information includes virtual gateway control information, and the virtual gateway control information includes information that the virtual gateways are in the open status or the closed status; searching for a first divided area, which meets a predetermined condition, from currently enterable divided areas according to the virtual gateway control information; and allowing the self-propelled device to enter the first divided area and move throughout the first divided area.
In an embodiment, the virtual gateway control information includes an open status of a first part of the virtual gateways, so that the self-propelled device enters the divided areas corresponding to the first part of the virtual gateways.
In an embodiment, in the operation, the step of moving throughout the first divided area includes: after moving throughout the first divided area, obtaining a pattern of the first divided area and updating the map data.
In an embodiment, the step of moving throughout the first divided area in the operation includes: allowing the virtual gateway of the first divided area to be in the closed status after the self-propelled device enters the first divided area; and after moving throughout the first divided area, obtaining a pattern of the first divided area and updating the map data. The operation further includes: allowing the virtual gateway of the first divided area to be in the open status after the self-propelled device moves throughout the first divided area, and allowing the virtual gateway of the first divided area to be in the closed status after the self-propelled device leaves the first divided area; searching for, according to the virtual gateway control information, a second divided area that meets the predetermined condition from the currently enterable divided areas excluding the first divided area; allowing the self-propelled device to enter the second divided area and allowing the virtual gateway of the second divided area to be in the closed status, so that the self-propelled device moves throughout the second divided area; and obtaining a pattern of the second divided area and updating the map data after the self-propelled device moves throughout the second divided area.
In an embodiment, the predetermined condition includes: among multiple paths between the self-propelled device and the currently enterable divided areas, a path between the self-propelled device and the first divided area is the shortest; or among multiple paths between the self-propelled device and the virtual gateways of the currently enterable divided areas, a path between the self-propelled device and the virtual gateway of the first divided area is the shortest.
In an embodiment, the step of obtaining the map data in the operation includes: generating the map data based on the information of the self-propelled device moving on the surface, in which the map data include the divided areas, and the divided areas correspond to multiple areas of the surface, respectively; and arranging the virtual gateways on the divided areas, respectively.
In an embodiment, the virtual gateway control information is formed by a user selecting at least a part of a plurality of divided area images of the divided areas of the map data displayed on the remote device.
In an embodiment, each of the at least a part of the divided area images further includes a virtual gateway image, and the virtual gateway control information is formed by the user selecting at least a part of the virtual gateway images displayed on the remote device.
In an embodiment, each of the at least a part of the divided area images further includes a virtual gateway image, and the virtual gateway control information is formed by the user selecting at least a part of the virtual gateway images displayed on the remote device.
In an embodiment, the cleaning information further includes a cleaning mode of at least one of the divided areas, and the cleaning mode is formed by selecting cleaning mode options of the at least one of the divided areas from a setting window displayed, on the remote device, after the user selects the divided area images of the map data displayed on the remote device.
According to an embodiment of the present disclosure, a method for controlling a self-propelled device is provided, wherein the self-propelled device comprises a moving means for moving the self-propelled device on a surface; a sensing module for sensing information of the self-propelled device moving on the surface; and a control module electrically connected to the sensing module and the self-propelled device. The method comprises: obtaining map data including a plurality of virtual gateways, in which each of the virtual gateways corresponds to a divided area and includes an open status or a closed status, wherein the open status is configured to allow the self-propelled device to pass through, and the closed status is configured to prevent the self-propelled device from passing through; receiving cleaning information from a remote device, in which the cleaning information includes virtual gateway control information, and the virtual gateway control information includes information that the virtual gateways are in the open status or the closed status; searching for a first divided area, which meets a predetermined condition, from currently enterable divided areas according to the virtual gateway control information; and allowing the self-propelled device to enter the first divided area and move throughout the first divided area.
In an embodiment, the step of moving throughout the first divided area further includes: allowing the virtual gateway of the first divided area to be in the closed status after the self-propelled device enters the first divided area; and obtaining a pattern of the first divided area and updating the map data after the self-propelled device moves throughout the first divided area. The operation method further includes: allowing the virtual gateway of the first divided area to be in the open status after the self-propelled device moves throughout the first divided area, and allowing the virtual gateway of the first divided area to be in the closed status after the self-propelled device leaves the first divided area; searching for, according to the virtual gateway control information, a second divided area that meets the predetermined condition from the currently enterable divided areas excluding the first divided area; allowing the self-propelled device to enter the second divided area and allowing the virtual gateway of the second divided area to be in the closed status, so that the self-propelled device moves throughout the second divided area; and obtaining a pattern of the second divided area and updating the map data after the self-propelled device moves throughout the second divided area.
In an embodiment, the predetermined condition includes: among multiple paths between the self-propelled device and the currently enterable divided areas, a path between the self-propelled device and the first divided area is the shortest; or among multiple paths between the self-propelled device and the virtual gateways of the currently enterable divided areas, a path between the self-propelled device and the virtual gateway of the first divided area is the shortest.
In an embodiment, the step of obtaining the map data includes: generating the map data based on the information of the self-propelled device 200 moving on the surface, in which the map data include the divided areas, and the divided areas correspond to multiple areas of the surface, respectively; and arranging the virtual gateways on the divided areas, respectively.
In an embodiment, before receiving the cleaning information from the remote device, the method further includes: generating the cleaning information by using the remote device.
In an embodiment, the step of generating the cleaning information by using the remote device includes: showing, by the remote device, a plurality of divided area images of the divided areas of the map data; and generating the virtual gateway control information according to a signal of at least a part of the divided area images displayed on the remote device and selected by a user.
In an embodiment, each of the at least a part of the divided area images further includes a virtual gateway image, and the virtual gateway control information is formed by the user selecting at least a part of the virtual gateway images displayed on the remote device.
In an embodiment, the cleaning information further includes a cleaning mode of at least one of the divided areas, and the cleaning mode is formed by selecting cleaning mode options of the at least one of the divided areas from a setting window displayed, on the remote device, after the user selects the divided area images of the map data displayed on the remote device.
In an embodiment, the step of generating the cleaning information by using the remote device includes: showing, by the remote device, a plurality of divided area images of the divided areas of the map data; generating the virtual gateway control information according to a signal of at least a part of the divided area images displayed on the remote device and selected by a user; and after the user selects the divided area images displayed on the remote device, showing a setting window by the remote device, and generating the cleaning information according to the cleaning mode of the divided areas selected by the user.
In summary, it is an object of an embodiment of the present disclosure to provide a self-propelled device, which can receive a cleaning information from remote device, and clean the area allowed by the virtual gateway specified in the cleaning information for the self-propelled device to pass through. In this way, it is convenient for a user to operate the area to be cleaned. In addition, in an embodiment, the remote device does not need to include complete map data, and only the data of multiple virtual gateways on the surface are required. Preferably, in an embodiment, after cleaning the divided area corresponding to the virtual gateway that can be passed through, the map data of the divided area can be obtained and then the map data can be updated to obtain complete map data.
The present disclosure will be explained in detail with reference to the accompanying drawings, in which the same reference numerals will be used to identify the same or similar elements under multiple viewpoints. It should be noted that the drawings should be viewed in the orientation direction of the label.
According to an embodiment of the present disclosure, a self-propelled device and a method for controlling a self-propelled device are provided. The self-propelled device can be a cleaning device or a cleaning robot.
The distance sensor 321 is electrically connected to the control module 340 for transmitting distance data to the control module 340. The control module 340 includes an encoder 341, a motor module 342, a gyroscope 343, a processor (CPU) 344 and a memory 345. The motor module 342 drives the moving means 223 to move the self-propelled device 200 back and forth or turn the self-propelled device 200 left and right. The motor module 342 is electrically connected to the encoder 341. A moving distance or a turning angle is obtained by the encoder 341 according to an operating signal of the motor module 342. The distance traveled by the self-propelled device 200 or the turning angle of the self-propelled device 200 can be calculated from the reading value of the encoder 341. The gyroscope 343 of the control module 340 is used for measuring the angular velocity (ω) of the self-propelled device 200, and the angular velocity (ω) is integrated to obtain the integral angle (iA) of the device. The encoder 341 performs inertial navigation according to at least one of the moving distance, the turning angle and the integral angle (iA), and zigzags back and forth for cleaning.
In an embodiment, the control module 340 can further include a communication device 346. The communication device 346 can be a wireless communication device or a wired communication device. Preferably, the communication device 346 is a wireless communication device for communicating with a remote device, receiving information from a remote device, or transmitting information to the remote device. The wireless communication can be short-distance point-to-point communication, wireless sensor network, wireless network and other technologies. The short-distance point-to-point communication can be, for example, radio frequency identification (RFID), transfer jet, wireless universal serial bus, dedicated short range communications (DSRC), EnOcean, and near field communication. The wireless sensor network can be, for example, ZigBee, EnOcean, wireless personal network, Bluetooth, ultra-wideband (UWB), etc. The wireless network can be, for example, a wireless local area network (WLAN, such as Wi-Fi and HiperLAN, etc.), global interoperability for microwave access (WiMAX), and the like.
In an embodiment, the rotary encoder 341 that detects the rotation speed of the wheels of the moving means 223 can be disposed on the motor module 342 of the moving means 223. The control module 340 may be further provided with a front or side proximity sensor (distance sensor 321) for detecting front or side obstacles. The signal sent from the sensor is, for example, an infrared beam. The infrared beam generates reflected light when it collides with an object. The control module 340 detects the reflected light and calculates the distance between the sensor and the obstacle. In order to reliably detect obstacles and wall surfaces, the side proximity sensor is disposed on the right or left side of the self-propelled device 200. In this embodiment, the right side of the self-propelled device 200 moves along the wall, and the side proximity sensor is disposed at a position which makes the side proximity sensor is capable of sensing the right side of the self-propelled device 200.
The control module 340 drives the motor module 342 to move the self-propelled device 200 according to the information detected by the rotary encoder 341, the gyroscope 343, the front proximity sensor and the side proximity sensor (distance sensor 321). The control module 340 is a computer system equipped with a CPU, a memory, and an input/output circuit. In order to perform the operation of the self-propelled device 200, a computer program is stored in the memory 345. The memory 345 is coupled to the processor 344, and the memory 345 includes a non-transitory computer-readable storage medium storing a computer-readable program code that can be executed by the processor 344 to perform an operation. A part of the memory 345 of the control module 340 is used for storing map information 361.
Step S02: the self-propelled device 200 obtains map data 690, the map data 690 include a plurality of virtual gateways 621-627, in which each of the virtual gateways 621-627 corresponds to a divided area 611-617 and includes an open status or a closed status, wherein the open status is configured to allow the self-propelled device 200 to pass through, and the closed status is configured to prevent the self-propelled device 200 from passing through. In an embodiment, the step S02 includes: generating the map data 690 based on the information of the self-propelled device 200 moving on the surface (Step S22); and arranging the virtual gateways 621-627 on the divided areas 611-617, respectively (Step S24). More specifically, the self-propelled device 200 moves on a surface, and the sensing module 320 is used to sense information of the environment to generate map data 690. In an embodiment, after the self-propelled device 200 moves throughout the whole surface, the sensing module 320 is used for measuring environmental data during moving to generate map data 690, as shown in
Please note that according to an embodiment of the present disclosure, the map data 690 only needs to be information of at least a part of the virtual gateways 621-627, and there is no limitation to the method of obtaining the map data. Preferably, the map data 690 only need to include the position information on the surface of the virtual gateways 621-627. In an embodiment, the map data 690 can be obtained from the server 500 or the remote device 400 by the self-propelled device 200, and is not obtained by the measurement of the sensing module 320.
Step S04: cleaning information is received by a remote device 400, wherein the cleaning information includes virtual gateway control information, and the virtual gateway control information includes information that the virtual gateways 621-627 are in the open status or the closed status. The user can select the areas which need to be cleaned from the patterns in
Step S06: a first divided area, which meets a predetermined condition, is found from currently enterable divided areas according to the virtual gateway control information. In an embodiment, the self-propelled device 200 finds the closest divided area from the currently enterable divided areas. For example, the user selects the divided area 612, the divided area 613 and the divided area 617 as the part to be cleaned (for example, the first part). As shown in
Step S08: the self-propelled device 200 enters the first divided area to move throughout the first divided area. In an embodiment, as in the aforementioned step S06, after the self-propelled device 200 enters the divided area 612, the virtual gateway 622 of the divided area 612 is in the closed status. In an embodiment, preferably, after the self-propelled device moves throughout the divided area 612, the pattern of the divided area 612 is obtained, and the map data 690 are updated.
In an embodiment, the method for controlling a self-propelled device can further include the step S03 of generating cleaning information by using the remote device 400. Preferably, the step S03 is performed before the step S04.
According to the foregoing embodiment, the self-propelled device moves throughout the divided area 612 and then enters the divided area 613, so as to clean the divided area 613. The process can include the following steps.
Step S12: after the self-propelled device 200 moves throughout the divided area 612, the virtual gateway 622 of the divided area 612 is allowed to be in the open status, and after the self-propelled device 200 leaves the divided area 612, the virtual gateway 622 of the divided area 612 is allowed to be in the closed status.
Step S14: according to the virtual gateway control information, the divided area 613 which meets the predetermined condition is found from the currently enterable divided areas excluding the cleaned divided area 612, i.e., from the divided area 613 and the divided area 617. As described in the foregoing step S06, the cleaning sequence may be determined before cleaning the divided area 612, or may be determined by performing calculation again after cleaning the divided area 612.
Step S15: the self-propelled device 200 enters the divided area 613, and the virtual gateway 623 of the divided area 613 is allowed to be in the closed status, such that the self-propelled device 200 moves throughout the divided area 613. Further, the previous steps appropriately repeated until all the selected divided areas are cleaned.
The present disclosure does not limit the method for generating the map data 690. In an embodiment, the user can take a photo of the divided area 618, use software analysis to obtain the map data 690 containing the position information of the virtual gateways 621-627, and then transmit the map data 690 to the self-propelled device 200. In an embodiment, the user can use the moving means to edit the map data 690 and then transmit the map data 690 to the self-propelled device 200.
The present disclosure does not limit the algorithm for the predetermined conditions, and preferably the one with the shortest distance can be used as the predetermined condition. Further, the shortest distance can be obtained by various algorithms. For example, in an embodiment, the predetermined condition may be that the path between the self-propelled device 200 and the first divided area is the shortest among the multiple paths between the self-propelled device 200 and the currently enterable divided areas.
Various calculation methods can be used for the path between the self-propelled device 200 and the divided area, and are not limited by the present disclosure. Hereinafter, a foaming method is provided as an example.
In an embodiment, the predetermined condition may be that the path between the self-propelled device 200 and the virtual gateway of the first divided area is the shortest among the multiple paths between the self-propelled device 200 and the virtual gateways of the currently enterable divided areas. Various calculation methods can be used for deciding the path between the self-propelled device 200 and the virtual gateway of the divided area, which is not limited by the present disclosure. Any point on the virtual gateway can be used as the coordinate. In an embodiment, as shown in
In an embodiment, the self-propelled device 200 generates the map data 690 including divided areas, and transmits the map data 690 to the remote device 400. In an embodiment, as shown in
In an embodiment, the user can use the remote device 400 to modify the divided areas in the map data 690. In an embodiment, the user can use the remote device 400 to set the divided areas to be cleaned and the divided areas which are not to be cleaned. In an embodiment, the self-propelled device 200 can be a self-moving floor cleaning robot. In an embodiment, the divided area in the map data 690 is generated by the self-propelled device 200 moving on the surface based on the data collected during cleaning. In an embodiment, the divided area can be generated by the edition of the remote device 400. In an embodiment, the remote device 400 may receive raw data corresponding to the surface of the enclosed space from the self-propelled device 200, and may use the raw data to generate the divided area.
In an embodiment, the image of the divided area can be displayed on the display of the remote device 400. The remote device 400 can be a mobile device, the mobile device can be a palm-type mobile terminal, and the display is a touch screen display. In an embodiment, a graphical user interface can be generated and displayed via a touch screen, and the touch screen can be used to receive input information from the user via the graphical user interface. In an embodiment, the remote device 400 can also be a monitor, a tablet computer, a computer including a screen and a mouse or touch interface, or a smart phone.
In an embodiment, the input information of the user can include cleaning information. For example, the cleaning information includes divided areas set with different cleaning modes and virtual gateway control information. In an embodiment, the input information of the user can include one or more cleaning task instructions for the enclosed space. For example, the cleaning task instruction can include a cleaning mode that identifies the area to be cleaned. In an embodiment, the cleaning task instruction can include instructions to be executed on certain days of the week or certain times of a day. In an embodiment, the cleaning task instruction includes cleaning modes corresponding to different cleaning levels of different areas, and the different cleaning levels can be achieved by specifying the number of times the self-propelled device 200 must move throughout the corresponding area.
In an embodiment, Step S03: the remote device 400 displays multiple divided area images of the divided areas 611-617 of the map data 690 (step S32); and the virtual gateway control information of the cleaning information is generated according to a signal generated from the selection, by a user, of at least a part of the divided area images displayed on the remote device 400 (step S34).
In an embodiment, the user selects the divided areas 611-617 to start the setting operation. As shown in
In an embodiment, according to the virtual gateway control information, a second divided area which meets the predetermined condition can be found from the currently enterable divided areas excluding the first divided area. Please note that the step of searching for a second divided area can be performed when the self-propelled device 200 is still in the first divided area, or can be performed after the self-propelled device 200 leaves the first divided area. In addition, the step of searching for a second divided area can be performed when the virtual gateway of the first divided area is in the open status, or can be performed when the virtual gateway of the first divided area is in the closed status. This can be set appropriately according to product specifications.
In an embodiment, the memory of the remote device 400 does not need to store complete map data, and only the data of multiple virtual gateways on the surface are required. For example, as shown in
In summary, it is an object in an embodiment of the present disclosure to provide a self-propelled device, which can receive cleaning information from a remote device, and clean an area into which self-propelled device can enter due to the permission of a virtual gateway specified in the cleaning information. In this way, it is convenient for a user to operate the desired area to be cleaned. In addition, in an embodiment, the remote device does not need to include complete map data, and only the data of multiple virtual gateways on the surface are required. Preferably, in an embodiment, after cleaning the divided area corresponding to the virtual gateway that can be passed through, the map data of the divided area can be obtained and then the map data can be updated to obtain complete map data.
Number | Date | Country | Kind |
---|---|---|---|
202011144888.8 | Oct 2020 | CN | national |