The present disclosure claims the priority to the Chinese patent application with the filing number 201711215140.0 filed on Nov. 28, 2017 with the Chinese Patent Office, and entitled “Communication Relationship Establishing Method and Device”, which is incorporated herein by reference in entirety.
The present disclosure relates to the technical field of smart household, particularly to a communication relationship establishing method (i.e., a method for establishing a communication relationship), a communication relationship establishing device (i.e., a device for establishing a communication relationship), a computer readable storage medium, an electronic device and a cleaning device.
With continuous development of science and technology and further improvement on people's living standard, cleaning devices (e.g. cleaning robot) are becoming increasingly popular in people's life. The cleaning robot, also called as automatic cleaner, intelligent dust collector, robot dust collector and so on, is one kind of intelligent household appliances, which can automatically complete the floor cleaning operation in a room depending upon certain artificial intelligence. The cleaning robot generally adopts a brushing and vacuum mode, to first suck sundries on the floor into its own garbage storage box, so as to complete the function of floor cleaning.
The cleaning sequence of the existing cleaning robots are often out of order, so that the cleaning route of the cleaning robots usually cannot be optimal, and thus redundant cleaning is performed.
In view of this, an object of embodiments of the present disclosure is to provide a communication relationship establishing method, a communication relationship establishing device, a computer readable storage medium, an electronic device and a cleaning device.
In order to achieve the above object, the embodiments of the present disclosure adopt the following technical solution:
In a first aspect, an embodiment of the present disclosure provides a communication relationship establishing method, wherein the method includes: dividing a to-be-cleaned region into at least two to-be-cleaned subregions; classifying, according to area, the at least two to-be-cleaned subregions into at least one large to-be-cleaned subregion and at least one small to-be-cleaned subregion; acquiring a boundary line between the large to-be-cleaned subregion and the small to-be-cleaned subregion; extending the boundary line, and determining whether the extended boundary line is capable of dividing the large to-be-cleaned subregion, wherein if yes, a first to-be-cleaned subregion located at a side of the boundary line same as the small to-be-cleaned subregion and a second to-be-cleaned subregion located at a side of the boundary line different from the small to-be-cleaned subregion are acquired; and establishing a communication relationship between the small to-be-cleaned subregion and the first to-be-cleaned subregion, and establishing a communication relationship between the small to-be-cleaned subregion and the second to-be-cleaned subregion.
In one possible design, the method further includes: determining, if cleaning of a current region is completed, whether there is an uncleaned region among regions communicated with the current region; if yes, determining whether the current region is a small to-be-cleaned subregion; and if yes, selecting, from uncleaned regions communicated with the current region, a region with a smallest area to clean.
In one possible design, after determining whether the current region is a small to-be-cleaned subregion, the method further includes: selecting, if the current region is not the small to-be-cleaned subregion, a region closest to a current position to clean from the uncleaned regions communicated with the current region.
In one possible design, the dividing a to-be-cleaned region into at least two to-be-cleaned subregions includes: establishing a mapping relationship between the to-be-cleaned region and a grid map; acquiring a certain uncleaned grid in the to-be-cleaned region, as a seed point, and taking a region where the seed point is located as a first to-be-cleaned subregion; acquiring a column where the seed point is located, and determining whether there is an uncleaned grid corresponding to the grid map in the column, and if yes, adding the grid to the first to-be-cleaned subregion; acquiring an adjacent column of the current column, and determining whether there is an uncleaned grid corresponding to the grid map in the adjacent column, and if yes, adding the grid to the first to-be-cleaned subregion; and repeating the step of “acquiring an adjacent column of the current column, and determining whether there is an uncleaned grid corresponding to the grid map in the adjacent column, and if yes, adding the grid to the first to-be-cleaned subregion”, until there is no uncleaned grid, so as to complete establishment of the first to-be-cleaned subregion.
In one possible design, after determining whether there is an uncleaned region among regions communicated with the current region, the method further includes: returning to a previous region of the current region if there is no uncleaned region among the regions communicated with the current region, and taking the previous region as a new current region.
In one possible design, the method further includes: acquiring, as for each of the to-be-cleaned subregions in the to-be-cleaned region, a point of an upper edge and a point of a lower edge of the to-be-cleaned subregion, as coverage counter points; ordering, before cleaning the to-be-cleaned region, the coverage counter points of each of the to-be-cleaned subregions according to the communication relationships among various to-be-cleaned subregions in the to-be-cleaned region; and cleaning each to-be-cleaned subregion in the to-be-cleaned region according to the ordering.
In a second aspect, an embodiment of the present disclosure further provides a communication relationship establishing method, wherein the method further includes: dividing a to-be-cleaned region into at least two to-be-cleaned subregions; classifying, according to area, the at least two to-be-cleaned subregions into at least one large to-be-cleaned subregion and at least one small to-be-cleaned subregion; acquiring, as for each small to-be-cleaned subregion, a boundary line of the small to-be-cleaned subregion, and determining whether one side of the boundary line, which is opposite to the small to-be-cleaned subregion, is a large to-be-cleaned subregion; extending the boundary line if one side of the boundary line, which is opposite to the small to-be-cleaned subregion, is a large to-be-cleaned subregion, and determining whether the extended boundary line is capable of dividing the large to-be-cleaned subregion into at least two regions; and establishing communication relationships between at least two regions and the small to-be-cleaned subregion, respectively, if the extended boundary line is capable of dividing the large to-be-cleaned subregion into the at least two regions, and marking the at least two regions as large to-be-cleaned subregions, respectively.
In one possible design, the dividing a to-be-cleaned region into at least two to-be-cleaned subregions includes: mapping the to-be-cleaned region to a grid map; acquiring any uncleaned grid in the to-be-cleaned region, taking the grid as a seed point, and establishing a to-be-cleaned subregion including the seed point; acquiring, in the grid map, a column where the seed point is located as a current column, and determining whether there is an uncleaned grid in the current column; adding, if there is an uncleaned grid in the current column, the grid to the to-be-cleaned subregion; acquiring, in the grid map, an adjacent column of the current column as a new current column, and re-executing the determining whether there is an uncleaned grid in the current column; and completing establishment of the to-be-cleaned subregion if there is no uncleaned grid in the current column.
In one possible design, before the acquiring any uncleaned grid in the to-be-cleaned region, taking the grid as a seed point, the dividing a to-be-cleaned region into at least two to-be-cleaned subregions further includes: determining whether there is an uncleaned grid in the to-be-cleaned region; executing, if there is an uncleaned grid in the to-be-cleaned region, the step of acquiring any uncleaned grid in the to-be-cleaned region, taking the grid as a seed point; and stopping, if there is no uncleaned grid in the to-be-cleaned region, executing the step of dividing a to-be-cleaned region into at least two to-be-cleaned subregions.
In one possible design, after completing establishment of the to-be-cleaned subregion, the method further includes: re-executing the step of determining whether there is an uncleaned grid in the to-be-cleaned region.
In one possible design, the method further includes: acquiring, as for each of the to-be-cleaned subregions in the to-be-cleaned region, a point of an upper edge and a point of a lower edge of the to-be-cleaned subregion as coverage counter points; ordering, before cleaning the to-be-cleaned region, the coverage counter points of each of the to-be-cleaned subregions according to the communication relationships among various to-be-cleaned subregions in the to-be-cleaned region; and cleaning each to-be-cleaned subregion in the to-be-cleaned region according to the ordering.
In one possible design, the method further includes: cleaning each to-be-cleaned subregion in the to-be-cleaned region, and when completing the cleaning for the current to-be-cleaned subregion, determining whether there is an uncleaned region among regions communicated with the current to-be-cleaned subregion; determining, if there is an uncleaned region among regions communicated with the current to-be-cleaned subregion, whether the current to-be-cleaned subregion is a small to-be-cleaned subregion; and selecting, if the current to-be-cleaned subregion is a small to-be-cleaned subregion, a region with a smallest area to clean from various regions communicated with the current to-be-cleaned subregion.
In one possible design, the method further includes: selecting, if the current to-be-cleaned subregion is not a small to-be-cleaned subregion, a region closest to a current position to clean from various regions communicated with the current to-be-cleaned subregion.
In a third aspect, an embodiment of the present disclosure further provides a communication relationship establishing device, wherein the device includes: a primary subregion dividing module, configured to divide a to-be-cleaned region into at least two to-be-cleaned subregions; an area distinguishing module, configured to classify, according to area, the at least two to-be-cleaned subregions into a large to-be-cleaned subregion and a small to-be-cleaned subregion; a boundary line acquiring module, configured to acquire a boundary line between the large to-be-cleaned subregion and the small to-be-cleaned subregion; a boundary line dividing module, configured to extend the boundary line, and determine whether the extended boundary line is capable of dividing the large to-be-cleaned subregion; a subregion redividing module, configured to acquire a first to-be-cleaned subregion located at the same side of the boundary line as the small to-be-cleaned subregion and a second to-be-cleaned subregion located at a different side of the boundary line from the small to-be-cleaned subregion; and a communication relationship establishing module, configured to establish a communication relationship between the small to-be-cleaned subregion and the first to-be-cleaned subregion, and establish a communication relationship between the small to-be-cleaned subregion and the second to-be-cleaned subregion.
In one possible design, the device further includes: an uncleaned region determining module, configured to determine whether there is an uncleaned region among regions communicated with the current region; a small subregion determining module, configured to determine whether the current region is a small to-be-cleaned subregion; and an area selecting module, configured to select, from the uncleaned regions communicated with the current region, a region with a smallest area to clean.
In one possible design, the device further includes: a distance selecting module, configured to select, from the uncleaned regions communicated with the current region, a region closest to a current position to clean.
In one possible design, the primary subregion dividing module includes: a mapping relationship establishing submodule, configured to establish a mapping relationship between the to-be-cleaned region and a grid map; a seed point acquiring submodule, configured to acquire a certain uncleaned grid in the to-be-cleaned region, as a seed point, and taking a region where the seed point is located as a first to-be-cleaned subregion; an uncleaned grid submodule, configured to acquire a column where the seed point is located, and determine whether there is an uncleaned grid corresponding to the grid map in the column, wherein if yes, the grid is added to the first to-be-cleaned subregion; an adjacent column determining submodule, configured to acquire an adjacent column of the current column, and determine whether there is an uncleaned grid corresponding to the grid map in the adjacent column, wherein if yes, the grid is added to the first to-be-cleaned subregion; and a region establishment completing submodule, configured to repeat the step of “acquiring an adjacent column of the current column, and determining whether there is an uncleaned grid corresponding to the grid map in the adjacent column, and if yes, adding the grid to the first to-be-cleaned subregion”, until there is no uncleaned grid, then completing the establishment of the first to-be-cleaned subregion.
In one possible design, the device further includes: a region returning module, configured to return to a previous region of the current region if there is no uncleaned region among the regions communicated with the current region, and take the previous region as a new current region.
In a fourth aspect, an embodiment of the present disclosure provides a computer readable storage medium, configured to store a computer instruction, wherein the computer instruction includes a corresponding program configured to execute the communication relationship establishing method provided in the first aspect of the embodiment of the present disclosure.
In a fifth aspect, an embodiment of the present disclosure provides an electronic device, including a processor and a computer readable storage medium, wherein the computer readable storage medium is configured to store a computer instruction, and a program corresponding to the communication relationship establishing method provided in the first aspect of the embodiment of the present disclosure is executed when the computer instruction is read by the processor and is running.
In a sixth aspect, an embodiment of the present disclosure provides a cleaning device, including a processor and a computer readable medium, wherein the computer readable medium is stored with a non-volatile program code executable by the processor, and the program code enables the processor to execute the communication relationship establishing method provided in the second aspect of the embodiment of the present disclosure.
In the communication relationship establishing method, the communication relationship establishing device, the computer readable storage medium, the electronic device and the cleaning device provided in the embodiments of the present disclosure, first, the to-be-cleaned region can be divided into at least two to-be-cleaned subregions, then the large to-be-cleaned subregion and the small to-be-cleaned subregion are classified according to the area, the boundary line between the two is acquired, the boundary line is extended, and it is determined whether the extended boundary line can divide the above large to-be-cleaned subregion, and if yes, the large to-be-cleaned subregion is divided into the first to-be-cleaned subregion located at the same side of the boundary line as the small to-be-cleaned subregion and the second to-be-cleaned subregion located at the different side of the boundary line from the small to-be-cleaned subregion, and the communication relationship between the small to-be-cleaned subregion and the first to-be-cleaned subregion and the communication relationship between the small to-be-cleaned subregion and the second to-be-cleaned subregion are established, respectively. Compared with the prior art, in the embodiments of the present disclosure, the to-be-cleaned region can be divided by the boundary line, and after the division, the communication relationship between the to-be-cleaned subregion obtained by the division and the original small to-be-cleaned subregion can be established, so as to provide a basis for establishing the cleaning sequence of the cleaning device, thus solving the problem that the cleaning sequence of the existing cleaning devices is out of order, which easily causes redundant cleaning.
In order to more clearly illustrate technical solutions in the embodiments of the present disclosure or the prior art, drawings which need to be used for description of the embodiments or the prior art will be introduced briefly below, and apparently, the drawings in the description below merely show some embodiments of the present disclosure, and those ordinarily skilled in the art still could obtain other drawings in light of these drawings, without using any creative effort.
Please referring to
The memory 111, the processor 112 and the cleaning assembly 113 are directly or indirectly electrically connected with each other, so as to realize transmission or interaction of data. For example, these elements can realize the electrical connection via one or more communication buses or signal lines. The communication relationship establishing device 110 includes at least one software functional module that can be stored in the memory 111 in a form of software or firmware, or solidified in an operating system (OS) of the cleaning device 100. The processor 112 is configured to execute an executable module (for example, a module corresponding to the communication relationship establishing method provided in the present embodiment) stored in the memory 111, so as to control the cleaning assembly 113 to clean.
In the above, the memory 111 may be, but not limited to, Random Access Memory (RAM), Read Only Memory (ROM), Programmable Read-Only Memory (PROM), Erasable Programmable Read-Only Memory (EPROM), Electric Erasable Programmable Read-Only Memory (EEPROM) and so on.
The processor 112 may be an integrated circuit chip, with a function of processing signals. The processor 112 may be a general-purpose processor, for example, Central Processing Unit (CPU), and Network Processor (NP), and also may be a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a Field-Programmable Gate Array (FPGA) or other programmable logic devices, discrete gates, transistor logic devices, or discrete hardware components. The processor 112 can realize or implement various methods, steps and logic block diagrams disclosed in the embodiments of the present disclosure. The above general-purpose processor may be a microprocessor or any other conventional processor.
The cleaning assembly 113 may be an assembly, for example, a broom, installed to the cleaning device 100 and configured to perform cleaning. The cleaning assembly 113 is configured to clean a to-be-cleaned region under the control of the processor 112.
It should be understood that the structure shown in
Before cleaning the to-be-cleaned region, the existing cleaning devices will divide the to-be-cleaned region, and then clean various subregions divided according to a specific order. Through a lot of researches, the inventors found that the cleaning sequence is out of order when the existing cleaning devices clean various subregions of the to-be-cleaned region, and there easily appears the situation that a certain region is cleaned repeatedly, or that a certain region is left out.
In order to solve at least one of the above problems, embodiments of the present disclosure provide a communication relationship establishing method and a communication relationship establishing device, wherein the to-be-cleaned region is divided, and a communication relationship between the to-be-cleaned subregions obtained from the division is established, so as to provide a basis for subsequent establishment of the cleaning sequence, that is, the cleaning sequence of various to-be-cleaned subregions can be further determined according to the communication relationship.
Please referring to
Step S110, dividing a to-be-cleaned region into at least two to-be-cleaned subregions.
In a specific embodiment, the to-be-cleaned region can be divided into the to-be-cleaned subregions with numbers 1, 2, and 3 as shown in
Please referring to
Step S111, establishing a mapping relationship between the to-be-cleaned region and a grid map.
The to-be-cleaned region as shown in
Step S112, acquiring a certain uncleaned grid in the to-be-cleaned region, as a seed point, and taking a region where the seed point is located as a first to-be-cleaned subregion.
In the to-be-cleaned region, one grid that has not been cleaned by the cleaning robot is randomly selected, that is, one non-edge position within the to-be-cleaned region is selected as the seed point, and the region where the seed point is located can be taken as the first to-be-cleaned subregion. That is, one first to-be-cleaned subregion including the seed point is established, and when the first to-be-cleaned subregion is established, the first to-be-cleaned subregion may merely include the seed point.
At this time, the whole to-be-cleaned region needs to undergo region division, then one seed point can be first randomly selected from the to-be-cleaned region, so as to distinguish the first to-be-cleaned subregion where the seed point is located and the to-be-cleaned subregions where the seed point is not located.
Step S113, acquiring a column where the seed point is located, judging whether there is an uncleaned grid corresponding to the grid map in the column, and if yes, executing step S114.
The column where the seed point is located is acquired according to the grid map, and it is determined whether there is a grid, in the column, that has not been cleaned by the cleaning robot when cleaning along edges, and if yes, the step S114 is executed.
Step S114, adding the grid to the first to-be-cleaned subregion.
All of the uncleaned grids in the column where the seed point is located are added to the first to-be-cleaned subregion where the seed point is located.
Step S115, acquiring an adjacent columns of the current column, and determining whether there is an uncleaned grid corresponding to the grid map in the adjacent columns, and if yes, executing step S116.
After completing classification of the column where the seed point is located, the adjacent columns of the column where the seed point is located can be acquired, wherein the adjacent columns include one left column and one right column of the column where the seed point is located, and likewise, it is determined whether there is a grid that has not been cleaned by the cleaning robot in the adjacent columns, and if yes, the step S116 is executed, and the execution can be started from the left column or the right column of the column where the seed point is located, and a specific direction should not be construed as limitation on the present disclosure.
Step S116, adding the grid to the first to-be-cleaned subregion.
After it is determined that there is a grid that has not been cleaned by the cleaning device 100 in the adjacent columns, a plurality of uncleaned grids in the adjacent column are acquired, and all of the plurality of grids are added to the first to-be-cleaned subregion.
Step S117, determining whether there is an uncleaned grid, and if yes, executing the step S115.
It is determined whether there is still an uncleaned grid left out in the first to-be-cleaned subregion, and if yes, go to the step S115 to acquire an adjacent column of a current column, wherein the current column herein may be an adjacent column of the column where the seed point is located. Thus, columns at two sides of the column where the seed point is located are traversed, so as to complete the establishment of the first to-be-cleaned subregion.
After completing the establishment of the first to-be-cleaned subregion, one seed point can be randomly selected from a region other than the first to-be-cleaned subregion, and the step S111 to the step S117 continue to be executed so as to complete division of the to-be-cleaned region, wherein reference can be made to
Step S120, classifying, according to area, the at least two to-be-cleaned subregions into a large to-be-cleaned subregion and a small to-be-cleaned subregion.
The divided to-be-cleaned subregions are recorded in the memory 111 of the cleaning device 100, and the cleaning device 100 can classify them into a large to-be-cleaned subregion and a small to-be-cleaned subregion according to the area of each to-be-cleaned subregion, for example, taking
Step S130, acquiring a boundary line between the large to-be-cleaned subregion and the small to-be-cleaned subregion.
As in
Step S140, extending the boundary line, determining whether the extended boundary line can divide the large to-be-cleaned subregion, and if yes, executing the step S150.
The boundary line is extended, and it is determined whether the extended boundary line can further divide the large to-be-cleaned subregion, and if yes, the step S150 is executed.
Step S150, acquiring a first to-be-cleaned subregion located at the same side of the boundary line as the small to-be-cleaned subregion and a second to-be-cleaned subregion located at a different side of the boundary line from the small to-be-cleaned subregion.
Please referring to
In the above, the region where A is located in
Similarly, the region where D is located in
Step S160, establishing a communication relationship between the small to-be-cleaned subregion and the first to-be-cleaned subregion, and establishing a communication relationship between the small to-be-cleaned subregion and the second to-be-cleaned subregion.
Establishing the communication relationship between the small to-be-cleaned subregion and the first to-be-cleaned subregion, and establishing the communication relationship between the small to-be-cleaned subregion and the second to-be-cleaned subregion are, in
After establishing the communication relationships among various to-be-cleaned subregions in the to-be-cleaned region, a cleaning sequence can be determined according to the communication relationships, and cleaning is carried out according to the cleaning sequence.
In a specific embodiment, it can be realized through the steps shown in
When the cleaning robot is located in the region where A is located, and when the cleaning robot has completed the cleaning operation for the region where A is located, it is determined whether there is an uncleaned region among the regions communicated with the region where A is located, and it can be seen from the step S110 to the step S160 that the region in a communicated state with the region where A is located is only the region where B is located, therefore, it can be determined whether the region where B is located is cleaned, and if the region where B is located is not cleaned, the step S180 is executed.
Optionally, if there is no uncleaned region among the regions communicated with the current region, the cleaning robot returns to a previous region of the current region, and takes the previous region as a new current region.
For example, as for the region where A is located, the region in a communicated state with the region where A is located is only the region where B is located, and if the region where B is located has been cleaned, there is no uncleaned region, at this time, the cleaning robot returns back to the previous region of the region where A is located, i.e., the region where B is located, and the region where B is located is taken as a new current region.
Step S180, determining whether the current region is a small to-be-cleaned subregion, if yes, executing step S181, and if no, executing step S182.
It can be determined whether the current region is a small to-be-cleaned subregion, and a corresponding cleaning strategy executed for the uncleaned region communicated with the current region is determined according to the type of the current region.
Step S181, selecting, from the uncleaned regions communicated with the current region, a region with the smallest area to clean.
For example, if the current region is a small to-be-cleaned subregion, the region with the smallest area is selected to clean from the uncleaned regions communicated with the current region. For the region where A is located, if the region where B is located is not cleaned, and B is an only region communicated with A, the cleaning robot selects the region where B is located to execute a cleaning action.
Step S182, selecting, from the uncleaned regions communicated with the current region, a closest region to clean.
If the current region is a large to-be-cleaned subregion, the closest region can be selected to clean from the uncleaned regions communicated with the current region.
In detail, please referring to
Please referring to
First, a cleaning operation is completed for the region B, the region A and the region C communicated with the region B are acquired and it is determined whether the region A and the region C are cleaned, and as neither the region A nor the region C is cleaned and the region B belongs to a small to-be-cleaned subregion, the cleaning robot selects the region A with a smaller area from the region A and the region C to clean.
After completing the cleaning operation for the region A, the region B communicated with the region A is acquired, and it is determined whether the region B is cleaned, and as the region B has been cleaned, the cleaning robot returns back to the previous region of the region A, i.e. the region B, and takes the region B as a new current region.
At this time, as for the region B, the region A communicated with the region B has been cleaned, and the region C has not been cleaned, then the cleaning robot goes to the region C to execute the cleaning operation.
After the cleaning operation is completed for the region C, the region B and the region E communicated with the region C are acquired, and as the region B has been cleaned while the region E has not been cleaned, the cleaning robot goes to the region E to execute the cleaning operation.
After the cleaning operation is completed for the region E, the region C and the region D communicated with the region E are acquired, and as the region C has been cleaned while the region D has not been cleaned, the cleaning robot goes to the region D to execute the cleaning operation.
So far, the cleaning robot completes the cleaning operation for all of the regions including the regions A, B, C, D, and E.
In another specific embodiment, when executing the cleaning operation, the cleaning device 100 can operate in a zigzag manner shown in
First, as for each to-be-cleaned subregion in the to-be-cleaned region, a point of an upper edge and a point of a lower edge of the to-be-cleaned subregion are acquired as coverage counter points.
Optionally, when executing the step S113 and the step S114, grids in each column should be traversed, and the first step above can be executed at this time. In other words, when establishment of one to-be-cleaned subregion is completed, coverage counter points therein are also generated.
Second, before cleaning the to-be-cleaned region, the coverage counter points of each to-be-cleaned subregion are ordered according to the communication relationships among various to-be-cleaned subregions in the to-be-cleaned region.
Taking the five to-be-cleaned subregions A, B, C, D, and E shown in
In the communication relationship establishing method provided in the first embodiment of the present disclosure, the whole to-be-cleaned region is divided, and the communication relationships between various subregions are established according to the dividing process, such that the cleaning device 100 can execute the cleaning task according to the communication relationships between the various subregions, then compared with the prior art, the subregion is divided more scientifically, and a relatively comprehensive cleaning solution can be achieved with a shorter distance.
Please referring to
The primary subregion dividing module 310 is configured to divide a to-be-cleaned region into at least two to-be-cleaned subregions.
Optionally, the primary subregion dividing module 310 may include a mapping relationship establishing submodule, a seed point acquiring submodule, an uncleaned grid submodule, an adjacent column determining submodule and a region establishment completing submodule.
In the above, the mapping relationship establishing submodule is configured to establish a mapping relationship between the to-be-cleaned region and a grid map.
The seed point acquiring submodule is configured to acquire a certain uncleaned grid in the to-be-cleaned region, as a seed point, and take a region where the seed point is located as a first to-be-cleaned subregion.
The uncleaned grid submodule is configured to acquire a column where the seed point is located, and determine whether there is an uncleaned grid corresponding to the grid map in the column, and if yes, the grid is added to the first to-be-cleaned subregion.
The adjacent column determining submodule is configured to acquire an adjacent column of the current column, and determine whether there is an uncleaned grid corresponding to the grid map in the adjacent column, and if yes, the grid is added to the first to-be-cleaned subregion.
The region establishment completing submodule is configured to repeat the step of “acquiring an adjacent column of the current column, and determining whether there is an uncleaned grid corresponding to the grid map in the adjacent column, and if yes, adding the grid to the first to-be-cleaned subregion”, until there is no uncleaned grid, then the establishment of the first to-be-cleaned subregion is completed.
The area distinguishing module 320 is configured to classify, according to area, the at least two to-be-cleaned subregions into a large to-be-cleaned subregion and a small to-be-cleaned subregion.
The boundary line acquiring module 330 is configured to acquire a boundary line between the large to-be-cleaned subregion and the small to-be-cleaned subregion.
The boundary line dividing module 340 is configured to extend the boundary line, and determine whether the extended boundary line can divide the large to-be-cleaned subregion.
The subregion redividing module 350 is configured to acquire a first to-be-cleaned subregion located at the same side of the boundary line as the small to-be-cleaned subregion and a second to-be-cleaned subregion located at a different side of the boundary line from the small to-be-cleaned subregion.
The communication relationship establishing module 360 is configured to establish a communication relationship between the small to-be-cleaned subregion and the first to-be-cleaned subregion, and establish a communication relationship between the small to-be-cleaned subregion and the second to-be-cleaned subregion.
The device may further include: an uncleaned region determining module, a small subregion determining module, an area selecting module, a distance selecting module and a region returning module.
In the above, the uncleaned region determining module is configured to determine whether there is an uncleaned region among regions communicated with the current region.
The small subregion determining module is configured to determine whether the current region is a small to-be-cleaned subregion.
The area selecting module is configured to select, from the uncleaned regions communicated with the current region, a region with the smallest area to clean.
The distance selecting module is configured to select, from the uncleaned regions communicated with the current region, a closest region to clean.
The region returning module is configured to return to a previous region of the current region if there is no uncleaned region among the regions communicated with the current region, and take the previous region as a new current region.
A person skilled in the art could clearly know that for the sake of convenience and conciseness of description, reference can be made to corresponding process in the preceding method for specific operation process of the device described above, and no redundant description will be given herein.
The present embodiment further provides a computer readable storage medium, in which a computer instruction is stored, and the communication relationship establishing method provided in the present embodiment is executed when the computer instruction is executed.
The present embodiment further provides an electronic device, including a processor and the above computer readable storage medium.
The present embodiment provides a communication relationship establishing method applied to the cleaning device 100 shown in
Step S901, dividing a to-be-cleaned region into at least two to-be-cleaned subregions.
Optionally, as shown in
Step S9011, mapping the to-be-cleaned region to a grid map.
Step S9012, acquiring any uncleaned grid in the to-be-cleaned region, taking the grid as a seed point, establishing a to-be-cleaned subregion including the seed point, and acquiring, in the grid map, a column where the seed point is located as a current column.
Step S9013, determining whether there is an uncleaned grid in the current column. If yes, step S9014 is executed, and if no, step S9015 is executed.
Step S9014, adding the grid to the to-be-cleaned subregion, acquiring, in the grid map, an adjacent column of the current column as a new current column, and re-executing the step S9013.
Step S9015, completing establishment of the to-be-cleaned subregion.
Optionally, prior to executing the step S9012, the step S901 further may include:
Step S1001, determining whether there is an uncleaned grid in the to-be-cleaned region, and if yes, executing the step S9012, and if no, executing step S1002.
Step S1002, stopping executing the step of dividing a to-be-cleaned region into at least two to-be-cleaned subregions.
Optionally, after executing the step S9015, the method further includes: re-executing the step S1001.
Step S902, classifying, according to area, the at least two to-be-cleaned subregions into a large to-be-cleaned subregion and a small to-be-cleaned subregion.
Step S903, acquiring, as for each small to-be-cleaned subregion, a boundary line of the small to-be-cleaned subregion, and determining whether one side of the boundary line, which is opposite to the small to-be-cleaned subregion, is a large to-be-cleaned subregion.
Step S904, extending the boundary line if one side of the boundary line, which is opposite to the small to-be-cleaned subregion, is a large to-be-cleaned subregion, and determining whether the extended boundary line can divide the large to-be-cleaned subregion into at least two regions.
Step S905, establishing communication relationships between the at least two regions and the small to-be-cleaned subregion, respectively, if the extended boundary line can divide the large to-be-cleaned subregion into at least two regions, and marking the at least two regions as large to-be-cleaned subregions, respectively.
Optionally, in an embodiment, in the communication relationship establishing method, the to-be-cleaned region can be cleaned through following steps: acquiring, as for each to-be-cleaned subregion in the to-be-cleaned region, a point of an upper edge and a point of a lower edge of the to-be-cleaned subregion as coverage counter points;
In another embodiment, in the communication relationship establishing method, the to-be-cleaned region can be cleaned through following steps:
selecting, if the current to-be-cleaned subregion is not a small to-be-cleaned subregion, a region closest to a current position to clean from various regions communicated with the current to-be-cleaned subregion.
In the communication relationship establishing method and the communication relationship establishing device provided in the embodiments of the present disclosure, first, the to-be-cleaned region can be divided into at least two to-be-cleaned subregions, then the large to-be-cleaned subregion and the small to-be-cleaned subregion are classified according to the area, the boundary line between the two is acquired, the boundary line is extended, and it is determined whether the extended boundary line can divide the above large to-be-cleaned subregion, and if yes, the large to-be-cleaned subregion is divided into the first to-be-cleaned subregion located at the same side of the boundary line as the small to-be-cleaned subregion and the second to-be-cleaned subregion located at the different side of the boundary line from the small to-be-cleaned subregion, and the communication relationship between the small to-be-cleaned subregion and the first to-be-cleaned subregion, and the communication relationship between the small to-be-cleaned subregion and the second to-be-cleaned subregion are established, respectively. Compared with the prior art, in the embodiments of the present disclosure, the to-be-cleaned region can be divided by the boundary line, and after the division, the communication relationship between the to-be-cleaned subregion obtained by the division and the original small to-be-cleaned subregion can be established, and the cleaning sequence is arranged according to the communication relationship between the two, thus solving the problem that the cleaning sequence of the existing cleaning robots is out of order, which easily causes redundant cleaning.
It should be noted that various embodiments in the present description are described in a progressive manner, each embodiment focuses on the differences from other embodiments, and the same or similar parts between various embodiments may refer to each other. For device embodiment, since it is substantially similar to the method embodiment, it is described relatively simply, and reference can be made to the description in parts of the method embodiment for related parts.
In the several embodiments provided in the present disclosure, it should be understood that the device and the method disclosed also may be implemented in other manners. The device embodiments described above are merely illustrative, for example, the flowcharts and the block diagrams in the drawings show possible system structures, functions, and operations of the device, method, and computer program products according to multiple embodiments of the present disclosure. In this regard, each block in the flowchart or the block diagram may represent a part of one module, program segment, or code, and the part of the module, the program segment, or the code contains one or more executable instructions configured to achieve a specified logical function. It also should be noted that in some implementations as substitution, the functions indicated in the blocks also may be proceeded in an order different from that indicated in the drawings. For example, two continuous blocks practically can be executed substantially in parallel, and they sometimes also may be executed in a reverse order, which depends upon a function involved. It also should be noted that each block in the block diagram and/or flowchart, and combinations of the blocks in the block diagram and/or the flowchart can be realized by a dedicated hardware-based system configured to execute a specified function or action, or can be realized by a combination of dedicated hardware and computer instructions.
Besides, the various functional modules in various embodiments of the present disclosure can be integrated together to form one independent portion, and it is also possible that the various modules exist independently, or that two or more modules are integrated to form one independent part.
If the function is realized in a form of software functional module and is sold or used as an individual product, it may be stored in one computer readable storage medium. Based on such understanding, the technical solutions in essence or parts making contribution to the prior art or parts of the technical solutions of the present disclosure can be embodied in form of a software product, and this computer software product is stored in a storage medium, including several instructions for making one computer device (which can be a personal computer, a server or a network device, etc.) execute all or part of the steps of the methods of various embodiments of the present disclosure. The aforementioned storage medium includes various media in which program codes can be stored, such as U disk, mobile hard disk, Read-Only Memory (ROM), Random Access Memory (RAM), diskette and compact disk. It should be indicated that in the present text, relational terms such as first and second are merely for distinguishing one entity or operation from another entity or operation, while it is not required or implied that these entities or operations necessarily have any such practical relation or order. Moreover, terms “including”, “containing” or any other derivatives thereof are intended to be non-exclusive, thus a process, method, article or device including a series of elements not only include those elements, but also include other elements that are not listed definitely, or further include elements inherent to such process, method, article or device. Without more restrictions, an element defined with wording “including a . . . ” does not exclude presence of other same elements in the process, method, article or device including said element.
The above-mentioned are merely for preferred embodiments of the present disclosure and not used to limit the present disclosure, and for one skilled in the art, various modifications and changes may be made to the present disclosure. Any modifications, equivalent substitutions, improvements and so on made within the spirit and principle of the present disclosure, should be covered within the scope of protection of the present disclosure. It should be noted that similar reference signs and letters represent similar items in the following drawings, therefore, once a certain item is defined in one drawing, it is not needed to be further defined or explained in subsequent drawings.
The above-mentioned are merely specific embodiments of the present disclosure, but the scope of protection of the present disclosure is not limited thereto, and any modification or substitution that may be easily envisaged by those skilled in the present art within the technical scope disclosed in the present disclosure should fall within the scope of protection of the present disclosure. Therefore, the scope of protection of the present disclosure should be based on the scope of protection of the claims.
For the communication relationship establishing method, the communication relationship establishing device, the computer readable storage medium, the electronic device and the cleaning device provided in the embodiments of the present disclosure, the to-be-cleaned region is divided by the boundary line, and after the division, the communication relationship between the to-be-cleaned subregion obtained from the division and the original small to-be-cleaned subregion is established, so as to provide a basis for establishing the cleaning sequence of the cleaning robot, and solve the problem that the cleaning sequence of the existing cleaning robots is out of order, which easily causes redundant cleaning.
Number | Date | Country | Kind |
---|---|---|---|
2017112151400 | Nov 2017 | CN | national |
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/CN2018/073737 | 1/23/2018 | WO | 00 |