Robot control method based on specific medium area, robot, and chip

By combining inertial and ultrasonic sensors, the robot adjusts its walking strategy within a specific medium area, solving the problems of navigation errors and high costs, and achieving accurate positioning and efficient cleaning.

CN116942018BActive Publication Date: 2026-06-09AMICRO SEMICONDUCTOR CO LTD

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
AMICRO SEMICONDUCTOR CO LTD
Filing Date
2022-04-15
Publication Date
2026-06-09

Smart Images

  • Figure CN116942018B_ABST
    Figure CN116942018B_ABST
Patent Text Reader

Abstract

The application discloses a robot control method based on a specific medium area, a robot and a chip. The robot control method comprises the following steps: the robot detects a specific medium area according to the intensity of an ultrasonic reflection signal received by an ultrasonic sensor and angle information measured by an inertial sensor, and controls the robot to not enter the specific medium area; the current specific medium sub-area is determined according to a current position point of the robot, and the robot is controlled to enter the current specific medium sub-area; the extension direction of a preset planning path is adjusted every time the robot walks in the current specific medium sub-area for a predetermined time interval; after the robot walks through the current specific medium sub-area, the robot walks along a boundary line of the current specific medium sub-area until reaching a corner point, and then a position point corresponding to the pose information of the corner point is updated as the current position point of the robot; the above steps are repeated until the robot walks through all the specific medium sub-areas in the specific medium area.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the technical field of intelligent mobile robots, and in particular to robot control methods, robots, and chips based on specific media regions. Background Technology

[0002] In indoor environments, robots that rely solely on inertial sensors for navigation may encounter slippery surfaces like carpets or excessively high obstacles when walking on the ground. This makes it difficult for the robot to follow regular paths, such as zigzag paths, and can cause the drive wheels to spin and slip, accumulating measurement errors and affecting navigation and positioning in complex indoor environments. On the other hand, existing technologies may use high-precision ranging sensors such as laser sensors and depth cameras to build maps and for navigation, but these are costly and inevitably contain pixel and point cloud noise. Summary of the Invention

[0003] To address the aforementioned technical problems, this invention discloses a robot control method, robot, and chip based on a specific medium region. This method allows the robot to traverse all zones within the specific medium region and areas outside the specific medium region, while maintaining the robot equipped with inertial and ultrasonic sensors to walk along a pre-planned path on carpets, floors, and high-obstacle surfaces, until the robot has traversed the indoor environment area both inside and outside the specific medium region. The specific technical solution is as follows:

[0004] A robot control method based on a specific medium region is applicable to robots equipped with inertial sensors and ultrasonic sensors. At least two ultrasonic sensors are fixedly mounted on both sides of the robot's bottom, located on either side of the robot's central axis, which is parallel to the walking direction. The robot control method includes: Step S1, the robot detects a specific medium region by combining the intensity of the ultrasonic reflected signal received by the ultrasonic sensors and the angle information measured by the inertial sensors, and then adjusts its walking strategy to prevent the robot from entering the specific medium region until the robot has traversed the area excluding the specific medium region; Step S2, after traversing the area excluding the specific medium region, the robot determines the current specific medium partition based on its current position, and then enters the current specific medium partition from the area outside the specific medium region; wherein, the specific medium region includes multiple specific medium partitions, and the current specific medium partition belongs to a specific medium partition; Step S3, after entering the current specific medium partition, the robot follows a pre-defined... Assuming the planned path travels within the current specific medium partition, each time the robot travels through a predetermined time interval, the robot adjusts the extension direction of the preset planned path, and then travels within the current specific medium partition according to the adjusted preset planned path until the robot determines that it has completed the current specific medium partition; Step S4, after the robot determines that it has completed the current specific medium partition, the robot first travels to the boundary line of the current specific medium partition, and then adjusts its walking direction to control the robot to travel while keeping the two ultrasonic sensors on both sides of the boundary of the current specific medium partition, so that the robot travels along the boundary line of the current specific medium partition until it reaches a corner point; where the corner point is the endpoint of the boundary line that encloses the current specific medium partition; Step S5, the robot updates the corner point mentioned in step S4 to the robot's current position point, and then the robot repeats steps S2, S3 and S4 until the robot has completed all specific medium partitions within the specific medium area, and the robot determines that it has completed the specific medium area.

[0005] Further, in step S1, the method by which the robot detects a specific medium region by combining the intensity of the ultrasonic reflected signal received by the ultrasonic sensor and the angle information measured by the inertial sensor, and then adjusts its walking strategy to prevent the robot from entering the specific medium region includes: controlling the ultrasonic sensor to emit ultrasonic waves and receive ultrasonic reflected signals, while simultaneously controlling the inertial sensor to measure the robot's attitude angle; when the intensity of the ultrasonic reflected signal received by the ultrasonic sensor is not within a preset intensity threshold range, the robot has not detected the specific medium region and is not in a state of crossing the first target obstacle; when the intensity of the ultrasonic reflected signal received by the ultrasonic sensor is within a preset intensity threshold range, and the attitude angle measured by the inertial sensor is within a first preset angle threshold range, the robot has detected the specific medium region and is not in a state of crossing the obstacle, and The robot marks the grid corresponding to the boundary point of the specific medium region on the global map; then adjusts its walking direction so that it does not enter the specific medium region; when the intensity of the ultrasonic reflected signal received by the ultrasonic sensor is within a preset intensity threshold range, and the attitude angle measured by the inertial sensor is within a second preset angle threshold range, the robot detects the first target obstacle and is in a state of crossing the first target obstacle, and at the same time marks the grid corresponding to the first target obstacle on the global map, and then the robot does not continue to cross the first target obstacle; wherein, the state of the robot crossing the obstacle is relative to the horizontal plane, and the robot body is tilted on the surface of the obstacle; the obstacle includes the first target obstacle; wherein, the area covered by the specific medium is set as the specific medium region; wherein, the global map is a grid map and is pre-stored in the robot's memory.

[0006] Furthermore, when the intensity of the ultrasonic reflected signal received by the ultrasonic sensor is within a preset intensity threshold range, and the attitude angle measured by the inertial sensor is less than or equal to a preset angle threshold, the robot detects a specific medium region and is not in a state of crossing an obstacle, and marks the grid corresponding to the boundary point of the specific medium region on the global map; then it adjusts its walking direction so that the robot does not enter the detected specific medium region; when the intensity of the ultrasonic reflected signal received by the ultrasonic sensor is within a preset intensity threshold range, and the attitude angle measured by the inertial sensor is greater than a preset angle threshold, the robot detects a first target obstacle and is in a state of crossing the first target obstacle, and marks the grid corresponding to the first target obstacle on the global map, and then the robot does not continue to cross the first target obstacle; wherein, the height of the first target obstacle is greater than the maximum allowable height that the robot can cross the obstacle; wherein, the angle range less than or equal to the preset angle threshold is the first preset angle threshold range, and the angle range greater than the preset angle threshold is the second preset angle threshold range; wherein, the preset angle threshold is determined by the inverse trigonometric function result of the maximum allowable height that the robot can cross the obstacle; wherein, the preset angle threshold is configured as a value within a pre-set error order of magnitude.

[0007] Furthermore, when the intensity of the ultrasonic reflected signal received by the ultrasonic sensor is not within the preset intensity threshold range, and the attitude angle measured by the inertial sensor is less than or equal to the preset angle threshold, the robot detects the second target obstacle and is in a state of crossing the second target obstacle. The robot then marks the corresponding grid on the global map and continues to move forward to cross the second target obstacle. Alternatively, when the intensity of the ultrasonic reflected signal received by the ultrasonic sensor is not within the preset intensity threshold range, and the attitude angle measured by the inertial sensor is less than or equal to the preset angle threshold, the robot is not in a state of crossing the obstacle and moves according to the preset planned path. The obstacle includes the second target obstacle; the second target obstacle protrudes from the horizontal plane, and the height of the second target obstacle is less than or equal to the maximum allowable crossing height for the robot.

[0008] Further, in step S1, whenever the robot searches for untraversed location points in the neighborhood of the global map, excluding the detected specific medium region, the robot first moves to the untraversed location point and then continues to move from the untraversed location point according to the preset planned path, but does not enter the specific medium region; when the robot has walked through the area excluding the specific medium region, it is determined that the remaining untraversed area is the specific medium region; wherein, the specific medium region is composed of multiple closed regions formed by connecting the boundary points, and one specific medium partition is a closed region; the boundary point of each specific medium partition is the boundary point of the specific medium region; the specific medium region is represented in the global map as composed of multiple closed grid regions enclosed by the grids corresponding to the boundary points, and one specific medium partition is represented in the global map using a closed grid region; wherein, whenever the robot moves to a location point, it is determined that the robot has traversed the location point, and the location point is set as a traversed location point, and the grid corresponding to the location point is marked as a traversed grid in the global map.

[0009] Further, in step S2, the method by which the robot determines the current specific medium partition based on its current position includes: selecting the corner point closest to the robot's current position from all corner points of the specific medium partitions that have not been traversed by the robot and configuring it as a reference corner point; wherein, the grid corresponding to the boundary point of each specific medium partition is marked in the global map; the boundary points of the specific medium region include corner points; then, in the specific medium partition where the reference corner point is located, the robot selects two boundaries with the reference corner point as a common endpoint and configures them as a first reference edge and a second reference edge respectively; the boundary line of the specific medium partition is formed by connecting the boundary points of the specific medium partition; the robot selects the midpoint closest to the robot's current position from the midpoint of the first reference edge and the midpoint of the second reference edge and configures it as the current preset target point; then, the robot sets the specific medium partition where the current preset target point is located as the current specific medium partition.

[0010] Further, in step S2, the method for the robot to enter the current specific medium partition from an area outside the specific medium region includes: before entering the current specific medium partition, the robot determines the current preset target point and the current specific medium partition, then the robot walks from its current position to the current preset target point, and then walks from the current preset target point to the preset starting point of the specific medium partition in which it is located; wherein, when the robot walks to the preset starting point of the current specific medium partition, the robot determines that it has completely entered the specific medium partition; wherein, the robot sets the center point of the specific medium partition in which the current preset target point is located as the preset starting point of the current specific medium partition.

[0011] Further, step S3 specifically includes: the robot starts from a preset starting point of the current specific medium partition, walks within the current specific medium partition according to a preset planned path, and records the time spent within the current specific medium partition; whenever the robot walks through a predetermined time interval, the robot adjusts the extension direction of the preset planned path, and then walks within the current specific medium partition according to the adjusted preset planned path, so that the robot traverses areas not covered by the previous preset planned path on the newly adjusted preset planned path, until the time spent by the robot walking from the preset starting point of the current specific medium partition reaches the work end time, and the robot determines that it has completed walking through the current specific medium partition.

[0012] Furthermore, the preset planned path is a bow-shaped path; wherein, the bow-shaped path includes multiple parallel motion trajectory segments; each of two adjacent parallel motion trajectory segments has an endpoint connected by a bend or a preset line segment; wherein, the length of the motion trajectory segment is greater than the length of the bend, and the length of the motion trajectory segment is greater than the length of the preset line segment; wherein, the extension direction of the preset planned path remains perpendicular to the motion trajectory segments; wherein, the angle between the currently changed extension direction and the previous extension direction is equal to the angle between the motion trajectory segment in the bow-shaped path corresponding to the currently changed extension direction and the motion trajectory segment in the bow-shaped path before the extension direction was changed.

[0013] Further, the work completion time is equal to the product of the ratio of the area of ​​the current specific medium partition to the effective coverage area of ​​the robot and a first preset coefficient; wherein, the effective coverage area of ​​the robot is equal to the product of the preset robot walking speed and the robot's body width; wherein, the direction along which the robot's body width is perpendicular to the robot's walking direction; wherein, the first preset coefficient is used to represent the difference between the coverage area of ​​the trajectory actually walked by the robot after it has actually walked through the current specific medium partition and the area of ​​the current specific medium partition; the predetermined time interval, within the allowable error range, is equal to the product of the ratio of the area of ​​the current specific medium region to the effective coverage area of ​​the robot and a second preset coefficient; wherein, the second preset coefficient is related to the number of boundary lines enclosing the current specific medium region; wherein, when the product of the ratio of the area of ​​the current specific medium region to the effective coverage area of ​​the robot and the second preset coefficient is less than the first preset coefficient, the product of the ratio of the area of ​​the current specific medium region to the effective coverage area of ​​the robot and the second preset coefficient is assigned the first preset coefficient, such that the value of the predetermined time interval is not less than the first preset coefficient.

[0014] Furthermore, the current specific medium partition is a rectangular area, and the current specific medium area is a closed area that causes the robot to slip; wherein, the first preset coefficient is set to be greater than or equal to the value 2, and the second preset coefficient is set to the value 1 / 4; when the value of the predetermined time interval is less than the value 2, the value of the predetermined time interval is set to the value 2.

[0015] Furthermore, during the process of the robot walking within the current specific medium partition according to the preset planned path, when the intensity of the ultrasonic reflected signal received by the ultrasonic sensor is not within the preset intensity threshold range, the robot determines that it has reached the boundary line of the current specific medium partition. Then, the robot adjusts its walking direction so that it does not walk outside the current specific medium partition, and then walks within the current specific medium partition according to the preset planned path, wherein the extension direction of the preset planned path is perpendicular to the adjusted walking direction; wherein, an ultrasonic sensor is mounted at the front of the bottom of the robot for emitting ultrasonic waves toward the robot's walking surface; wherein, the preset intensity threshold range is used to represent the signal intensity range of the ultrasonic reflected signal fed back from the specific medium region.

[0016] Furthermore, as the robot moves within the current specific medium zone according to the preset planned path, whenever it collides with an obstacle, it first adjusts its forward direction to avoid the obstacle, and then moves within the current specific medium zone according to the preset planned path, wherein the extension direction of the preset planned path is perpendicular to the adjusted walking direction.

[0017] Further, step S4 specifically includes: when the robot walks to the boundary line of the current specific medium partition, the robot rotates its body to adjust its walking direction until the intensity of the ultrasonic reflection signal received by the first ultrasonic sensor is not within a preset intensity threshold range, the intensity of the ultrasonic reflection signal received by the second ultrasonic sensor is within a preset intensity threshold range, and the attitude angle measured by the inertial sensor is less than or equal to a preset angle threshold. Then, the robot does not detect the current specific medium partition on the side corresponding to the first ultrasonic sensor, and the robot detects the current specific medium partition on the side corresponding to the second ultrasonic sensor, thereby determining that the robot is in a state where the two ultrasonic sensors are located on opposite sides of the boundary line of the current specific medium partition; the robot maintains the two ultrasonic sensors located on opposite sides of the boundary of the current specific medium partition from the beginning. Starting from the position points on both sides of the line, the robot moves in a preset clockwise direction to walk along the boundary line of the current specific medium partition, and uses an inertial sensor to detect the angle change. When the robot detects that the angle change has reached a reference angle, the robot moves to a corner point, and then uses the pose information of the corner point to update the robot's current pose information, so that the robot can regain its pose information within the current specific medium partition. Here, the angle change is the change in the robot's heading angle, which is used to represent the change in the robot's walking direction. Here, the corner point is the common endpoint of the two boundary lines of the current specific medium partition, and is the position point where the robot maintains its movement along the boundary line of the current specific medium partition by rotating the reference angle. Here, the preset clockwise direction is either clockwise or counterclockwise.

[0018] Further, in step S4, the method for determining the boundary line of the current specific medium partition where the robot walks within the specific medium area includes: during the robot's movement within the current specific medium partition, when the intensity of the ultrasonic reflection signal received by the ultrasonic sensor is not within the preset intensity threshold range, the robot determines that it has walked to the boundary line of the current specific medium partition; wherein, the preset intensity threshold range is a pre-set signal intensity threshold range used to represent the signal intensity range of the ultrasonic reflection signal fed back by the current specific medium partition; wherein, the ultrasonic sensor is a first ultrasonic sensor or a second ultrasonic sensor.

[0019] Furthermore, when the robot detects an angle change reaching the reference angle from the repositioning starting point, the robot determines that it has walked to the corner point and rotates through the reference angle in a preset clockwise direction at the corner point. Then, the robot uses the pose information of the corner point to update the robot's current pose information. Here, the repositioning starting point is the position point where the robot begins to maintain the state where the two ultrasonic sensors are located on both sides of the boundary line of the current specific medium partition. Here, the corner point and the repositioning starting point are located on the same boundary line of the current specific medium partition. This boundary line is located between the first ultrasonic sensor and the second ultrasonic sensor. The second ultrasonic sensor is located above the current specific medium partition, and the first ultrasonic sensor is located above the area outside the specific medium region.

[0020] Furthermore, when the robot walks within the current specific medium zone, the robot controls the ultrasonic sensor to emit ultrasonic waves and receive reflected ultrasonic signals, and controls the inertial sensor to measure the robot's attitude angles, but stops marking the grid on the global map; when the robot updates its current pose information using the pose information of the corner points, the robot walks to an area outside the specific medium region, and at the same time, the robot acquires its pose information and marks the corresponding grid on the global map; wherein, the surface covering medium of the area outside the specific medium region is different from the specific medium covering the surface of the current specific medium zone; wherein, the current specific medium zone is a closed area that causes the robot to slip.

[0021] Furthermore, the specific medium area is a carpet-covered area; the preset planned path is a bow-shaped path; wherein, the intensity of the ultrasonic reflection signal received by the ultrasonic sensor is the level value obtained by analog-to-digital conversion of the ultrasonic reflection signal on the surface of the robot's walking environment; the robot's walking environment includes the specific medium area and the surface of the obstacle.

[0022] Furthermore, in step S5, after the robot determines that it has walked to a corner point, it first updates the corner point to the robot's current position point, and then executes step S2. When executing step S2, according to the method for determining the current preset target point and the current specific medium partition based on the robot's current position point, the next preset target point and the next specific medium partition are obtained, and the next preset target point is updated to the current preset target point, and the next specific medium partition is updated to the current specific medium partition.

[0023] A robot is provided, the robot being equipped with at least one inertial sensor, at least two ultrasonic sensors, and at least one processor, wherein at least two ultrasonic sensors are fixedly mounted on both sides of the bottom of the robot, located on both sides of the robot's central axis, which is parallel to the direction of travel; both the inertial sensor and the ultrasonic sensors are electrically connected to the processor; the processor is used to control the robot to execute the robot control method.

[0024] A chip having a program stored on it, which, when executed by the chip, implements the robot control method described above.

[0025] In the technical solution of this invention, the robot first detects a specific medium area, traversable obstacles (second target obstacles), and insurmountable obstacles (first target obstacles) to adapt to walking on surfaces with different media and terrains according to a preset planned path. Then, based on the detected specific medium area, the robot adjusts the path extension direction according to the coverage of the work area and walks within a specific medium partition according to the preset planned path, that is, the robot traverses the corresponding specific medium partition. Then, the robot completes its localization within the most recently traversed specific medium partition by walking through a corner point in the corresponding corner area, so as to navigate to the next specific medium partition. This process is repeated iteratively until the robot has traversed all specific medium partitions within the specific medium area.

[0026] When the robot is a vacuum cleaner, and a specific media zone is a carpet-covered area in a room, the technical solution of this invention relies on inertial sensors and ultrasonic sensors to perform cleaning operations with a large coverage area in each carpet zone. This also reduces mapping errors caused by the robot's drive wheels slipping, and obtains accurate body positioning information in each carpet zone so that it can enter a reasonably distanced untraveled carpet zone from a traversed carpet zone, thus completing the cleaning work of all carpet zones included in the indoor work area in an orderly manner. Attached Figure Description

[0027] Figure 1 This is a flowchart of a robot control method based on a specific medium region disclosed in one embodiment of the present invention.

[0028] Figure 2 This is the invention Figure 1 A flowchart of the implementation method of the disclosed step S101.

[0029] Figure 3 This is the invention Figure 1 A flowchart of the implementation method of steps S103 and S104.

[0030] Figure 4 This is the invention Figure 1 A flowchart of the implementation method of the disclosed step S105. Detailed Implementation

[0031] The technical solutions of the present invention will now be described in detail with reference to the accompanying drawings.

[0032] In the following description, specific details such as particular system architectures and techniques are set forth for illustrative purposes and not for limitation, in order to provide a thorough understanding of the embodiments of this application. However, those skilled in the art will understand that this application may also be implemented in other embodiments without these specific details. In other instances, detailed descriptions of well-known systems, apparatuses, circuits, and methods have been omitted so as not to obscure the description of this application with unnecessary detail.

[0033] It should be understood that, when used in this application, the term "comprising" indicates the presence of the described feature, integral, step, operation, element, and / or component, but does not exclude the presence or addition of one or more other features, integrals, steps, operations, elements, components, and / or collections thereof. It should also be understood that, as used in this application, the term "and / or" refers to any combination of one or more of the associated listed items and all possible combinations, and includes such combinations.

[0034] As used in this application, the term "if" may be interpreted, depending on the context, as "when," "once," "in response to determination," or "in response to detection." Similarly, the phrase "if determined" or "if [the described condition or event] is detected" may be interpreted, depending on the context, as "once determined," "in response to determination," "once [the described condition or event] is detected," or "in response to detection of [the described condition or event]."

[0035] Furthermore, in the description of this application, the terms "first," "second," "third," etc., are used only to distinguish descriptions and should not be construed as indicating or implying relative importance. References to "one embodiment" or "some embodiments" in this specification mean that one or more embodiments of this application include a specific feature, structure, or characteristic described in connection with that embodiment. Therefore, the phrases "in one embodiment," "in some embodiments," "in other embodiments," "in still other embodiments," etc., appearing in different parts of this specification do not necessarily refer to the same embodiment, but rather mean "one or more, but not all, embodiments," unless otherwise specifically emphasized. The terms "comprising," "including," "having," and variations thereof mean "including but not limited to," unless otherwise specifically emphasized.

[0036] It's important to note that while inertial sensor navigation is a low-cost and practical method for intelligent mobile robots, it also has significant drawbacks, primarily low navigation accuracy. Gyroscope drift and encoder drift are the main causes affecting navigation accuracy. During the operation of a robotic vacuum cleaner, complex factors such as wheel slippage can cause errors in the gyroscope and encoder. If these errors are not corrected, the robot will gradually deviate from its path. Considering that in a normal state, the robot's drive wheels propel it, meaning the distance traveled by the drive wheels as measured by the robot is consistent with its actual displacement; however, when the drive wheels are rotating while the actual displacement remains constant, the measured distance traveled by the drive wheels differs from the actual displacement, resulting in the robot slipping.

[0037] Generally, when a robot senses a change in its walking environment, it primarily detects a shift from the floor to a carpet or vice versa. Sometimes, there may be low protrusions in front of the robot, causing its drive wheels to slip or spin freely, resulting in a discrepancy between the distance measured by the encoder and the actual distance traveled, leading to errors in displacement calculations. The walking environment includes carpets, floors, obstacles the robot is currently climbing, and obstacles encountered while descending slopes. The height of obstacles (especially vertical height) also affects the robot's tilt on the obstacle surface, potentially causing the drive wheels to slip. This results in a discrepancy between the robot's map and the actual environment map, making it impossible to ensure the robot stays on the given route and / or reaches the designated location when using the global map for navigation, leading to errors in the robot's displacement distance calculations.

[0038] In addition, the ultrasonic sensor can continuously collect ultrasonic data of the detection space area at 6ms intervals. The robot can convert the location coordinate information of the area detected by the ultrasonic sensor into a global map, which can be a three-dimensional map represented by voxels or projected onto a two-dimensional grid map. The detection space area generated by the ultrasonic sensor is formed by the ultrasonic wave propagation angle and the maximum detection distance constraint, preferably constituting a conical region. The intensity of the measurement signal returned by the ultrasonic wave reflection signal includes the ultrasonic wave signal intensity of varying strengths from the nearest obstacle surface and ground medium within the conical region, which is generally expressed by level magnitude. The type of surface medium can be distinguished based on the intensity of the ultrasonic wave signal. The measurement signal returned by the ultrasonic wave reflection signal also includes the distance measurement value of the position point of the nearest obstacle surface within the conical region, or the distance information fed back from the projection area of ​​the ultrasonic wave on the obstacle surface. Since ultrasonic waves have a certain angle, such as forming a 10-degree conical region, the point cloud information of the corresponding area can be obtained, thus obtaining a set of distance information. In some embodiments of robot walking environments, when the robot crosses a partially high obstacle, the signal strength fed back from the surface of that obstacle is similar to the signal strength fed back from the carpet in front of the robot, falling within the same threshold judgment range. In this case, it is not easy to determine whether the robot's walking environment is the carpet or the partially high obstacle that the robot is currently crossing.

[0039] As one embodiment, this invention discloses a robot control method based on a specific medium region. This method is applicable to robots equipped with inertial sensors and ultrasonic sensors. The ultrasonic sensors are mounted at the front of the robot's bottom, allowing the robot to quickly detect suitable positions during movement. Preferably, considering sensor cost, at least one ultrasonic sensor is installed on each side of the robot's bottom. Each ultrasonic sensor can be positioned vertically between 2 and 3 centimeters from the robot's central axis, which is parallel to the robot's direction of travel.

[0040] As an example, such as Figure 1 As shown, Embodiment 1 discloses a robot control method based on a specific medium region. The basic steps of the robot control method include:

[0041] In step S101, the robot combines the intensity of the ultrasonic reflected signal received by the ultrasonic sensor and the angle information measured by the inertial sensor to detect a specific medium area. To overcome the problem that the intensity of the ultrasonic reflected signal from the surface of a high obstacle is too close to the intensity of the ultrasonic reflected signal from the carpet in front of the robot, making identification impossible, the robot will specifically distinguish the specific medium area and the first target obstacle within a certain signal intensity range of the ultrasonic reflected signal, and mark the corresponding grid on the global map. At the same time, the robot's state on the first target obstacle is detected, and then the walking strategy is adjusted to prevent the robot from entering the specific medium area. This process is repeated until the robot has traversed all areas except the specific medium area, and then the robot executes step S102. The first target obstacle is generally an obstacle that the robot cannot cross.

[0042] Step S102: Determine whether the robot has traversed all the specific medium partitions within the specific medium area. If yes, proceed to step S107; otherwise, proceed to step S103. The specific medium area includes multiple specific medium partitions. The specific medium area is composed of multiple closed regions formed by connecting the boundary points. One specific medium partition is a closed region, and a closed region is equivalent to a closed area. The boundary point of each specific medium partition is also a boundary point of the specific medium area. In the global map, the specific medium area is represented as multiple closed grid regions enclosed by the grids corresponding to the boundary points. One specific medium partition is represented by a closed grid region in the global map. It should be noted that in this embodiment, whenever the robot reaches a position point, it is determined that the robot has traversed that position point, and the position point is set as a traversed position point. The grid corresponding to that position point is marked as a traversed grid in the global map. Traversing each grid sequentially allows the robot to traverse a traversed area.

[0043] Step S103: After the robot has traversed the area excluding the specific medium area, the robot determines the current specific medium partition based on its current position. Then, the robot enters the current specific medium partition from the area outside the specific medium area, and then proceeds to step S104. Specifically, the robot determines the current preset target point and the current specific medium partition based on its current position. The robot first moves from its current position to the current preset target point, so that the robot can enter the current specific medium partition from the area outside the specific medium area through the current preset target point. The current preset target point serves as the navigation entry point of the current specific medium partition. The current specific medium partition is preferably a rectangular area; the current specific medium area is a closed area that allows the robot to slip.

[0044] Step S104: The robot moves within the current specific medium partition according to a preset planned path. Each time the robot moves for a predetermined time interval, the extension direction of the preset planned path is adjusted, and the robot continues moving within the current specific medium partition according to the adjusted preset planned path until the robot determines that it has completed moving within the current specific medium partition. Then, step S105 is executed. Specifically, after entering the current specific medium partition, the robot starts from a preset starting point and moves within the current specific medium partition according to the preset planned path while timing the movement. Each time the robot moves for a predetermined time interval, the extension direction of the preset planned path is adjusted, and the robot continues moving within the current specific medium partition according to the adjusted preset planned path until the time taken by the robot to move from the preset starting point reaches the work end time, at which point the robot determines that it has completed moving within the current specific medium partition. The preset starting point is the initial position point where the robot moves within the current specific medium partition.

[0045] Step S105: The robot first walks to the boundary line of the current specific medium partition, and then controls the robot to walk while keeping the two ultrasonic sensors on both sides of the boundary of the current specific medium partition by adjusting the walking direction. Specifically, the robot walks with the ultrasonic sensors on the left and right sides of the robot's central axis on both sides of the boundary of the current specific medium partition, so that the robot walks along the boundary line of the current specific medium partition until it reaches the corner point, and then executes step S106. In some embodiments, the robot will use the pose information of the corner point to update the robot's current pose information to realize the repositioning operation of the robot. The corner point is the endpoint of the boundary line that encloses the current specific medium partition, and the pose information of the corner point is pre-stored in the robot's memory.

[0046] In step S106, the robot updates the corner point described in step S105 to its current position, and then executes step S102. The pose information of the corner point described in step S105 is also updated accordingly to the pose information of the robot's current position. The robot repeatedly executes steps S102 to S106 to update the current specific medium partition, the current preset target point, and the preset starting point of the current specific medium partition, until the robot has traversed all specific medium partitions within the specific medium area, at which point the robot determines that it has completed traversing the specific medium area.

[0047] Step S107: The robot has completed its journey through the specific medium area and stops executing the robot control method. Specifically, this includes stopping in step S103 from entering a new specific medium partition, stopping in step S104 from walking within the current specific medium partition according to the preset planned path and adjusting the extension direction of the preset planned path, stopping in step S105 from maintaining the state where the two ultrasonic sensors are located on opposite sides of the boundary of the current specific medium partition, and stopping in step S106 from updating the corner point to the robot's current position point.

[0048] Based on the aforementioned steps S101 to S107, the robot first detects specific medium areas, traversable obstacles (second target obstacles), and insurmountable obstacles (first target obstacles) to adapt to walking on surfaces with different media and terrains according to a preset planned path. Then, based on the detected specific medium areas, the robot adjusts the path extension direction according to the coverage of the work area and walks within a specific medium partition according to the preset planned path, i.e., the robot traverses a specific medium partition. Then, the robot completes its localization within the most recently traversed specific medium partition by walking through a corner point in the corresponding corner area, so as to navigate to the next specific medium partition. This process is repeated iteratively until the robot has traversed all specific medium partitions within the specific medium area. When the robot is a vacuum cleaner and a specific media zone is a carpet-covered area in a room, the aforementioned embodiment relies on inertial sensors and ultrasonic sensors to perform cleaning operations with a large coverage area on each carpet zone. This also reduces mapping errors caused by the robot's drive wheels slipping and obtains accurate body positioning information within each carpet zone, so as to move from a traversed carpet zone to an untraversed carpet zone at a reasonable distance, and orderly complete the cleaning work of all carpet zones included in the indoor work area.

[0049] As an embodiment two, regarding step S101 of embodiment one, the robot combines the intensity of the ultrasonic reflected signal received by the ultrasonic sensor and the angle information measured by the inertial sensor to detect a specific medium area and a first target obstacle on the robot's walking surface, and marks the corresponding grid in the global map, assigning grid-related environmental type information and pose information; specifically, within a signal intensity range of the ultrasonic reflected signal, the specific medium area and the first target obstacle are distinguished, corresponding to distinguishing a planar area and an excessively high obstacle protruding from the horizontal plane. The specific medium area is an area with a flexible surface, such as a carpet, where the robot is prone to slipping when walking on this specific medium area. The robot also... It can detect both traversable and non-traversable obstacles. The first target obstacle is a non-traversable obstacle. Both traversable and non-traversable obstacles require the robot to tilt at a certain angle. Some traversable obstacles allow the robot to remain horizontally on the surface to a certain extent. This allows the robot to detect its state on the obstacle, overcoming carpet detection errors caused by weak signal strength from ultrasonic sensors. The robot then adjusts its walking strategy to avoid entering the detected specific medium area and to avoid crossing excessively high obstacles, thus enabling the robot to avoid carpet surfaces and excessively high obstacles in a timely manner and reducing the occurrence of robot slippage.

[0050] It is worth noting that before the robot begins walking, or before it begins cleaning as a cleaning robot, it first uses ultrasonic sensors to detect whether there is a specific medium area in front of it, such as whether the area in front of the robot is carpet. Only when no specific medium area is detected will the robot perform bow-shaped cleaning or walk along a bow-shaped path. At the same time, the robot uses information measured by inertial sensors, including displacement information measured by the odometer and angle information measured by the gyroscope, to calculate pose information and synchronously build a map. Since cleaning robots will detect slippage during normal navigation, the cleaning robot may experience more frequent slippage misidentifications on carpets due to the influence of the carpet medium. The method of this invention can eliminate the problem of slippage misidentification caused by the surface medium. When no specific medium area is detected, the robot will perform bow-shaped cleaning in the indoor area other than the specific medium area.

[0051] Furthermore, the robot can travel on the ground through various combinations of real-time changes relative to three mutually perpendicular axes defined by the body, including: the front-to-back axis, the lateral axis, and the central vertical axis; the direction of travel along the front-to-back axis is marked as the front side, serving as the robot's head (forward end); the direction of drive backward along the front-to-back axis is marked as the rear side, serving as the robot's tail (backward end); the direction of the lateral axis is essentially along the line connecting the centers of the axles of the left and right drive wheels. The cleaning robot's body can rotate laterally. Specifically, when the robot climbs over an obstacle, its forward section tilts upward and its rear section tilts downward, which is considered as the robot "tilting up." This causes the robot's body to contact the obstacle's surface at a certain tilt angle. In this case, the inertial sensor measures that the robot's pitch angle is not 0. At this time, the front part of the robot may be lifted by a ramp or similar furniture support structure, or even the drive wheels may be suspended off the ground. The robot is in a tilted-up state. The higher the obstacle, the more likely the robot is to spin freely during the crossing process. Therefore, the robot needs to avoid crossing obstacles that are too high. These types of obstacles are insurmountable obstacles, corresponding to the first target obstacle mentioned above. When the robot goes downhill, its rear section tilts upward and its front section tilts downward, a phenomenon known as "pitch-down." This causes the robot to contact the obstacle surface at a certain tilt angle. The inertial sensor then measures a non-zero pitch angle. At this time, the front part of the robot may be lifted by the ramp or similar furniture support structure, or even the drive wheels may be suspended in the air. In this top-down view, the higher the obstacle, the more likely the robot is to spin freely during the crossing. Therefore, the robot needs to avoid crossing excessively high obstacles. Consequently, the robot may not cross the first target obstacle. Additionally, the robot can rotate around its central vertical axis. When the robot is moving forward, a rotation to the right of the rear-to-rear axis is called a "right flip," and a rotation to the left of the rear-to-rear axis is called a "left flip."

[0052] Specifically, the method by which the robot combines the intensity of the ultrasonic reflected signal received by the ultrasonic sensor and the angle information measured by the inertial sensor to detect a specific medium area, and then adjusts its walking strategy to prevent the robot from entering the specific medium area includes:

[0053] During or before the robot begins walking, it controls ultrasonic sensors to emit and receive reflected ultrasonic signals, while simultaneously controlling inertial sensors to measure the robot's attitude angles. The ultrasonic sensors determine the ground type by emitting ultrasonic waves, thus determining the coverage area of ​​the specific medium, including the location of boundaries or local areas. Compared to traditional laser detection, this method is lower in cost and unaffected by light interference. Combined with the angular information from the inertial sensors, the detection process is more stable. Inertial sensors are devices that respond to physical motion, such as linear displacement or angular rotation, but do not actively emit detection signals. This allows the robot to adapt to complex and diverse indoor environments.

[0054] When the intensity of the ultrasonic reflected signal received by the ultrasonic sensor is not within a preset intensity threshold range, the robot has not detected the specific medium area, and the robot is not in a state of crossing the first target obstacle. However, it can cross obstacles of lower height without causing significant slippage or false judgment, which is within the allowable error range. Alternatively, the robot has not touched any type of obstacle and chooses to walk directly on the horizontal ground according to the preset planned path. Preferably, when the intensity of the ultrasonic reflected signal received by the ultrasonic sensor is greater than a preset judgment threshold, the robot currently detects the floor; otherwise, the robot currently detects the carpet. When the specific medium area is a flat area covered by carpet, the robot walks in a bow-shaped path outside the specific medium area, but does not enter the subsequently detected specific medium area to avoid slippage when walking on the carpet. It should be noted that the ultrasonic sensor feeds back ultrasonic signals with different intensities based on the surface density of different cleaning objects. The value within the preset intensity threshold range is related to the medium type on the surface of the specific medium area.

[0055] It should be noted that the state in which the robot is crossing the first target obstacle is relative to the horizontal plane, with the robot's body tilted and positioned on the surface of the first target obstacle; the state in which the robot is not crossing the first target obstacle is relative to the horizontal plane, with the robot horizontally positioned on the surface of the first target obstacle, or the robot not in contact with the first target obstacle. In this embodiment, the horizontal plane is equivalent to a horizontal ground surface.

[0056] In practical applications, the intensity of the ultrasonic signals fed back by carpets and obstacles climbed by robots is lower than that fed back by the floor. Based on this, an angle threshold or angle threshold range can be set, and the angle threshold range corresponding to the attitude angle measured by the inertial sensor can be used to distinguish whether the walking environment is a specific medium area on a horizontal surface or an obstacle raised above the horizontal surface that the robot can climb.

[0057] When the intensity of the ultrasonic reflected signal received by the ultrasonic sensor is within a preset intensity threshold range, and the attitude angle measured by the inertial sensor is within a first preset angle threshold range, the robot detects the presence of the specific medium (such as a carpet) on the surface of the area in front. The robot detects the specific medium area, which can be a local area of ​​the specific medium area, and marks the grid corresponding to the boundary point of the specific medium area in the global map. Here, the boundary point is a point on the edge line of the specific medium area, which can also be understood as a point on the outline of the planar area covered by the specific medium. It can be derived from the point cloud information received by the ultrasonic sensor, specifically calculated from the distance measurement information fed back by the ultrasonic reflected signal from the surface of the specific medium area. Preferably, the robot marks the currently detected specific medium area as an untraversed area, i.e., an area the robot has not walked through. The currently detected specific medium area may not be the entire area of ​​the actual environment, but may consist of one or more grids or multiple isolated partitions. The grids corresponding to the boundary points of the specific medium area are marked with information about the specific medium, such as marking the grids with carpet information. At the same time, the robot is not in a state of crossing obstacles, including not in a state of crossing the first target obstacle, so as to detect the specific medium area and the first target obstacle within a signal strength range of the ultrasonic reflection signal (within a preset strength threshold range), thereby distinguishing the specific medium area and the first target obstacle and avoiding misjudgment. In this embodiment, the robot is not in a state of crossing obstacles, which means that the robot is not in inclined contact with the surface of the obstacle, and the robot can be horizontally located on the surface of the obstacle. Then the robot adjusts its walking direction so that it does not enter the specific medium area, including the undetected partitions of the specific medium area, but can contact the boundary points of the specific medium area. At this time, the robot may not walk according to the preset planned path, but must adjust its walking direction to leave the currently detected specific medium area.

[0058] It should be noted that, in this embodiment, the acceleration information measured by the inertial sensor or the cumulative integral value of the angle transformation result of the acceleration information can be converted into the same global coordinate system to assist in the construction of a global map. The global map can be in the form of a coordinate bitmap, which is a global grid map, pre-stored in the robot's memory, and the marked relevant areas are all represented by grids. The coordinates of the corner point (the upper left, lower left, upper right, and lower right points of a grid) and the center point of each grid can represent the coordinates of that grid. The position point that the robot actually walks through or detects can correspond to the corner point or center point of a grid, and the grid corresponding to the corner point or center point can be regarded as the grid corresponding to the position point.

[0059] When the intensity of the ultrasonic reflected signal received by the ultrasonic sensor is within a preset intensity threshold range, and the attitude angle measured by the inertial sensor is within a second preset angle threshold range, the robot detects the first target obstacle and is in a state of crossing the first target obstacle. It then marks the corresponding grid on the global map, creating an obstacle grid. Specifically, it marks the grid area corresponding to the projection area of ​​the detected surface of the first target obstacle onto the horizontal plane on the global map. The robot then stops crossing the first target obstacle, breaking free from it to avoid slipping or spinning on its surface. When the robot is a robotic vacuum cleaner, specifically during operation, when it encounters a ramp or a sloping tube structure under furniture, it typically climbs upwards to cross a higher plane or climb over the sloping tube. However, this can lead to the drive wheels being suspended in the air, causing it to spin or slip, which can easily result in errors in the map constructed synchronously by the robotic vacuum cleaner. Therefore, once the robot vacuum detects the first obstacle and determines that it is in a state of crossing the first obstacle, it does not continue to cross the first obstacle, but instead retreats off the first obstacle.

[0060] It is worth noting that the values ​​within the first preset angle threshold range are less than those within the second preset angle threshold range, fully considering the limits of the robot's traversal capabilities to facilitate determination of whether the robot is on a higher obstacle. The first and second preset angle threshold ranges do not overlap.

[0061] like Figure 2 As shown, step S101 in Embodiment 1 specifically includes:

[0062] In step S201, the robot controls the ultrasonic sensor to emit ultrasonic waves and receive reflected ultrasonic signals, and controls the inertial sensor to measure the robot's attitude angle. Then, the robot executes step S202. It is important to emphasize that in this embodiment, the robot synchronously builds a map during its movement. That is, the robot converts the real-time measured pose information and the distance measurement information fed back by the ultrasonic signal into coordinate points on the map, and then marks the corresponding grids on the global map. Preferably, step S201 is executed when the robot walks along a bow-shaped path or performs bow-shaped cleaning.

[0063] In step S202, the robot determines whether the intensity of the ultrasonic reflected signal received by the ultrasonic sensor is within a preset intensity threshold range. If yes, it proceeds to step S203; otherwise, it proceeds to step S204. Preferably, the intensity of the ultrasonic signal fed back from the specific medium region falls within a preset threshold range. It should be noted that the ultrasonic sensor feeds back ultrasonic signals with different intensities based on the surface density of different detection objects. In practical applications, the intensity of the ultrasonic signal fed back by carpet is lower than that of floor tiles. Based on this, a threshold can be set to classify detection objects with ultrasonic signal intensities less than or equal to this threshold as carpets, and others as floor tiles.

[0064] In step S204, if the robot does not detect the specific medium area and is not in a state of crossing the first target obstacle, the robot can choose to walk according to the preset planned path. Specifically, step S205 can be executed to continue walking in the untraversed area and mark the corresponding grid of the area walked by the robot in the global map. Specifically, after the untraversed area becomes the area walked by the robot, the corresponding grid is marked in the global map and assigned relevant pose information and environment type information to build a complete global map until the specific medium area is detected. This avoids walking into the specific medium area according to the preset planned path, which may cause slippage and affect the accuracy of the grid map information marking.

[0065] In step S205, the robot is not in a state of crossing obstacles. At this time, the intensity of the ultrasonic reflected signal received by the ultrasonic sensor is not within the preset intensity threshold range, and the attitude angle measured by the inertial sensor is less than or equal to the preset angle threshold. Therefore, the attitude angle measured by the inertial sensor may be equal to 0, causing the robot to be horizontally positioned on the surface of the obstacle or not in contact with any raised obstacles on the horizontal ground. The robot then walks along the preset planned path, allowing it to move unimpeded along the bow-shaped path. Here, "not in a state of crossing obstacles" means that the robot is horizontally positioned on the surface of the obstacle relative to the horizontal plane, or the robot is not in contact with the obstacle. The obstacles include the first target obstacle, the second target obstacle, and other obstacles on the raised horizontal ground at other heights. In this embodiment, the horizontal plane is equivalent to the horizontal ground.

[0066] In step S203, the robot determines whether the attitude angle measured by the inertial sensor is less than or equal to a preset angle threshold. If yes, proceed to step S207; otherwise, proceed to step S206. The angle range less than or equal to the preset angle threshold is the first preset angle threshold range, and the angle range greater than the preset angle threshold is the second preset angle threshold range. The preset angle threshold is determined by the inverse trigonometric function result of the maximum allowable height the robot can traverse over obstacles. The specific calculation method is conventional trigonometric geometry. According to the definitions of pitch and roll angles, there can be various conversion methods. The preset angle threshold is positively correlated with the maximum allowable height. Details will not be elaborated here. When the attitude angle measured by the inertial sensor is a pitch angle, the preset angle threshold is the pitch angle calculated from the maximum allowable height using an inverse trigonometric function; when the attitude angle measured by the inertial sensor is a roll angle, the preset angle threshold is the roll angle calculated from the maximum allowable height using an inverse trigonometric function. In this embodiment, the result calculated using the inverse trigonometric function only needs to retain a certain level of precision. Therefore, the preset angle threshold is configured as a value within a pre-defined error range, preferably 0.1, ensuring the preset angle threshold is retained to the order of 0.1. When the preset angle threshold calculated using the aforementioned inverse trigonometric function has multiple decimal places, the preset angle threshold, within the allowable error range of 0.1, is used to obtain a single value by retaining one decimal place, serving as the unique angle value. This is to meet the navigation accuracy requirements of the inertial sensor.

[0067] In step S206, if the intensity of the ultrasonic reflected signal received by the ultrasonic sensor is within a preset intensity threshold range, and the attitude angle measured by the inertial sensor is greater than a preset angle threshold, the robot determines that it has detected the first target obstacle and is in a state of crossing the first target obstacle. This enables the detection of a specific medium area and the first target obstacle within a signal intensity range of the ultrasonic reflected signal (within a preset intensity threshold range), and marks the grid corresponding to the currently detected first target obstacle in the global map. Specifically, all grids corresponding to the coverage position can be marked as obstacle grids, so that the robot can perform avoidance operations according to the grid positions of the first target obstacle marked on the global map during subsequent navigation. In this embodiment, the first target obstacle is an insurmountable obstacle. Insurmountable obstacles are relatively high obstacles that require the robot to tilt at a large angle, resulting in a large attitude angle measured by the inertial sensor, especially a large pitch angle, which is greater than the corresponding preset angle threshold. The first target obstacle protrudes from the horizontal plane, and its height is greater than the maximum allowable crossing height for the robot. When the robot is crossing the first target obstacle, there is a risk of slipping or spinning on the surface of the first target obstacle. Then, step S208 is executed.

[0068] In step S208, the robot stops crossing the first target obstacle and breaks free from it to avoid slipping or spinning on its surface. Considering that the robot might face a spinning or slipping state due to its drive wheels being suspended in the air while crossing the first target obstacle, the robot stops crossing it, instead stepping off and continuing along the pre-planned path, thus avoiding the risk of slipping. In some embodiments, if there is an insurmountable obstacle (the first target obstacle), such as a chair, the robot can be controlled to bypass it. Specifically, one drive wheel is controlled to rotate, followed by the other drive wheel, causing the robot to stop crossing the first target obstacle and instead adjust its direction to bypass it.

[0069] Step S207: The robot detects the specific medium region and is not in a state of crossing obstacles, including not in a state of crossing the first target obstacle. It detects the specific medium region and the first target obstacle within a signal intensity range of the ultrasonic reflection signal (within a preset intensity threshold range), thus distinguishing between them. Therefore, when the robot crosses the first target obstacle or approaches the specific medium region, even if the intensity range of the detected ultrasonic reflection signal is close to the intensity range corresponding to the detected specific medium region, it can still distinguish between the specific medium region and the first target obstacle by executing the aforementioned steps. At this time, the robot may detect a local area of ​​the specific medium region existing in the actual environment. The robot marks the grid corresponding to the boundary point of the specific medium region in the global map. This can be based on the point cloud information received from the ultrasonic sensor, to prompt the robot not to enter the area. Therefore, it is necessary to mark the currently detected specific medium region as an untraversed area, but to mark each grid corresponding to the boundary point of the specific medium region with information about the specific medium, such as marking the corresponding grid with the environment type information of carpet. Then, step S209 is executed.

[0070] In step S209, the robot adjusts its walking direction so that it does not enter the currently detected specific medium area, including the previously detected specific medium area (the closed grid area enclosed by the grid corresponding to the boundary points of the specific medium area marked before the global map update). At this time, the robot may not walk according to the original preset planned path, but moves away from the specific medium area to avoid entering the interior of the specific medium area and introducing serious slippage error. Then, it continues to walk according to the preset planned path.

[0071] In summary, the robot's perception of changes in the walking environment refers to the intelligent robot detecting changes in the walking surface, such as moving from the floor to the carpet or vice versa, or a change from a horizontal plane to crossing an obstacle. It can also mean continuing to climb or descend on the surface of an obstacle, or getting stuck on an excessively high obstacle and slipping or spinning. Therefore, the aforementioned steps combine the intensity of the ultrasonic reflected signal received by the ultrasonic sensor and the angle information measured by the inertial sensor to detect a specific medium area and the first target obstacle within the same signal intensity range of the ultrasonic reflected signal, and mark the corresponding grid on the global map. At the same time, the robot's state on the first target obstacle is detected, and then the walking strategy is adjusted so that the robot does not enter the specific medium area. Furthermore, this embodiment compares the pitch or roll angle information measured by the inertial sensor with the corresponding angle value calculated from the robot's maximum traversable height. This eliminates the detection error in carpeted areas caused by weak signal strength from the ultrasonic sensor, thereby distinguishing between obstacles and carpeted areas and making an appropriate walking strategy. This accurately avoids the risk of the robot slipping on the first target obstacle and the specific medium area, ensuring that the robot continues to mark grid information in the global map that is closer to the real environment within the working area. This improves the accuracy of the global map, so that the robot can use the grid corresponding to the specific medium area and obstacle marked in the map for path planning.

[0072] Regarding the detection result of step S204 above, there is another embodiment: when the intensity of the ultrasonic reflected signal received by the ultrasonic sensor is not within a preset intensity threshold range, and the attitude angle measured by the inertial sensor is less than or equal to a preset angle threshold, the robot detects the second target obstacle and is in a state of crossing the second target obstacle. The robot then marks the corresponding grid of the detected second target obstacle in the global map, creating an obstacle grid with height information configured. The robot then continues to move forward to cross the second target obstacle. Optionally, after crossing the second target obstacle, the robot is no longer in a state of crossing an obstacle and can then walk according to a preset planned path. It should be noted that the robot is in a state of crossing the second target obstacle relative to a horizontal plane, with the robot's body tilted on the surface of the second target obstacle.

[0073] Considering that there may be low-height protrusions in front of the robot (which could be far below the maximum height the robot can cross to overcome obstacles), the error caused by the robot slipping is negligible. To continue the robot's traversal task, the robot chooses to cross the protrusion. The robot can be controlled to accelerate across, specifically by controlling the robot to retreat a preset distance and then accelerating according to a preset acceleration value. In some embodiments, the second target obstacle can be an object that the robot vacuum needs to pass through to continue cleaning, such as a threshold. After the robot vacuum has finished cleaning the living room, it still needs to clean each of the other rooms. At this time, the robot vacuum needs to cross the thresholds at the entrances of each room to complete the cleaning task of the entire cleaning area (including the kitchen, living room, and other rooms). When the robot vacuum is in the state of crossing the second target obstacle, it needs to continue crossing the threshold.

[0074] In the aforementioned embodiment, the second target obstacle has a certain height relative to the flat ground. When the robot vacuum cleaner crosses the second target obstacle, its body will tilt at an angle compared to when it is traveling on flat ground. Conversely, when the robot vacuum cleaner crosses the first target obstacle, it may get stuck on the first target obstacle, such as a step that is higher than the maximum height that the robot is allowed to cross.

[0075] It should be noted that when the attitude angle measured by the inertial sensor is a pitch angle, the preset angle threshold is the pitch angle calculated from the maximum traversable height using an inverse trigonometric function; when the attitude angle measured by the inertial sensor is a roll angle, the preset angle threshold is the roll angle calculated from the maximum traversable height using an inverse trigonometric function. Obstacles also include secondary target obstacles. These secondary target obstacles protrude from the horizontal plane, and their height is less than or equal to the maximum traversable height allowed for the robot to cross the obstacle. They are classified as relatively low obstacles and are traversable obstacles.

[0076] Based on the aforementioned embodiments, step S101 further includes: the robot walking in the area outside the specific medium area according to a preset planned path, including navigating to an untraversed location point and then walking according to the preset planned path, wherein the untraversed location point is a location point that the robot has not walked to, and is represented as an untraversed grid in the global map; during the robot's walking process, the robot combines the intensity of the ultrasonic reflection signal received by the ultrasonic sensor and the angle information measured by the inertial sensor to detect the specific medium area and the first target obstacle within a signal intensity range of the ultrasonic reflection signal, and marks the corresponding grid in the global map, while detecting the robot's state on the first target obstacle, and then adjusting the walking strategy so that the robot does not enter the specific medium area, and can mark the grids corresponding to the detected specific medium area and the first target obstacle in the global map, thereby marking the grids corresponding to the boundary points of the regular partitions that make up the specific medium area, wherein the regular partitions in the global map can be rectangular areas composed of at least one grid or multiple grids, which facilitates the determination of boundary points and center points, and is beneficial for the robot to perform subsequent path planning.

[0077] Specifically, during the process of detecting the specific medium area and the first target obstacle, the robot needs to first move to an untraversed location point, i.e., navigate to a target point. In some embodiments, if the robot does not detect the specific medium area, it will navigate to an untraversed location point and then start walking from that untraversed location point according to a preset planned path. Therefore, the robot needs to search for untraversed location points in the global map and navigate to the untraversed area accordingly. The algorithm for searching for untraversed location points is a path node search algorithm, including depth-first search and breadth-first search, which can search for the grid corresponding to the untraversed location point in the global map. Preferably, the untraversed location point is located within the robot's reachable area and is a location point that is connected to the robot's current location point by the corresponding path node search algorithm (including the A* algorithm). Then, the robot walks along the corresponding path point by point to the location point, allowing the robot to reach the location point directly without obstacles.

[0078] In this embodiment, whenever the robot searches for untraversed location points in the neighborhood of the global map, excluding the detected specific medium area, the robot first moves to the untraversed location point and sets it as a traversed location point. Preferably, the traversed location point may not include the boundary points of the specific medium area or the boundary points of the partitions that make up the specific medium area. Then, the robot continues to walk from the untraversed location point according to the preset planned path, but does not enter the specific medium area. Specifically, the robot continues to walk from the untraversed location point according to the preset planned path within a preset working area. The preset working area is the entire indoor environment area where the robot works, including the specific medium area. The points in the neighborhood can be adjacent to or connected to the robot's current location point. The neighborhood can also be regarded as a neighborhood grid area, including but not limited to the eight-neighborhood and sixteen-neighborhood of the grid corresponding to the robot's current location point.

[0079] When the robot has traversed all areas except the specific medium region, that is, when the robot has searched all areas except the specific medium region within the neighborhood of the most recently traversed position point in the preset working area, the remaining untraversed area is determined to be the specific medium region. Specifically, whenever the robot moves to a position point, it is determined that the robot has traversed that position point, and this position point is set as a traversed position point, and the corresponding grid in the global map is set as a traversed grid. When the robot detects the specific medium region or a local area thereof, it marks the grid corresponding to the boundary point of the specific medium region in the global map. That is, the grid corresponding to the point on the boundary of the specific medium region or its local area has corresponding grids in the global map that record position information and medium information. The specific medium region is composed of multiple closed regions formed by connecting the boundary points, and the boundary point of each closed region is also the boundary point of the specific medium region. A specific medium region is a closed region. The specific medium region is represented in the global map as a combination of multiple closed grid regions enclosed by the grids corresponding to the boundary points. Within the specific medium region, multiple regular specific medium partitions are discretely distributed across the global map, corresponding to multiple rooms within the same indoor environment. Each specific medium partition's boundary point is also a boundary point of the specific medium region. The robot marks the grid corresponding to the boundary point of each specific medium partition on the global map to facilitate subsequent robot relocalization and path planning. In summary, the robot recursively searches for unexplored areas on the global map, then navigates there to complete the corresponding coverage. This recursion continues until the entire region has been traversed—that is, after traversing all areas of the preset working area except for the specific medium region—leaving only the area covered by the specific medium region unexplored. At this point, the robot integrates all the marked grids corresponding to the boundary points of the specific medium region to form the grid area coverage of the specific medium region on the global map. This allows the robot to accurately identify the shape, size, and location of the specific medium region, preventing it from mistakenly entering it and reducing the risk of drive wheel slippage affecting map positioning.

[0080] Preferably, the specific medium area is a carpet-covered area. Each specific medium partition comprising the specific medium area can be a rectangular carpet area or a carpet of other shapes. Here, shape refers to the horizontal planar shape of the relevant area. When the specific medium area is covered in an indoor environment, the shape of each specific medium partition can be associated with the planar shape of the room it actually covers. The grid corresponding to the boundary point of each specific medium partition is marked in the global map. In some embodiments, the carpet area consists of multiple carpet blocks, with two carpet blocks being isolated from each other and located in different room areas. Each carpet block is marked as a closed grid area in the global map. The floor of a room area is covered by a carpet block, and the shape of the carpet block is the same as the shape of the floor of the room area (the shape of the area enclosed by the boundary of the room). For example, when a room area is composed of a connected large rectangle and a small rectangle, the shape of a carpet block is also the shape of a combination of a connected large rectangle and a small rectangle.

[0081] It should be noted that the specific medium area is a carpeted flat area, specifically a room area in an indoor environment. This area is detected by ultrasonic sensors in a robot's walking environment, and the pose information of the boundary points of the specific medium area is fed back by ultrasonic reflection signals, including coordinate and angle information calculated from the ultrasonic ranging information. The specific medium area may contain medium-pile or short-pile carpets.

[0082] Preferably, the preset planned path is a bow-shaped path; wherein, the intensity of the ultrasonic reflected signal received by the ultrasonic sensor is the reflected signal of the ultrasonic wave on the surface of the robot's walking environment. After analog-to-digital conversion, the robot can detect the strength of the signal fed back by the ground medium through the digital level signal, especially to identify carpet, prevent the robot from accidentally entering the carpet, and reduce the slippage of the robot's drive wheels.

[0083] As a third embodiment, regarding steps S103 and S104 of embodiment one, a robot control method within a specific media partition is disclosed, including: the robot starts from a preset walking starting point and walks within the specific media partition according to a preset planned path, and records the time spent within the specific media partition, including the robot's walking time within the specific media partition; in this embodiment, the moment when the relevant timing device starts timing can be considered as the robot detecting that it has started walking from the preset walking starting point. The preset walking starting point is set within the specific media partition. The robot walking according to the preset planned path within the specific media partition can also be described as the robot walking along the preset planned path within the specific media partition.

[0084] Preferably, to ensure that the robot does not easily leave the current specific medium partition and that there is a sufficiently open walking area within the current specific medium partition, the robot sets the preset walking starting point as the center point of the current specific medium partition; then the robot is controlled to start walking from the center point of the current specific medium partition and walk according to the preset planned path, and the robot simultaneously uses a timer device to record the robot's walking time to record the time of the robot at the center point of the current specific medium partition; optionally, the time of the robot walking according to the preset planned path within the current specific medium partition is timed with the time of the robot at the center point of the current specific medium partition as the timing starting point.

[0085] Preferably, the specific medium is a carpet, and the current specific medium partition is the area covered by the carpet. The current specific medium partition can be regarded as a carpet patch. The shape of the current specific medium partition is adapted to the plan shape of the room it actually covers. The boundary line of the current specific medium partition can coincide with the boundary line of a room to cover the floor area of ​​that room. The implementation scenario of the robot walking in the current specific medium partition according to the preset planned path is that the robot performs a bow-shaped cleaning operation on the carpet surface of a room area and records the time taken by the robot. That is, by recording the time of each path node of the robot on the bow-shaped path, the time taken by the robot to start walking from the preset walking starting point in the specific medium area and the time interval between two path nodes can be obtained.

[0086] Each time the robot travels through a predetermined time interval, it adjusts the extension direction of the preset planned path and then travels within the current specific medium partition according to the adjusted preset planned path. The predetermined time interval is considered the robot's actual walking time. Specifically, in this embodiment, the robot starts timing from a preset starting point. When the robot records that the time spent traveling along the preset planned path equals a predetermined time interval, it records a moment as the current target adjustment moment for the extension direction of the preset planned path. Then, the robot starts adjusting the extension direction of the preset planned path from this current target adjustment moment. After completing the current adjustment of the extension direction, the robot continues to travel within the current specific medium partition according to the adjusted preset planned path. That is, the robot travels within the current specific medium partition along the adjusted preset planned path. The time spent adjusting the extension direction of the preset planned path is included in the time consumed by the robot starting from the preset starting point of the current specific medium partition. In some embodiments, the time spent adjusting the extension direction of the preset planned path can be the time the robot pauses to switch to a pre-stored extension direction, or it can be ignored. During the process of the robot walking along the pre-planned path with adjusted extension direction within the current specific media partition, when the robot records that it has traveled for a predetermined time interval, it begins a new adjustment of the extension direction to change the previously adjusted direction. The robot repeats this process until the time taken by the robot from the predetermined starting point reaches the work end time, indicating that the robot has traversed the current specific media partition. At this point, the robot can stop walking along the pre-planned path within the current specific media partition. The work end time represents the time consumed by the robot from the predetermined starting point of the current specific media partition to the completion of the current specific media partition. It is a result calculated according to a pre-set mathematical model and includes the theoretical time spent by the robot pausing to adjust the extension direction. In summary, the robot adjusts the extension direction of the pre-planned path according to the predetermined time intervals, forming a periodic switching mechanism for the extension direction of the pre-planned path, which can cover areas not covered by a pre-planned path with a single extension direction.Specifically, this embodiment adjusts the extension direction of the preset planned path at certain time intervals to improve the robot's coverage rate within the current specific medium partition within a limited time. This avoids the problem of low coverage caused by the preset planned path extending only in one direction. Since the extension direction of the preset planned path is adjusted every time interval, the robot can cross the same local area within the same specific medium partition, improving the robot's coverage of the working surface. It also overcomes the problem that the robot cannot maintain accurate walking along the preset planned path for a long time in specific medium partitions where slippage is likely. This ensures the correctness of the robot's walking path in a short period of time and guarantees the robot's work coverage.

[0087] It should be noted that the preset planned path after the extension direction is adjusted is the same as the preset planned path after adjustment, or the preset planned path corresponding to the adjusted extension direction; the robot makes an adjustment to the extension direction of the original preset planned path, including changing the corresponding extension direction. For example, after the robot vacuum cleaner has cleaned along the bow-shaped path for a predetermined time interval, if the direction of all the parallel long side paths of the bow-shaped path is changed, then the direction of the short line segments connecting the long side paths will also change.

[0088] Preferably, the predetermined time interval represents the time taken for the robot to travel from the first path node to the second path node on the preset planned path without adjusting the extension direction. The predetermined time interval is equal to the time difference between the second moment recorded by the robot at the second path node and the first moment recorded by the robot at the first path node. The second path node is different from the first path node and consists of two path nodes on the preset planned path where the extension direction has been adjusted (but has not changed). The robot's walking direction on the preset planned path where the extension direction has been adjusted (but has not changed) is not necessarily the same and may involve multiple turns. Since the extension direction needs to be adjusted every predetermined time interval, the second path node is the end point of the robot's path on the preset planned path where the extension direction has not been adjusted, and the first path node is the starting point of the robot's path on the preset planned path where the extension direction has not been adjusted. Moreover, the robot adjusts the extension direction of the preset planned path starting from the second moment and then travels within the current specific medium partition from the second path node according to the preset planned path with the adjusted extension direction. Therefore, in some implementations, the second path node is regarded as the end point of the current preset planned path, and the first path node is regarded as the start point of the current preset planned path; furthermore, provided that the preset planned path segments before and after the extension direction adjustment are connected, the second path node can be regarded as the start point of the next preset planned path, and the first path node can be regarded as the end point of the previous preset planned path; then each predetermined time interval corresponds to a preset planned path, and the extension direction of each preset planned path can be different and can cover the current specific medium partition as much as possible. It is not excluded that there may be two preset planned paths with the same extension direction.

[0089] As one embodiment, the method for adjusting the extension direction of the preset planned path whenever the robot travels through a predetermined time interval includes: whenever the robot travels along the preset planned path for the predetermined time interval, that is, whenever the robot determines that it has traveled through the predetermined time interval on the original preset planned path, the robot changes the extension direction of the preset planned path. Specifically, this can be done by calling a pre-stored relevant control program to switch the original extension direction of the preset planned path to a new extension direction, thereby changing the overall trajectory of the preset planned path. This allows the robot to traverse positions not covered by the previous preset planned path on the newly adjusted preset planned path. Thus, during the process of walking along the newly changed preset planned path, the robot can reach positions that it did not travel along the previous preset planned path. In some embodiments, the new extension direction may be derived from the existing straight path direction (local path direction, which may form a predetermined angle with the original extension direction, such as 45 degrees or 90 degrees), and is different from the original extension direction, so that it can be directly switched after traveling through a predetermined time interval to complete the change of direction. If the extension direction of the original preset planning path changes, the preset planning path after the extension direction changes relative to the original preset planning path, including changes in trajectory direction to change the robot's working direction, but the trajectory shape of the preset planning path before and after the extension direction changes does not change.

[0090] It should be noted that the adjustment is a change or switch, which can be a random change or a change based on predetermined angle information, so that when the robot walks along the latest changed preset planning path, it can walk to areas that it has not walked on the preset planning path before the latest change; whenever the robot walks to a position point according to the preset planning path, the robot determines that it has traversed that position point and sets that position point as a traversed position point, but does not mark the grid corresponding to that position point as a traversed grid in the global map, so as to avoid introducing the robot's slip error into the global map.

[0091] In some embodiments, to ensure that the robot traverses locations not covered by the previously planned preset path on the newly adjusted preset planning path, especially when the preset planning path is a bow-shaped path and its extension direction is perpendicular to the long side of the bow-shaped path, the extension direction of the robot's currently changed preset planning path may be perpendicular to or opposite to the extension direction of one of the previously changed preset planning paths, and the locations covered by the subsequently changed preset planning path may overlap with the locations covered by the preset planning path already traversed by the robot. Preferably, after a predetermined time interval, the extension direction of the preset planning path after one adjustment becomes perpendicular to the extension direction of the original preset planning path, wherein the extension direction of the original preset planning path is parallel to the motion trajectory segment in the preset planning path, and the motion trajectory segment is parallel to the long side of the current specific medium partition.

[0092] As one embodiment, the preset planned path is a bow-shaped path, also known as an I-shaped path; in this embodiment, the robot is a cleaning robot and the current specific medium zone is the area where the carpet is located. The cleaning trajectory route generated by the cleaning robot on the carpet surface is a bow-shaped cleaning route, that is, the robot walks in the current specific medium zone according to the bow-shaped path. A bow-shaped path consists of multiple parallel motion trajectory segments. Two adjacent parallel motion trajectory segments each have an endpoint connected by a bend or a pre-defined line segment. These two adjacent parallel motion trajectory segments, along with the bend or pre-defined line segment connecting them, form a unit bow-shaped path segment. The extension direction of the unit bow-shaped path segment remains perpendicular to the motion trajectory segments. A pre-defined planned path can be formed by multiple unit bow-shaped path segments connected end-to-end. The extension direction of the pre-defined planned path remains perpendicular to the motion trajectory segments. The length of the motion trajectory segment is greater than the length of the bend, and the length of the motion trajectory segment is greater than the length of the pre-defined line segment. Regardless of whether the robot changes its extension direction, the shape of the bow-shaped path remains unchanged, maintaining a bow shape. Because it changes at predetermined time intervals and does not maintain the same extension direction (same trajectory direction) for a long time, it is less affected by drive wheel slippage errors.

[0093] In some embodiments, if the time taken for the robot to travel on a unit bow-shaped path segment is equal to the predetermined time interval, then no adjustment of the extension direction is performed within this predetermined time interval. The robot sets the first path node as the starting point of the unit bow-shaped path segment and the second path node as the ending point of the unit bow-shaped path segment. In the unit bow-shaped path segment, the length of the motion trajectory line segment is greater than the length of the bend line, and the length of the motion trajectory line segment is greater than the length of the preset line segment, regardless of whether the robot changes its extension direction.

[0094] Those skilled in the art will understand that when the robot is a cleaning robot, such as a robotic vacuum cleaner, these parallel motion trajectory segments belong to the long side cleaning route of the bow-shaped cleaning path (i.e., the bow-shaped path). The aforementioned bends or short segments are the short side cleaning routes between two adjacent motion trajectory segments, allowing these parallel motion trajectory segments to cover the reachable area of ​​the cleaning robot. However, the cleaning robot does not mark path nodes and map them onto the global map to reduce mapping errors while walking along the motion trajectory segments. The aforementioned short segments can be set perpendicular to the motion trajectory segments or the initial cleaning direction. When the extension direction of the preset planned path is changed, the coverage area of ​​the motion trajectory segments also changes, thus changing the overall extension mode of the bow-shaped path, altering the bow-shaped cleaning mode executed by the robotic vacuum cleaner, and causing the cleaning direction of the robotic vacuum cleaner to change.

[0095] As one embodiment, the angle between the currently changed extension direction and the previous extension direction is equal to the angle between the motion trajectory line segment in the bow-shaped path corresponding to the currently changed extension direction and the motion trajectory line segment in the bow-shaped path before the extension direction change. Here, the bow-shaped path corresponding to the currently changed extension direction is the bow-shaped path after the current change in extension direction. If the currently changed extension direction becomes perpendicular to the previous extension direction, then the motion trajectory line segment in the bow-shaped path corresponding to the previous extension direction and the currently changed extension direction is parallel, and a preset line segment in the bow-shaped path corresponding to the currently changed extension direction is perpendicular to a preset line segment in the bow-shaped path before the extension direction change. In this embodiment, "before the change" refers to the period before the current change, and "after the current change in extension direction" refers to the period after the latest extension direction change. That is, the angle formed by the extension directions resulting from two adjacent change operations is 90 degrees. The angle formed by the extension directions resulting from two adjacent change operations can also be other tilt angles (such as 45 degrees) to allow the robot to traverse positions not covered by the previous preset planning path on the latest changed preset planning path. When the robot is used as a sweeping robot, it can first perform a bow-shaped cleaning motion parallel to a preset line segment in the previous bow-shaped path. After a predetermined time interval, at the cleaning endpoint of the previous bow-shaped path, it performs a bow-shaped cleaning motion parallel to a preset line segment in the current changed bow-shaped path. This can effectively improve cleaning coverage. Preferably, the movement trajectory line segment in the current changed bow-shaped path is parallel to the boundary line of the current specific media zone. When the sweeping robot walks along the boundary line of the current specific media zone, it can clean the boundary of the current specific media zone, increasing the effective cleaning area within that zone.

[0096] As one embodiment, the predetermined time interval, within the allowable error range, is equal to the product of the ratio of the area of ​​the current specific medium partition to the robot's effective coverage area and a second preset coefficient; the work completion time is equal to the product of the ratio of the area of ​​the horizontal plane of the current specific medium partition to the robot's effective coverage area and a first preset coefficient; wherein, the robot's effective coverage area is equal to the product of the preset robot walking speed and the robot's body width, which is equivalent to the area covered by the robot's body during 1 second of robot walking; satisfying the time change state during the actual robot walking process, it is a correction result for the time consumed by walking according to the preset planned path, overcoming the errors caused by changes in the walking surface medium and the robot's body movements. The direction along which the robot's body width is perpendicular to the robot's walking direction; the preset robot walking speed is the result of experiments, preferably 0.3 meters per second.

[0097] It should be noted that the grid corresponding to the boundary point of the current specific media partition is pre-marked in the global map, so the coordinate information of the boundary point of the current specific media partition can be obtained. When the current specific media partition is set in a room area of ​​an indoor environment, the current specific media partition can be a rectangular area or an area composed of multiple rectangles. The endpoints of the current specific media partition (including the upper left corner, lower left corner, upper right corner, and lower right corner) can be obtained. The side length of the boundary line formed by connecting the endpoints of the current specific media partition can be calculated from the endpoints of the current specific media partition. Based on the division of the current specific media partition into multiple rectangular areas, the area of ​​the current specific media partition can be calculated by the method of calculating the area of ​​the rectangles (the product of length and width (for a single rectangle), or the sum of the products of length and width (for a combination of multiple rectangles)). Alternatively, the area can be calculated by the number of grids filled in the closed area enclosed by the boundary line. Therefore, the ratio of the area of ​​the current specific medium partition to the robot's effective coverage area is equal to the time it takes for the robot to completely traverse (walk through) the current specific medium partition without errors, pauses, or rotation time. This time is considered the robot's walking time. Thus, in this embodiment, the ratio of the area of ​​the current specific medium partition to the robot's effective coverage area is set as the standard walking end time. However, the actual time the robot takes to walk through the current specific medium partition is greater than this ratio. It should be noted that the current specific medium partition is a closed area that allows the robot to slip, causing the shape of the actual trajectory the robot traces within the current specific medium partition to differ from the shape of the preset planned path.

[0098] Therefore, this embodiment needs to set the first preset coefficient to compensate for the error caused by the robot walking in the current specific medium partition; the first preset coefficient is used to represent the difference between the area covered by the actual trajectory of the robot after the robot has traversed the current specific medium partition and the area of ​​the current specific medium partition. The reasons for the difference include, but are not limited to: the time consumed by the robot to stop for direction adjustment calculation and / or path planning calculation (not included in the robot's walking time), the difference between the product of the robot's effective coverage area (the area covered by the robot's body during 1 second of robot walking) and a turning time and the area of ​​the new area generated by the robot turning in the same turning time, and the area of ​​the area covered by the robot due to slipping on the carpet surface, which is larger than the area covered by the preset planned path.

[0099] Preferably, in order to calculate the predetermined time interval based on the standard walking end time, a second preset coefficient needs to be set to proportionally calculate the standard walking end time; the second preset coefficient is adapted to the shape of the current specific medium partition; the second preset coefficient is related to the number of boundary lines surrounding the current specific medium partition, and the larger the number of boundary lines surrounding the current specific medium partition, the smaller the second preset coefficient; thereby allocating the standard walking end time to each boundary line of the current specific medium partition, so that the extension direction of the adjusted preset planning path can correspond to the extension direction of each boundary line of the current specific medium partition, thereby configuring the robot to make reasonable adjustments to the extension direction of the preset planning path.

[0100] Based on the above embodiments, when the product of the ratio of the area of ​​the current specific medium partition to the effective coverage area of ​​the robot and the second preset coefficient is less than the first preset coefficient, the product of the ratio of the area of ​​the current specific medium partition to the effective coverage area of ​​the robot and the second preset coefficient is assigned the first preset coefficient; otherwise, it is not necessary to forcibly assign the first preset coefficient. This ensures that the value of the predetermined time interval is not less than the first preset coefficient, thereby achieving that the predetermined time interval is equal to the product of the ratio of the area of ​​the current specific medium partition to the effective coverage area of ​​the robot and the second preset coefficient within the allowable error range. This overcomes the misjudgment problem of excessively long actual walking time caused by related errors, and conforms to the robot's walking state.

[0101] Preferably, the current specific medium partition is a rectangular planar area whose surface is covered with a specific medium; since the current specific medium partition is a closed area that causes the robot to slip, the current specific medium partition can be set as a carpet area, and the specific medium is set as a carpet; the preset planning path is a bow-shaped path; wherein, the first preset coefficient is set to a value greater than or equal to 2, the second preset coefficient is set to a value of 1 / 4, corresponding to the four boundary lines of the rectangular planar area; when the value of the predetermined time interval is less than the value of 2, the robot sets the value of the predetermined time interval to the value of 2, and the unit can be seconds.

[0102] As one embodiment, an ultrasonic sensor is mounted at the front of the bottom of the robot to emit ultrasonic waves toward the robot's walking surface, which can detect the current specific medium partition in a timely manner. In this embodiment, a preset intensity threshold range is set to represent the signal intensity range of the ultrasonic wave reflected signal fed back by the current specific medium partition. As the robot moves along a pre-planned path within the current specific medium zone, it controls ultrasonic sensors to emit ultrasonic waves and receive reflected ultrasonic signals. Excluding interference from the signal strength of reflected ultrasonic signals from obstacles at a specific height, if the intensity of the reflected ultrasonic signal received by the ultrasonic sensor is within a preset intensity threshold range, the robot determines that a specific medium, such as a carpet, exists on the surface in front of it; that is, the robot has detected the current specific medium zone. However, if, during the robot's movement within the current specific medium zone, an ultrasonic sensor receives a reflected ultrasonic signal whose intensity is not within the preset intensity threshold range, the robot detects that no specific medium exists on the surface in front of it. Since the robot is moving within the current specific medium zone, when it detects the absence of a specific medium, the detection range of that ultrasonic sensor is outside the current specific medium zone; the ultrasonic sensor may be located outside the current specific medium zone. In this case, the robot may have moved to a position near the boundary line of the current specific medium zone. Therefore, in this embodiment, the robot has detected the boundary line of the current specific medium zone and determines that it has moved to the boundary line of the current specific medium zone. Then the robot adjusts its walking direction, i.e., adjusts its walking angle, to walk towards the interior of the current specific medium partition, avoiding leaving the boundary line of the current specific medium partition. This prevents the robot from walking outside the current specific medium partition, allowing part of the robot to protrude outside the current specific medium partition, but the robot's walking direction needs to be adjusted to move the robot towards the interior of the current specific medium partition, so that the robot can detect the current specific medium partition again; then the robot walks within the current specific medium partition according to a preset planned path, wherein the preset planned path... The extension direction is perpendicular to the adjusted walking direction and parallel to the long side of the bow-shaped cleaning route (the robot is a sweeping robot, and the preset planned path is the bow-shaped path). The newly adjusted preset planned path that the robot follows after obstacle avoidance may not be connected to the preset planned path before adjustment. Then the robot continues to execute the implementation method disclosed in the previous embodiment, in which the robot adjusts the extension direction of the preset planned path every time the robot has walked through a predetermined time interval, and then walks in the current specific medium zone according to the preset planned path after the extension direction is adjusted, thereby realizing the adjustment of the extension direction of the preset planned path that the robot originally walked.In summary, under the premise of robot pose calculation and without using global map localization, the robot controls itself to stay within the current specific medium zone by sensing the signal strength information of the ground medium on which the robot is actually walking through the ultrasonic sensor. This can avoid the influence of slippage misjudgment caused by the inertial sensor in the current specific medium zone, and ensure that the robot can continue to walk within the current specific medium zone, thus ensuring the robot's walking coverage of the current specific medium zone.

[0103] It should be noted that ultrasonic sensors are used to collect ultrasonic data reflected from the ground medium. These sensors can continuously collect ultrasonic data from the current specific medium zone at 6ms intervals. The detection space generated by the ultrasonic sensor is constrained by the ultrasonic wave propagation angle and the maximum detection distance, preferably forming a conical region. The measured value returned by the reflected ultrasonic signal includes the distance measurement to the ground medium region (the current specific medium zone) closest to the ultrasonic sensor within this conical region. Because ultrasonic waves have a certain angle, such as forming a 10-degree conical region, the corresponding point cloud will be a region, providing a set of points. Furthermore, the ultrasonic sensor, based on the different surface densities of different cleaning objects, feeds back ultrasonic signals with varying intensities. After analog-to-digital conversion, a level signal reflecting the type of ground medium is obtained. The robot can detect the strength of the signal fed back by the surface medium using the digital level signal. Specifically, when the intensity of the ultrasonic reflected signal received by the ultrasonic sensor is not within a preset intensity threshold range, the robot has not detected the current specific medium zone, and the robot is not in a state of crossing obstacles. Preferably, the robot detects a hard surface such as a floor when the intensity of the ultrasonic reflected signal received by the ultrasonic sensor is greater than a preset judgment threshold; otherwise, the robot detects a soft surface such as a carpet.

[0104] As one embodiment, during the process of the robot walking within the current specific medium zone according to the preset planned path, if the robot encounters an obstacle, it can detect the obstacle through a collision sensor. The robot then adjusts its walking direction to avoid the obstacle, that is, it adjusts its walking angle and walks away from the obstacle. Then, the robot walks within the current specific medium zone according to the preset planned path, wherein the extension direction of the preset planned path is perpendicular to the adjusted walking direction, enabling unobstructed movement within the current specific medium zone according to the preset planned path corresponding to the newly adjusted extension direction. However, the newly adjusted preset planned path followed by the robot after obstacle avoidance may not be connected to the preset planned path before adjustment. The robot then continues to execute the implementation method disclosed in the aforementioned embodiment, whereby the robot adjusts the extension direction of the preset planned path every predetermined time interval, and then walks within the current specific medium zone according to the preset planned path with the adjusted extension direction. This process is repeated until the time taken for the robot to walk from the preset starting point reaches the work end time, indicating that the robot has completed walking within the current specific medium zone.

[0105] In Example 3, as Figure 3 As shown, steps S103 and S104, executed sequentially in Embodiment 1, specifically include:

[0106] Step S301: After determining the grid corresponding to the boundary points of all specific medium areas marked by the robot in the global map, the robot first searches for the current preset target point, then walks from the current position point to the current preset target point, and then starts walking from the current preset target point to the preset walking starting point of the specific medium partition where the current preset target point is located; then execute step S302.

[0107] It is worth noting that before entering the specific medium area, the robot has already traversed (walked through) the area excluding the specific medium area by executing step S101 of the aforementioned embodiment, and marked the grid corresponding to the boundary points of the specific medium area in the global map. Specifically, before the robot executes step S301 for the first time, the robot maintains the grid corresponding to the boundary points of multiple specific medium partitions marked in the global map during its walking process, until the robot has traversed the area excluding all specific medium areas, and then starts executing step S301. The specific medium area includes multiple specific medium partitions, and the current specific medium partition is a specific medium partition that has not been walked by the robot before the execution of step S103 or step S301.

[0108] Optionally, in step S101, the robot can walk along a preset planned path in areas outside the specific medium region, such as along a bow-shaped path. During the walking process, the robot can detect the specific medium region based on the intensity of the ultrasonic reflection signal received by the ultrasonic sensor, and calculate the pose information of the boundary points by combining the distance measurement information fed back by the ultrasonic reflection signal from the surface of the specific medium region. That is, the pose information of the points on the edge line of the specific medium region, which can also be understood as the pose information of the points on the contour line of the planar area covered by the specific medium. Then, the specific medium partition that makes up the specific medium region is a closed region enclosed by its boundary points. The boundary line of the specific medium partition is formed by connecting the boundary points of the specific medium partition. Preferably, different specific medium partitions do not share a common corner point or a common boundary line. In an indoor environment, the shape and size of each specific medium partition can be adapted to the planar shape and size of the room it actually covers. It should be noted that when the robot has traversed all areas except for the specific medium region, and determines that the remaining untraversed areas are all specific medium regions, then each specific medium partition is marked as an untraversed area. Specifically, when the robot detects a specific medium region, it marks the grid corresponding to the boundary point of the specific medium region in the global map. This is equivalent to each point on the boundary of the specific medium partition having its location information and medium information marked in a corresponding grid in the global map. The boundary points marked by the robot are then connected in the global map to form multiple closed regions, and the robot sets all closed regions as specific medium partitions.

[0109] In step S301, the method by which the robot determines the current specific medium partition based on its current position includes:

[0110] The robot selects the corner closest to its current position from all corners of specific media zones that it has not yet traversed, i.e., from all corners of specific media zones determined in step S101, and sets it as a reference corner. A specific media zone is an area the robot has not traversed. The grids corresponding to the boundary points of all specific media zones are marked on the global map. The boundary points of a specific media zone include corners, which are the endpoints of the boundary lines enclosing the specific media zone. Each corner has a corresponding specific media zone. When the planar shape of the specific media zone is a polygon, the corners of the specific media zone are the vertices of the specific media zone, and the boundary lines of the specific media zone are the edges enclosing the polygon. A specific media zone is equivalent to a closed shape formed by multiple boundary line segments connected end-to-end, corresponding to a closed region. Polygons can be divided into regular polygons and non-regular polygons, convex polygons and concave polygons, and are preferably rectangles. This embodiment uses the reference corner to determine the specific media zone closest to the robot, accelerating the robot's entry into the specific media zone.

[0111] Then, within the specific medium partition where the reference corner point is located, the robot selects two boundary lines with the reference corner point as a common endpoint and configures them as the first reference edge and the second reference edge, respectively. The boundary lines of the specific medium partition are formed by connecting the boundary points of the specific medium partition; each boundary line has its corresponding specific medium partition. Then, the robot selects the midpoint between the midpoint of the first reference edge and the midpoint of the second reference edge, and configures it as the current preset target point. The specific medium partition where the reference corner point is located is the specific medium partition where the current preset target point is located. The robot sets the specific medium partition where the current preset target point is located as the current specific medium partition. This achieves the selection of the midpoint on the corresponding boundary line of the specific medium partition as the navigation entry point for the robot to enter the nearest specific medium partition according to the proximity principle, and correspondingly, also determines the specific medium partition that the robot currently needs to enter.

[0112] In step S301, the method for the robot to enter the current specific medium partition from an area outside the specific medium area includes: forming a navigation path based on the passable grids between the grids corresponding to the current position point and the grids corresponding to the current preset target point, which are searched on the robot's global map; and then the robot walks along the navigation path, point by point, to the current preset target point. As for the method of walking from the current preset target point to the preset starting point of the specific medium partition where the current preset target point is located, the robot walks directly along the direction from the current preset target point to the corresponding preset starting point. If it collides with an obstacle, it adjusts its walking direction until it reaches the preset starting point. The pose information of the current preset target point and the preset starting point of the specific medium partition where it is located can be pre-calculated and saved, and the corresponding grids can be marked on the global map. The robot's current position point is represented by the robot's body center point. When the robot reaches the preset starting point, it determines that it has completely entered the current specific medium partition and stops using the accumulated values ​​of mileage and angle measured by the inertial sensors to calculate the robot's pose. It also stops marking grids on the global map to reduce the mapping of robot slippage error data to the global map. The current preset target point is located on the boundary line of the current specific medium partition to facilitate the selection of the shortest path to guide the robot from the outside into the current specific medium partition. In this embodiment, the preset starting point is set as the center point of the current specific medium partition where the current preset target point is located, to ensure that the robot has completely entered the current specific medium partition. The pose information of the center point of the current specific medium partition can be calculated from the pose information of the boundary points of the current specific medium partition, especially when the current specific medium partition is a regularly shaped region, it is easier to calculate the pose information of its center point (center of symmetry). Preferably, when the horizontal plane shape of the current specific medium partition is rectangular, the corner points of the current specific medium partition are the endpoints of the current specific medium partition, and the boundary lines of the current specific medium partition are the sides that enclose the current specific medium partition; wherein, the current preset target point is the midpoint of the corresponding side belonging to the current specific medium partition.

[0113] Step S302: The robot starts from the preset starting point of the current specific medium partition and walks within the current specific medium partition according to the preset planned path, recording the time spent within the current specific medium partition, which corresponds to the robot's running time, including the time spent walking within the current specific medium partition; then, step S303 is executed. The robot, in the specific medium partition where the current preset target point is located as determined in step S301, starts from the preset starting point and walks along the preset planned path while simultaneously timing itself, recording the time taken for the robot to start walking from the preset starting point. Step S302 obtains the time taken for the robot to walk from the preset starting point of the current specific medium partition, and the time interval between two path nodes, by recording the time of each path node on the bow-shaped path. This time interval is the time taken for the robot to walk along the newly determined preset planned path segment. The preset planned path can be a bow-shaped path; specific implementation methods are described in the foregoing embodiments and will not be repeated here.

[0114] Step S303: Determine whether the time taken for the robot to walk from the preset starting point has reached the work end time. If yes, proceed to step S304; otherwise, proceed to step S305. The work end time represents the time taken for the robot to walk from the preset starting point until it has completed the current specific medium partition. It is the result calculated according to a preset mathematical model. The specific sources of the work end time and the predetermined time interval are described in the foregoing embodiments and will not be repeated here.

[0115] Step S304: Determine that the robot has completed traversing the current specific media zone, and stop adjusting the extension direction of the preset planned path. Alternatively, the robot can stop traversing within the current specific media zone and reset the time recorded within that zone. This concludes the execution of robot traversal control within the current specific media zone.

[0116] Step S305: Whenever the robot travels through a predetermined time interval, the robot adjusts the extension direction of the preset planned path, that is, changes the extension direction of the preset planned path, and then travels within the current specific medium partition according to the preset planned path with the adjusted extension direction. This allows the robot to travel to positions it did not travel on the previous preset planned path during its journey along the newly adjusted preset planned path. Then, the process returns to step S303 to continuously determine whether the time taken by the robot to travel from the preset starting point described in step S302 has reached the work completion time during the robot's journey along the newly adjusted preset planned path.

[0117] In this embodiment, the robot starts timing from the preset walking starting point mentioned in step S302. When the robot records that the time spent walking along the preset planned path is equal to a predetermined time interval, a moment is recorded as the current target adjustment moment for the extension direction of the preset planned path. Then, the robot starts adjusting the extension direction of the preset planned path from this current target adjustment moment. After completing the current extension direction adjustment, the robot can time its walking time (starting from the moment the extension direction adjustment is completed, the robot continues to time its walking time, and a predetermined time interval is calculated). The robot continues to walk within the current specific medium partition according to the preset planned path after the extension direction adjustment. That is, the robot walks within the current specific medium partition along the preset planned path after the extension direction adjustment, and then returns to step S303 to continue to determine the time spent by the robot from the preset walking starting point. In some embodiments, the time for adjusting the extension direction of the preset planned path can be ignored.

[0118] Therefore, during the process of the robot walking along the pre-planned path adjusted in the extension direction within the current specific medium partition, when the robot records that it has walked along the pre-planned path for a predetermined time interval, the robot begins a new adjustment of the extension direction. The robot repeats this process until the time taken for the robot to walk from the predetermined starting point reaches the work end time, indicating that the robot has traversed the current specific medium partition. At this point, the robot can stop adjusting the extension direction of the pre-planned path or stop walking within the current specific medium partition. The work end time represents the time consumed by the robot to walk through the current specific medium partition, which is the result calculated according to a pre-set mathematical model, including the time spent by the robot pausing to adjust the extension direction. In summary, by repeatedly executing steps S303 to S305, the robot adjusts the extension direction of the pre-planned path according to the predetermined time interval, forming a periodic change mechanism for the extension direction of the pre-planned path. This increases the coverage area of ​​the robot's movement within the current specific medium partition, allowing it to cover areas not covered by a single-direction pre-planned path.

[0119] As a preferred example, if an obstacle is detected during the repeated execution of steps S303 to S305, the robot first adjusts its walking direction to avoid the obstacle. Then, the robot walks within the current specific medium partition according to a preset planned path, wherein the extension direction of the preset planned path is perpendicular to the adjusted walking direction. Then, the robot continues to execute the implementation method disclosed in step S305, in which the robot adjusts the extension direction of the preset planned path every time a predetermined time interval has elapsed, that is, changes the extension direction of the preset planned path, and then walks within the current specific medium partition according to the preset planned path with the adjusted extension direction. This is repeated until the time taken by the robot to walk from the preset walking starting point reaches the work end time, and it is determined that the robot has walked through the current specific medium partition, that is, the robot has walked through the current specific medium partition from the preset walking starting point.

[0120] As a preferred example, during the repeated execution of steps S303 to S305, when the intensity of the ultrasonic reflected signal received by the robot's ultrasonic sensor is not within a preset intensity threshold range, the robot detects that there is no specific medium on the surface of the area in front of it. Since the robot is walking within the current specific medium partition, when the robot does not detect the presence of a specific medium on the surface of the area in front of it, the detection range of the ultrasonic sensor is outside the current specific medium partition. Therefore, the robot is configured to walk to the boundary line of the current specific medium partition, and then adjust its walking direction so that it does not walk outside the current specific medium partition, but instead moves into the interior of the current specific medium partition. Then, the robot can detect the current specific medium partition again; then the robot proceeds according to the preset... The robot travels along the planned path within the current specific medium partition. The extension direction of the preset planned path is perpendicular to the adjusted travel direction. The latest adjusted preset planned path followed by the robot after obstacle avoidance may not be connected to the previous preset planned path. Then, the robot continues to execute the implementation method disclosed in step S305 above, in which the robot adjusts the extension direction of the preset planned path whenever a predetermined time interval has elapsed, i.e., changes the extension direction of the preset planned path, and then travels within the current specific medium partition according to the preset planned path with the adjusted extension direction. This process is repeated until the time taken by the robot to travel from the preset starting point reaches the work end time, at which point it is determined that the robot has completed the corresponding current specific medium partition. That is, the robot is considered to have completed the current specific medium partition from the preset starting point.

[0121] In conjunction with the method disclosed in step S301 of Embodiment 3 for the robot to determine the current specific medium partition based on its current position, in step S106 of Embodiment 1, the robot returns to execute step S102. Specifically, the robot selects the corner point closest to the robot's current position after step S106 from all the corner points of the currently untraversed specific medium partitions and configures it as a reference corner point; then, in the specific medium partition to which the reference corner point belongs, it selects two boundaries with the reference corner point as a common endpoint and configures them as a first reference edge and a second reference edge, respectively; then, among the midpoints of the first and second reference edges, it selects the midpoint closest to the robot's current position after step S106. The reference corner point is configured as the next preset target point; and the specific medium partition to which the reference corner point belongs is the next specific medium partition. The next preset target point serves as the navigation entry point for the robot to enter the next specific medium partition. The center point of the next specific medium partition is then configured as the preset starting point for walking in the next specific medium partition. The next specific medium partition is updated to the current specific medium partition, the next preset target point is updated to the current preset target point, and the preset starting point for walking in the next specific medium partition is updated to the preset starting point for walking in the current specific medium partition. This allows the robot to start walking in the next specific medium partition from the preset starting point and follow a preset planned path, executing step S302 disclosed in Embodiment 3. In summary, the robot repeatedly executes steps S102 to S106 to update the current specific medium partition, the current preset target point, and the preset starting point for walking in the current specific medium partition until the robot has walked through all the specific medium partitions within the current specific medium partition. The robot then determines that it has completed walking through the current specific medium partition.

[0122] It should be noted that while inertial navigation is a low-cost and practical navigation method for intelligent mobile robots, its drawbacks are also significant, primarily manifested in low navigation accuracy. Gyroscope drift and encoder drift are the main causes affecting navigation accuracy. When intelligent mobile robots operate on soft surfaces such as carpets (the floor coverings in indoor environments), complex factors such as wheel slippage cause errors in the gyroscope and encoder. Accumulated errors over time lead to significant inaccuracies in the map constructed by the robot, such as map deviations. If these errors are not corrected, the intelligent mobile robot will gradually deviate from its path, and the longer the robot travels, the greater the error. Furthermore, if the intelligent mobile robot chooses not to calculate its own pose information (including position coordinates and angles) on soft surfaces like carpets and does not build a map in real time (i.e., not marking new grids on the global map), it will lose its pose information (including position coordinates and angles) on the carpet surface. To prevent this, the robot needs to be aware of potential issues before leaving the carpet. The robot re-acquires its own pose information (i.e., relocalization) to facilitate path planning in areas outside the carpet. After the robot determines in step S104 that it has completed walking through the current specific medium partition, that is, after determining that the time taken by the robot to walk from the preset walking starting point has reached the work end time, the robot needs to execute step S105 disclosed in Embodiment 1. Specifically, after the robot determines that it has completed walking through the current specific medium partition, the robot first walks to the boundary line of the current specific medium partition, and then controls the robot to walk while keeping the two ultrasonic sensors on both sides of the boundary of the current specific medium partition by adjusting the walking direction, so that the robot walks along the boundary line of the current specific medium partition until it reaches the corner point; where the corner point is the endpoint of the boundary line that encloses the current specific medium partition.

[0123] As an example four, the specific implementation method of step S105 disclosed in example one includes:

[0124] Step 1: The robot moves within the current specific medium partition to the boundary line of the current specific medium partition, and then adjusts the two ultrasonic sensors to be positioned on either side of the boundary line of the current specific medium partition. When starting to execute Step 1, the robot can be already on the boundary line of the current specific medium partition, or it can be in the vicinity of the center point of the current specific medium partition (which can be a local area 30 cm away from the center point). Generally, as the robot moves along a pre-planned path (which can be a bow-shaped path frequently used by robotic vacuum cleaners) within a specific media zone, it detects the boundary line of the current specific media zone by combining the intensity of the ultrasonic reflected signals received by the ultrasonic sensors and the angle information measured by the inertial sensors. Then, on or near the boundary line of the current specific media zone (which can be a distance from the boundary line but within the detection range of the ultrasonic sensors), the robot begins to adjust the two ultrasonic sensors to be positioned on either side of the boundary line of the current specific media zone. In some embodiments, after the robot adjusts the two ultrasonic sensors to be positioned on either side of the boundary line of the current specific media zone, the robot's current position is located on the boundary line. It should be noted that the robot's current position is the center point of the robot's body. The method of adjusting the two ultrasonic sensors to be positioned on either side of the boundary line of the current specific media zone can be that the robot rotates its body and changes its walking direction until each ultrasonic sensor detects the corresponding ground media type information.

[0125] It should be noted that before executing step S105 of Embodiment 1, the robot remains within the current specific medium partition. The current specific medium partition is a closed area where the robot may slip, such as a carpet or other surface layer. Specifically, the robot can start from a preset starting point and walk within the current specific medium partition according to a preset planned path. During the walking process, the robot does not calculate its own pose information (including position coordinates and angle information) and does not build a map in real time. The robot can change its walking direction every predetermined time interval. This allows the robot to adjust the preset planned path before it accumulates a sufficiently large offset error due to slippage within the current specific medium partition. This prevents the robot from deviating too far from the original preset planned path while still providing relatively comprehensive coverage of the current specific medium partition. At this time, the robot is still within the current specific medium partition, but it has not calculated and obtained the relevant pose information of the current position point. The robot has not updated the global map and therefore cannot obtain real-time positioning information from the global map. Step S105 needs to be executed. In some embodiments, the condition for the robot to begin executing step S105 is: the robot records that its walking time in the current specific medium partition has reached the specified end time, and the robot determines that it has completed walking in the current specific medium partition.

[0126] Step 2: The robot walks while maintaining the two ultrasonic sensors positioned on either side of the boundary line of the current specific medium partition. The robot moves along the boundary line of the current specific medium partition until it reaches a corner. The pose information of this corner is then used to update the robot's current pose information, completing the robot's relocalization. It should be noted that the pose information of each boundary line forming the current specific medium partition is pre-stored in the robot's memory. This is done by marking the corresponding grids on the global map and recording the pose information before the robot enters the current specific medium partition. A corner is the endpoint of a boundary line forming the current specific medium partition, i.e., the common endpoint of two adjacent boundary lines; its pose information is also pre-stored in the robot's memory. In this embodiment, whether the robot has reached a corner can be determined by the change in rotation angle over a certain period of time, the relationship between the rotation angle and the pre-stored grid position, the relationship between the starting point of the robot's movement along the boundary line of the current specific medium partition and the position of the first corner reached, or a combination of these factors for a comprehensive judgment, etc. Thus, without real-time mapping of new grid information or real-time calculation of robot pose information, the robot's current position can be repositioned to the pre-recorded position of this corner point within the robot.

[0127] Specifically, the two ultrasonic sensors, located on either side of the boundary line of the current specific medium zone, are situated on the left and right sides of the robot's central axis. When the current specific medium zone is polygonal and the two ultrasonic sensors are configured to be mounted on either side of the robot's central axis, in order to maintain the two ultrasonic sensors on either side of the boundary line of the current specific medium zone, the robot will rotate its body once or multiple times during movement. During this process, the robot's body (including the drive wheels and ultrasonic sensors) inevitably repeatedly enters and exits the current specific medium zone. The robot's movement trajectory forms a trajectory line intersecting with the boundary line of the current specific medium zone. The robot then moves along the boundary line of the current specific medium zone in this manner. When the robot is a vacuum cleaner, it can perform staggered cleaning of the current specific medium zone, moving in a preset clockwise direction within the current specific medium zone to achieve edge-to-edge movement around the center of the current specific medium zone in a fixed edge-to-edge direction.

[0128] As one embodiment, the two ultrasonic sensors are symmetrically mounted on the left and right sides of the robot's central axis in some implementations, which makes it easier to control the robot to walk along the boundary line of the current specific medium partition. The robot's left and right drive wheels are preferably located on both sides of the boundary line of the current specific medium partition. When the shape of the current specific medium partition is rectangular, if the robot walks while keeping the two ultrasonic sensors on both sides of the boundary line of the current specific medium partition, the robot's central axis is parallel to the boundary line of the current specific medium partition it is following. In this way, the robot is controlled to walk along the boundary line of the current specific medium partition until it is determined that it has walked to the corner point, which corresponds to the vertex of the rectangle, based on the angle information detected by the robot. Because the robot walks on or near the boundary line, and the displacement information measured by the encoder or odometer in the inertial sensor within the current specific medium partition shows slippage error, the robot generates walking error in the corresponding boundary segment, making it difficult to locate. It is not suitable to use boundary points other than corner points as references for repositioning. After all, the robot needs to rotate at a specific angle in the direction of travel at the corner point, which is suitable as a reference angle for repositioning. This reference angle can be set within the range of allowable slippage error.

[0129] It should be noted that the pose information of the corner points is pre-stored in the robot's memory. Similarly, the global map is pre-stored in the robot's memory. This global map is created before the robot enters the current specific medium zone by using its onboard sensors (e.g., accelerometers, gyroscopes, ultrasonic rangefinders, etc.) to search the movement area of ​​each room, sensing the position, shape, and size of each room, as well as the position, shape, and size of any obstacles encountered, and based on this, drawing a global map containing environmental boundary information.

[0130] As one embodiment, in step 1, the method of adjusting the two ultrasonic sensors to be positioned on either side of the boundary line of the current specific medium partition includes:

[0131] When the robot reaches the boundary line of the current specific medium partition, it rotates its body to adjust its direction of travel. The robot can rotate in place and its body can cover the boundary line until the intensity of the ultrasonic reflected signal received by the first ultrasonic sensor is not within a preset intensity threshold range, the intensity of the ultrasonic reflected signal received by the second ultrasonic sensor is within a preset intensity threshold range, and the attitude angle measured by the inertial sensor is less than or equal to a preset angle threshold. In this case, the robot does not detect the current specific medium partition on the side corresponding to the first ultrasonic sensor, and the robot detects the current specific medium partition on the side corresponding to the second ultrasonic sensor. Then, the first ultrasonic sensor and the second ultrasonic sensor are separated in the current specific medium partition. The robot is positioned on both sides of the boundary line of the current specific medium partition, and is located on both sides of the boundary line of the two ultrasonic sensors. The preset angle threshold is determined by the inverse trigonometric function of the maximum allowable height that the robot can cross over the obstacle. The first ultrasonic sensor and the second ultrasonic sensor are fixedly mounted on both sides of the robot's central axis. There is a boundary line of the current specific medium partition between the first ultrasonic sensor and the second ultrasonic sensor. Preferably, when the first ultrasonic sensor and the second ultrasonic sensor are symmetrically arranged on the left and right sides of the robot's central axis, the first ultrasonic sensor and the second ultrasonic sensor can be symmetrically arranged about the boundary line of the current specific medium partition along which the robot is traveling.

[0132] During the execution of the robot relocalization method, the robot controls each ultrasonic sensor to emit ultrasonic waves and receive reflected ultrasonic signals, while simultaneously controlling the inertial sensors to measure the robot's attitude angles. Corresponding to step 1, before the robot begins walking along the boundary line of the current specific medium partition or during the process of the robot rotating its body to adjust its walking direction, the following detection results are included:

[0133] When the intensity of the ultrasonic reflected signal received by the ultrasonic sensor is not within a preset intensity threshold range, the robot has not detected the current specific medium partition; specifically, it detects that the surface of the area in front does not contain the specific medium, and the robot is not in a state of crossing the first target obstacle. It should be noted that the ultrasonic sensor feeds back ultrasonic signals with different intensities based on the surface density of different cleaning objects. The value within the preset intensity threshold range is related to the medium type of the surface of the current specific medium partition. It should be noted that the state of the robot crossing the first target obstacle is relative to a horizontal plane, with the robot's body tilted on the surface of the first target obstacle; the state of the robot not crossing the first target obstacle is relative to a horizontal plane, with the robot horizontally positioned on the surface of the first target obstacle, or the robot not in contact with the first target obstacle. In this embodiment, the horizontal plane is equivalent to a horizontal ground surface. The ultrasonic sensor is either a first ultrasonic sensor or a second ultrasonic sensor. Therefore, when the intensity of the ultrasonic reflected signal received by the first ultrasonic sensor is not within the preset intensity threshold range, it is determined that the robot has not detected the current specific medium partition on the side corresponding to the first ultrasonic sensor; specifically, the robot has not detected the current specific medium partition in front of the side corresponding to the first ultrasonic sensor.

[0134] In practical applications, the intensity of the ultrasonic signals fed back by carpets and obstacles climbed by the robot is lower than that fed back by the floor. Based on this, an angle threshold or angle threshold range can be set. Using the angle threshold range corresponding to the attitude angle measured by the inertial sensor, the robot can distinguish whether the walking environment is located within a specific medium zone or a raised obstacle that it can climb. Specifically, the first target obstacle protrudes from the horizontal plane, and its height is greater than the maximum allowable height for the robot to cross. When the robot is crossing the first target obstacle, there is a risk of slipping or spinning on its surface. Therefore, the robot must break free from the first target obstacle to avoid slipping or spinning.

[0135] When the intensity of the ultrasonic reflected signal received by the ultrasonic sensor is within a preset intensity threshold range, and the attitude angle measured by the inertial sensor is within a first preset angle threshold range, the robot detects the presence of the specific medium (such as a carpet) on the surface of the area in front. The robot detects the current specific medium partition, which may be a local area of ​​the current specific medium partition. Simultaneously, the robot is not in a state of crossing obstacles, including not crossing the first target obstacle. This achieves the detection of the current specific medium partition and the first target obstacle within a signal intensity range of the ultrasonic reflected signal (within the preset intensity threshold range), thus distinguishing between the current specific medium partition and the first target obstacle and avoiding misjudgment. In this embodiment, the robot not being in a state of crossing obstacles means that the robot is not in inclined contact with the surface of the obstacle; the robot can be horizontally positioned on the surface of the obstacle. The ultrasonic sensor is either a first ultrasonic sensor or a second ultrasonic sensor. Therefore, when the intensity of the ultrasonic reflected signal received by the second ultrasonic sensor is within the preset intensity threshold range, and the attitude angle measured by the inertial sensor is less than or equal to the preset angle threshold, it is determined that the robot has detected the current specific medium partition on the side corresponding to the second ultrasonic sensor; specifically, the robot detects the current specific medium partition in front of the side corresponding to the second ultrasonic sensor.

[0136] In the above embodiments, when the intensity of the ultrasonic reflected signal received by the ultrasonic sensor is not within a preset intensity threshold range, and the attitude angle measured by the inertial sensor is less than or equal to a preset angle threshold, the robot is not in a state of crossing obstacles. The attitude angle measured by the inertial sensor may be equal to 0, causing the robot to be horizontally positioned on the surface of the obstacle or not in contact with the obstacle protruding from the horizontal ground. Here, "not in a state of crossing obstacles" means that the robot is horizontally positioned on the surface of the obstacle relative to the horizontal plane, or the robot is not in contact with the obstacle. The obstacle includes a first target obstacle, a second target obstacle, and other obstacles protruding from the horizontal ground at other heights. In this embodiment, the horizontal plane is equivalent to the horizontal ground.

[0137] It should be noted that the first preset angle threshold range is an angle range less than or equal to the preset angle threshold. The preset angle threshold is determined by the inverse trigonometric function result of the maximum allowable height that the robot can cross over obstacles. The specific calculation method is conventional trigonometric geometry calculation. According to the definitions of pitch angle and roll angle, there can be various conversion methods. Among them, the preset angle threshold and the maximum allowable height can be positively correlated. The specifics will not be elaborated here. When the attitude angle measured by the inertial sensor is the pitch angle, the preset angle threshold is the pitch angle converted from the maximum allowable height through the inverse trigonometric function; when the attitude angle measured by the inertial sensor is the roll angle, the preset angle threshold is the roll angle converted from the maximum allowable height through the inverse trigonometric function. The result of the inverse trigonometric function calculation only needs to retain a certain degree of accuracy. Therefore, in this embodiment, the preset angle threshold is configured as a value within a pre-set error order of magnitude. The pre-set error order of magnitude is preferably 0.1, so that the preset angle threshold is retained to the order of magnitude of 0.1. When the preset angle threshold calculated using the aforementioned inverse trigonometric function has multiple decimal places, the preset angle threshold, within an allowable error range of 0.1 on the order of magnitude, is used to obtain a single value by retaining one decimal place, which serves as the unique angle value. This is to meet the navigation accuracy requirements of the inertial sensor.

[0138] It is worth noting that in this embodiment, the acceleration information or the angle transformation result of the acceleration information measured by the inertial sensor is not further accumulated into an integral value, and the robot does not assist in building a global map within the current specific medium partition, so as to reduce the error caused by robot slippage.

[0139] As one embodiment, in step 1, the method for determining the boundary line of the current specific medium partition by the robot walking within the current specific medium partition includes: when the intensity of the ultrasonic reflected signal received by the ultrasonic sensor is not within a preset intensity threshold range during the robot's movement within the current specific medium partition, the robot determines that it has walked to the boundary line of the current specific medium partition; wherein, the preset intensity threshold range is used to represent the signal intensity range of the ultrasonic reflected signal fed back by the current specific medium partition. The ultrasonic sensor is a first ultrasonic sensor or a second ultrasonic sensor, that is, during the robot's movement within the current specific medium partition, as long as the intensity of the ultrasonic reflected signal received by the ultrasonic sensor on one side (left or right) of the robot is not within the preset intensity threshold range, it can be determined that the robot has walked to the boundary line of the current specific medium partition.

[0140] In some embodiments, the robot walks within the current specific medium zone according to a preset planned path. The robot controls ultrasonic sensors to emit ultrasonic waves and receive reflected ultrasonic signals. Excluding interference from the signal strength of reflected ultrasonic signals from obstacles at a specific height (where the attitude angle measured by the inertial sensor is less than or equal to a preset angle threshold), if the intensity of the reflected ultrasonic signal received by the ultrasonic sensor is within a preset intensity threshold range, the robot determines that a specific medium, such as a carpet, exists on the surface in front of it; that is, the robot has detected the current specific medium zone. However, if, during the robot's movement within the current specific medium zone, the intensity of the reflected ultrasonic signal received by one ultrasonic sensor is not within the preset intensity threshold range, the robot determines that no medium exists on the surface in front of it. In a specific medium, since the robot is walking within the current specific medium zone, when the robot detects that the surface in front of it does not contain the specific medium, the detection range of the ultrasonic sensor is outside the current specific medium zone. The ultrasonic sensor may be located outside the current specific medium zone. In this embodiment, the robot detects the boundary line of the current specific medium zone and determines that it has walked to the boundary line. Then, the robot adjusts its walking direction, i.e., adjusts its walking angle, leaning towards the interior of the current specific medium zone to prevent the robot from completely leaving the boundary line. Part of the robot can be allowed to protrude outside the current specific medium zone, but the walking direction needs to be adjusted to guide the robot along the boundary line. In summary, without calculating the robot's pose or using global map positioning, the robot controls its contact with the boundary line of the current specific medium zone by using the signal strength information of the ground medium sensed by the ultrasonic sensor. This avoids the slippage and misjudgment caused by the inertial sensor within the current specific medium zone and ensures that the robot searches for the pre-saved boundary line within the current specific medium zone for subsequent repositioning.

[0141] It should be noted that the inertial sensor includes a six-axis gyroscope. A three-axis gyroscope senses omnidirectional dynamic information in Roll (left / right tilt), Pitch (backward / forward tilt), and Yaw (left / right sway). A six-axis gyroscope refers to the combination of a three-axis accelerometer (which senses acceleration along the XYZ axes in three-dimensional space) and a three-axis gyroscope, forming an inertial navigation system. This system is an autonomous navigation system that does not rely on external information and does not radiate energy externally. The six-axis gyroscope can measure the robot's pose information, primarily its own pose, which includes position and orientation.

[0142] In the foregoing embodiments, the attitude angles measured by the inertial sensor are pitch angles or roll angles to obtain the robot's angle information on the obstacle. Preferably, the robot's angle information on the obstacle can include the changes in attitude angles generated during the robot's traversal of the obstacle from an initial value, specifically changes within a specific sampling time period. The sampling time period is related to the robot's traversal capability and also to the rotational speed of the drive wheels. In the foregoing embodiments, the pitch angle represents the angle between the contact surface between the robot and the obstacle and the horizontal plane, which is also equivalent to the angle between the robot's walking direction and the horizontal plane; the roll angle represents the angle between the robot's wheel axis and the horizontal plane; the robot's wheel axis is the axis of the drive wheels mounted on both sides of the robot's body, that is, the line connecting the centers of the drive wheels mounted on both sides.

[0143] In Example 4, as Figure 4 As shown, the specific implementation method of step S105 disclosed in Embodiment 1 includes the following steps:

[0144] Step S401: The robot travels within the current specific medium partition to the boundary line of the current specific medium partition, and then adjusts the two ultrasonic sensors to be positioned on both sides of the boundary line of the current specific medium partition; then the robot executes step S402. Related implementation methods can be found in the method described in step 1 above.

[0145] In some embodiments of step S401, before the robot adjusts the two ultrasonic sensors (corresponding to the first and second ultrasonic sensors located on the left and right sides of the robot's body) to be positioned on either side of the boundary line of the current specific medium partition, the robot walks along the target direction to the target boundary line within the current specific medium partition. That is, the robot walks along the target direction from its position within the current specific medium partition when it begins executing step S401. The target direction is defined as falling within the angle formed by the lines connecting the preset starting point and the two endpoints of the target boundary line. The target boundary line is any boundary line that encloses the current specific medium partition. Its related pose information is pre-stored in the robot for easy retrieval and corresponds to the direction of the target direction. The robot's memory stores a mapping relationship between the target boundary line and the target direction, i.e., a correspondence between one target direction and one target boundary line, with one target direction pointing to the corresponding target boundary line.

[0146] Specifically, in an indoor environment, since the shape of the current specific medium partition is adapted to the plan shape of the room it actually covers, the boundary line of the current specific medium partition can coincide with the boundary line of a room to cover the floor area of ​​that room. Therefore, each boundary line that forms the current specific medium partition is fixed, and the orientation information of each boundary line that forms the current specific medium partition relative to the preset walking starting point is fixed information obtained in advance, including the angle information and distance information of the boundary points (including endpoints) on each boundary line that forms the current specific medium partition relative to the preset walking starting point.

[0147] Preferably, the preset starting point is set within the current specific medium partition. The robot walking according to the preset planned path within the current specific medium partition can also be described as the robot walking along the preset planned path within the current specific medium partition. In the aforementioned embodiment three, to ensure that the robot does not easily leave the current specific medium partition and that there is a sufficiently open walking area within the current specific medium partition, the robot sets the preset starting point to the center point of the current specific medium partition; then, the robot is controlled to start walking from the center point of the current specific medium partition according to the preset planned path. The center point of the current specific medium partition can refer to the exact center point of a regular shape. When the shape of the current specific medium partition is irregular, the grid coordinates corresponding to the center point of the current specific medium partition are calculated using the boundary points on the boundary line of the current specific medium partition.

[0148] In some embodiments, the target direction is the walking direction when the robot begins to execute the robot relocation method so as to enable the robot to walk in a straight line to the target boundary line; or, the target direction is a direction that forms a preset target angle with the walking direction when the robot begins to execute the robot relocation method so that the robot can avoid obstacles in the current specific medium partition by adjusting the preset target angle and then walking in a straight line to the target boundary line, wherein the setting of the preset target angle is related to the obstacles distributed in the walking direction when the robot begins to execute the robot relocation method.

[0149] In step S401, before adjusting the two ultrasonic sensors to be positioned on either side of the boundary line of the current specific medium partition, the robot uses an inertial sensor to measure the angle formed by the robot's latest walking direction relative to the line connecting one endpoint of the target boundary line and the preset walking starting point in a preset clockwise direction. This endpoint connects to the other endpoint on the target boundary line in a preset clockwise direction. When the target boundary line is a line segment, above the preset walking starting point, the endpoint extends counterclockwise from the left to the right, or clockwise from the right to the left. When the target boundary line is a line segment, below the preset walking starting point, the endpoint extends clockwise from the left to the right, or counterclockwise from the right to the left.

[0150] When the robot detects that the angle (the angle formed by the line connecting one endpoint of the target boundary line and the preset starting point of the movement in a preset clockwise direction relative to the robot's latest walking direction) is less than or equal to the angle formed by the lines connecting the two endpoints of the preset starting point of the movement and the target boundary line, it determines that the robot is walking along the target direction within the current specific medium partition. This allows the robot to walk along the target direction until it detects the boundary line (in the aforementioned embodiment, when the intensity of the ultrasonic reflection signal received by the ultrasonic sensor is not within a preset intensity threshold range during the robot's movement within the current specific medium partition, the robot determines that it has walked to the boundary line of the current specific medium partition). The robot then determines that its current boundary line (the boundary line reached along the target direction) is the target boundary line based on the pre-saved mapping relationship between the target boundary line and the target direction.

[0151] When the planar shape of the current specific medium partition is a square, and the preset walking starting point is the center point of the current specific medium partition, the line connecting the left endpoint of the target boundary line and the preset walking starting point is located on a diagonal of the square; furthermore, whenever the angle formed by the robot's latest walking direction relative to the line connecting the left endpoint of the target boundary line and the preset walking starting point in the clockwise direction increases by 90 degrees, the target boundary line changes once, becoming a boundary line perpendicular to the right endpoint of the original target boundary line; whenever the angle formed by the robot's latest walking direction relative to the line connecting the left endpoint of the target boundary line and the preset walking starting point in the clockwise direction is less than 90 degrees, the target boundary line is determined.

[0152] In step S402, the robot sets its position when it begins to maintain the state where the two ultrasonic sensors are positioned on both sides of the boundary line of the current specific medium partition as the relocation starting point, and determines that the robot has begun to maintain the state where the two ultrasonic sensors are positioned on both sides of the boundary line of the current specific medium partition. Then, the robot executes step S403 so that the robot can walk along the boundary line of the current specific medium partition, that is, walk along the target boundary line disclosed in some embodiments of step D101 above. When the robot's current position is the robot's body center point, especially when the two ultrasonic sensors are symmetrically positioned on both sides of the boundary line of the current specific medium partition, the robot's body center point moves along the target boundary line disclosed in some embodiments of step D101 above.

[0153] Step S403: While maintaining the two ultrasonic sensors positioned on either side of the boundary line of the current specific medium partition, the robot begins to move clockwise from the repositioning starting point, so that the robot moves along the boundary line of the current specific medium partition. When the robot's current position is the center point of the robot's body, especially when the two ultrasonic sensors are symmetrically positioned on either side of the boundary line of the current specific medium partition, the movement trajectory of the robot's center point is parallel to the boundary line of the current specific medium partition. Simultaneously, the robot uses inertial sensors to detect the change in angle. The robot uses a gyroscope to detect the change in angle generated from the repositioning starting point. The change in angle is the change in the robot's heading angle, used to represent the change in the robot's walking direction, specifically the change in the robot's walking direction on the horizontal plane of the current specific medium partition. Step S404 is then executed to synchronously determine the magnitude of the change in angle.

[0154] Step S404: Determine whether the angle change detected by the robot from the repositioning starting point reaches the reference angle. If yes, proceed to step S406; otherwise, proceed to step S405. Preferably, the reference angle is within the allowable angle range for slippage error of the robot within the current specific medium partition, allowing the robot to maintain its movement along the boundary line of the current specific medium partition by rotating at the corner point using the reference angle. In this embodiment, the robot's adjustment of its walking direction to maintain the state where the two ultrasonic sensors are positioned on opposite sides of the boundary line of the current specific medium partition can, to some extent, correct the slippage error that exists when the gyroscope detects the angle.

[0155] It should be noted that within a short time interval, the accumulated slippage and drift error of the robot is not very large and there is no need to reposition. After all, frequent repositioning will reduce the robot's walking efficiency. Therefore, in order to achieve the best positioning effect for the robot, when it is determined in step D104 that the angular change detected by the robot from the repositioning starting point reaches the reference angle, step D106 is executed to update the pose information of the robot's current position.

[0156] Preferably, the reference angle is the angle between the target boundary line and its boundary line connected in a preset clockwise direction, and the corner point is the common endpoint of the target boundary line and its boundary line connected in a preset clockwise direction; wherein, the planar shape of the current specific medium partition is a polygon, the corner point is a vertex of the polygon, and the boundary line is an edge of the polygon, such that each boundary line of the current specific medium partition is a straight line segment. The grid corresponding to the boundary points of the current specific medium partition is marked in the global map. The boundary points of the current specific medium partition include corner points. When the planar shape of the current specific medium partition is a polygon, the corner points of the current specific medium partition are vertices of the current specific medium partition, and the boundary lines of the current specific medium partition are the edges that form the polygon. The current specific medium partition is equivalent to a closed figure composed of multiple boundary line segments connected end to end in sequence, corresponding to a closed region. The polygon can be divided into regular polygons and non-regular polygons, convex polygons and concave polygons, and is preferably a rectangle. Due to the influence of walking errors, if the reference angle is set too small, it is difficult to find a suitable relocation position; if the reference angle is set too large, the accuracy of the found object is relatively low. Therefore, in this embodiment, the reference angle can be set to allow the robot to walk to a corner position, such as the endpoint of a line segment or the common endpoint of two boundary lines. Since these types of points are pre-saved in the robot's memory, and the boundary lines where they are located are known in step D101, optimal relocation matching effect can be achieved. This embodiment uses corner points for relocation to improve the robot's positioning accuracy on the current specific medium partition where slippage is likely.

[0157] In step S406, the robot walks to a corner point, and then uses the pose information of that corner point to update the robot's current pose information. The grid coordinates currently stored by the robot to mark its current position are replaced with the grid coordinates already stored in the corresponding grid of the corner point. This enables the robot to reposition itself and regain its pose information within the current specific medium partition. It should be noted that the corner point is the common endpoint of the two boundary lines of the current specific medium partition. It is the position point where the robot maintains its movement along the boundary line of the current specific medium partition by rotating the reference angle. That is, when the robot walks to the corner point or its vicinity while maintaining the state of the two ultrasonic sensors being on both sides of the boundary line of the current specific medium partition, in order to maintain its movement along the boundary line of the current specific medium partition (continuing to maintain the state of the two ultrasonic sensors being on both sides of the boundary line of the current specific medium partition), the robot needs to rotate the reference angle in the preset clockwise direction to adjust the reference angle in the robot's walking direction. The boundary lines forming the current specific medium partition are pre-marked in the corresponding grids of the global map, which is pre-stored in the robot's memory.

[0158] Then, the robot does not continue to maintain the state where the two ultrasonic sensors are on opposite sides of the boundary line of the current specific medium partition, so that the robot does not walk along the boundary line of the current specific medium partition; if the robot enters the next specific medium partition by executing step S103 as described in Embodiment 1 during subsequent iterations, the angular change amount detected by the robot from the repositioning starting point disclosed in the aforementioned steps S403 and S404 is cleared to avoid misjudgment.

[0159] Specifically, when the robot detects an angle change reaching the reference angle from the repositioning starting point, it determines that the robot has walked to the corner point and rotated through the reference angle in a preset clockwise direction at the corner point. Then, the robot uses the pose information of the corner point to update its current pose information. The repositioning starting point is the position point where the robot begins to maintain the state where the two ultrasonic sensors are located on opposite sides of the boundary line of the current specific medium partition. The corner point and the repositioning starting point are located on the same boundary line of the current specific medium partition, which is located between the two ultrasonic sensors. Among the two ultrasonic sensors, one ultrasonic sensor is located above the current specific medium partition, and the other ultrasonic sensor is located above an area outside the current specific medium partition. For example, if the first ultrasonic sensor is mounted on the left side of the robot's bottom and the second ultrasonic sensor is mounted on the right side of the robot's bottom, and the robot walks counterclockwise along the boundary line of the current specific medium partition, then the first ultrasonic sensor is located above the current specific medium partition, and the second ultrasonic sensor is located above an area outside the current specific medium partition.

[0160] In step S405, while keeping the two ultrasonic sensors positioned on either side of the boundary line of the current specific medium partition, the robot continues to walk in a preset clockwise direction, so that the robot continues to walk along the boundary line of the current specific medium partition in a preset clockwise direction, and then returns to step S404, thus realizing the execution of step S404 while walking along the boundary line of the current specific medium partition.

[0161] It should be noted that the preset clockwise direction is either clockwise or counterclockwise. When the robot walks along the boundary line of the current specific medium partition, walking below the preset starting point of the current specific medium partition is expressed as walking clockwise towards the lower left boundary line of the current specific medium partition, or walking below the preset starting point of the current specific medium partition is expressed as walking counterclockwise towards the lower right boundary line of the current specific medium partition, or walking above the preset starting point of the current specific medium partition is expressed as walking counterclockwise towards the upper left boundary line of the current specific medium partition, or walking above the preset starting point of the current specific medium partition is expressed as walking clockwise towards the upper right boundary line of the current specific medium partition.

[0162] Preferably, the current specific medium partition is a rectangular area whose surface is covered with a specific medium. The corner point is the vertex of the rectangular area, and the reference angle is 90 degrees. This allows the robot to rotate a right angle in a preset clockwise direction, and then update the robot's current pose information using the pose information of the vertex of that right angle. Each side of the rectangular area is a boundary line, and the rectangular area is enclosed by four boundary lines. The pose information of the vertex of the right angle includes the coordinates and angle information of that vertex, both of which are pre-saved pose information for subsequent repositioning operations. Corresponding to an indoor environment, the robot's walking environment covers the floor of the indoor environment, where the walls are perpendicular to the floor. If the current specific medium partition covers the floor of the indoor environment, then all turns in the robot's trajectory along the current specific medium partition are right angles, and the angles between the intersecting boundary lines of the current specific medium partition are also right angles.

[0163] In summary, when the robot navigates along the boundary line of the current specific medium partition, due to slippage errors, it does not search for the grid path in the global map. Instead, it adjusts its walking direction according to step 1 or step S401 of the aforementioned embodiment to keep the two ultrasonic sensors on both sides of the boundary line of the current specific medium partition, and walks along the boundary line of the current specific medium partition point by point until it reaches the corner point mentioned in step D106. That is, the robot detects the angle change from the repositioning starting point to the reference angle. After the robot performs its cleaning function on the carpet, it moves stably along the boundary of the specific carpet area by keeping its ultrasonic sensors on both sides positioned on either side. Based on this boundary, it locates a corner point within the carpet area by measuring angular changes, thus repositioning the robot to the location of that corner point recorded on the map. This improves the accuracy of the repositioning calculation while reducing computational load. It avoids mapping errors caused by the robot's drive wheels slipping on the carpet surface and facilitates subsequent path planning using the accurate repositioned location. The beneficial effects of this invention include: by using the path the robot takes along the edge of the specific carpet area as a reference, it can correct for positional deviations caused by excessive accumulated walking errors, achieving repositioning and improving the accuracy and efficiency of the robot's positioning during subsequent navigation.

[0164] Based on the aforementioned embodiments, when the robot walks within the current specific medium zone, the robot controls the ultrasonic sensor to emit ultrasonic waves and receive reflected ultrasonic signals, and controls the inertial sensor to measure the robot's attitude angles, including the pitch or roll angle of the current specific medium zone detected by the ultrasonic sensor, and the heading angle used to detect the change in angle when proceeding to step 2 or step S403, but stops marking the grid on the global map. After the robot updates its current pose information using the pose information of the corner points, the robot walks to an area outside the specific medium zone. At the same time, the robot acquires its pose information and marks the corresponding grid on the global map for map building operations. The surface covering medium of the area outside the specific medium zone is different from the specific medium covering the surface of the specific medium zone. The specific medium zone is a closed area where the robot can slip, such as a carpet area, while the area outside the specific medium zone is a closed area where the robot is less likely to slip.

[0165] Based on the foregoing embodiments, the present invention also discloses a robot equipped with an inertial sensor, an ultrasonic sensor, and a processor. The ultrasonic sensor is mounted at the front of the robot's bottom, enabling the robot to detect the specific medium area in a timely manner. Both the inertial sensor and the ultrasonic sensor are electrically connected to the processor. Considering sensor cost, at least one ultrasonic sensor is installed on each side of the robot's bottom. Each ultrasonic sensor can be positioned at a vertical distance of 2 to 3 centimeters from the robot's central axis, which is parallel to the robot's walking direction. The processor is used to control the robot to execute the robot control method disclosed in the foregoing embodiments. The computer program stored in the processor implements the aforementioned robot control method when executed by the processor. The robot first detects specific media areas, traversable obstacles (second target obstacles), and insurmountable obstacles (first target obstacles) to adapt to different media and terrain surfaces and walk along a pre-planned path. Then, based on the detected specific media areas, the robot adjusts the path extension direction according to the coverage of the work area and walks within a corresponding specific media partition according to the pre-planned path; that is, the robot traverses a specific media partition. Then, the robot positions itself within the most recently traversed specific media partition by walking through a corner point in the corresponding corner area, facilitating navigation to the next specific media partition. This process is repeated iteratively until the robot has traversed all specific media partitions within the specific media area.

[0166] In this embodiment, the robot may be a cleaning robot. The cleaning robot includes a main body, a sensing system, a control system, a drive system, a cleaning system, and an energy system. The main body of the cleaning robot includes a forward portion and a rearward portion, and has an approximately circular shape (both front and rear are circular). It may also have other shapes, including but not limited to an approximately D-shaped shape with a circular front and rear, or a rectangular or square shape with a circular front and rear. In some embodiments, collision sensors and proximity sensors are disposed on the forward portion of the robot's main body, cliff sensors are disposed on the lower part of the robot's main body, and a controller, magnetometer, accelerometer, gyroscope, and odograph (ODO) installed inside the drive wheels, and drop sensors are installed in slots connecting the left and right drive wheels to the chassis of the robot. These sensing devices provide the processor with various position and motion state information of the robot. The processor can manipulate the robot to traverse different types of ground based on drive commands with distance and angle information (e.g., x, y, and z components), and mark the currently detected specific medium area and the grid corresponding to the encountered obstacles on a global map, assigning pose information and environment type information. The processor includes a drive wheel module that can simultaneously control the left and right drive wheels. For more precise robot movement control, the drive wheel module preferably includes a left drive wheel module and a right drive wheel module, symmetrically arranged along a transverse axis defined by the robot body. To enable more stable or stronger movement on the ground, the robot may include one or more driven wheels, including but not limited to omnidirectional wheels for changing direction. The drive wheel module includes drive wheels, a drive motor, and a control circuit for controlling the drive motor. The drive wheel module may also connect to a circuit for measuring drive current, an odometer, and a gyroscope to build a map. When the robot is a sweeping robot, and a specific media zone is a carpeted area within a room, the present invention relies on inertial sensors and ultrasonic sensors to perform large-area cleaning operations on each carpeted zone, reducing mapping errors caused by drive wheel slippage. It also obtains accurate robot positioning information within each carpeted zone, facilitating the movement from a traversed zone to a reasonably distanced untraversed zone, thus systematically completing the cleaning of all carpeted zones within the indoor work area.

[0167] This invention also discloses a chip storing a program that, when executed by the chip, implements the robot control method disclosed in the foregoing embodiments. When this chip is mounted on a robot, it addresses the problem of wheel slippage caused by changes in the robot's walking environment under normal circumstances, such as different media like carpets and obstacles, which affects position calculation. The chip controls the robot to compare the pitch or roll angle information measured by inertial sensors with the robot's maximum traversable height to calculate the corresponding angle value. This eliminates detection errors in carpet areas caused by weak signal strength from ultrasonic sensors, thereby distinguishing between obstacles and carpet areas and making an adaptive walking strategy. This allows the robot to walk on surfaces with different media and terrains according to a preset planned path. Based on the detection of specific media areas, the path extension direction is adjusted according to the coverage of the work area, allowing the robot to walk within a specific media partition according to the preset planned path; that is, the robot traverses a specific media partition. Then, by walking through a corner in a corresponding corner area, the robot completes its localization within the most recently traversed specific media partition, facilitating navigation to the next specific media partition. This process is repeated iteratively until the robot has traversed all specific media partitions within a specific media area.

[0168] Within a memory space inside the chip, the global map constructed by the robot is stored. This global map is a grid map, composed of grid cells. The grid in the aforementioned embodiment refers to these grid cells. Each grid cell is a virtual square with a side length of 20 centimeters. A grid map, formed by the continuous arrangement of many grid cells, represents geographical information and corresponds to the global map in the global coordinate system. Based on the grid map, the robot can determine the current position of the corresponding grid cell from the data detected while walking, and can update the state of the grid cells in real time. For example, it can mark the state of grid cells successfully traversed as traversed grid cells, the state of grid cells that collide with or cross obstacles as obstacle grid cells, the state of grid cells that detect cliffs as cliff grid cells, and the state of grid cells that have not been visited as unknown grid cells, and so on. Preferably, in the above embodiments, the isolated partitions that constitute the specific medium area refer to isolated rectangular areas covered by carpets that are not adjacent to walls or objects against walls, and the robot can walk around the edge of the isolated rectangular area. The grid area corresponding to the isolated rectangular area does not refer to just one grid unit. Multiple grid units that are close together and can form a continuous area also belong to partitions.

[0169] Furthermore, in the above embodiments, the preset planned path recorded by the robot's movement outside the specific medium area and the grid corresponding to the marked boundary points of the specific medium area can be stored in the chip's memory (including the cache). The preset planned path can be a bow-shaped path, and the specific medium area is a rectangular area or an area composed of multiple discontinuous rectangular areas. The chip's memory (including the cache) includes storage for the grid coordinates of the grid cells corresponding to the bow-shaped path, the grid coordinates of the grid cells corresponding to the starting point of the bow-shaped path, the grid coordinates of the grid cells corresponding to the ending point of the bow-shaped path, the start execution time of the bow-shaped path, the end execution time of the bow-shaped path, the grid coordinates of the grid cells corresponding to the boundary points of the specific medium area, etc. This data stored in memory cannot be arbitrarily deleted and can be used as reference data for the robot to reposition and build a map. If the data stored in the cache meets the requirements for reference data for robot repositioning, it will be stored in memory, becoming the aforementioned stored edge path; if it does not meet the requirements, it will be overwritten by subsequently recorded data.

[0170] Obviously, the above embodiments are merely illustrative examples for clear explanation and are not intended to limit the implementation. Those skilled in the art will recognize that other variations or modifications can be made based on the above description. It is neither necessary nor possible to exhaustively list all possible implementations here. However, obvious variations or modifications derived therefrom are still within the scope of protection of this invention.

Claims

1. A robot control method based on a specific medium region, characterized in that, This robot control method is applicable to robots equipped with inertial sensors and ultrasonic sensors, wherein at least two ultrasonic sensors are fixedly mounted on both sides of the bottom of the robot, and are located on both sides of the robot's central axis, which is parallel to the direction of travel. Robot control methods include: Step S1: The robot combines the intensity of the ultrasonic reflected signal received by the ultrasonic sensor and the angle information measured by the inertial sensor to detect the specific medium area, and then adjusts the walking strategy to prevent the robot from entering the specific medium area until the robot has walked through the area excluding the specific medium area. Step S2: After the robot has traversed the area excluding the specific medium area, the robot determines the current specific medium partition based on its current position. Then, the robot enters the current specific medium partition from the area excluding the specific medium area. The specific medium area includes multiple specific medium partitions, and the current specific medium partition belongs to a specific medium partition. Step S3: After the robot enters the current specific medium partition, it walks in the current specific medium partition according to the preset planned path. Whenever the robot walks through a predetermined time interval, the robot adjusts the extension direction of the preset planned path and then walks in the current specific medium partition according to the preset planned path after the extension direction is adjusted, until the robot determines that it has walked through the current specific medium partition. Step S4: After the robot determines that it has completed the current specific medium partition, the robot first walks to the boundary line of the current specific medium partition, and then adjusts its walking direction to control the robot to walk while keeping the two ultrasonic sensors on both sides of the boundary of the current specific medium partition, so that the robot walks along the boundary line of the current specific medium partition until it reaches the corner point; where the corner point is the endpoint of the boundary line that encloses the current specific medium partition. In step S5, the robot updates the corner point mentioned in step S4 to the robot's current position point. Then, the robot repeats steps S2, S3, and S4 until the robot has traversed all the specific medium partitions within the specific medium area, at which point the robot determines that it has traversed the specific medium area.

2. The robot control method according to claim 1, characterized in that, In step S1, the method by which the robot combines the intensity of the ultrasonic reflected signal received by the ultrasonic sensor and the angle information measured by the inertial sensor to detect a specific medium area, and then adjusts its walking strategy to prevent the robot from entering the specific medium area includes: Control the ultrasonic sensor to emit ultrasonic waves and receive ultrasonic reflection signals, while simultaneously controlling the inertial sensor to measure the robot's attitude angles; When the intensity of the ultrasonic reflected signal received by the ultrasonic sensor is not within the preset intensity threshold range, the robot has not detected the specific medium area and is not in the state of crossing the first target obstacle. When the intensity of the ultrasonic reflected signal received by the ultrasonic sensor is within a preset intensity threshold range, and the attitude angle measured by the inertial sensor is within a first preset angle threshold range, the robot detects a specific medium area and is not in a state of crossing obstacles, and marks the grid corresponding to the boundary point of the specific medium area in the global map; then it adjusts its walking direction so that the robot does not enter the specific medium area. When the intensity of the ultrasonic reflected signal received by the ultrasonic sensor is within a preset intensity threshold range, and the attitude angle measured by the inertial sensor is within a second preset angle threshold range, the robot detects the first target obstacle and is in a state of crossing the first target obstacle. At the same time, the robot marks the grid corresponding to the first target obstacle in the global map, and then the robot does not continue to cross the first target obstacle. In this context, the robot is in a state of crossing obstacles relative to a horizontal plane, with the robot's body tilted and positioned on the surface of the obstacle; the obstacle includes the first target obstacle. The area covered by the specific medium is defined as the specific medium area; The global map is a grid map and is pre-stored in the robot's memory.

3. The robot control method according to claim 2, characterized in that, When the intensity of the ultrasonic reflected signal received by the ultrasonic sensor is within a preset intensity threshold range, and the attitude angle measured by the inertial sensor is less than or equal to a preset angle threshold, the robot detects a specific medium area and is not in a state of crossing obstacles, and marks the grid corresponding to the boundary point of the specific medium area in the global map; then it adjusts its walking direction so that the robot does not enter the detected specific medium area. When the intensity of the ultrasonic reflected signal received by the ultrasonic sensor is within the preset intensity threshold range, and the attitude angle measured by the inertial sensor is greater than the preset angle threshold, the robot detects the first target obstacle and is in the state of crossing the first target obstacle. Then, the robot marks the grid corresponding to the first target obstacle in the global map, and then the robot does not continue to cross the first target obstacle. The height of the first target obstacle is greater than the maximum height that the robot is allowed to cross. Among them, the angle range that is less than or equal to the preset angle threshold is the first preset angle threshold range, and the angle range that is greater than the preset angle threshold is the second preset angle threshold range; The preset angle threshold is determined by the inverse trigonometric function result of the maximum allowable height that the robot can cross when crossing an obstacle; The preset angle threshold is a value configured to be within a pre-defined error range.

4. The robot control method according to claim 3, characterized in that, When the intensity of the ultrasonic reflected signal received by the ultrasonic sensor is not within the preset intensity threshold range, and the attitude angle measured by the inertial sensor is less than or equal to the preset angle threshold, the robot detects the second target obstacle and is in the state of crossing the second target obstacle. Then, the robot marks the grid corresponding to the second target obstacle in the global map, and then continues to move forward to cross the second target obstacle. Alternatively, when the intensity of the ultrasonic reflected signal received by the ultrasonic sensor is not within the preset intensity threshold range, and the attitude angle measured by the inertial sensor is less than or equal to the preset angle threshold, the robot is not in the state of crossing obstacles, and the robot walks according to the preset planned path. The obstacle also includes a second target obstacle; the second target obstacle protrudes from the horizontal plane, and the height of the second target obstacle is less than or equal to the maximum allowable height that the robot can cross over the obstacle.

5. The robot control method according to claim 2, characterized in that, In step S1, whenever the robot searches for untraversed location points in the neighborhood of the global map, other than the detected specific medium area, the robot first walks to the untraversed location point, and then continues to walk from the untraversed location point according to the preset planned path, but does not enter the specific medium area. When the robot has traversed the area excluding the specific medium region, it is determined that the remaining untraversed area is the specific medium region. The specific medium region is composed of multiple closed regions formed by connecting the boundary points, and one specific medium partition is a closed region. The boundary point of each specific medium partition is also the boundary point of the specific medium region; the specific medium region is represented in the global map as a group of closed grid regions enclosed by the grids corresponding to the boundary points, and a specific medium partition is represented in the global map using a closed grid region. Specifically, whenever the robot moves to a location, it is determined that the robot has traversed that location, and the location is set as a traversed location. The grid corresponding to that location is also marked as a traversed grid in the global map.

6. The robot control method according to claim 1, characterized in that, In step S2, the method by which the robot determines the current specific medium partition based on its current position includes: From all the corners of a specific media partition that the robot has not traversed, select the corner closest to the robot's current position and configure it as a reference corner; wherein, the grid corresponding to the boundary point of each specific media partition is marked in the global map; the boundary points of a specific media region include corners; Then, within the specific medium partition where the reference corner point is located, the robot selects two boundaries with the reference corner point as a common endpoint and configures them as the first reference edge and the second reference edge, respectively; the boundary line of the specific medium partition is formed by connecting the boundary points of the specific medium partition; Among the midpoints of the first reference edge and the midpoints of the second reference edge, the robot selects the midpoint closest to its current position and sets it as the current preset target point. Then, the robot sets the specific media partition where the current preset target point is located as the current specific media partition.

7. The robot control method according to claim 6, characterized in that, In step S2, the method for the robot to enter the current specific medium partition from a region outside the specific medium region includes: Before entering the current specific medium partition, the robot determines the current preset target point and the current specific medium partition. Then, the robot walks from its current position to the current preset target point, and then walks from the current preset target point to the preset starting point of the specific medium partition in which it is located. When the robot walks to the preset starting point of the current specific medium partition, the robot determines that it has completely entered the specific medium partition; In this process, the robot sets the center point of the specific medium partition where the current preset target point is located as the preset starting point for walking in the current specific medium partition.

8. The robot control method according to claim 7, characterized in that, Step S3 specifically includes: The robot starts from a preset starting point in the current specific medium partition, walks within the current specific medium partition according to a preset planned path, and records the time it spends within the current specific medium partition. Whenever the robot travels through a predetermined time interval, the robot adjusts the extension direction of the preset planned path, and then travels within the current specific medium partition according to the preset planned path with the adjusted extension direction. This allows the robot to traverse areas not covered by the previous preset planned path on the newly adjusted preset planned path, until the time taken by the robot to travel from the preset starting point of the current specific medium partition reaches the work end time. At this point, the robot determines that it has completed traveling through the current specific medium partition.

9. The robot control method according to claim 8, characterized in that, The default planned path is a bow-shaped path; The bow-shaped path includes multiple parallel motion trajectory segments; two adjacent parallel motion trajectory segments each have an endpoint connected by a bend or a pre-defined line segment. Among them, the length of the motion trajectory line segment is greater than the length of the bend line, and the length of the motion trajectory line segment is greater than the length of the preset line segment; The pre-planned path extends in a direction that remains perpendicular to the trajectory line. The angle between the current changed extension direction and the previous extension direction is equal to the angle between the line segment of the motion trajectory in the bow-shaped path corresponding to the current changed extension direction and the line segment of the motion trajectory in the bow-shaped path before the extension direction was changed.

10. The robot control method according to claim 8, characterized in that, The work completion time is equal to the product of the ratio of the area of ​​the current specific medium partition to the effective coverage area of ​​the robot and a first preset coefficient. The robot's effective coverage area is equal to the product of the robot's pre-set walking speed and the robot's body width. The width of the robot's body is perpendicular to the direction in which the robot walks. The first preset coefficient is used to represent the difference between the area covered by the trajectory actually walked by the robot and the area of ​​the current specific medium partition after the robot has actually walked through the current specific medium partition. The predetermined time interval, within the allowable error range, is equal to the product of the ratio of the area of ​​the current specific medium region to the effective coverage area of ​​the robot and a second preset coefficient; wherein, the second preset coefficient is related to the number of boundary lines enclosing the current specific medium region; Wherein, when the product of the ratio of the area of ​​the current specific medium region to the effective coverage area of ​​the robot and the second preset coefficient is less than the first preset coefficient, the product of the ratio of the area of ​​the current specific medium region to the effective coverage area of ​​the robot and the second preset coefficient is assigned the first preset coefficient, so that the value of the predetermined time interval is not less than the first preset coefficient.

11. The robot control method according to claim 10, characterized in that, The current specific medium partition is a rectangular area, and the current specific medium area is a closed area that causes the robot to slip; The first preset coefficient is set to be greater than or equal to the value 2, and the second preset coefficient is set to the value 1 / 4. When the value of the predetermined time interval is less than the value of 2, the value of the predetermined time interval is set to the value of 2.

12. The robot control method according to claim 8, characterized in that, As the robot moves within the current specific medium partition according to the preset planned path, when the intensity of the ultrasonic reflected signal received by the ultrasonic sensor is not within the preset intensity threshold range, the robot determines that it has reached the boundary line of the current specific medium partition. Then, the robot adjusts its walking direction so that it does not move outside the current specific medium partition, and then moves within the current specific medium partition according to the preset planned path, wherein the extension direction of the preset planned path is perpendicular to the adjusted walking direction. Among them, an ultrasonic sensor is installed at the front of the bottom of the robot to emit ultrasonic waves toward the robot's walking surface; The preset intensity threshold range is used to represent the signal intensity range of the ultrasonic reflected signal fed back from the specific medium region.

13. The robot control method according to claim 8, characterized in that, As the robot moves within the current specific medium zone according to the preset planned path, whenever it collides with an obstacle, it first adjusts its forward direction to avoid the obstacle, and then moves within the current specific medium zone according to the preset planned path, wherein the extension direction of the preset planned path is perpendicular to the adjusted walking direction.

14. The robot control method according to claim 1, characterized in that, Step S4 specifically includes: When the robot walks to the boundary line of the current specific medium partition, the robot rotates its body to adjust its walking direction until the intensity of the ultrasonic reflected signal received by the first ultrasonic sensor is not within the preset intensity threshold range, the intensity of the ultrasonic reflected signal received by the second ultrasonic sensor is within the preset intensity threshold range, and the attitude angle measured by the inertial sensor is less than or equal to the preset angle threshold. Then, the robot does not detect the current specific medium partition on the side corresponding to the first ultrasonic sensor, and the robot detects the current specific medium partition on the side corresponding to the second ultrasonic sensor. Thus, it is determined that the robot is in a state where the two ultrasonic sensors are located on both sides of the boundary line of the current specific medium partition. Starting from the position where the robot initially maintains the state where the two ultrasonic sensors are positioned on either side of the boundary line of the current specific medium partition, the robot moves in a preset clockwise direction so that it moves along the boundary line of the current specific medium partition, and uses an inertial sensor to detect the amount of angle change. When the robot detects that the angle change has reached the reference angle, the robot moves to the corner point and then uses the pose information of the corner point to update the robot's current pose information, so as to enable the robot to regain its pose information within the current specific medium partition; wherein, the angle change is the change in the robot's heading angle, which is used to represent the change in the robot's walking direction; Wherein, the corner point is the common endpoint of the two boundary lines of the current specific medium partition, and is the position point where the robot maintains its movement along the boundary line of the current specific medium partition by rotating the reference angle; The preset clockwise direction is either clockwise or counterclockwise.

15. The robot control method according to claim 14, characterized in that, In step S4, the method for determining the boundary line of the current specific medium partition where the robot travels within a specific medium area includes: When the intensity of the ultrasonic reflected signal received by the ultrasonic sensor is not within the preset intensity threshold range during the robot's movement within the current specific medium partition, the robot determines that it has moved to the boundary line of the current specific medium partition. The preset intensity threshold range is a pre-set signal intensity threshold range used to represent the signal intensity range of the ultrasonic reflected signal fed back by the current specific medium partition; The ultrasonic sensor is either a first ultrasonic sensor or a second ultrasonic sensor.

16. The robot control method according to claim 14, characterized in that, When the robot detects that the angle change reaches the reference angle from the repositioning starting point, the robot determines that it has walked to the corner point, and rotates through the reference angle in a preset clockwise direction at the corner point. Then the robot uses the pose information of the corner point to update the robot's current pose information. The repositioning starting point is the position where the robot begins to maintain the state where the two ultrasonic sensors are located on opposite sides of the boundary line of the current specific medium partition. Wherein, the corner point and the repositioning start point are located on the same boundary line of the current specific medium partition, which is located between the first ultrasonic sensor and the second ultrasonic sensor. The second ultrasonic sensor is located above the current specific medium partition, and the first ultrasonic sensor is located above the area outside the specific medium region.

17. The robot control method according to claim 14, characterized in that, When the robot walks within the current specific medium partition, the robot controls the ultrasonic sensor to emit ultrasonic waves and receive ultrasonic wave reflection signals, and controls the inertial sensor to measure the robot's attitude angle, but stops marking the grid of the global map. After the robot updates its current pose information using the pose information of the corner points, the robot walks to an area outside the specific medium area. At the same time, the robot acquires its pose information and marks the corresponding grid in the global map. Wherein, the surface covering medium of the area outside the specific medium region is different from the specific medium covering the surface of the current specific medium partition; The current specific medium partition is a closed area that causes the robot to slip.

18. The robot control method according to claim 2, characterized in that, The specific medium area is an area covered by carpet; the preset planned path is a bow-shaped path; The intensity of the ultrasonic reflected signal received by the ultrasonic sensor is the level value obtained by analog-to-digital conversion of the ultrasonic reflected signal on the surface of the robot's walking environment; the robot's walking environment includes the specific medium area and the surface of the obstacle.

19. The robot control method according to claim 1, characterized in that, In step S5, after the robot determines that it has reached a corner point, it first updates the corner point to the robot's current position point, and then executes step S2. When executing step S2, according to the method for determining the current preset target point and the current specific medium partition based on the robot's current position point, the next preset target point and the next specific medium partition are obtained, and the next preset target point is updated to the current preset target point, and the next specific medium partition is updated to the current specific medium partition.

20. A robot, characterized in that, The robot is equipped with at least one inertial sensor, at least two ultrasonic sensors, and at least one processor. At least two ultrasonic sensors are fixedly mounted on both sides of the bottom of the robot, located on both sides of the robot's central axis, which is parallel to the direction of travel. Both the inertial sensor and the ultrasonic sensor are electrically connected to the processor. The processor is used to control the robot to perform the robot control method according to any one of claims 1 to 19.

21. A chip, wherein a program is stored on the chip, characterized in that, When the program is executed by the chip, it implements the robot control method as described in any one of claims 1 to 19.