CN116942018A - Robot control method based on specific medium area, robot and chip - Google Patents

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

Info

Publication number
CN116942018A
CN116942018A CN202210392569.1A CN202210392569A CN116942018A CN 116942018 A CN116942018 A CN 116942018A CN 202210392569 A CN202210392569 A CN 202210392569A CN 116942018 A CN116942018 A CN 116942018A
Authority
CN
China
Prior art keywords
robot
specific medium
preset
current
area
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202210392569.1A
Other languages
Chinese (zh)
Inventor
李永勇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhuhai Amicro Semiconductor Co Ltd
Original Assignee
Zhuhai Amicro Semiconductor Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhuhai Amicro Semiconductor Co Ltd filed Critical Zhuhai Amicro Semiconductor Co Ltd
Priority to CN202210392569.1A priority Critical patent/CN116942018A/en
Publication of CN116942018A publication Critical patent/CN116942018A/en
Pending legal-status Critical Current

Links

Classifications

    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L11/00Machines for cleaning floors, carpets, furniture, walls, or wall coverings
    • A47L11/24Floor-sweeping machines, motor-driven
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L11/00Machines for cleaning floors, carpets, furniture, walls, or wall coverings
    • A47L11/40Parts or details of machines not provided for in groups A47L11/02 - A47L11/38, or not restricted to one of these groups, e.g. handles, arrangements of switches, skirts, buffers, levers
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L11/00Machines for cleaning floors, carpets, furniture, walls, or wall coverings
    • A47L11/40Parts or details of machines not provided for in groups A47L11/02 - A47L11/38, or not restricted to one of these groups, e.g. handles, arrangements of switches, skirts, buffers, levers
    • A47L11/4002Installations of electric equipment
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L11/00Machines for cleaning floors, carpets, furniture, walls, or wall coverings
    • A47L11/40Parts or details of machines not provided for in groups A47L11/02 - A47L11/38, or not restricted to one of these groups, e.g. handles, arrangements of switches, skirts, buffers, levers
    • A47L11/4011Regulation of the cleaning machine by electric means; Control systems and remote control systems therefor
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L11/00Machines for cleaning floors, carpets, furniture, walls, or wall coverings
    • A47L11/40Parts or details of machines not provided for in groups A47L11/02 - A47L11/38, or not restricted to one of these groups, e.g. handles, arrangements of switches, skirts, buffers, levers
    • A47L11/4061Steering means; Means for avoiding obstacles; Details related to the place where the driver is accommodated

Landscapes

  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
  • Manipulator (AREA)

Abstract

The invention discloses a robot control method, a robot and a chip based on a specific medium area, wherein the robot control method comprises the steps that the robot detects the specific medium area by combining the intensity of an ultrasonic reflection signal received by an ultrasonic sensor and angle information detected by an inertial sensor, and controls the robot not to enter the specific medium area; determining a current specific medium partition according to the current position point of the robot, and controlling the robot to enter the current specific medium partition; each time the robot walks in the current specific medium partition for a preset time interval, the extending direction of the preset planning path is adjusted; after the robot walks the current specific medium partition, the robot walks along the boundary line of the current specific medium partition until the robot walks to the corner point, and then the position point corresponding to the pose information of the corner point is used for updating the current position point of the robot; repeating the steps until the robot walks through all the specific medium partitions in the specific medium area.

Description

