Turning control method of D-type robot based on obstacle contour

Through the turning control method based on the obstacle profile, using linear laser sensor and rotation angle calculation, the problem of collision with the wall when turning is solved, and the robot is walking parallel to the linear obstacle is achieved.

CN118319185BActive Publication Date: 2025-02-14AMICRO SEMICONDUCTOR CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202310016065.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-01-06
Publication Date
2025-02-14
Estimated Expiration
2043-01-06

AI Technical Summary

Technical Problem

When turning, D-type sweeping robots are prone to collision with the wall due to the front side projection, and it is difficult for the prior art to effectively avoid such collisions.

Method used

The turning control method based on the obstacle profile is adopted, and the linear profile of the obstacle in front is extracted through a linear laser sensor, the rotation angle and head margin are calculated, and the robot position is adjusted to avoid impact.

Benefits of technology

The D-type robot avoids collision with linear obstacles when turning, ensuring that the robot can walk parallel to the linear profile, reducing the complexity of obstacle avoidance calculations.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118319185B_ABST
    Figure CN118319185B_ABST
Patent Text Reader

Abstract

The present application discloses a turning control method for a D-type robot based on an obstacle contour, the turning control method for the D-type robot comprising: step S1, the D-type robot uses a line laser sensor to extract the straight contour of the obstacle in front, and then according to the straight contour, the D-type robot calculates the rotation angle required for the side of the head of the robot to turn to be parallel to the straight contour; step S2, based on the rotation angle and the body size parameters of the D-type robot, the D-type robot calculates the head margin required to be adjusted before turning; wherein the head margin is expressed as the difference between the straight-line distance from the rotation center to the straight contour and the straight-line distance from the rotation center to the front end of the head in the vertical direction from the rotation center to the straight contour required for the D-type robot to turn; step S3, based on the head margin, the D-type robot adjusts its position, and then turns according to the rotation angle until the side of the head of the D-type robot is parallel to the straight contour.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The invention relates to the field of robots, and in particular to a turning control method of a D-type robot based on obstacle profiles. Background Art

[0002] A sweeping robot, also known as an automatic sweeper, smart vacuum cleaner, robot vacuum cleaner, etc., is a type of smart home appliance that can automatically clean the floor in the room with a certain degree of artificial intelligence. Generally, it uses brushing and vacuuming to absorb the debris on the ground into its own garbage storage box, thereby completing the function of floor cleaning. Generally speaking, robots that complete sweeping, vacuuming, and mopping are also collectively classified as sweeping robots. The current sweeping robots are roughly divided into round sweeping robots and D-type sweeping robots. The overall shape of the D-type sweeping robot is a combination of a circle and a rectangle.

[0003] Before the D-type sweeping robot walks along the outline of the wall, when the front of the D-type sweeping robot detects the wall, in order to start walking along the outline of the wall, the D-type sweeping robot chooses to turn directly. Due to insufficient adjustable space, the front side protrusions of the D-type sweeping robot (such as the protrusion structure at the junction of the front edge and the right edge of the body) are prone to hit the wall. Summary of the invention

[0004] The present application discloses a D-type robot turning control method based on obstacle contours, and the specific technical solution is as follows:

[0005] A D-type robot turning control method based on obstacle contour, the D-type robot turning control method comprising: step S1, the D-type robot uses a line laser sensor to extract the straight contour of the obstacle in front, and then according to the straight contour, the D-type robot calculates the rotation angle required for the side of the head of the D-type robot to turn to be parallel to the straight contour; step S2, based on the rotation angle and the body size parameters of the D-type robot, the D-type robot calculates the head margin required to be adjusted before turning; wherein the head margin is expressed as the difference between the straight line distance from the rotation center to the straight line contour and the straight line distance from the rotation center to the front end of the head in the vertical direction from the rotation center to the straight line contour required for the D-type robot to turn; step S3, based on the head margin, the D-type robot adjusts its position, and then turns according to the rotation angle until the side of the head of the D-type robot is parallel to the straight line contour.

[0006] Furthermore, the D-type robot comprises a rectangular head, a semicircular body and two symmetrically arranged wheels, the two symmetrically arranged wheels are connected by a wheel axle, and the wheel axle is arranged at the dividing line between the head and the body; the two symmetrically arranged wheels are arranged as a wheel on the side close to the side obstacle and a wheel on the side away from the side obstacle; wherein, the body center of the D-type robot is the center of the wheel axle, the convex point on one side of the head of the D-type robot is the vertex of one side of the front end of the rectangular head, and the front end of the rectangular head points to the forward direction of the D-type robot; the semicircular The width of the D-shaped body is equal to the side length of the contour line parallel to the wheel axle in the rectangular head; the maximum vertical distance from the edge of the semicircular body to the wheel axle is the maximum radius of the fuselage, and the maximum radius of the fuselage is greater than or equal to half of the width of the fuselage; wherein, the rotation center required for the D-type robot to turn left is set at the assembly position of the wheel on the left side of the D-type robot, or, the rotation center required for the D-type robot to turn right is set at the assembly position of the wheel on the right side of the D-type robot; wherein, the vertical distance from the rotation center to the front end of the head is set to the maximum radius of the head.

[0007] Furthermore, the step S1 includes: the D-type robot obtains point cloud data of the obstacle in front through a line laser sensor, and then uses the least squares method to perform linear fitting on the point cloud data to obtain the straight line profile, wherein the straight line profile is a straight line representing the position of the obstacle in front; a perpendicular line to the straight line profile is taken, and then the angle between the perpendicular line and the positive direction of the X-axis is set to the rotation angle required for the side of the nose of the D-type robot to turn to be parallel to the straight line profile; wherein the direction toward the side obstacle of the D-type robot and perpendicular to the side of the nose of the D-type robot is taken as the positive direction of the X-axis; the positive direction of the X-axis is parallel to the wheel axle; when the side of the nose of the D-type robot is parallel to the straight line profile, the straight line profile is set perpendicular to the positive direction of the X-axis.

[0008] Furthermore, the method for calculating the angle between the straight line profile and the positive direction of the X-axis is as follows: take any two points on the straight line profile to calculate the slope of the straight line profile, and then use the inverse tangent function to convert the slope of the straight line profile into the angle between the straight line profile and the positive direction of the X-axis.

[0009] Furthermore, under the premise that the angle between the vertical line and the positive direction of the X-axis is set to the first detection angle, and the angle between the straight line profile and the positive direction of the X-axis is set to the second detection angle, the following holds true: when the second detection angle is within the angle range of an obtuse angle, the first detection angle is equal to the angle difference obtained by subtracting 90 degrees from the second detection angle; when the second detection angle is within the angle range of an acute angle, the first detection angle is equal to the angle sum obtained by adding 90 degrees to the second detection angle; when the straight line profile is parallel to the positive direction of the X-axis, the first detection angle is equal to 90 degrees.

[0010] Further, in the step S3, the method for turning according to the rotation angle includes: taking the assembly position of the wheel on the side away from the side obstacle as the rotation center, setting the sum of the straight-line distance between the wheel on the side away from the side obstacle and the convex point on the side of the head of the D-type robot close to the side obstacle and the preset spacing as the rotation radius; the side of the head of the D-type robot close to the side obstacle rotates around the rotation center by the rotation angle until it is parallel to the straight line profile, and determining that the distance between the side of the head of the D-type robot close to the side obstacle and the straight line profile is equal to the difference between the rotation radius and the body coverage radius, wherein the body coverage radius is set to be equal to the vertical distance from the rotation center to the side of the head of the D-type robot close to the side obstacle.

[0011] Furthermore, during the turning process, the wheel whose assembly position is set as the rotation center remains unchanged, and the wheel on the side close to the side obstacle rotates around the rotation center by the rotation angle in a preset clockwise direction, and the wheel on the side close to the side obstacle shortens the vertical distance with the straight line contour in a preset clockwise direction; wherein, after the D-type robot rotates around the rotation center by the rotation angle, the side obstacle becomes an obstacle where the straight line contour is located, so that the D-type robot starts to walk along the straight line contour.

[0012] Further, when the straight line profile is parallel to the positive direction of the X-axis, the nose margin required to be adjusted before turning in step S2 is equal to the difference between the rotation radius and the maximum radius of the nose; wherein, when the nose margin is expressed as the difference between the straight-line distance from the rotation center to the straight line profile and the straight-line distance from the rotation center to the front end of the nose in the vertical direction from the rotation center to the straight line profile required for the D-type robot to turn, the straight-line distance from the rotation center to the straight line profile in the vertical direction from the rotation center to the straight line profile required for the D-type robot to turn is adjusted to be equal to the rotation radius in step S3, and the straight-line distance from the rotation center to the front end of the nose in the vertical direction from the rotation center to the straight line profile required for the D-type robot to turn is adjusted to be equal to the maximum radius of the nose in step S3; wherein, the vertical direction of the wheel axle is parallel to the current forward direction of the D-type robot.

[0013] Furthermore, when the second detection angle is within the acute angle range, the calculation method of the nose margin in step S2 includes: recording the product of half the length of the wheel axle and the sine value of the second detection angle as the first vertical distance; marking the straight-line distance between the obstacle contour point in the vertical direction of the wheel axle and the center of the fuselage as the center detection distance, wherein the obstacle contour point in the vertical direction of the wheel axle is located on the straight line segment where the straight line contour is located; recording the product of the center detection distance and the cosine value of the second detection angle as the second vertical distance; and then setting the difference between the second vertical distance and the first vertical distance as the distance from the rotation center to the straight line. The vertical distance of the contour is used as the straight-line distance from the rotation center to the straight-line contour in the vertical direction from the rotation center to the straight-line contour required for the D-type robot to turn; at the same time, the ratio between the maximum radius of the nose and the cosine value of the second detection angle is set to the straight-line distance from the rotation center to the front end of the nose in the vertical direction from the rotation center to the straight-line contour required for the D-type robot to turn; when the vertical distance from the rotation center to the straight-line contour is set to be equal to the rotation radius, the difference between the straight-line distance from the rotation center to the straight-line contour and the straight-line distance from the rotation center to the front end of the nose in the vertical direction from the rotation center to the straight-line contour required for the D-type robot to turn is set as the nose margin.

[0014] Further, before turning in step S3, the D-type robot adjusts its position until the line laser sensor installed at the front end of its nose detects a first target distance in the vertical direction of the wheel axle; wherein the first target distance is the difference between the center detection distance and the maximum radius of the nose; the source of the first target distance includes: setting the product between half of the length of the wheel axle and the tangent value of the second detection angle as the first distance value; controlling the ratio between the rotation radius and the cosine value of the second detection angle plus the first distance value, and then subtracting the maximum radius of the nose from the sum value to obtain the first target distance, so as to indicate that when the vertical distance from the rotation center to the straight line contour is set equal to the rotation radius, the margin between the front end of the nose and the straight line contour; wherein the sum value obtained by adding the ratio between the rotation radius and the cosine value of the second detection angle plus the first distance value is equal to the center detection distance; wherein, the distance detected by the line laser sensor installed at the front end of the nose in the vertical direction of the wheel axle is the vertical distance from the obstacle contour point on the straight line contour to the front end of the nose in the vertical direction of the wheel axle.

[0015] Further, in step S3, based on the margin, the method for adjusting the position of the D-type robot includes: when the vertical distance from the convex point on one side of the nose to the straight contour is equal to the preset spacing, and the second detection angle is within the angle range of an acute angle, the D-type robot retreats a first preset anti-collision distance; wherein the first preset anti-collision distance is equal to the difference between the first target distance and the first preset vertical distance, so as to prevent the convex point on one side of the nose from colliding with the straight contour during turning; wherein the first preset vertical distance is equal to the sum of the ratio of the preset spacing to the cosine value of the second detection angle and the first distance value.

[0016] Furthermore, when the second detection angle is within the range of an obtuse angle, the calculation method of the nose margin in step S2 includes: recording the product of half the length of the wheel axle and the sine value of the second detection angle as a third vertical distance; detecting the straight-line distance between the obstacle contour point in the vertical direction of the wheel axle and the center of the fuselage by the line laser sensor installed at the front end of the nose, and marking the straight-line distance between the obstacle contour point in the vertical direction of the wheel axle and the center of the fuselage as the center detection distance, wherein the obstacle contour point in the vertical direction of the wheel axle is located on the straight line segment where the straight line contour is located; recording the product of the center detection distance and the cosine value of the second detection angle as a fourth vertical distance; and then multiplying the third vertical distance by the fourth vertical distance. The sum of the distances is set as the vertical distance from the rotation center to the straight contour, as the straight-line distance from the rotation center to the straight contour and the straight-line distance from the rotation center to the front end of the nose in the vertical direction from the rotation center to the straight contour required for the D-type robot to turn; at the same time, the ratio between the maximum radius of the nose and the sine value of the first detection angle is set as the straight-line distance from the rotation center to the front end of the nose in the vertical direction from the rotation center to the straight contour required for the D-type robot to turn; when the vertical distance from the rotation center to the straight contour is adjusted to be equal to the rotation radius, the difference between the straight-line distance from the rotation center to the straight contour and the straight-line distance from the rotation center to the front end of the nose in the vertical direction from the rotation center to the straight contour required for the D-type robot to turn is set as the nose margin.

[0017] Further, when the nose margin is expressed as the difference between the straight-line distance from the rotation center to the straight-line contour and the straight-line distance from the rotation center to the front end of the nose in the vertical direction from the rotation center to the straight-line contour required for the D-type robot to turn, before turning in step S3, the D-type robot adjusts its position until the line laser sensor installed at the front end of its nose detects a second target distance in the vertical direction of the wheel axle; wherein the second target distance is the difference between the center detection distance and the maximum radius of the nose; the source of the second target distance includes: setting the product of half the length of the wheel axle and the tangent value of the second detection angle as the second distance value; controlling The second target distance is obtained by subtracting the second distance value from the ratio of the rotation radius to the cosine value of the second detection angle, and then subtracting the maximum radius of the nose from the difference obtained to represent the margin between the front end of the nose and the straight contour when the vertical distance from the rotation center to the straight contour is set equal to the rotation radius; wherein, the distance detected by the line laser sensor installed at the front end of the nose in the vertical direction of the wheel axle is the vertical distance from the obstacle contour point on the straight contour to the front end of the nose in the vertical direction of the wheel axle; the difference obtained by subtracting the second distance value from the ratio of the rotation radius to the cosine value of the second detection angle is equal to the center detection distance.

[0018] Further, in step S3, based on the margin, the method for adjusting the position of the D-type robot includes: when the vertical distance from the convex point on one side of the nose to the straight contour is equal to the preset spacing, and the second detection angle is within the angle range of an obtuse angle, the D-type robot retreats a first preset anti-collision distance; wherein the first preset anti-collision distance is the difference between the second target distance and the second preset vertical distance, so as to prevent the convex point on one side of the nose from colliding with the straight contour during turning; wherein the second preset vertical distance is equal to the difference between the ratio of the preset spacing to the cosine value of the second detection angle and the second distance value.

[0019] Further, the method for the D-type robot to retreat a first preset anti-collision distance comprises: the D-type robot controls the wheel on the side close to the side obstacle to retreat until the angle formed by the positions before and after the wheel axle moves reaches a preset angle, stops retreating, and then controls the wheel on the other side to retreat until the wheel axle is parallel to the wheel axle of the D-type robot before adjusting the position, thereby completing the margin adjustment between the side of the D-type robot and the side obstacle; wherein the arc cosine value of the ratio of the difference between the length of the wheel axle and the side margin to the length of the wheel axle is set as the preset angle; after completing the margin adjustment between the side of the D-type robot and the side obstacle, calculating the change value of the straight-line distance from the body center of the D-type robot to the straight-line contour in the vertical direction of the wheel axle, and subtracting the first preset anti-collision distance from the change value to obtain a position adjustment difference; wherein the change value is equal to the product between the length of the wheel axle and the sine value of the preset angle; and judging whether the position adjustment difference is greater than a value of 0, if so, the D-type robot advances by the position adjustment difference, otherwise, the D-type robot retreats by the position adjustment difference.

[0020] Further, the calculation method of the side margin includes: when the first detection angle is greater than or equal to 90 degrees, the side margin is equal to the difference between the longest side center distance and half of the fuselage width; when the first detection angle is less than the reference turning angle, the side margin is equal to the difference between the longest side center distance and half of the fuselage width; under the premise that the first detection angle is less than 90 degrees, when the first detection angle is greater than or equal to the reference turning angle, the cosine value of the angle difference between the reference turning angle and the first detection angle is multiplied by the longest side center distance, and then the product is subtracted from half of the fuselage width, and then the difference obtained by subtraction is set as the side margin; wherein, the sum of the straight-line distance between the fuselage center of the D-type robot and the convex point on one side of the nose and the preset spacing is set as the longest side center distance; wherein, the arc cosine value of the ratio of half of the fuselage width to the longest side center distance is set as the reference turning angle, and the reference turning angle is less than 90 degrees.

[0021] The technical effect of the present invention is that: compared with the prior art, the method described in the present invention determines the position of the linear obstacle in front or the linear profile of the obstacle through the line laser sensor carried by the D-type robot with a front and rear circle, so as to obtain the rotation angle required for walking along the linear obstacle or linear profile in front, and uses the wheel as the rotation center, the linear distance from the wheel to the nose convex point, and the vertical distance from the wheel to the side of the nose to calculate the required margin before turning and adjust the position of the D-type robot, so as to obtain the vertical distance required to maintain from the wheel to the obstacle when turning, and avoid the front rectangular shape of the D-type robot directly colliding with the linear profile due to insufficient space. Thus, the robot uses the differential rotation of the left and right wheels to be parallel to the straight wall, and there are few space adjustment actions generated in the process of controlling the front protrusion not to collide with the obstacle. Basically, the triangular geometric relationship formed between the nose and the fuselage is used for conversion, and the obstacle avoidance calculation cost is small. BRIEF DESCRIPTION OF THE DRAWINGS

[0022] Figure 1 This is a schematic diagram of the D-type robot moving along the current forward direction to the obstacle #11; the straight position of obstacle #11 is perpendicular to the current forward direction of the robot, and the rotation angle required for the D-type robot to turn from the current forward direction until the right side of its nose is parallel to the straight position of the obstacle #11 in front (the straight line profile where H1 is located) is equal to 90 degrees.

[0023] Figure 2 It is a schematic diagram of the D-type robot moving along the current forward direction to the obstacle #21; in obstacle #21, the angle between the straight line position inclined upward from left to right and the current forward direction of the D-type robot is an acute angle, and the rotation angle required for the D-type robot to turn from the current forward direction until the right side of its nose is parallel to the straight line contour of the obstacle #21 in front (the straight line contour where H23, H22, and H21 are located) is equal to an obtuse angle; the X-axis direction shown in the figure is perpendicular to the current forward direction of the D-type robot.

[0024] Figure 3 It is a schematic diagram of the D-type robot moving along the current forward direction to the obstacle #31; in obstacle #31, the angle between the straight line position inclined downward from left to right and the current forward direction of the D-type robot is an obtuse angle, and the rotation angle required for the D-type robot to turn from the current forward direction until the right side of its nose is parallel to the straight line contour of the obstacle #31 in front (the straight line contour where H33, H32, and H31 are located) is equal to an acute angle; the X-axis direction shown in the figure is perpendicular to the current forward direction of the D-type robot.

[0025] Figure 4It is a schematic diagram of the straight line outline of the right side of the nose of the D-type robot parallel to the side obstacle, wherein the X-axis direction of the diagram is perpendicular to the current forward direction of the robot, and the current forward direction of the robot is perpendicular to the straight line position of the side obstacle. DETAILED DESCRIPTION

[0026] In order to more clearly illustrate the present invention, specific embodiments are given below for further explanation. In the following description, for illustration rather than for limitation, specific details such as specific system structure, technology and the like are proposed, so as to thoroughly understand the present application embodiments. However, it should be clear to those skilled in the art that the present application can also be implemented in other embodiments without these specific details. In other cases, the detailed description of well-known systems, devices, circuits and methods is omitted to prevent unnecessary details from hindering the description of the present application.

[0027] It should be understood that when used in this application, the term "comprising" indicates the presence of the described features, integral bodies, steps, operations, elements and / or components, but does not exclude the presence or addition of one or more other features, integral bodies, steps, operations, elements, components and / or their collections. It should also be understood that the term "and / or" used in this application refers to any combination of one or more of the associated listed items and all possible combinations, and includes these combinations.

[0028] As used in this application, the term "if" can be interpreted as "when" or "uponce" or "in response to determining" or "in response to detecting", depending on the context. Similarly, the phrase "if it is determined" or "if [described condition or event] is detected" can be interpreted as meaning "uponce it is determined" or "in response to determining" or "uponce [described condition or event] is detected" or "in response to detecting [described condition or event]", depending on the context.

[0029] In addition, in the description of the present application, the terms "first", "second", "third", etc. are only used to distinguish the description and cannot be understood as indicating or implying relative importance. The reference to "one embodiment" or "some embodiments" described in the specification of the present application means that one or more embodiments of the present application include specific features, structures or characteristics described in conjunction with the embodiment. Therefore, the statements "in one embodiment", "in some embodiments", "in some other embodiments", "in some other embodiments", etc. that appear in the differences in this specification do not necessarily refer to the same embodiment, but mean "one or more but not all embodiments", unless otherwise specifically emphasized in other ways. The terms "including", "comprising", "having" and their variations all mean "including but not limited to", unless otherwise specifically emphasized in other ways.

[0030] against Figure 1 The right side protrusion A (the protrusion structure at the junction of the front edge and the right edge of the head 1 shown in the figure) of the D-type robot (a combination of the head 1 and the body 2) is easy to hit the wall when turning to walk along the wall. Therefore, when the D-type robot recognizes the position of a linear obstacle or a linear outline of an obstacle in the current forward direction, it needs to adjust the margin (generally the linear distance between the front end of the head and the corresponding position in the straight line) and set the turning angle, and based on this, it performs the backward and turning actions in turn to prevent collision with the obstacle. It should be noted that for straight obstacles or straight profiles of obstacles, the straight obstacles can be straight walls, boxes, door sills, etc., and the straight profiles of obstacles can be partial contour lines of straight walls, boxes, and door sills. When the D-type robot approaches such obstacles, the line laser sensor installed at the front end of the D-type robot can collect the corresponding laser point cloud in the forward direction, and identify it as a straight obstacle (the entire obstacle is detected) or a straight profile of the obstacle (a local area of ​​the obstacle is detected) through fitting analysis. It can even distinguish between straight profiles and curved profiles, among which straight profiles exist in straight obstacles and are detected.

[0031] As an embodiment, a D-type robot turning control method based on obstacle profile is disclosed, and the execution subject of the D-type robot turning control method is Figures 1 to 4 The D-type robot composed of a head 1 and a body 2, specifically, Figures 1 to 4 The D-type robot shown is generally composed of a rectangular head 1 and a semicircular body 2; wherein, at least one line laser sensor is installed at the front end of the head 1, and multiple line laser sensors can be sequentially arranged on both sides starting from the center position of the front side of the head 1; the rectangular head 1 and the semicircular body 2 are separated by an axle 3 as a dividing line between the head and the body. In this embodiment, the turning control method of the D-type robot includes:

[0032] Step S1, the D-type robot uses a line laser sensor to extract the straight line contour of the obstacle in front, and then according to the straight line contour, the D-type robot calculates the rotation angle required for the side of the head to turn to be parallel to the straight line contour, wherein the straight line contour of the obstacle in front can be a local contour line of a straight obstacle, or a straight line obstacle that has been completely detected; if the D-type robot chooses to walk along the contour line of the obstacle on the left, the D-type robot will turn until the left side of its head is parallel to the straight line contour, and a right rotation angle will be generated at this time; if the D-type robot chooses to walk along the contour line of the obstacle on the right, the D-type robot will turn until the right side of its head is parallel to the straight line contour, and a left rotation angle will be generated at this time.

[0033] Step S2, based on the rotation angle and the body size parameters of the D-type robot, the D-type robot calculates the nose margin that needs to be adjusted before turning, that is, in order to achieve that the side of the nose is parallel to the straight line contour, the D-type robot controls the straight line contour of the D-type robot relative to the obstacle in front by moving forward or backward before starting to turn to adjust the nose margin. In this embodiment, the nose margin is calculated starting from the rotation center, and the nose margin is expressed as the difference between the straight line distance from the rotation center to the straight line contour and the straight line distance from the rotation center to the front end of the nose in the vertical direction from the rotation center to the straight line contour required for the D-type robot to turn.

[0034] It should be noted that the vertical direction of the wheel axle can be understood as being parallel to the central axis of the D-type robot or the current forward direction of the robot.

[0035] In this embodiment, in order to facilitate the control of machine rotation, this embodiment selects one side wheel of the D-type robot as the rotation center required for turning, then the shortest distance between the rotation center and the straight line profile is the vertical direction from the rotation center to the straight line profile, and the straight-line distance from the rotation center to the straight line profile can be understood as the vertical distance; in the vertical direction from the rotation center to the straight line profile required for the D-type robot to turn, the straight-line distance from the rotation center to the front end of the nose is understood as the straight-line distance occupied by the nose of the D-type robot in the vertical direction from the rotation center to the straight line profile required for the D-type robot to turn.

[0036] Step S3, based on the nose margin, the D-type robot adjusts its position, and the position adjustment here can also include adjusting the margin between the side of the D-type robot and the side obstacle, wherein the margin between the side of the D-type robot and the side obstacle can be converted based on the body size parameters of the D-type robot; then turn according to the rotation angle until the side of the nose of the D-type robot is parallel to the straight line contour. Therefore, step S3 is that the D-type robot first uses the nose margin calculated in step S2 to adjust the current position to prevent the convex point of the nose (such as the vertex A shown in the figure) from colliding with the obstacle in front (including the straight line segment contour) during the turning process; the D-type robot uses the rotation angle calculated in the aforementioned step S1 to turn.

[0037] After completing the turning action of the corresponding rotation angle, if the D-type robot continues to detect the same type of straight contour in the forward direction, it adopts the method of the aforementioned steps S1 to S3 to turn to the side of the nose until it is parallel to the straight contour. On this basis, the D-type robot walks along the straight obstacle or the straight contour of the obstacle, that is, it continues to walk along the wall, which is recorded as walking along the edge. Moreover, during this walking along the edge, the D-type robot controls the protruding part of the front end not to collide with the non-linear obstacle or the curved contour according to the obstacle information marked by the line laser sensor at the front end, including ensuring that the protruding part of the front end bypasses the obstacle contour point closest to the nose.

[0038] In this embodiment, combined with Figures 1 to 4 It can be seen that the D-type robot includes a rectangular head 1, a semicircular body 2 and two symmetrically arranged wheels L and R, the two symmetrically arranged wheels L and R are connected by a wheel axle 3, and the wheels L and the wheels R are rotatably assembled at the left and right ends of the wheel axle 3, that is, the wheels L and the wheels R are arranged with corresponding assembly positions at the dividing line between the head 1 and the body 2, wherein the wheel axle 3 is arranged at the dividing line between the head 1 and the body 2; the two symmetrically arranged wheels are arranged as the wheel L on the side close to the side obstacle and the wheel R on the side away from the side obstacle; corresponding to Figure 1 In the example, for the D-type robot, the side obstacle is obstacle #12, and the obstacle in front of the robot that can be extracted into a straight line outline is a straight line obstacle #11; corresponding to Figure 2 In the example, for the D-type robot, the side obstacle is obstacle #22, and the obstacle in front of the robot that can be extracted into a straight line outline is a straight line obstacle #21; corresponding to Figure 3 In the figure, for the D-type robot, the side obstacle is obstacle #32, and the front obstacle whose straight line outline can be extracted is straight line obstacle #31.

[0039] Combination Figures 1 to 4 It can be seen that the center O of the D-type robot's body is the center O of the axle 3, and the convex point A on one side of the head 1 of the D-type robot is the vertex of one side of the front end of the rectangular head 1. The front end of the rectangular head 1 points to the current forward direction of the D-type robot, and the current forward direction is the direction indicated by the single arrow in the figure. The width of the semicircular body is equal to the side length of the contour line of the rectangular head 1 parallel to the axle 3, and is also equal to twice the length of D4; the maximum vertical distance from the edge of the semicircular body 2 to the axle 3 is the maximum radius of the body, that is, the straight-line distance between the farthest point of the lower edge of the semicircular body 2 shown in the figure from the center position O of the axle 3 and the position O. The length of the maximum radius of the body is Figures 1 to 3It is marked as P0, which can be marked as the radius length of the circle where the fuselage 2 is located; wherein the maximum radius of the fuselage is greater than or equal to half of the fuselage width D4.

[0040] In this embodiment, the rotation center required for the D-type robot to turn left is set at the assembly position of the wheel on the left side of the D-type robot, or the rotation center required for the D-type robot to turn right is set at the assembly position of the wheel on the right side of the D-type robot; see Figure 1 It can be seen that the side obstacle #12 is located on the right side of the D-type robot, and the rotation center required for the D-type robot to turn left is the assembly position of the wheel L on the left side of the D-type robot. At this time, the wheel R on the right side of the D-type robot is the wheel assembled on the side of the head 1 of the D-type robot close to the side obstacle #12, and the wheel L on the left side of the D-type robot is the wheel assembled on the side of the head 1 of the D-type robot away from the side obstacle #12. In some other embodiments, when the rotation center required for the D-type robot to turn right is set at the assembly position of the wheel on the right side of the D-type robot, the wheel R on the right side of the D-type robot is the wheel assembled on the side of the head 1 of the D-type robot close to the side obstacle, and the wheel L on the left side of the D-type robot is the wheel assembled on the side of the head 1 of the D-type robot away from the side obstacle. Therefore, in this embodiment, the wheel R on the right side of the D-type robot or the wheel L on the left side will be set as the rotation center. In some other embodiments, the body center O can also be selected as the rotation center. In addition, the vertical distance from the rotation center to the front end of the nose is set to the maximum radius of the nose, and the length of the maximum radius of the nose is Figures 1 to 3 In this embodiment, the body center O, the length of the axle 3, the body width, the maximum body radius P0, the maximum head radius D3, the distance between the body center O of the D-type robot and the convex point on one side of the head of the D-type robot, and the distance between the rotation center and the convex point on one side of the head of the D-type robot constitute the body size parameters of the D-type robot.

[0041] In some embodiments, the fuselage 2 is circular in shape. After being assembled with the rectangular head 1, a portion of the left and right sides of the fuselage 2 is cut off so that its edges fit together with the edges of the left and right sides of the head 1. The fuselage 2 will reveal a semicircular structure outward relative to the head 1, and is exposed in the opposite direction of the robot's forward direction; wherein the fuselage 2 belongs to the rear part of the frame of the D-type robot, and the head 1 belongs to the front part of the frame of the D-type robot. Because the fuselage 2 is a circular structure with two sides cut off, the fuselage center O of the D-type robot is the center of the body 2 before cutting; the vertex on one side of the head of the D-type robot is the vertex on the front side of the rectangular head 1, and the midpoint of the axle can be set as the center of the body 2. Then the straight-line distance between the vertex A on the right side of the head of the D-type robot shown in the figure and the fuselage center O of the D-type robot is set as the maximum radius of the D-type robot, which is also equivalent to: starting from the midpoint O of the axle, the longest distance to the boundary of the head 1 of the D-type robot. If the head 1 and body 2 of the D-type robot are combined into one, the maximum radius of the D-type robot is equivalent to the longest distance from the midpoint of the wheel axle to the boundary of the robot head 1; wherein the front of the rectangular head 1 points to the forward direction of the D-type robot, that is, the direction of the arrow shown in the figure.

[0042] On this basis, taking the assembly position of the wheel on the side away from the side obstacle as the rotation center, the sum of the straight-line distance between the wheel on the side away from the side obstacle and the convex point on the side of the D-type robot's head close to the side obstacle and the preset spacing is set as the rotation radius, and turning is performed. Preferably, the rotation radius is used to represent the longest straight-line distance from the body center O of the D-type robot to the boundary of the head 1 of the D-type robot, which can prevent the convex point on one side of the head of the D-type robot from being blocked by the contour point closest to the convex point among the obstacles, thereby overcoming the problem of insufficient adjustment space on the front side of the head of the D-type robot and directly colliding with the obstacle.

[0043] In some embodiments, the radius of the semicircular body 2 is represented by a vertical distance D4 from the body center O of the D-shaped robot to the side position of the head 1 of the D-shaped robot (which can be attributed to a position point on the right side of the rectangle of the head 1 and located on the X-axis, and the right side of the head 1 is perpendicular to the X-axis), and the vertical distance is equivalent to half of the width of the body or half of the width of the head; the side of the rectangular head 1 is perpendicular to the wheel axle; Figure 1As shown, the straight-line distance between the center O of the D-type robot and the center position of the bottom edge of the D-type robot's body 2 is expressed as the maximum body radius of the D-type robot, and the maximum body radius of the D-type robot is set to be greater than half of the body width or half of the head width. Preferably, half of the body width is set to 156.25 mm, and the maximum radius of the D-type robot's body 2 is set to 163.5 mm. It can be used to set the corresponding margins (including the margin between the head and the obstacle) to reduce the probability of the body 2 touching the side obstacle #12 during the process of rotating in the direction away from the side obstacle #12.

[0044] In some embodiments, the body center O of the D-type robot can be the axle center of the D-type robot. The axle center of the D-type robot is set at the midpoint of the dividing line between the body 2 and the head 1 of the D-type robot. If a universal wheel is installed in the middle of the body 2 of the robot, a wheel can be installed on each side of the head 1 of the D-type robot. When a speed difference is generated between the two wheels, the D-type robot turns. On the basis of adjusting the distance between the vertex on one side of the head of the D-type robot and the obstacle, or adjusting the distance between the wheel on one side of the body and the obstacle, the vertex A on one side of the head 1 of the D-type robot can be guided not to touch the obstacle during the rotation process. The rotation speed of the wheel on the side close to the obstacle (the wheel installed on the side of the D-type robot on the obstacle) is greater than the rotation speed of the wheel on the side away from the obstacle, so as to drive the D-type robot to rotate around a specific rotation center and a certain angle in a certain clockwise direction to bypass the obstacle or make the side parallel to the straight line contour of the obstacle.

[0045] Preferably, the base of the D-type robot is provided with at least one roller brush, which is located at the front end of the head 1 and rotates in a direction parallel to the ground, so as to clean by friction with the ground. The two wheels of the D-type robot that are symmetrically arranged on the left and right sides can be arranged on the rectangular head 1, so as to form a three-point support with the universal wheel installed on the semicircular body 2 to support the D-type robot to walk on the cleaning surface. In particular, the overall center of gravity of the D-type robot can be located on the rotation axis of the two wheels (i.e., the axis where the wheel axle is located), so that the center of the body coincides with the projection position of the overall center of gravity on the base; the overall center of gravity of the D-type robot can also be located in the area between the wheel axle and the universal wheel, but can be closer to the wheel axle 3.

[0046] As an embodiment, the step S1 includes: the D-type robot obtains point cloud data of the obstacle in front through a line laser sensor, and then uses the least squares method to perform linear fitting on the point cloud data to obtain the straight line profile, wherein the straight line profile is a straight line representing the position of the obstacle in front, thereby determining the distribution position of the straight line profile among the obstacles in front within the detectable range, and the extension direction of the straight line profile (the slope information can be further calculated), which is regarded as determining the position of the obstacle in front. Corresponding to Figure 1 In the example, the coordinate information of the position point H1 and the position information of the straight line profile (the perpendicular line of the straight line OH1) where the position point H1 is located can be detected to indicate the position information of the straight obstacle in front; corresponding to Figure 2 , the coordinate information of the position point H22 and the coordinate information of the position point H21 in the detectable area are obtained, and the position distribution information of the straight line contour where the position point H22, the position point H21 and other detected point clouds are located is also obtained to indicate the position information of the straight line obstacle in front; corresponding to Figure 3 The coordinate information of the position point H32 and the coordinate information of the position point H33 located in the detectable area are obtained, and the position distribution information of the straight line contour where the position point H32, the position point H33 and other detected point clouds are located is also obtained to indicate the position information of the straight obstacle ahead.

[0047] Then, take the perpendicular line of the straight contour, and then set the angle between the perpendicular line and the positive direction of the X-axis to the rotation angle required for the side of the nose of the D-type robot to turn to be parallel to the straight contour. Preferably, in the laser map constructed by the D-type robot, the perpendicular line is set to be perpendicular to the positive direction of the X-axis of the laser map, and the deflection angle of the perpendicular line is used to represent the angle of rotation of the D-type robot. The positive direction of the X-axis is parallel to the wheel axle. In some other embodiments, the direction perpendicular to the wheel axle can also be used as the positive direction of the X-axis. The positive direction of the X-axis here is used to mark the angle feature on the straight contour, has a reference significance for angle measurement, is not an absolute direction, and can change with the change of the map coordinate system required to be constructed by the D-type robot.

[0048] Corresponding to Figure 1 In the figure, the perpendicular line of the straight line profile is the line segment OH1, and the angle between the line segment OH1 and the positive direction of the X-axis is equal to 90 degrees; Figure 1 In the example, the direction toward the side obstacle #12 of the D-type robot and perpendicular to the side of the head 1 of the D-type robot is taken as the positive direction of the X axis. Figure 2 In the embodiment, the perpendicular line of the straight line profile is the line segment OH22, and the angle between the line segment OH22 and the positive direction of the X-axis is greater than 90 degrees; Figure 2In the example, the direction toward the side obstacle #22 of the D-type robot and perpendicular to the side of the head 1 of the D-type robot is taken as the positive direction of the X axis. Figure 3 In the embodiment, the perpendicular line of the straight line profile is the line segment OH31, and the angle between the line segment OH31 and the positive direction of the X-axis is less than 90 degrees; Figure 3 In the example, the direction toward the side obstacle #32 of the D-type robot and perpendicular to the side of the head 1 of the D-type robot is taken as the positive direction of the X-axis. Figure 4 In the embodiment, the side edge of the D-type robot's head is parallel to the straight line profile, and the straight line profile is perpendicular to the positive direction of the X-axis. The straight line profile can be from Figure 1 The straight line contour extracted from obstacle #11, or from Figure 2 The straight line contour extracted from obstacle #21, or from Figure 3 It should be noted that the current sweeping robot mainly uses the right edge, so the straight line contour extracted from the obstacle #31 of the present invention Figures 1 to 4 The embodiments are described by taking the obstacle on the right side as an example.

[0049] It should be noted that the D-type robot can obtain the distance information between the obstacle contour points closest to the fuselage center O through the line laser sensor installed at the front end, so the length of the vertical line of the straight line contour can be used to set the distance information between the straight walking obstacle detected in front and the D-type robot. Of course, when the assembly angle of the line laser sensor in the D-type robot changes, the distance information of the contour points distributed at the corresponding detection angle in the straight line contour can be obtained, and then converted into the position information marked as the straight line contour in the map.

[0050] In some embodiments, step S1 may use the least squares method to perform linear fitting on the point cloud data to obtain a linear representation of the point cloud data. Figures 1 to 3The straight line positions of the obstacles in front are shown as follows: the distribution positions of the straight line segments perpendicular to the line segment OH1 in the obstacle #11, the distribution positions of the line segments connecting the contour points H22 and H21, and the distribution positions of the line segments connecting the contour points H32 and H33, wherein the obstacles represented are all straight line obstacles, but the angles formed with respect to the positive direction of the X-axis are different. Preferably, it is possible to distinguish whether the obstacle in front is a straight line obstacle or a non-straight line obstacle (an obstacle surrounded by a curved contour line) within a certain length threshold range. For example, if the length of the straight line obtained by fitting processing is greater than a certain length threshold, it is determined that the collected point cloud data is derived from a straight line obstacle, that is, the obstacle in front is a straight line obstacle, belonging to a long straight obstacle, such as a straight wall, a box, a door sill, etc. Preferably, if the length of the straight line obtained by fitting processing is less than a certain length threshold, it is determined that the collected point cloud data is not derived from a straight line obstacle, that is, the obstacle in front is not a straight line obstacle, and is classified as a non-straight line obstacle.

[0051] On the basis of the above step S1, the angle between the straight line profile and the positive direction of the X-axis is calculated as follows: take any two points on the straight line profile to calculate the slope of the straight line profile, and then use the inverse tangent function to convert the slope of the straight line profile into the angle between the straight line profile and the positive direction of the X-axis. Figure 2 , take points H22(x0, y0) and H21(x1, y1) on the straight line contour representing the position of obstacle #22, substitute them into the preset formula to calculate the angle a between the straight line contour and the positive direction of the X-axis, the preset formula is a=arctan((y1-y0) / (x1-x0)), if a right angle is added or subtracted from the calculated angle a between the straight line contour and the positive direction of the X-axis, the angle between the perpendicular line of the straight line contour and the positive direction of the X-axis can be obtained, for example, the angle between the line segment OH22 and the positive direction of the X-axis, which is recorded as the angle H22Ox.

[0052] Specifically, under the premise that the angle between the vertical line and the positive direction of the X-axis is set to the first detection angle and the angle between the straight line profile and the positive direction of the X-axis is set to the second detection angle, the following exists:

[0053] When the second detection angle is within the obtuse angle range, the first detection angle is equal to the angle difference obtained by subtracting 90 degrees from the second detection angle; corresponding to Figure 3The second detection angle is the angle formed by the straight line profile H31H33 relative to the positive direction of the X-axis; the first detection angle is the angle formed by the vertical line OH31 relative to the positive direction of the X-axis, that is, the angle H31Ox; from the trigonometric geometric relationship (such as the angular relationship between the inner angle and the outer angle of a triangle), it can be seen that the difference obtained by subtracting 90 degrees from the second detection angle is equal to the angle H31Ox.

[0054] When the second detection angle is within the acute angle range, the first detection angle is equal to the angle sum value obtained by adding 90 degrees to the second detection angle; corresponding to Figure 2 The second detection angle is the angle formed by the straight line profile H21H23 relative to the positive direction of the X-axis; the first detection angle is the angle formed by the vertical line OH22 relative to the positive direction of the X-axis, that is, the angle H22Ox; from the trigonometric geometric relationship (such as the angular relationship between the inner angle and the outer angle of a triangle), it can be seen that the sum of the second detection angle plus 90 degrees is equal to the angle H22Ox.

[0055] When the straight line profile is parallel to the positive direction of the X-axis, the first detection angle is equal to 90 degrees. Figure 1 , the second detection angle is the angle formed by the straight line where the straight line profile H1 is located relative to the positive direction of the X-axis; the first detection angle is the angle formed by the vertical line OH1 relative to the positive direction of the X-axis, that is, the angle of the angle H1Ox; from the trigonometric geometric relationship (for example, the angular relationship between the inner angle and the outer angle of a triangle), it can be known that the sum of the second detection angle (regarded as 0 degrees) plus 90 degrees is equal to the angle of the angle H1Ox, or the difference between the second detection angle (regarded as 180 degrees) and 90 degrees is equal to the angle of the angle H1Ox.

[0056] As an embodiment, in step S3, the method for turning according to the rotation angle includes: taking the assembly position of the wheel on the side away from the side obstacle as the rotation center, setting the sum of the straight-line distance between the wheel on the side away from the side obstacle and the convex point on the side of the head of the D-type robot close to the side obstacle and the preset distance as the rotation radius. Figures 1 to 3 In the figure, the convex point on the side of the head 1 of the D-type robot close to the side obstacle is the vertex A shown in the figure, then the sum of the length of the line segment LA and the preset spacing is set to the rotation radius; corresponding to Figures 1 to 3 In the figure, the wheel on the side away from the side obstacle is located at the wheel L shown in the figure, that is, the position of the wheel L shown in the figure is set as the rotation center; the side obstacle here is at Figure 1 The middle one is straight obstacle #12, and the side obstacles here are Figure 2 The middle one is straight obstacle #22, and the side obstacles here are Figure 3The preset spacing is preferably 0 cm to 2 cm to prevent the convex point on one side of the D-type robot's head 1 from colliding with the obstacle. The preset spacing should not be set too large to avoid the situation where the D-type robot misses the scan due to the large turning range. In addition, different D-type robots reserve different distances when they are along the edge and encounter obstacles. Therefore, the size of the preset spacing needs to be determined according to the actual situation.

[0057] Then, the side of the D-type robot's head close to the side obstacle rotates around the rotation center by the rotation angle until it is parallel to the straight line profile, and it is determined that the distance between the side of the D-type robot's head close to the side obstacle and the straight line profile is equal to the difference between the rotation radius and the body coverage radius, wherein the body coverage radius is set to be equal to the vertical distance from the rotation center to the side of the D-type robot's head close to the side obstacle, corresponding to Figures 1 to 4 In the figure, the rotation radius is the sum of the length D2 of the line segment LA and the preset spacing; the body coverage radius is the vertical distance from the rotation center L to the right side of the D-type robot, which is equal to the sum of the distance value D5 and the distance value D4.

[0058] Specifically, after the D-type robot adjusts its position based on the head margin in step S3, there are:

[0059] Correspondingly, Figure 1 The right side of the nose 1 of the D-type robot (the side close to the side obstacle #12) rotates counterclockwise around the rotation center L by an angle H1Ox (also equal to 90 degrees), becoming Figure 4 The D-type robot shown in the figure, at this time, the straight obstacle shown in the figure is represented by #11, and the positive direction of the X-axis is set perpendicular to the straight line outline of obstacle #11, then Figure 4 The right side edge of the nose 1 of the D-type robot shown is parallel to the straight line contour of the obstacle #11, and the distance between the right side edge of the nose 1 of the D-type robot and the straight line contour is determined to be equal to the difference between the rotation radius and the body coverage radius, thereby preventing the convex point A on the right side of the nose 1 of the D-type robot from colliding with the obstacle #11 during the left turn.

[0060] Corresponding to Figure 2 In the example, the right side of the D-type robot's nose 1 (the side close to the side obstacle #22) rotates counterclockwise around the rotation center L by an angle H22Ox (which is also equal to the angle H23Lx), becoming Figure 4 The D-type robot shown in the figure, at this time, the straight obstacle shown in the figure is represented by #21, and the positive direction of the X-axis is set perpendicular to the straight line outline of obstacle #21, then Figure 4The right side edge of the D-type robot's nose 1 is shown to be parallel to the straight contour of obstacle #21, and the distance between the right side edge of the D-type robot's nose 1 and the straight contour is determined to be equal to the difference between the rotation radius and the body coverage radius, thereby preventing the convex point A on the right side of the D-type robot's nose 1 from colliding with obstacle #21 during the left turn.

[0061] Corresponding to Figure 3 In the example, the right side of the D-type robot's nose 1 (the side close to the side obstacle #32) rotates counterclockwise around the rotation center L by an angle H31Ox (which is also equal to the angle H33Lx), becoming Figure 4 The D-type robot shown in the figure, at this time, the straight obstacle shown in the figure is represented by #31, and the positive direction of the X-axis is set perpendicular to the straight line outline of obstacle #31, then Figure 4 The right side edge of the D-type robot's head 1 is shown to be parallel to the straight contour of obstacle #31, and the distance between the right side edge of the D-type robot's head 1 and the straight contour is determined to be equal to the difference between the rotation radius and the body coverage radius, thereby preventing the convex point A on the right side of the D-type robot's head 1 from colliding with obstacle #31 during the left turn.

[0062] On the basis of the above embodiment, during the turning process of the D-type robot, the wheel whose assembly position is set as the rotation center remains unchanged, and the wheel on the side close to the side obstacle rotates around the rotation center by the rotation angle in a preset clockwise direction, and the wheel on the side close to the side obstacle shortens the vertical distance with the straight line contour in a preset clockwise direction; wherein, after the D-type robot rotates around the rotation center by the rotation angle, the side obstacle becomes an obstacle where the straight line contour is located, so that the D-type robot starts to walk along the straight line contour.

[0063] Combination Figure 1 and Figure 4 It can be seen that Figure 1 During the left turn of the D-type robot shown, the position of the left wheel of the D-type robot remains unchanged, and the left wheel L is not driven to rotate by the motor. During the counterclockwise rotation of the right wheel R of the D-type robot around the rotation center L by 90 degrees, the right wheel R will gradually shorten the vertical distance between the straight line contour of the obstacle #11, thereby shortening the distance between the right side of the nose 1 and the obstacle #11, and at the same time, the right wheel R will gradually move away from the obstacle #12, reducing the chance of contact with the obstacle #12; after rotating 90 degrees around the rotation center L, Figure 1 The side obstacle of the D-type robot shown is changed from obstacle #12 to obstacle #11.

[0064] Combination Figure 2and Figure 4 It can be seen that Figure 2 During the left turn of the D-type robot shown, the position of the left wheel L of the D-type robot remains unchanged, and the left wheel L is not driven to rotate by the motor. During the counterclockwise rotation of the right wheel R of the D-type robot around the rotation center L by an angle of H23Lx, the right wheel R will gradually shorten the vertical distance between the straight line contour of the obstacle #21, thereby shortening the distance between the right side of the nose 1 and the obstacle #21. At the same time, the right wheel R will gradually move away from the obstacle #22, reducing the chance of contact with the obstacle #22. After rotating around the rotation center L by an angle of H23Lx, Figure 2 The side obstacle of the D-type robot shown is changed from obstacle #22 to obstacle #21.

[0065] Combination Figure 3 and Figure 4 It can be seen that Figure 3 During the left turn of the D-type robot shown, the position of the left wheel L of the D-type robot remains unchanged, and the left wheel L is not driven to rotate by the motor. During the counterclockwise rotation of the right wheel R of the D-type robot around the rotation center L by an angle H33Lx, the right wheel R will gradually shorten the vertical distance between the straight line contour of the obstacle #31, thereby shortening the distance between the right side of the nose 1 and the obstacle #31. At the same time, the right wheel R will gradually move away from the obstacle #32, reducing the chance of contact with the obstacle #32. After rotating around the rotation center L by an angle H33Lx, Figure 3 The side obstacle of the D-type robot shown is changed from obstacle #32 to obstacle #31.

[0066] Preferably, before the D-type robot performs step S3, Figures 1 to 3 The minimum distance between the right side of the nose of the D-type robot and the side obstacle is not specifically limited, but can be set to be smaller, which can also ensure that the D-type robot shown in the figure has enough adjustment space. Since the D-type robot has a rectangular nose in front and a semicircular body with a smaller width in the rear, in the process of turning the nose sideways to be parallel to the straight line contour, the body and the nose are both inclined to be away from the obstacles on the side of the body and may be close to the straight line contour of the obstacles in front of the nose. Therefore, the present invention will focus on adjusting the vertical distance from the nose or the wheel used as the rotation center to the straight line contour of the front obstacle, and it can be chosen not to adjust the margin between it and the obstacle on the side of the fuselage before turning.

[0067] As an example, Figure 1As shown, when the straight line profile is parallel to the positive direction of the X-axis, the nose margin that needs to be adjusted before turning in step S2 is equal to the difference between the rotation radius and the maximum radius of the nose. In some embodiments, the nose margin is equivalent to the distance of the obstacle contour point H1 detected by the line laser sensor installed at the front end of the nose in the vertical direction of the wheel axle 3 (the direction parallel to the line segment OH1), that is, the vertical distance from the obstacle contour point H1 to the front end of the nose 1; then Figure 1 The D-type robot shown adjusts its current position until the vertical distance from the front end of the nose to the straight line contour of obstacle #11 is equal to the difference between the rotation radius (the sum of the length of line segment LA and the preset spacing) and the maximum radius of the nose (D3), which can prevent the right convex point A of the nose 1 from colliding with the straight line contour of obstacle #11 during the process of rotating 90 degrees to the left. The vertical distance from the rotation center to the front end of the nose is set to the maximum radius of the nose, as shown in FIG. Figure 1 As shown, the maximum radius of the nose is equal to the vertical distance D3 from the rotation center L to the front end of the nose 1.

[0068] On the one hand, when the nose margin is expressed as the difference between the straight-line distance from the rotation center to the straight-line contour and the straight-line distance from the rotation center to the front end of the nose in the vertical direction from the rotation center to the straight-line contour required for the D-type robot to turn, the straight-line distance from the rotation center L to the straight-line contour in the vertical direction from the rotation center L required for the D-type robot to turn will be adjusted to be equal to the rotation radius in step S3, that is, step S3 adjusts the vertical distance from the rotation center L to the contour straight line of obstacle #11 to be equal to the rotation radius, and the straight-line distance from the rotation center to the front end of the nose in the vertical direction from the rotation center L to the straight-line contour required for the D-type robot to turn is adjusted to be equal to the maximum radius D3 of the nose in step S3; the setting of the nose margin is completed so that the nose margin is equal to the difference between the rotation radius and the maximum radius of the nose, wherein the vertical direction from the rotation center to the straight-line contour required for the D-type robot to turn is parallel to the current forward direction of the D-type robot, that is, the vertical direction from the rotation center to the straight-line contour required for the D-type robot to turn is perpendicular to the wheel axle 3.

[0069] On the other hand, the nose margin is expressed as the difference between the straight-line distance from the body center of the D-type robot to the straight-line contour and the straight-line distance from the body center of the D-type robot to the front end of the nose in the direction perpendicular to the wheel axle 3, wherein the straight-line distance from the body center of the D-type robot to the straight-line contour in the direction perpendicular to the wheel axle 3 is Figure 1It is represented as the length D1 of the line segment OH1, and the straight-line distance from the body center of the D-type robot to the front end of the nose in the direction perpendicular to the axle 3 is the maximum radius D3 of the nose; since the straight line profile is parallel to the positive direction of the X-axis, the straight-line distance from the rotation center to the straight line profile in the vertical direction required for the D-type robot to turn is equal to the length D1 of the line segment OH1, and the straight-line distance from the rotation center to the front end of the nose in the vertical direction required for the D-type robot to turn is equal to the maximum radius D3 of the nose, wherein the vertical direction from the rotation center to the straight line profile required for the D-type robot to turn is parallel to the vertical direction of the axle 3. The nose margin is expressed as the difference between the straight-line distance from the body center of the D-type robot to the straight-line contour and the straight-line distance from the body center of the D-type robot to the front end of the nose in the direction perpendicular to the axle 3. The difference between the straight-line distance from the body center of the D-type robot to the straight-line contour and the straight-line distance from the body center of the D-type robot to the front end of the nose is adjusted to be equal to the rotation radius in the execution of step S3, that is, step S3 adjusts the vertical distance from the rotation center L to the contour straight line of obstacle #11 to be equal to the rotation radius by controlling the movement position change of the D-type robot, and adjusts the straight-line distance from the rotation center L to the front end of the nose in the vertical direction of the axle 3 to be equal to the maximum radius D3 of the nose by controlling the movement of the D-type robot; the adjustment of the nose margin is completed so that the nose margin is equal to the difference between the rotation radius and the maximum radius D3 of the nose.

[0070] As an example, Figure 2 As shown, when the second detection angle is within the acute angle range, that is, when the angle between the straight line profile H23H21 and the positive direction of the X-axis is an acute angle, the angle H22Ox (also equal to the angle H23Lx) is equal to the angle sum value obtained by adding 90 degrees to the second detection angle; the calculation method of the nose margin in step S2 includes:

[0071] based on Figure 2 The trigonometric function relationship reflected in the figure is used to multiply the half of the length of the wheel axle 3 (twice the length of the line segment LO) (distance value D5) and the sine value of the second detection angle (the angle between the straight line profile H23H21 and the positive direction of the X-axis) as the first vertical distance, forming the projection distance of the line segment LO in the vertical direction from the rotation center L required for the D-type robot to turn to the straight line profile (in the direction of the ray from O to the profile point H22, or in the direction of the ray from the rotation center L to the profile point H23). The vertical direction of the wheel axle 3 detected by the line laser sensor installed at the front end of the machine head ( Figure 2The ray direction of the point O shown points to the contour point H21, which can also be recorded as the straight-line distance between the obstacle contour point H21 and the center O of the fuselage in the vertical direction from the obstacle contour point H21 to the front boundary line of the nose 1, marked as D7 detected and converted by the line laser sensor, and the straight-line distance between the obstacle contour point in the vertical direction of the axle 3 and the center of the fuselage is marked as the center detection distance OH21, wherein the obstacle contour point in the vertical direction of the axle 3 is located on the straight line segment H21H23 where the straight line contour is located. The straight line segment H21H23 is also marked as the straight line profile H21H23; the fuselage center O is recorded and updated in real time by the D-type robot and represents the current position point of the D-type robot; specifically, the sum of the distance of the obstacle profile point H21 detected by the line laser sensor installed at the front end of the nose (that is, the distance between the obstacle profile point H21 and the edge of the front end of the nose in the vertical direction of the axle 3, which is the distance directly detected by the line laser sensor) and the maximum radius D3 of the nose is equal to: the distance in the vertical direction of the axle 3 detected by the line laser sensor installed at the front end of the nose ( Figure 2 The straight line distance between the obstacle contour point H21 and the fuselage center O (the direction of the ray from the point O shown in the figure pointing to the contour point H21). Then, based on the coordinates of the obstacle contour point H21, the coordinates of the fuselage center O can be calculated by the sum of the distance between the obstacle contour point H21 and the edge of the front end of the nose and the maximum radius D3 of the nose. In addition, the straight line segments H21H23 are straight lines fitted using the laser point cloud, which can represent the position of the straight line contour in the obstacle #21.

[0072] Then the product of the center detection distance OH21 and the cosine value of the second detection angle is recorded as the second vertical distance, where, according to the trigonometric relationship, the second detection angle is equal to the angle H21OH22, then the product of the center detection distance OH21 and the cosine value of the second detection angle is equal to the length of the line segment OH22, that is, the second vertical distance is equal to the length of the line segment OH22. Then the difference between the second vertical distance and the first vertical distance is set as the vertical distance from the rotation center L to the straight line profile H21H23, recorded as Figure 2 The length of the line segment LH23 is used as the straight-line distance from the rotation center L to the straight-line profile H21H23 in the vertical direction from the rotation center L to the straight-line profile H21H23 required for the D-type robot to turn. At the same time, the ratio between the maximum radius D3 of the nose and the cosine value of the second detection angle is set to the straight-line distance from the rotation center L to the front end of the nose in the vertical direction from the rotation center L to the straight-line profile H21H23 required for the D-type robot to turn, wherein the second detection angle is also equal to the angle formed by the side of the nose 1 and the line segment LH23; the vertical distance from the rotation center L to the front end of the nose 1 is set to the maximum radius D3 of the nose.

[0073] It should be noted that, when the D-type robot moves in a straight line in step S3 or is equivalent to moving in a straight line in step S3, if the obstacle where the straight line profile H21H23 is located is fixed, the calculated vertical distance from the rotation center L to the straight line profile H21H23 changes with the change of the center detection distance OH21, wherein the length of the axle required to calculate the vertical distance from the rotation center L to the straight line profile H21H23 and the second detection angle remain unchanged; since the maximum radius D3 of the nose remains unchanged during the D-type robot's straight line movement or is equivalent to moving in a straight line, the straight line distance from the rotation center L to the front end of the nose in the vertical direction of the straight line profile H21H23 required for the D-type robot to turn remains unchanged; and the vertical distance from the body center O of the D-type robot to the front end of the nose remains unchanged, wherein the vertical distance from the body center of the D-type robot to the front end of the nose is D3 shown in the figure. The D-type robot can calculate the vertical distance from the rotation center L to the straight line profile H21H23 required for the D-type robot to turn according to the change in the center detection distance OH21 in step S3, and adjust the current position of the D-type robot in real time according to the vertical distance, so as to adjust the nose margin before the turn described in step S3 occurs. The adjustment method can be but is not limited to moving forward or backward in a straight line, or performing a position adjustment action based on the differential speed of the left and right wheels.

[0074] Therefore, if the difference between the straight-line distance from the rotation center to the straight-line contour and the straight-line distance from the rotation center to the front end of the nose in the vertical direction of the rotation center required for the D-type robot to turn is used as the nose margin, that is, the nose margin is set along the vertical direction from the rotation center L to the straight-line contour H23H21 required for the D-type robot to turn, then the vertical distance from the rotation center L to the straight-line contour H21H23 is set to be equal to the rotation radius (in step S2, the D-type robot does not move but it can be assumed that the vertical distance from the rotation center L to the straight-line contour H21H23 When the distance is equal to the rotation radius, the position information about the straight line contour, such as the center detection distance OH21, the distance between the obstacle contour point H21 and the edge of the front end of the nose, etc., is inferred, in the vertical direction from the rotation center to the straight line contour required for the D-type robot to turn, the straight line distance from the rotation center to the straight line contour and the straight line distance from the rotation center to the front end of the nose are subtracted, and the difference is set as the nose margin required to be adjusted before the D-type robot turns, so that the D-type robot controls the side of the nose to turn parallel to the straight line contour without colliding with the straight obstacle, which corresponds to Figure 4The positive direction of the X-axis is perpendicular to obstacle #11, then the nose margin that needs to be adjusted before the D-type robot turns is equal to the difference between the rotation radius and the nose coverage distance, wherein the nose coverage distance is the straight-line distance from the rotation center L required for the D-type robot to turn to the vertical direction of the straight line contour H21H23, and the straight-line distance from the rotation center L to the front end straight line boundary line AB of the nose 1, which is the straight-line distance of the line segment OH22 across the nose 1.

[0075] Based on the above embodiment, the nose margin is expressed as the difference between the straight-line distance from the rotation center to the straight-line contour and the straight-line distance from the rotation center to the front end of the nose in the vertical direction from the rotation center to the straight-line contour required for the D-type robot to turn; before turning in step S3, the D-type robot adjusts its position until the line laser sensor installed at the front end of its nose detects the first target distance in the vertical direction of the wheel axle, wherein the first target distance is expressed as Figure 2 The first target distance is expressed as the vertical distance from the obstacle contour point H21 in the image to the front boundary line AB of the nose 1. Figure 2 The difference between the length D7 of the line segment OH21 shown and the length D3 of the maximum radius of the nose. The sources of the first target distance include: setting the product of half the length of the axle 3 and the tangent value of the second detection angle as the first distance value; controlling the ratio between the rotation radius and the cosine value of the second detection angle plus the first distance value, and then subtracting the maximum radius D3 of the nose from the sum to obtain the first target distance, to indicate that when the vertical distance from the rotation center L to the straight line contour is set equal to the rotation radius, the margin between the front end of the nose 1 and the straight line contour; wherein the sum obtained by adding the ratio between the rotation radius and the cosine value of the second detection angle to the first distance value is equal to the center detection distance; Figure 2 In the figure, the distance detected by the line laser sensor installed at the front end of the nose 1 in the vertical direction of the axle 3 is the vertical distance from the obstacle contour point H21 on the straight line contour to the front end of the nose 1 (specifically, the boundary line AB) in the vertical direction of the axle 3, which is equal to the difference between the center detection distance D7 and the maximum radius D3 of the nose.

[0076] Specifically, in Figure 2 In the figure, because the length of line segment OH21 is equal to the ratio of the length of line segment OH22 to the cosine value of the second detection angle, the length of line segment LH23 is first added to the product of half the length D5 of the wheel axle 3 and the sine value of the second detection angle, and the sum obtained is equal to the length of line segment OH22. Then, the sum obtained by the current addition is ratioed to the cosine value of the second detection angle to obtain the length D7 of line segment OH21. Then, the maximum radius of the nose is subtracted from the currently obtained length D7 of line segment OH21 to obtain the first target distance. Schematically, as shown in FIG. Figure 2 As shown, the first distance value is equal to the ratio of the product of half the length D5 of the wheel axle 3 and the sine value of the second detection angle to the cosine value of the second detection angle; the ratio of the rotation radius to the cosine value of the second detection angle is the ratio of the length of the line segment LH23 to the cosine value of the second detection angle; therefore, the sum of the ratio of the rotation radius to the cosine value of the second detection angle and the first distance value is equivalent to the ratio of the sum obtained by multiplying the length of the line segment LH23 plus half the length D5 of the wheel axle 3 and the sine value of the second detection angle to the cosine value of the second detection angle.

[0077] Corresponding to Figure 2 In step S3, based on the margin, the method for adjusting the position of the D-type robot includes: when the vertical distance from the convex point on one side of the nose of the D-type robot to the straight line contour is equal to the preset spacing, and the second detection angle is within the acute angle range, the D-type robot is triggered to avoid obstacles, at this time, Figure 2 The D-type robot moves to the point B on the left side of the nose, and the vertical distance from the straight profile H21H23 is equal to the preset spacing. Moreover, the angle formed by the straight profile H21H23 extracted by the current fitting and the positive direction of the X-axis is equal to the second detection angle, and is also equal to the angle formed by the straight profile H21H23 and the front end boundary AB of the nose 1. The side of the nose of the D-type robot is parallel to the linear obstacle #22 on the side, and then it starts to retreat by the first preset anti-collision distance, specifically by executing a preset action to complete the retreat, such as using the differential speed formed between the left and right wheels to retreat; wherein, the first preset anti-collision distance is equal to the The difference between the first target distance and the first preset vertical distance is used to prevent the convex point on one side of the nose from colliding with the straight contour during the turning process; the first preset vertical distance is equal to the sum of the ratio between the preset spacing and the cosine value of the second detection angle and the first distance value, so that when the minimum straight-line distance from the convex point on one side of the nose to the straight contour is the preset spacing, the first preset vertical distance is reserved in the vertical direction from the convex point on the other side of the nose to the straight contour, and the first preset vertical distance can be greater than the preset spacing to prevent collision with the straight contour. Preferably, the preset spacing is set to 1cm to 2cm. The numerical relationship between the first preset vertical distance and the preset spacing is converted based on the functional relationship of the second detection angle. Specifically, the ratio between the first preset vertical distance and the tangent value of the second detection angle is equal to the sum of the ratio between the preset spacing and the sine value of the second detection angle and half the length of the wheel axle.

[0078] As another example, Figure 3As shown, when the second detection angle is within the obtuse angle range, that is, when the angle between the straight line profile H33H31 and the positive direction of the X-axis is an obtuse angle, the angle H31Ox (also equal to the angle H33Lx, also equal to the angle H33LO) is equal to the angle difference obtained by subtracting 90 degrees from the second detection angle; the calculation method of the nose margin in step S2 includes:

[0079] based on Figure 3 The trigonometric function relationship reflected in the figure is used to multiply the half of the length of the axle 3 (distance value D5) and the sine value of the second detection angle (the angle between the straight line profile H33H31 and the positive direction of the X-axis) as the third vertical distance, forming the projection distance of the line segment LO from the rotation center L required for the D-type robot to turn to the straight line profile in the vertical direction (in the direction of the ray from the rotation center L to the profile point H33), where the vertical distance LH33 from the rotation center L to the straight line profile is set to be greater than the vertical distance OH31 from the fuselage center O to the straight line profile. The vertical direction of the axle 3 detected by the line laser sensor installed at the front end of the nose ( Figure 3 The straight-line distance between the obstacle contour point H32 on the vertical direction of the axle 3 and the center of the fuselage O is marked as D8, and the straight-line distance between the obstacle contour point H32 in the vertical direction of the axle 3 and the center of the fuselage is marked as the center detection distance OH32, wherein the obstacle contour point in the vertical direction of the axle 3 is located on the straight line segment H31H33 where the straight line contour is located, and the sum of the distance of the obstacle contour point H32 detected by the line laser sensor installed at the front end of the nose (that is, the distance between the obstacle contour point H32 and the edge of the front end of the nose in the vertical direction of the axle 3) and the maximum radius D3 of the nose is equal to the distance in the vertical direction of the axle 3 detected by the line laser sensor installed at the front end of the nose ( Figure 3 The straight line distance between the obstacle contour point H32 and the fuselage center O on the ray direction (the direction of the ray from the point O shown in the figure pointing to the contour point H32). Then, based on the coordinates of the obstacle contour point H32, the coordinates of the fuselage center O can be calculated by the sum of the distance between the obstacle contour point H32 and the edge of the front end of the nose) and the maximum radius D3 of the nose. In addition, the straight line segment H33H31 is a straight line fitted by the laser point cloud, which can represent the position of the straight line contour in the obstacle #31.

[0080] Then the product of the center detection distance OH32 and the cosine value of the second detection angle is recorded as the fourth vertical distance, where, according to the trigonometric relationship, the second detection angle is equal to the difference between 180 degrees and the angle H31OH32, then the product of the center detection distance OH32 and the cosine value of the second detection angle is equal to the length of the line segment OH31, that is, the fourth vertical distance is equal to the length of the line segment OH31. Then the sum of the fourth vertical distance and the third vertical distance is set as the vertical distance from the rotation center L to the straight line profile H31H33, recorded as Figure 3 The length of the line segment LH33 is used as the straight-line distance from the rotation center L to the straight-line profile H31H33 in the vertical direction from the rotation center L to the straight-line profile H31H33 required for the D-type robot to turn. At the same time, the ratio between the maximum radius D3 of the nose and the sine value of the second detection angle is set to the straight-line distance from the rotation center L to the front end of the nose in the vertical direction from the rotation center L to the straight-line profile H31H33 required for the D-type robot to turn, wherein the second detection angle is also equal to the angle formed by the side of the nose 1 and the line segment LH33; the vertical distance from the rotation center L to the front end of the nose 1 is set to the maximum radius D3 of the nose.

[0081] It should be noted that, in the process of the D-type robot moving in a straight line in step S3 or being equivalent to moving in a straight line in step S3, if the obstacle where the straight line profile H31H23 is located is fixed, the calculated vertical distance from the rotation center L to the straight line profile H31H33 changes with the change of the center detection distance OH32, wherein the length D5 of the axle required to calculate the vertical distance from the rotation center L to the straight line profile H31H33 and the second detection angle remain unchanged; since the maximum radius D3 of the nose remains unchanged in the process of the D-type robot moving in a straight line or being equivalent to moving in a straight line, the straight line distance from the rotation center L to the front end of the nose in the vertical direction of the straight line profile H31H33 required for the D-type robot to turn remains unchanged; and the straight line distance from the center of the body of the D-type robot to the front end of the nose in the direction perpendicular to the axle remains unchanged, and the straight line distance from the center of the body of the D-type robot to the front end of the nose in the direction perpendicular to the axle remains unchanged, wherein the vertical distance from the center of the body of the D-type robot to the front end of the nose is D3 shown in the figure. The D-type robot can convert the vertical distance from the rotation center L to the straight line profile H31H33 required for the D-type robot to turn according to the change in the center detection distance OH32, and adjust the current position of the D-type robot in real time according to the vertical distance to adjust the nose margin before executing the turn described in step S3. The adjustment method includes but is not limited to moving forward or backward in a straight line, or performing a position adjustment action according to the differential speed of the left and right wheels to adjust the nose margin.

[0082] Therefore, if the difference between the straight-line distance from the rotation center to the straight-line contour and the straight-line distance from the rotation center to the front end of the nose in the vertical direction of the rotation center required for the D-type robot to turn is used as the nose margin, that is, the nose margin is set along the vertical direction from the rotation center L to the straight-line contour H33H31 required for the D-type robot to turn, then the D-type robot moves until the vertical distance from the rotation center L to the straight-line contour H31H33 is equal to the rotation radius (in step S2, the D-type robot does not move but it can be assumed that the vertical distance from the rotation center L to the straight-line contour H31H33 is equal to the rotation radius). When the rotation radius is calculated, the relevant position information of the straight line contour such as the center detection distance OH32, the distance between the obstacle contour point H32 and the edge of the front end of the nose, etc. is inferred, in the vertical direction from the rotation center to the straight line contour required for the D-type robot to turn, the straight line distance from the rotation center to the straight line contour and the straight line distance from the rotation center to the front end of the nose are subtracted, and the difference is set as the nose margin required to be adjusted before the D-type robot turns, that is, the nose margin required to be calculated in step S2, so that the D-type robot controls the side of the nose to turn parallel to the straight line contour without colliding with the straight obstacle, corresponding to Figure 4 The positive direction of the X-axis is perpendicular to the obstacle #31. Before turning in step S3, the nose margin to be adjusted is equal to the difference between the rotation radius and the nose coverage distance, where the nose coverage distance is the straight-line distance from the rotation center L to the front straight-line boundary line AB of the nose 1 in the vertical direction of the straight-line contour H31H33 required for the D-type robot to turn, and is the straight-line distance of the line segment OH33 crossing the nose 1.

[0083] On the basis of the above embodiment, the nose margin is expressed as the difference between the straight-line distance from the rotation center to the straight-line contour and the straight-line distance from the rotation center to the front end of the nose in the vertical direction of the rotation center to the straight-line contour required for the D-type robot to turn. Before turning in step S3, the D-type robot adjusts its position until the line laser sensor installed at the front end of its nose detects the second target distance in the vertical direction of the wheel axle; wherein the second target distance is the difference between the center detection distance and the maximum radius of the nose, that is, the second target distance is expressed as Figure 3 The second target distance is expressed as the vertical distance from the obstacle contour point H32 in the image to the front boundary line AB of the nose 1. Figure 3The difference between the length D8 of the line segment OH32 shown and the length D3 of the maximum radius of the nose. The sources of the second target distance include: setting the product of half the length of the wheel axle 3 and the tangent value of the second detection angle as the second distance value; controlling the ratio between the rotation radius and the cosine value of the second detection angle minus the second distance value, and then subtracting the maximum radius of the nose from the difference to obtain the second target distance, to indicate the margin between the front end of the nose and the straight contour when the vertical distance from the rotation center to the straight contour is set equal to the rotation radius; wherein the distance detected by the line laser sensor installed at the front end of the nose in the vertical direction of the wheel axle is the vertical distance from the obstacle contour point on the straight contour to the front end of the nose in the vertical direction of the wheel axle; the difference obtained by subtracting the second distance value from the ratio between the rotation radius and the cosine value of the second detection angle is equal to the center detection distance; Figure 3 In the figure, the distance detected by the line laser sensor installed at the front end of the nose 1 in the vertical direction of the axle 3 is the vertical distance from the obstacle contour point H32 on the straight line contour to the front end of the nose 1 (specifically, the boundary line AB) in the vertical direction of the axle 3, which is equal to the difference between the center detection distance D8 and the maximum radius D3 of the nose.

[0084] Specifically, in Figure 3 In the figure, because the length of line segment OH32 is equal to the ratio of the length of line segment OH31 to the sine value of the first detection angle, the length of line segment LH33 is first subtracted from the product of half the length D5 of the wheel axle 3 and the sine value of the second detection angle, and the difference obtained is equal to the length of line segment OH31. Then, the difference obtained by the current subtraction is ratioed with the sine value of the first detection angle to obtain the length D8 of line segment OH32. Then, the maximum radius D3 of the nose is subtracted from the currently obtained length D8 of line segment OH32 to obtain the second target distance. Schematically, as shown in FIG. Figure 3 As shown, the second distance value is equal to the ratio of the product of half the length D5 of the axle 3 and the sine value of the second detection angle to the sine value of the first detection angle; the ratio of the rotation radius to the cosine value of the second detection angle is the ratio of the length of the line segment LH33 to the sine value of the first detection angle; therefore, the difference between the ratio of the rotation radius to the cosine value of the second detection angle and the second distance value is equivalent to the ratio of the difference obtained by subtracting the product of half the length D5 of the axle 3 and the sine value of the second detection angle from the length of the line segment LH33 and the sine value of the first detection angle.

[0085] Corresponding to Figure 3In step S3, based on the margin, the method for adjusting the position of the D-type robot includes: when the D-type robot moves to a point on one side of the nose and the vertical distance to the straight line contour is equal to the preset spacing, and the second detection angle is within the obtuse angle range, the D-type robot is triggered to avoid obstacles, at this time, Figure 3 The D-type robot moves to the point A on the left side of the nose, and the vertical distance from the straight contour H31H33 is equal to the preset spacing. Moreover, the angle formed by the straight contour H31H33 extracted by the current fitting and the positive direction of the X-axis is equal to the second detection angle, and is also equal to the angle formed by the straight contour H31H33 and the front end boundary AB of the nose 1. The side of the nose of the D-type robot is parallel to the linear obstacle #32 on the side, and then it starts to retreat the first preset anti-collision distance, specifically by executing a preset action to complete the retreat, such as using the differential speed formed between the left and right wheels to retreat; wherein, the first preset anti-collision distance is equal to The difference between the second target distance and the second preset vertical distance is used to prevent the convex point on one side of the nose from colliding with the straight contour during the turning process; the second preset vertical distance is equal to the difference between the ratio between the preset spacing and the cosine value of the second detection angle and the second distance value, so that when the minimum straight-line distance from the convex point on one side of the nose to the straight contour is the preset spacing, the second preset vertical distance is reserved between the convex point on the other side of the nose and the straight contour, and the second preset vertical distance can be greater than the preset spacing to prevent collision with the straight contour. Preferably, the preset spacing is set to 1cm to 2cm. The numerical relationship between the second preset vertical distance and the preset spacing is converted based on the functional relationship of the second detection angle. Specifically, the ratio between the second preset vertical distance and the tangent value of the second detection angle is equal to the sum of the ratio between the preset spacing and the sine value of the second detection angle and half the length of the wheel axle.

[0086] Based on the above embodiment, the method for the D-type robot to retreat a first preset anti-collision distance includes:

[0087] In order to increase the distance between the side of the nose close to the side obstacle and the side obstacle, the D-type robot controls the wheel on the side close to the side obstacle to move backward until the angle formed by the position of the wheel axle before and after movement reaches a preset angle and then stops moving backward. Then the wheel on the other side (the wheel on the side close to the side obstacle) is controlled to move backward until the wheel axle is parallel to the wheel axle before the D-type robot adjusts its position, completing the adjustment of the margin between the side of the D-type robot and the side obstacle. During the backward process, the convex points on both sides of the nose move away from the straight line contour in turn. Specifically corresponding to Figures 1 to 3In the process, the D-type robot first controls the right wheel R to move backward, stops moving when the angle formed by the positions of the wheel axle 3 before and after movement reaches a preset angle, and then controls the left wheel L to move backward until the wheel axle 3 is parallel to the wheel axle of the D-type robot before adjusting its position, and then moves the D-type robot to the left (by Figure 4 Based on the triangular geometric relationship, this embodiment also sets the arc cosine value of the ratio of the difference between the length of the wheel axle and the side margin to the length of the wheel axle as the preset angle.

[0088] After completing the margin adjustment between the side of the D-type robot and the side obstacle, calculate the change value of the straight-line distance from the body center O of the D-type robot to the straight-line contour in the vertical direction of the wheel axle 3 (parallel to the current forward direction, or perpendicular to the boundary line AB at the front end of the nose), and subtract the first preset anti-collision distance from the change value to obtain the position adjustment difference; wherein, the change value is equal to the product of the length of the wheel axle and the sine value of the preset angle. Then, it is determined whether the position adjustment difference is greater than a value of 0; if the position adjustment difference is greater than a value of 0, it indicates that the distance between the D-type robot and the straight line contour in the obstacle in front is too large at this time, and the D-type robot moves forward by the position adjustment difference; if the position adjustment difference is less than a value of 0, it indicates that the distance between the D-type robot and the straight line contour in the obstacle in front is too small at this time, and the D-type robot moves backward by the position adjustment difference; if the position adjustment difference is equal to a value of 0, it indicates that the adjustment of the margin between the head of the D-type robot and the straight line contour is completed. At this point, the front end of the head of the D-type robot has enough adjustment space to turn, and at this time the rotation angle calculated based on step S1 is to the left (by Figure 4 The method described in the above embodiment can prevent the front side of the D-type robot from directly colliding with the linear obstacle in front due to insufficient space.

[0089] The sum of the straight-line distance between the center of the D-type robot and the convex point on one side of the nose and the preset spacing is set to the longest side-center distance, corresponding to Figures 1 to 3 In the figure, it is the straight-line distance between point O and point A, which is used to represent the distance from the center of the D-type robot to the side obstacle ( Figure 1 In the middle is obstacle #12. Figure 2 In the middle is obstacle #22. Figure 3is the vertical distance that obstacle #32 needs to maintain. The arc cosine value of the ratio of half the fuselage width D4 to the longest side center distance OA is set as the reference turning angle, the reference turning angle is less than 90 degrees, and the deflection angle of the line segment OA relative to the positive direction of the X-axis is less than 90 degrees. The angle corresponding to the angle difference between the reference turning angle and the first detection angle is Figure 3 The angle formed by line segment OH31 and line segment OA.

[0090] Specifically, the side margin is calculated as follows: when the first detection angle is greater than or equal to 90 degrees, the side margin is equal to the difference between the longest side center distance and half of the fuselage width; corresponding to Figure 2 In the obstacle distribution scenario shown, the difference between the longest side center distance OA and half of the body width D4 is used as the margin required to be adjusted between the right side of the D-type robot and obstacle #12. After the side margin is set to be equal to the difference between the longest side center distance and half of the body width and the D-type robot is moved until the margin between its side and the side obstacle is equal to the side margin, the D-type robot starts from the current forward direction shown in the figure and rotates rightward around the rotation center L by the reference turning angle (corresponding to the angle of angle AOx or angle AOR), the convex point of the rectangular head 1 of the D-type robot does not collide with obstacle #21, and the convex point A of the rectangular head 1 of the D-type robot is closest to obstacle #22, and the vertical distance from the convex point A to obstacle #22 is reduced to a preset spacing as the minimum vertical distance from the convex point A to obstacle #22.

[0091] When the first detection angle is less than the reference turning angle, the side margin is equal to the difference between the longest side center distance and half of the fuselage width; corresponding to Figure 3 In the obstacle distribution scenario shown, if the angle formed between obstacle #31 and obstacle #32 is large, and the vertical distance from the center O of the fuselage to obstacle #31 is maintained greater than the longest side center distance, then obstacle #31 does not touch the convex point of the rectangular head 1 of the D-type robot during the rotation of the D-type robot to the right rear. Therefore, after the side margin is set to be equal to the difference between the longest side center distance and half of the fuselage width and the D-type robot is moved until the margin between its side and the side obstacle is equal to the side margin, the D-type robot starts from the current forward direction shown in the figure, and during the process of rotating to the right rear around the rotation center L by the reference turning angle, the convex point of the rectangular head 1 of the D-type robot does not collide with obstacle #31 and obstacle #32, and the vertical distance from convex point A to obstacle #32 is reduced to a preset spacing, which is the minimum vertical distance from convex point A to obstacle #22, and the preset spacing is set to be greater than the value 0.

[0092] Under the premise that the first detection angle is less than 90 degrees, when the first detection angle is greater than or equal to the reference turning angle, Figure 3 In the obstacle distribution scene shown, the angle formed between obstacle #31 and obstacle #32 is small, and the convex point of the rectangular head 1 of the D-type robot will gradually approach obstacle #31 as the first detection angle increases, so that the vertical distance from the center O of the fuselage to obstacle #31 is less than the longest side center distance. If the difference between the longest side center distance and half of the fuselage width continues to be used as the side margin, the convex point of the rectangular head 1 of the D-type robot will touch the obstacle #31 during the rotation of the D-type robot to the right rear. Therefore, it is necessary to reduce the side margin, and the angle between the reference turning angle and the first detection angle is set. The cosine value of the degree difference is multiplied by the longest side center distance, and then the product is subtracted from half of the fuselage width, and then the difference obtained by subtraction is set as the side margin. Therefore, after the D-type robot moves to the point where the margin between its side and the side obstacle is equal to the side margin, the D-type robot starts from the current forward direction shown in the figure, and rotates rightward around the rotation center L at the first detection angle. During this process, the convex point B on the left side of the rectangular nose 1 of the D-type robot does not collide with obstacle #31, and the convex point A on the right side of the nose 1 does not collide with obstacle #32, and the vertical distance from the convex point A to the obstacle #32 is less than the preset spacing but not equal to the value 0.

[0093] In summary, the aforementioned embodiment uses a line laser sensor carried by a D-type robot with a front and rear circle to determine the position of the linear obstacle in front or the linear contour of the obstacle, thereby obtaining the rotation angle required for walking along the linear obstacle or linear contour in front, and using the wheel as the rotation center, the linear distance from the wheel to the nose convex point, and the vertical distance from the wheel to the side of the nose, to calculate the required margin before turning and adjust the position of the D-type robot, to obtain the vertical distance required to maintain from the wheel to the obstacle when turning, and to avoid the front rectangular shape of the D-type robot directly colliding with the linear contour due to insufficient space. In this way, the robot uses the differential rotation of the left and right wheels to be parallel to the straight wall, and there are few space adjustment actions generated in the process of controlling the front protrusion to prevent it from colliding with the obstacle. Basically, the triangular geometric relationship formed between the nose and the fuselage is used for conversion, and the obstacle avoidance calculation cost is low.

[0094] As an embodiment, when the D-type robot walks along a wall, the D-type robot uses a line laser sensor to detect the presence of a non-linear obstacle in front of it, which can be an irregular obstacle other than a straight wall, a box, or a door sill, such as a toy ball, a cylindrical table and chair leg, or pet excrement, which are classified as non-linear obstacles. When the D-type robot approaches this type of obstacle, the line laser sensor on the front side can mark part of its curved contour on the map, and then the front side of the D-type robot can be determined to be the corresponding obstacle through point fitting calculation. Therefore, after executing step S3, the D-type robot walks along the straight contour on the premise that the convex points on either side of its nose do not touch the obstacle. In the process of walking along the straight contour, the D-type robot identifies the contour point closest to the center of the body among the obstacles through the line laser sensor installed at the front end of its nose, and marks the contour point closest to the center of the body as the alignment point; then, the D-type robot adjusts its position until the distance between the center of the body and the alignment point reaches a second preset anti-collision distance, wherein the second preset anti-collision distance is configured to be equal to the sum of the straight-line distance between the body center of the D-type robot and the convex point on one side of the nose of the D-type robot and the preset spacing (the rotation center of the robot at this time is set to the body center O), so that the convex point on one side of the nose of the D-type robot does not touch the obstacle in the process of approaching the obstacle or turning the wall, then, the D-type robot rotates the preset alignment angle until the convex point on one side of the nose of the D-type robot rotates to the side of the alignment point away from the obstacle where it is located, so as to bypass the obstacle where the alignment point is located; then the D-type robot adjusts its forward direction to continue walking along the straight contour; wherein the side of the alignment point away from the obstacle where it is located is located in the detection blind area of ​​the line laser sensor installed at the front end of the nose.

[0095] It should be noted that, in order to realize the turning alignment of the D-type robot, the D-type robot first moves to a distance between it and the obstacle in front of it that reaches the preset distance, and ensures that the position information of the closest contour point in the irregular-shaped obstacle in front of it is detected, and it may immediately collide with the obstacle in front of it; for example, under the premise that the areas on both sides of the alignment point in the obstacle in front of it (including the blind area) are safe and collision-free, by adjusting the distance between the center of the fuselage and the alignment point in the obstacle in front of it to reach the second preset anti-collision distance, the D-type robot is kept as small as possible for the rotation operation on the premise of being as close to the obstacle as possible, and at least the front protrusion ( Figure 4In this case, if the assembly position of one wheel of the D-type robot is selected as the rotation center, and the D-type robot is adjusted to a position where the distance between the rotation center and the alignment point reaches the aforementioned rotation radius (equal to the sum of the straight-line distance between the wheel (as the rotation center) on the side away from the side obstacle and the convex point on the side of the D-type robot's head close to the side obstacle and the preset distance), the amplitude of the D-type robot's turning required to start from the current adjustment position is greater than the amplitude generated when the distance between the fuselage center and the alignment point becomes the second preset anti-collision distance. In addition, since there are more detection blind spots on one side of the obstacle in front (relative to the linear obstacle that is easy to identify and fit), after the D-type robot adjusts its position to a position where the distance between the rotation center and the alignment point reaches the aforementioned rotation radius, it is easy to collide with the irregular obstacle in front when turning with the assembly position of one wheel as the rotation center. Therefore, in this embodiment, after detecting an irregularly shaped obstacle, the D-type robot adjusts its position until the distance between the center of the body and the alignment point reaches a second preset anti-collision distance, and then rotates the preset alignment angle so that the convex point on one side of the nose of the D-type robot rotates to align with the alignment point, completing a smaller angle turning alignment action.

[0096] On the basis of the above embodiment, when the distance between the body center of the D-type robot and the alignment point reaches the second preset anti-collision distance, the line between the body center of the D-type robot and the alignment point is marked as the first target line segment, and the line between the body center of the D-type robot and the convex point on the side of the detected area in the D-type robot is marked as the second target line segment; the detected area is the area previously scanned by the line laser sensor installed at the front end of the head; during the rotation of the D-type robot, the preset alignment angle rotated is the angle formed by the first target line segment and the second target line segment; wherein, the rotation direction of the D-type robot is that the convex point on the side of the detected area in the D-type robot points to the alignment point, guiding the convex point on the side of the head of the D-type robot to turn to the side of the alignment point away from the obstacle where it is located without touching the obstacle.

[0097] Therefore, for the detected non-linear obstacles, the posture is adjusted by turning to align the side of the D-type robot with the obstacle, and the distance is adjusted appropriately to use the line laser emitted from the side to bypass the obstacle in real time. Before triggering the D-type robot to turn, the line laser sensor installed on the front side can scan part of the obstacle information. By marking the map, it can be confirmed that the point where the D-type robot is aligned with the obstacle is the contour point closest to the D-type robot, and the necessary position adjustments are made in turn so that the convex point on one side of the nose of the D-type robot does not touch the obstacle during the process of turning close to the obstacle or wall; especially when there is a blind area on one side of the obstacle and the obstacle is aligned, the approximate range of the collision-free area can be determined, so that on the basis of subsequent scanning and determining that the blind area is free of collision risk, the D-type robot can bypass the detected non-linear obstacle without collision.

[0098] It should be added that after the D-type robot is aligned with the obstacle, the D-type robot uses the point cloud data corresponding to the line laser sensor set on the head of the robot on one side of the obstacle to determine the position of the obstacle and bypass the obstacle in the subsequent walking process, wherein the point cloud data collected by the line laser sensor set at the front end of the head is a discrete point reflected on the side contour line of the obstacle close to the D-type robot, each discrete point can be converted to a map coordinate system, and if the origin of the map coordinate system is selected as the center O of the fuselage, the corresponding discrete point and the fuselage center O are calculated using the converted coordinates of each discrete point in the map coordinate system. The straight-line distance is reflected as the distance between the contour line of one side of the obstacle and the side of the D-type robot; at the same time, the D-type robot uses the line laser sensor arranged at the front end of its head 1 to scan the environmental information on the blind spot side of the alignment point of the obstacle, such as the left area of ​​the alignment point (which was not detected before the rotation), and fills the blind spot on the left side, so as to avoid other obstacles on the blind spot side of the alignment point of the obstacle. In this way, the method after the execution of step S3 is completed can continue to deal with other obstacles that may appear in the left area of ​​the alignment point, thereby achieving the effect of bypassing obstacles in real time.

[0099] In the embodiments provided in the present application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are only schematic. For example, the division of the units is only a logical function division. There may be other division methods in actual implementation, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms. The units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, they may be located in one place, or they may be distributed on multiple network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the scheme of this embodiment.

[0100] It will be understood by those skilled in the art that all or part of the processes in the above-mentioned embodiment methods can be implemented by instructing the relevant hardware through a computer program, and the computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above-mentioned methods. Among them, the references to memory, storage, database or other media used in the embodiments provided in this application can include non-volatile and / or volatile memory. Non-volatile memory may include read-only memory ROM, programmable memory PROM, electrically programmable memory DPROM, electrically erasable programmable memory DDPROM or flash memory. Volatile memory may include random access memory RAM or external cache memory.

[0101] The technical features of the above embodiments may be arbitrarily combined. To make the description concise, not all possible combinations of the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.

[0102] The above embodiments only express several embodiments of the present invention, and the descriptions thereof are relatively specific and detailed, but they cannot be understood as limiting the scope of the invention patent. It should be pointed out that, for ordinary technicians in this field, several variations and improvements can be made without departing from the concept of the present application, and these all belong to the protection scope of the present application.

Claims

1. A D-type robot turning control method based on obstacle contours, characterized in that: The D-type robot turning control method comprises: Step S1, the D-type robot uses a line laser sensor to extract the straight line contour of the obstacle in front, and then according to the straight line contour, the D-type robot calculates the required rotation angle of the head side to be parallel to the straight line contour; Step S2, based on the rotation angle and the body size parameters of the D-type robot, the D-type robot calculates the nose margin that needs to be adjusted before turning; wherein the nose margin is expressed as the difference between the straight-line distance from the rotation center to the straight-line contour and the straight-line distance from the rotation center to the front end of the nose in the vertical direction from the rotation center to the straight-line contour required for the D-type robot to turn; Step S3, based on the nose margin, the D-type robot adjusts its position, and then turns according to the rotation angle until the side edge of the nose of the D-type robot is parallel to the straight line contour; In step S3, the method for turning according to the rotation angle includes: Taking the assembly position of the wheel on the side away from the side obstacle as the rotation center, the sum of the straight-line distance between the wheel on the side away from the side obstacle and the convex point on the side of the nose of the D-type robot close to the side obstacle and the preset spacing is set as the rotation radius; The side of the D-type robot's head close to the side obstacle rotates around the rotation center by the rotation angle until it is parallel to the straight line profile, and determines that the distance between the side of the D-type robot's head close to the side obstacle and the straight line profile is equal to the difference between the rotation radius and the body coverage radius, wherein the body coverage radius is set to be equal to the vertical distance from the rotation center to the side of the D-type robot's head close to the side obstacle; The D-type robot comprises a rectangular head, a semicircular body and two symmetrically arranged wheels, wherein the two symmetrically arranged wheels are connected by a wheel axle, and the wheel axle is arranged at the dividing line between the head and the body; the two symmetrically arranged wheels are arranged as a wheel on a side close to a side obstacle and a wheel on a side far from a side obstacle; The center of the body of the D-type robot is the center of the wheel axle, the convex point on one side of the head of the D-type robot is the vertex on one side of the front end of the rectangular head, and the front end of the rectangular head points to the forward direction of the D-type robot; Among them, the rotation center required for the D-type robot to turn left is set at the assembly position where the wheel on the left side of the D-type robot is located, or the rotation center required for the D-type robot to turn right is set at the assembly position where the wheel on the right side of the D-type robot is located.

2. The turning control method of a D-type robot according to claim 1, characterized in that: The width of the semicircular fuselage is equal to the side length of the contour line of the rectangular nose parallel to the wheel axle; the maximum vertical distance from the edge of the semicircular fuselage to the wheel axle is the maximum radius of the fuselage, and the maximum radius of the fuselage is greater than or equal to half of the width of the fuselage; Wherein, the vertical distance from the rotation center to the front end of the nose is set as the maximum radius of the nose.

3. The turning control method of a D-type robot according to claim 2, characterized in that: The step S1 includes: The D-type robot obtains point cloud data of the obstacle in front through a line laser sensor, and then uses the least square method to perform linear fitting on the point cloud data to obtain the straight line profile, wherein the straight line profile is a straight line representing the position of the obstacle in front; Take a perpendicular line to the straight contour, and then set the angle between the perpendicular line and the positive direction of the X-axis to the rotation angle required for the side of the head of the D-type robot to turn to be parallel to the straight contour; Among them, the direction toward the side obstacle of the D-type robot and perpendicular to the side of the head of the D-type robot is used as the positive direction of the X-axis; the positive direction of the X-axis is parallel to the wheel axle; when the side of the head of the D-type robot is parallel to the straight line profile, the straight line profile is set perpendicular to the positive direction of the X-axis.

4. The D-type robot turning control method according to claim 3, characterized in that: The calculation method of the angle between the straight line profile and the positive direction of the X-axis is as follows: Any two points on the straight line profile are taken to calculate the slope of the straight line profile, and then the slope of the straight line profile is converted into the angle between the straight line profile and the positive direction of the X-axis by using an inverse tangent function.

5. The D-type robot turning control method according to claim 4, characterized in that: Under the premise that the angle between the vertical line and the positive direction of the X-axis is set to the first detection angle and the angle between the straight line profile and the positive direction of the X-axis is set to the second detection angle, the following conditions exist: When the second detection angle is within the obtuse angle range, the first detection angle is equal to the angle difference obtained by subtracting 90 degrees from the second detection angle; When the second detection angle is within the acute angle range, the first detection angle is equal to the angle sum value obtained by adding 90 degrees to the second detection angle; When the straight line profile is parallel to the positive direction of the X-axis, the first detection angle is equal to 90 degrees.

6. The turning control method of a D-type robot according to claim 5, characterized in that: During the turning process, the wheel whose assembly position is set to the rotation center remains unchanged, the wheel on the side close to the side obstacle rotates around the rotation center by the rotation angle in a preset clockwise direction, and the wheel on the side close to the side obstacle shortens the vertical distance with the straight line profile in a preset clockwise direction; Wherein, after the D-type robot rotates around the rotation center by the rotation angle, the side obstacle becomes an obstacle where the straight line contour is located, so that the D-type robot starts to walk along the straight line contour.

7. The turning control method of a D-type robot according to claim 5, characterized in that: When the straight line profile is parallel to the positive direction of the X-axis, the nose margin required to be adjusted before turning in step S2 is equal to the difference between the rotation radius and the maximum radius of the nose; Wherein, when the nose margin is expressed as the difference between the straight-line distance from the rotation center to the straight-line contour and the straight-line distance from the rotation center to the front end of the nose in the vertical direction from the rotation center to the straight-line contour required for the D-type robot to turn, the straight-line distance from the rotation center to the straight-line contour in the vertical direction from the rotation center to the straight-line contour required for the D-type robot to turn is adjusted to be equal to the rotation radius in step S3, and the straight-line distance from the rotation center to the front end of the nose in the vertical direction from the rotation center to the straight-line contour required for the D-type robot to turn is adjusted to be equal to the maximum radius of the nose in step S3; Wherein, the vertical direction of the wheel axle is parallel to the current forward direction of the D-type robot.

8. The turning control method of a D-type robot according to claim 5, characterized in that: When the second detection angle is within the acute angle range, the calculation method of the nose margin in step S2 includes: The product of half the length of the wheel axle and the sine value of the second detection angle is recorded as the first vertical distance; Marking the straight-line distance between the obstacle contour point in the vertical direction of the wheel axle and the center of the fuselage as the center detection distance, wherein the obstacle contour point in the vertical direction of the wheel axle is located on the straight line segment where the straight line contour is located; The product of the center detection distance and the cosine value of the second detection angle is recorded as the second vertical distance; Then, the difference between the second vertical distance and the first vertical distance is set as the vertical distance from the rotation center to the straight line profile, which is used as the straight line distance from the rotation center to the straight line profile in the vertical direction from the rotation center to the straight line profile required for the D-type robot to turn; at the same time, the ratio between the maximum radius of the nose and the cosine value of the second detection angle is set as the straight line distance from the rotation center to the front end of the nose in the vertical direction from the rotation center to the straight line profile required for the D-type robot to turn; When the vertical distance from the rotation center to the straight contour is set equal to the rotation radius, in the vertical direction from the rotation center to the straight contour required for the D-type robot to turn, the difference between the straight-line distance from the rotation center to the straight contour and the straight-line distance from the rotation center to the front end of the nose is set as the nose margin.

9. The D-type robot turning control method according to claim 8, characterized in that: Before turning in step S3, the D-type robot adjusts its position until the line laser sensor installed at the front end of its nose detects a first target distance in the vertical direction of the wheel axle; wherein the first target distance is the difference between the center detection distance and the maximum radius of the nose; Sources of the first target distance include: Setting the product of half the length of the wheel axle and the tangent value of the second detection angle as the first distance value; The ratio between the rotation radius and the cosine value of the second detection angle is controlled to add the first distance value, and then the maximum radius of the nose is subtracted from the sum value to obtain the first target distance, so as to indicate the margin between the front end of the nose and the straight line profile when the vertical distance from the rotation center to the straight line profile is set to be equal to the rotation radius; wherein the sum value obtained by adding the ratio between the rotation radius and the cosine value of the second detection angle to the first distance value is equal to the center detection distance; The distance detected by the line laser sensor installed at the front end of the nose in the vertical direction of the wheel axle is the vertical distance from the obstacle contour point on the straight line contour to the front end of the nose in the vertical direction of the wheel axle.

10. The D-type robot turning control method according to claim 9, characterized in that: In step S3, based on the margin, the method for adjusting the position of the D-type robot includes: When the D-type robot moves to a point on one side of the nose and the vertical distance from the straight line contour is equal to the preset spacing, and the second detection angle is within the acute angle range, the robot retreats to the first preset anti-collision distance; Wherein, the first preset anti-collision distance is equal to the difference between the first target distance and the first preset vertical distance, so as to prevent the convex point on one side of the nose from colliding with the straight contour during the turning process; The first preset vertical distance is equal to the sum of the ratio of the preset spacing and the cosine value of the second detection angle and the first distance value.

11. The D-type robot turning control method according to claim 5, characterized in that: When the second detection angle is within the obtuse angle range, the calculation method of the nose margin in step S2 includes: The product of half the length of the wheel axle and the sine value of the second detection angle is recorded as the third vertical distance; The straight-line distance between the obstacle contour point in the vertical direction of the wheel axle and the center of the fuselage is detected by the line laser sensor installed at the front end of the nose, and the straight-line distance between the obstacle contour point in the vertical direction of the wheel axle and the center of the fuselage is marked as the center detection distance, wherein the obstacle contour point in the vertical direction of the wheel axle is located on the straight line segment where the straight line contour is located; The product of the central detection distance and the cosine value of the second detection angle is recorded as the fourth vertical distance; Then, the sum of the third vertical distance and the fourth vertical distance is set as the vertical distance from the rotation center to the straight line contour, which is used as the straight line distance from the rotation center to the straight line contour and the straight line distance from the rotation center to the front end of the nose in the vertical direction from the rotation center to the straight line contour required for the D-type robot to turn; at the same time, the ratio between the maximum radius of the nose and the sine value of the first detection angle is set as the straight line distance from the rotation center to the front end of the nose in the vertical direction from the rotation center to the straight line contour required for the D-type robot to turn; When the vertical distance from the rotation center to the straight contour is adjusted to be equal to the rotation radius, in the vertical direction from the rotation center to the straight contour required for the D-type robot to turn, the difference between the straight-line distance from the rotation center to the straight contour and the straight-line distance from the rotation center to the front end of the nose is set as the nose margin.

12. The D-type robot turning control method according to claim 11, characterized in that: When the nose margin is expressed as the difference between the straight-line distance from the rotation center to the straight-line contour and the straight-line distance from the rotation center to the front end of the nose in the vertical direction from the rotation center to the straight-line contour required for the D-type robot to turn, before turning in step S3, the D-type robot adjusts its position until the line laser sensor installed at the front end of its nose detects the second target distance in the vertical direction of the wheel axle; wherein the second target distance is the difference between the center detection distance and the maximum radius of the nose; Sources of the second target distance include: Setting the product of half the length of the wheel axle and the tangent value of the second detection angle as the second distance value; The second target distance is obtained by controlling the ratio between the rotation radius and the cosine value of the second detection angle minus the second distance value, and then subtracting the maximum radius of the nose from the difference value to represent the margin between the front end of the nose and the straight line profile when the vertical distance from the rotation center to the straight line profile is set equal to the rotation radius; Among them, the distance detected by the line laser sensor installed at the front end of the nose in the vertical direction of the wheel axle is the vertical distance from the obstacle contour point on the straight line contour to the front end of the nose in the vertical direction of the wheel axle; the difference obtained by subtracting the second distance value from the ratio of the rotation radius to the cosine value of the second detection angle is equal to the center detection distance.

13. The D-type robot turning control method according to claim 12, characterized in that: In step S3, based on the margin, the method for adjusting the position of the D-type robot includes: When the D-type robot moves to a point on one side of the nose and the vertical distance to the straight line contour is equal to the preset spacing, and the second detection angle is within the range of an obtuse angle, the robot retreats to a first preset anti-collision distance; Wherein, the first preset anti-collision distance is the difference between the second target distance and the second preset vertical distance, so as to prevent the convex point on one side of the nose from colliding with the straight contour during the turning process; The second preset vertical distance is equal to the difference between the ratio of the preset spacing and the cosine value of the second detection angle and the second distance value.

14. The D-type robot turning control method according to claim 10 or 13, characterized in that: The method for the D-type robot to retreat a first preset anti-collision distance comprises: The D-type robot controls the wheel on the side close to the side obstacle to move backward until the angle formed by the positions of the wheel axle before and after the movement reaches a preset angle, and then controls the wheel on the other side to move backward until the wheel axle is parallel to the wheel axle before the D-type robot adjusts its position, thereby completing the margin adjustment between the side of the D-type robot and the side obstacle; wherein the arc cosine value of the ratio of the difference between the length of the wheel axle and the side margin to the length of the wheel axle is set as the preset angle; After completing the margin adjustment between the side of the D-type robot and the side obstacle, calculating the change value of the straight-line distance from the center of the body of the D-type robot to the straight-line contour in the vertical direction of the wheel axle, and subtracting the first preset anti-collision distance from the change value to obtain a position adjustment difference; wherein the change value is equal to the product of the length of the wheel axle and the sine value of the preset angle; It is determined whether the position adjustment difference is greater than a value of 0. If so, the D-type robot moves forward by the position adjustment difference; otherwise, the D-type robot moves backward by the position adjustment difference.

15. The D-type robot turning control method according to claim 14, characterized in that: The side margins are calculated by: When the first detection angle is greater than or equal to 90 degrees, the side margin is equal to the difference between the longest side center distance and half of the fuselage width; When the first detection angle is less than the reference turning angle, the side margin is equal to the difference between the longest side center distance and half of the fuselage width; On the premise that the first detection angle is less than 90 degrees, when the first detection angle is greater than or equal to the reference turning angle, multiply the cosine value of the angle difference between the reference turning angle and the first detection angle by the longest side center distance, subtract half of the fuselage width from the obtained product, and then set the difference obtained by subtraction as the side margin distance; The sum of the straight-line distance between the center of the body of the D-type robot and the convex point on one side of the nose and the preset spacing is set to the longest edge-center distance; The arccosine value of the ratio of half the fuselage width to the longest side center distance is set as the reference turning angle, and the reference turning angle is less than 90 degrees.

Citation Information

Patent Citations

  • Robot control method, chip and robot

    CN114879663A