Control method and device of D-type sweeping robot and D-type sweeping robot
By extracting the obstacle profile and controlling the movement of the D-type sweeping robot to make its direction parallel to the obstacle profile, the problem of the D-type sweeping robot's edge cleaning time and distance and missing sweeping problems is solved, and a more accurate edge cleaning effect is achieved.
Patent Information
- Application Number
- CN202510362023.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-03-25
- Publication Date
- 2025-06-13
AI Technical Summary
When cleaning the D-type sweeping robot, due to the limitation of the body structure, it is difficult to effectively apply the grip, resulting in too long cleaning time and distance, and easy to cause scan leakage.
By extracting the contour lines of the obstacle, when the contour lines are straight, the D-type sweeping robot is controlled to move to the specified angle to the angle with the contour lines of the obstacles. Based on the preset linear velocity, preset distance and angle, the angular velocity is calculated, and the robot is controlled to move at the preset linear velocity and angular velocity until it is parallel to the contour lines of the obstacles, and the specified side is spaced a preset distance from the contour lines of the obstacles.
It shortens the movement time and distance during edge cleaning, reduces the probability of missing sweeping problems, and improves the accuracy of edge cleaning.
Smart Images

Figure CN120130856A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the technical field of intelligent robots, and particularly to a control method, device, and D-shaped floor sweeping robot for a D-shaped floor sweeping robot. Background Art
[0002] A floor sweeping robot, also known as an automatic cleaning machine, intelligent vacuum cleaner, robot vacuum cleaner, etc., is a type of intelligent household appliance that can automatically complete floor cleaning work in a room by virtue of a certain degree of artificial intelligence. Floor sweeping robots generally use a brushing and vacuuming method to first suck in floor debris into their own dust collection box, thereby realizing the function of floor cleaning. Generally speaking, robots that complete cleaning, vacuuming, and mopping work are also uniformly classified as floor sweeping robots.
[0003] Currently, floor sweeping robots are generally divided into circular floor sweeping robots and D-shaped floor sweeping robots. Among them, the front half of the D-shaped floor sweeping robot is a rectangular structure, and the rear half is a semi-circular structure. For example, Figure 1 is a schematic diagram of the installation position of a D-shaped floor sweeping robot and its detection sensors. Among them, as Figure 1 shown, taking the orientation of the D-shaped floor sweeping robot as the front direction of the D-shaped floor sweeping robot, and the orientation of the D-shaped floor sweeping robot is perpendicular to the length of the rectangular structure of the D-shaped floor sweeping robot. Furthermore, the left and right sides of the above orientation can be used as the left and right sides of the rectangular structure of the D-shaped floor sweeping robot, respectively.
[0004] Generally, during the cleaning process, the movement of the D-shaped floor sweeping robot includes: rotating in place, moving forward, and moving backward; where moving forward means that the D-shaped floor sweeping robot moves along its orientation, and moving backward means that the D-shaped floor sweeping robot moves along the opposite direction of its orientation. In addition, as Figure 1 shown, since sensors are only installed on the right side of the rectangular structure of the D-shaped floor sweeping robot, during the cleaning process, it is stipulated that the D-shaped floor sweeping robot only performs right-edge cleaning.
[0005] In the related art, when the D-shaped floor sweeping robot detects an obstacle in front and the contour line of the obstacle is a straight line, it will control the D-shaped floor sweeping robot to rotate in place to a direction parallel to the contour line of the obstacle while maintaining a safe distance from the contour line of the obstacle, and the right side of the D-shaped floor sweeping robot is closer to the obstacle than the left side of the D-shaped floor sweeping robot. Among them, the so-called left side of the D-shaped floor sweeping robot refers to the left side of the rectangular structure of the D-shaped floor sweeping robot, and the right side of the D-shaped floor sweeping robot refers to the right side of the rectangular structure of the D-shaped floor sweeping robot.
[0006] However, in the above related technologies, the edge cleaning requirements of the D-shaped floor sweeping robot are not fully considered. Among them, due to the structural limitations of the D-shaped body, when the orientation of the D-shaped floor sweeping robot is parallel to the contour line of the obstacle, the distance between its right side and the obstacle may be too large, resulting in a long time and movement distance required for the floor sweeping robot to clean along the edge, and there will also be a problem of missed cleaning. Summary of the Invention
[0007] The purpose of the embodiments of the present application is to provide a control method, device and D-shaped floor sweeping robot for a D-shaped floor sweeping robot, so as to shorten the movement time and distance during edge cleaning, reduce the occurrence probability of missed cleaning problems at the same time, and achieve a more accurate edge cleaning effect. The specific technical solutions are as follows:
[0008] In the first aspect, the present application provides a control method for a D-shaped floor sweeping robot, and the method includes:
[0009] When it is determined that the D-shaped floor sweeping robot detects an obstacle, extract the obstacle contour line of the obstacle;
[0010] When the obstacle contour line is a straight line, control the D-shaped floor sweeping robot to move until the included angle between the orientation of the D-shaped floor sweeping robot and the obstacle contour line reaches a specified angle;
[0011] Based on the preset linear velocity, preset distance, the included angle, the radius of the semi-circular structure of the D-shaped floor sweeping robot, and the target distance between the center point of the D-shaped floor sweeping robot and the obstacle contour line, calculate the angular velocity of the D-shaped floor sweeping robot; wherein, the preset distance is set based on the cleaning range of the cleaning device of the D-shaped floor sweeping robot;
[0012] Control the D-shaped floor sweeping robot to move at the preset linear velocity and the angular velocity until the orientation is parallel to the obstacle contour line, and a specified side of the D-shaped floor sweeping robot is spaced from the obstacle contour line by the preset distance; wherein, the specified side is the side provided with the sensor.
[0013] In the second aspect, the present application provides a D-shaped floor sweeping robot, and the D-shaped floor sweeping robot includes a detection sensor and a processor;
[0014] The detection sensor is used for detecting obstacles during the movement of the D-shaped floor sweeping robot;
[0015] The processor is used for executing the control method of the D-shaped floor sweeping robot described in any one of the above when the detection sensor detects an obstacle.
[0016] In the third aspect, the present application provides a control device for a D-shaped floor sweeping robot, and the device includes:
[0017] A contour line extraction module, configured to extract the obstacle contour line of an obstacle when it is determined that a D-shaped floor cleaning robot detects an obstacle;
[0018] A first control module, configured to control the movement of the D-shaped floor cleaning robot until the included angle between the orientation of the D-shaped floor cleaning robot and the obstacle contour line reaches a specified angle when the obstacle contour line is a straight line;
[0019] A speed calculation module, configured to calculate the angular velocity of the D-shaped floor cleaning robot based on a preset linear velocity, a preset distance, the included angle, the radius of the semi-circular structure of the D-shaped floor cleaning robot, and the target distance between the center point of the D-shaped floor cleaning robot and the obstacle contour line; wherein, the preset distance is set based on the cleaning range of the cleaning device of the D-shaped floor cleaning robot;
[0020] A second control module, configured to control the D-shaped floor cleaning robot to move at the preset linear velocity and the angular velocity until the orientation is parallel to the obstacle contour line, and a specified side of the D-shaped floor cleaning robot is spaced from the obstacle contour line by the preset distance; wherein, the specified side is the side provided with a sensor.
[0021] In a fourth aspect, the present application provides an electronic device, including:
[0022] A memory, configured to store a computer program;
[0023] A processor, configured to implement the control method of the D-shaped floor cleaning robot as described in any one of the above when executing the program stored in the memory.
[0024] In a fifth aspect, the present application provides a computer-readable storage medium, in which a computer program is stored, and when the computer program is executed by a processor, the control method of the D-shaped floor cleaning robot as described in any one of the above is implemented.
[0025] The embodiments of the present application further provide a computer program product including instructions, and when it runs on a computer, it causes the computer to execute the control method of the D-shaped floor cleaning robot as described in any one of the above.
[0026] Beneficial effects of the embodiments of the present application:
[0027] As can be seen above, when applying the solution provided by the embodiments of the present application to determine that the D-shaped floor sweeping robot detects an obstacle, the obstacle contour line of the above-mentioned obstacle can be extracted. When the obstacle contour line is a straight line, the movement of the D-shaped floor sweeping robot can be controlled until the angle between its orientation and the above-mentioned obstacle contour line reaches a specified angle. After that, based on the preset linear velocity, preset distance, the above-mentioned angle, the radius of the semi-circular structure of the above-mentioned D-shaped floor sweeping robot, and the target distance between the center point of the above-mentioned D-shaped floor sweeping robot and the above-mentioned obstacle contour line, the angular velocity of the above-mentioned D-shaped floor sweeping robot can be calculated. Furthermore, the movement of the above-mentioned D-shaped floor sweeping robot can be controlled to move at the above-mentioned preset linear velocity and the calculated angular velocity until its orientation is parallel to the above-mentioned obstacle contour line, and the specified side thereof is spaced from the above-mentioned obstacle contour line by the above-mentioned preset distance.
[0028] Among them, the above-mentioned preset distance is set based on the cleaning range of the cleaning device of the D-shaped floor sweeping robot. Therefore, by setting a smaller above-mentioned preset distance, the distance between the specified side of the D-shaped floor sweeping robot and the obstacle when its orientation is parallel to the above-mentioned obstacle contour line can be reduced, so that the cleaning device of the D-shaped floor sweeping robot can cover more or even all of the ground between the above-mentioned preset distances, greatly reducing the cleaning dead corners and missed cleaning phenomena, and achieving a more precise edge cleaning effect. Moreover, during the control process of the above-mentioned D-shaped floor sweeping robot, the movement of the D-shaped floor sweeping robot can be controlled to move until its orientation is parallel to the above-mentioned obstacle contour line, and the specified side is spaced from the obstacle contour line by the preset distance, without having to control the D-shaped floor sweeping robot to move to reduce the distance between its specified side and the obstacle after controlling the D-shaped floor sweeping robot to move until its orientation is parallel to the above-mentioned obstacle contour line. Therefore, the time and movement distance required for the D-shaped floor sweeping robot to perform edge cleaning can be shortened.
[0029] Based on this, by applying the solution provided by the embodiments of the present application, the structural characteristics of the D-shaped floor sweeping robot body and the detection sensor resources carried by it can be fully utilized, and a more precise edge cleaning effect can be achieved through optimizing the control strategy. Compared with the related art, the solution provided by the embodiments of the present application can not only shorten the movement time and distance during edge cleaning, but also reduce the occurrence probability of the missed cleaning problem.
[0030] Of course, it is not necessary for any product or method implementing the present application to achieve all the above-mentioned advantages simultaneously. BRIEF DESCRIPTION OF THE DRAWINGS
[0031] In order to more clearly illustrate the technical solutions in the embodiments of the present application or the prior art, the following will briefly introduce the drawings required for use in the description of the embodiments or the prior art. Obviously, the following drawings are only some embodiments of the present application, and those of ordinary skill in the art can also obtain other embodiments based on these drawings.
[0032] Figure 1 It is a schematic diagram of a D-shaped floor sweeping robot and the installation positions of its detection sensors;
[0033] Figure 2 It is a schematic diagram of an emergency situation between a D-shaped floor sweeping robot and the contour line of an obstacle;
[0034] Figure 3 It is a schematic flow diagram of the first control method for the D-shaped floor sweeping robot provided by the embodiment of the present application;
[0035] Figure 4 It is Figure 1 a schematic diagram of the pose where the included angle between the orientation of the D-shaped floor sweeping robot shown and the contour line of the obstacle reaches a specified angle;
[0036] Figure 5 It is Figure 1 a schematic diagram of the angular velocity calculation principle of the D-shaped floor sweeping robot shown;
[0037] Figure 6 It is a schematic flow diagram of the second control method for the D-shaped floor sweeping robot provided by the embodiment of the present application;
[0038] Figure 7 It is a schematic flow diagram of the third control method for the D-shaped floor sweeping robot provided by the embodiment of the present application;
[0039] Figure 8 It is a schematic flow diagram of the fourth control method for the D-shaped floor sweeping robot provided by the embodiment of the present application;
[0040] Figure 9 It is Figure 1 a schematic diagram of the pose where the included angle between the orientation of the D-shaped floor sweeping robot shown and the contour line of the obstacle reaches a preset angle;
[0041] Figure 10 It is a schematic flow diagram of the fifth control method for the D-shaped floor sweeping robot provided by the embodiment of the present application;
[0042] Figure 11 It is a schematic flow diagram of the sixth control method for the D-shaped floor sweeping robot provided by the embodiment of the present application;
[0043] Figure 12 It is Figure 1 a schematic diagram of the pose where the orientation of the D-shaped floor sweeping robot shown is perpendicular to the contour line of the obstacle and points to the contour line of the obstacle;
[0044] Figure 13 It is a schematic flow diagram of the seventh control method for the D-shaped floor sweeping robot provided by the embodiment of the present application;
[0045] Figure 14 Schematic flow chart of the eighth control method for D-shaped floor cleaning robot provided by an embodiment of the present application;
[0046] Figure 15 Taking Figure 1 the shown D-shaped floor cleaning robot with a preset angle of 30 degrees as an example of a specific implementation method;
[0047] Figure 16 Schematic structural diagram of a D-shaped floor cleaning robot provided by an embodiment of the present application;
[0048] Figure 17 Schematic structural diagram of a control device for a D-shaped floor cleaning robot provided by an embodiment of the present application;
[0049] Figure 18 Schematic structural diagram of an electronic device provided by an embodiment of the present application. Specific embodiments
[0050] Next, the technical solutions in the embodiments of the present application will be clearly and completely described in conjunction with the accompanying drawings in the embodiments of the present application. Obviously, the described embodiments are only a part of the embodiments of the present application, rather than all the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art based on the present application belong to the scope of protection of the present application.
[0051] In the related art, when a D-shaped floor cleaning robot detects an obstacle in front and the contour line of the obstacle is a straight line, it will control the D-shaped floor cleaning robot to rotate in place to a direction parallel to the contour line of the obstacle on the premise of maintaining a safe distance from the contour line of the obstacle, and the designated side of the D-shaped floor cleaning robot is closer to the obstacle compared to the left side of the D-shaped floor cleaning robot. However, due to the structural limitations of the D-shaped body, when the orientation of the D-shaped floor cleaning robot is parallel to the contour line of the obstacle, the distance between its designated side and the obstacle may be too large, resulting in the need for a long time and movement distance for the floor cleaning machine to achieve effective edge cleaning, thereby causing missed cleaning problems. Among them, the designated side is the side where the sensor is set. The sensor set on the designated side can be a designated sensor, for example, it can be sensors such as PSD (Position Sensitive Detector) and TOF (Time of flight) sensors.
[0052] To solve the above technical problems, an embodiment of the present application provides a control method for a D-shaped floor cleaning robot.
[0053] Among them, this method can be applicable to various application scenarios for controlling a D-shaped floor cleaning robot to perform cleaning work. For example, the D-shaped floor cleaning robot cleans the floors of each room in a home scenario, or for another example, the D-shaped floor cleaning robot cleans the floors of each office area in an office scenario, etc. Moreover, the execution entity of this method can be the D-shaped floor cleaning robot itself equipped with a data processing module, or it can also be other electronic devices that can communicate with the D-shaped floor cleaning robot and are used to control the D-shaped floor cleaning robot. For example, in a smart home scenario, intelligent mobile devices such as mobile phones and tablet computers installed with the control client of the D-shaped floor cleaning robot, hereinafter referred to as the execution entity.
[0054] Based on this, the embodiments of this application do not specifically limit the application scenario and execution entity of this method.
[0055] A control method for a D-shaped floor cleaning robot provided by an embodiment of this application may include the following steps:
[0056] When it is determined that the D-shaped floor cleaning robot detects an obstacle, extract the obstacle contour line of the obstacle;
[0057] When the obstacle contour line is a straight line, control the D-shaped floor cleaning robot to move until the included angle between the orientation of the D-shaped floor cleaning robot and the obstacle contour line reaches a specified angle;
[0058] Based on a preset linear velocity, a preset distance, the included angle, the radius of the semi-circular structure of the D-shaped floor cleaning robot, and the target distance between the center point of the D-shaped floor cleaning robot and the obstacle contour line, calculate the angular velocity of the D-shaped floor cleaning robot; wherein, the preset distance is set based on the cleaning range of the cleaning device of the D-shaped floor cleaning robot;
[0059] Control the D-shaped floor cleaning robot to move at the preset linear velocity and the angular velocity until the orientation is parallel to the obstacle contour line, and a specified side of the D-shaped floor cleaning robot is spaced from the obstacle contour line by the preset distance; wherein, the specified side is the side provided with a sensor.
[0060] As can be seen above, when applying the solution provided by the embodiments of the present application to determine that the D-shaped floor sweeping robot detects an obstacle, the obstacle contour line of the above-mentioned obstacle can be extracted. When the obstacle contour line is a straight line, the movement of the D-shaped floor sweeping robot can be controlled until the angle between its orientation and the above-mentioned obstacle contour line reaches a specified angle. Then, based on the preset linear velocity, preset distance, the above-mentioned angle, the radius of the semi-circular structure of the above-mentioned D-shaped floor sweeping robot, and the target distance between the center point of the above-mentioned D-shaped floor sweeping robot and the above-mentioned obstacle contour line, the angular velocity of the above-mentioned D-shaped floor sweeping robot can be calculated. Furthermore, the movement of the above-mentioned D-shaped floor sweeping robot can be controlled to move at the above-mentioned preset linear velocity and the calculated angular velocity until its orientation is parallel to the above-mentioned obstacle contour line, and its specified side is spaced from the above-mentioned obstacle contour line by the above-mentioned preset distance.
[0061] Among them, the above-mentioned preset distance is set based on the cleaning range of the cleaning device of the D-shaped floor sweeping robot. Therefore, by setting a smaller above-mentioned preset distance, the distance between the specified side of the D-shaped floor sweeping robot and the obstacle when its orientation is parallel to the above-mentioned obstacle contour line can be reduced, so that the cleaning device of the D-shaped floor sweeping robot can cover more or even all of the ground between the above-mentioned preset distances, greatly reducing the cleaning dead corners and missed cleaning phenomena, and achieving a more precise edge cleaning effect. Moreover, during the control process of the above-mentioned D-shaped floor sweeping robot, the movement of the D-shaped floor sweeping robot can be controlled to move until its orientation is parallel to the above-mentioned obstacle contour line and the specified side is spaced from the obstacle contour line by the preset distance, without having to control the D-shaped floor sweeping robot to move to reduce the distance between its specified side and the obstacle after its orientation is parallel to the above-mentioned obstacle contour line. Therefore, the time and movement distance required for the D-shaped floor sweeping robot to perform edge cleaning can be shortened.
[0062] Based on this, by applying the solution provided by the embodiments of the present application, the structural characteristics of the D-shaped floor sweeping robot body and the detection sensor resources carried by it can be fully utilized, and a more precise edge cleaning effect can be achieved by optimizing the control strategy. Compared with the related technology, the solution provided by the embodiments of the present application can not only shorten the movement time and distance during edge cleaning, but also reduce the occurrence probability of the missed cleaning problem.
[0063] To facilitate the understanding of a control method for a D-shaped floor sweeping robot provided by the embodiments of the present application, before specifically describing the solution provided by the embodiments of the present application, first, Figure 1 Taking the schematic diagram of the installation positions of a D-shaped floor sweeping robot and its detection sensors shown as an example, a brief description of the D-shaped floor sweeping robot is given.
[0064] As Figure 1As shown, the front half of the D-shaped floor sweeping robot has a rectangular structure, and the rear half has a semi-circular structure. The length and width of the rectangular structure in the front half are L 1 and L 2 , and the radius of the semi-circular structure in the rear half is R (L 1 = 2R). The direction perpendicular to the length of the rectangle in the front half and pointing from the semi-circular structure to the rectangular structure is defined as the orientation of the D-shaped floor sweeping robot, and the direction indicated by this orientation is defined as the front of the D-shaped floor sweeping robot. An RGB camera is installed on the top of the D-shaped floor sweeping robot, a line laser sensor is configured in the front, and a PSD (Position Sensitive Detector) / TOF (Time of flight) sensor is installed on the right. In addition, bumper plates are installed on the left, front, and right sides of the D-shaped floor sweeping robot respectively, and a side brush for floor cleaning is installed at the upper right corner of the rectangular structure. In this embodiment, the specified side is the right side. Figure 1 It is only a D-shaped floor sweeping robot of a structural type provided by this application.
[0065] Among them, the RGB camera is used for visual positioning and cannot detect obstacles around the D-shaped floor sweeping robot. The line laser sensor and PSD / TOF sensor are used to detect obstacles in the short-distance range around the D-shaped floor sweeping robot. The line laser sensor can detect the distance of obstacles in a fan-shaped plane, and the PSD / TOF sensor can detect the distance of obstacles on the camera emitted from the emission point. And, because Figure 1 no detection sensor is installed on the left side of the D-shaped floor sweeping robot in Figure 1 , for the D-shaped floor sweeping robot in
[0066] it is stipulated that this D-shaped floor sweeping robot only performs right-edge cleaning.
[0067] If a sensor is installed on the left side of the D-shaped floor sweeping robot and no detection sensor is installed on the right side, at this time, it is stipulated that this D-shaped floor sweeping robot only performs left-edge cleaning.
[0068] Among them, the above-mentioned emergency point is the point on the obstacle detected by the above-mentioned line laser sensor and PSD / TOF sensor when detecting an obstacle. Usually, the above-mentioned emergency point can be the point on the detected obstacle that is closest to the body of the D-type floor sweeping robot. The detection of an obstacle by the above-mentioned line laser sensor and PSD / TOF sensor can also be referred to as the D-type floor sweeping robot detecting an obstacle.
[0069] When the control module of the D-type floor sweeping robot receives the above-mentioned emergency signal, it can control the D-type floor sweeping robot to stop moving immediately and extract the contour line of the obstacle (i.e., the obstacle contour line) in the above-mentioned obstacle map according to the above-mentioned emergency point. When the extracted obstacle contour line is a straight line, the control module of the D-type floor sweeping robot can activate the side-attached diagonal mode for the obstacle contour line. Among them, the so-called side-attached diagonal means that the D-type floor sweeping robot rotates to face parallel to the obstacle contour line and the specified side fits with the obstacle contour line.
[0070] That is, when the D-type floor sweeping robot detects an obstacle and the extracted obstacle contour line is a straight line, the above-mentioned control module can start to execute the steps in a control method of a D-type floor sweeping robot provided in an embodiment of the present application.
[0071] For example, Figure 2 is a schematic diagram of the positional relationship between the straight-line contour line of an obstacle detected by a D-type floor sweeping robot and the D-type floor sweeping robot. Figure 2 A sensor of a D-type floor sweeping robot is arranged on the right side. Among them, Figure 2 the obstacle contour line in is the straight-line contour line of the obstacle detected by the D-type floor sweeping robot, Figure 2 which can also be referred to as a schematic diagram of the D-type floor sweeping robot having an emergency with the obstacle contour line.
[0072] Among them, the above-mentioned collision detection module and control module can be mounted on the D-type floor sweeping robot, or can be functional modules in other electronic devices that can communicate with the D-type floor sweeping robot and are used to control the D-type floor sweeping robot, that is, the above-mentioned control module is a functional module in the execution body of a control method of a D-type floor sweeping robot provided in an embodiment of the present application.
[0073] It should be emphasized that Figure 1 the RGB camera and each sensor mounted on the D-type floor sweeping robot shown in are only examples of the image acquisition devices and sensors installed on the D-type floor sweeping robot, rather than limitations. Other D-type floor sweeping robots with image acquisition devices and sensors having the same function but different types also belong to the protection scope of the embodiments of the present application.
[0074] Based on the above brief description of the D-type floor cleaning robot, below, with reference to the accompanying drawings, a control method for a D-type floor cleaning robot provided by an embodiment of the present application will be specifically described.
[0075] Figure 3 It is a schematic flowchart of a control method for a D-type floor cleaning robot provided by an embodiment of the present application. As Figure 3 shown, the control method may include the following steps S301 - S304.
[0076] S301: When it is determined that the D-type floor cleaning robot detects an obstacle, extract the obstacle contour line of the obstacle.
[0077] As described above, during the operation of the D-type floor cleaning robot, an obstacle map of the current scene where the D-type floor cleaning robot is located can be created based on the environmental data detected by the installed line laser sensor and PSD / TOF sensor. And, according to the current posture of the D-type floor cleaning robot and the map information of the above obstacle map, it can be detected in real time whether the above line laser sensor and PSD / TOF sensor detect an obstacle, so that a collision will occur if the D-type floor cleaning robot continues to move forward. Among them, the line laser sensor and PSD / TOF sensor can be referred to as detection sensors.
[0078] In this way, when the above detection sensors detect an obstacle, such that a collision will occur if the D-type floor cleaning robot continues to move forward, the execution entity can determine that the D-type floor cleaning robot detects an obstacle. Furthermore, the obstacle contour line of the detected obstacle can be extracted from the above obstacle map.
[0079] Among them, when the above detection sensors detect an obstacle, the execution entity can determine an emergency point located on the detected obstacle. Thus, the execution entity can search for this emergency point in the above obstacle map, and based on this emergency point, through techniques such as edge detection, extract the obstacle contour line of the detected obstacle in the above obstacle map.
[0080] S302: When the obstacle contour line is a straight line, control the movement of the D-type floor cleaning robot until the angle between the orientation of the D-type floor cleaning robot and the obstacle contour line reaches a specified angle.
[0081] After extracting the above obstacle contour line, the execution entity can determine whether the above obstacle contour line is a straight line to determine whether to activate the side-attachment diagonal mode for this obstacle contour line, that is, to determine whether to control the D-type floor cleaning robot to rotate until its orientation is parallel to the obstacle contour line and the specified side is in contact with the obstacle contour line.
[0082] In this way, when the executing entity determines that the contour line of the obstacle is a straight line, it can first control the D-shaped floor sweeping robot to move until the angle between the orientation of the D-shaped floor sweeping robot and the contour line of the obstacle reaches a specified angle.
[0083] Take Figure 1 the D-shaped floor sweeping robot shown in Figure 4 as an example. As shown in Figure 4 , when the contour line of the obstacle is extracted and the contour line of the obstacle is a straight line, the D-shaped floor sweeping robot can be controlled to move to the
[0084] shown posture, where the angle value of the angle θ between the orientation of the D-shaped floor sweeping robot and the contour line of the obstacle is the specified angle.
[0085] S303: Calculate the angular velocity of the D-shaped floor sweeping robot based on the preset linear velocity, preset distance, included angle, the radius of the semi-circular structure of the D-shaped floor sweeping robot, and the target distance between the center point of the D-shaped floor sweeping robot and the contour line of the obstacle.
[0086] The preset distance is set based on the cleaning range of the cleaning device of the D-shaped floor sweeping robot.
[0087] Similarly, take Figure 1 the D-shaped floor sweeping robot shown in Figure 5 as an example. As shown in Figure 4 , in order to achieve the edge alignment of the D-shaped floor sweeping robot with the contour line of the obstacle, it is necessary to control the D-shaped floor sweeping robot to move from the Figure 5 shown posture to a posture where the orientation is parallel to the contour line of the obstacle and the right side is spaced a preset distance from the contour line of the obstacle, that is, it is necessary to control the D-shaped floor sweeping robot to move from the Figure 5 shown posture 1 to posture 2. Furthermore, considering that in the process of controlling the D-shaped floor sweeping robot to move from the Figure 5 shown posture 1 to posture 2, the D-shaped floor sweeping robot performs a curvilinear motion. In order to achieve the curvilinear motion of the D-shaped floor sweeping robot, it is necessary to control the D-shaped floor sweeping robot to perform a rotational motion and a linear motion simultaneously. Therefore, it is necessary to determine the angular velocity and linear velocity of the D-shaped floor sweeping robot during the above-mentioned motion process.
[0088] According to the structural characteristics and hardware characteristics of the D-shaped floor sweeping robot, the linear velocity of the D-shaped floor sweeping robot can be preset in advance, that is, the preset linear velocity of the D-shaped floor sweeping robot is a known fixed value. Furthermore, as shown in Figure 5As shown in the figure, by combining relevant physical and geometric principles, the angular velocity of the D-shaped floor sweeping robot can be calculated based on the above-mentioned preset linear velocity, preset distance, the above-mentioned included angle, the radius of the semi-circular structure of the D-shaped floor sweeping robot, and the target distance between the center point of the D-shaped floor sweeping robot and the obstacle contour line.
[0089] Among them, the center point of the above-mentioned D-shaped floor sweeping robot is the center of the semi-circular structure of the D-shaped floor sweeping robot.
[0090] The above-mentioned preset distance is the distance expected between the specified side of the D-shaped floor sweeping robot and the obstacle contour line when it is assumed that the D-shaped floor sweeping robot moves until its orientation is parallel to the obstacle contour line. It can also be called the edge distance along the specified side. It is set based on the cleaning range of the cleaning device of the D-shaped floor sweeping robot. When the specified side is the right side, the above-mentioned preset distance is the distance expected between its right side and the obstacle contour line when it is assumed that the D-shaped floor sweeping robot moves until its orientation is parallel to the obstacle contour line; when the specified side is the left side, the above-mentioned preset distance is the distance expected between its left side and the obstacle contour line when it is assumed that the D-shaped floor sweeping robot moves until its orientation is parallel to the obstacle contour line. Thus, compared with the above-mentioned related technologies, a smaller preset distance can be set based on the above-mentioned cleaning range, so that the cleaning device of the D-shaped floor sweeping robot can cover as much as possible the ground area between the D-shaped floor sweeping robot and the obstacle, and even can fully cover the above-mentioned ground area, so as to greatly reduce the cleaning dead corners and missed cleaning phenomena. For example, it can be set that the above-mentioned preset distance is less than the maximum distance that the cleaning device of the D-shaped floor sweeping robot can reach in the direction perpendicular to the above-mentioned orientation when the orientation of the D-shaped floor sweeping robot is parallel to the obstacle contour line.
[0091] As mentioned above, when the preset linear velocity of the D-shaped floor sweeping robot is a known fixed value, the radius of motion of the D-shaped floor sweeping robot during the above-mentioned curvilinear motion can be further determined. Thus, using the above-mentioned preset linear velocity and the above-mentioned radius of motion, the angular velocity of the D-shaped floor sweeping robot can be determined.
[0092] Based on this, optionally, in a specific implementation manner, as Figure 6 shown, the above-mentioned step S303 may include the following steps S3031-S3032.
[0093] S3031: Calculate the radius of motion based on the preset distance, included angle, the radius of the semi-circular structure of the D-shaped floor sweeping robot, and the target distance between the center point of the D-shaped floor sweeping robot and the obstacle contour line.
[0094] In this specific implementation manner, the above-mentioned radius of motion can be calculated first based on the above-mentioned preset distance, the above-mentioned included angle, the radius of the semi-circular structure of the D-shaped floor sweeping robot, and the target distance between the center point of the D-shaped floor sweeping robot and the above-mentioned obstacle contour line.
[0095] Specifically, taking the D-shaped floor cleaning robot shown in Figure 1 as an example, as shown in Figure 5 , the above-mentioned preset distance is ξ, and an arc is used to connect the starting position and the desired position of the D-shaped floor cleaning robot, that is, an arc is used to connect the Figure 5 shown pose 1 and pose 2. The radius of this arc is the above-mentioned movement radius, which can be denoted as r. Furthermore, when calculating the above-mentioned movement radius, the target distance between the center point of the D-shaped floor cleaning robot and the above-mentioned extracted obstacle contour line (that is, the Figure 5 original obstacle contour line in Figure 5 ) can be determined first. After that, it is assumed that the original obstacle contour line is translated (R + ξ) distance in the direction of the center point of the D-shaped floor cleaning robot to obtain a new obstacle contour line (that is, the ′ translated obstacle contour line in ′ ). In this way, the distance L between the center point of the D-shaped floor cleaning robot and the new obstacle contour line can be obtained
[0096] . After that, using relevant geometric principles, the above-mentioned movement radius can be calculated based on the above-mentioned distance L
[0097]
[0098] L ′ = L - (R + ξ) (2)
[0099] where r is the movement radius, θ is the angle between the orientation of the above-mentioned D-shaped floor cleaning robot and the obstacle contour line, L is the target distance between the center point of the above-mentioned D-shaped floor cleaning robot and the obstacle contour line, R is the radius of the semi-circular structure of the above-mentioned D-shaped floor cleaning robot, and ξ is the above-mentioned preset distance. In the above formula (1), the angular value of the above-mentioned angle θ is the above-mentioned specified angle.
[0100] S3032: Calculate the ratio of the preset linear velocity to the movement radius to obtain the angular velocity of the D-shaped floor cleaning robot.
[0101] In this specific implementation manner, after calculating the above-mentioned movement radius, according to relevant physical principles, the ratio of the preset linear velocity to the movement radius can be calculated and this ratio can be used as the angular velocity of the above-mentioned D-shaped floor cleaning robot.
[0102] where the above-mentioned angular velocity can be calculated by the following formula (3).
[0103]
[0104] where W is the above-mentioned angular velocity, V is the above-mentioned preset linear velocity, and r is the above-mentioned movement radius.
[0105] S304: Control the D-shaped floor sweeping robot to move at a preset linear velocity and angular velocity until its orientation is parallel to the contour line of the obstacle, and a preset distance is maintained between the specified side of the D-shaped floor sweeping robot and the contour line of the obstacle.
[0106] After calculating the above angular velocity, the execution entity can control the D-shaped floor sweeping robot to move at the above preset linear velocity and the above angular velocity until the orientation of the D-shaped floor sweeping robot is parallel to the contour line of the above obstacle, and furthermore, a preset distance is maintained between the specified side of the D-shaped floor sweeping robot and the contour line of the obstacle. Thus, when the contour line of the extracted obstacle is a straight line, the D-shaped floor sweeping robot completes the diagonal edge following of the above obstacle contour line.
[0107] Similarly, taking the Figure 1 D-shaped floor sweeping robot shown in Figure 5 as an example, as shown in Figure 5 , that is, after calculating the above angular velocity, the execution entity controls the D-shaped floor sweeping robot to move from posture 1 to posture 2 at the above preset linear velocity and the above angular velocity. When the D-shaped floor sweeping robot moves to posture 2, the orientation of the D-shaped floor sweeping robot is parallel to the contour line of the above obstacle (i.e., the original obstacle contour line shown in Figure 5 ), and the distance between the right side of the D-shaped floor sweeping robot and the contour line of the above obstacle (i.e., the original obstacle contour line shown in
[0108] ) (i.e., the distance along the right side edge of the D-shaped floor sweeping robot) is the above preset distance ξ. In summary, the solution provided in the embodiments of the present application can be effectively applied to the edge cleaning task of the D-shaped floor sweeping robot, solving the problem that traditional D-shaped floor sweeping robots take a long time and travel a long distance during diagonal edge following. Moreover, by optimizing the overall motion process and control strategy of diagonal edge following, this method significantly reduces the cleaning dead corners and missed cleaning phenomena during diagonal edge following, thereby achieving a more efficient and comprehensive cleaning effect.
[0109] Optionally, in a specific implementation manner, a control method for a D-shaped floor sweeping robot provided in the embodiments of the present application may further include the following steps 1-2.
[0110] Step 1: Control the D-shaped floor sweeping robot to move forward and perform an edge cleaning task;
[0111] Step 2: When it is determined again that the D-shaped floor sweeping robot detects an obstacle, return to the step of extracting the contour line of the obstacle, or control the D-shaped floor sweeping robot to stop moving when the edge cleaning task is completed.
[0112] In this specific implementation manner, in the embodiments of the present application, the purpose of enabling the D-shaped floor sweeping robot to perform a diagonal movement along the edge of the obstacle contour line is to reduce the distance between the designated side of the D-shaped floor sweeping robot and the obstacle when the D-shaped floor sweeping robot moves to a position where its orientation is parallel to the obstacle contour line during the cleaning task, so as to reduce cleaning blind spots and missed cleaning phenomena. Therefore, after the D-shaped floor sweeping robot completes the diagonal movement along the edge of the obstacle contour line, the execution entity can control the D-shaped floor sweeping robot to continue moving forward and simultaneously perform an edge cleaning task, so that during the forward movement of the D-shaped floor sweeping robot, the cleaning device is used to clean the ground between itself and the detected obstacle to complete the cleaning task.
[0113] During the subsequent forward movement of the above D-shaped floor sweeping robot, the detection sensor installed on the D-shaped floor sweeping robot continues to detect environmental data, and thus, an obstacle may be detected again. Therefore, when it is determined again that the D-shaped floor sweeping robot has detected an obstacle, the execution entity can return to the step of extracting the obstacle contour line of the obstacle in the above step S301 to repeat the control method provided in the embodiments of the present application, so as to enable the D-shaped floor sweeping robot to perform a diagonal movement along the edge of the newly detected obstacle contour line to complete the edge cleaning of the newly detected obstacle.
[0114] Correspondingly, during the subsequent forward movement of the above D-shaped floor sweeping robot, when the preset cleaning task of the D-shaped floor sweeping robot is completed, the D-shaped floor sweeping robot does not need to continue working, and the execution entity can control the D-shaped floor sweeping robot to stop moving.
[0115] For example, the execution entity can use the PID algorithm to control the D-shaped floor sweeping robot to move forward. During the movement, it maintains a certain distance from the obstacle on the designated side and performs an edge cleaning task until the next emergency signal is triggered or the edge cleaning task terminates. Among them, the PID algorithm is the proportional integral derivative algorithm. P is the abbreviation of Proportion, I is the abbreviation of Integral, and D is the abbreviation of Differential.
[0116] Optionally, usually, when the floor sweeping robot completes the cleaning task, it can automatically return to the base station for charging, cleaning, etc., to wait for the next cleaning task. Therefore, during the subsequent forward movement of the above D-shaped floor sweeping robot, when the preset cleaning task of the D-shaped floor sweeping robot is completed, the execution entity can also control the D-shaped floor sweeping robot to return to the base station.
[0117] As can be seen above, when applying the solution provided by the embodiments of the present application, when it is determined that the D-shaped floor sweeping robot detects an obstacle, the obstacle contour line of the above-mentioned obstacle can be extracted. When the obstacle contour line is a straight line, the movement of the D-shaped floor sweeping robot can be controlled until the angle between its orientation and the above-mentioned obstacle contour line reaches a specified angle. After that, based on the preset linear velocity, preset distance, the above-mentioned angle, the radius of the semi-circular structure of the above-mentioned D-shaped floor sweeping robot, and the target distance between the center point of the above-mentioned D-shaped floor sweeping robot and the above-mentioned obstacle contour line, the angular velocity of the above-mentioned D-shaped floor sweeping robot can be calculated. Furthermore, the movement of the above-mentioned D-shaped floor sweeping robot can be controlled to move at the above-mentioned preset linear velocity and the calculated angular velocity until its orientation is parallel to the above-mentioned obstacle contour line, and a specified side of it is spaced from the above-mentioned obstacle contour line by the above-mentioned preset distance.
[0118] Among them, the above-mentioned preset distance is set based on the cleaning range of the cleaning device of the D-shaped floor sweeping robot. Therefore, by setting a smaller above-mentioned preset distance, the distance between a specified side of the D-shaped floor sweeping robot and the obstacle when the D-shaped floor sweeping robot moves until its orientation is parallel to the above-mentioned obstacle contour line can be reduced, so that the cleaning device of the D-shaped floor sweeping robot can cover more or even all of the ground between the above-mentioned preset distances, greatly reducing the cleaning dead corners and missed cleaning phenomena, and achieving a more accurate edge cleaning effect. Moreover, during the control process of the above-mentioned D-shaped floor sweeping robot, the D-shaped floor sweeping robot can be controlled to move until its orientation is parallel to the above-mentioned obstacle contour line, and a specified side of it is spaced from the obstacle contour line by the preset distance, without having to control the D-shaped floor sweeping robot to move to reduce the distance between a specified side of it and the obstacle after the D-shaped floor sweeping robot moves until its orientation is parallel to the above-mentioned obstacle contour line. Therefore, the time and movement distance required for the D-shaped floor sweeping robot to perform edge cleaning can be shortened.
[0119] Based on this, by applying the solution provided by the embodiments of the present application, the structural characteristics of the body of the D-shaped floor sweeping robot and the detection sensor resources carried by it can be fully utilized, and a more accurate edge cleaning effect can be achieved by optimizing the control strategy. Compared with the related technology, the solution provided by the embodiments of the present application can not only shorten the movement time and distance during edge cleaning, but also reduce the occurrence probability of the missed cleaning problem.
[0120] In the embodiments of the present application, the intersection point of the straight line where the target side of the rectangular structure of the above-mentioned D-shaped floor sweeping robot is located and the above-mentioned obstacle contour line can be called a specified intersection point. Then, taking the D-shaped floor sweeping robot shown in Figure 1 as an example, as shown in Figure 4 , according to relevant geometric principles, the distance between the specified intersection point A and the target vertex of the rectangular structure of the above-mentioned floor sweeping robot ( Figure 4 is the right vertex in Figure 4The magnitude of the linear distance l shown can affect the target distance between the center point of the above D-shaped floor sweeping robot and the obstacle contour line. Then, when the radius of the semi-circular structure of the above D-shaped floor sweeping robot and the above preset distance are determined, combining the above formulas (1)-(3), the magnitude of the linear distance l can affect the magnitude of the calculated movement radius, and further affect the magnitude of the calculated angular velocity. Wherein, the target vertex is the vertex on the specified side; the target edge is the edge on the specified side. Exemplarily, when the specified side is the right side, the target vertex is the right vertex and the target edge is the right side; when the specified side is the left side, the target vertex is the left vertex and the target edge is the left side.
[0121] Among them, when the calculated angular velocity is relatively large, it will affect the body stability of the D-shaped floor sweeping robot when rotating according to the above angular velocity. When the calculated angular velocity is relatively small, the D-shaped floor sweeping robot needs to spend more time to move until its orientation is parallel to the obstacle contour line, thereby affecting the working efficiency of the D-shaped floor sweeping robot.
[0122] Based on this, after the D-shaped floor sweeping robot moves until the angle between its orientation and the obstacle contour line reaches a specified angle, the forward or backward movement of the D-shaped floor sweeping robot can be controlled to adjust the distance between the above specified intersection point and the target vertex of the rectangular structure of the D-shaped floor sweeping robot, so that the finally calculated angular velocity can take into account both the body stability and the working efficiency of the D-shaped floor sweeping robot.
[0123] Based on this, optionally, in a specific implementation manner, as Figure 7 shown, a control method for a D-shaped floor sweeping robot provided in an embodiment of the present application may further include the following step S305.
[0124] S305: Control the D-shaped floor sweeping robot to move along the straight line of its orientation until the distance between the target vertex of the rectangular structure of the D-shaped floor sweeping robot and the specified intersection point meets the preset second threshold requirement; wherein, the target vertex is the vertex on the specified side.
[0125] Wherein, the specified intersection point is: the intersection point of the straight line where the target edge of the rectangular structure is located and the obstacle contour line; the target edge is the edge on the specified side.
[0126] In this specific implementation manner, after the D-shaped floor sweeping robot moves until the angle between its orientation and the obstacle contour line reaches a specified angle, the executing entity can control the D-shaped floor sweeping robot to move along the straight line of its orientation until the distance between the target vertex of the rectangular structure of the D-shaped floor sweeping robot and the specified intersection point meets the preset second threshold requirement, that is, the executing entity can control the D-shaped floor sweeping robot to move forward or backward until the distance between the target vertex of the rectangular structure of the D-shaped floor sweeping robot and the specified intersection point meets the preset second threshold requirement.
[0127] Among them, for the convenience of description, in the following text, the distance between the target vertex of the rectangular structure of the D-shaped floor sweeping robot and the specified intersection point can be simply referred to as the straight-line distance. Then, the above second threshold requirement can be understood as: the above straight-line distance belongs to a preset distance interval.
[0128] Generally, it is possible to calculate the absolute value of the difference between the above straight-line distance and a preset distance threshold, and determine whether the above absolute value exceeds a specified value to determine whether the above straight-line distance belongs to a preset distance interval.
[0129] Based on this, optionally, the above second threshold requirement is: the absolute value of the difference between the above straight-line distance and a preset distance threshold does not exceed a specified value. Among them, the above distance threshold can be determined according to the cleaning requirements in the actual application scenario, the size of the D-shaped floor sweeping robot, etc. For example, when the size of the D-shaped floor sweeping robot is large, the above distance threshold is large, and when the size of the D-shaped floor sweeping robot is small, the above distance threshold is small. In this regard, the embodiments of the present application do not make specific limitations.
[0130] That is to say, the above step S305 can be understood as: the execution subject controls the D-shaped floor sweeping robot to move forward or backward so that the distance between the target vertex of the rectangular structure of the D-shaped floor sweeping robot and the specified intersection point remains near the above distance threshold.
[0131] Optionally, after the D-shaped floor sweeping robot moves to an angle with the obstacle contour line reaching a specified angle, the execution subject can first determine whether the above straight-line distance meets the second threshold requirement.
[0132] Among them, when the above straight-line distance does not meet the second threshold requirement, the execution subject can control the D-shaped floor sweeping robot to move along the straight line where the orientation is located until the above straight-line distance meets the preset second threshold requirement. Correspondingly, when the above straight-line distance meets the second threshold requirement, the execution subject can directly execute the above step S303 to calculate the above angular velocity.
[0133] Optionally, in a specific implementation manner, as Figure 8 shown, the above step S302, when the obstacle contour line is a straight line, controlling the D-shaped floor sweeping robot to move until the angle between the orientation of the D-shaped floor sweeping robot and the obstacle contour line reaches a specified angle, may include the following steps S3021-S3022.
[0134] S3021: When the obstacle contour line is a straight line, control the D-shaped floor sweeping robot to rotate until the angle between the orientation of the D-shaped floor sweeping robot and the obstacle contour line is a preset angle.
[0135] Among them, the preset angle is half of the difference between 90 degrees and the specified angle.
[0136] S3022: Control the D-type sweeping robot to rotate in situ toward a target direction by a preset angle; wherein the target direction is a direction corresponding to the other side except the designated side. Exemplarily, if the designated side is the right side, that is, the side where the sensor is provided is the right side, the preset angle to the target direction is to rotate to the left by a preset angle, and similarly, if the designated side is the left side, that is, the side where the sensor is provided is the left side, the preset angle to the target direction is to rotate to the right by a preset angle.
[0137] In this specific implementation, when the obstacle contour is a straight line, the execution body can control the D-type sweeping robot to rotate in two stages until the angle between the robot and the obstacle contour reaches a specified angle.
[0138] Among them, half of the difference between 90 degrees and the above-mentioned specified angle is pre-set as the preset angle. For example, if the specified angle is 30 degrees, then the difference between 90 degrees and the specified angle is 60 degrees, and then the preset angle is half of 60 degrees, that is, the preset angle is 30 degrees; for another example, if the specified angle is 10 degrees, then the difference between 90 degrees and the specified angle is 80 degrees, and then the preset angle is half of 80 degrees, that is, the preset angle is 40 degrees.
[0139] In this way, when the obstacle contour line is a straight line, in the first stage, the execution subject can first control the D-type sweeping robot to rotate until the angle between the direction of the D-type sweeping robot and the obstacle contour line is a preset angle; then, the execution subject enters the second stage, and controls the D-type sweeping robot to rotate in situ toward the target direction by a preset angle. At this point, the angle between the direction of the D-type sweeping robot and the obstacle contour line reaches the specified angle.
[0140] Likewise Figure 1 Taking the D-type sweeping robot shown in FIG as an example, the execution subject can first control the D-type sweeping robot to rotate to Figure 9 The posture shown, wherein the angle θ between the direction of the D-type sweeping robot and the obstacle contour line is a preset angle. Afterwards, the execution subject controls the D-type sweeping robot to move in the target direction ( Figure 4 and Figure 9 The target direction is left) rotate to Figure 4 The posture shown, wherein the angle value of the above-mentioned angle θ is a specified angle.
[0141] Optionally, in a specific implementation, after the execution entity completes the above step S3022 to make the angle between the orientation of the D-shaped floor sweeping robot and the obstacle contour line reach a specified angle, and before executing the above step S303 to calculate the angular velocity of the D-shaped floor sweeping robot based on a preset linear velocity, a preset distance, an angle, the radius of the semi-circular structure of the D-shaped floor sweeping robot, and the target distance between the center point of the D-shaped floor sweeping robot and the obstacle contour line, the execution entity may execute the above step S305 to control the D-shaped floor sweeping robot to move along the straight line of the orientation until the distance between the target vertex of the rectangular structure of the D-shaped floor sweeping robot and the specified intersection point meets the preset second threshold requirement.
[0142] Optionally, in a specific implementation, as Figure 10 shown, a control method for a D-shaped floor sweeping robot provided in an embodiment of the present application may further include the following step S3023.
[0143] S3023: Control the D-shaped floor sweeping robot to move forward until the distance between the target vertex of the rectangular structure of the D-shaped floor sweeping robot and the specified intersection point meets the preset margin.
[0144] Wherein, the specified intersection point is: the intersection point of the straight line where the target side of the rectangular structure is located and the obstacle contour line.
[0145] In this specific implementation, after the execution entity completes the above first stage to make the angle between the orientation of the D-shaped floor sweeping robot and the obstacle contour line a preset angle, the execution entity may first suspend the execution of the above second stage, but control the D-shaped floor sweeping robot to move forward until the distance between the target vertex of the rectangular structure of the D-shaped floor sweeping robot and the specified intersection point meets the preset margin.
[0146] Wherein, the specified intersection point is the intersection point of the straight line where the target side of the rectangular structure of the D-shaped floor sweeping robot is located and the obstacle contour line.
[0147] The above preset margin is the reserved amount of the forward distance of the D-shaped floor sweeping robot, which is used to adjust the distance between the target vertex of the rectangular structure of the D-shaped floor sweeping robot and the specified intersection point after the D-shaped floor sweeping robot finishes moving forward. And the distance between the target vertex of the rectangular structure of the D-shaped floor sweeping robot and the specified intersection point meeting the preset margin means: the distance between the target vertex of the rectangular structure of the D-shaped floor sweeping robot and the specified intersection point is not greater than the above preset margin.
[0148] Among them, considering that in the above step S3023, the D-shaped floor sweeping robot can be controlled to move forward at a low speed. Therefore, the slight contact between the front bumper of the D-shaped floor sweeping robot and the obstacle will not affect the smoothness of the cleaning movement of the D-shaped floor sweeping robot, nor will it damage the actual application scenario, such as the user's home environment. Therefore, the above preset margin can be 0. Furthermore, the above preset margin can be determined according to the cleaning requirements in the actual application scenario, the size of the D-shaped floor sweeping robot, etc. In this regard, the embodiments of the present application do not make specific limitations.
[0149] That is, after controlling the D-shaped floor sweeping robot to rotate to an angle with the obstacle contour line equal to the preset angle, the execution subject can control the D-shaped floor sweeping robot to move forward at a low speed, gradually approaching the obstacle contour line until the set forward distance is reached or the front bumper is triggered. Among them, after controlling the D-shaped floor sweeping robot to move forward until the set forward distance is reached, the distance between the target vertex of the rectangular structure of the D-shaped floor sweeping robot and the specified intersection point satisfies the preset margin, and the preset margin is not 0.
[0150] Optionally, in a specific implementation manner, the above step S3023 may include the following steps 3 and 4.
[0151] Step 3: Calculate the forward distance of the D-shaped floor sweeping robot based on the angle, the target distance, the width of the rectangular structure, the radius, and the preset margin.
[0152] Step 4: Control the D-shaped floor sweeping robot to move forward the above forward distance.
[0153] In this specific implementation manner, the forward distance of the D-shaped floor sweeping robot can be calculated first based on the above angle, the above target distance, the width of the rectangular structure of the D-shaped floor sweeping robot, the radius of the semi-circular structure of the D-shaped floor sweeping robot, and the preset margin. Furthermore, the above D-shaped floor sweeping robot can be controlled to move forward the above forward distance so that the distance between the target vertex of the rectangular structure of the D-shaped floor sweeping robot and the specified intersection point is equal to the preset margin.
[0154] Among them, the above forward distance can be calculated by the following formula (4).
[0155]
[0156] Among them, d is the above forward distance, L is the target distance between the center point of the D-shaped floor sweeping robot and the obstacle contour line, θ is the angle between the orientation of the D-shaped floor sweeping robot and the obstacle contour line, R is the radius of the semi-circular structure of the D-shaped floor sweeping robot, L 2 is the width of the rectangular structure of the D-shaped floor sweeping robot, and ε is the above preset margin. In the above formula (4), the angle value of the above angle Δ is the above preset angle.
[0157] Taking the D-shaped floor sweeping robot shown in Figure 1 as an example, as shown in Figure 9 , when controlling the D-shaped floor sweeping robot to rotate until the angle between the orientation of the D-shaped floor sweeping robot and the obstacle contour line is a preset angle, the execution body controls the D-shaped floor sweeping robot to move forward Figure 9 the forward distance d shown in Figure 9 (the target vertex of the rectangular structure of the D-shaped floor sweeping robot is the right vertex in ). After the forward movement is completed, the distance between the target vertex of the rectangular structure of the D-shaped floor sweeping robot and the specified intersection point is the above-mentioned preset margin ε.
[0158] Optionally, in a specific implementation manner, as shown in Figure 11 , the above step S3021, when the obstacle contour line is a straight line, controlling the D-shaped floor sweeping robot to rotate until the angle between the orientation of the D-shaped floor sweeping robot and the obstacle contour line is a preset angle, may include the following steps S3021A-S3021B.
[0159] S3021A: When the obstacle contour line is a straight line, control the wheels of the D-shaped floor sweeping robot on the same side of the emergency point to remain stationary, and at the same time, control the wheels of the D-shaped floor sweeping robot on the opposite side of the emergency point to move forward until the orientation of the D-shaped floor sweeping robot is perpendicular to the obstacle contour line and the orientation points to the obstacle contour line.
[0160] Wherein, the emergency point is: when an obstacle is detected, the point on the obstacle detected by the detection sensor installed on the D-shaped floor sweeping robot. And usually the emergency point can be the closest point on the obstacle contour detected by the D-shaped floor sweeping robot.
[0161] S3021B: Control the D-shaped robot to rotate in a rotation mode of rotating a preset angle in place towards the target direction.
[0162] In this specific implementation manner, when the extracted obstacle contour line is a straight line, if the D-shaped floor sweeping robot is directly controlled to perform a diagonal along the edge of the above obstacle contour line, it may cause missed sweeping in the area between the D-shaped floor sweeping robot and the obstacle contour line. Therefore, before controlling the D-shaped floor sweeping robot to perform a diagonal along the edge of the above obstacle contour line, the execution body can first adjust the posture of the D-shaped floor sweeping robot so that its orientation is perpendicular to the obstacle contour line and points to the obstacle contour line.
[0163] Among them, different from the circular floor sweeping robot, due to its structural characteristics and the limitation of the detection sensor's field of view blind area, the D-shaped floor sweeping robot is prone to collide with obstacles when directly rotating in place. And since the left collision plate or the right collision plate has a lower trigger sensitivity compared to the front collision plate, it can further affect the movement smoothness and intelligence of the D-shaped floor sweeping robot when performing the edge cleaning task.
[0164] Based on this, in this specific implementation, the characteristics of the two-wheel differential control of the left and right wheels of the D-shaped floor sweeping robot can be utilized to control only one side of the wheels to move forward, so that the D-shaped floor sweeper gradually adjusts its orientation until its orientation is perpendicular to the contour line of the obstacle and points to the contour line of the obstacle. Among them, the detection sensor installed on the D-shaped floor sweeping robot (i.e., the line laser sensor on the front side of the D-shaped floor sweeping robot) will continuously obtain detection data for the obstacle.
[0165] When the contour line of the obstacle is a straight line, the execution body can control the wheels on the same side of the emergency point of the D-shaped floor sweeping robot to remain stationary, and at the same time, control the wheels on the opposite side of the emergency point of the D-shaped floor sweeping robot to move forward until the orientation of the D-shaped floor sweeping robot is perpendicular to the contour line of the obstacle and the orientation points to the contour line of the obstacle.
[0166] Specifically, when the emergency point of the contour line of the obstacle is on the right side of the D-shaped floor sweeper, control the left wheel to move forward and the right wheel to remain stationary; when the emergency point is on the left side of the floor sweeper, control the right wheel to move forward and the left wheel to remain stationary.
[0167] Furthermore, after the attitude of the D-shaped floor sweeping robot is adjusted to be perpendicular to the contour line of the obstacle and the orientation points to the contour line of the obstacle, the D-shaped floor sweeping robot can be controlled to rotate a preset angle in place in the target direction, so that the included angle between the orientation of the rotated D-shaped floor sweeping robot and the contour line of the obstacle is the above-mentioned preset angle.
[0168] Similarly, taking the Figure 1 D-shaped floor sweeping robot shown as an example, as Figure 12 shown, when the emergency point is on the right side of the D-shaped floor sweeper, control the right wheel to remain stationary and the left wheel to move forward, so that the D-shaped floor sweeping robot rotates to be perpendicular to the contour line of the obstacle and the orientation points to the contour line of the obstacle according to the Figure 12 shown movement direction. Furthermore, control the D-shaped floor sweeping robot to rotate a preset angle to the left in place, so that the attitude of the rotated D-shaped floor sweeping robot is as Figure 9 shown, and, Figure 9 the angle value of the included angle θ between the orientation of the D-shaped floor sweeping robot shown and the contour line of the obstacle is the above-mentioned preset angle.
[0169] As described above, in this specific implementation, by precisely controlling the differential wheel speeds of the left and right wheels of the D-shaped floor cleaning robot, the collision problem caused by the direct in-situ rotation of the D-shaped floor cleaning robot can be avoided. At the same time, it can ensure that the D-shaped floor cleaning robot can quickly and accurately adjust its posture to be perpendicular to the obstacle contour line and point to the obstacle contour line, thereby effectively reducing the missed cleaning area between the D-shaped floor cleaning robot and the obstacle contour line, and improving the coverage rate and efficiency of the D-shaped floor cleaning robot for edge cleaning.
[0170] That is, in this specific implementation, in order to avoid the collision problem of the two side bumpers that may be caused by the in-situ rotation of the D-shaped floor cleaning robot, a method of two-wheel differential control is proposed to achieve the motion requirement that the orientation of the D-shaped floor cleaning robot is perpendicular to the obstacle contour line. This not only reduces the occurrence of collisions but also significantly improves the cleaning coverage rate and efficiency, and optimizes the overall cleaning performance of the D-shaped floor cleaning robot.
[0171] Optionally, in a specific implementation, as Figure 13 shown, a control method for a D-shaped floor cleaning robot provided in an embodiment of the present application may further include the following steps S3024 - S3026.
[0172] S3024: Control the D-shaped floor cleaning robot to move forward, and at the same time, control the detection sensor to detect the obstacle to obtain detection data.
[0173] S3025: Based on the detection data, update the obstacle contour line until the distance between the D-shaped floor cleaning robot and the updated obstacle contour line meets the preset first threshold requirement.
[0174] S3026: Control the D-shaped floor cleaning robot to retreat a specified distance.
[0175] Wherein, the specified distance is the distance used to avoid the collision between the D-shaped floor cleaning robot and the obstacle when the D-shaped floor cleaning robot is moving.
[0176] In this specific implementation, after adjusting the posture of the D-shaped floor cleaning robot to be perpendicular to the obstacle contour line and pointing to the obstacle contour line, the D-shaped floor cleaning robot can be controlled to move forward to approach the obstacle contour line. During the forward movement, the cleaning device of the D-shaped floor cleaning robot can simultaneously perform the cleaning task to further reduce the missed cleaning area between the D-shaped floor cleaning robot and the obstacle contour line.
[0177] However, in order to reduce the error between the extracted obstacle contour line and the actual contour line of the obstacle caused by the influence of the grid resolution on the obstacle map created above, and to reduce the impact of the above error on the stability of the above-mentioned process of following the edge and diagonal of the obstacle, during the process of controlling the D-shaped floor sweeping robot to move forward to approach the obstacle contour line, the detection sensor can be controlled to continue to detect the detected obstacle, and the detection data fed back by the detection sensor can be obtained. Furthermore, based on the above detection data, the obstacle contour line can be calculated to update the obstacle contour line, so as to finally obtain a stable obstacle contour line. At the same time, the above detection data can also be used to calculate the distance between the D-shaped floor sweeping robot and the detected obstacle, which is used as the distance between the D-shaped floor sweeping robot and the updated obstacle contour line. Therefore, when the distance between the D-shaped floor sweeping robot and the updated obstacle contour line is less than a preset specified threshold, or when the front bumper is triggered, the floor sweeping robot is controlled to stop moving.
[0178] That is, the execution entity updates the above obstacle contour line based on the above detection data, and calculates the distance between the D-shaped floor sweeping robot and the detected obstacle. Until the distance between the D-shaped floor sweeping robot and the updated obstacle meets the preset first threshold requirement, the current updated obstacle contour line can be obtained, and the D-shaped floor sweeping robot is controlled to stop moving.
[0179] Among them, the above first threshold requirement can be understood as: the distance between the D-shaped floor sweeping robot and the updated obstacle is less than a preset specified threshold, and the above specified threshold can be determined according to the cleaning requirements in the actual application scenario, the size of the D-shaped floor sweeping robot, etc. In this regard, the embodiments of the present application do not make specific limitations.
[0180] Next, the execution entity can control the D-shaped floor sweeping robot to retreat a specified distance to reserve the movement space required for the D-shaped floor sweeping robot to follow the edge and diagonal of the above obstacle contour line.
[0181] Among them, the above specified distance is the distance to avoid the D-shaped floor sweeping robot colliding with the obstacle when the D-shaped floor sweeping robot is moving, and the above specified distance can be determined according to the cleaning requirements in the actual application scenario, the size of the D-shaped floor sweeping robot, etc. In this regard, the embodiments of the present application do not make specific limitations.
[0182] After controlling the D-shaped floor sweeping robot to retreat, the execution entity can control the D-shaped floor sweeping robot to move to an angle with the obstacle contour line reaching a specified angle in two stages.
[0183] Specifically, the execution entity can first execute step S3021B to control the D-shaped floor sweeping robot to rotate a preset angle in place in the target direction; after the D-shaped floor sweeping robot finishes rotating, it can continue to execute step S3022 to control the D-shaped floor sweeping robot to rotate a preset angle in place in the target direction again. At this point, the included angle between the D-shaped floor sweeping robot and the obstacle contour line when moving is a specified angle.
[0184] Optionally, after the execution entity finishes the above step S3021B and before executing the above step S3022, the execution entity can also execute the above step S3023 to control the D-shaped floor sweeping robot to move forward until the distance between the target vertex of the rectangular structure of the D-shaped floor sweeping robot and the specified intersection point meets the preset margin.
[0185] Above, in this specific implementation, to solve the problem of insufficient accuracy of the obstacle contour line extracted through the obstacle map, it is proposed to obtain the detection data of the detection sensor multiple times during the process of approaching the obstacle contour line. Through the processing and fusion of the multiple detection data, a more stable and accurate obstacle contour line equation can be obtained. This method provides favorable conditions for subsequent edge-adjacent diagonal control (for example, "three-stage" motion control).
[0186] In summary, optionally, in a specific implementation Figure 14 is a schematic flowchart of a specific implementation of a control method for a D-shaped floor sweeping robot provided by an embodiment of the present application. As Figure 14 shown, the method may include the following steps S1401-S1411.
[0187] S1401: When it is determined that the D-shaped floor sweeping robot detects an obstacle, extract the obstacle contour line of the obstacle.
[0188] S1402: When the obstacle contour line is a straight line, control the wheels of the D-shaped floor sweeping robot on the same side of the emergency point to remain stationary, and at the same time, control the wheels of the D-shaped floor sweeping robot on the opposite side of the emergency point to move forward until the orientation of the D-shaped floor sweeping robot is perpendicular to the obstacle contour line and the orientation points to the obstacle contour line.
[0189] Among them, in order to avoid the problem of collision between the two side bumpers that may be caused by the D-shaped floor sweeping robot rotating in place, a method of two-wheel differential control is proposed to meet the motion requirement that the orientation of the D-shaped floor sweeping robot is perpendicular to the obstacle contour line. This not only reduces the occurrence of collisions, but also significantly improves the cleaning coverage rate and efficiency, and optimizes the overall cleaning performance of the D-shaped floor sweeping robot.
[0190] S1403: Control the D-shaped floor sweeping robot to move forward, and at the same time, control the detection sensor to detect the obstacle to obtain detection data.
[0191] S1404: Update the obstacle contour line based on the detection data until the distance between the D-shaped floor cleaning robot and the updated obstacle contour line meets the requirements of a preset first threshold.
[0192] Among them, to solve the problem of insufficient accuracy of the obstacle contour line extracted from the obstacle map, it is proposed to obtain the detection data of the detection sensor multiple times during the process of approaching the obstacle contour line. Through the processing and fusion of the multiple detection data, a more stable and accurate obstacle contour line equation can be obtained. This method provides favorable conditions for subsequent edge-attachment diagonal control (such as "three-stage" motion control).
[0193] S1405: Control the D-shaped floor cleaning robot to retreat a specified distance.
[0194] S1406: Control the D-shaped robot to rotate according to the rotation method of rotating a preset angle in place in the target direction.
[0195] S1407: Control the D-shaped floor cleaning robot to move forward until the distance between the target vertex of the rectangular structure of the D-shaped floor cleaning robot and the specified intersection point meets the preset margin.
[0196] S1408: Control the D-shaped floor cleaning robot to rotate a preset angle in place in the target direction.
[0197] S1409: Control the D-shaped floor cleaning robot to move along the straight line of its orientation until the distance between the target vertex of the rectangular structure of the D-shaped floor cleaning robot and the specified intersection point meets the requirements of a preset second threshold.
[0198] S1410: Calculate the angular velocity of the D-shaped floor cleaning robot based on the preset linear velocity, preset distance, included angle, the radius of the semi-circular structure of the D-shaped floor cleaning robot, and the target distance between the center point of the D-shaped floor cleaning robot and the obstacle contour line.
[0199] S1411: Control the D-shaped floor cleaning robot to move according to the preset linear velocity and angular velocity until the orientation is parallel to the obstacle contour line and there is a preset distance between the specified side of the D-shaped floor cleaning robot and the obstacle contour line.
[0200] Among them, after executing the above step S1035, the execution subject starts to perform "three-stage" motion control on the D-shaped floor cleaning robot to achieve the edge-attachment diagonal of the D-shaped floor cleaning robot to the above-mentioned obstacle contour line. This "three-stage" motion control divides the edge-attachment diagonal process of the D-shaped floor cleaning robot to the above-mentioned obstacle contour line into 30 segments, and each stage completes a 30-degree diagonal process.
[0201] In the first stage, the execution entity controls the D-shaped floor sweeping robot to first rotate 30 degrees in place towards the target direction. After the rotation towards the target direction is completed, the execution entity controls the D-shaped floor sweeping robot to move forward at a low speed, gradually approaching the obstacle contour line until the set forward distance is reached or the front bumper is triggered.
[0202] In the second stage, the execution entity continues to control the D-shaped floor sweeping robot to rotate 30 degrees in place towards the target direction, further reducing the angle between its orientation and the direction of the obstacle contour line. After the rotation towards the target direction is completed, the execution entity calculates the straight-line distance l between the target vertex of the rectangular structure of the D-shaped floor sweeping robot and the specified intersection point at this time, and by controlling the D-shaped floor sweeping robot to move forward or backward, keeps the straight-line distance l around the preset distance threshold.
[0203] In the third stage, the execution entity controls the D-shaped floor sweeping robot to perform a curvilinear motion at a certain linear speed and angular speed until its orientation is basically parallel to the direction of the obstacle contour line.
[0204] As above, a "three-stage" motion control is proposed, which divides the diagonal process along the edge of the D-shaped floor sweeping robot into three consecutive stages to complete, effectively realizing the diagonal cleaning along the edge of the D-shaped floor sweeping robot and overcoming the problem of too large distance along the specified side edge caused by the traditional D-shaped floor sweeping robot directly rotating in place for alignment.
[0205] It should be noted that the implementation methods of the steps in this specific implementation manner are the same as those of the same steps in the specific implementation manners provided in the embodiments of the present application, and will not be repeated here.
[0206] In summary, taking the Figure 1 shown D-shaped floor sweeping robot as an example, Figure 15 is a schematic flow chart of a specific implementation manner of a control method for a D-shaped floor sweeping robot provided in an embodiment of the present application. As Figure 15 shown, this specific implementation manner can be as steps 1501 - S1509. Figure 15 Among them, the specified side of the D-shaped floor sweeping robot is the right side, the target direction is the left, and the target vertex is the right vertex.
[0207] S1501: Emergency trigger.
[0208] That is, the collision detection module of the execution entity, based on the current posture of the D-shaped floor cleaning robot and the map information of the obstacle map, real-time detects whether the line laser sensor and the PSD / TOF sensor of the D-shaped floor cleaning robot detect an obstacle. When it is determined that the line laser sensor and the PSD / TOF sensor detect an obstacle, an emergency signal and an emergency point are passed to the control module of the execution entity, so that the execution entity determines that the D-shaped floor cleaning robot has detected an obstacle, triggering a control method for a D-shaped floor cleaning robot provided by an embodiment of the present application.
[0209] Among them, the above obstacle map is created based on the environmental data detected and transmitted by the line laser sensor and the PSD / TOF sensor.
[0210] S1502: Extract the obstacle contour line.
[0211] That is, the execution entity can extract the obstacle contour line of the detected obstacle from the above obstacle map.
[0212] S1503: Control the left / right wheel differential to approach the obstacle contour line.
[0213] That is, when the extracted obstacle contour line is a straight line, control the wheels of the D-shaped floor cleaning robot on the same side of the emergency point to remain stationary, and at the same time, control the wheels of the D-shaped floor cleaning robot on the opposite side of the emergency point to move forward until the orientation of the D-shaped floor cleaning robot is perpendicular to the obstacle contour line and the orientation points to the obstacle contour line.
[0214] S1504: Update the obstacle contour line in real time.
[0215] That is, the execution entity controls the D-shaped floor cleaning robot to move forward, and at the same time, controls the detection sensor to detect the obstacle to obtain detection data; based on the detection data, update the above obstacle map, and thus, based on the incoming obstacle map, update the obstacle contour line until the distance between the D-shaped floor cleaning robot and the updated obstacle contour line meets the preset first threshold requirement.
[0216] S1505: Retreat a certain distance to reserve space.
[0217] That is, the execution entity controls the D-shaped floor cleaning robot to retreat the command distance to reserve the movement space required for the D-shaped floor cleaning robot to perform a side-by-side diagonal movement along the above obstacle contour line.
[0218] S1506: Rotate 30 degrees in the first stage and then approach the obstacle contour line.
[0219] That is, if the preset angle is 30 degrees as described above in advance, the execution entity controls the D-shaped floor sweeping robot to rotate 30 degrees in place towards the target direction; then, the execution entity controls the D-shaped floor sweeping robot to move forward until the distance between the target vertex of the rectangular structure of the D-shaped floor sweeping robot and the specified intersection point meets the preset margin.
[0220] Among them, the execution entity can first calculate the forward distance of the D-shaped floor sweeping robot based on the included angle, the target distance, the width of the rectangular structure, the radius, and the preset margin, and then control the D-shaped floor sweeping robot to move forward according to the forward distance.
[0221] S1507: In the second stage, continue to rotate 30 degrees and then maintain a certain distance.
[0222] That is, the execution entity controls the D-shaped floor sweeping robot to rotate 30 degrees in place towards the target direction again; then, the execution entity controls the D-shaped floor sweeping robot to move forward or backward until the distance between the target vertex of the rectangular structure of the D-shaped floor sweeping robot and the specified intersection point meets the requirements of the preset second threshold.
[0223] S1508: In the third stage, perform a curvilinear motion to align with the obstacle contour line.
[0224] That is, the execution entity first calculates the angular velocity of the D-shaped floor sweeping robot based on the preset linear velocity, the preset distance, the included angle, the radius of the semi-circular structure of the D-shaped floor sweeping robot, and the target distance between the center point of the D-shaped floor sweeping robot and the obstacle contour line; then, controls the D-shaped floor sweeping robot to move according to the preset linear velocity and angular velocity until the orientation is parallel to the obstacle contour line and there is a preset distance between the specified side of the D-shaped floor sweeping robot and the obstacle contour line.
[0225] Among them, the execution entity can first calculate the movement radius based on the preset distance, the included angle, the radius of the semi-circular structure of the D-shaped floor sweeping robot, and the target distance between the center point of the D-shaped floor sweeping robot and the obstacle contour line; then calculate the ratio of the preset linear velocity to the movement radius to obtain the angular velocity of the D-shaped floor sweeping robot.
[0226] S1509: Use the PID algorithm to control the floor sweeper to clean along the edge.
[0227] That is, the execution entity controls the D-shaped floor sweeping robot to move forward and perform the edge cleaning task. And when an emergency is triggered again, the execution entity can return to the above step S1502, or when the preset cleaning task is completed, the execution entity can control the D-shaped floor sweeping robot to stop moving.
[0228] Corresponding to the control method of a D-shaped floor sweeping robot provided in the above embodiments of the present application, the embodiments of the present application also provide a D-shaped floor sweeping robot.
[0229] Figure 16A structural schematic diagram of a D-shaped floor cleaning robot provided by an embodiment of the present application. As Figure 16 shown, the D-shaped floor cleaning robot includes a detection sensor 1610 and a processor 1620.
[0230] The detection sensor 1610 is configured to detect obstacles during the movement of the D-shaped floor cleaning robot;
[0231] The processor 1620 is configured to execute a control method of a D-shaped floor cleaning robot when the detection sensor 1610 detects an obstacle.
[0232] Corresponding to the control method of a D-shaped floor cleaning robot provided by the above embodiment of the present application, an embodiment of the present application further provides a control device of a D-shaped floor cleaning robot.
[0233] Figure 17 A structural schematic diagram of a control device of a D-shaped floor cleaning robot provided by an embodiment of the present application. As Figure 17 shown, the device may include the following modules.
[0234] A contour line extraction module 1710, configured to extract an obstacle contour line of the obstacle when it is determined that the D-shaped floor cleaning robot detects an obstacle;
[0235] A first control module 1720, configured to control the movement of the D-shaped floor cleaning robot until the included angle between the orientation of the D-shaped floor cleaning robot and the obstacle contour line reaches a specified angle when the obstacle contour line is a straight line;
[0236] An angular velocity calculation module 1730, configured to calculate the angular velocity of the D-shaped floor cleaning robot based on a preset linear velocity, a preset distance, the included angle, the radius of the semi-circular structure of the D-shaped floor cleaning robot, and the target distance between the center point of the D-shaped floor cleaning robot and the obstacle contour line; wherein, the preset distance is set based on the cleaning range of the cleaning device of the D-shaped floor cleaning robot;
[0237] A second control module 1740, configured to control the D-shaped floor cleaning robot to move at the preset linear velocity and the angular velocity until the orientation is parallel to the obstacle contour line and a specified side of the D-shaped floor cleaning robot is spaced from the obstacle contour line by the preset distance; wherein, the specified side is the side provided with the sensor.
[0238] As can be seen above, when applying the solution provided by the embodiments of the present application, when it is determined that the D-shaped sweeping robot detects an obstacle, the obstacle contour line of the above-mentioned obstacle can be extracted. When the obstacle contour line is a straight line, the D-shaped sweeping robot can be controlled to move until the angle between its orientation and the above-mentioned obstacle contour line reaches a specified angle. After that, based on the preset linear velocity, preset distance, the above-mentioned angle, the radius of the semi-circular structure of the above-mentioned D-shaped sweeping robot, and the target distance between the center point of the above-mentioned D-shaped sweeping robot and the above-mentioned obstacle contour line, the angular velocity of the above-mentioned D-shaped sweeping robot can be calculated. Furthermore, the above-mentioned D-shaped sweeping robot can be controlled to move at the above-mentioned preset linear velocity and the calculated angular velocity until its orientation is parallel to the above-mentioned obstacle contour line, and its specified side is spaced from the above-mentioned obstacle contour line by the above-mentioned preset distance.
[0239] Among them, the above-mentioned preset distance is set based on the cleaning range of the cleaning device of the D-shaped sweeping robot. Therefore, by setting a smaller above-mentioned preset distance, the distance between the specified side of the D-shaped sweeping robot and the obstacle when the D-shaped sweeping robot moves until its orientation is parallel to the above-mentioned obstacle contour line can be reduced, so that the cleaning device of the D-shaped sweeping robot can cover more or even all of the ground between the above-mentioned preset distances, greatly reducing the cleaning dead corners and missed cleaning phenomena, and achieving a more accurate edge cleaning effect. Moreover, during the control process of the above-mentioned D-shaped sweeping robot, the D-shaped sweeping robot can be controlled to move until its orientation is parallel to the above-mentioned obstacle contour line, and the specified side is spaced from the obstacle contour line by the preset distance, without controlling the D-shaped sweeping robot to move to reduce the distance between its specified side and the obstacle after the D-shaped sweeping robot moves until its orientation is parallel to the above-mentioned obstacle contour line. Therefore, the time and movement distance required for the D-shaped sweeping robot to perform edge cleaning can be shortened.
[0240] Based on this, by applying the solution provided by the embodiments of the present application, the structural characteristics of the D-shaped sweeping robot body and the detection sensor resources carried by it can be fully utilized, and a more accurate edge cleaning effect can be achieved by optimizing the control strategy. Compared with the related art, applying the solution provided by the embodiments of the present application can not only shorten the movement time and distance during edge cleaning, but also reduce the occurrence probability of the missed cleaning problem.
[0241] Optionally, in a specific implementation manner, the first control module 1720 includes:
[0242] A first control sub-module, configured to control the D-shaped sweeping robot to rotate until the angle between the orientation of the D-shaped sweeping robot and the obstacle contour line is a preset angle; wherein, the preset angle is half of the difference between 90 degrees and the specified angle;
[0243] The second control sub-module is used to control the D-shaped floor sweeping robot to rotate the preset angle in place towards the target direction; wherein, the target direction is the direction corresponding to the other side except the specified side.
[0244] Optionally, in a specific implementation manner, the first control sub-module is specifically used for:
[0245] Control the wheels of the D-shaped floor sweeping robot on the same side as the emergency point to remain stationary, and at the same time control the wheels of the D-shaped floor sweeping robot on the opposite side of the emergency point to move forward until the orientation of the D-shaped floor sweeping robot is perpendicular to the obstacle contour line and the orientation points to the obstacle contour line; wherein, the emergency point is: when the obstacle is detected, the point on the obstacle detected by the detection sensor installed on the D-shaped floor sweeping robot.
[0246] According to the rotation mode of rotating the preset angle in place towards the target direction, control the D-shaped robot to rotate.
[0247] Optionally, in a specific implementation manner, the first control module 1720 further includes:
[0248] The third control sub-module is used to control the D-shaped floor sweeping robot to move forward before controlling the D-shaped robot to rotate according to the rotation mode of rotating the preset angle in place towards the target direction, and at the same time control the detection sensor to detect the obstacle to obtain detection data.
[0249] The contour line update sub-module is used to update the obstacle contour line based on the detection data until the distance between the D-shaped floor sweeping robot and the updated obstacle contour line meets the preset first threshold requirement.
[0250] The fourth control sub-module is used to control the D-shaped floor sweeping robot to retreat a specified distance; wherein, the specified distance is: the distance used to avoid the D-shaped floor sweeping robot from colliding with the obstacle when the D-shaped floor sweeping robot is moving.
[0251] Optionally, in a specific implementation manner, the first control module 1720 further includes:
[0252] The fifth control sub-module is used to control the D-shaped floor sweeping robot to move forward until the distance between the target vertex of the rectangular structure of the D-shaped floor sweeping robot and the specified intersection point meets the preset margin before controlling the D-shaped floor sweeping robot to rotate the preset angle in place towards the target direction; wherein, the target vertex is the vertex on the specified side.
[0253] Wherein, the specified intersection point is: the intersection point of the straight line where the target side of the rectangular structure is located and the obstacle contour line; the target side is the side on the specified side.
[0254] Optionally, in a specific implementation, the fifth control sub-module is specifically configured to:
[0255] Calculate the forward distance of the D-shaped floor sweeping robot based on the included angle, the target distance, the width of the rectangular structure, the radius, and a preset margin;
[0256] Control the D-shaped floor sweeping robot to move forward by the forward distance.
[0257] Optionally, in a specific implementation, the device further includes:
[0258] A third control module, configured to control the D-shaped floor sweeping robot to move along the straight line where the orientation is located until the distance between the target vertex of the rectangular structure of the D-shaped floor sweeping robot and the specified intersection point meets a preset second threshold requirement, before calculating the angular velocity of the D-shaped floor sweeping robot based on the preset linear velocity, the preset distance, the included angle, the radius of the semi-circular structure of the D-shaped floor sweeping robot, and the target distance between the center point of the D-shaped floor sweeping robot and the obstacle contour line;
[0259] Wherein, the specified intersection point is: the intersection point of the straight line where the target side of the rectangular structure is located and the obstacle contour line.
[0260] Optionally, in a specific implementation, the speed calculation module 1730 is specifically configured to:
[0261] Calculate the movement radius based on the preset distance, the included angle, the radius of the semi-circular structure of the D-shaped floor sweeping robot, and the target distance between the center point of the D-shaped floor sweeping robot and the obstacle contour line;
[0262] Calculate the ratio of the preset linear velocity to the movement radius to obtain the angular velocity of the D-shaped floor sweeping robot.
[0263] Optionally, in a specific implementation, the device further includes:
[0264] A task execution module, configured to control the D-shaped floor sweeping robot to move forward and execute the edge cleaning task; when it is determined again that the D-shaped floor sweeping robot detects an obstacle, trigger the contour line extraction module 1710, or, when the preset cleaning task is completed, control the D-shaped floor sweeping robot to stop moving.
[0265] An embodiment of the present application further provides an electronic device, as Figure 18 shown, including:
[0266] A memory 1801 for storing a computer program;
[0267] A processor 1802, when executing the program stored on the memory 1801, implements the steps of any one of the control methods of the D-type floor cleaning robot provided in the embodiments of the present application.
[0268] And the above electronic device may further include a communication bus and / or a communication interface, and the processor 1802, the communication interface, and the memory 1801 complete communication with each other through the communication bus.
[0269] The communication bus mentioned in the above electronic device may be a Peripheral Component Interconnect (PCI) bus or an Extended Industry Standard Architecture (EISA) bus, etc. This communication bus can be divided into an address bus, a data bus, a control bus, etc. For the sake of representation, only a thick line is used in the figure, but it does not mean that there is only one bus or one type of bus.
[0270] The communication interface is used for communication between the above electronic device and other devices.
[0271] The memory may include a Random Access Memory (RAM), or may also include a Non-Volatile Memory (NVM), such as at least one disk memory. Optionally, the memory may also be at least one storage device located far from the aforementioned processor.
[0272] The above-mentioned processor may be a general-purpose processor, including a Central Processing Unit (CPU), a Network Processor (NP), etc.; it may also be a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Field-Programmable Gate Array (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components.
[0273] In another embodiment provided by the present application, a computer-readable storage medium is further provided. A computer program is stored in the computer-readable storage medium. When the computer program is executed by a processor, the steps of any control method of the D-shaped floor cleaning robot provided by the embodiments of the present application are implemented.
[0274] In another embodiment provided by the present application, a computer program product including instructions is further provided. When it runs on a computer, the computer is caused to execute the steps of any control method of the D-shaped floor cleaning robot provided by the embodiments of the present application.
[0275] In the above embodiments, it can be implemented in whole or in part by software, hardware, firmware, or any combination thereof. When implemented using software, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, the processes or functions described in the embodiments of the present application are generated in whole or in part. The computer may be a general-purpose computer, a special-purpose computer, a computer network, or other programmable devices. The computer instructions may be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another. For example, the computer instructions may be transmitted from a website, computer, server, or data center to another website, computer, server, or data center by wire (such as coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (such as infrared, wireless, microwave, etc.). The computer-readable storage medium may be any available medium that can be accessed by a computer, or a data storage device such as a server or data center that includes one or more integrated available media. The available medium may be a magnetic medium (for example, a floppy disk, a hard disk, a magnetic tape), an optical medium (for example, a DVD), or a solid state disk (SSD), etc.
[0276] It should be noted that in this article, relational terms such as first and second are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any actual relationship or order between these entities or operations. Moreover, the term "comprising", "including" or any other variation thereof is intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements but also other elements not expressly listed, or also includes elements inherent to such process, method, article or device. Without further limitation, an element defined by the statement "including a..." does not exclude the existence of additional identical elements in the process, method, article or device including the element.
[0277] Each embodiment in this specification is described in a related manner. For the same or similar parts among the embodiments, reference can be made to each other. Each embodiment focuses on the differences from other embodiments. In particular, for the embodiments of the D-type floor sweeping robot, device, electronic device, computer-readable storage medium, and computer program product, since they are basically similar to the method embodiments, the description is relatively simple, and reference can be made to the corresponding parts of the method embodiments for the related content.
[0278] The foregoing are only the preferred embodiments of the present application and are not intended to limit the scope of protection of the present application. Any modifications, equivalent replacements, improvements, etc. made within the spirit and principle of the present application are included in the scope of protection of the present application.
Claims
1. A control method for a D-type sweeping robot, characterized in that: The method comprises: When it is determined that the D-type sweeping robot detects an obstacle, extracting an obstacle contour line of the obstacle; When the obstacle contour line is a straight line, controlling the D-type cleaning robot to move until the angle between the direction of the D-type cleaning robot and the obstacle contour line reaches a specified angle; The angular velocity of the D-type cleaning robot is calculated based on the preset linear velocity, the preset distance, the angle, the radius of the semicircular structure of the D-type cleaning robot, and the target distance between the center point of the D-type cleaning robot and the obstacle contour line; wherein the preset distance is set based on the cleaning range of the cleaning device of the D-type cleaning robot; The D-type sweeping robot is controlled to move at the preset linear velocity and the preset angular velocity until the orientation is parallel to the obstacle contour line, and a designated side of the D-type sweeping robot is spaced from the obstacle contour line by the preset distance; wherein the designated side is a side where a sensor is provided.
2. The method according to claim 1, characterized in that The controlling the D-type cleaning robot to move until the angle between the orientation of the D-type cleaning robot and the obstacle contour line is a specified angle includes: Control the D-type sweeping robot to rotate until the angle between the direction of the D-type sweeping robot and the obstacle contour line is a preset angle; wherein the preset angle is half of the difference between 90 degrees and the specified angle; The D-type sweeping robot is controlled to rotate in situ toward a target direction by the preset angle; wherein the target direction is a direction corresponding to another side except the designated side.
3. The method according to claim 2, characterized in that The controlling the D-type cleaning robot to rotate until the angle between the orientation of the D-type cleaning robot and the obstacle contour line is a preset angle includes: The wheels of the D-type sweeping robot located on the same side as the emergency point are controlled to remain stationary, and the wheels of the D-type sweeping robot located on the opposite side of the emergency point are controlled to move forward at the same time, until the direction of the D-type sweeping robot is perpendicular to the obstacle contour line, and the direction points to the obstacle contour line; wherein the emergency point is: when the obstacle is detected, the point on the obstacle is detected by the detection sensor installed on the D-type sweeping robot; The D-type robot is controlled to rotate in a manner of rotating in situ toward the target direction by a preset angle.
4. The method according to claim 3, characterized in that Before controlling the D-type robot to rotate in a rotating manner of rotating in situ toward the target direction by a preset angle, the method further includes: Controlling the D-type sweeping robot to move forward, and at the same time controlling the detection sensor to detect the obstacle to obtain detection data; Based on the detection data, updating the obstacle contour line until the distance between the D-type cleaning robot and the updated obstacle contour line meets a preset first threshold requirement; The D-type sweeping robot is controlled to retreat a specified distance; wherein the specified distance is: a distance used to prevent the D-type sweeping robot from colliding with the obstacle when the D-type sweeping robot moves.
5. The method according to claim 2, characterized in that: Before controlling the D-type sweeping robot to rotate in situ toward a target direction by the preset angle, the method further includes: Controlling the D-type cleaning robot to move forward until the distance between the target vertex of the rectangular structure of the D-type cleaning robot and the designated intersection meets a preset margin; wherein the target vertex is a vertex on the designated side; The designated intersection point is: the intersection point of the straight line where the target side of the rectangular structure is located and the obstacle contour line; the target side is the side on the designated side.
6. The method according to claim 5, characterized in that The controlling the D-type cleaning robot to move forward until the distance between the target vertex of the rectangular structure of the D-type cleaning robot and the designated intersection meets a preset margin includes: Calculating the forward distance of the D-type sweeping robot based on the included angle, the target distance, the width of the rectangular structure, the radius, and a preset margin; The D-type sweeping robot is controlled to move forward the distance.
7. The method according to claim 1, characterized in that Before calculating the angular velocity of the D-type cleaning robot based on the preset linear velocity, the preset distance, the angle, the radius of the semicircular structure of the D-type cleaning robot, and the target distance between the center point of the D-type cleaning robot and the obstacle contour line, the method further includes: Controlling the D-type cleaning robot to move along the straight line in the direction until the distance between the target vertex of the rectangular structure of the D-type cleaning robot and the designated intersection meets a preset second threshold requirement; The designated intersection point is: the intersection point of the straight line where the target side of the rectangular structure is located and the obstacle contour line.
8. The method according to claim 1, characterized in that The calculating the angular velocity of the D-type cleaning robot based on the preset linear velocity, the preset distance, the angle, the radius of the semicircular structure of the D-type cleaning robot, and the target distance between the center point of the D-type cleaning robot and the obstacle contour line includes: Calculate the movement radius based on the preset distance, the angle, the radius of the semicircular structure of the D-shaped cleaning robot, and the target distance between the center point of the D-shaped cleaning robot and the obstacle contour line; The ratio of the preset linear velocity to the motion radius is calculated to obtain the angular velocity of the D-type sweeping robot.
9. The method according to claim 1, characterized in that: The method further comprises: Control the D-type sweeping robot to move forward and perform edge cleaning tasks; When it is determined again that the D-type sweeping robot detects an obstacle, the step of extracting the obstacle contour line of the obstacle is returned to, or, when the preset cleaning task is completed, the D-type sweeping robot is controlled to stop moving.
10. A D-type sweeping robot, characterized in that: The D-type sweeping robot includes a detection sensor and a processor; The detection sensor is used to detect obstacles during the movement of the D-type sweeping robot; The processor is used to execute the control method described in any one of claims 1 to 9 when the detection sensor detects an obstacle.
11. A control device for a D-type sweeping robot, characterized in that: The device comprises: A contour line extraction module, used for extracting the obstacle contour line of the obstacle when it is determined that the D-type sweeping robot detects an obstacle; A first control module, configured to control the D-type sweeping robot to move when the obstacle contour line is a straight line, until the angle between the direction of the D-type sweeping robot and the obstacle contour line reaches a specified angle; a speed calculation module, configured to calculate the angular speed of the D-type cleaning robot based on a preset linear speed, a preset distance, the angle, a radius of the semicircular structure of the D-type cleaning robot, and a target distance between the center point of the D-type cleaning robot and the obstacle contour line; wherein the preset distance is set based on a cleaning range of a cleaning device of the D-type cleaning robot; The second control module is used to control the D-type sweeping robot to move according to the preset linear velocity and the angular velocity until the orientation is parallel to the obstacle contour line and the designated side of the D-type sweeping robot is spaced from the obstacle contour line by the preset distance; wherein the designated side is the side where the sensor is disposed.
12. An electronic device, characterized in that: include: Memory, used to store computer programs; A processor, for implementing any of the methods described in claims 1-9 when executing a program stored in a memory.
13. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the method according to any one of claims 1 to 9 is implemented.
Citation Information
Cited By
Control method and device of D-type floor sweeping robot and floor sweeping robot
CN120458437A