Robot control method based on specific medium area, robot and chip
Technical Field
The invention relates to the technical field of intelligent mobile robots, in particular to a robot control method, a robot and a chip based on a specific medium area.
Background
In an indoor environment, when a robot which uses an inertial sensor only for navigation walks on the ground, the robot may contact with a ground medium which is easy to slip a driving wheel of the robot, such as a carpet, and an excessively high obstacle on the ground surface, so that the robot is not easy to walk along a regular path, such as an arcuate path, and the driving wheel of the robot is also caused to slip in an idling manner to accumulate measurement errors, and the navigation positioning of the robot under the complex road conditions of the indoor environment is affected. On the other hand, in the prior art, high-precision ranging sensors such as laser sensors and depth cameras can be used for constructing maps and navigation positioning, but the cost is high, and pixel and point cloud noise information cannot be carried.
Disclosure of Invention
In order to solve the technical problems, the invention discloses a robot control method, a robot and a chip based on a specific medium area, which can enable the robot to traverse all the areas in the specific medium area and the areas outside the specific medium area, and maintain that the robot equipped with an inertial sensor and an ultrasonic sensor can walk on the surfaces of carpets, floors and high-barrier walking environments according to a preset planning path until the robot traverses indoor environment areas inside and outside the specific medium area. The specific technical scheme is as follows:
The robot control method based on the specific medium area is suitable for a robot provided with an inertial sensor and an ultrasonic sensor, wherein at least two ultrasonic sensors are fixedly arranged on two sides of the bottom of the robot and are positioned on two sides of the central axis of the robot, and the central axis of the robot is parallel to the walking direction; the robot control method comprises the following steps: step S1, a robot detects a specific medium area by combining the intensity of an ultrasonic reflected signal received by an ultrasonic sensor and angle information measured by an inertial sensor, and then adjusts a walking strategy so that the robot does not enter the specific medium area until the robot walks through areas except the specific medium area; step S2, after the robot walks through the areas except the specific medium area, the robot determines the current specific medium area according to the current position point of the robot, and then the robot enters the current specific medium area from the areas except the specific medium area; the specific medium area comprises a plurality of specific medium partitions, and the current specific medium partition belongs to the specific medium partition; step S3, after the robot enters the current specific medium partition, the robot walks in the current specific medium partition according to a preset planning path, each time the robot walks for a preset time interval, the robot adjusts the extending direction of the preset planning path, and then walks in the current specific medium partition according to the preset planning path after the extending direction is adjusted until the robot determines that the robot walks in the current specific medium partition; step S4, after the robot determines that the current specific medium partition is walked, the robot walks to the boundary line of the current specific medium partition, and then the robot is controlled to walk in a state of keeping two ultrasonic sensors located on two 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 the robot walks to the corner point; wherein the corner points are end points belonging to boundary lines which enclose the current specific medium partition; and S5, updating the corner point in the step S4 into a current position point of the robot by the robot, and repeatedly executing the step S2, the step S3 and the step S4 by the robot until the robot finishes walking all the specific medium partitions in the specific medium area, and determining that the robot finishes walking the specific medium area by the robot.
Further, in the step S1, the method for detecting the specific medium area by the robot in combination with the intensity of the ultrasonic reflected signal received by the ultrasonic sensor and the angle information measured by the inertial sensor, and then adjusting the walking strategy so that the robot does not enter the specific medium area includes: controlling an ultrasonic sensor to emit ultrasonic waves and receive ultrasonic reflection signals, and simultaneously controlling an inertial sensor to measure the attitude angle of the robot; when the intensity of the ultrasonic reflected signal received by the ultrasonic sensor is not within a preset intensity threshold value range, the robot does not detect a specific medium area and is not in a state of crossing a first target obstacle; when the intensity of an ultrasonic reflected signal received by an ultrasonic sensor is in a preset intensity threshold range and an attitude angle measured by an inertial sensor is in a first preset angle threshold range, the robot detects a specific medium area and is not in a state of crossing an obstacle, and marks a grid corresponding to a boundary point of the specific medium area in a global map; then, the walking direction is adjusted so that the robot does not enter a specific medium area; when the intensity of an ultrasonic reflected signal received by an ultrasonic sensor is in a preset intensity threshold range and the attitude angle measured by an inertial sensor is in a second preset angle threshold range, the robot detects a first target obstacle and is in a state of crossing the first target obstacle, marks a grid corresponding to the first target obstacle in a global map, and then the robot does not continuously cross the first target obstacle; wherein, the state that the robot is in a state of crossing the obstacle is relative to a horizontal plane, and the body of the robot is obliquely arranged on the surface of the obstacle; the obstacle comprises a first target obstacle; wherein a specific medium covered region is set as the specific medium region; the global map belongs to a grid map and is pre-stored in a memory of the robot.
Further, 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 smaller than or equal to a preset angle threshold, the robot detects a specific medium area and is not in a state of crossing an obstacle, and marks a grid corresponding to a boundary point of the specific medium area in the global map; then, the walking direction is adjusted so that the robot does not enter the detected specific medium area; when the intensity of an ultrasonic reflected signal received by an ultrasonic sensor is in a preset intensity threshold range and the attitude angle measured by an inertial sensor is larger than a preset angle threshold, the robot detects a first target obstacle and is in a state of crossing the first target obstacle, marks a grid corresponding to the first target obstacle in a global map, and then the robot does not continuously cross the first target obstacle; wherein the height of the first target obstacle is greater than the maximum spanable height allowed by the robot to span the obstacle; wherein the angle range smaller than or equal to the preset angle threshold is a first preset angle threshold range, and the angle range larger than the preset angle threshold is a second preset angle threshold range; the preset angle threshold is determined by an inverse trigonometric function result of the maximum spanable height allowed by the robot to span the obstacle; wherein the predetermined angle threshold is a value configured to be at a predetermined error magnitude.
Further, 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 smaller than or equal to the preset angle threshold, the robot detects a second target obstacle and is in a state of crossing the second target obstacle, marks a grid corresponding to the second target obstacle in the global map, and then the robot continues to move forward to cross the second target obstacle; or when the intensity of the ultrasonic reflected signal received by the ultrasonic sensor is not in the preset intensity threshold range and the attitude angle measured by the inertial sensor is smaller than or equal to the preset angle threshold, the robot is not in a state of crossing the obstacle, and the robot walks according to the preset planning path; wherein the obstacle further comprises a second target obstacle; the second target obstacle protrudes from the horizontal plane, and the height of the second target obstacle is smaller than or equal to the maximum spanable height allowed by the robot to span the obstacle.
Further, in the step S1, each time the robot searches the grid corresponding to the non-traversed position point except the detected specific medium area in the neighborhood in the global map, the robot walks to the non-traversed position point, and then walks continuously from the non-traversed position point according to the preset planning path, but does not enter the specific medium area; when the robot walks through the areas except the specific medium area, determining that the remaining non-traversed area is the specific medium area; the specific medium area is formed by connecting a plurality of closed areas formed by the boundary points, and one specific medium area is a closed area; the boundary point of each specific medium partition is the boundary point of the specific medium area; the specific medium area is formed by a plurality of closed grid areas surrounded by grids corresponding to the boundary points in the global map, and one specific medium area is represented by one closed grid area in the global map; wherein, every time the robot walks to a position point, the robot is determined to traverse to the position point, the position point is set as a traversed position point, and the grid corresponding to the position point is marked as a traversed grid in the global map.
Further, in the step S2, the method for determining the current specific medium partition by the robot according to the current position point of the robot includes: selecting one corner nearest to the current position point of the robot from the corner points of all specific medium partitions which are not passed by the robot to be configured as a reference corner; wherein, the grids corresponding to the boundary points of each specific medium partition are marked in the global map; boundary points of the specific medium region comprise corner points; then, the robot selects two boundaries taking the reference corner as common endpoints to be respectively configured as a first reference edge and a second reference edge in a specific medium partition where the reference corner is located; the boundary line of the specific medium partition is formed by connecting boundary points of the specific medium partition; the robot selects one midpoint closest to the current position point of the robot from the midpoints of the first reference edge and the second reference edge to be configured as a 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.
Further, in the step S2, the method for the robot to enter the current specific medium partition from the area outside the specific medium area includes: before entering the current specific medium partition, the robot walks from the current position point to the current preset target point after determining the current preset target point and the current specific medium partition, and walks from the current preset target point to a preset walking starting point of the specific medium partition where the robot is located; when the robot walks to a preset walking starting point of the current specific medium partition, the robot determines that the robot completely enters the specific medium partition; the robot sets the center point of the specific medium partition where the current preset target point is located as the preset walking starting point of the current specific medium partition.
Further, the step S3 specifically includes: the robot walks in the current specific medium partition according to a preset planning path from a preset walking starting point of the current specific medium partition, and records the time spent by the robot in the current specific medium partition; each time the robot walks through a preset time interval, the robot adjusts the extending direction of the preset planning path, and walks in the current specific medium partition according to the preset planning path after the extending direction is adjusted, so that the robot traverses an area which is not covered by the preset planning path before adjustment on the preset planning path which is adjusted up to the latest, until the time spent by the robot for starting to walk from the preset walking starting point of the current specific medium partition reaches the working end time, and the robot determines that the robot walks the current specific medium partition.
Further, the preset planning path is an arcuate path; wherein the arcuate path comprises a plurality of motion track line segments which are parallel to each other; two adjacent motion track line segments which are parallel to each other are connected through a bending line or a preset line segment at one end point; the length of the motion track line segment is greater than that of the bending line, and the length of the motion track line segment is greater than that of the preset line segment; wherein, the extending direction of the preset planning path is kept perpendicular to the moving track line segment; the included angle formed by the extending direction which is changed currently and the extending direction which is before being changed is equal to the included angle formed by the moving track line segment in the bow-shaped path which corresponds to the extending direction which is changed currently and the moving track line segment in the bow-shaped path which is before being changed.
Further, the work end 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 walking speed of the robot and the width of the robot body; the direction along which the width of the robot body is arranged is perpendicular to the walking direction of the robot; the first preset coefficient is used for indicating the difference between the coverage area of the track actually walked by the robot and the area of the current specific medium partition after the robot actually walks through the current specific medium partition; the preset time interval is equal to the product of the ratio of the area of the current specific medium area to the effective coverage area of the robot and a second preset coefficient in an error allowable range; wherein the second preset coefficient is related to the number of boundary lines surrounding the current specific medium area; when the product of the ratio of the area of the current specific medium area to the effective coverage area of the robot and the second preset coefficient is smaller than the first preset coefficient, the product of the ratio of the area of the current specific medium area to the effective coverage area of the robot and the second preset coefficient is assigned to be the first preset coefficient, so that the value of the preset time interval is not smaller than the first preset coefficient.
Further, the current specific medium partition is a rectangular area, and the current specific medium area is a closed area for the robot to slip; wherein the first preset coefficient is set to be greater than or equal to a value of 2, and the second preset coefficient is set to be 1/4; when the value of the predetermined time interval is smaller than the value 2, the value of the predetermined time interval is set to the value 2.
Further, in the process that the robot walks in the current specific medium partition according to a preset planning path, when the intensity of an ultrasonic reflection signal received by an ultrasonic sensor is not within a preset intensity threshold value range, the robot determines a boundary line of the current specific medium partition, then adjusts a walking direction so that the robot does not walk outside the current specific medium partition, and walks in the current specific medium partition according to the preset planning path, wherein the extending direction of the preset planning path is perpendicular to the adjusted walking direction; wherein, an ultrasonic sensor is assembled in front of the bottom of the robot and is used for emitting ultrasonic waves towards the walking surface of the robot; the preset intensity threshold range is used for representing the signal intensity range of the ultrasonic reflection signal fed back by the specific medium region.
Further, in the process that the robot walks in the current specific medium partition according to the preset planning path, each time the robot collides with an obstacle, the advancing direction is adjusted to avoid the obstacle, and then the robot walks in the current specific medium partition according to the preset planning path, wherein the extending direction of the preset planning path is perpendicular to the adjusted walking direction.
Further, the step S4 specifically includes: when the robot walks to the boundary line of the current specific medium partition, the robot rotates the machine body to adjust the walking direction until the intensity of the ultrasonic reflection signal received by the first ultrasonic sensor is not in the preset intensity threshold range, the intensity of the ultrasonic reflection signal received by the second ultrasonic sensor is in the preset intensity threshold range, and the attitude angle measured by the inertial sensor is smaller than or equal to the preset angle threshold, the robot does not detect the current specific medium partition at the side corresponding to the first ultrasonic sensor, and the robot detects the current specific medium partition at the side corresponding to the second ultrasonic sensor, so that the state that the robot is positioned at two sides of the boundary line of the current specific medium partition is determined; the robot walks according to a preset clockwise direction from a position point where the two ultrasonic sensors are positioned when the two ultrasonic sensors start to be in a state of being respectively located at two sides of the boundary line of the current specific medium partition, so that the robot walks along the boundary line of the current specific medium partition, and an inertial sensor is used for detecting the angle change quantity; when the robot detects that the angle variation reaches a reference angle, the robot walks to the corner point, and the pose information of the corner point is used for updating the current pose information of the robot so as to realize that the robot obtains the pose information of the robot again in the current specific medium partition; the angle change amount is the angle change amount of the course angle of the robot and is used for representing the change of the walking direction of the robot; the corner point is a common endpoint of two boundary lines of the current specific medium partition, and is a position point at which a robot maintains walking along the boundary line of the current specific medium partition by rotating the reference angle; wherein the preset clockwise direction is a clockwise direction or a counterclockwise direction.
Further, in step S4, the method for determining the boundary line of the robot traveling to the current specific medium zone in the specific medium zone includes: in the process that the robot walks in the current specific medium partition, when the intensity of an ultrasonic reflection signal received by an ultrasonic sensor is not in the preset intensity threshold range, the robot determines a boundary line of the robot walks to the current specific medium partition; the preset intensity threshold range is a preset signal intensity threshold range and is used for representing the signal intensity range of the ultrasonic wave reflected signal fed back by the current specific medium partition; wherein the ultrasonic sensor is a first ultrasonic sensor or a second ultrasonic sensor.
Further, when the robot detects that the angle change amount reaches the reference angle from the repositioning starting point, the robot determines that the robot walks to the corner point, rotates the reference angle at the corner point according to the preset clockwise direction, and then uses the pose information of the corner point to update the current pose information of the robot; the repositioning starting point is a position point where the robot starts to keep the two ultrasonic sensors in a state of being respectively located on two sides of the boundary line of the current specific medium partition; the corner point and the repositioning starting point are positioned on the same boundary line of the current specific medium partition, the boundary line is positioned between a first ultrasonic sensor and a second ultrasonic sensor, the second ultrasonic sensor is positioned above the current specific medium partition, and the first ultrasonic sensor is positioned above an area outside the specific medium area.
Further, when the robot walks in the current specific medium zone, the robot controls the ultrasonic sensor to send out ultrasonic waves and receive ultrasonic reflection signals, and controls the inertial sensor to measure the attitude angle of the robot, but stops marking grids of the global map; when the robot uses the pose information of the angular points to update the current pose information of the robot, the robot walks to an area outside the specific medium area, and meanwhile, the robot acquires the pose information of the robot and marks corresponding grids in a global map; wherein the medium covered by the surface of the area outside the specific medium area is different from the specific medium covered by the surface of the current specific medium partition; the current specific medium partition is a closed area for the robot to slip.
Further, the specific media area is a carpet covered area; the preset planning path is an arcuate path; the intensity of the ultrasonic reflected signal received by the ultrasonic sensor is a reflected signal of the ultrasonic on the surface of the robot walking environment, and the level value is obtained through analog-to-digital conversion; the walking environment of the robot comprises the specific medium area and the surface of the obstacle.
Further, in the step S5, after the robot determines to walk to the corner point, the corner point is updated to be the current position point of the robot, and then step S2 is executed, and when step S2 is executed, the next preset target point and the next specific medium partition are obtained according to the determination method of determining the current preset target point and the current specific medium partition according to the current position point of the robot, and the next preset target point is updated to be the current preset target point, and the next specific medium partition is updated to be the current specific medium partition.
The robot is provided with at least one inertial sensor, at least two ultrasonic sensors and at least one processor, wherein the at least two ultrasonic sensors are fixedly arranged on two sides of the bottom of the robot and are positioned on two sides of the central axis of the robot, and the central axis of the robot is parallel to the walking direction; the inertial sensor and the ultrasonic sensor are electrically connected with the processor; the processor is used for controlling the robot to execute the robot control method.
A chip on which a program is stored, which when executed by the chip implements the robot control method as described.
In the technical scheme of the invention, a robot detects a specific medium area, a crossing obstacle (a second target obstacle) and a non-crossing obstacle (a first target obstacle) at first so as to adapt to walking on the surfaces of different mediums and terrains according to a preset planning path, and then walks in a corresponding specific medium partition according to the preset planning path in a mode of adjusting the path extending direction according to the coverage condition of a working area on the basis of detecting the specific medium area, namely the robot walks through the corresponding specific medium partition; then, the robot is positioned in a specific medium partition which is moved through at least one corner point in a corresponding corner area, so that the robot can navigate to the next specific medium partition conveniently; the iteration is repeated until the robot runs out of all the specific medium partitions in the specific medium area.
When the robot is a floor sweeping robot and the specific medium partition is a carpet coverage area in a room area, the technical scheme of the invention relies on the inertial sensor and the ultrasonic sensor to perform cleaning operation with larger coverage on each carpet partition, reduces drawing errors caused by skidding of driving wheels of the robot, and obtains accurate machine body positioning information in each carpet partition so as to facilitate one traversed carpet partition to enter an un-traversed carpet partition with reasonable distance, thereby orderly completing cleaning operation of all carpet partitions included by carpets in an indoor working area.
Drawings
Fig. 1 is a flow chart of a robot control method based on a specific medium area disclosed in an embodiment of the present application.
Fig. 2 is a flowchart of a method of implementing step S101 disclosed in fig. 1 of the present application.
Fig. 3 is a flowchart of a method of implementing step S103 and step S104 disclosed in fig. 1 of the present application.
Fig. 4 is a flowchart of a method of implementing step S105 disclosed in fig. 1 of the present application.
Detailed Description
The following describes the technical solution in the embodiment of the present application in detail with reference to the drawings in the embodiment of the present application.
In the following description, for purposes of explanation and not limitation, specific details are set forth such as the particular system architecture, techniques, etc., in order to provide a thorough understanding of the embodiments of the present application. It will be apparent, however, to one skilled in the art that the present application may be practiced in other embodiments that depart from these specific details. In other instances, detailed descriptions of well-known systems, devices, circuits, and methods are omitted so as not to obscure the description of the present application with unnecessary detail.
It will be understood that the terms "comprises" and/or "comprising," when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof. It should also be understood that the term "and/or" as used in this disclosure refers to any and all possible combinations of one or more of the associated listed items, and includes such combinations.
As used in this disclosure, the term "if" may be interpreted as "when …" or "upon" or "in response to a determination" or "in response to detection" depending on the context. Similarly, the phrase "if a determination" or "if a [ described condition or event ] is detected" may be interpreted in the context of meaning "upon determination" or "in response to determination" or "upon detection of a [ described condition or event ]" or "in response to detection of a [ described condition or event ]".
In addition, in the description of the present application, the terms "first," "second," "third," etc. are used merely to distinguish between descriptions and should not be construed as indicating or implying relative importance. Reference in the specification to "one embodiment" or "some embodiments" or the like means that a particular feature, structure, or characteristic described in connection with the embodiment is included in one or more embodiments of the application. Thus, appearances of the phrases "in one embodiment," "in some embodiments," "in other embodiments," and the like in the specification are not necessarily all referring to the same embodiment, but mean "one or more but not all embodiments" unless expressly specified otherwise. The terms "comprising," "including," "having," and variations thereof mean "including but not limited to," unless expressly specified otherwise.
The navigation using the inertial sensor is a low-cost and practical navigation method for the intelligent mobile robot, but the drawbacks are also prominent, and the navigation accuracy is mainly low. Among them, gyro drift and encoder drift are the main causes affecting navigation accuracy. In the running process of the sweeping robot, due to complex factors such as wheel slipping and the like, errors occur in the gyroscope and the encoder, and if the errors are not corrected, the robot gradually deviates from the route. Considering that when the robot is in a normal state, the driving wheel of the robot drives the robot to displace, namely the driving mileage of the driving wheel measured by the robot is consistent with the actual displacement of the robot; the driving wheel of the robot rotates, the actual displacement of the robot is unchanged, the driving mileage of the driving wheel measured by the robot is different from the actual displacement of the robot, and the robot is in a slipping state.
Generally, the robot senses the change of the walking environment, mainly the robot detects the change of the walking environment such as the floor entering a carpet or the floor entering from the carpet in the walking process, a bulge with lower height exists in front of the robot at some time, the driving wheel of the robot slips or idles, the distance between the driving wheel and the actually measured mileage of the code wheel is inconsistent, and the displacement calculation has deviation; the walking environment comprises a carpet, a floor, an obstacle on which the robot climbs currently and an obstacle contacted by the robot downhill; the height of the obstacle (especially the height in the vertical direction) can also influence the inclination degree of the robot on the surface of the obstacle, so that the driving wheel of the robot can slip, the deviation between a map established by the robot and a real environment map is caused, the robot can not stay on a given route and/or reach a designated position when the global map is used for navigation in the follow-up process, and the error of the calculation result of the displacement distance of the robot is caused.
The ultrasonic sensor may continuously collect ultrasonic data of the detection space region at 6ms intervals, and the robot may convert the region position coordinate information detected by the ultrasonic sensor into a global map, and may be a three-dimensional map represented by voxels or a two-dimensional grid map. The detection space region generated by the ultrasonic sensor is formed by the ultrasonic transmission angle and the maximum detection distance constraint, and preferably forms a cone region range. The intensity of the measuring signal returned by the ultrasonic reflected signal comprises the intensity of the ultrasonic signal which is different from the intensity of the feedback of the obstacle surface and the ground medium, which are nearest to the ultrasonic sensor, in the range of the conical area, and the intensity of the ultrasonic signal is generally expressed by using the level, so that the type of the medium on the surface can be distinguished according to the intensity of the ultrasonic signal; the measurement signal returned by the reflected signal of the ultrasonic wave also comprises a distance measurement value of a position point of the obstacle surface closest to the ultrasonic sensor within the range of the conical region, and can also be distance information fed back by a projection region of the ultrasonic wave on the obstacle surface. Under some embodiments of the robot walking environment, when the robot crosses a part of too high obstacle, the signal intensity fed back by the surface of the part of obstacle is relatively close to the signal intensity fed back by the carpet in front of the robot and is in the same threshold judgment range, and at this time, it is not easy to judge whether the walking environment of the robot is the carpet or the too high obstacle currently crossed by the robot.
As an embodiment, the invention discloses a robot control method based on a specific medium area, which is suitable for a robot provided with an inertial sensor and an ultrasonic sensor, wherein the ultrasonic sensor is arranged in front of the bottom of the robot, so that the robot can detect a proper position as soon as possible in the running process. Preferably, considering the cost factor of the sensors, at least one ultrasonic sensor is installed at each of both sides of the bottom of the robot, and each ultrasonic sensor may be located at a vertical distance from the central axis of the robot, which is parallel to the traveling direction of the robot, in a range of 2 cm to 3 cm.
As an embodiment one, as shown in fig. 1, the embodiment one discloses a robot control method based on a specific medium area, the basic steps of the robot control method include:
in step S101, the robot detects a specific medium area by combining the intensity of the ultrasonic reflected signal received by the ultrasonic sensor and the angle information measured by the inertial sensor, in order to overcome the problem that the intensity of the ultrasonic reflected signal fed back by the surface of the excessively high obstacle is close to the intensity of the ultrasonic reflected signal fed back by the carpet in front of the robot and cannot be identified, the robot specifically distinguishes the specific medium area and the first target obstacle within a signal intensity range of the ultrasonic reflected signal, marks a corresponding grid in the global map, detects the state of the robot on the first target obstacle, and then adjusts the walking strategy so that the robot does not enter the specific medium area, so that the method is repeated until the robot walks through the area except the specific medium area, and then the robot executes step S102. Wherein the first target obstacle is typically an obstacle that the robot cannot span.
Step S102, judging whether the robot runs out of all the specific medium partitions in the specific medium area, if yes, executing step S107, otherwise, executing step S103. Wherein the specific medium area comprises a plurality of specific medium partitions; the specific medium area is formed by connecting a plurality of closed areas formed by the boundary points, one specific medium area is a closed area, and the closed area is equivalent to the closed area; the boundary point of each specific medium partition is the boundary point of the specific medium area; the specific medium area is formed by a plurality of closed grid areas surrounded by grids corresponding to the boundary points in the global map, and one specific medium area is represented by one closed grid area in the global map; it should be noted that, in this embodiment, each time the robot walks to a location point, it is determined that the robot walks to the location point, 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, and the robot can walk out of a traversed area when traversing grids one by one.
Step S103, after the robot walks through the areas except the specific medium area, the robot determines the current specific medium area according to the current position point of the robot, then the robot enters the current specific medium area from the areas except the specific medium area, and then step S104 is executed. Specifically, the robot determines a current preset target point and a current specific medium partition according to a current position point of the robot, and then the robot walks from the current position point to the current preset target point so that the robot enters the current specific medium partition from an area outside the specific medium area through the current preset target point, wherein the current preset target point serves as a navigation entry position 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 for the robot to slip.
Step S104, the robot walks in the current specific medium partition according to the preset planning path, every time the robot walks for a preset time interval, the robot adjusts the extending direction of the preset planning path, and walks in the current specific medium partition according to the preset planning path after the extending direction is adjusted until the robot determines that the robot walks in the current specific medium partition, and then step S105 is executed. Specifically, after the robot enters the current specific medium partition, starting from a preset walking starting point, walking in the current specific medium partition according to a preset planning path, performing timing operation, adjusting the extending direction of the preset planning path every time the robot walks through a preset time interval, and then walking in the current specific medium partition according to the preset planning path after the extending direction is adjusted until the time spent by the robot from the preset walking starting point reaches the working end time, wherein the robot determines that the robot walks through the current specific medium partition. The preset walking starting point is a starting position point of the robot walking in the current specific medium partition.
Step S105, the robot walks to the boundary line of the current specific medium partition in advance, then the robot is controlled to walk in a state of keeping two ultrasonic sensors located on two sides of the boundary of the current specific medium partition by adjusting the walking direction, specifically, the robot walks in a state of keeping the ultrasonic sensors located on the left and right sides of the central axis of the robot located on two 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 the robot walks to the corner point, and then step S106 is executed; in some embodiments, the robot updates the pose information of the corner point to be the current pose information of the robot, so as to implement repositioning operation on the robot, wherein the corner point is an endpoint belonging to a boundary line surrounding a current specific medium partition, and the pose information of the corner point is pre-stored in a memory of the robot.
Step S106, the robot updates the corner point described in step S105 to the current position point of the robot, and then performs step S102. The pose information of the corner point in step S105 is correspondingly updated to the pose information of the current position point of the robot. And the robot repeatedly executes the steps S102 to S106 to update the current specific medium partition, the current preset target point and the preset running start point of the current specific medium partition until the robot runs out of all the specific medium partitions in the specific medium area, and the robot determines that the robot runs out of the specific medium area.
Step S107, the robot has already walked through the specific medium area and stops executing the robot control method, specifically including stopping entering a new specific medium partition in step S103, stopping walking within the current specific medium partition according to the preset planned path and adjusting the extending direction of the preset path in step S104, stopping maintaining the state that the two ultrasonic sensors are located on both sides of the boundary of the current specific medium partition in step S105, and stopping updating the corner point to be the current position point of the robot in step S106.
Combining the steps S101 to S107, it can be known that the robot detects a specific medium area, a spanable obstacle (a second target obstacle) and a non-spanable obstacle (a first target obstacle) to adapt to walking on the surfaces of different mediums and terrains according to a preset planning path, and walks in a corresponding specific medium partition according to the preset planning path in a mode of adjusting the path extending direction according to the coverage condition of the working area on the basis of detecting the specific medium area, namely, the robot traverses a corresponding specific medium partition; then, the robot is positioned in a specific medium partition which is moved through at least one corner point in a corresponding corner area, so that the robot can navigate to the next specific medium partition conveniently; the iteration is repeated until the robot runs out of all the specific medium partitions in the specific medium area. When the robot is a floor sweeping robot and the specific medium partition is a carpet coverage area in a room area, the above embodiment relies on the inertial sensor and the ultrasonic sensor to perform a cleaning operation with a large coverage area on each carpet partition, also reduces the mapping error caused by the skidding of the driving wheel of the robot, and obtains accurate body positioning information in each carpet partition so as to facilitate a traversed carpet partition to enter an un-traversed carpet partition with a reasonable distance, thereby orderly completing the cleaning operation of all the carpet partitions included in the carpet in the indoor working area.
As a second embodiment, in step S101 of the first embodiment, the robot detects a specific medium area and a first target obstacle on the walking ground of the robot by combining the intensity of the ultrasonic reflected signal received by the ultrasonic sensor and the angle information measured by the inertial sensor, marks a corresponding grid in the global map, and gives the grid-related environment type information and pose information; specific medium areas and first target barriers are distinguished in a signal intensity range of ultrasonic reflection signals, and the specific medium areas and the first target barriers correspond to excessively high barriers for distinguishing plane areas and horizontal plane protrusions, wherein the specific medium areas are areas for laying medium on a flexible surface, such as carpets, and slipping easily occurs when a robot walks on the surface of the specific medium areas; the robot can also detect a spanable obstacle and a non-spanable obstacle, wherein the first target obstacle belongs to the non-spanable obstacle, the spanable obstacle and the non-spanable obstacle belong to the obstacle which needs to enable the robot to generate a certain inclination angle, and part of the spanable obstacle is an obstacle which allows the robot to be horizontally positioned on the surface to a certain extent, so that the state of the robot on the obstacle can be detected, and the carpet detection error formed under the condition that the signal intensity fed back by the ultrasonic sensor is weaker is overcome; and then the robot adjusts the walking strategy so that the robot does not enter the detected specific medium area and does not continuously cross over the too high obstacle, thereby the robot can timely avoid the carpet surface and the too high obstacle, and the slipping phenomenon of the robot is reduced.
It is noted that before the robot starts to walk or before the robot starts to clean as a cleaning robot, detecting whether a specific medium area exists in front of the walking ground by an ultrasonic sensor, for example, detecting whether the front area of the robot is a carpet, and when the specific medium area is not detected, the robot can perform arcuate cleaning or walk according to an arcuate path; meanwhile, the robot keeps pose information calculated by using information measured by an inertial sensor, including displacement information measured by an odometer and angle information measured by a gyroscope, so as to synchronously construct a map. The cleaning robot can judge the skidding when in normal navigation walking, but the cleaning robot can possibly cause more frequent skidding false recognition conditions on the carpet due to the influence of carpet media.
Furthermore, the robot may travel on the ground through various combinations of real-time variations with respect to three mutually perpendicular axes defined by the machine body, including: a front-rear axis, a transverse axis and a central vertical axis; the traveling direction along the front-rear axis is denoted as front side as the head (advancing end) of the robot; the backward driving direction along the front-rear axis is denoted as the rear side as the tail (retreating end) of the robot; the direction of the transverse axis is substantially along the line connecting the centers of the rotation shafts of the driving wheels on the left and right sides. The body of the cleaning robot can rotate along a transverse axis, and the cleaning robot is characterized in that: when the robot climbs up an obstacle, the forward part of the robot is inclined upwards, the backward part of the robot is inclined downwards, the robot is regarded as a body to be turned upwards, the body of the robot is in contact with the surface of the obstacle at a certain inclination angle, the pitch angle of the robot is measured by the inertial sensor to be not 0, at the moment, the front side part of the body is possibly lifted by a slope or a furniture supporting leg structure similar to the slope, even the driving wheel is suspended from the ground, the robot is in a looking-up state, when the height of the obstacle is larger, the robot is in a state of idling more easily in the crossing process, the robot is required to avoid the obstacle crossing too high, and the obstacle is an obstacle which cannot be crossed, and corresponds to the first target obstacle. When the robot descends, the backward part of the robot body tilts upwards, and the forward part of the robot body tilts downwards, so that the robot body is considered as a 'dive' of the robot body, the robot body contacts with the surface of an obstacle at a certain tilting angle, the pitch angle of the robot is not 0 measured by the inertial sensor, at the moment, the front side part of the robot body is possibly lifted by a slope or a slope-like furniture support leg structure and even the driving wheel is suspended from the ground, when the robot is in a overlooking state, the greater the height of the obstacle is, the more easily the robot is in an idling state in the crossing process, the robot is required to avoid the obstacle crossing too high, and correspondingly, the robot can not cross the first target obstacle; in addition, the robot may be rotatable about a central vertical axis. When the robot walks in the forward direction, the robot turns to "turn right" on the right side of the front and rear shafts, and the robot turns to "turn left" on the left side of the front and rear shafts.
Specifically, the method for detecting a specific medium area by the robot by combining the intensity of an ultrasonic reflected signal received by an ultrasonic sensor and angle information measured by an inertial sensor, and then adjusting a walking strategy so that the robot does not enter the specific medium area comprises the following steps:
during or before the robot walks, the robot controls the ultrasonic sensor to send out ultrasonic waves and receive ultrasonic reflection signals, and simultaneously controls the inertial sensor to measure the attitude angle of the robot; the ultrasonic sensor transmits ultrasonic waves to the traveling ground to determine the ground type, so that the coverage range of the specific medium area, including the position of the boundary or the local area, is determined, compared with the traditional laser detection, the ultrasonic sensor is lower in cost and free from the interference of light, and the detection process is more stable by combining the angle information of the inertial sensor, wherein the inertial sensor is a device which reacts to physical movement, such as linear displacement or angle rotation, but does not actively send detection signals to the outside. The robot can adapt to indoor complex and various environments.
When the intensity of the ultrasonic reflected signal received by the ultrasonic sensor is not in the preset intensity threshold value range, the robot does not detect a specific medium area, the robot is not in a state of crossing a first target obstacle, but can cross an obstacle with a lower height but does not generate larger slip misjudgment, and the robot is in an error allowable range, or the robot does not touch any type of obstacle, and the robot can directly walk on the horizontal ground according to a preset planning 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 planar area covered by the carpet, the robot walks in an area outside the specific medium area according to the arcuate path, but does not enter the specific medium area detected later, so that slipping of the robot during carpet walking is avoided. The ultrasonic sensor feeds back ultrasonic signals having different intensities based on the surface densities of different cleaning objects. The magnitude of the value within the predetermined intensity threshold range is related to the type of media at the surface of the particular media area.
The state that the robot is crossing the first target obstacle is relative to the horizontal plane, and the robot body is obliquely arranged on the surface of the first target obstacle; the robot not being in a state of crossing the first target obstacle is with respect to a horizontal plane, the robot is horizontally on a surface of the first target obstacle, or the robot is not in contact with the first target obstacle. In this embodiment the horizontal plane is equivalent to a horizontal ground plane.
In practical applications, the intensity of the ultrasonic signal fed back by carpets and obstacles on which the robot climbs is lower than that of the floor. Based on the above, an angle threshold or an angle threshold range can be set, and whether the traveling environment is located in a specific medium area of the horizontal ground or an obstacle protruding from the horizontal ground and allowing the robot to climb can be distinguished by using the angle threshold range corresponding to the attitude angle measured by the inertial sensor.
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 that the specific medium (such as a carpet) exists on the surface of the front area, the robot detects the specific medium area, and can detect a local area of the specific medium area and marks a grid corresponding to a boundary point of the specific medium area in a global map, wherein the boundary point is a point on an edge line of the specific medium area, can also be understood as a point on an outline line of a plane area covered by the specific medium, can be obtained by converting received point cloud information from the ultrasonic sensor, and particularly is obtained by converting distance measurement information fed back by the ultrasonic reflected signal of the surface of the specific medium area. Preferably, the robot marks the currently detected specific medium area as an un-traversed area, i.e. an area that the robot has not walked through; the detected specific medium area currently detected by the robot is not necessarily the whole area in the actual environment, but can be composed of one or more grids or a plurality of isolated partition blocks, and the grids corresponding to the boundary points of the specific medium area are marked with the information of the specific medium, such as the carpet information marked by the grids; meanwhile, the robot is not in a state of crossing the obstacle, including a state of crossing the first target obstacle, so that the detection of the specific medium area and the first target obstacle in a signal intensity range (in a preset intensity threshold range) of the ultrasonic reflected signal is realized, the distinction of the specific medium area and the first target obstacle is completed, and the erroneous judgment is avoided; in this embodiment, the robot is not in a state of crossing the obstacle, meaning that the robot is not in contact with the surface of the obstacle with inclination, and the robot may be horizontally located on the surface of the obstacle. And then the robot adjusts the walking direction so that the robot does not enter the specific medium area, including the undetected partition which does not enter the specific medium area, and can contact the boundary point of the specific medium area, at this time, the robot can walk not according to the preset planning path, but leaves the currently detected specific medium area by adjusting the walking direction.
It should be noted that, in this embodiment, acceleration information measured by the inertial sensor or an accumulated integral value of an angle transformation result of the acceleration information may be converted into the same global coordinate system, to assist in building a global map, where the global map may be in a form of a coordinate bitmap, belongs to a global grid map, is pre-stored in a memory of the robot, and marked relevant areas are all represented by using grids; the coordinates of the corner point (the upper left point, the lower left point, the upper right point and the lower right point of one grid) and the center point of each grid can represent the coordinates of the grid, the position point where the robot actually walks or the detected position point is the corner point or the center point which can correspond to one grid, and the grid corresponding to the corner point or the center point can be regarded as the grid corresponding to the position point.
When the intensity of an ultrasonic reflected signal received by the ultrasonic sensor is in a preset intensity threshold range and the attitude angle measured by the inertial sensor is in a second preset angle threshold range, the robot detects a first target obstacle and is in a state of crossing the first target obstacle, marks a grid corresponding to the detected first target obstacle in a global map, and becomes an obstacle grid; marking a grid area corresponding to a projection area of the detected surface of the first target obstacle on a horizontal plane in a global map; the robot does not then continue to cross the first target obstacle, and the robot breaks loose from the first target obstacle, avoiding slipping or spinning on the surface of the first target obstacle. When the robot is a sweeping robot, particularly when the sweeping robot encounters a slope or a support of a type of inclined tube structure at the bottom of furniture during operation, the sweeping robot generally climbs upwards to cross a higher plane or cross the inclined tube, but the sweeping robot faces an idle or slipping state that a driving wheel set is suspended and cannot continue to travel, and errors are easily caused in a map constructed synchronously by the sweeping robot. Therefore, after the sweeping robot detects the first target obstacle and determines that the robot is in a state of crossing the first target obstacle, the robot does not continue to cross the first target obstacle and moves down from the first target obstacle.
It is noted that the value in the first preset angle threshold range is smaller than the value in the second preset angle threshold range, and the limit of the crossing capability of the robot is fully considered so as to be convenient for judging whether the robot is on a higher obstacle. The first preset angle threshold range and the second preset angle threshold range have no overlapping interval.
As shown in fig. 2, step S101 in the first embodiment specifically includes:
in step S201, the robot controls the ultrasonic sensor to emit ultrasonic waves and receive ultrasonic reflection signals, and controls the inertial sensor to measure the attitude angle of the robot, and then the robot performs step S202. It should be emphasized that in the walking process of the robot of this embodiment, the map is constructed synchronously, that is, the robot converts the measured pose information and the ranging information fed back by the ultrasonic signal in real time into coordinate points in the map, and then marks the corresponding grids in the global map. Preferably, step S201 is performed during the robot walking along the arcuate path or performing arcuate cleaning.
Step S202, the robot judges whether the intensity of the ultrasonic reflected signal received by the ultrasonic sensor is within a preset intensity threshold range, if yes, step S203 is executed, otherwise step S204 is executed. Preferably, the intensity of the ultrasonic signal fed back by the specific medium area falls within a preset threshold range. The ultrasonic sensor feeds back ultrasonic signals having different intensities based on the density of the covered surface of the object to be detected. In practice, the intensity of the ultrasonic signal fed back by the carpet is lower than that of the tile. Based on this, a threshold value may be set, and the detection object whose intensity of the feedback ultrasonic signal is less than or equal to the threshold value may be classified as a carpet, or else classified as a floor tile.
Step S204, when the robot does not detect the specific medium area and is not in a state of crossing the first target obstacle, the robot may choose to walk according to the preset planned path, specifically may execute step S205, continue to walk in the area that is not traversed, mark a grid corresponding to the area that the robot walks in the global map, specifically, after the area that is not walked becomes the area that the robot walks, mark a corresponding grid in the global map, and assign relevant pose information and environment type information, so as to construct a complete global map, until the specific medium area is detected, so as to avoid the situation that the robot walks into the specific medium area according to the preset planned path to generate skidding, thereby affecting the accuracy of marking the grid map information.
In step S205, the robot is not in a state of crossing an obstacle, at this time, the intensity of the ultrasonic reflected signal received by the ultrasonic sensor is not within the preset intensity threshold, and the attitude angle measured by the inertial sensor is less than or equal to the preset angle threshold, then the attitude angle measured by the inertial sensor may be equal to 0, so that the robot is horizontal on the surface of the obstacle or does not contact with an obstacle protruding on the horizontal ground, and then the robot walks along the arcuate path according to the preset planned path without obstacle. Wherein the state in which the robot is not crossing the obstacle is relative to a horizontal plane, the robot is horizontally on the surface of the obstacle, or the robot is not in contact with the obstacle, wherein the obstacle includes a first target obstacle, a second target obstacle, and an obstacle of a raised horizontal ground of the remaining height. In this embodiment the horizontal plane is equivalent to a horizontal ground plane.
Step S203, the robot determines whether the attitude angle measured by the inertial sensor is less than or equal to the preset angle threshold, if yes, step S207 is performed, otherwise step S206 is performed. The angle range smaller than or equal to the preset angle threshold is the first preset angle threshold range, and the angle range larger than the preset angle threshold is the second preset angle threshold range. The preset angle threshold is determined by an inverse trigonometric function result of the maximum spanable height allowed by the robot to span the obstacle, the specific operation mode is conventional trigonometric geometric operation, and according to the definition of the pitch angle and the roll angle, various conversion modes can exist, wherein the preset angle threshold and the maximum spanable height form a positive correlation. And are not described in detail herein. When the attitude angle measured by the inertial sensor is a pitch angle, the preset angle threshold is the pitch angle converted by the inverse trigonometric function of the maximum spanable height; when the attitude angle measured by the inertial sensor is a roll angle, the preset angle threshold is the roll angle converted by the inverse trigonometric function of the maximum spanable height. The result of the inverse trigonometric function calculation only needs to leave a certain precision, so in this embodiment, the preset angle threshold is configured as a value under a preset error order, where the preset error order is preferably 0.1, so that the preset angle threshold is left to be in the order of 0.1. When the preset angle threshold value converted by the inverse trigonometric function is provided with a multi-bit decimal, the preset angle threshold value is within an error range allowed by the order of magnitude 0.1, and a numerical value is obtained by reserving one-bit decimal and is used as a unique angle value. To cater for the navigation accuracy of the inertial sensor.
Step S206, the intensity of the ultrasonic reflected signal received by the ultrasonic sensor is in a preset intensity threshold range, and the attitude angle measured by the inertial sensor is larger than a preset angle threshold, at this time, the robot determines that the first target obstacle is detected and is in a state of crossing the first target obstacle, so as to detect a specific medium area and the first target obstacle in one signal intensity range (in the preset intensity threshold range) of the ultrasonic reflected signal, mark the grid corresponding to the first target obstacle currently detected in the global map, and particularly, mark the grid corresponding to the covering position as an obstacle grid, so that the robot can conveniently execute avoidance operation according to the grid position corresponding to the first target obstacle marked in the global map in the subsequent navigation process; in this embodiment, the first target obstacle belongs to an obstacle that cannot be spanned, and the obstacle that cannot be spanned belongs to an obstacle that requires a robot to generate a larger inclination angle, so that the attitude angle measured by the inertial sensor is larger, in particular, the pitch angle is larger, so as to be larger than the corresponding preset angle threshold. The first target obstacle protrudes out of the horizontal plane, the height of the first target obstacle is larger than the maximum spanable height allowed by the robot to span the obstacle, and when the robot is in a state of crossing the first target obstacle, the robot has a risk of skidding or idling on the surface of the first target obstacle. Step S208 is then performed.
In step S208, the robot does not continue to cross the first target obstacle, and breaks loose from the first target obstacle, so as to avoid slipping or idling on the surface of the first target obstacle. Considering that the robot can face the idle running or slipping state that the driving wheel group is suspended and can not continue to run in the process of crossing the first target obstacle, the robot does not continue to cross the first target obstacle, and then falls off from the first target obstacle, and then continues to run according to a preset planning path, so that the robot avoids the risk of slipping in time. In some embodiments, since there is an obstacle (first target obstacle) in front of the robot, such as a chair, the robot may be controlled to bypass the obstacle, specifically, after one driving wheel of the robot is controlled to rotate, the other driving wheel of the robot is controlled to rotate, so that the robot does not continue to cross the first target obstacle, and the direction is adjusted to bypass the obstacle.
In step S207, the robot detects the specific medium area and is not in a state of crossing the obstacle, including not being 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 intensity range (within a preset intensity threshold range) of the ultrasonic reflection signal, and complete distinguishing the specific medium area from the first target obstacle, and when crossing the first target obstacle or approaching the specific medium area, the robot can distinguish the specific medium area from the first target obstacle by executing the foregoing steps even if the detected intensity range of the ultrasonic reflection signal is relatively close to the intensity range corresponding to the detected specific medium area. At this time, the local area of the specific medium area which may be detected by the robot and exist in the actual environment may be a grid corresponding to a boundary point of the specific medium area marked by the robot in the global map, and the received point cloud information may be received from the ultrasonic sensor to prompt the robot not to enter the area, so that the currently detected specific medium area is necessarily marked as an un-traversed area, but each grid corresponding to the boundary point of the specific medium area may be marked with information of the specific medium, such as environment type information such as carpet information on the corresponding grid mark. Step S209 is then performed.
In step S209, the robot adjusts the traveling direction so that the robot does not enter the currently detected specific medium area, including the previously detected specific medium area (the closed grid area surrounded by the grids corresponding to the boundary points of the specific medium area marked before the global map update), at this time, the robot does not necessarily travel along the original preset planning path, but proceeds in a direction away from the specific medium area, so as to avoid entering the inside of the specific medium area to introduce serious slip errors, and then proceeds to travel along the preset planning path.
In summary, the robot perceives that the walking environment changes, that is, the intelligent robot detects that the intelligent robot enters a carpet from the floor or enters a walking surface such as the floor from the carpet in the walking process, or changes from a horizontal plane to a state of crossing an obstacle, or continues to climb up or descend on the surface of the obstacle, or blocks on the obstacle with too high speed to skid or idle the robot, so that the steps combine the intensity of an ultrasonic reflection signal received by an ultrasonic sensor and angle information measured by an inertial sensor, detect a specific medium area and a first target obstacle in the same signal intensity range of the ultrasonic reflection signal, mark a corresponding grid in a global map, detect the state of the robot on the first target obstacle, and then adjust the walking strategy to ensure that the robot does not enter the specific medium area. Furthermore, in the embodiment, pitch angle or roll angle information measured by the inertial sensor is compared with a corresponding angle value converted from the maximum spanned height of the robot, a carpet area detection error formed under the condition of weak signal intensity fed back by the ultrasonic sensor is eliminated, an obstacle and a carpet area are distinguished, an adaptive walking strategy is made, the impending skidding risk of the robot on a first target obstacle and the specific medium area is avoided accurately, the condition that the robot continuously marks grid information closer to the real environment in a global map in a working area is ensured, the accuracy of the global map is improved, and path planning is conducted by the robot through the specific medium area marked in the map and grids corresponding to the obstacle.
For the detection result in the step S204, there is also an embodiment, when the intensity of the ultrasonic reflected signal received by the ultrasonic sensor is not within the preset intensity threshold, and the attitude angle measured by the inertial sensor is smaller 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, and marks the grid corresponding to the detected second target obstacle in the global map, and becomes an obstacle grid and is configured with height information; the robot then proceeds to cross the second target obstacle, optionally after crossing the second target obstacle, becomes out of the way of crossing the obstacle, and may walk according to the preset planned path. The robot is disposed so as to cross the second target obstacle, and the body of the robot is disposed obliquely to the horizontal plane on the surface of the second target obstacle.
Considering that the front of the robot may have a bulge with a lower height (which may be far lower than the maximum spanable height allowed by the robot to span an obstacle), the error caused by the robot slipping is negligible, in order to continue to complete the traversing task of the robot, the robot selectively spans the bulge, and the acceleration of the robot can be controlled to span, in particular, the acceleration is performed according to a preset acceleration value after the robot is controlled to recede for a preset distance; in some embodiments, the second target obstacle may be an object, such as a threshold, that the sweeping robot needs to pass through while performing a cleaning task to continue to complete cleaning. After the cleaning robot performs the cleaning of the living room, the cleaning of each living room is also required. At this time, the robot for cleaning the entire cleaning area (including kitchen, living room and living room) needs to pass through the threshold at the entrance of each living room. When the sweeping robot is in a state of crossing the second target obstacle, the sweeping robot needs to continuously cross the threshold.
In the foregoing embodiment, the second target obstacle has a height compared to the flat ground, and when the sweeping robot is crossing the second target obstacle, an inclination angle is generated in the body of the sweeping robot with respect to the sweeping robot traveling on the flat ground. Conversely, when the sweeping robot is crossing the first target obstacle, the sweeping robot may get stuck on the first target obstacle, such as above the step of the maximum spanable height allowed by the robot to cross the obstacle.
When the attitude angle measured by the inertial sensor is a pitch angle, the preset angle threshold is the pitch angle calculated by the maximum spanable height through inverse trigonometric function; when the attitude angle measured by the inertial sensor is a roll angle, the preset angle threshold is the roll angle converted by the inverse trigonometric function of the maximum spanable height. The obstacle also comprises a second target obstacle which protrudes from the horizontal plane, the height of the second target obstacle is smaller than or equal to the maximum spanable height allowed by the robot to span the obstacle, and the obstacle belongs to a relatively short obstacle and is a spanable obstacle.
On the basis of the foregoing embodiment, the step S101 further includes: the robot walks in the area outside the specific medium area according to a preset planning path, including navigation to non-traversed position points and walking according to the preset planning path, wherein the non-traversed position points are non-traversed position points of the robot and are represented as non-traversed grids in a global map; in the walking process of the robot, the robot combines the intensity of an ultrasonic reflection signal received by an ultrasonic sensor and angle information measured by an inertial sensor, detects a specific medium area and a first target obstacle in a signal intensity range of the ultrasonic reflection signal, marks corresponding grids in a global map, detects the state of the robot on the first target obstacle at the same time, adjusts a walking strategy to enable the robot not to enter the specific medium area, marks grids corresponding to the detected specific medium area and the first target obstacle in the global map, marks grids corresponding to boundary points of regular subareas forming the specific medium area, wherein the regular subareas can be rectangular areas formed by at least one grid or a plurality of grids in the global map, so that the boundary points and the center points are conveniently determined, and the robot can carry out path planning subsequently.
Specifically, in the process of detecting the specific medium area and the first target obstacle, the robot needs to move to an un-traversed position point, namely needs to navigate to a target point; in some embodiments, when the robot does not detect the specific medium area, the robot navigates to an un-traversed position point, and walks according to a preset planned path from the un-traversed position point. Therefore, the robot needs to search for non-traversed position points in the global map, and navigate to the non-traversed area according to the non-traversed position points, wherein an algorithm for searching for the non-traversed position points belongs to a path node searching algorithm, and the algorithm comprises depth-first searching and breadth-first searching, so that grids corresponding to the non-traversed position points can be searched for in the global map. Preferably, the non-traversed position points are located in the reachable area of the robot, are position points which are searched by a corresponding path node searching algorithm (including an A-algorithm) and are communicated with the current position point of the robot, and then walk to the position points one by one along a corresponding path, so that the robot can reach the position points without obstacles.
In this embodiment, each time the robot searches for a non-traversed position point in the neighborhood except for the specific medium area that has been detected in the global map, the robot walks to the non-traversed position point first, and sets the non-traversed position point as a traversed position point, preferably, the traversed position point may not include a boundary point of the specific medium area or a boundary point of a partition constituting the specific medium area; then, continuously walking according to a preset planning path from the non-traversed position point, but not entering a specific medium area, and specifically, continuously walking according to the preset planning path from the non-traversed position point in a preset working area, wherein the preset working area is an all-indoor environment area where the robot works and comprises the specific medium area; the points in the neighborhood can be adjacent or communicated with the current position point of the robot; the neighborhood may also be considered a neighborhood grid region including, but not limited to, eight and sixteen neighbors of the grid corresponding to the current location point of the robot.
When the robot traverses areas except the specific medium area, namely, the robot searches the areas except the specific medium area in the preset working area in the neighborhood of the latest traversed position point, the rest non-traversed area is determined to be the specific medium area; each time the robot walks to a position point, determining that the robot walks to the position point, setting the position point as a traversed position point, and setting a grid corresponding to the position point as a traversed grid in a global map; when the robot detects the specific medium area or the local area thereof, marking a grid corresponding to the boundary point of the specific medium area in a global map, namely, a grid corresponding to the point on the boundary of the specific medium area or the local area thereof, wherein the global map is provided with the corresponding grids for recording position information and medium information; the specific medium area is composed of a plurality of closed areas formed by connecting the boundary points, the boundary point of each closed area is the boundary point of the specific medium area, and one specific medium partition is one closed area; the specific medium area is formed by a plurality of closed grid areas surrounded by grids corresponding to the boundary points in the global map. In the specific medium area, a plurality of regular specific medium partitions are discretely distributed in a global map, and a plurality of rooms can be correspondingly distributed in the same indoor environment; in the specific medium area, the boundary point of each specific medium partition is the boundary point of the specific medium area; the robot marks a grid corresponding to the boundary point of each specific medium partition in the global map so as to facilitate subsequent robot repositioning and path planning. In summary, the robot recursively searches for places which do not walk on the global map, and then navigates to finish corresponding coverage, so recursively goes down until the whole area is walked, namely, after the area except the specific medium area in the preset working area is walked, only places which are covered by the specific medium area are left, at the moment, the robot integrates all grids corresponding to the marked boundary points belonging to the specific medium area to form grid area coverage of the specific medium area in the global map, so that the robot can accurately identify the shape, size and position of the specific medium area, the robot is prevented from entering the specific medium area by mistake, and the driving wheel slip condition of the robot is reduced to influence map positioning.
Preferably, the specific medium area is a carpet covered area, and each specific medium partition forming the specific medium area can be a rectangular carpet area or a carpet with other shapes, wherein the shape refers to the horizontal plane shape of the relevant area; when the specific medium area is covered in the indoor environment, the shape of each specific medium partition can be associated with the planar shape of the room house actually covered by the specific medium partition, and the grid corresponding to the boundary point of each specific medium partition is marked in the global map. In some embodiments, the carpet area is made up of a plurality of carpet tiles, there being two carpet tiles that are isolated from each other and that are separated into different room areas, wherein each carpet tile is marked as a closed grid area in the global map; the floor of a room area is covered with a carpet tile having the same shape as the floor of the room area (the shape of the area surrounded by the boundaries of the room), for example, when a room area is formed by combining a large rectangle and a small rectangle which are communicated, the shape of a carpet tile is also the shape of a combined pattern of a large rectangle and a small rectangle which are communicated.
The specific medium area is a planar area covered by a carpet, particularly a room area in an indoor environment, belongs to an area detected by an ultrasonic sensor in a robot walking environment, and is fed back with pose information of boundary points of the specific medium area by ultrasonic reflection signals, and comprises coordinate information and angle information which are converted by ultrasonic ranging information. Medium long-hair carpeting or short-hair carpeting is present in the specific media zone.
Preferably, the preset planning path is an arcuate path; the intensity of the ultrasonic reflected signal received by the ultrasonic sensor is a reflected signal of ultrasonic on the surface of the robot walking environment, the level signal is obtained through analog-to-digital conversion, the robot can detect the strength of the signal fed back by the surface medium through the digital level signal, and particularly, the carpet is identified, so that the robot is prevented from entering the carpet by mistake, and the slipping condition of the driving wheel of the robot is reduced.
As an embodiment three, for step S103 and step S104 of the embodiment one, a robot control method in a current specific medium zone is disclosed, comprising: the robot walks in the current specific medium partition according to a preset planning path from a preset walking starting point, and records the time spent by the robot in the current specific medium partition, including the walking time of the robot in the current specific medium partition; in the present embodiment, it can be regarded that the timing at which the relevant counter device starts timing is when the robot detects that it starts walking from the preset walking start point. The preset walking starting point is arranged in the current specific medium partition. The robot walking within the current specific medium partition according to the preset planned path may also be expressed as the robot walking along the preset planned path within the current specific medium partition.
Preferably, in order to ensure that the robot does not easily walk out of the current specific medium partition and a sufficiently clear walking area exists in the current specific medium partition, the robot sets a preset walking starting point as a central point of the current specific medium partition; the robot is controlled to walk according to a preset planning path from the center point of the current specific medium partition, and the robot synchronously uses a timer device to record the walking time of the robot so as to record the moment of the robot at the center point of the current specific medium partition; optionally, the time of the robot walking in the current specific medium partition according to the preset planned path is counted by taking the moment of the robot at the central point of the current specific medium partition as a counting start point.
Preferably, the specific medium is a carpet, the current specific medium partition is a carpet covered area, the current specific medium partition can be regarded as a carpet block, the shape of the current specific medium partition is adapted to the planar shape of a house type of a room actually covered by the current specific medium partition, the boundary line of the current specific medium partition can be a ground area which is overlapped with the boundary line of a room to be covered by the current specific medium partition, an implementation scene of the robot walking in the current specific medium partition according to a preset planning path is that the robot performs bow-shaped cleaning work on the carpet surface of the one room area, and the time of the robot walking is recorded, namely, the time spent by the robot walking from the preset walking starting point of the specific medium area and the time interval between two path nodes are obtained by recording the moment of each path node of the robot on the bow-shaped path.
Each time the robot walks a preset time interval, the robot adjusts the extending direction of the preset planning path, and walks in the current specific medium partition according to the preset planning path after the extending direction is adjusted, wherein the preset time interval is regarded as the actual walking time of the robot. Specifically, in this embodiment, the robot starts to count from the preset walking start point, when the time from the robot to the walking along the preset planned path is equal to a predetermined time interval, a moment is recorded as a current target adjustment moment of the extending direction of the preset planned path, and then the robot starts to adjust the extending direction of the preset planned path from the current target adjustment moment; the robot starts to finish the adjustment of the current extending direction, and the robot continues to walk in the current specific medium partition according to the preset planning path after the adjustment of the extending direction, namely the robot walks along the preset planning path after the adjustment of the extending direction in the current specific medium partition, wherein the time for the robot to adjust the extending direction of the preset planning path can be counted in the time spent by the robot to walk from the preset walking starting point of the current specific medium partition; in some embodiments, the time for adjusting the extending direction of the preset planned path may be the time for switching the extending direction stored in advance after the robot pauses, or may be negligible. In the process that the robot walks along the preset planning path after the extension direction adjustment in the current specific medium partition, when the robot records that the robot walks for a preset time interval, the robot starts to adjust the extension direction for the new time so as to change the extension direction adjusted last time; the robot repeatedly executes the steps until the time spent by the robot for starting to walk from the preset walking starting point reaches the working ending time, and the robot is determined to traverse the current specific medium partition, the robot can stop walking in the current specific medium partition according to the preset planning path, wherein the working ending time is used for representing the time spent by the robot from the preset walking starting point of the current specific medium partition to the completion of walking of the current specific medium partition, and belongs to the calculation result according to a preset mathematical model, and the theoretical time spent by the robot for stopping to adjust the extending direction is included. In summary, the robot adjusts the extending direction of the preset planned path according to the preset time interval, so as to form a periodic switching mechanism for the extending direction of the preset planned path, and the robot can cover an area which is not covered by the preset planned path in a single extending direction. Specifically, the extending direction of the preset planning path is adjusted according to a certain time interval, the walking coverage rate of the robot in the current specific medium partition is improved, the problem that the coverage area is low because the preset planning path extends along one direction is avoided, the extending direction of the preset planning path is adjusted once every other time interval, the robot can cross walk through the same local area in the same specific medium partition, the coverage rate of the robot to the working surface is improved, the problem that the robot cannot keep accurate walking according to the preset planning path in the specific medium partition which is easy to slip for a long time can be solved, the accuracy of the robot walking path in a short time is maintained, and the working coverage rate of the robot is ensured.
It should be noted that, the preset planned path after the adjustment of the extending direction is equal to the adjusted preset planned path, or the preset planned path corresponding to the adjusted extending direction; the robot performs one-time adjustment of the extending direction of the original preset planning path, including changing the corresponding extending direction, for example, after the sweeping robot sweeps the bow-shaped path for a preset time interval, changing the directions of all parallel long-side paths of the bow-shaped path, and then changing the directions of short line segments connected with the long-side paths.
Preferably, the predetermined time interval is expressed as a time taken by the robot to keep walking from the first path node to the second path node on the preset planned path on the premise that the extending direction is not adjusted, and is equal to a time difference between a second time recorded by the robot at the second path node and a first time recorded by the robot at the first path node, wherein the second path node is different from the first path node and is two path nodes on the preset planned path with the extending direction adjusted (not changed), and the walking direction of the robot on the preset planned path with the extending direction adjusted (not changed) is not necessarily kept the same, and multiple turns may occur; the extending direction is required to be adjusted every time a preset time interval passes, so that the second path node is a path end point of the robot on the preset planning path with the extending direction not adjusted, the first path node is a path start point of the robot on the preset planning path with the extending direction not adjusted, the robot adjusts the extending direction of the preset planning path from the second moment, and the robot walks in the current specific medium partition according to the preset planning path after the extending direction is adjusted from the second path node. Thus, in some embodiments, the second path node is considered the end of the current segment of the preset planned path and the first path node is considered the start of the current segment of the preset planned path; on the premise that the preset planning path sections before and after the extending direction adjustment are communicated, the second path node can be regarded as the starting point of the next preset planning path section, and the first path node can be regarded as the ending point of the previous preset planning path section; each predetermined time interval corresponds to a preset planned path, and the extending direction of each preset planned path may be different and may cover the current specific medium partition as much as possible, without excluding the embodiment in which the extending directions of two preset planned paths are the same.
As an embodiment, the method for adjusting the extending direction of the preset planned path by the robot every time the robot walks for a predetermined time interval includes: each time the robot reaches the preset time interval according to the walking time of the preset planning path, namely, each time the robot determines to walk on the original preset planning path for the preset time interval, the robot changes the extending direction of the preset planning path, specifically, the extending direction of the original preset planning path is switched to a new extending direction by calling a prestored related control program to change the overall track trend of the preset planning path, so that the robot traverses to a position which is not covered by the preset planning path before the adjustment on the preset planning path which is adjusted up to date, and can walk to a position which is not covered by the robot along the preset planning path before the change up to date in the walking process of the robot along the preset planning path which is changed up to the last time; in some embodiments, the new extending direction may be derived from a straight path direction (the local path direction may form a preset angle with the original extending direction, such as 45 degrees or 90 degrees) existing in the preset planned path, so as to be different from the original extending direction, so as to be convenient for direct switching after a predetermined time interval passes, and complete the change of direction. If the extending direction of the original preset planning path is changed, the preset planning path with the changed extending direction is changed relative to the original preset planning path, including the change of the track trend so as to change the working direction of the robot, but the track shape of the preset planning path before and after the change of the extending direction is not changed.
It should be noted that the adjustment may be a change or a switch, and may be a random change or a change according to predetermined angle information, so that when the robot walks along the preset planned path changed at the latest time, the robot can walk to an area on the preset planned path before the latest change, where the robot does not walk; every time the robot walks to a position point according to a preset planning path, the robot determines to traverse to the position point, and sets the position point as a traversed position point, but the grid corresponding to the position point is not marked as a traversed grid in the global map, so that the slipping error of the robot is prevented from being introduced into the global map.
In some embodiments, to ensure that the robot traverses the newly adjusted preset planned path to a position not covered by the preset planned path before adjustment, especially when the preset planned path is an arcuate path and the extending direction is a long-side path perpendicular to the arcuate path, the extending direction of the preset planned path currently changed by the robot may be perpendicular to or opposite to the extending direction of one of the preset planned paths previously changed, and the position covered by the preset planned path after the subsequent change may have a coincident position with the position covered by the preset planned path that the robot has already traveled. Preferably, after a predetermined time interval, the extending direction of the preset planned path after one adjustment becomes perpendicular to the extending direction of the original preset planned path, where the extending direction of the original preset planned path is parallel to a moving track line segment in the preset planned path, and the moving track line segment is parallel to the long side of the current specific medium partition.
As an embodiment, the preset planned path is an arcuate path, which may also be referred to as an i-shaped path; when the robot of the embodiment is a cleaning robot and the current specific medium partition is an area where a carpet is located, a cleaning track route generated by the cleaning robot in the carpet surface is an arcuate cleaning route, that is, the robot walks in the current specific medium partition according to the arcuate route. The bow-shaped path comprises a plurality of motion track line segments which are parallel to each other; two adjacent motion track line segments which are parallel to each other are connected through a bending line or a preset line segment at one end point, so that a unit bow-shaped path segment is formed by the two adjacent motion track line segments which are parallel to each other and the bending line or the preset line segment which connects the two adjacent motion track line segments, wherein the extending direction of the unit bow-shaped path segment is kept perpendicular to the motion track line segment, and a preset planning path can be formed by a plurality of unit bow-shaped path segments which are connected end to end; wherein, the extending direction of the preset planning path is kept perpendicular to the moving track line segment; the length of the motion track line segment is greater than that of the bending line, the length of the motion track line segment is greater than that of the preset line segment, no matter whether the robot changes the extending direction or not, the track shape of the bow-shaped path is unchanged, the bow-shaped path is kept, and the same extending direction (same track trend) is not kept for a long time according to a preset time interval change, so that the influence of the slip error of the driving wheel is small.
In some embodiments, the robot does not perform adjustment of the extending direction within the predetermined time interval if the time that the robot travels up the unit arcuate path segment is equal to the predetermined time interval, the robot sets the first path node as a start point of the unit arcuate path segment, and the robot sets the second path node as an end point of the unit arcuate path segment, in which the length of the movement trace line segment is greater than the length of the bending line and the length of the movement trace line segment is greater than the length of the preset line segment, regardless of whether the robot performs change of the extending direction.
It will be appreciated by those skilled in the art that when the robot is a cleaning robot, such as a sweeping robot, these mutually parallel motion trajectory segments are long-side cleaning paths belonging to an arcuate cleaning path (i.e., the arcuate path), the aforementioned curved line or short line segment is a short-side cleaning path between two adjacent motion trajectory segments, such that these mutually parallel motion trajectory segments cover the reachable area of the cleaning robot, but the cleaning robot does not mark path nodes and map onto a global map during traveling along the motion trajectory segments to reduce mapping errors, and the aforementioned short line segment may be set perpendicular to the motion trajectory segments or the initial cleaning direction. When the extending direction of the preset planning path is changed, the coverage area of the motion track line segment is changed, so that the change of the extending mode of the bow-shaped path is realized on the whole, the bow-shaped cleaning mode executed by the sweeping robot is changed, and the cleaning direction of the sweeping robot is changed.
As an embodiment, the angle formed by the currently changed extending direction and the extending direction before the change is equal to the angle formed by the moving track line segment in the bow-shaped path corresponding to the currently changed extending direction and the moving track line segment in the bow-shaped path before the extending direction is changed, wherein the bow-shaped path corresponding to the currently changed extending direction is the bow-shaped path after the currently changed extending direction. If the currently changed extending direction is perpendicular to the extending direction before the change, the extending direction before the change is parallel to a moving track line segment in the bow-shaped path corresponding to the currently changed extending direction, and a preset line segment in the bow-shaped path corresponding to the currently changed extending direction is perpendicular to a preset line segment in the bow-shaped path before the change of the extending direction; in this embodiment, when the change is preceded by the current change, the current change of the extending direction means that the extending direction is changed after the latest change of the extending direction, that is, the included angle formed by the extending directions generated by the two adjacent changes is 90 degrees, and the included angle formed by the extending directions generated by the two adjacent changes may also be other inclined angles (for example, 45 degrees), so as to satisfy that the robot traverses from the latest changed preset planned path to the position not covered by the preset planned path before the change. When the robot is used as a sweeping robot, the sweeping robot can firstly conduct bow-shaped sweeping along the direction parallel to the preset line segment in the bow-shaped path before changing, and after one preset time interval, the cleaning end point of the bow-shaped path before changing is conducted bow-shaped cleaning along the direction parallel to the preset line segment in the bow-shaped path after the current changing. The cleaning coverage rate can be effectively improved. Preferably, a motion track line segment in the bow-shaped path after the extending direction is changed currently is parallel to the boundary line of the current specific medium partition, and the sweeping robot walks along the boundary line of the current specific medium partition, so that the sweeping robot can sweep the boundary of the current specific medium partition, and the effective sweeping area of the sweeping robot in the current specific medium partition is increased.
As an embodiment, 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 a second preset coefficient within the error allowance range; the working end time is equal to the product of the ratio of the area of the horizontal plane of the current specific medium partition to the effective coverage area of the robot and a first preset coefficient; the effective coverage area of the robot is equal to the product of the preset walking speed of the robot and the width of the body of the robot, and is equivalent to the area of the area covered by the body of the robot in the process of walking for 1 second; the time change state in the actual walking process of the robot is satisfied, the time consumed by walking according to a preset planning path is corrected, and the errors caused by the medium change on the walking surface and the action of the robot body are overcome. The direction along which the width of the robot body is arranged is perpendicular to the walking direction of the robot; the preset robot travel speed is the result of the experiment, preferably 0.3 meters per second.
It should be noted that, if the grid corresponding to the boundary point of the current specific medium partition is marked in the global map in advance, the coordinate information of the boundary point of the current specific medium partition may be obtained, and when the current specific medium partition is set in the room area of the indoor environment, the current specific medium partition may be a rectangular area or an area combined by a plurality of rectangles, the end point (including the upper left corner, the lower left corner, the upper right corner and the lower right corner) of the current specific medium partition may be obtained, the side length of the boundary line connected by the corresponding end point may be calculated by the end point of the current specific medium partition, and then the area of the current specific medium partition may be calculated by calculating the rectangular area (product of length and width (single rectangle) or accumulation of product of length and width (combination of a plurality of rectangles)), or the area may be calculated by calculating the number of grids filled in the closed area surrounded by the boundary line. Therefore, the ratio of the area of the current specific medium partition to the effective coverage area of the robot is equal to the time spent by the robot to completely traverse (walk) the current specific medium partition on the premise that the robot does not generate errors, stops and counts the rotation time of the robot, and belongs to the walking time of the robot, so the embodiment sets the ratio of the area of the current specific medium partition to the effective coverage area of the robot as the standard walking ending time; the time it takes for the robot to actually run through the current particular media partition is greater than the ratio of the area of the current particular media partition to the effective coverage area of the robot. It should be noted that, the current specific medium partition is a closed area where the robot slips, so that when the robot walks in the current specific medium partition according to the preset planned path, the shape of the track actually walked in the current specific medium partition is different from the shape of the preset planned path.
Therefore, the first preset coefficient is required to be set to compensate errors generated when the robot walks in the current specific medium partition; the first preset coefficient is used for indicating the difference between the coverage area of the track actually walked by the robot and the area of the current specific medium partition after the robot traverses the current specific medium partition, and the reasons for the difference include but are not limited to: the time consumed by the robot to stop for the direction adjustment calculation and/or the path planning calculation (without taking the travel time of the robot into account), the product of the effective coverage area of the robot (the area of the area covered by the robot body during 1 second of travel of the robot) and one turning time, the difference between the area of the new area caused by turning of the robot within the same turning time, and the area of the area larger than the area covered by the preset planned path due to the robot slipping on the carpet surface.
Preferably, in order to calculate the predetermined time interval on the basis of the standard walking end time, a second preset coefficient is set to perform proportional calculation on 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 is smaller when the number of boundary lines surrounding the current specific medium partition is larger; and the standard walking ending time is distributed on each boundary line of the current specific medium partition, so that the extending direction of the adjusted preset planning path can correspond to the extending direction of each boundary line of the current specific medium partition, and the reasonable adjustment times of the robot to the extending direction of the preset planning path are configured.
On the basis of the above embodiment, 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 smaller 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 as the first preset coefficient, otherwise, the product is not necessarily assigned as the first preset coefficient; and enabling the value of the preset time interval to be not smaller than the first preset coefficient, and further enabling the preset time interval to be 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 an error allowable range. The problem of misjudgment of overlong time consumed by the actual walking of the robot caused by related errors is solved, and the robot is in line with the walking state of the robot.
Preferably, the current specific medium partition is a rectangular planar area of which the surface covers the specific medium; because the current specific medium partition is a closed area for 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 an arcuate path; the first preset coefficient is set to be greater than or equal to a value of 2, the second preset coefficient is set to be 1/4 of the value, and the second preset coefficient corresponds to four boundary lines of a rectangular plane area; when the value of the predetermined time interval is smaller than the value 2, the robot sets the value of the predetermined time interval to the value 2, and the unit may be seconds.
As an embodiment, an ultrasonic sensor is assembled in front of the bottom of the robot, and is used for transmitting ultrasonic waves to the walking surface of the robot, so that the current specific medium partition can be detected in time, and the 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. In the process that the robot walks in the current specific medium zone according to a preset planning path, the robot controls the ultrasonic sensor to send out ultrasonic waves and receive ultrasonic reflection signals, on the premise that interference of signal intensity of the ultrasonic reflection signals fed back by the surface of an obstacle with a specific height is eliminated, the intensity of the ultrasonic reflection signals received by the ultrasonic sensor is in a preset intensity threshold range, and it is determined that a specific medium exists on the surface of an area in front of the ultrasonic sensor, such as a carpet, detected by the robot, namely the current specific medium zone is detected by the robot; however, when the intensity of the ultrasonic reflected signal received by one ultrasonic sensor is not within the preset intensity threshold value range in the process of walking in the current specific medium partition, the robot detects that no specific medium exists on the surface of the front area of the ultrasonic sensor, and the robot walks in the current specific medium partition, so that the detection range of the ultrasonic sensor is positioned outside the current specific medium partition when the robot detects that no specific medium exists on the surface of the front area of the ultrasonic sensor, and the ultrasonic sensor may be positioned outside the current specific medium partition; at this time, the robot may walk to a position near the boundary line of the current specific medium partition, and in this embodiment, the robot currently detects the boundary line of the current specific medium partition, determines that the robot walks to the boundary line of the current specific medium partition, then adjusts the walking direction, that is, the robot adjusts the walking angle, walks towards the inside of the current specific medium partition, and avoids leaving the boundary line of the current specific medium partition, so that the robot does not walk to the outside of the current specific medium partition, that is, does not let the robot walk out of the current specific medium partition, and may allow part of the machine body to be exposed out of the current specific medium partition, but needs to adjust the walking direction of the robot to drive the robot to walk towards the inside of the current specific medium partition, and then the robot may detect the current specific medium partition again; then the robot walks in the current specific medium partition according to a preset planning path, wherein the extending direction of the preset planning path is perpendicular to the adjusted walking direction and is parallel to the long-side cleaning path of the bow-shaped cleaning path (the robot is a sweeping robot and the preset planning path is the bow-shaped path), and the latest adjusted preset planning path along which the robot avoids the obstacle is possibly not communicated with the preset planning path before adjustment; and then the robot continues to execute the implementation mode that the robot adjusts the extending direction of the preset planning path every time the robot walks for a preset time interval, and then the extending direction of the preset planning path which the robot walks originally is adjusted according to the implementation mode that the preset planning path with the extending direction adjusted walks in the current specific medium partition. On the whole, on the premise that the robot calculates the pose and does not use global map positioning, the robot controls the robot not to leave the current specific medium partition through the signal intensity information of the ground medium actually walked by the robot through the feedback sensed by the ultrasonic sensor, so that the influence of the slip misjudgment brought by the inertial sensor in the current specific medium partition can be avoided, the robot can be ensured to walk continuously in the current specific medium partition, and the walking coverage rate of the robot to the current specific medium partition is ensured.
The ultrasonic sensor is used for collecting ultrasonic data reflected by the ground medium, and the ultrasonic sensor can continuously collect the ultrasonic data fed back by the current specific medium partition at intervals of 6 ms. The detection space region generated by the ultrasonic sensor is formed by the ultrasonic transmission angle and the maximum detection distance constraint, and preferably forms a cone region range. The measured value returned by the reflected signal of the ultrasonic wave comprises the measured value of the distance from the surface medium area (the current specific medium area) closest to the ultrasonic sensor in the range of the conical area, and because the ultrasonic wave is at a certain angle, for example, a conical area with the angle of 10 degrees is formed, the correspondingly obtained point cloud is a region, and the point cloud can be obtained. On the other hand, the ultrasonic sensor feeds back ultrasonic signals with different intensities based on the surface density of different cleaning objects, the level signals reflecting the type of the ground medium are obtained through analog-to-digital conversion, and the robot can detect the intensity of the signals fed back by the ground medium through the digital level signals. Specifically, when the intensity of the ultrasonic reflected signal received by the ultrasonic sensor is not within the preset intensity threshold, the robot does not detect the current specific medium partition, and the robot is not in a state of crossing an obstacle. Preferably, when the intensity of the ultrasonic reflected signal received by the ultrasonic sensor is greater than a preset judgment threshold, the robot detects a hard medium surface such as a floor, or else the robot detects a soft medium surface such as a carpet.
As an embodiment, if the robot contacts an obstacle in the process of walking in the current specific medium partition according to a preset planning path and the collision sensor detects the obstacle, the walking direction is firstly adjusted to avoid the obstacle, namely the robot adjusts the walking angle, walks in the direction away from the obstacle and leaves the obstacle; then the robot walks in the current specific medium partition according to a preset planning path, wherein the extending direction of the preset planning path is perpendicular to the adjusted walking direction, so that the robot can walk in the current specific medium partition according to the preset planning path corresponding to the latest adjusted extending direction without barriers, but the latest adjusted preset planning path along which the robot avoids barriers is possibly not communicated with the preset planning path before adjustment; then the robot continues to execute the implementation mode that each time the robot walks for a preset time interval, the robot adjusts the extending direction of the preset planning path, and then walks in the current specific medium partition according to the preset planning path after the extending direction is adjusted; and repeating the steps until the time spent by the robot for starting to walk from the preset walking starting point reaches the working end time, and determining that the robot walks up the current specific medium partition.
In the third embodiment, as shown in fig. 3, the steps S103 and S104 executed in the first embodiment specifically include
Step S301, after determining that the robot marks grids corresponding to boundary points of all specific medium areas in the global map, the robot searches for a current preset target point, walks from a current position point to the current preset target point, and starts to walk from the current preset target point to a preset walking starting point of a specific medium area where the current preset target point is located; step S302 is then performed.
It is noted that, before the robot enters the specific medium area, the area other than the specific medium area has been completed (traversed) by executing step S101 of the foregoing embodiment, and the grid corresponding to the boundary point of the specific medium area is marked in the global map. Specifically, before the robot performs step S301 for the first time, the robot keeps marking a grid corresponding to boundary points of a plurality of specific medium partitions in the global map during the traveling process until the robot traverses all areas except all specific medium areas, and then starts to perform step S301, where the specific medium areas include a plurality of specific medium partitions, and the current specific medium partition is a specific medium partition, and belongs to a specific medium partition that is not traversed by the robot before the step S103 or step S301 is not started to be performed.
Optionally, in the step S101, the robot may walk along the preset planned path, for example, walk along an arcuate path, and may detect the specific medium area according to the intensity of the ultrasonic reflected signal received by the ultrasonic sensor during walking, and convert pose information of the boundary point in combination with distance measurement information fed back by the ultrasonic reflected signal of the surface of the specific medium area, that is, pose information of a point on an edge line of the specific medium area, and may also be understood as pose information of a point on a contour line of the planar area covered by the specific medium. The specific medium partitions forming the specific medium area are closed areas surrounded by boundary points of the specific medium partitions, and boundary lines of the specific medium partitions are formed by connecting the boundary points of the specific medium partitions, preferably, one corner point is not shared between different specific medium partitions, and one boundary line is not shared between different specific medium partitions. 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 type actually covered by the specific medium partition. When the robot walks through the areas except the specific medium area, determining that the remaining non-traversed areas are all the specific medium areas, and marking each specific medium area as the non-traversed area; when the robot detects the specific medium area, marking a grid corresponding to the boundary point of the specific medium area in a global map, wherein the grid is equivalent to a point positioned on the boundary of the specific medium area, and marking position information and medium information in the corresponding grids are arranged in the global map; the boundary points marked by the robot are connected in the global map to form a plurality of closed areas, and the robot sets the closed areas as specific medium partitions.
In the step S301, the method for determining the current specific medium partition by the robot according to the current position point of the robot includes:
the robot selects one corner closest to the current position point of the robot from the corner points of all the specific medium partitions which are not passed by the robot, namely, from the corner points of all the specific medium partitions determined in the step S101, and configures the corner points as reference corner points; wherein the specific medium partition is an area through which the robot does not walk; the grids corresponding to the boundary points of all the specific medium partitions are marked in the global map, the boundary points of the specific medium partitions comprise corner points, the corner points are end points belonging to boundary lines surrounding the specific medium partitions, and each corner point is provided with the corresponding specific medium partition; when the plane shape of the specific medium partition is polygonal, the corner point of the specific medium partition is the vertex of the specific medium partition, the boundary line of the specific medium partition is the edge surrounding the polygon, the specific medium partition is equivalent to a closed graph formed by connecting a plurality of boundary line segments end to end in sequence, and the closed graph is correspondingly a closed area, and the closed graph comprises a polygon which can be divided into a regular polygon, a non-regular polygon, a convex polygon and a concave polygon, and can be preferably rectangular. The embodiment uses the reference angular point to determine the specific medium partition closest to the robot, and accelerates the speed of the robot entering the specific medium partition.
Then, the robot selects two boundary lines taking the reference corner point as a common endpoint to be respectively configured as a first reference edge and a second reference edge in a specific medium partition where the reference corner point is located; the boundary line of the specific medium partition is formed by connecting boundary points of the specific medium partition; wherein each boundary line has its corresponding specific media partition. And then, the robot selects one midpoint closest to the current position point of the robot from the midpoints of the first reference edge and the midpoint of the second reference edge to be configured as the current preset target point, wherein the specific medium partition where the reference corner point is located is the specific medium partition where the current preset target point is located, and the robot sets the specific medium partition where the current preset target point is located as the current specific medium partition. Therefore, the method and the device can select the middle point on the corresponding boundary line of the specific medium partition according to the nearby principle as the navigation entrance position point of the robot entering the specific medium partition closest to the middle point, and correspondingly, the specific medium partition which the robot needs to enter currently is also determined.
In step S301, the method for the robot to enter the current specific medium partition from the area outside the specific medium area includes: forming a navigation path according to the trafficable grids between the grid corresponding to the current position point and the grid corresponding to the current preset target point searched by the global map of the robot, and then walking the robot to the current preset target point one by one position point along the navigation path; as for the mode of starting to walk 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, the robot walks directly along the direction of the current preset target point pointing to the corresponding preset walking starting point, if an obstacle is collided, the walking direction is adjusted until the robot walks to the preset walking starting point, wherein the current preset target point and the preset walking starting point of the specific medium partition where the current preset target point is located can be used for calculating pose information of the current preset target point in advance and storing the pose information of the current preset target point and the preset walking starting point of the specific medium partition where the current preset target point is located, and corresponding grids are marked in a global map; the current position point of the robot is represented using the body center point of the robot. When the robot walks to the preset walking starting point, the robot determines that the robot completely enters the current specific medium partition, stops calculating the pose of the robot by using the accumulated value of the mileage value and the accumulated value of the angle value measured by the inertial sensor, stops marking grids in the global map, and reduces the mapping of the robot slip error data into the global map. The current preset target point is positioned on the boundary line of the current specific medium partition so as to conveniently select the shortest path to guide the robot to enter the current specific medium partition from the outside; in this embodiment, the preset walking start point is set as the center point of the current specific medium partition where the current preset target point is located, so as 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 point of the current specific medium partition, and particularly when the current specific medium partition is a region with a regular shape, the pose information of the center point (symmetry center) of the current specific medium partition is easier to calculate. Preferably, when the horizontal plane shape of the current specific medium partition is rectangular, the corner point of the current specific medium partition is an end point of the current specific medium partition, and the boundary line of the current specific medium partition is an edge surrounding the current specific medium partition; wherein the current preset target point is a midpoint of a corresponding one of the edges belonging to the current specific media partition.
Step S302, a robot walks in the current specific medium partition according to a preset planning path from a preset walking starting point of the current specific medium partition, and records the time spent by the robot in the current specific medium partition, wherein the time corresponds to the running time of the robot and comprises the walking time of the robot in the current specific medium partition; step S303 is then performed. The robot walks along the preset planning path from the preset walking starting point and synchronously counts the time when the robot walks from the preset walking starting point in the specific medium partition where the current preset target point is located, which is determined in step S301. Step S302 obtains the time taken for the robot to walk from the preset walking start point of the current specific medium partition by recording the moment of each path node of the robot on the arcuate path, and the time interval between the two path nodes, which is the time for the robot to walk along the newly determined preset planned path segment. The preset planned path may be an arcuate path, and specific embodiments refer to the foregoing embodiments and are not described herein.
Step S303, determining whether the time spent by the robot to walk from the preset walking start point reaches the work end time, if yes, executing step S304, otherwise executing step S305. The time spent by the robot from the pre-walking start point to the current specific medium partition is calculated according to a preset mathematical model, and specific sources of the time spent by the robot and the preset time interval refer to the foregoing embodiments, which are not repeated herein.
Step S304, determining that the robot walks up the current specific medium partition, and stopping adjusting the extending direction of the preset planning path. And the robot can also stop walking in the current specific medium partition and clear the time recorded in the current specific medium partition. And ending the running control of the robot in the current specific medium partition.
In step S305, each time the robot walks a predetermined time interval, the robot adjusts the extending direction of the preset planned path, that is, changes the extending direction of the preset planned path, and walks in the current specific medium partition according to the preset planned path adjusted in the extending direction, so that the robot can walk to a position along which the robot does not walk along the preset planned path before the latest adjustment in the process of walking along the preset planned path adjusted latest. Then, the process returns to step S303 to keep judging whether the time taken for the robot to walk from the preset walking start point described in step S302 reaches the work end time during the robot walking along the preset planned path adjusted last time.
In this embodiment, the robot starts timing from the preset walking start point in step S302, when the robot records that the time of walking along the preset planned path is equal to a predetermined time interval, a moment is recorded as a current target adjustment moment of the extending direction of the preset planned path, and then the robot starts adjusting the extending direction of the preset planned path from the current target adjustment moment; the robot can count the time of the robot walking (from the moment of finishing the adjustment of the extending direction, the robot walking time is continuously counted, and a preset time interval is counted) from the moment of finishing the adjustment of the extending direction, and the robot continuously walks in the current specific medium partition according to the preset planning path after the adjustment of the extending direction, namely, the robot walks in the current specific medium partition along the preset planning path after the adjustment of the extending direction, and then returns to the execution step S303 to continuously judge the time spent by the robot from the preset walking starting point; in some embodiments, the time for the direction of extension adjustment of the preset planned path is negligible.
Therefore, in the process that the robot walks along the preset planning path after the adjustment of the extending direction in the current specific medium partition, when the robot records that the robot walks according to the preset planning path for a preset time interval, the robot starts to adjust the extending direction for the new time; the robot repeatedly executes the steps until the time spent by the robot to walk from the preset walking starting point reaches the working ending time, the fact that the robot traverses the current specific medium partition is confirmed, the extending direction of the preset planning path can be stopped to be adjusted, and the robot can also stop walking in the current specific medium partition is confirmed, wherein the working ending time is used for indicating the time spent by the robot to walk the current specific medium partition, and the working ending time belongs to the calculated result according to a preset mathematical model and comprises the time spent by the robot to stop to adjust the extending direction. In summary, the robot repeatedly executes steps S303 to S305 to adjust the extending direction of the preset planned path according to the predetermined time interval, so as to form a periodic variation mechanism of the extending direction of the preset planned path, so that the walking coverage area of the robot in the current specific medium partition is improved, and the area which is not covered by the preset planned path in a single extending direction can be covered.
As a preferred example, in the process of repeatedly executing steps S303 to S305, if an obstacle is detected, the robot adjusts the traveling direction to avoid the obstacle, then the robot walks in the current specific medium partition according to a preset planned path, where the extending direction of the preset planned path is perpendicular to the adjusted traveling direction, then the robot continues to execute the step S305, and each time the robot walks for a predetermined time interval, the robot adjusts the extending direction of the preset planned path, that is, changes the extending direction of the preset planned path, and then the robot repeatedly executes the step S according to the embodiment that the extending direction-adjusted preset planned path walks in the current specific medium partition until the time spent by the robot from the preset traveling starting point reaches the working end time, and it is determined that the robot walks up the current specific medium partition from the preset traveling starting point, that the robot has walked up the current specific medium partition.
As a second preferred example, in the process of repeatedly executing steps S303 to S305, when the intensity of the ultrasonic reflected signal received by the ultrasonic sensor of the robot is not within the preset intensity threshold value range, the robot detects that no specific medium exists on the surface of the front area of the robot, and when the robot does not detect that a specific medium exists on the surface of the front area of the robot because the robot walks within the current specific medium partition, the detection range of the ultrasonic sensor is located outside the current specific medium partition, the robot is configured to walk to the boundary line of the current specific medium partition, and then the robot adjusts the walking direction so that the robot does not walk outside the current specific medium partition but drives the robot to walk inside the current specific medium partition, and the robot can again detect the current specific medium partition; then the robot walks in the current specific medium partition according to a preset planning path, wherein the extending direction of the preset planning path is perpendicular to the adjusted walking direction, and the latest adjusted preset planning path along which the robot avoids the obstacle is possibly not communicated with the preset planning path before adjustment; then the robot continues to execute the implementation mode that each time the robot walks for a preset time interval, the robot adjusts the extending direction of the preset planning path, namely, changes the extending direction of the preset planning path, and walks in the current specific medium partition according to the preset planning path after the extending direction is adjusted; and repeating the steps until the time spent by the robot for walking from the preset walking starting point reaches the working end time, and determining that the robot walks up the corresponding current specific medium partition, namely the robot is considered to walk up the current specific medium partition from the preset walking starting point.
In combination with the method of determining the current specific medium partition by the robot according to the current position point in step S301 of the third embodiment, in step S106 of the first embodiment, the robot returns to step S106 to execute step S102, specifically, the robot selects, from the corner points of all the specific medium partitions that are not traversed currently, one corner point closest to the current position point of the robot updated in step S106 to be configured as a reference corner point; then, in a specific medium partition to which the reference corner belongs, selecting two boundaries taking the reference corner as common endpoints to be respectively configured as a first reference edge and a second reference edge; then selecting one midpoint closest to the current position point of the robot updated in the step S106 from the midpoints of the first reference edge and the second reference edge to be configured as a next preset target point; the specific medium partition to which the reference corner point belongs is the next specific medium partition, a next preset target point is used as a navigation entry for the robot to enter the next specific medium partition, the center point of the next specific medium partition is further configured as a preset walking starting point of the next specific medium partition, the next specific medium partition is updated to be the current specific medium partition, the next preset target point is updated to be the current preset target point, and the preset walking starting point of the next specific medium partition is updated to be the preset walking starting point of the current specific medium partition, so that the robot can walk in the next specific medium partition according to a preset planning path from the preset walking starting point, and step S302 disclosed in the third embodiment is executed. 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 running start point of the current specific medium partition until the robot runs out of all specific medium partitions in the current specific medium partition, and the robot determines that the robot runs out of the current specific medium partition.
The inertial navigation is a low-cost and practical navigation method for the intelligent mobile robot, but the inertial navigation has the defects of more remarkable and is mainly characterized by low navigation precision. Among them, gyro drift and encoder drift are the main causes affecting navigation accuracy. In the running process of the intelligent mobile robot on soft medium surfaces (such as carpet and the like (floor covered facing layers of indoor environments), due to complex factors such as wheel slipping and the like, errors occur in a gyroscope and an encoder, the errors accumulated for a long time can cause great errors in a map constructed by the robot, for example, the map is built with errors, if the errors are not corrected, the intelligent mobile robot gradually deviates from a route, and the longer the intelligent mobile robot walks, the larger the errors are generated; further, the intelligent mobile robot chooses not to calculate the pose information (including position coordinate information and angle information) of itself on the surface of flexible media such as carpets, does not build a map in real time, i.e. does not mark a new grid to a global map, then the intelligent mobile robot loses the pose information (including position coordinate information and angle information) of itself on the surface of the carpets, in order to reacquire the pose information (i.e. repositioning) of itself when the robot is about to leave the carpets so as to facilitate path planning in an area outside the carpets, after the robot determines that the robot walks the current specific media partition in step S104, i.e. determines that the time spent by the robot from the preset walking start point has reached the working end time, the robot needs to execute step S105 disclosed in the embodiment, specifically, when the robot determines that the robot walks the boundary line of the current specific media partition, the robot walks to the current specific media partition in advance, and then controls the robot to walk along the boundary line of the current specific media partition by adjusting the walking direction until the boundary line of the two ultrasonic sensors walk the boundary line of the current specific media partition; wherein the corner points are end points belonging to boundary lines enclosing the current specific medium partition.
As a fourth embodiment, the specific implementation method of step S105 disclosed in the first embodiment includes:
step 1, the robot walks to the boundary line of the current specific medium partition in the current specific medium partition, and then two ultrasonic sensors are adjusted to be respectively located at two sides of the boundary line of the current specific medium partition. At the beginning of step 1, the robot may be located on the boundary line of the current specific medium partition, or may be located in the vicinity of the center point of the current specific medium partition (may be a local area 30 cm from the center point). Generally, in the process that the robot walks in the current specific medium partition according to a preset planning path (which may be an arcuate path frequently used in the sweeping operation of the sweeping robot), the boundary line of the current specific medium partition is detected by combining the intensity of the ultrasonic reflection signal received by the ultrasonic sensor and the angle information measured by the inertial sensor, and then, the two ultrasonic sensors are adjusted to be located on both sides of the boundary line of the current specific medium partition at the boundary line or in the vicinity of the boundary line (which may be a distance from the boundary line but within the detection range of the ultrasonic sensor); in some embodiments, after the robot adjusts the two ultrasonic sensors to be located on two sides of the boundary line of the current specific medium partition, the current position point of the robot is located on the boundary line; it should be noted that the current position point of the robot is the body center point of the robot; the mode of adjusting the two ultrasonic sensors to be respectively located at the two sides of the boundary line of the current specific medium partition can be that the robot rotates the body and changes the walking direction until each ultrasonic sensor detects corresponding ground medium type information.
It should be noted that, before executing step S105 of the first embodiment, the robot keeps walking in the current specific medium partition, where the current specific medium partition is a closed area where the robot slips, such as a facing layer of a carpet, etc.; specifically, the robot may walk in the current specific medium partition according to the preset planned path from the preset walking start point, in the walking process, the robot does not calculate its pose information (including position coordinate information and angle information), does not build a map in real time, and may change a walking direction once at a predetermined time interval, so that the robot can adjust the preset planned path once before accumulating a sufficient offset error due to skidding in the current specific medium partition, thereby avoiding the robot from deviating from the preset planned path too far when walking along the preset planned path, and covering the current specific medium partition more comprehensively, and at this time, the robot still is in the current specific medium partition, but does not calculate relevant pose information of the current position point, and the robot does not update the global map, and cannot acquire real-time positioning information from the global map, and needs to execute step S105. In some embodiments, the conditions under which the robot starts to perform step S105 are: the robot records that the walking time of the robot in the current specific medium partition reaches the specified ending working time, and the robot determines that the robot walks through the current specific medium partition.
And 2, the robot walks in a state of keeping two ultrasonic sensors on two sides of the boundary line of the current specific medium partition, so that the robot walks along the boundary line of the current specific medium partition until the robot walks to the corner point, and the pose information of the corner point is used for updating the current pose information of the robot to finish repositioning of the robot. It should be noted that, pose information of each boundary line surrounding the current specific medium partition is stored in a memory of the robot in advance, and corresponding grids are marked in the global map before the robot enters the current specific medium partition, and the pose information is recorded; the corner point is an end point of one boundary line which encloses the current specific medium partition, namely a common end point of two adjacent boundary lines, and the pose information of the corner point is also pre-stored in a memory of the robot. In this embodiment, whether the robot walks the corner point may be determined by the amount of change of the rotation angle within a certain period of time, may be determined by the relationship between the rotation angle and the pre-stored grid position, may be determined by the relationship between the starting point of the robot starting to walk along the boundary line of the current specific medium partition and the corner point where the robot first walks, may be determined by combining these factors to perform comprehensive determination, and so on. Therefore, on the premise that new grid information and real-time robot pose information are not marked on the ground in real time, the current position of the robot is relocated to the position of the corner point recorded in the robot in advance.
Specifically, two ultrasonic sensors located on both sides of the boundary line of the current specific medium partition are located on both left and right sides of the central axis of the robot. When the shape of the current specific medium partition is polygonal, and the two ultrasonic sensors are configured to be installed on two sides of the central axis of the robot, in order to maintain that the two ultrasonic sensors are located on two sides of the boundary line of the current specific medium partition, the robot can rotate the body once or multiple times in the walking process, in the process, the body (including the driving wheel and the ultrasonic sensors) of the robot inevitably repeatedly enters and exits the current specific medium partition, the movement track of the robot forms a track line staggered with the boundary line of the current specific medium partition, the robot walks along the boundary line of the current specific medium partition in this embodiment, when the robot is a floor sweeping robot, staggered cleaning can be implemented on the current specific medium partition, and the robot walks in the current specific medium partition in the preset clockwise direction as a whole to achieve the edge walking along the fixed edge direction around the center of the current specific medium partition.
As an example, the two ultrasonic sensors are symmetrically installed at left and right sides of the central axis of the robot in some embodiments, so that it is easy to control the robot to walk along the boundary line of the current specific medium partition; the left and right driving wheels of the robot are preferably located on two 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 in a state of keeping two ultrasonic sensors located on two sides of the boundary line of the current specific medium partition, the central axis of the robot is parallel to the boundary line of the current specific medium partition along which the robot walks, and the robot is controlled to walk along the boundary line of the current specific medium partition in the mode until the robot walks to the corner point according to the angle information detected by the robot, and the corner point corresponds to the vertex of the rectangle. Because the robot walks on the boundary line or the nearby areas on two sides of the boundary line, and the displacement information measured by the code wheel or the odometer in the inertial sensor of the robot in the current specific medium partition has slip errors, the robot generates walking errors in the corresponding boundary section, is not easy to position, is not suitable for taking boundary points except for corner points as references for repositioning, after all, the robot needs to rotate at the corner points by a specific angle in the walking direction, and is suitable for being used as a repositioning reference angle, and the reference angle can be set within the range allowed by the preset slip errors.
Note that, the pose information of the corner point is stored in the memory of the robot in advance. Wherein the global map is pre-stored in a memory of the robot. The global map is that before the robot does not enter the current specific medium partition, various sensors (such as an acceleration sensor, a gyroscope, an ultrasonic distance meter and the like) carried by the robot are utilized to search the motion area of each room, the position, the shape and the size of each room and the position, the shape and the size of an encountered obstacle are sensed, and a global map containing environmental boundary information is drawn according to the position, the shape and the size of each room.
As an embodiment, in step 1, the method for adjusting the two ultrasonic sensors to be located on two sides of the boundary line of the current specific medium partition includes:
when the robot walks to the boundary line of the current specific medium partition, the robot rotates the body to adjust the walking direction, the robot can rotate the body in situ and the body of the robot can cover the boundary line until the intensity of the ultrasonic reflection signal received by the first ultrasonic sensor is not in the preset intensity threshold range, the intensity of the ultrasonic reflection signal received by the second ultrasonic sensor is in the preset intensity threshold range, the attitude angle measured by the inertial sensor is smaller than or equal to the preset angle threshold, the robot does not detect the current specific medium partition on the side corresponding to the first ultrasonic sensor, the robot detects the current specific medium partition on the side corresponding to the second ultrasonic sensor, the first ultrasonic sensor and the first ultrasonic sensor are located on two sides of the boundary line of the current specific medium partition, and then the state that the robot is located on two ultrasonic sensors and two sides of the boundary line of the current specific medium partition is determined; the preset angle threshold is determined by an inverse trigonometric function result of the maximum spanable height allowed by the robot to span the obstacle; the first ultrasonic sensor and the second ultrasonic sensor are fixedly assembled on two sides of the central axis of the robot, and boundary lines of the current specific medium partition exist 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 side and the right side of the central axis of the robot, the first ultrasonic sensor and the second ultrasonic sensor can be symmetrically arranged about the boundary lines of the current specific medium partition along which the robot is arranged.
In the process of executing the robot repositioning method, the robot controls each ultrasonic sensor to send out ultrasonic waves and receive ultrasonic reflection signals, and simultaneously controls the inertial sensor to measure the attitude angle of the robot; in the corresponding step 1, before the robot starts to walk along the boundary line of the current specific medium partition or during the process of the robot rotating the body to adjust the walking direction, the following detection results are included:
when the intensity of the ultrasonic reflected signal received by the ultrasonic sensor is not within the preset intensity threshold value range, the robot does not detect the current specific medium partition, specifically, the surface of the front area is detected to be free of the specific medium, and the robot is not in a state of crossing the first target obstacle. The ultrasonic sensor feeds back ultrasonic signals having different intensities based on the surface densities of different cleaning objects. The magnitude of the value within the preset intensity threshold range is related to the media type of the current particular media partition surface. The state that the robot is crossing the first target obstacle is relative to the horizontal plane, and the robot body is obliquely arranged on the surface of the first target obstacle; the robot not being in a state of crossing the first target obstacle is with respect to a horizontal plane, the robot is horizontally on a surface of the first target obstacle, or the robot is not in contact with the first target obstacle. In this embodiment the horizontal plane is equivalent to a horizontal ground plane. Wherein the ultrasonic sensor is 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 value range, it is determined that the robot does not detect the current specific medium partition on the side corresponding to the first ultrasonic sensor, specifically, the robot does not detect the current specific medium partition in front of the side corresponding to the first ultrasonic sensor.
In practical applications, the intensity of the ultrasonic signal fed back by carpets and obstacles on which the robot climbs is lower than that of the floor. Based on the above, an angle threshold or an angle threshold range can be set, and whether the traveling environment is located in the current specific medium partition or a raised obstacle for the robot to climb can be distinguished by utilizing the angle threshold range corresponding to the attitude angle measured by the inertial sensor. The first target obstacle protrudes out of the horizontal plane, the height of the first target obstacle is larger than the maximum spanable height allowed by the robot to span the obstacle, when the robot is in a state of crossing the first target obstacle, the robot has a sliding or idle running risk on the surface of the first target obstacle, and the robot needs to break loose from the first target obstacle to avoid sliding or idle running on the surface of the first target obstacle.
When the intensity of an ultrasonic reflected signal received by the ultrasonic sensor is in a preset intensity threshold range and the attitude angle measured by the inertial sensor is in a first preset angle threshold range, the robot detects that the specific medium (such as a carpet) exists on the surface of the front area, the robot detects the current specific medium partition, which can be a local area of the current specific medium partition, and meanwhile, the robot is not in a state of crossing an obstacle, including a state of crossing the first target obstacle, so that the current specific medium partition and the first target obstacle are detected in one signal intensity range (in the preset intensity threshold range) of the ultrasonic reflected signal, and the current specific medium partition and the first target obstacle are distinguished, and erroneous judgment is avoided; in this embodiment, the robot is not in a state of crossing the obstacle, meaning that the robot is not in contact with the surface of the obstacle with inclination, and the robot may be horizontally located on the surface of the obstacle. Wherein the ultrasonic sensor is 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 smaller than or equal to the preset angle threshold, it is determined that the robot detects 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.
In the above embodiment, 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 the attitude angle measured by the inertial sensor may be equal to 0, so that the robot is horizontally on the surface of the obstacle or does not contact the obstacle protruding from the horizontal ground. Wherein the state in which the robot is not crossing the obstacle is relative to a horizontal plane, the robot is horizontally on the surface of the obstacle, or the robot is not in contact with the obstacle, wherein the obstacle includes a first target obstacle, a second target obstacle, and an obstacle of a raised horizontal ground of the remaining height. In this embodiment the horizontal plane is equivalent to a horizontal ground plane.
It should be noted that, the first preset angle threshold range is an angle range smaller than or equal to a preset angle threshold. The preset angle threshold is determined by an inverse trigonometric function result of the maximum spanable height allowed by the robot to span the obstacle, a specific operation mode is a conventional trigonometric geometric operation, and according to the definition of a pitch angle and a roll angle, various conversion modes can exist, wherein the preset angle threshold and the maximum spanable height can form a positive correlation. And are not described in detail herein. When the attitude angle measured by the inertial sensor is a pitch angle, the preset angle threshold is the pitch angle converted by the inverse trigonometric function of the maximum spanable height; when the attitude angle measured by the inertial sensor is a roll angle, the preset angle threshold is the roll angle converted by the inverse trigonometric function of the maximum spanable height. The result of the inverse trigonometric function calculation only needs to leave a certain precision, so in this embodiment, the preset angle threshold is configured as a value under a preset error order, where the preset error order is preferably 0.1, so that the preset angle threshold is left to be in the order of 0.1. When the preset angle threshold value converted by the inverse trigonometric function is provided with a multi-bit decimal, the preset angle threshold value is within an error range allowed by the order of magnitude 0.1, and a numerical value is obtained by reserving one-bit decimal and is used as a unique angle value. To cater for the navigation accuracy of the inertial sensor.
It is noted that in this embodiment, acceleration information measured by the inertial sensor or an angular transformation result of the acceleration information does not continue to accumulate an integral value, and the robot does not assist in building a global map in the current specific medium partition, so as to reduce an error effect caused by a slip of the robot.
As an embodiment, in step 1, the determining manner of the boundary line of the robot walking to the current specific medium partition includes: in the process that the robot walks in the current specific medium partition, when the intensity of an ultrasonic reflection signal received by an ultrasonic sensor is not in a preset intensity threshold range, the robot determines a boundary line of the robot walks to the current specific medium partition; the preset intensity threshold range is used for representing the signal intensity range of the ultrasonic reflection signal fed back by the current specific medium partition. The ultrasonic sensor is a first ultrasonic sensor or a second ultrasonic sensor, namely, in the process that the robot walks in the current specific medium partition, as long as the intensity of an ultrasonic reflected signal received by the ultrasonic sensor on one side (left side or right side) of the robot is not in a preset intensity threshold range, the boundary line that the robot has walked to the current specific medium partition can be determined.
In some embodiments, the robot walks in the current specific medium zone according to a preset planning path, the robot controls the ultrasonic sensor to send out ultrasonic waves and receive ultrasonic reflection signals, and on the premise that interference of signal intensity of the ultrasonic reflection signals fed back by the surface of an obstacle with a specific height (the gesture angle measured by the inertial sensor is smaller than or equal to a preset angle threshold value) is eliminated, the intensity of the ultrasonic reflection signals received by the ultrasonic sensor is within a preset intensity threshold value range, and it is determined that the robot detects that a specific medium, such as a carpet, exists on the surface of an area in front of the specific medium zone, namely the robot detects the current specific medium zone; however, when the intensity of the ultrasonic reflected signal received by one ultrasonic sensor is not within the preset intensity threshold value range in the process of walking in the current specific medium partition, the robot detects that no specific medium exists on the surface of the front area of the ultrasonic sensor, and the robot walks in the current specific medium partition, so that the detection range of the ultrasonic sensor is positioned outside the current specific medium partition when the robot detects that no specific medium exists on the surface of the front area of the ultrasonic sensor, and the ultrasonic sensor may be positioned outside the current specific medium partition; the robot in this embodiment currently detects the boundary line of the current specific medium partition, determines the boundary line of the current specific medium partition when the robot walks to the current specific medium partition, and then adjusts the walking direction, that is, adjusts the walking angle by the robot, and deflects to walk inside the current specific medium partition, so that the robot is prevented from leaving the boundary line of the current specific medium partition as a whole, and a part of the robot body can be allowed to be exposed out of the current specific medium partition, but the walking direction of the robot needs to be adjusted to drive the robot to walk along the boundary line of the current specific medium partition. On the whole, on the premise that the robot does not calculate the pose and does not use global map positioning, the robot controls the robot to contact with the boundary line of the current specific medium partition through the signal intensity information of the ground medium actually walked by the robot through the feedback sensed by the ultrasonic sensor, so that the influence of the slip erroneous judgment caused by the inertial sensor in the current specific medium partition can be avoided, and the robot can be ensured to search the pre-stored boundary line in the current specific medium partition so as to facilitate the subsequent repositioning.
The inertial sensor includes a six-axis gyroscope. The three-axis gyroscope is an autonomous navigation system that is composed of three-axis accelerator (three-axis accelerator is a name for sensing acceleration in XYZ (three directions of three dimensions, front, rear, left, right, up, down) and three-axis gyroscope, and is independent of external information and is capable of radiating energy to the outside. The six-axis gyroscope can be used for measuring the pose information of the robot, and the pose information is mainly used for measuring the pose of the robot, wherein the pose comprises the position and the pose.
In the foregoing embodiment, the attitude angle measured by the inertial sensor is a pitch angle or a roll angle to obtain the angle information of the robot on the obstacle, preferably, the angle information of the robot on the obstacle may include a change in the attitude angle generated during the process of the robot crossing the obstacle from the horizontal plane, specifically, a change in a specific sampling period, starting from an initial value. The sampling period is related to the spanning capacity of the robot and also to the rotational speed of the drive wheel. In the foregoing embodiment, the pitch angle is used to represent an angle formed by the contact surface of the robot and the obstacle and the horizontal plane, and is also equivalent to an angle formed by the traveling direction of the robot and the horizontal plane; the rolling angle is used for representing an included angle formed by the wheel axis of the robot and the horizontal plane; the wheel axis of the robot is the axis of the driving wheels arranged at two sides of the robot body, namely the axis connecting line of the driving wheels arranged at two sides.
In the fourth embodiment, as shown in fig. 4, the specific implementation method of step S105 disclosed in the first embodiment includes the following steps:
step S401, a robot walks to the boundary line of the current specific medium partition in the current specific medium partition, and then two ultrasonic sensors are adjusted to be respectively located at two sides of the boundary line of the current specific medium partition; the robot then performs step S402. The related embodiment can refer to the method described in the previous step 1.
In some embodiments of step S401, the robot adjusts two ultrasonic sensors (corresponding to a first ultrasonic sensor and a second ultrasonic sensor located on the left and right sides of the body of the robot) before the robot is located on both sides of the boundary line of the current specific medium section, and walks in the current specific medium section to the target boundary line along the target direction, that is, the robot walks in the target direction from the point where the robot was located in the current specific medium section when the step S401 was started to be performed. The pointing range of the target direction falls into an included angle formed by connecting lines of a preset walking starting point and two end points of a target boundary line. The target boundary line is any boundary line surrounding the current specific medium partition, the related pose information is pre-stored in the robot so as to be convenient to read at any time, the target boundary line corresponds to the direction of the target direction, the mapping relation between the target boundary line and the target direction, namely the corresponding relation between one target direction and one target boundary line, is stored in the memory of the robot, and one target direction points to the corresponding target boundary line.
Specifically, in an indoor environment, since the shape of the current specific medium section is adapted to the planar shape of the room type actually covered by the current specific medium section, and the boundary line of the current specific medium section may be coincident with the boundary line of a room to cover the floor area of the room, each boundary line surrounding the current specific medium section is fixed, so the azimuth information of each boundary line surrounding the current specific medium section with respect to the preset travel starting point is fixed information obtained in advance, including angle information and distance information of boundary points (including end points) on each boundary line surrounding the current specific medium section with respect to the preset travel starting point.
Preferably, the preset walking start point is set in the current specific medium partition. The robot walking within the current specific medium partition according to the preset planned path may also be expressed as the robot walking along the preset planned path within the current specific medium partition. In the third embodiment, in order to ensure that the robot does not easily walk out of the current specific medium partition and a sufficiently clear walking area exists in the current specific medium partition, the robot sets a preset walking starting point as a center point of the current specific medium partition; the robot is controlled to walk according to the preset planning path from the center point of the current specific medium partition. The center point of the current specific medium partition may refer to a center point under a regular shape, and when the shape of the current specific medium partition is irregular, grid coordinates corresponding to the center point of the current specific medium partition are calculated through boundary points on a boundary line of the current specific medium partition.
In some embodiments, the target direction is a walking direction when the robot starts to perform the robot repositioning method to achieve straight walking of the robot to the target boundary line; or the target direction is a direction forming a preset target angle with the walking direction when the robot starts to execute the robot repositioning method, so that the robot can avoid obstacles in a current specific medium zone by adjusting the preset target angle and then linearly walking to a target boundary line, wherein the setting of the preset target angle is related to the obstacles distributed in the walking direction when the robot starts to execute the robot repositioning method.
In step S401, before two ultrasonic sensors are adjusted to be located on two sides of a boundary line of a current specific medium partition, the robot uses an inertial sensor to measure an angle formed by a latest traveling direction of the robot relative to a line between one end point of a target boundary line and a preset traveling starting point in a preset clockwise direction, wherein the end point is connected to the other end point on the target boundary line according to the preset clockwise direction; when the target boundary line is a line segment, above a preset walking starting point, the end point extends from a left straight line to a right straight line in a counterclockwise direction or the end point extends from the right straight line to the left straight line in a clockwise direction; when the target boundary line is a line segment, the end point extends from the left straight line to the right in a clockwise direction or from the right straight line to the left in a counterclockwise direction below the preset travel starting point.
When the robot detects that the angle (the angle formed by the connection line between one end point of the robot and the preset traveling start point relative to the target boundary line in the preset clockwise direction) is smaller than or equal to the angle formed by the connection line between the preset traveling start point and the two end points of the target boundary line, the robot is determined to travel along the target direction in the current specific medium partition, so that the robot can travel along the target direction until the robot detects the boundary line (the boundary line where the robot travels along the target direction is determined to be the target boundary line by the mapping relation between the pre-stored target boundary line and the target direction when the intensity of the ultrasonic reflection signal received by the ultrasonic sensor is not within the preset intensity threshold range in the process of the robot traveling in the current specific medium partition disclosed by the embodiment).
When the plane shape of the current specific medium partition is square and the preset walking starting point is the center point of the current specific medium partition, the connection line between the left end point of the target boundary line and the preset walking starting point is positioned on a diagonal line of the square; further, each time the angle formed by the latest walking direction of the robot relative to the connecting line of the left end point of the target boundary line and the preset walking starting point in the clockwise direction is increased by 90 degrees, the target boundary line is changed once and is changed into a boundary line perpendicular to the right end point of the original target boundary line; the target boundary line is determined every time the latest travel direction of the robot makes an angle smaller than 90 degrees in the clockwise direction with respect to the line connecting the left end point of the target boundary line and the preset travel start point.
In step S402, the robot sets the position points where it starts to hold the state where the two ultrasonic sensors are located on both sides of the boundary line of the current specific medium section as the relocation start point, and determines that the robot has started to hold the state where the two ultrasonic sensors are located on both sides of the boundary line of the current specific medium section, and then the robot performs step S403 so that the robot walks along the boundary line of the current specific medium section, that is, along the target boundary line disclosed in some embodiments of the aforementioned step D101, and when the current position point of the robot is the body center point of the robot, particularly in a state where the two ultrasonic sensors are symmetrically located on both sides of the boundary line of the current specific medium section, the body center point of the robot moves along the target boundary line disclosed in some embodiments of the aforementioned step D101.
Step S403, in which the robot walks from the repositioning start point in a preset clockwise direction while keeping the two ultrasonic sensors located on both sides of the boundary line of the current specific medium partition, so that the robot walks along the boundary line of the current specific medium partition, and when the current position point of the robot is the body center point of the robot, particularly in a state where the two ultrasonic sensors are symmetrically located on both sides of the boundary line of the current specific medium partition, the movement track of the body center point of the robot is parallel to the boundary line of the current specific medium partition; meanwhile, the robot detects the angle change quantity by using an inertial sensor, wherein the robot detects the angle change quantity generated by the robot from the repositioning starting point by using a gyroscope, and the angle change quantity is the angle change quantity of a course angle of the robot and is used for representing the change of the walking direction of the robot, and particularly represents the change of the walking direction of the robot on the horizontal plane of the current specific medium partition; and step S404 is performed to synchronously determine the magnitude of the angle change amount.
Step S404, judging whether the angle change amount detected by the robot from the repositioning starting point reaches a reference angle, if so, executing step S406, otherwise, executing step S405. Preferably, the reference angle is within an angle range allowed by slip errors of the robot within said current specific medium section, such that the robot maintains its walking along the boundary line of the current specific medium section by rotating said reference angle at the corner point. In this embodiment, the robot adjusts the traveling direction so as to maintain the state in which the two ultrasonic sensors are located on both sides of the boundary line of the current specific medium section, and can correct the slip error occurring when the gyro detects the angle to some extent.
It should be noted that, in a shorter time interval, the slip drift error accumulated by the robot is not very large, and the robot does not need to be repositioned, and after all, frequent repositioning may also result in a decrease in the walking efficiency of the robot, so, in order to achieve the optimal positioning effect of the robot, when it is determined in step D104 that the angle variation detected by the robot from the repositioning starting point reaches the reference angle, step D106 is executed to update the pose information of the current position point of the robot.
Preferably, the reference angle is an angle of an included angle formed by a boundary line of the object and a boundary line connected with the boundary line in a preset clockwise direction, and the corner point is a common endpoint of the boundary line of the object and the boundary line connected with the boundary line in the preset clockwise direction; the plane shape of the current specific medium partition is a polygon, the corner points are vertexes belonging to the polygon, and the boundary lines are edges belonging to the polygon, so that each boundary line of the current specific medium partition belongs to a straight line segment. The grids corresponding to the boundary points of the current specific medium partition are marked in the global map, the boundary points of the current specific medium partition comprise angular points, when the plane shape of the current specific medium partition is polygonal, the angular points of the current specific medium partition are vertexes of the current specific medium partition, the boundary line of the current specific medium partition is an edge surrounding the polygon, the current specific medium partition is equivalent to a closed graph formed by sequentially connecting a plurality of boundary line segments end to end, and the closed graph is a closed area, wherein the closed graph comprises a polygon which can be divided into a regular polygon, a non-regular polygon, a convex polygon and a concave polygon, and can be preferably rectangular. Because the reference angle in this embodiment may be set to allow the robot to walk to a corner position, such as an end point of a line segment, a common end point of two boundary lines, if the value of the reference angle is too small, it is difficult to find an adaptive repositioning position, and if the value of the reference angle is too large, the accuracy of the found object is relatively low, since the points are pre-saved to the memory of the robot, and the boundary line where the points are located is known in step D101, so that an optimal repositioning matching effect can be achieved. The embodiment uses the corner points for repositioning, so that the positioning accuracy of the robot on the current specific medium partition which is easy to slip is improved.
Step S406, the robot walks to the corner point, the pose information of the corner point is used for updating the current pose information of the robot, the grid coordinates which are reserved currently by the robot and used for marking the current position point of the robot are replaced by the stored grid coordinates in the grid corresponding to the corner point, and the repositioning of the robot can be realized, so that the robot can acquire the pose information of the robot in the current specific medium partition. It should be noted that, the corner point is a common end point of two boundary lines of the current specific medium partition, and is a position point where the robot maintains its travel along the boundary line of the current specific medium partition by rotating the reference angle, that is, when the robot keeps the two ultrasonic sensors separated at two sides of the boundary line of the current specific medium partition traveling to the corner point or near the corner point, in order to maintain its travel along the boundary line of the current specific medium partition (keep keeping the two ultrasonic sensors separated at two sides of the boundary line of the current specific medium partition traveling), the robot needs to rotate the reference angle along the preset clockwise direction, so as to implement the adjustment of the reference angle in the traveling direction of the robot; the boundary lines surrounding the current specific medium partition are marked in the corresponding grids of the global map in advance, and the global map is stored in the memory of the robot in advance.
Then, the robot does not continue to keep the state that the two ultrasonic sensors are located on two 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 described in the first embodiment in the subsequent iteration process of the robot, the robot disclosed in the foregoing step S403 and step S404 starts the process of clearing the detected angle change from the repositioning starting point, so as to avoid erroneous judgment.
Specifically, when the robot detects that the angle variation reaches the reference angle from the repositioning starting point, determining that the robot walks to the corner point and rotates at the corner point by the reference angle according to the preset clockwise direction, and then updating the current pose information of the robot by using the pose information of the corner point; the repositioning starting point is a position point where the robot starts to keep the two ultrasonic sensors in a state of being separated at two sides of the boundary line of the current specific medium partition; wherein the corner point and the repositioning starting point are located on the same boundary line of the current specific medium partition, the boundary line is located between the two ultrasonic sensors, one ultrasonic sensor is located above the current specific medium partition, the other ultrasonic sensor is located above an area outside the current specific medium partition, for example, a first ultrasonic sensor is assembled on the left side of the bottom of the robot, a second ultrasonic sensor is assembled on the right side of the bottom of the robot, and the robot walks along the boundary line of the current specific medium partition in a counterclockwise direction, 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.
In step S405, the robot continues to walk according to the preset clockwise direction while keeping the two ultrasonic sensors located on both sides of the boundary line of the current specific medium partition, so that the robot continues to walk along the boundary line of the current specific medium partition according to the preset clockwise direction, and returns to step S404, so that step S404 is implemented in the process of walking along the boundary line of the current specific medium partition.
In the process that the robot walks along the boundary line of the current specific medium section, the robot walks below the preset walking start point of the current specific medium section, or walks counterclockwise, or walks above the preset walking start point of the current specific medium section, or walks clockwise.
Preferably, the current specific medium partition is a rectangular area with a surface covered with a specific medium, the corner point is a vertex of the rectangular area, and the reference angle is 90 degrees, so that after the robot rotates a right angle according to a preset clockwise direction, the pose information of the vertex of the right angle is used for updating the current pose information of the robot; each side of the rectangular area is a boundary line, the rectangular area is surrounded by four boundary lines, and pose information of the rectangular vertex comprises coordinate information and angle information of the rectangular vertex, which are all pre-stored pose information so as to facilitate subsequent repositioning operation. The robot is covered on the ground of the indoor environment in the walking environment corresponding to the indoor environment, wherein the wall body is perpendicular to the ground; if the current specific medium partition covers the ground of the indoor environment, the corners of the motion trail of the robot walking along the current specific medium partition are right angles, and the included angles between the boundary lines of the intersected current specific medium partition are right angles.
In summary, when the robot navigates and walks along the boundary line of the current specific medium section, due to the occurrence of the slip error, the grid path in the global map is not searched, but walking along the boundary line of the current specific medium section is implemented according to the state of adjusting the walking direction to keep the two ultrasonic sensors located at both sides of the boundary line of the current specific medium section in step 1 or step S401 of the foregoing embodiment, and the walking from location to location is performed to the corner point described in step D106, i.e., the robot detects that the angle change amount reaches the reference angle from the relocation start point. After the robot is used as a floor sweeping robot to conduct covering cleaning on a carpet, the robot walks in a mode of keeping ultrasonic sensors on the left side and the right side to be located on two sides of a boundary line of a current specific medium partition, so that the robot walks stably along the boundary line of the current specific medium partition, one corner point of the current specific medium partition is searched through an angle change amount on the basis of the boundary line, the current position of the robot is relocated to a position recorded by the corner point in a map, and the accuracy of position information obtained by relocation calculation is improved under the condition of reducing calculation amount; the method avoids the drawing error caused by the slipping of the driving wheel of the robot on the carpet surface, and is convenient for the robot to use the relocated accurate position to carry out subsequent path planning. The beneficial effects of the invention include: by using the path of the robot walking along the edge of the current specific medium partition as a reference, the position deviation caused by overlarge accumulation of the robot walking error can be corrected, and repositioning is realized, so that the positioning accuracy and the walking efficiency of the robot during subsequent navigation walking are improved.
On the basis of the foregoing embodiment, when the robot walks in the current specific medium zone, the robot controls the ultrasonic sensor to emit ultrasonic waves and receive ultrasonic reflection signals, and controls the inertial sensor to measure the attitude angle of the robot, including the pitch angle or roll angle for detecting the current specific medium zone in cooperation with the ultrasonic sensor, and the course angle for detecting the angle change amount when executing to step 2 or step S403, but stopping marking the grid of the global map. When the robot uses the pose information of the angular points to update the current pose information of the robot, the robot walks to an area outside the specific medium area, and meanwhile, the robot acquires the pose information of the robot and marks corresponding grids in a global map so as to perform map construction operation; wherein the medium covered by the surface of the area outside the specific medium area is different from the specific medium covered by the surface of the specific medium area; the specific medium area is a closed area for the robot to slip, such as a carpet area, and in contrast, an area outside the specific medium area is a closed area which is not easy for the robot to slip.
Based on the foregoing embodiment, the present invention also discloses a robot, which is equipped with an inertial sensor, an ultrasonic sensor, and a processor, wherein the ultrasonic sensor is equipped in front of the bottom of the robot, so that the robot can timely detect the specific medium area; the inertial sensor and the ultrasonic sensor are electrically connected with the processor; and considering the cost factor of the sensors, at least one ultrasonic sensor is respectively arranged on two sides of the bottom of the robot, the vertical distance between each ultrasonic sensor and the central axis of the robot is in the range of 2 cm to 3 cm, and the central axis of the robot is parallel to the walking direction of the robot. The processor is used for controlling the robot to execute the robot control method disclosed in the previous embodiment. The robot detects a specific medium area, a crossing obstacle (a second target obstacle) and a non-crossing obstacle (a first target obstacle) firstly, so as to adapt to walking on the surfaces of different mediums and terrains according to a preset planning path, and then walks in a corresponding specific medium partition according to the preset planning path in a mode of detecting the path extending direction adjusted according to the coverage condition of a working area on the basis of detecting the specific medium area; then, the robot is positioned in a specific medium partition which is moved through at least one corner point in a corresponding corner area, so that the robot can navigate to the next specific medium partition conveniently; the iteration is repeated until the robot runs out of all the specific medium partitions in the specific medium area.
In this embodiment, the robot may be a cleaning robot including a machine body, a sensing system, a control system, a driving system, a cleaning system, an energy system, the cleaning robot body including a forward portion and a backward portion having an approximately circular shape (both front and rear being circular), and may have other shapes including, but not limited to, an approximately D-shape of a front and rear circle or a rectangular or square shape of a front and rear. In some embodiments, sensing devices such as collision sensors, proximity sensors, cliff sensors, controllers, magnetometers, accelerometers, gyroscopes (Gyro), odometers (ODO) mounted inside the drive wheels, drop sensors mounted in slots where the left and right drive wheels are connected to the chassis of the machine body, and the like are provided on the forward portion of the main body of the robot to provide various positional and movement state information of the machine to the processor. The processor may manipulate the robot to travel across different types of ground based on drive commands with distance and angle information (e.g., x, y, and z components), and mark a grid corresponding to a particular media area currently detected and an obstacle contacted in a global map, and impart pose information and environmental type information. The processor comprises a drive wheel module which can control both the left and right drive wheels simultaneously, preferably the drive wheel module comprises a left drive wheel module and a right drive wheel module which are symmetrically arranged along a transverse axis defined by the machine body for more accurate control of the movements of the robot. In order for the robot to be able to move more stably or with a greater capacity on the ground, the robot may include one or more driven wheels, including but not limited to universal wheels for changing the steering. The driving wheel module comprises a driving wheel, a driving motor and a control circuit for controlling the driving motor, and can be connected with a circuit for measuring driving current, an odometer and a gyroscope to realize map construction. When the robot is a floor sweeping robot and the specific medium partition is a carpet coverage area in a room area, the technical scheme of the invention relies on the inertial sensor and the ultrasonic sensor to perform cleaning operation with larger coverage on each carpet partition, reduces drawing errors caused by skidding of driving wheels of the robot, and obtains accurate machine body positioning information in each carpet partition so as to facilitate one traversed carpet partition to enter an un-traversed carpet partition with reasonable distance, thereby orderly completing cleaning operation of all carpet partitions included by carpets in an indoor working area.
The invention also discloses a chip, wherein a program is stored on the chip, and the program realizes the robot control method disclosed in the previous embodiment when being executed by the chip. When the chip is assembled on a robot, aiming at the problems that the robot wheel slips and position calculation is affected due to different mediums such as carpets and the like and crossing obstacles and the like under the conventional condition, the robot is controlled to compare the pitching angle or rolling angle information measured by an inertial sensor with a corresponding angle value converted by the maximum crossing height of the robot, the detection error of a carpet area formed under the condition that the signal intensity fed back by an ultrasonic sensor is weaker is eliminated, the obstacles and the carpet area are distinguished, an adaptive walking strategy is made, so that the robot walks on the surfaces of different mediums and terrains according to a preset planning path, and then walks in a corresponding specific medium area according to the preset planning path in a path extending direction mode adjusted according to the coverage condition of the working area on the basis of detecting the specific medium area, namely the robot walks on the corresponding specific medium area; then, the robot is positioned in a specific medium partition which is moved through at least one corner point in a corresponding corner area, so that the robot can navigate to the next specific medium partition conveniently; the iteration is repeated until the robot runs out of all the specific medium partitions in the specific medium area.
Storing the global map constructed by the robot in a memory space inside the chip, wherein the global map is a grid map and consists of grid units, and the grids in the embodiment are the grid units; the grid units are virtual squares with the side length of 20 cm, and a map which is formed by continuously arranging a plurality of grid units and has a certain length and width and is used for representing geographic environment information is a grid map, and the map corresponds to a global coordinate system to form the global map. According to the grid map, the robot can learn the current corresponding grid unit position from the data detected while walking, and can update the state of the grid unit in real time, such as marking the state of a smoothly walking grid unit as a traversed grid, marking the state of a grid unit that collides with or spans an obstacle as an obstacle grid, marking the state of a detected cliff grid unit as a cliff grid, marking the state of a non-arrived grid unit as an unknown grid, and the like. Preferably, in the above embodiments, the isolated subarea constituting the specific medium area refers to an isolated rectangular area of the carpet covering the carpet, which is not adjacent to a wall or an object adjacent to a wall, and the robot can walk one turn along the edge of the isolated rectangular area, wherein the grid area corresponding to the isolated rectangular area does not refer to just one grid unit, but a plurality of grid units which are close together and can form a continuous floor area, and also belongs to the subarea.
Further, in the above embodiments, the predetermined planned path recorded by the robot walking outside the specific medium area and the grid corresponding to the marked boundary point of the specific medium area may be stored in the memory (including the buffer area) of the chip, the predetermined planned path may be an arcuate path, and the specific medium area may be an area formed by a rectangular area or a plurality of discontinuous rectangular areas, and the memory (including the buffer area) of the chip may include the grid coordinates of the grid unit corresponding to the arcuate path, the grid coordinates of the grid unit corresponding to the start position point of the arcuate path, the grid coordinates of the grid unit corresponding to the end position point of the arcuate path, the start execution time of the arcuate path, the end execution time of the arcuate path, the grid coordinates of the grid unit corresponding to the boundary point of the specific medium area, and so on. The data stored in the memory cannot be deleted at will and can be used as reference data for the robot to reposition and build a map. If the data stored in the buffer memory meets the requirement of the reference data for repositioning the robot, the data is stored in the memory to form the stored edge path; if not, then the data is overwritten by the subsequent newly recorded data.
It is apparent that the above examples are given by way of illustration only and are not limiting of the embodiments. Other variations or modifications of the above teachings will be apparent to those of ordinary skill in the art. It is not necessary here nor is it exhaustive of all embodiments. While still being apparent from variations or modifications that may be made by those skilled in the art are within the scope of the invention.

Claims (21)

1. The robot control method based on the specific medium area is characterized in that the robot control method is suitable for a robot provided with an inertial sensor and an ultrasonic sensor, wherein at least two ultrasonic sensors are fixedly arranged on two sides of the bottom of the robot and are positioned on two sides of the central axis of the robot, and the central axis of the robot is parallel to the walking direction;
the robot control method comprises the following steps:
step S1, a robot detects a specific medium area by combining the intensity of an ultrasonic reflected signal received by an ultrasonic sensor and angle information measured by an inertial sensor, and then adjusts a walking strategy so that the robot does not enter the specific medium area until the robot walks through areas except the specific medium area;
Step S2, after the robot walks through the areas except the specific medium area, the robot determines the current specific medium area according to the current position point of the robot, and then the robot enters the current specific medium area from the areas except the specific medium area; the specific medium area comprises a plurality of specific medium partitions, and the current specific medium partition belongs to the specific medium partition;
step S3, after the robot enters the current specific medium partition, the robot walks in the current specific medium partition according to a preset planning path, each time the robot walks for a preset time interval, the robot adjusts the extending direction of the preset planning path, and then walks in the current specific medium partition according to the preset planning path after the extending direction is adjusted until the robot determines that the robot walks in the current specific medium partition;
step S4, after the robot determines that the current specific medium partition is walked, the robot walks to the boundary line of the current specific medium partition, and then the robot is controlled to walk in a state of keeping two ultrasonic sensors located on two 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 the robot walks to the corner point; wherein the corner points are end points belonging to boundary lines which enclose the current specific medium partition;
And S5, updating the corner point in the step S4 into a current position point of the robot by the robot, and repeatedly executing the step S2, the step S3 and the step S4 by the robot until the robot finishes walking all the specific medium partitions in the specific medium area, and determining that the robot finishes walking the specific medium area by the robot.
2. The method according to claim 1, wherein in the step S1, the method for detecting the specific medium area by the robot in combination with the intensity of the ultrasonic reflected signal received by the ultrasonic sensor and the angle information measured by the inertial sensor, and then adjusting the walking strategy so that the robot does not enter the specific medium area comprises:
controlling an ultrasonic sensor to emit ultrasonic waves and receive ultrasonic reflection signals, and simultaneously controlling an inertial sensor to measure the attitude angle of the robot;
when the intensity of the ultrasonic reflected signal received by the ultrasonic sensor is not within a preset intensity threshold value range, the robot does not detect a specific medium area and is not in a state of crossing a first target obstacle;
when the intensity of an ultrasonic reflected signal received by an ultrasonic sensor is in a preset intensity threshold range and an attitude angle measured by an inertial sensor is in a first preset angle threshold range, the robot detects a specific medium area and is not in a state of crossing an obstacle, and marks a grid corresponding to a boundary point of the specific medium area in a global map; then, the walking direction is adjusted so that the robot does not enter a specific medium area;
When the intensity of an ultrasonic reflected signal received by an ultrasonic sensor is in a preset intensity threshold range and the attitude angle measured by an inertial sensor is in a second preset angle threshold range, the robot detects a first target obstacle and is in a state of crossing the first target obstacle, marks a grid corresponding to the first target obstacle in a global map, and then the robot does not continuously cross the first target obstacle;
wherein, the state that the robot is in a state of crossing the obstacle is relative to a horizontal plane, and the body of the robot is obliquely arranged on the surface of the obstacle; the obstacle comprises a first target obstacle;
wherein a specific medium covered region is set as the specific medium region;
the global map belongs to a grid map and is pre-stored in a memory of the robot.
3. The robot control method according to claim 2, wherein 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 an obstacle, and marks a grid corresponding to a boundary point of the specific medium area in the global map; then, the walking direction is adjusted so that the robot does not enter the detected specific medium area;
When the intensity of an ultrasonic reflected signal received by an ultrasonic sensor is in a preset intensity threshold range and the attitude angle measured by an inertial sensor is larger than a preset angle threshold, the robot detects a first target obstacle and is in a state of crossing the first target obstacle, marks a grid corresponding to the first target obstacle in a global map, and then the robot does not continuously cross the first target obstacle;
wherein the height of the first target obstacle is greater than the maximum spanable height allowed by the robot to span the obstacle;
wherein the angle range smaller than or equal to the preset angle threshold is a first preset angle threshold range, and the angle range larger than the preset angle threshold is a second preset angle threshold range;
the preset angle threshold is determined by an inverse trigonometric function result of the maximum spanable height allowed by the robot to span the obstacle;
wherein the predetermined angle threshold is a value configured to be at a predetermined error magnitude.
4. The robot control method according to claim 3, wherein when the intensity of the ultrasonic reflected signal received by the ultrasonic sensor is not within a preset intensity threshold and the attitude angle measured by the inertial sensor is less than or equal to a preset angle threshold, the robot detects a second target obstacle and is in a state of crossing the second target obstacle, marks a grid corresponding to the second target obstacle in the global map, and then the robot proceeds to cross the second target obstacle;
Or when the intensity of the ultrasonic reflected signal received by the ultrasonic sensor is not in the preset intensity threshold range and the attitude angle measured by the inertial sensor is smaller than or equal to the preset angle threshold, the robot is not in a state of crossing the obstacle, and the robot walks according to the preset planning path;
wherein the obstacle further comprises a second target obstacle; the second target obstacle protrudes from the horizontal plane, and the height of the second target obstacle is smaller than or equal to the maximum spanable height allowed by the robot to span the obstacle.
5. The method according to claim 2, wherein in the step S1, each time the robot searches the global map for a grid corresponding to a non-traversed position point except the specific medium area detected, the robot walks to the non-traversed position point, and then walks from the non-traversed position point according to a preset planned path without entering the specific medium area; when the robot walks through the areas except the specific medium area, determining that the remaining non-traversed area is the specific medium area;
the specific medium area is formed by connecting a plurality of closed areas formed by the boundary points, and one specific medium area is a closed area;
The boundary point of each specific medium partition is the boundary point of the specific medium area; the specific medium area is formed by a plurality of closed grid areas surrounded by grids corresponding to the boundary points in the global map, and one specific medium area is represented by one closed grid area in the global map;
wherein, every time the robot walks to a position point, the robot is determined to traverse to the position point, the position point is set as a traversed position point, and the grid corresponding to the position point is marked as a traversed grid in the global map.
6. The method according to claim 1, wherein in the step S2, the method for determining the current specific medium section by the robot according to the current position point thereof comprises:
selecting one corner nearest to the current position point of the robot from the corner points of all specific medium partitions which are not passed by the robot to be configured as a reference corner; wherein, the grids corresponding to the boundary points of each specific medium partition are marked in the global map; boundary points of the specific medium region comprise corner points;
then, the robot selects two boundaries taking the reference corner as common endpoints to be respectively configured as a first reference edge and a second reference edge in a specific medium partition where the reference corner is located; the boundary line of the specific medium partition is formed by connecting boundary points of the specific medium partition;
The robot selects one midpoint closest to the current position point of the robot from the midpoints of the first reference edge and the second reference edge to be configured as a 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.
7. The robot control method according to claim 6, wherein in the step S2, the method for the robot to enter the current specific medium zone from the area other than the specific medium zone includes:
before entering the current specific medium partition, the robot walks from the current position point to the current preset target point after determining the current preset target point and the current specific medium partition, and walks from the current preset target point to a preset walking starting point of the specific medium partition where the robot is located;
when the robot walks to a preset walking starting point of the current specific medium partition, the robot determines that the robot completely enters the specific medium partition;
the robot sets the center point of the specific medium partition where the current preset target point is located as the preset walking starting point of the current specific medium partition.
8. The robot control method according to claim 7, wherein the step S3 specifically includes:
the robot walks in the current specific medium partition according to a preset planning path from a preset walking starting point of the current specific medium partition, and records the time spent by the robot in the current specific medium partition;
each time the robot walks through a preset time interval, the robot adjusts the extending direction of the preset planning path, and walks in the current specific medium partition according to the preset planning path after the extending direction is adjusted, so that the robot traverses an area which is not covered by the preset planning path before adjustment on the preset planning path which is adjusted up to the latest, until the time spent by the robot for starting to walk from the preset walking starting point of the current specific medium partition reaches the working end time, and the robot determines that the robot walks the current specific medium partition.
9. The robot control method of claim 8, wherein the preset planned path is an arcuate path;
wherein the arcuate path comprises a plurality of motion track line segments which are parallel to each other; two adjacent motion track line segments which are parallel to each other are connected through a bending line or a preset line segment at one end point;
The length of the motion track line segment is greater than that of the bending line, and the length of the motion track line segment is greater than that of the preset line segment;
wherein, the extending direction of the preset planning path is kept perpendicular to the moving track line segment;
the included angle formed by the extending direction which is changed currently and the extending direction which is before being changed is equal to the included angle formed by the moving track line segment in the bow-shaped path which corresponds to the extending direction which is changed currently and the moving track line segment in the bow-shaped path which is before being changed.
10. The robot control method of claim 1, wherein the work end time is equal to a product of a ratio of an area of the current specific medium partition to an 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 walking speed of the robot and the width of the robot body;
the direction along which the width of the robot body is arranged is perpendicular to the walking direction of the robot;
the first preset coefficient is used for indicating the difference between the coverage area of the track actually walked by the robot and the area of the current specific medium partition after the robot actually walks through the current specific medium partition;
The preset time interval is equal to the product of the ratio of the area of the current specific medium area to the effective coverage area of the robot and a second preset coefficient in an error allowable range; wherein the second preset coefficient is related to the number of boundary lines surrounding the current specific medium area;
when the product of the ratio of the area of the current specific medium area to the effective coverage area of the robot and the second preset coefficient is smaller than the first preset coefficient, the product of the ratio of the area of the current specific medium area to the effective coverage area of the robot and the second preset coefficient is assigned to be the first preset coefficient, so that the value of the preset time interval is not smaller than the first preset coefficient.
11. The robot control method of claim 10, wherein the current specific medium zone is a rectangular zone, and the current specific medium zone is a closed zone in which the robot slips;
wherein the first preset coefficient is set to be greater than or equal to a value of 2, and the second preset coefficient is set to be 1/4;
when the value of the predetermined time interval is smaller than the value 2, the value of the predetermined time interval is set to the value 2.
12. The robot control method according to claim 8, wherein, in a process that the robot walks in the current specific medium section according to a preset planned path, when the intensity of the ultrasonic reflection signal received by the ultrasonic sensor is not within a preset intensity threshold range, the robot determines a boundary line of the current specific medium section, and then adjusts a walking direction so that the robot does not walk outside the current specific medium section, and then walks in the current specific medium section according to the preset planned path, wherein an extending direction of the preset planned path is perpendicular to the adjusted walking direction;
wherein, an ultrasonic sensor is assembled in front of the bottom of the robot and is used for emitting ultrasonic waves towards the walking surface of the robot;
the preset intensity threshold range is used for representing the signal intensity range of the ultrasonic reflection signal fed back by the specific medium region.
13. The robot control method according to claim 8, wherein the robot adjusts the advancing direction to avoid the obstacle every time it collides with the obstacle in the process of traveling in the current specific medium zone according to the preset planned path, and then travels in the current specific medium zone according to the preset planned path, wherein the extending direction of the preset planned path is perpendicular to the adjusted traveling direction.
14. The robot control method according to claim 1, wherein the step S4 specifically includes:
when the robot walks to the boundary line of the current specific medium partition, the robot rotates the machine body to adjust the walking direction until the intensity of the ultrasonic reflection signal received by the first ultrasonic sensor is not in the preset intensity threshold range, the intensity of the ultrasonic reflection signal received by the second ultrasonic sensor is in the preset intensity threshold range, and the attitude angle measured by the inertial sensor is smaller than or equal to the preset angle threshold, the robot does not detect the current specific medium partition at the side corresponding to the first ultrasonic sensor, and the robot detects the current specific medium partition at the side corresponding to the second ultrasonic sensor, so that the state that the robot is positioned at two sides of the boundary line of the current specific medium partition is determined;
the robot walks according to a preset clockwise direction from a position point where the two ultrasonic sensors are positioned when the two ultrasonic sensors start to be in a state of being respectively located at two sides of the boundary line of the current specific medium partition, so that the robot walks along the boundary line of the current specific medium partition, and an inertial sensor is used for detecting the angle change quantity;
When the robot detects that the angle variation reaches a reference angle, the robot walks to the corner point, and the pose information of the corner point is used for updating the current pose information of the robot so as to realize that the robot obtains the pose information of the robot again in the current specific medium partition; the angle change amount is the angle change amount of the course angle of the robot and is used for representing the change of the walking direction of the robot;
the corner point is a common endpoint of two boundary lines of the current specific medium partition, and is a position point at which a robot maintains walking along the boundary line of the current specific medium partition by rotating the reference angle;
wherein the preset clockwise direction is a clockwise direction or a counterclockwise direction.
15. The robot control method according to claim 14, wherein in step S4, the determination method of the boundary line of the robot traveling to the current specific medium zone within the specific medium zone includes:
in the process that the robot walks in the current specific medium partition, when the intensity of an ultrasonic reflection signal received by an ultrasonic sensor is not in the preset intensity threshold range, the robot determines a boundary line of the robot walks to the current specific medium partition;
The preset intensity threshold range is a preset signal intensity threshold range and is used for representing the signal intensity range of the ultrasonic wave reflected signal fed back by the current specific medium partition;
wherein the ultrasonic sensor is a first ultrasonic sensor or a second ultrasonic sensor.
16. The robot control method according to claim 14, wherein when the robot detects that the angle variation reaches the reference angle from the repositioning starting point, the robot determines that it walks to the corner point and rotates the reference angle at the corner point in a preset clockwise direction, and then the robot updates the current pose information of the robot using the pose information of the corner point;
the repositioning starting point is a position point where the robot starts to keep the two ultrasonic sensors in a state of being respectively located on two sides of the boundary line of the current specific medium partition;
the corner point and the repositioning starting point are positioned on the same boundary line of the current specific medium partition, the boundary line is positioned between a first ultrasonic sensor and a second ultrasonic sensor, the second ultrasonic sensor is positioned above the current specific medium partition, and the first ultrasonic sensor is positioned above an area outside the specific medium area.
17. The robot control method according to claim 14, wherein the robot controls the ultrasonic sensor to emit ultrasonic waves and receive ultrasonic reflection signals and controls the inertial sensor to measure the attitude angle of the robot while stopping marking the grid of the global map while the robot walks within the current specific medium zone;
when the robot uses the pose information of the angular points to update the current pose information of the robot, the robot walks to an area outside the specific medium area, and meanwhile, the robot acquires the pose information of the robot and marks corresponding grids in a global map;
wherein the medium covered by the surface of the area outside the specific medium area is different from the specific medium covered by the surface of the current specific medium partition;
the current specific medium partition is a closed area for the robot to slip.
18. The robot control method of claim 1, wherein the specific medium area is a carpet covered area; the preset planning path is an arcuate path;
the intensity of the ultrasonic reflected signal received by the ultrasonic sensor is a reflected signal of the ultrasonic on the surface of the robot walking environment, and the level value is obtained through analog-to-digital conversion; the walking environment of the robot comprises the specific medium area and the surface of the obstacle.
19. The method according to claim 1, wherein in the step S5, after the robot determines that the robot walks to the corner point, the corner point is updated to the current location point of the robot, and then step S2 is performed, and when step S2 is performed, the next preset target point and the next specific medium partition are obtained according to the determination method for determining the current preset target point and the current specific medium partition according to the current location point of the robot, 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. The robot is characterized by being provided with at least one inertial sensor, at least two ultrasonic sensors and at least one processor, wherein the at least two ultrasonic sensors are fixedly arranged on two sides of the bottom of the robot and are positioned on two sides of the central axis of the robot, and the central axis of the robot is parallel to the walking direction; the inertial sensor and the ultrasonic sensor are electrically connected with the processor;
the processor is configured to control a robot to perform the robot control method of any one of claims 1 to 19.
21. A chip on which a program is stored, characterized in that the program, when executed by the chip, implements the robot control method according to any one of claims 1 to 19.
CN202210392569.1A 2022-04-15 2022-04-15 Robot control method based on specific medium area, robot and chip Pending CN116942018A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210392569.1A CN116942018A (en) 2022-04-15 2022-04-15 Robot control method based on specific medium area, robot and chip

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210392569.1A CN116942018A (en) 2022-04-15 2022-04-15 Robot control method based on specific medium area, robot and chip

Publications (1)

Publication Number Publication Date
CN116942018A true CN116942018A (en) 2023-10-27

Family

ID=88443065

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210392569.1A Pending CN116942018A (en) 2022-04-15 2022-04-15 Robot control method based on specific medium area, robot and chip

Country Status (1)

Country Link
CN (1) CN116942018A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN118484008A (en) * 2024-07-11 2024-08-13 杭州涂鸦信息技术有限公司 Robot path planning method and device, electronic equipment and storage medium

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN118484008A (en) * 2024-07-11 2024-08-13 杭州涂鸦信息技术有限公司 Robot path planning method and device, electronic equipment and storage medium

Similar Documents

Publication Publication Date Title
US11960304B2 (en) Localization and mapping using physical features
CN109997089B (en) Ground processing machine and ground processing method
EP3564769B1 (en) Route planning method for intelligent robot
US11832774B2 (en) Method for detecting skidding of robot, mapping method and chip
JP7352318B2 (en) Robot general-purpose charging stand return charging control method, chip and robot
CN111596662B (en) Method for judging one circle along global working area, chip and visual robot
KR0168189B1 (en) Control method and apparatus for recognition of robot environment
US20180206688A1 (en) Automatic Cleaner and Controlling Method of the Same
CN107678429B (en) Robot control method and chip
CN111090282A (en) Obstacle avoidance method for robot, robot and device
KR20200127019A (en) How to reposition the robot
CN111067432B (en) Determination method for charging working area of charging pile of sweeper and sweeper
CN108415432A (en) Localization method of the robot based on straight flange
CN113475977B (en) Robot path planning method and device and robot
CN113110497A (en) Navigation path-based edge obstacle-detouring path selection method, chip and robot
CN116942018A (en) Robot control method based on specific medium area, robot and chip
CN111897336B (en) Robot edge behavior ending judging method, chip and robot
CN116954205A (en) Robot walking environment detection method, walking control method, robot and chip
CN116953710A (en) Robot repositioning method based on specific medium area, robot and chip
CN115755881A (en) Ground environment motion planning method based on ultrasonic waves
CN114355871A (en) Self-walking device and control method thereof
CN116954204A (en) Walking control method of robot in specific medium area
WO2024159849A1 (en) Operation method for autonomous operation device, and autonomous operation device
CN116069010A (en) Robot suspension judging method based on laser points, map updating method and chip
CN118394071A (en) Method for transition and planning between stairs and rest platform of stair cleaning robot based on 2D radar

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination