Detailed Description
In the following description, for purposes of explanation and not limitation, specific details are set forth, such as particular system structures, techniques, etc. in order to provide a thorough understanding of the embodiments of the present application. It will be apparent, however, to one skilled in the art that the present application may be practiced in other embodiments that depart from these specific details. In other instances, detailed descriptions of well-known systems, devices, circuits, and methods are omitted so as not to obscure the description of the present application with unnecessary detail.
It will be understood that the terms "comprises" and/or "comprising," when used in this specification and the appended claims, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof.
It should also be understood that the term "and/or" as used in this specification and the appended claims refers to and includes any and all possible combinations of one or more of the associated listed items.
As used in this specification and the appended claims, the term "if" may be interpreted contextually as "when", "upon" or "in response to" determining "or" in response to detecting ". Similarly, the phrase "if it is determined" or "if a [ described condition or event ] is detected" may be interpreted contextually to mean "upon determining" or "in response to determining" or "upon detecting [ described condition or event ]" or "in response to detecting [ described condition or event ]".
Furthermore, in the description of the present application and the appended claims, the terms "first," "second," "third," and the like are used for distinguishing between descriptions and not necessarily for describing or implying relative importance.
Reference throughout this specification to "one embodiment" or "some embodiments," or the like, means that a particular feature, structure, or characteristic described in connection with the embodiment is included in one or more embodiments of the present application. Thus, appearances of the phrases "in one embodiment," "in some embodiments," "in other embodiments," or the like, in various places throughout this specification are not necessarily all referring to the same embodiment, but rather "one or more but not all embodiments" unless specifically stated otherwise. The terms "comprising," "including," "having," and variations thereof mean "including, but not limited to," unless expressly specified otherwise.
The embodiment of the application provides a control method of a mopping robot, which can be applied to a robot with a floor cleaning function, and the embodiment of the application does not limit the specific type of the robot.
It should be understood that, the sequence numbers of the steps in the foregoing embodiments do not imply an execution sequence, and the execution sequence of each process should be determined by its function and inherent logic, and should not constitute any limitation to the implementation process of the embodiments of the present application.
In order to explain the technical solution described in the present application, the following description will be given by way of specific examples.
Referring to fig. 1, which is a flowchart of a control method of a mopping robot according to an embodiment of the present disclosure, the control method may be applied to a mopping robot having a floor cleaning function, and as shown in fig. 1, the control method may include the following steps:
step S101, a first advancing direction and a first distance of the mopping robot at a first position are obtained.
The position of the mopping robot when the mopping robot starts to run by the method is taken as a first position, and the mopping robot can also determine a first distance and a first advancing direction according to the acquired actual environment to be cleaned.
And S102, controlling the floor mopping robot to move from the first position to the second position along the first advancing direction by a first distance.
The mopping robot advances for a first distance along the first advancing direction to reach a second position, the second position is separated from the first position by the first distance, and a straight line of a line segment connected with the first position at the second position is parallel to a straight line of the first advancing direction.
And step S103, controlling the floor mopping robot to move from the second position to the third position in the first preset direction according to the first preset path.
The first preset path may refer to a preset moving route having a direction, a linear shape, and a length, for example, the linear shape is a straight line shape, an arc line shape, or a broken line shape; the transverse moving distance of the first preset path is a second distance, and the longitudinal moving distance of the first preset path is a third distance.
The first preset direction is a right front direction or a left front direction, the right front direction or the left front direction is that the first advancing direction is taken as a front reference, the mopping robot moves to the right front direction or the left front direction after moving to the second position in the first advancing direction, the transverse moving distance between the third position and the second position is a second distance, and the longitudinal moving distance between the third position and the second position is a third distance.
And step S104, controlling the floor mopping robot to return to the second position from the third position according to the first preset path, and taking the second position as the first position.
After the floor mopping robot reaches the third position, the floor mopping robot is controlled to return to the second position along a path (a first preset path) from the second position to the third position, and in order to continuously clean the area in the first advancing direction, the second position is used as the first position after the floor mopping robot returns to the second position.
And step S105, judging whether the mopping robot moves along the first advancing direction and meets the obstacle.
The mopping robot moves along a first advancing direction to meet an obstacle, if the obstacle is a first obstacle, the mopping robot can be considered to finish mopping in an area in the first advancing direction, namely the mopping robot moves to the end of a current row or column where the first advancing direction is located, and the first advancing direction does not need to be cleaned, namely the first obstacle is an obstacle existing at the end of the row or column, for example, the first obstacle is a wall, an object leaning against the wall and the like, and when the mopping robot moves along the first advancing direction to meet the wall, the mopping robot moves to the end of the current row or column; if the obstacle is a second obstacle, and the second obstacle is an obstacle existing in a row or a column where the mopping robot moves, the mopping of the area in the first forward direction is considered to be completed, or the cleaning of the first forward direction needs to be continued by bypassing the second obstacle, or the cleaning of the second obstacle along the edge is performed until the cleaning is completed after the closing of the movement along the edge, and then the mopping of the area in the first forward direction is considered to be completed, for example, the second obstacle is a table, a chair, a slipper, or the like; if the mopping robot moves in the first forward direction without encountering an obstacle, the mopping robot can continue to move in the first forward direction, return to perform step S102, and repeat steps S102-S105.
As shown in fig. 2, which is a schematic path diagram of a floor mopping robot provided in the first embodiment of the present application, the floor mopping robot moves upward from a first position 1 by a first distance to a second position 2, moves from the second position 2 to a third position 3 to the right front according to a first preset path 4, that is, the third position 3 is right front of the second position 2, then, returns from the third position 3 to the second position 2 along a reverse path 5 (shown by a dotted line in fig. 2) of the first preset path, takes the second position 2 as the first position 1, and returns to perform the step of moving upward from the first position 1 by the first distance to the second position 2.
Optionally, the control method further includes:
detecting whether the mopping robot encounters a dynamic obstacle in the advancing process;
if the mopping robot meets the dynamic obstacle in the advancing process, the mopping robot continues to advance after the dynamic obstacle leaves.
The dynamic barrier is an object which moves within a preset time after blocking the advancing path of the mopping robot, namely, the dynamic barrier moves within the preset time after the mopping robot meets the barrier, and does not block the movement of the mopping robot.
This application drags ground robot through control and removes to first direction of advance to every first distance outwards does the extension according to first preset route and removes, returns along this first preset route after reaching existing position, drags ground route comparatively neatly, can not treat clean region because the condition of omitting appears in a jumble and disorderly leading to of route of dragging ground, has improved and has dragged ground coverage.
Referring to fig. 3, which is a flowchart of a control method of a mopping robot according to a second embodiment of the present disclosure, the control method may be applied to a mopping robot having a floor cleaning function, and as shown in fig. 3, the control method may include the following steps:
in step S301, a first advancing direction and a first distance of the mopping robot at a first position are obtained.
Step S302, the floor mopping robot is controlled to move from the first position to the second position along the first advancing direction by a first distance.
And step S303, controlling the floor mopping robot to move from the second position to the third position in the first preset direction according to the first preset path.
And step S304, controlling the floor mopping robot to return to the second position from the third position according to the first preset path, and taking the second position as the first position.
In step S305, it is determined whether the mopping robot moves in the first forward direction to encounter an obstacle.
The contents of steps S301 to S305 are the same as those of steps S101 to S105, and reference may be made to the description of steps S101 to S105, which is not repeated herein.
After the mopping robot encounters the obstacle, if the obstacle is the second obstacle, step S306 is executed, and as another embodiment, after the mopping robot encounters the obstacle, if the obstacle is the second obstacle, the mopping robot may perform the edgewise cleaning on the obstacle, and when the path of the edgewise cleaning is closed, the mopping robot finishes the edgewise cleaning, as shown in fig. 3, for example, the second obstacle falls on the row or column on which the mopping robot is currently running, and if the second obstacle is a cylinder, the mopping robot runs to the cylinder, then performs the edgewise cleaning around the cylinder for one circle, and then enters the next row or column for cleaning.
In addition, after the mopping robot encounters the obstacle, if the obstacle is a second obstacle, the mopping robot may further perform partial edgewise cleaning on the second obstacle, and when the mopping robot moves to the row or column in the first forward direction edgewise cleaning (i.e., continues to clean the first forward direction around the second obstacle), as shown in fig. 4, for example, the second obstacle falls on the row or column in which the mopping robot currently operates, and if the second obstacle is a cylinder, the mopping robot moves to the cylinder and then performs edgewise cleaning around the periphery of the cylinder until the mopping robot returns to the currently operating row or column.
And step S306, controlling the floor mopping robot to enter the next row or column from the current row or column according to a second preset path.
The second preset path is essentially a turning path for controlling the floor mopping robot to enter the next row from the current row, the advancing direction of the floor mopping robot in the next row or column is a second advancing direction, and the second advancing direction is opposite to the advancing direction of the current row or column.
Adjusting the second forward direction of the floor mopping robot to be opposite to the first forward direction, as shown in fig. 6, is a schematic path diagram of the complete movement of the floor mopping robot provided in the second embodiment of the present application, where the floor mopping robot moves upward in the leftmost column in fig. 6, the first forward direction is upward, the floor mopping robot enters the next column, and the second forward direction is downward.
And step S307, controlling the floor mopping robot to move from the fourth position of the next row or column to the fifth position in the second preset direction according to a third preset path.
The third preset path and the first preset path have the same line type, and the transverse moving distance and the longitudinal moving distance of the third preset path and the first preset path are equal; if the first preset path is linear, the third preset path is also linear, and if the transverse moving distance of the first preset path is the second distance and the longitudinal moving distance is the third distance, the transverse moving distance of the third preset path is also the second distance and the longitudinal moving distance is also the third distance; in addition, the third preset path is on the right side of the second advancing direction if the first preset path is on the left side of the first advancing direction, and the third preset path is on the left side of the second advancing direction if the first preset path is on the right side of the first advancing direction.
The fourth position of the next row or column may be set on a straight line formed by connecting the third positions, the fourth position may be used as a starting position for the floor-mopping robot to perform the cleaning operation on the row or column, the row or column may be a straight line formed by connecting the third positions, the fourth position may have a second distance from the first position in the lateral direction, and the fourth position may have a fourth distance from the first position (the first position most adjacent to the fourth position) in the longitudinal direction. Of course, the lateral distance between the fourth position and the first position may be greater than or less than the second distance, and the application is not limited.
In addition, in fig. 6, when the floor-mopping robot moves from the second position to the right front position according to the first preset path (the line is linear), the floor-mopping robot moves from the first position to the right front position to the fourth position according to the second preset path after the floor-mopping robot moves in the first forward direction and encounters an obstacle.
As shown in fig. 6, the third position reached last when the mopping robot moves along the leftmost column is the fourth position of the mopping robot in the next column, that is, the fourth distance (the longitudinal distance between the first position and the fourth position which are most adjacent to the fourth position) is equal to the third distance (the longitudinal moving distance of the first preset path), as shown in fig. 7, is a further schematic path of the mopping robot complete movement provided by the second embodiment of the present application, and the line type of the first preset path of the mopping robot in fig. 7 is an arc line, it can be better seen that the mopping robot moves from the fourth position 6 to the front left to the fifth position 7, the third position 3 reached last when the mopping robot moves along the leftmost column is below the fourth position 6, that is, the fourth distance (the longitudinal distance between the first position 1 and the fourth position 6 which are most adjacent to the fourth position 6) is greater than the third distance (the longitudinal moving distance of the first preset path), in addition, the fourth distance (the longitudinal distance of the first position most adjacent to the fourth position from the fourth position) may also be smaller than the third distance (the longitudinal moving distance of the first preset path).
If the first preset direction is the right front direction, the second preset direction is the left front direction, if the first preset direction is the left front direction, the second preset direction is the right front direction, and the left front direction or the right front direction of the second preset direction takes the second advancing direction as the front direction as a reference; as shown in fig. 6, if the first preset path is directed to the right front when the mopping robot moves upward in the leftmost column, the third preset path is directed to the left front when the mopping robot moves downward to the next column.
And step S308, controlling the floor mopping robot to return to the fourth position from the fifth position according to a third preset path.
After the floor mopping robot reaches the fifth position, the floor mopping robot is controlled to return to the fourth position along a path from the fourth position to the fifth position (a third preset path).
In step S309, the floor mopping robot is controlled to move from the fourth position to the sixth position along the second forward direction by the first distance, and then the sixth position is set as the fourth position.
After returning to the fourth position, the floor-mopping robot is controlled to move from the fourth position by the first distance along the second forward direction to reach the sixth position, and the sixth position is taken as the fourth position.
In step S310, it is determined whether the mopping robot moves in the second forward direction and meets an obstacle.
The mopping robot moves along the second advancing direction to meet the obstacle, if the obstacle is the first obstacle, the mopping robot can be considered to finish mopping in the area in the second advancing direction, namely the mopping robot moves to the end of the next row or column, and the second advancing direction does not need to be cleaned; if the obstacle is a second obstacle, the cleaning is finished in the area in the second advancing direction, or the second advancing direction needs to be cleaned by bypassing the second obstacle, or the second obstacle is cleaned along the edge until the second obstacle moves along the edge and is closed; if the mopping robot moves along the second forward direction without encountering an obstacle, the mopping robot can continue to move forward in the second forward direction, return to the step S307, and repeat the steps S307 to S310.
Optionally, after the number of times that the mopping robot moves in the second forward direction reaches the second target number of times, the method further includes:
controlling the mopping robot to move from the fourth position to the seventh position in the second preset direction according to a fourth preset path, and adjusting the advancing direction of the mopping robot to be the same as the first advancing direction, wherein the seventh position is on a straight line formed by connecting all the fifth positions;
and taking the seventh position as the second position, returning to execute control to move the mopping robot from the second position to the third position in the first preset direction according to the first preset path until the mopping robot meets the obstacle when moving along the second preset path or the fourth preset path.
And in the adjacent rows or columns, the movement directions of the mopping robots are opposite, and the steps are sequentially circulated until the mopping robots meet the obstacle when moving along the second preset path or the fourth preset path.
Optionally, the longitudinal movement distance of the first preset path is 0.5-5 times the width of the cleaning assembly of the mopping robot.
The longitudinal moving distance (namely, the third distance) of the first preset path is the longitudinal moving distance when the mopping robot moves towards the left front or the right front, and the third distance is set to be 0.5-5 times of the width of the cleaning assembly of the mopping robot, so that the condition that the mopping efficiency is low due to the fact that the longitudinal moving distance when the mopping robot moves towards the left front or the right front is too small is avoided, and the condition that the mopping coverage rate is low due to the fact that the longitudinal moving distance when the mopping robot moves towards the left front or the right front is too large is also avoided.
The embodiment of the application can be cleaned by controlling the floor mopping robot to turn to the next row after one row is mopped, the moving path is regular, concise and reasonable, the higher floor mopping coverage rate is achieved, and the problem that the floor mopping efficiency is lower due to the fact that the moving path is messy is avoided.
Referring to fig. 8, a block diagram of a control device of a mopping robot is provided in a third embodiment of the present invention, and for convenience of description, only the parts related to the third embodiment of the present invention are shown.
The control device includes:
a first obtaining module 81, configured to obtain a first advancing direction and a first distance of the floor mopping robot at a first position;
a first control module 82 for controlling the mopping robot to move a first distance from a first position to a second position in a first forward direction;
the second control module 83 is configured to control the floor mopping robot to move from the second position to the third position in the first preset direction according to the first preset path, where the first preset direction is the front right direction or the front left direction;
the first return control module 84 is used for controlling the floor mopping robot to return to the second position from the third position according to a first preset path;
a first repeat control module 85 for repeating the above steps until the mopping robot moves in a first forward direction to encounter the obstacle.
Optionally, the control device further includes:
and the edgewise cleaning module is used for performing edgewise cleaning on the obstacle by the mopping robot, and the mopping robot finishes the edgewise cleaning when the path of the edgewise cleaning is closed.
Optionally, the control device further includes:
and the partial edgewise cleaning module is used for performing partial edgewise cleaning on the obstacle by the mopping robot, and when the obstacle is cleaned edgewise to the row or column in the first advancing direction, the mopping robot continues to move in the first advancing direction.
Optionally, the control device further includes:
the third control module is used for controlling the floor mopping robot to enter the next row or column from the current row or column according to a second preset path, the advancing direction of the floor mopping robot in the next row or column is a second advancing direction, and the second advancing direction is opposite to the advancing direction of the current row or column;
the fourth control module is used for controlling the floor mopping robot to move to a fifth position from a fourth position of the next row or column to a second preset direction according to a third preset path, wherein the second preset direction is the left front direction if the first preset direction is the right front direction, and the second preset direction is the right front direction if the first preset direction is the left front direction;
the second return control module is used for controlling the floor mopping robot to return to a fourth position from a fifth position according to a third preset path;
the fifth control module is used for controlling the mopping robot to move from the fourth position to the sixth position along the second advancing direction by the first distance;
and the second repeated control module is used for repeating the steps until the mopping robot moves along the second advancing direction and meets the obstacle.
Optionally, the longitudinal movement distance of the first preset path is 0.5-5 times the width of the cleaning assembly of the mopping robot.
Optionally, a longitudinal distance between the first position most adjacent to the fourth position and the fourth position is greater than or equal to a longitudinal moving distance of the first preset path.
Optionally, the control device further includes:
the detection module is used for detecting whether the mopping robot meets a dynamic obstacle in the advancing process;
and the stopping module is used for continuing to advance after the dynamic barrier leaves if the mopping robot meets the dynamic barrier in the advancing process.
It should be noted that, because the contents of information interaction, execution process, and the like between the modules are based on the same concept as that of the embodiment of the method of the present application, specific functions and technical effects thereof may be specifically referred to as part two of the embodiment of the method, and details are not described here.
Fig. 9 is a schematic structural diagram of a mopping robot according to a fourth embodiment of the present application. As shown in fig. 7, the floor mopping robot 9 of this embodiment includes: at least one processor 90 (only one processor is shown in fig. 9), a memory 91 and a computer program 92 stored in the memory 91 and executable on the at least one processor 90, the steps of controlling the mopping robot of the above-described embodiment being implemented when the computer program 92 is executed by the processor 90.
The mopping robot may include, but is not limited to, a processor 90, a memory 91. Those skilled in the art will appreciate that fig. 9 is merely an example of the floor mopping robot 9, and does not constitute a limitation of the floor mopping robot 9, and may include more or less components than those shown, or combine some components, or different components, such as input and output devices, network access devices, etc.
The Processor 90 may be a Central Processing Unit (CPU), and the Processor 90 may also be other general purpose Processor, a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Field Programmable Gate Array (FPGA) or other Programmable logic device, discrete Gate or transistor logic device, discrete hardware component, etc. A general purpose processor may be a microprocessor or the processor may be any conventional processor or the like.
The memory 91 may in some embodiments be an internal storage unit of the mopping robot 9, such as a hard disk or a memory of the mopping robot 9. The memory 91 may also be an external storage device of the floor-mopping robot 9 in other embodiments, such as a plug-in hard disk provided on the floor-mopping robot 9, a Smart Media Card (SMC), a Secure Digital (SD) Card, a Flash memory Card (Flash Card), and so on. Further, the memory 91 may also include both an internal storage unit of the mopping robot 9 and an external storage device. The memory 91 is used for storing an operating system, an application program, a BootLoader (BootLoader), data, and other programs, such as program codes of a computer program. The memory 91 may also be used to temporarily store data that has been output or is to be output.
It will be apparent to those skilled in the art that, for convenience and brevity of description, only the above-mentioned division of the functional units and modules is illustrated, and in practical applications, the above-mentioned function distribution may be performed by different functional units and modules according to needs, that is, the internal structure of the apparatus is divided into different functional units or modules, so as to perform all or part of the functions described above. Each functional unit and module in the embodiments may be integrated in one processing unit, or each unit may exist alone physically, or two or more units are integrated in one unit, and the integrated unit may be implemented in a form of hardware, or in a form of software functional unit. In addition, specific names of the functional units and modules are only for convenience of distinguishing from each other, and are not used for limiting the protection scope of the present application. The specific working processes of the units and modules in the above-mentioned apparatus may refer to the corresponding processes in the foregoing method embodiments, and are not described herein again. The integrated unit, if implemented in the form of a software functional unit and sold or used as a stand-alone product, may be stored in a computer readable storage medium. Based on such understanding, all or part of the processes in the methods of the embodiments described above can be implemented by a computer program, which can be stored in a computer-readable storage medium and can implement the steps of the embodiments of the methods described above when the computer program is executed by a processor. Wherein the computer program comprises computer program code, which may be in the form of source code, object code, an executable file or some intermediate form, etc. The computer readable medium may include at least: any entity or device capable of carrying computer program code, recording medium, computer Memory, Read-Only Memory (ROM), Random-Access Memory (RAM), electrical carrier signals, telecommunications signals, and software distribution media. Such as a usb-disk, a removable hard disk, a magnetic or optical disk, etc. In certain jurisdictions, computer-readable media may not be an electrical carrier signal or a telecommunications signal in accordance with legislative and patent practice.
The present application may also implement all or part of the processes in the method of the foregoing embodiments, and may also be implemented by a computer program product, when the computer program product runs on the floor mopping robot, the steps in the first method embodiment may be implemented when the floor mopping robot is executed, or the steps in the second method embodiment may be implemented when the computer program product runs on the floor mopping robot.
In the above embodiments, the descriptions of the respective embodiments have respective emphasis, and reference may be made to the related descriptions of other embodiments for parts that are not described or illustrated in a certain embodiment.
Those of ordinary skill in the art will appreciate that the various illustrative elements and algorithm steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware or combinations of computer software and electronic hardware. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the implementation. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present application.
In the embodiments provided in the present application, it should be understood that the disclosed apparatus/mopping robot and method may be implemented in other ways. For example, the above-described device/mopping robot embodiments are merely illustrative, e.g., a module or unit may be divided into only one logical function, and other divisions may be realized, e.g., multiple units or components may be combined or integrated into another system, or some features may be omitted, or not executed. In addition, the shown or discussed mutual coupling or direct coupling or communication connection may be an indirect coupling or communication connection through some interfaces, devices or units, and may be in an electrical, mechanical or other form.
Units described as separate parts may or may not be physically separate, and parts displayed as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of the embodiment.
The above embodiments are only used to illustrate the technical solutions of the present application, and not to limit the same; although the present application has been described in detail with reference to the foregoing embodiments, it should be understood by those of ordinary skill in the art that: the technical solutions described in the foregoing embodiments may still be modified, or some technical features may be equivalently replaced; such modifications and substitutions do not substantially depart from the spirit and scope of the embodiments of the present application and are intended to be included within the scope of the present application.