Disclosure of Invention
The invention aims to provide a surface type detection method of a cleaning robot, which solves the problem of misjudgment of the type of a cleaning surface in the background technology.
Specifically, the present invention provides a surface type detecting method of a cleaning robot moving on a cleaning surface, the surface type detecting method including the steps of:
step S1, information acquisition: cleaning surface image data information acquired by a first sensor and motor current information acquired by a second sensor;
and step S2, determining the cleaning surface type according to the acquired information.
Further, the information acquiring step further includes acquiring the flatness information of the cleaning surface by a third sensor.
Further, the step S2 includes:
step S201, judging the current cleaning surface to be a first surface type according to the image data information of the cleaning surface, judging the current cleaning surface to be a second surface type according to the motor current information, and judging the current cleaning surface to be a third surface type according to the flatness information of the cleaning surface;
step S202, a cleaning surface type is obtained according to the first surface type, the second surface type and the third surface type.
Further, the step S202 includes:
if the first surface type corresponds to the material of long-pile carpet, ordinary carpet and non-carpet, different first values A are respectively matched1、A2、A3;
If the second surface type corresponds to the material of long-pile carpet, ordinary carpet and non-carpet, the first values B are matched and matched respectively1、B2、B3;
If the third surface type corresponds to the material of long-pile carpet, ordinary carpet and non-carpet, different third values C are respectively matched1、C2、C3;
And summing the first numerical value, the second numerical value and the third numerical value or calculating a weighted average value to obtain the type of the cleaning surface.
The present invention also provides a method for controlling a surface-based cleaning robot, the method comprising:
a control method of a cleaning robot, obtaining a cleaning surface type of the cleaning robot by the above method, and then performing step S3: and entering a corresponding working mode according to the type of the cleaning surface.
Further, the working modes correspond to different cleaning parameters, and the cleaning parameters are any one or more of the suction capacity of the cleaning robot, the rotating speed of a brush roller or an edge brush of the cleaning robot, the movement of the cleaning robot on the surface, or the opening and closing of a water tank of the cleaning robot.
The second purpose of the present invention is to overcome the drawbacks of the background art, and to provide a mobile robot capable of accurately identifying the type of a cleaning surface and having low implementation cost, the specific solution of which is as follows:
a cleaning robot comprising a drive wheel, a cleaning assembly, and a sensor, the sensor comprising:
a first sensor arranged at the bottom of the machine to detect image data information of a cleaning surface; and
a second sensor disposed on the robot and connected to the driving wheel and/or the cleaning assembly motor to detect a change in current of the driving wheel and/or the cleaning assembly motor; and
and a third sensor configured at the bottom of the robot to detect flatness information of the cleaning surface.
Preferably, the first sensor is an optical flow sensor.
Preferably, the driving wheel and the cleaning assembly are preset to have a normal operating speed and move relative to the cleaning surface, and the second sensor is a PWM duty ratio sensor.
Preferably, the third sensor is one of an infrared sensor and an ultrasonic sensor.
In the embodiment of the invention, the following beneficial effects are achieved: the method has the advantages that the multi-sensor type combination of the cleaning robot is utilized to detect the moving surface environment of the cleaning robot, the detection results of different sensors are comprehensively calculated, so that the type of the current moving surface environment is obtained, the working mode is adjusted according to the surface type, the misjudgment rate of the cleaning robot on the moving surface environment is greatly reduced, and the optimal cleaning effect of the cleaning robot can be realized.
Detailed Description
The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
The invention provides a cleaning robot, which comprises a driving wheel, a cleaning assembly and a sensor, wherein the sensor comprises:
a first sensor configured at the bottom of the robot to detect image parameters of the moving surface of the cleaning robot; and
a second sensor disposed on the robot and connected to the driving wheel and/or the cleaning assembly motor to detect a current change of the driving wheel and/or the cleaning assembly motor; and
and a third sensor configured at the bottom of the robot body to detect a stable value of the cleaning robot in real time under different ground environments.
The current common methods for detecting surface types include: obtaining an image of the cleaning surface through an optical flow sensor, and analyzing the image to obtain the surface type; or the current detection sensor detects the current changes of the driving wheel and the cleaning component motor, the friction force F of the driving wheel and the cleaning component is different when the cleaning robot runs on the surfaces of different materials due to the difference of the friction coefficients mu of the surfaces of different materials, and the voltage U at the two ends of the motor can be controlled and adjusted through PID (proportion integration differentiation) control to ensure that the driving wheel and the cleaning component keep constant-speed movement, so that the power P is increased and the speed V is kept unchanged, so that the current changes of the cleaning robot are different when the cleaning robot runs on the surfaces of different materials, and the surface type can be judged by detecting the current changes of the motor; or detecting a stable value of the cleaning robot when the cleaning robot travels in different surface environments through an infrared sensor. In actual use, the sensor is often used alone, so that misjudgment is easy to occur, and the situation is more serious particularly when a common carpet is distinguished from a long-pile carpet.
Therefore, the invention needs to improve the above problems accordingly, and the invention determines the surface type of the cleaning robot by combining and configuring a plurality of different sensors, thereby effectively reducing the misdetermination of the surface type due to the failure of a single sensor or other environmental factors.
It should be noted that in long-term operation, technicians use different sensors to perform extensive data acquisition for various environmental parameters of surfaces of different materials.
The method is characterized in that a light flow sensor is adopted to analyze and process surface image information of different materials, the image information is the number of bright and dark points of each frame of image (also called quality parameters of the image, hereinafter called quality parameters), the light flow sensor is a double-light-source light flow sensor, a light source comprises an infrared light source and a laser light source, and the quality parameters for identifying different materials in different light source working states are as follows:
under the working condition of an infrared light source, the image quality parameter ranges detected by the long-pile carpet, the common carpet, the ceramic tile and the wood board obtained by analysis and treatment are as follows:
surface material
|
Long-pile carpet
|
Common carpet
|
Ceramic tile
|
Wood board
|
Image quality parameter
|
4075~8035
|
1292~5894
|
446~1495
|
696~6335 |
The image quality parameters of the wood board, the common carpet and the long-pile carpet are crossed, so that under the working condition of an infrared light source, when the optical flow sensor shoots the surface of a material and analyzes and evaluates the surface type, the possibility of misjudgment exists, and the reference value is low.
Under the working condition of a laser light source, the image quality parameter ranges of the long-pile carpet, the common carpet, the ceramic tile and the wood board obtained by analysis and treatment are shown as the following table:
surface material
|
Long-pile carpet
|
Common carpet
|
Ceramic tile
|
Wood board
|
Image quality parameter
|
1736~2793
|
738~1690
|
4219~36044
|
5379~26188 |
It can be seen that the image quality parameter ranges of the ceramic tiles and the wood boards obtained by analysis under the condition of the laser light source are crossed, but the method has no influence on the invention, and the cleaning modes of the ceramic tiles and the wood boards do not have difference under the condition that the surface type is the ceramic tiles or the wood boards, so that the method has little meaning for distinguishing the ceramic tiles and the wood boards. The key point is that the image quality parameters of the long-pile carpet and the common carpet obtained by analysis processing can be well distinguished, which is beneficial to distinguishing the long-pile carpet from the common carpet.
It is therefore a preferred choice for the first sensor to be an optical flow sensor.
In addition, when the cleaning robot travels on the surfaces made of different materials, the friction force applied to the driving wheel and the cleaning component of the cleaning robot is different, because the friction force of the ground material to the driving wheel and the cleaning component is determined by the friction coefficient mu of the ground, and the friction factor mu of the long-pile carpet1>Friction factor mu of common carpet2>Floor or tile friction factor mu3So that the friction force F of the driving wheel and the cleaning component on the long-pile carpet1>Friction force F of common carpet2>Floor or tile friction force F3. When the sweeper moves from a material with a small friction factor (such as ceramic tiles and wood boards) to a material with a large friction factor (such as carpets), the friction force applied to the driving wheel and the cleaning assembly becomes large. Since the power P is F × V, the power F increases and the speed decreases when the power is constant. In order to keep the normal movement speed of the driving wheel and the cleaning assembly, the control unit can regulate the voltage Ud at two ends of the motor by carrying out PID control on the driving wheel and the cleaning assembly, so that the power P is increased, and the speed V is kept unchanged. Assuming that the PWM duty cycle of the drive wheel and cleaning assembly motor is a and the drive plate supply voltage is U, the voltage Ud across the motor is a U. Therefore, in order to ensure that the driving wheel and the cleaning component work normally, the friction force changes more greatly, the duty ratio a of the motor PWM changes more greatly, and therefore the environment parameters can be effectively detected by detecting the PWM duty ratios of the driving wheel and the cleaning component motor。
Referring to fig. 4, the bottom of the cleaning robot 100 is provided with a driving wheel 100 for supporting the cleaning robot, and the cleaning component is a part of the cleaning robot 100 contacting with the cleaning surface, and includes: a brush roll 120 that rolls over the cleaning surface or an edge brush 130 that rotates over the cleaning surface. The environment parameter can be effectively detected by detecting the PWM duty ratio of one of the driving element 100, the brush roller 120, or the side brush 130, and it is not necessary to detect each of the motors, which can effectively improve the accuracy of the detection result, but may increase the cost. Through statistics, when the cleaning robot disclosed by the invention works at a constant speed of 30cm/s, the PWM duty ratio range controlled by the PID of the driving wheel motor is shown in the following table:
surface material
|
Long-pile carpet
|
Common carpet
|
Ceramic tile
|
Wood board
|
PWM duty cycle
|
0.792~0.812
|
0.758~0.786
|
0.723~0.725
|
0.722~0.724 |
It can be seen that the ranges of the PWM duty ratios of the driving wheel motors detected by the sensors are crossed under the conditions of the materials of the ceramic tiles and the wood boards, but the PWM duty ratios do not have any influence on the cleaning method, and in the case that the surface type is the ceramic tiles or the wood boards, the cleaning modes of the ceramic tiles and the wood boards are not different, so that the method for distinguishing the ceramic tiles and the wood boards is not significant to the cleaning method. The key point is that the PWM duty cycle parameters of the driving wheel motor of the long-pile carpet and the driving wheel motor of the common carpet, which are detected by the sensor, can be well distinguished, so that the long-pile carpet and the common carpet can be distinguished.
Therefore, the second sensor adopts the PWM duty ratio sensor to effectively distinguish the surface materials.
In addition, when the cleaning robot travels on the surfaces of different materials, the flatness of the surfaces of different materials is different, and the stable values of the different surfaces can be effectively detected through the infrared sensor or the ultrasonic sensor arranged at the bottom of the main body of the cleaning robot, so that the identification accuracy is improved. This is very obvious from carpet to other materials, but the long pile carpet is not obviously different from the ordinary carpet, so that the parameter is used for distinguishing the carpet from the non-carpet when the floor type is identified, and the parameter is not very effective when the parameter is used for distinguishing the ordinary carpet from the long pile carpet.
Since there is no particularly strict requirement for the detection accuracy of the third sensor, either of the infrared sensor and the ultrasonic sensor may be selected when both of them can function.
In general, a floor of an existing cleaning robot is provided with a cliff sensor for detecting a cliff to prevent the cleaning robot from falling from a high place, and the cliff sensor is generally an infrared sensor. On the premise, the infrared sensor for detecting the flatness of the surface of the material can be replaced by the cliff sensor, so that the cost is saved.
Furthermore, according to the data acquisition result and the description, the invention also provides a surface type detection method, which judges the surface type of the cleaning robot by combining and configuring a plurality of different sensors, thereby effectively reducing the misjudgment of the surface type.
Referring to fig. 1, the surface type detecting method includes the following steps:
step S1, information acquisition: cleaning surface image data information acquired by a first sensor and motor current information acquired by a second sensor;
and step S2, determining the cleaning surface type according to the acquired information.
Specifically, in order to further improve the recognition accuracy, the information acquiring step S1 further includes cleaning surface flatness information data acquired by the third sensor, and the information data is used to assist in determining the type of the cleaning surface.
The cleaning surface image data information, the motor current information and the cleaning surface flatness information are synchronously acquired, so that the response speed of the cleaning robot to the environmental surface can be increased.
As mentioned above, since the detection accuracy of different sensors is different, it is obviously unreasonable to give the same detection accuracy to different sensors, and the determination of the type of the cleaning surface by weighting the detection accuracy of different sensors can effectively reduce the erroneous determination.
Referring to fig. 2, the embodiment of step S2 of the method is to determine that the current cleaning surface is of the first surface type according to the current cleaning surface image data information obtained by the first sensor, determine that the current cleaning surface is of the second surface type according to the motor current information obtained by the second sensor, determine that the current cleaning surface is of the third surface type according to the surface flatness information obtained by the third sensor, and finally determine the cleaning surface type according to the first surface type, the second surface type, and the third surface type.
For the purpose of describing the above process, please refer to fig. 4, and for convenience of describing the present invention, the collected image data information of the cleaning surface, the motor current information and the flatness information of the cleaning surface are respectively defined for different surface types, wherein the collected image data information ranges of the long pile carpet, the normal carpet and the non-carpet are respectively defined as Q1, Q2 and Q3; when the cleaning robot works on the surfaces of long-pile carpets, common carpets and non-carpets respectively, the collected information ranges of the driving wheel and the cleaning component motor current are defined as D1, D2 and D3 respectively; the range of flatness information collected by the cleaning robot when the cleaning robot works on the surfaces of long-pile carpets, common carpets and non-carpets is respectively defined as: u1, U2, U3.
When the surface image data information is judged to be subordinate to Q1, Q2, Q3, different first numerical values A are matched1、A2、A3(ii) a Matching different second values B when judging that the detected motor current information belongs to D1, D2 and D31、B2、B3(ii) a When it is judged that the detected flatness information belongs to U1, U2, U3, a different third value C is matched1、C2、C3. The details are shown in the following table:
surface material
|
Long-pile carpet
|
Common carpet
|
Non-carpet material
|
First value
|
A1 |
A2 |
A3 |
Second numerical value
|
B1 |
B2 |
B3 |
Third value
|
C1 |
C2 |
C3 |
The type of the cleaning surface can be obtained by summing the obtained first, second and third values or by performing a weighted average calculation.
In this embodiment, the obtained first, second and third values are summed to obtain H, and the sum H is compared with a preset data threshold Y to obtain the surface type, where a1=B1=A2+B2+C2,A2=B2>C1=C2The predetermined data threshold comprises a low threshold Y1And a high threshold value Y2,Y1=A2=B2>A3+B3+C3,Y2=A1=B1=A2+B2+C2When H is less than or equal to Y1Then, the surface type is identified as non-carpet material; when Y is1<H≤Y2Then the surface type is identified as a normal carpet; when H > Y2Then the surface type is identified as a long pile carpet. It should be noted that the first, second, and third values are matched by the preset program according to the surface type, and there is no artificial matching process, and the accuracy of result determination is not affected.
When the first sensor detects that the long-pile carpet is misjudged as the common carpet and is matched with the value A2In this case, the second sensor has a very low possibility of detecting another material by erroneous judgment, and the value B is matched by comparing the results detected by the second sensor1Due to A2+B1>Y2And the surface type is correctly judged as a long-pile carpet at this time regardless of the detection result of the third sensor. It is certainly not excluded that the detection result of the first sensor is accurate, and the second sensor has a misjudgment, but the judgment result of the surface type is not affected.
When the first sensor detects that the common carpet is judged as falseNon-carpet material and matching value A3When the material is detected by the first sensor, the first sensor and the second sensor are judged to be the same material, and the result detected by the first sensor is compared to obtain a matching value B2And comparing the result detected by the third sensor with the subsequent matching value C2When H is equal to A3+B2+C2>Y1The surface type is still correctly judged as a normal carpet.
The misjudgment case shows that the invention can effectively correct the misjudgment result, reduce the misjudgment probability and achieve the function of effectively distinguishing the long-pile carpet from the common carpet.
Example (c): let A2=B2=2,C1=C2When 1, then A1=B1=5,Y1=2,Y25, so when H ≦ 2 is detected, then the surface type is identified as non-carpet material; when H is more than 2 and less than or equal to 5, the surface type is identified as a common carpet; when H > 5, the surface type is identified as a long pile carpet.
The above relationship can be distinguished as follows:
1. if one of the first sensor or the second sensor identifies a long pile carpet and the third sensor identifies a carpet, the cleaning robot is calculated to identify the surface type as a long pile carpet, and if the third sensor identifies a non-carpet, the cleaning robot is calculated to identify the surface type as a normal carpet;
2. if one of the first sensor or the second sensor identifies the surface type as a normal carpet and the other one as a non-carpet, when the third sensor identifies a carpet, the cleaning robot is calculated to identify the surface type as a normal carpet, and when the third sensor identifies a non-carpet, the cleaning robot is calculated to identify the surface type as a non-carpet surface;
3. if the first sensor and the second sensor are both identified as long-pile carpets, the cleaning robot identifies the surface type as long-pile carpets by calculation regardless of the identification result of the third sensor;
4. if the first sensor and the second sensor are both recognized as the common carpet, the cleaning robot recognizes the surface type as the common carpet through calculation regardless of the recognition result of the third sensor;
5. if both the first sensor and the second sensor identify the surface type as non-carpet, the cleaning robot is calculated to identify the surface type as a non-carpet surface regardless of the third sensor identification.
It can be seen that the third sensor can function as an aid in identifying the type of surface in cases 1 and 2, reducing the possibility of erroneous cleaning operations due to erroneous determinations by a particular sensor. In cases 3, 4, and 5, however, the detection result of the third sensor has no influence on the surface type detection result.
Further, referring to fig. 1, when the cleaning robot detects the type of the surface according to the detection method, the control system adjusts the working mode corresponding to different cleaning parameters, which include: any one or more of a suction capacity of the cleaning robot, a rotational speed of a brush roller or side brush of the cleaning robot, a movement of the cleaning robot over the surface, or an opening and closing of a water tank of the cleaning robot.
Referring to fig. 5, in an embodiment of the control method, if the cleaning robot does not have the water tank cleaning mode, and the cleaning robot determines that the current working environment is a long-pile carpet, the cleaning robot turns off the brush roller and the side brush to increase the suction force of the fan to remove the carpet debris in order to avoid damaging the carpet; when the cleaning robot judges that the current environment is a common carpet, in order to improve the cleaning efficiency, the cleaning robot increases the rotating speed of the brush roll and the suction force of the fan, and removes carpet garbage; when the cleaning robot judges that the current environment is not a carpet, the cleaning robot keeps a common sweeping mode for saving energy. If the cleaning robot has a water tank cleaning mode, when the cleaning robot determines that the current environment is a carpet (including a long pile carpet and a normal carpet), to avoid wetting the carpet, the cleaning robot program will first turn off the water tank, suck the water in the water tank, then mark a carpet mark on the map, and adjust the direction (rotate 180 degrees) to leave the carpet. When leaving the carpet, the cleaning robot switches back to the previous mode to scrub the floor.
The above disclosure is only for the purpose of illustrating the preferred embodiments of the present invention, and it is therefore to be understood that the invention is not limited by the scope of the appended claims.