Steering control method of self-moving robot, self-moving robot and medium equipment

By determining the reference turning radius and turning angle of the self-moving robot, the problems of unclear turning center positioning and lack of basis for angle allocation are solved, thereby improving the stability and accuracy of turning.

CN122009318APending Publication Date: 2026-05-12SUZHOU SHIRUIZHUO TECHNOLOGY CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
SUZHOU SHIRUIZHUO TECHNOLOGY CO LTD
Filing Date
2026-01-30
Publication Date
2026-05-12

AI Technical Summary

Technical Problem

Self-propelled robots suffer from problems in steering control, such as unclear steering center positioning and lack of reasonable basis for steering angle allocation, resulting in large steering deviations and insufficient stability.

Method used

By determining the reference turning radius of the drive wheel set, which is the distance from the target reference point to the turning center of the self-moving robot, and based on this, determining the turning angle of each steering wheel in the steering drive wheel set, the correlation logic between the steering reference and the turning angle is established.

Benefits of technology

It effectively avoids steering center drift, improves the consistency and precision of steering actions, solves the problem of steering trajectory deviation, and improves steering stability and precision.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122009318A_ABST
    Figure CN122009318A_ABST
Patent Text Reader

Abstract

The invention provides a steering control method of a self-moving robot, the self-moving robot, a computer readable storage medium and electronic equipment, and the method comprises the steps: determining a reference steering radius of a driving wheel set, the reference steering radius being a distance from a target reference point to a steering center of the self-moving robot; wherein the target reference point is the midpoint of the connecting line of the axes of all the wheels in the driving wheel set, and the steering center is located on the straight line where the connecting line of the axes of all the wheels in the driving wheel set is located; determining a steering angle of each steering wheel in the steering driving wheel set based on the reference steering radius; and controlling each steering wheel to execute steering according to the steering angle. According to the method, the steering wheels of the self-moving robot can be controlled to execute reasonable and accurate steering.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to the field of smart devices, and more specifically, to a steering control method for a self-moving robot, a self-moving robot, a computer-readable storage medium, and an electronic device. Background Technology

[0002] In applications of self-moving robots such as lawnmowers and cleaning robots, steering accuracy and stability are key concerns and core requirements. Current technologies often suffer from unclear steering center positioning and a lack of reasonable basis for steering angle allocation, leading to issues such as trajectory deviation and inconsistent steering responses during robot turns. This makes it difficult to meet the fundamental steering control requirements in complex work scenarios. Summary of the Invention

[0003] The purpose of this disclosure is to provide a steering control method for a self-moving robot, a self-moving robot, a computer-readable storage medium, and an electronic device, to solve the problems of ambiguous steering center positioning and lack of reasonable basis for steering angle allocation in existing self-moving robot steering control, which leads to large steering deviation and insufficient stability. The specific solution is as follows: According to specific embodiments of this disclosure, in a first aspect, this disclosure provides a steering control method for a self-moving robot, applied to a self-moving robot, the self-moving robot including a steering drive wheel set and a drive wheel set, one of the steering drive wheel set and the drive wheel set being located at the front end of the self-moving robot, and the other being located at the rear end of the self-moving robot; the method includes: A reference turning radius is determined for the drive wheel assembly, which is the distance from the target reference point to the turning center of the self-moving robot; wherein the target reference point is the midpoint of the line connecting the axles of each wheel in the drive wheel assembly, and the turning center is located on the straight line connecting the axles of each wheel in the drive wheel assembly. Based on the reference steering radius, the steering angle of each steering wheel in the steering drive wheel set is determined; Based on the steering angle, control each steering wheel to perform steering.

[0004] In some embodiments, determining the reference steering radius of the drive wheel assembly includes: Obtain the target fuselage rudder angle of the self-moving robot; The reference turning radius of the drive wheel assembly is determined based on the target fuselage rudder angle of the self-moving robot.

[0005] In some embodiments, the method further includes: Obtain the target fuselage rudder angle to be compensated for by the self-moving robot, and the inertial measurement angle of the self-moving robot; Calculate the deviation between the target fuselage control angle to be compensated and the inertial measurement angle; The deviation value is added to the target fuselage control angle to be compensated to generate the compensated target fuselage control angle; Determining the reference turning radius of the drive wheel assembly based on the target fuselage rudder angle of the self-moving robot includes: Based on the compensated target fuselage rudder angle of the self-moving robot, the reference turning radius of the drive wheel set is determined.

[0006] In some embodiments, determining the reference turning radius of the drive wheel assembly based on the target fuselage rudder angle of the self-moving robot includes: Obtain the wheelbase of the self-moving robot; wherein, the wheelbase is the perpendicular distance between the line connecting the axes of the steering wheels in the steering drive wheel assembly and the line connecting the axes of the drive wheels in the drive wheel assembly, and the line connecting the axes of the steering wheels in the steering drive wheel assembly is parallel or approximately parallel to the line connecting the axes of the drive wheels in the drive wheel assembly. The reference steering radius of the drive wheel assembly is calculated using the following formula:

[0007] in, This indicates the reference turning radius. This indicates the wheelbase of the self-moving robot. This indicates the target fuselage rudder angle.

[0008] In some embodiments, the steering drive wheel assembly includes a first steering wheel and a second steering wheel; Determining the steering angle of each steering wheel in the steering drive wheel assembly based on the reference steering radius of the drive wheel assembly includes: Obtain the wheelbase of the self-moving robot, and the length of the line connecting the axes of the first steering wheel and the second steering wheel; Based on the reference turning radius of the drive wheel assembly, the wheelbase of the self-moving robot, and the length of the line connecting the axes of the first steering drive wheel and the second steering wheel, the first steering angle of the first steering wheel and the second steering angle of the second steering wheel are determined respectively.

[0009] In some embodiments, determining the first steering angle of the first steering wheel and the second steering angle of the second steering wheel respectively includes: The first steering angle of the first steering wheel and the second steering angle of the second steering wheel are calculated using the following formulas:

[0010] in, This indicates the first steering angle. This indicates the second steering angle. This indicates the wheelbase of the self-moving robot. Indicates the reference steering radius of the drive wheel assembly, This indicates the length of the line connecting the axes of the first steering drive wheel and the second steering wheel; First steering angle The calculation formula is applicable to the reference steering radius of the drive wheel assembly. The situation; Second steering angle The calculation formula is applicable to the reference steering radius of the drive wheel assembly. The situation; The distance between the axis of the first steering wheel and the steering center is less than the distance between the axis of the second steering wheel and the steering center.

[0011] In some embodiments, the method further includes: If the reference steering radius of the drive wheel set satisfies Therefore, the first steering angle of the first steering wheel is determined to be 90 degrees, and the following is adopted: The calculation formula determines the second steering angle of the second steering wheel.

[0012] In some embodiments, the method further includes: If the reference steering radius of the drive wheel set satisfies Therefore, the second steering angle of the second steering wheel is determined to be 90 degrees, and the following is adopted: The calculation formula determines the first steering angle of the first steering wheel.

[0013] In some embodiments, the method further includes: Angle limiting processing is applied to the first steering angle and / or the second steering angle to ensure that the first steering angle and / or the second steering angle are within a preset angle range.

[0014] In some embodiments, the method further includes: Obtain the target body linear velocity and target body rudder angle of the self-moving robot; Based on the target fuselage linear velocity and the target fuselage rudder angle, determine the steering drive wheel set and the rolling speed of each wheel in the drive wheel set; The method further includes: Based on the steering angle, while controlling each steering wheel to perform steering, the steering drive wheel group and each wheel in the drive wheel group are driven to perform rolling according to the rolling speed of the steering drive wheel group and each wheel in the drive wheel group.

[0015] In some embodiments, the drive wheel assembly includes a first drive wheel and a second drive wheel; The step of determining the rolling speed of the steering drive wheel assembly and each wheel in the drive wheel assembly based on the target fuselage linear velocity and the target fuselage rudder angle includes: The first rolling speed of the first drive wheel and the second rolling speed of the second drive wheel are determined by the following formulas:

[0016] in, This indicates the first rolling speed of the first drive wheel. This indicates the second rolling speed of the second drive wheel. Indicates the linear velocity of the target fuselage. Indicates the target fuselage rudder angle, This indicates the length of the line connecting the axes of the first and second drive wheels; The distance between the axis of the first drive wheel and the steering center is less than the distance between the axis of the second drive wheel and the steering center.

[0017] In some embodiments, the steering drive wheel includes a first steering wheel and a second steering wheel; The step of determining the rolling speed of the steering drive wheel assembly and each wheel in the drive wheel assembly based on the target fuselage linear velocity and the target fuselage rudder angle includes: The third rolling speed of the first steering wheel and the fourth rolling speed of the second steering wheel are determined by the following formulas:

[0018] in, This indicates the third rolling speed of the first steering wheel. This indicates the fourth rolling speed of the second steering wheel. Indicates the linear velocity of the target fuselage. Indicates the target fuselage rudder angle, This indicates the first steering angle of the first steering wheel. This indicates the second steering angle of the second steering wheel.

[0019] In some embodiments, the method further includes: If the target fuselage control angle is greater than zero, then reverse the rolling direction of the left wheel; If the target fuselage control angle is less than zero, then reverse the rolling direction of the right wheel; Wherein, a target fuselage rudder angle greater than zero indicates that the self-moving robot is performing a counterclockwise turn, and a target fuselage rudder angle less than zero indicates that the self-moving robot is performing a clockwise turn.

[0020] In some embodiments, the method further includes: Obtain the actual rotational speed of the drive motor corresponding to each wheel in the steering drive wheel set; The actual rotational speed of each wheel is compared with the expected rotational speed of each wheel, and the execution stability of each wheel is verified based on the comparison results; The expected rotational speeds of each wheel are obtained by converting the first rolling speed, the second rolling speed, the third rolling speed, and the fourth rolling speed, respectively.

[0021] In some embodiments, the method further includes: Obtain control commands; the control commands include the target body linear velocity and target body rudder angle of the self-moving robot; When the target fuselage linear velocity is determined to be zero and the target fuselage rudder angle is not zero, the self-moving robot is triggered to perform a turning operation in place, and the reference turning radius of the drive wheel set is determined according to the target fuselage rudder angle.

[0022] In some embodiments, the self-moving robot includes a working module, and the distance between the turning center of the self-moving robot and the reference line is half of the effective working width of the working module; wherein the reference line is a line passing through the working center of the working module and parallel to the longitudinal axis of the self-moving robot.

[0023] Secondly, this disclosure provides a self-moving robot, comprising: body; Steering drive wheel set; The drive wheel assembly, wherein one of the steering drive wheel assembly and the drive wheel assembly is located at the front end of the self-moving robot, and the other is located at the rear end of the self-moving robot; A controller is configured to determine a reference turning radius for the drive wheel assembly, wherein the reference turning radius is the distance from a target reference point to the turning center of the self-moving robot; wherein the target reference point is the midpoint of the line connecting the axles of each wheel in the drive wheel assembly, and the turning center is located on the straight line connecting the axles of each wheel in the drive wheel assembly; based on the reference turning radius, the controller determines the turning angle of each steering wheel in the steering drive wheel assembly; and controls each steering wheel to perform steering according to the turning angle.

[0024] In some embodiments, the controller is further configured to: Obtain the target fuselage rudder angle of the self-moving robot; The reference turning radius of the drive wheel assembly is determined based on the target fuselage rudder angle of the self-moving robot.

[0025] In some embodiments, the controller is further configured to: Obtain the target fuselage rudder angle to be compensated for by the self-moving robot, and the inertial measurement angle of the self-moving robot; Calculate the deviation between the target fuselage control angle to be compensated and the inertial measurement angle; The deviation value is added to the target fuselage control angle to be compensated to generate the compensated target fuselage control angle; Based on the compensated target fuselage rudder angle of the self-moving robot, the reference turning radius of the drive wheel set is determined.

[0026] In some embodiments, the controller is further configured to: Obtain the wheelbase of the self-moving robot; wherein, the wheelbase is the perpendicular distance between the line connecting the axes of the steering wheels in the steering drive wheel assembly and the line connecting the axes of the drive wheels in the drive wheel assembly, and the line connecting the axes of the steering wheels in the steering drive wheel assembly is parallel or approximately parallel to the line connecting the axes of the drive wheels in the drive wheel assembly. The reference steering radius of the drive wheel assembly is calculated using the following formula:

[0027] in, This indicates the reference turning radius. This indicates the wheelbase of the self-moving robot. This indicates the target fuselage rudder angle.

[0028] In some embodiments, the steering drive wheel assembly includes a first steering wheel and a second steering wheel; The controller is also used for: Obtain the wheelbase of the self-moving robot, and the length of the line connecting the axes of the first steering wheel and the second steering wheel; Based on the reference turning radius of the drive wheel assembly, the wheelbase of the self-moving robot, and the length of the line connecting the axes of the first steering drive wheel and the second steering wheel, the first steering angle of the first steering wheel and the second steering angle of the second steering wheel are determined respectively.

[0029] In some embodiments, the controller is further configured to: The first steering angle of the first steering wheel and the second steering angle of the second steering wheel are calculated using the following formulas:

[0030] in, This indicates the first steering angle. This indicates the second steering angle. This indicates the wheelbase of the self-moving robot. Indicates the reference steering radius of the drive wheel assembly, This indicates the length of the line connecting the axes of the first steering drive wheel and the second steering wheel; First steering angle The calculation formula is applicable to the reference steering radius of the drive wheel assembly. The situation; Second steering angle The calculation formula is applicable to the reference steering radius of the drive wheel assembly. The situation; The distance between the axis of the first steering wheel and the steering center is less than the distance between the axis of the second steering wheel and the steering center.

[0031] In some embodiments, the controller is further configured to: If the reference steering radius of the drive wheel set satisfies Therefore, the first steering angle of the first steering wheel is determined to be 90 degrees, and the following is adopted: The calculation formula determines the second steering angle of the second steering wheel.

[0032] In some embodiments, the controller is further configured to: If the reference steering radius of the drive wheel set satisfies Therefore, the second steering angle of the second steering wheel is determined to be 90 degrees, and the following is adopted: The calculation formula determines the first steering angle of the first steering wheel.

[0033] In some embodiments, the controller is further configured to: Angle limiting processing is applied to the first steering angle and / or the second steering angle to ensure that the first steering angle and / or the second steering angle are within a preset angle range.

[0034] In some embodiments, the controller is further configured to: Obtain the target body linear velocity and target body rudder angle of the self-moving robot; Based on the target fuselage linear velocity and the target fuselage rudder angle, determine the steering drive wheel set and the rolling speed of each wheel in the drive wheel set; The method further includes: Based on the steering angle, while controlling each steering wheel to perform steering, the steering drive wheel group and each wheel in the drive wheel group are driven to perform rolling according to the rolling speed of the steering drive wheel group and each wheel in the drive wheel group.

[0035] In some embodiments, the drive wheel assembly includes a first drive wheel and a second drive wheel; The controller is also used for: The first rolling speed of the first drive wheel and the second rolling speed of the second drive wheel are determined by the following formulas:

[0036] in, This indicates the first rolling speed of the first drive wheel. This indicates the second rolling speed of the second drive wheel. Indicates the linear velocity of the target fuselage. Indicates the target fuselage rudder angle, This indicates the length of the line connecting the axes of the first and second drive wheels; The distance between the axis of the first drive wheel and the steering center is less than the distance between the axis of the second drive wheel and the steering center.

[0037] In some embodiments, the steering drive wheel includes a first steering wheel and a second steering wheel; The controller is also used for: The third rolling speed of the first steering wheel and the fourth rolling speed of the second steering wheel are determined by the following formulas:

[0038] in, This indicates the third rolling speed of the first steering wheel. This indicates the fourth rolling speed of the second steering wheel. Indicates the linear velocity of the target fuselage. Indicates the target fuselage rudder angle, This indicates the first steering angle of the first steering wheel. This indicates the second steering angle of the second steering wheel.

[0039] In some embodiments, the controller is further configured to: If the target fuselage control angle is greater than zero, then reverse the rolling direction of the left wheel; If the target fuselage control angle is less than zero, then reverse the rolling direction of the right wheel; Wherein, a target fuselage rudder angle greater than zero indicates that the self-moving robot is performing a counterclockwise turn, and a target fuselage rudder angle less than zero indicates that the self-moving robot is performing a clockwise turn.

[0040] In some embodiments, the controller is further configured to: Obtain the actual rotational speed of the drive motor corresponding to each wheel in the steering drive wheel set; The actual rotational speed of each wheel is compared with the expected rotational speed of each wheel, and the execution stability of each wheel is verified based on the comparison results; The expected rotational speeds of each wheel are obtained by converting the first rolling speed, the second rolling speed, the third rolling speed, and the fourth rolling speed, respectively.

[0041] In some embodiments, the controller is further configured to: Obtain control commands; the control commands include the target body linear velocity and target body rudder angle of the self-moving robot; When the target fuselage linear velocity is determined to be zero and the target fuselage rudder angle is not zero, the self-moving robot is triggered to perform a turning operation in place, and the reference turning radius of the drive wheel set is determined according to the target fuselage rudder angle.

[0042] In some embodiments, the self-moving robot includes a working module, and the distance between the turning center of the self-moving robot and the reference line is half of the effective working width of the working module; wherein the reference line is a line passing through the working center of the working module and parallel to the longitudinal axis of the self-moving robot.

[0043] Thirdly, this disclosure provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the above-described method.

[0044] Fourthly, this disclosure provides an electronic device, including: a processor; and a memory for storing executable instructions of the processor; wherein the processor is configured to perform the above-described method by executing the executable instructions.

[0045] The exemplary embodiments disclosed herein have the following beneficial effects: A reference turning radius for the drive wheel assembly is determined, which is the distance from the target reference point to the turning center of the self-moving robot. The target reference point is the midpoint of the line connecting the axles of all wheels in the drive wheel assembly, and the turning center lies on the straight line connecting the axles of all wheels in the drive wheel assembly. Based on the reference turning radius, the turning angle of each steering wheel in the steering drive wheel assembly is determined. According to the turning angle, each steering wheel is controlled to perform steering. On the one hand, by limiting the turning center to the line connecting the axles of all wheels in the drive wheel assembly, and defining the reference turning radius as the distance from the midpoint of the line connecting the axles of the drive wheel assembly to the turning center, steering center drift is effectively avoided, making the steering reference unified and clear, and significantly improving the consistency of steering actions under different working conditions. On the other hand, determining the steering angle of the steering wheel based on the clearly defined reference turning radius establishes a logical association between the steering reference and the steering angle, solving the problem of unreliable angle allocation in existing technologies, effectively reducing steering trajectory deviation, and improving steering accuracy.

[0046] It should be understood that the above general description and the following detailed description are exemplary and explanatory only, and are not intended to limit this disclosure. Attached Figure Description

[0047] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this disclosure and, together with the description, serve to explain the principles of this disclosure. It is obvious that the drawings described below are merely some embodiments of this disclosure, and those skilled in the art can obtain other drawings based on these drawings without any inventive effort. In the drawings: Figure 1 A schematic diagram of a self-moving robot is shown; Figure 2 A schematic diagram of another self-moving robot is shown; Figure 3 A flowchart illustrating the steering control method is shown. Figure 4 This diagram illustrates the position of a steering center. Figure 5 A schematic diagram showing another steering center position is provided. Figure 6 This diagram illustrates a simplified version of a self-moving robot. Figure 7 A schematic diagram of the structure of a self-moving robot is shown; Figure 8 A schematic diagram showing a first steering angle and a second steering angle is provided. Figure 9 Showing a A schematic diagram illustrating the turning behavior of a self-moving robot under certain conditions; Figure 10 Showing a A schematic diagram illustrating the turning behavior of a self-moving robot under certain conditions; Figure 11 A schematic diagram of the trajectory of a self-moving robot performing a turning operation in place is shown; Figure 12 A schematic diagram is shown in which the distance between the turning center of a self-moving robot and a reference line is half the effective working width of the working module; Figure 13 A flowchart illustrating another steering control method for a self-moving robot is shown. Figure 14 A structural block diagram of a steering control device for a self-moving robot is shown. Figure 15 An electronic device for implementing the above method is shown. Detailed Implementation

[0048] To make the objectives, technical solutions, and advantages of this disclosure clearer, the disclosure will be further described in detail below with reference to the accompanying drawings. Obviously, the described embodiments are only a part of the embodiments of this disclosure, and not all of them. Based on the embodiments of this disclosure, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this disclosure.

[0049] The terminology used in the embodiments of this disclosure is for the purpose of describing particular embodiments only and is not intended to be limiting of this disclosure. The singular forms “a” and “the” as used in the embodiments of this disclosure and the appended claims are also intended to include the plural forms, and “multiple” generally includes at least two unless the context clearly indicates otherwise.

[0050] It should be understood that the term "and / or" used in this article is merely a description of the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A existing alone, A and B existing simultaneously, and B existing alone. Additionally, the character " / " in this article generally indicates that the preceding and following related objects have an "or" relationship.

[0051] It should be understood that although the terms first, second, third, etc., may be used to describe... in the embodiments of this disclosure, these... should not be limited to these terms. These terms are only used to distinguish... For example, first... may also be referred to as second... without departing from the scope of the embodiments of this disclosure, and similarly, second... may also be referred to as first...

[0052] Depending on the context, the words “if” or “suppose” as used here can be interpreted as “when” or “in response to determination” or “in response to detection.” Similarly, depending on the context, the phrases “if determination” or “if detection (of the stated condition or event)” can be interpreted as “when determination” or “in response to determination” or “when detection (of the stated condition or event)” or “in response to detection (of the stated condition or event).”

[0053] It should also be noted that the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a product or device that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a product or device. Without further limitation, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the product or device that includes that element.

[0054] This disclosure provides an exemplary embodiment of a steering control method for a self-moving robot, applicable to self-moving robots. The self-moving robot includes a steering drive wheel set and a drive wheel set, one located at the front end and the other at the rear end. The self-moving robot can implement this method through hardware and / or software. The self-moving robot can be a lawnmower robot, a sweeping robot, or a delivery robot. The steering drive wheel set refers to a wheel set that simultaneously possesses steering and rolling functions. It can adjust the steering angle according to control commands and drive the self-moving robot to move through rolling. It can be any one of a steering wheel set, an omnidirectional wheel set, or a Mecanum wheel set, but is not limited to these. The drive wheel set has rolling function but no active steering function. It typically works in conjunction with the steering drive wheel set to achieve body movement. The drive wheel set can be the rear wheel set of the self-moving robot, providing only driving force and not participating in steering, or it can be the front wheel set of other robots, etc. For example, as shown... Figure 1 As shown, the steering drive wheel assembly of the self-propelled robot includes a left front wheel 110 and a right front wheel 120, and the drive wheel assembly includes a left rear wheel 130 and a right rear wheel 140; exemplarily, as... Figure 2 As shown, the steering drive wheel assembly of the self-propelled robot includes a left rear wheel 230 and a right rear wheel 240, while the drive wheel assembly includes a left front wheel 210 and a right front wheel 220. It should be noted that the steering drive wheel assembly may include one or more wheels, and the rotating wheel assembly may also include one or more wheels. For example, the steering drive wheel assembly may include one front wheel, and the drive wheel assembly may include two wheels: a left rear wheel and a right rear wheel; or the steering drive wheel assembly may include a left front wheel and a right front wheel, and the drive wheel assembly may include a left rear wheel and a right rear wheel, etc.

[0055] Reference Figure 3The flowchart illustrates a steering control method for a self-moving robot provided by an exemplary embodiment of the present disclosure, which may include the following steps S310-S330: Step S310: Determine the reference turning radius of the drive wheel set. The reference turning radius is the distance from the target reference point to the turning center of the self-moving robot. The target reference point is the midpoint of the line connecting the axles of each wheel in the drive wheel set, and the turning center is located on the straight line connecting the axles of each wheel in the drive wheel set.

[0056] The steering center refers to the center point around which the entire robot rotates when it performs a steering action. It can be located on the straight line connecting the axles of the wheels in the drive wheel assembly, such as... Figure 4 As shown, assuming the self-moving robot's steering drive wheel assembly includes a left front wheel 410 and a right front wheel 420, and the drive assembly includes a left rear wheel 430 and a right rear wheel 440, when the self-moving robot turns counterclockwise, the steering center O is located on the straight line connecting the axis a of the left rear wheel 430 and the axis b of the right rear wheel 440, at a certain distance from the left rear wheel 430. Figure 5 As shown, assuming the self-moving robot's steering drive wheel set includes a left front wheel 410 and a right front wheel 420, and the drive set includes a left rear wheel 430 and a right rear wheel 440, when the self-moving robot turns counterclockwise, the steering center O' is located on the straight line connecting the axis a of the left rear wheel 430 and the axis b of the right rear wheel 440, at a certain distance from the right rear wheel 440.

[0057] Setting the steering center on the straight line connecting the axles of each wheel in the drive wheel assembly serves two purposes. First, it clarifies the steering reference, prevents deviation from the steering trajectory, and ensures precise and controllable movement of the self-moving robot during operation, laying the foundation for full coverage of the work area. Second, it ensures that the drive wheel assembly can roll relative to the moving surface without slipping while following the steering drive wheel assembly, thus protecting the moving surface and improving the smoothness of the self-moving robot's steering.

[0058] When a self-propelled robot performs a turning maneuver, each wheel has its own turning radius. For example, the turning radius of the left front wheel is the distance from the turning center to the left front wheel axle; or the turning radius of the right front wheel is the distance from the turning center to the right front wheel axle. The reference turning radius refers to the straight-line distance from the axle of a virtual wheel to the turning center when the two wheels of the drive wheel assembly are abstracted into a virtual wheel. Figure 6As shown, assuming the left and right rear wheels of the self-moving robot are simplified to a single rear wheel 610, the reference turning radius can be considered as the straight-line distance R from the axis f of this rear wheel 610 to the turning center O”. Setting the reference turning radius clarifies the turning reference of the self-moving robot and provides a precise calculation basis for subsequent steering wheel angle allocation and control of the rolling speed of each wheel, significantly improving the accuracy and stability of the steering.

[0059] In some embodiments, the reference turning radius refers to the straight-line distance from the target reference point to the turning center when the mobile robot turns. The target reference point can be the midpoint of the line connecting the axles of the wheels in the drive wheel assembly, such as... Figure 4 As shown, the target reference point is the midpoint M of the line connecting the axle center a of the left rear wheel 430 and the axle center b of the right rear wheel 440, and the reference steering radius is the distance R from the midpoint M to the steering center O; as shown Figure 5 As shown, the target reference point is the midpoint M of the line connecting the axle center a of the left rear wheel 430 and the axle center b of the right rear wheel 440. The reference steering radius is the distance R' from the midpoint M to the steering center O'.

[0060] The reference turning radius can be obtained directly from instructions sent by the cloud server, or it can be calculated based on information in the sent instructions. For example, the cloud server can send the target fuselage rudder angle of the self-moving robot to the self-moving robot. The target fuselage rudder angle can represent the expected angle of rotation when the self-moving robot is abstracted as a whole. Then, the reference turning radius is determined based on the target fuselage rudder angle. For example, the cloud server can also send control instructions to the self-moving robot, which will parse the control instructions to determine the target fuselage rudder angle included in them, and then determine the reference turning radius based on the target fuselage rudder angle, etc.

[0061] In some embodiments, determining the reference steering radius of the drive wheel set may include: The target fuselage rudder angle obtained from the mobile robot; The reference turning radius of the drive wheel set is determined based on the target fuselage rudder angle of the self-moving robot.

[0062] The target fuselage control angle refers to the control parameter used in a self-moving robot to indicate the degree of steering. It can be viewed as the parameter indicating how much the self-moving robot is expected to rotate when it is abstracted as a whole. For example, such as... Figure 6As shown, assuming the self-moving robot's steering drive wheel assembly includes a left front wheel and a right front wheel, and the drive wheel assembly includes a left rear wheel and a right rear wheel, the robot's body can be simplified to a straight line 640. The left and right rear wheels can be simplified to a rear wheel 610 located at the center of the line connecting the axles of the left and right rear wheels. The left and right front wheels can be simplified to a front wheel 620 located at the center of the line connecting the axles of the left and right front wheels. The distance between the lines connecting the axles of the front wheel 610 and the rear wheel 620 is the wheelbase. The angle 630 of the rotation direction of the front wheel 620 relative to the straight line 640 of the body is the body control angle. The target body control angle is the desired rotation angle of the front wheel 620 of the self-moving robot. Figure 6 In the simplified model shown, the straight line 650 where the front wheel 620 rotates is perpendicular to the straight line 660 from the front wheel 620 to the steering center O”. Therefore, the target fuselage control angle 630 is equal to the angle 670 where the steering center O” is located.

[0063] The target fuselage rudder angle can be obtained by parsing control commands sent to the user equipment or cloud server. Alternatively, the user equipment or cloud server can directly send the specific value of the target fuselage rudder angle to the self-moving robot. When the cloud server sends the target fuselage rudder angle to the self-moving robot, or sends control commands including the target fuselage rudder angle, the target fuselage rudder angle can be calculated by the system based on the current pose of the self-moving robot and the desired pose of the target.

[0064] Determining the reference steering radius of the drive wheel assembly based on the target fuselage rudder angle of the self-moving robot can be achieved through one or more methods, such as geometric formula calculation, empirical formula derivation, or neural network model prediction. For example, the reference steering radius can be calculated using a specific formula based on the target fuselage rudder angle and the wheelbase between the front and rear wheels; alternatively, the target fuselage rudder angle can be input into a pre-trained neural network model for processing to output the reference steering radius of the drive wheel assembly.

[0065] In some embodiments, determining the reference turning radius of the drive wheel set based on the target fuselage rudder angle of the self-moving robot may include: The wheelbase is obtained from the mobile robot; where the wheelbase is the perpendicular distance between the line connecting the axes of the steering wheels in the steering drive wheel set and the line connecting the axes of the drive wheels in the drive wheel set, and the line connecting the axes of the steering wheels in the steering drive wheel set is parallel or approximately parallel to the line connecting the axes of the drive wheels in the drive wheel set. Calculate the reference steering radius of the drive wheel set using the following formula: (1) in, Indicates the reference turning radius. This indicates the wheelbase of the self-moving robot. Indicates the target fuselage rudder angle.

[0066] The wheelbase is the perpendicular distance between the line connecting the axes of the steering wheels in the steering drive wheel set and the line connecting the axes of the drive wheels in the drive wheel set. The line connecting the axes of the steering wheels in the steering drive wheel set is parallel or approximately parallel to the line connecting the axes of the drive wheels in the drive wheel set.

[0067] For example, such as Figure 7 As shown, when the self-moving robot is a lawnmower robot, and the steering drive wheel set includes a left front wheel 710 and a right front wheel 720, and the drive wheel set includes a left rear wheel 730 and a right rear wheel 740, the wheelbase is the perpendicular distance between the line cd connecting the axes of the left front wheel 710 and the right front wheel 720 and the line ab connecting the axes of the left rear wheel 730 and the right rear wheel 740. Wherein, the line cd connecting the axles of the left front wheel 710 and the right front wheel 720 is parallel to the line ab connecting the axles of the left rear wheel 730 and the right rear wheel 740. Assume that... Figure 7 The self-moving robot shown is simplified as follows: Figure 6 The model shown can be considered as the target fuselage control angle. Figure 6 The target fuselage control angle 630 is equal to the angle 670 where the turning center O is located. Therefore, in Figure 7 In the middle, the target fuselage rudder angle It is 750.

[0068] Determine the target fuselage rudder angle and the wheelbase of the self-moving robot Then, using the formula: The reference turning radius can then be derived. ,in, This is the tangent of the target fuselage control angle.

[0069] The wheelbase of a self-moving robot can be achieved through various methods, such as reading pre-stored parameters, sensor detection and measurement, and input from external devices. For example, the self-moving robot or cloud server can read the pre-stored wheelbase from its memory and calculate the reference turning radius based on the wheelbase and the target fuselage rudder angle.

[0070] The method described above for calculating the reference turning radius offers several advantages. First, since the axle connection lines of the steering drive wheel assembly are parallel or approximately parallel to the axle connection lines of the drive wheel assembly, their perpendicular distance is a fixed mechanical parameter that does not change with motion. Calculating the reference turning radius based on this parameter provides a stable benchmark. Second, the derived formula relies solely on a fixed wheelbase and target fuselage control angle, without additional variable interference, ensuring the uniqueness and rationality of the calculation logic.

[0071] Step S320: Based on the reference steering radius, determine the steering angle of each steering wheel in the steering drive wheel set.

[0072] Steering angle refers to the deflection angle of each steering wheel in the steering drive wheel assembly relative to the body's reference direction (usually the longitudinal axis of the body, i.e., the positive direction of forward / backward movement). It is a parameter used to adjust the direction of the steering wheels' movement and achieve body steering. After determining the turning radius of the self-moving robot, the required turning angle of each steering wheel in the steering drive wheel assembly can be determined based on the turning radius and the body's structural parameters (wheelbase, wheelbase, etc.) through preset logic or preset calculation formulas.

[0073] It should be noted that the steering drive wheel set may include multiple steering wheels, and the steering angles calculated for different steering wheels may be different.

[0074] In some embodiments, the steering drive wheel assembly includes a first steering wheel and a second steering wheel; Based on the reference steering radius of the drive wheel set, the steering angle of each steering wheel in the steering drive wheel set is determined, including: The wheelbase of the mobile robot and the length of the line connecting the axes of the first and second steering wheels are obtained. Based on the reference turning radius of the drive wheel set, the wheelbase of the self-moving robot, and the length of the connecting line between the axes of the first steering drive wheel and the second steering wheel, the first steering angle of the first steering wheel and the second steering angle of the second steering wheel are determined respectively.

[0075] Here, the first steering wheel refers to one of the steering wheels in the steering drive wheel assembly, which can be the left-hand steering wheel. The second steering wheel refers to the other steering wheel in the steering drive wheel assembly corresponding to the first steering wheel, which can be the right-hand steering wheel, and it operates in conjunction with the first steering wheel. For example, as... Figure 1 As shown, when the steering drive wheel assembly includes a left front wheel 110 and a right front wheel 120, the first steering wheel can be the left front wheel 110, and the second steering wheel can be the right front wheel 120; for example, as... Figure 2 As shown, when the steering drive wheel assembly includes a left rear wheel 230 and a right rear wheel 240, the first steering wheel can be the left rear wheel 230 and the second steering wheel can be the right rear wheel 240.

[0076] The wheelbase of the self-moving robot is the perpendicular distance between the line connecting the axes of the steering wheels in the aforementioned steering drive wheel assembly and the line connecting the axes of the drive wheels in the drive wheel assembly. The length of the line connecting the axes of the first steering wheel and the second steering wheel can refer to the distance between the two wheels. For example, as... Figure 7As shown, when the self-moving robot is a lawnmower robot, and the steering drive wheel set includes a left front wheel 710 and a right front wheel 720, and the drive wheel set includes a left rear wheel 730 and a right rear wheel 740, the first steering wheel can be the left front wheel 710, the second steering wheel can be the right front wheel 720, and the wheelbase is the perpendicular distance between the line cd connecting the axes of the left front wheel 710 and the right front wheel 720 and the line ab connecting the axes of the left rear wheel 730 and the right rear wheel 740. The length of the line connecting the axles of the first steering wheel and the second steering wheel can be the length of the line connecting the axles of the left front wheel 710 and the right front wheel 720, cd. .

[0077] After determining the reference steering radius of the drive wheel assembly, the wheelbase of the self-moving robot, and the length of the line connecting the axes of the first steering drive wheel and the second steering wheel, the first steering angle of the first steering wheel and the second steering angle of the second steering wheel can be calculated using various methods, such as geometric mechanical model derivation, preset algorithm calculation, and table lookup matching, by combining these three parameters. For example, the reference steering radius, the wheelbase of the self-moving robot, and the length of the line connecting the axes of the first steering drive wheel and the second steering wheel can be substituted into a preset formula to calculate the first steering angle of the first steering wheel and the second steering angle of the second steering wheel. Alternatively, a mapping relationship can be pre-established between the reference steering radius, the wheelbase of the self-moving robot, the length of the line connecting the axes of the first steering drive wheel and the second steering wheel, and the first steering angle of the first steering wheel and the second steering angle of the second steering wheel. The first steering angle of the first steering wheel and the second steering angle of the second steering wheel can then be obtained by looking up the reference steering radius of the drive wheel assembly, the wheelbase of the self-moving robot, and the length of the line connecting the axes of the first steering drive wheel and the second steering wheel in a table.

[0078] By referencing three key parameters—steering radius, wheelbase, and the length of the line connecting the steering wheel axles—the angles of the first and second steering wheels are calculated separately. This allows for a reasonable difference in the deflection angles of the two steering wheels, perfectly matching the arc trajectory around the steering center. This avoids the dragging motion of the steering wheels caused by a single-angle distribution, achieving pure rolling steering, significantly reducing lateral friction between the wheel assembly and the ground, lowering the risk of slippage and wheel wear, and improving steering stability.

[0079] In some embodiments, determining the first steering angle of the first steering wheel and the second steering angle of the second steering wheel respectively includes: The first steering angle of the first steering wheel and the second steering angle of the second steering wheel are calculated using the following formulas: (2) (3) in, Indicates the first steering angle. Indicates the second steering angle. This indicates the wheelbase of the self-moving robot. Indicates the reference steering radius of the drive wheel set, This indicates the length of the line connecting the axes of the first steering drive wheel and the second steering wheel; First steering angle The calculation formula is applicable to the reference steering radius of the drive wheel set. The situation; Second steering angle The calculation formula is applicable to the reference steering radius of the drive wheel set. The situation; The distance between the axle of the first steering wheel and the steering center is less than the distance between the axle of the second steering wheel and the steering center.

[0080] The first steering angle refers to the deflection angle of the first steering wheel relative to the longitudinal axis of the fuselage, and it is a parameter that determines the steering amplitude of the first steering wheel. The second steering angle refers to the deflection angle of the second steering wheel relative to the longitudinal axis of the fuselage. The first steering angle and the second steering angle can be different.

[0081] This exemplary embodiment can be based on the steering angle calculation formula derived from the Ackermann geometric model. Specifically, the first steering angle of the first steering wheel can be calculated using the above formula based on the relationship between the wheelbase, the reference steering radius, and the length of the line connecting the axes of the first and second steering wheels. The second steering angle of the second steering wheel In practice, the built-in processing or calculation module can be called to substitute the wheelbase, reference steering radius, and length of the line connecting the axes of the first and second steering wheels into the corresponding formulas, and then perform denominator operations, division operations, and arctangent operations in sequence to output the first steering angle and the second steering angle.

[0082] For example, such as Figure 8 As shown, when the self-moving robot is a lawnmower robot, and the steering drive wheel set includes a left front wheel 810 and a right front wheel 820, and the drive wheel set includes a left rear wheel 830 and a right rear wheel 840, the first steering wheel can be the left front wheel 810, the second steering wheel can be the right front wheel 820, and the wheelbase is the perpendicular distance between the line cd connecting the axes of the left front wheel 810 and the right front wheel 820 and the line ab connecting the axes of the left rear wheel 830 and the right rear wheel 840. The length of the line connecting the axles of the first steering wheel and the second steering wheel can be the length of the line connecting the axles of the left front wheel 810 and the right front wheel 820, cd. The distance Oc between the axis c of the first steering wheel and the steering center O is less than the distance Od between the axis d of the second steering wheel and the steering center O. Taking the forward direction on the longitudinal axis of the lawnmower robot as the positive X direction, the first steering angle can be the rotation angle between the rotation direction Z1 of the first steering wheel 810 and the positive X direction. The second steering angle can be the rotation angle between the rotation direction Z2 of the second steering wheel 820 and the positive X direction. The first steering angle With the second steering angle They may be the same, or they may be different.

[0083] The first steering angle and the second steering angle are calculated by formulas (2) and (3) respectively. On the one hand, the differential and precise angle allocation of the steering wheels can be realized, which perfectly matches the arc trajectory around the steering center and reduces wheel slippage and wear. On the other hand, based on the quantitative calculation of mechanical parameters, the logic is unified and predictable, which can be adapted to different steering radius scenarios (conventional steering, U-turn, etc.). Furthermore, relying only on the robot's own fixed parameters, it can better resist external environmental interference and ensure the stability and consistency of the steering angle. In addition, the first steering wheel is the inner wheel, and the calculation of the deflection angle is adapted to its short distance characteristics. The second steering wheel is the outer wheel, and the calculation of the deflection angle is adapted to its long distance characteristics. It can effectively realize the rolling steering of the two wheels and effectively reduce the lateral slippage of the wheel group and the friction loss of the ground.

[0084] It should be noted that when referring to the turning radius = hour, The calculation formula has a denominator of 0, so the arctangent operation is meaningless; when = hour, The calculation formula has a denominator of 0, so it cannot be calculated normally. Therefore, the first steering angle... The calculation formula applies when the reference steering radius of the drive wheel assembly is not equal to one-half the length of the line connecting the axes of the first and second steering wheels, and the second steering angle... The calculation formula applies to cases where the reference steering radius of the drive wheel set is not equal to one-negative half the length of the line connecting the axes of the first and second steering wheels.

[0085] In some embodiments, the above method may further include: If the reference steering radius of the drive wheel set satisfies Therefore, the first steering angle of the first steering wheel is determined to be 90 degrees, and the following is adopted: The calculation formula determines the second steering angle of the second steering wheel.

[0086] Considering that in extreme scenarios, the reference steering radius of the drive wheel assembly may be equal to one-half the length of the line connecting the axes of the first and second steering wheels, making it impossible to calculate the first steering angle of the first steering wheel using the above formula (2), the first steering angle of the first steering wheel can be directly determined to be 90 degrees, and the second steering angle of the second steering wheel can be calculated normally using the above formula (3).

[0087] like Figure 9 As shown, when the self-moving robot is a lawnmower robot, the steering drive wheel set includes a left front wheel 910 and a right front wheel 920, and the drive wheel set includes a left rear wheel 930 and a right rear wheel 940. The first steering wheel can be the left front wheel 910, and the second steering wheel can be the right front wheel 920. The wheelbase is the perpendicular distance between the line cd connecting the axes of the left front wheel 910 and the right front wheel 920 and the line ab connecting the axes of the left rear wheel 930 and the right rear wheel 940. The length of the line connecting the axles of the first steering wheel and the second steering wheel can be the length of the line connecting the axles of the left front wheel 810 and the right front wheel 820, cd. Assuming the midpoint M of the line ab connecting the axles of the left rear wheel 930 and the right rear wheel 940 is defined as the reference point, when the steering center is to the right of the reference point, the self-moving robot turns counterclockwise with a positive steering radius; when the steering center is to the left of the reference point, the self-moving robot turns clockwise with a negative steering radius. Then, when the self-moving robot turns counterclockwise, and the reference steering radius of the drive wheel assembly is equal to half the length of the line connecting the axles of the first and second steering wheels, the steering center O will be located on the axle a of the left rear wheel 930. At this time, the first steering angle of the first steering wheel (left front wheel) 910 can be set. The second steering angle is 920 degrees, with the second steering wheel (right front wheel) at 90 degrees. Normally, it is calculated using the above formula (3).

[0088] In some embodiments, the method may further include: If the reference steering radius of the drive wheel set satisfies Therefore, the second steering angle of the second steering wheel is determined to be 90 degrees, and the following is adopted: The calculation formula determines the first steering angle of the first steering wheel.

[0089] Considering that in extreme scenarios, the reference steering radius of the drive wheel assembly may be equal to half the length of the line connecting the axes of the first and second steering wheels, making it impossible to calculate the first steering angle of the first steering wheel using the above formula (3), the second steering angle of the second steering wheel can be directly determined to be 90 degrees, and the first steering angle of the first steering wheel can be calculated normally using the above formula (2).

[0090] like Figure 10 As shown, when the self-moving robot is a lawnmower robot, the steering drive wheel set includes a left front wheel 910 and a right front wheel 920, and the drive wheel set includes a left rear wheel 930 and a right rear wheel 940. The first steering wheel can be the left front wheel 910, and the second steering wheel can be the right front wheel 920. The wheelbase is the perpendicular distance between the line cd connecting the axes of the left front wheel 910 and the right front wheel 920 and the line ab connecting the axes of the left rear wheel 930 and the right rear wheel 940. The length of the line connecting the axles of the first steering wheel and the second steering wheel can be the length of the line connecting the axles of the left front wheel 810 and the right front wheel 820, cd. Assuming the midpoint M of the line ab connecting the axles of the left rear wheel 930 and the right rear wheel 940 is defined as the reference point, when the steering center is to the right of the reference point, the self-moving robot turns counterclockwise with a positive steering radius; when the steering center is to the left of the reference point, the self-moving robot turns clockwise with a negative steering radius. Therefore, when the self-moving robot turns clockwise, and the reference steering radius of the drive wheel assembly is equal to half the negative length of the line connecting the axles of the first and second steering wheels, the steering center O will be located on the axle b of the right rear wheel 940. At this time, the second steering angle of the second steering wheel (right front wheel) 920 can be set. The first steering angle is 910 degrees, with the first steering wheel (left front wheel) at 90 degrees. Normally, it is calculated using the above formula (2).

[0091] Determining the steering angle in extreme scenarios using the above method can, on the one hand, avoid situations where the denominator of the calculation formula is zero, which could lead to control logic lag or steering loss, thus ensuring the continuous and stable execution of steering actions; on the other hand, by fixing the steering angle of the abnormal side steering wheel to 90 degrees, while the other side is still precisely calculated using a formula combined with mechanical parameters, it can ensure that the steering angle distribution conforms to the laws of kinematics, reduce wheel slippage, and maintain the accuracy of the steering trajectory.

[0092] Step S330: Control each steering wheel to perform steering according to the steering angle.

[0093] Controlling the steering wheels to perform steering can be an operation that sends commands to the actuators (servo motors, hydraulic devices, etc.) of each steering wheel to drive the steering wheels to rotate. For example, when the self-moving robot is a lawnmower robot, commands can be sent to the servo motor of the lawnmower robot's front wheel to drive the left and right front wheels to turn to the first and second steering angles calculated above.

[0094] In some embodiments, the above method may further include: The target fuselage linear velocity and target fuselage rudder angle are obtained from the mobile robot; Based on the target fuselage linear velocity and the target fuselage rudder angle, determine the steering drive wheel set and the rolling speed of each wheel in the drive wheel set; The method also includes: Based on the steering angle, while controlling each steering wheel to perform steering, the steering drive wheel set and each wheel in the drive wheel set are driven to roll according to the rolling speed of each wheel in the steering drive wheel set.

[0095] The target body linear velocity refers to the horizontal component of the self-moving robot's speed during its expected turning motion. This horizontal component can be the speed component along the robot's axis and can be determined by the issued control commands. For example, during a stationary turning operation, the target body linear velocity of the self-moving robot during its spin is 0 mm / s. The rolling speed of each wheel refers to the linear velocity of the wheel along its direction of motion when the steering drive wheel assembly and each wheel in the drive wheel assembly are rolling purely; it is a core parameter for quantifying the speed of wheel movement. The self-moving robot can obtain the target body linear velocity and target body steering angle through cloud server commands and user input. For example, when the self-moving robot is a lawnmower, the target body linear velocity can be determined to be 0 mm / s and the target body steering angle to be 30° through control commands issued by the cloud server; when the self-moving robot is a cleaning robot, the user can input the target body linear velocity of 0 mm / s and the target body steering angle of 45° through a user device associated with the cleaning robot, which will then be forwarded to the cleaning robot via the user device.

[0096] After determining the target body linear velocity and target body rudder angle, the rolling speed of each wheel can be calculated using various methods such as vehicle dynamics models, differential speed distribution algorithms, and preset speed mapping tables. For example, when the self-moving robot is a lawnmower, the rolling speed of the steering drive wheel assembly and each wheel within it can be calculated using the Ackermann geometric extension model based on the target body linear velocity of 0 mm / s and the target body rudder angle of 30°. When the self-moving robot is a cleaning robot, the rolling speed of each wheel can be obtained by matching a pre-stored mapping table of target body linear velocity, target body rudder angle, and rolling speed of each wheel.

[0097] After determining the steering angle of the steering wheels and the rolling speed of each wheel, the controller of the self-moving robot can send steering commands to the servo motors of the steering wheels and drive commands to the drive motors of each wheel. The servo motors and motors work together to control each steering wheel to perform steering while driving the steering drive wheel group and each wheel in the drive wheel group to perform rolling.

[0098] By controlling the steering of the self-moving robot in the above manner, the deflection of the steering wheel and the rolling of each wheel can be performed synchronously, avoiding motion jerking and trajectory disorder caused by the separation of steering and drive, and significantly improving the smoothness of the steering process of the self-moving robot. In addition, the rolling speed of each wheel is accurately allocated based on the target body linear velocity and rudder angle, so that the wheel speed and steering angle are highly matched, reducing wheel slippage, ensuring that the steering trajectory is consistent with the planned path, and improving steering accuracy.

[0099] In some embodiments, the drive wheel assembly includes a first drive wheel and a second drive wheel; The above determination of the steering drive wheel assembly and the rolling speed of each wheel in the drive wheel assembly based on the target fuselage linear velocity and the target fuselage control angle includes: The first rolling speed of the first drive wheel and the second rolling speed of the second drive wheel are determined by the following formulas: (4) (5) in, This indicates the first rolling speed of the first drive wheel. This indicates the second rolling speed of the second drive wheel. Indicates the linear velocity of the target fuselage. Indicates the target fuselage rudder angle, This indicates the length of the line connecting the axles of the first and second drive wheels; The distance between the axle of the first drive wheel and the steering center is less than the distance between the axle of the second drive wheel and the steering center.

[0100] The first drive wheel refers to one of the pre-set drive wheels in the drive wheel assembly. It can be the left drive wheel, which works with the second drive wheel to provide driving force and has no steering function. The second drive wheel can be another drive wheel in the drive wheel assembly corresponding to the first drive wheel, and it can be the right drive wheel. For example, such as... Figure 1 As shown, when the drive wheel assembly includes a left rear wheel 130 and a right rear wheel 140, the first drive wheel can be the left rear wheel 130, and the second drive wheel can be the right rear wheel 140; for example, as... Figure 2 As shown, when the drive wheel assembly includes a left front wheel 210 and a right front wheel 220, the first drive wheel can be the left front wheel 210 and the second drive wheel can be the right front wheel 220.

[0101] The first rolling speed refers to the linear velocity of the first drive wheel moving along the direction of movement of the self-moving robot. The second rolling speed refers to the linear velocity of the second drive wheel moving along the direction of movement of the self-moving robot.

[0102] The length of the line connecting the axles of the first and second drive wheels can be the wheelbase between the first and second drive wheels, for example, such as... Figure 7 As shown, when the self-moving robot is a lawnmower robot, the drive wheel assembly includes a left rear wheel 730 and a right rear wheel 740. The length of the line connecting the axles of the first drive wheel and the second drive wheel is the length of the line connecting the axles of the left rear wheel 730 and the right rear wheel 740, which is ab. The distance Oa between the axis a of the first drive wheel and the steering center O is less than the distance Ob between the axis b of the second drive wheel and the steering center O.

[0103] After determining the target fuselage linear velocity, the target fuselage rudder angle, and the length of the line connecting the axes of the first and second drive wheels, substitute them into formulas (4)-(5), and perform multiplication, division, and addition / subtraction operations in sequence to output the first rolling speed of the first drive wheel. and the second rolling speed of the second drive wheel .

[0104] Determining the first and second rolling speeds using the above method serves two purposes. First, it allows for precise quantification of the power output speed and direction of the first drive wheel, providing an independent and clear basis for differential steering of the drive wheel assembly and ensuring precise control of the speed difference between the left and right drive wheels. Second, the calculation of the first and second rolling speeds is directly linked to the machine's movement direction, ensuring that the rolling direction of the first drive wheel aligns with the overall machine's movement intention. Figure 1 This design avoids power loss or trajectory deviation, improving driving efficiency. In addition, the first drive wheel, as the inner wheel, can operate at a speed suitable for short distances, while the second drive wheel, as the outer wheel, can operate at a speed suitable for long distances. This design allows for better rolling of the drive wheels and reduces lateral slippage and friction loss of the wheel set.

[0105] In some embodiments, the steering drive wheel includes a first steering wheel and a second steering wheel; The above-mentioned determination of the steering drive wheel set and the rolling speed of each wheel in the drive wheel set based on the target fuselage linear velocity and the target fuselage rudder angle may include: The third rolling speed of the first steering wheel and the fourth rolling speed of the second steering wheel are determined by the following formulas: (6) (7) in, This indicates the third rolling speed of the first steering wheel. This indicates the fourth rolling speed of the second steering wheel. Indicates the linear velocity of the target fuselage. Indicates the target fuselage rudder angle, This indicates the first steering angle of the first steering wheel. This indicates the second steering angle of the second steering wheel.

[0106] The third rolling speed refers to the linear speed of the first steering wheel moving in the direction of the self-moving robot's movement, and the fourth rolling speed refers to the linear speed of the second steering wheel moving in the direction of the self-moving robot's movement.

[0107] After determining the target fuselage linear velocity, target fuselage rudder angle, the first rotation angle of the first steering wheel, and the second steering angle of the second steering wheel, the third rolling speed of the first steering wheel and the fourth rolling speed of the second steering wheel can be calculated using the above formulas (6) and (7), respectively. Specifically, after determining the above parameters, the self-moving robot can first calculate the tangent of the target fuselage rudder angle and the tangent of the steering angle, then calculate the addition operation within the square root, and finally complete the multiplication operation in sequence to output the third rolling speed and the fourth rolling speed.

[0108] By determining the third and fourth rolling speeds in the above manner, and relating them to the first and second steering angles during calculation, the steering and rolling actions of the steering wheels can be highly coordinated, avoiding steering jerking and hesitation, and making the overall steering action of the machine more consistent.

[0109] Based on the above description, a reference turning radius for the drive wheel assembly is determined. This reference turning radius is the distance from the target reference point to the turning center of the self-moving robot. The target reference point is the midpoint of the line connecting the axles of all wheels in the drive wheel assembly, and the turning center lies on the straight line connecting the axles of all wheels in the drive wheel assembly. Based on the reference turning radius, the turning angle of each steering wheel in the steering drive wheel assembly is determined. According to the turning angle, each steering wheel is controlled to perform steering. On one hand, by limiting the turning center to the line connecting the axles of all wheels in the drive wheel assembly, and defining the reference turning radius as the distance from the midpoint of the line connecting the axles of the drive wheel assembly to the turning center, steering center drift is effectively avoided, making the steering reference unified and clear, and significantly improving the consistency of steering actions under different working conditions. On the other hand, determining the steering angle of the steering wheel based on the clearly defined reference turning radius establishes a logical association between the steering reference and the steering angle, solving the problem of unreliable angle allocation in existing technologies, effectively reducing steering trajectory deviation, and improving steering accuracy.

[0110] In some embodiments, the above method may further include: The target fuselage rudder angle to be compensated from the mobile robot, and the inertial measurement angle from the mobile robot are obtained. Calculate the deviation between the target fuselage control angle and the inertial measurement angle; The deviation value is added to the target fuselage control angle to be compensated to generate the compensated target fuselage control angle; The above-mentioned determination of the reference steering radius of the drive wheel set based on the target fuselage rudder angle of the self-moving robot may include: The reference turning radius of the drive wheel set is determined based on the compensated target fuselage rudder angle of the self-moving robot.

[0111] The target fuselage control angle to be compensated refers to the initially acquired target fuselage control angle before compensation processing. This angle may contain errors and needs to be corrected using inertial measurement data. Inertial measurement angles can be the actual attitude angles of the self-moving robot (such as the yaw angle in gyro data) calculated by the gyroscope or accelerometer in the IMU (Inertial Measurement Unit), reflecting the robot's current true steering state. The compensated target fuselage control angle is the final target fuselage control angle corrected by inertial measurement data, offering higher accuracy and reducing attitude drift.

[0112] After acquiring inertial measurement data from the mobile robot, the deviation between the target fuselage control angle to be compensated and the inertial measurement angle is determined. This deviation can be calculated using a PID (Proportional Integral Differential) control algorithm.

[0113] After determining the deviation between the target fuselage control angle to be compensated and the inertial measurement angle, this deviation can be added to the initial target fuselage control angle, such as by accumulation or weighted calculation, to generate the compensated target fuselage control angle.

[0114] In some embodiments, the compensated target fuselage control angle can be calculated using the following formula: (8) in, Indicates the target fuselage rudder angle to be compensated. This indicates the target fuselage control angle after compensation. This represents the inertial measurement angle obtained from the IMU. This indicates the deviation between the target fuselage control angle and the inertial measurement angle that needs to be compensated.

[0115] For example, if the steering angle to be compensated is 30°, and the deviation between the target fuselage rudder angle and the gyro angle is calculated to be 5° according to the PID control algorithm, then the deviation value is superimposed on the target fuselage rudder angle to be compensated, and a corrected target fuselage rudder angle of 30.5° with higher accuracy can be obtained.

[0116] By using inertial measurement angles acquired by the IMU to compensate for the target fuselage control angle, errors in the target fuselage control angle can be effectively made up, solving the attitude drift problem. Furthermore, in special scenarios where self-moving robots are prone to veering off course, such as when the fuselage is tilted or the moving surface is uneven, timely and effective automatic adjustments can be made. In addition, by calculating the deviation compensation value based on the PID algorithm, real-time dynamic compensation can be achieved, ensuring a high degree of consistency between the target fuselage control angle and the robot's actual motion state, significantly improving accuracy.

[0117] In some embodiments, after obtaining the inertial measurement angle, noise can be filtered using a Kalman filter algorithm before performing subsequent compensation calculations. This allows the inertial measurement angle to more accurately reflect the robot's posture, ensuring the stability of the target fuselage control angle output.

[0118] After obtaining the compensated target fuselage rudder angle, the reference steering radius of the drive wheel assembly can be determined based on this compensated target fuselage rudder angle of the self-moving robot. Firstly, the compensated rudder angle error is smaller and more closely resembles the actual state, making the reference steering radius more accurate as calculation input and preventing the initial rudder angle error from being transmitted to the radius calculation. Secondly, an accurate reference steering radius allows for more reasonable distribution of steering wheel angles, ensuring that steering actions conform to kinematic laws and reducing trajectory deviation. Thirdly, the radius corrected based on the actual posture can dynamically adapt to changes in robot motion, avoiding steering stuttering or loss of control due to radius deviation, and improving overall steering consistency.

[0119] In some embodiments, the above method may further include: Angle limiting processing is applied to the first steering angle and / or the second steering angle to ensure that the first steering angle and / or the second steering angle are within a preset angle range.

[0120] The angle limiting process refers to the process of constraining the calculated first and / or second steering angles to prevent them from exceeding the mechanical limits of the steering wheel or the safe range of the control logic. The preset angle range can be a pre-defined safe range for steering angles, typically determined by factors such as the mechanical structure of the steering wheel and the travel of the servo motor, and is expressed as an interval. For example, the preset angle range can be set to [-1.57 rad, 1.57 rad] (i.e., greater than or equal to -90 degrees and less than or equal to 90 degrees).

[0121] After the self-moving robot determines the first and second turning angles, it can compare the first and second turning angles with the upper and lower limits of the preset angle range. If the turning angle exceeds the upper or lower limit, it will be subject to angle limiting processing to ensure that it is within the preset angle range. The specific angle limiting processing standard can be that if it exceeds the upper limit, the upper limit value is taken, and if it exceeds the lower limit, the lower limit value is taken. For example, when the self-moving robot is a lawnmower robot, the calculated first turning angle is 35° (0.61 rad) and the second turning angle is 27° (0.47 rad), both within the range of [-1.57 rad, 1.57 rad]. Therefore, the first turning angle and the second turning angle can be directly output. For example, when the self-moving robot is a cleaning robot, the calculated first turning angle is 92° (1.60 rad), which exceeds the preset angle range of [-1.48 rad, 1.48 rad]. Based on the upper limit of the preset angle range, it can be limited to 85° (1.48 rad), so the output first turning angle is reduced to 85° (1.48 rad). The second turning angle is -100° (-1.75 rad), which exceeds the preset angle range of [-1.48 rad, 1.48 rad]. Based on the lower limit of the preset angle range, it can be limited to -85° (-1.48 rad), and so on.

[0122] In some embodiments, the above method may further include: If the target fuselage control angle is greater than zero, then reverse the rolling direction of the left wheel; If the target fuselage control angle is less than zero, reverse the rolling direction of the right wheel; In this context, a target fuselage rudder angle greater than zero indicates that the self-moving robot is performing a counterclockwise turn, while a target fuselage rudder angle less than zero indicates that the self-moving robot is performing a clockwise turn.

[0123] In different application scenarios, self-moving robots can perform clockwise or counterclockwise steering. A target fuselage control angle greater than zero is defined as the self-moving robot performing counterclockwise steering. For example, such as... Figure 4 As shown, the steering drive wheel assembly of the self-mobilizing robot includes a left front wheel 410 and a right front wheel 420, and the drive wheel assembly includes a left rear wheel 430 and a right rear wheel 440. When the target fuselage rudder angle is greater than zero, the self-mobilizing robot will turn to the left, and the steering center will be located to the left of the left rear wheel 430. A target fuselage rudder angle less than zero is defined as the self-mobilizing robot performing a clockwise turn. For example, as... Figure 5 As shown, the steering drive wheel set of the self-mobilizing robot includes a left front wheel 410 and a right front wheel 420, and the drive wheel set includes a left rear wheel 430 and a right rear wheel 440. When the target fuselage rudder angle is less than zero, the self-mobilizing robot will turn to the right. At this time, the steering center is located to the right of the right rear wheel 440.

[0124] like Figure 4 As shown, when the self-moving robot turns to the left, > 0, taking the output shaft direction E as a reference, the left wheel needs to roll clockwise and the right wheel counterclockwise to move forward. If this is not reversed, the left and right wheels will simultaneously roll counterclockwise along their respective output shaft directions E. Reversing the rolling direction of the left wheel is necessary for it to rotate clockwise with the output shaft direction E as a reference. For example, in Figure 4 In the mobile robot, the steering drive wheels include a left front wheel 410 and a right front wheel 420, and the drive wheels include a left rear wheel 430 and a right rear wheel 440. If... > 0, which can reverse the rolling direction of the left front wheel 410, making it roll clockwise along the direction E of the axle.

[0125] like Figure 5 As shown, when the self-moving robot turns to the right, < 0, taking the output axis direction E as a reference, the left wheel needs to roll clockwise and the right wheel counterclockwise to move forward. If the direction is not reversed, the left and right wheels will simultaneously roll clockwise along their respective output axis directions E. To ensure the self-moving robot can roll forward normally, the rolling direction of the right wheel needs to be reversed so that the right wheel rotates counterclockwise with the output axis direction E as a reference. For example, the steering drive wheels of the self-moving robot include a left front wheel 410 and a right front wheel 420, and the drive wheels include a left rear wheel 430 and a right rear wheel 440. If the value is less than 0, the rolling direction of the right front wheel 420 can be reversed, causing it to rotate counterclockwise along the direction E of the axle.

[0126] In practical applications, the rotation direction of the drive motor corresponding to each wheel is the same as the rotation direction of the wheel. For example, in Figure 4 In this self-propelled robot, the steering drive wheel assembly includes a left front wheel 410 and a right front wheel 420. When the left front wheel 410 rotates clockwise along its corresponding output shaft direction E, the corresponding drive motor also rotates clockwise. Conversely, when the right front wheel 420 rotates counterclockwise along its corresponding output shaft direction E, the corresponding drive motor also rotates counterclockwise. Therefore, the rolling direction of the wheels can be reversed by reversing the rotation direction of the drive motors corresponding to the wheels.

[0127] By employing the above methods, on the one hand, by reversing the rolling direction of a single wheel, the unintended longitudinal driving force generated during turning can be counteracted, allowing the self-moving robot to perform only pure rotational motion around the turning center when turning in place, without any unintended forward / backward / left / right displacement. On the other hand, by ensuring that the rolling direction of each wheel is highly matched with the counterclockwise / clockwise turning intention, power loss or steering jerking caused by conflicting wheel rolling directions is avoided, making the power coordination between the steering drive wheel and the drive wheel more in line with kinematic laws.

[0128] In some embodiments, the above method may further include: Obtain the actual rotational speed of the steering drive wheel set and the corresponding drive motor of each wheel in the drive wheel set; The actual rotational speed of each wheel is compared with the expected rotational speed of each wheel, and the execution stability of each wheel is verified based on the comparison results; The expected rotational speed of each wheel is obtained by converting the first rolling speed, the second rolling speed, the third rolling speed, and the fourth rolling speed, respectively.

[0129] The actual rotational speed refers to the real rotational speed of the steering drive wheel assembly and the corresponding drive motors of each wheel within the drive wheel assembly during operation. This speed can be detected in real time by sensors such as motor encoders. For example, sensors configured on each drive motor can collect the motor's rotational pulse signals in real time, and the controller calculates the actual rotational speed based on the pulse frequency and motor parameters (reduction ratio, wheel diameter, etc.). The expected rotational speed refers to the theoretical rotational speed of the drive motor converted from the rolling speed of each wheel calculated in the aforementioned manner. It serves as a reference standard for judging whether the drive motor is operating normally. It can be pre-configured or set by users or technicians based on experience, or it can be inferred by a cloud server based on the historical operating data of the self-propelled robot.

[0130] The expected rotational speeds of each wheel are obtained by converting the first rolling speed, the second rolling speed, the third rolling speed, and the fourth rolling speed, respectively. Specifically, the rolling speed of each wheel can be converted into the expected rotational speed of the corresponding drive motor using the following formula: (9) (10) (11) (12) For example, such as Figure 7 As shown, the steering drive wheels of the self-propelled robot include a first steering wheel (left front wheel) 710 and a second steering wheel (right front wheel) 720, and the drive wheel set includes a first drive wheel (left rear wheel) 730 and a second drive wheel (right rear wheel) 740, wherein, This indicates the expected rotational speed of the drive motor corresponding to the first drive wheel 730. This indicates the first rolling speed of the drive motor corresponding to the first drive wheel 730. This indicates the expected speed of the drive motor corresponding to the second drive wheel 740. This indicates the second rolling speed of the drive motor corresponding to the second drive wheel 740. This indicates the wheel diameter of the first drive wheel and the second drive wheel. This indicates the expected speed of the drive motor corresponding to the first steering wheel 710. This indicates the third rolling speed of the first steering wheel 710. This indicates the expected speed of the drive motor corresponding to the second steering wheel 720. This indicates the fourth rolling speed of the second steering wheel 720. This indicates the diameter of the first rotating wheel 710 or the second rotating wheel 720. This indicates the reference turning radius. Specifically, it refers to the wheel diameter of either the first drive wheel 730 or the second drive wheel 740. .

[0131] The actual rotational speed is compared with the corresponding expected rotational speed. The stability of each wheel's execution is verified based on the comparison results. This can be achieved by the controller calculating the difference between the actual and expected rotational speeds (rotational speed deviation). If the absolute value of the deviation is less than a preset threshold (which can be customized or determined by the system based on historical data), the steering execution is considered stable. If it is greater than the preset threshold, the steering is considered unstable and an alarm or adjustment command is triggered.

[0132] By comparing the actual rotational speed of each wheel with the expected rotational speed (converted from rolling speed), abnormalities such as motor malfunctions and wheel slippage can be quickly identified, preventing these abnormalities from escalating and causing loss of steering control, thus improving control safety. Verifying execution stability based on rotational speed comparison ensures that each wheel operates at the preset rolling speed, maintaining the correct match between steering angle and wheel speed, further reducing steering trajectory deviation.

[0133] In one exemplary embodiment, the above method may further include: During the process of controlling each steering wheel to perform steering, the motion posture data of the self-moving robot is sent to the user terminal so that the motion trajectory of the self-moving robot can be displayed on the user terminal's display interface.

[0134] Among them, motion posture data refers to data that reflects the real-time motion state of a self-moving robot, which may include tilt angle, angular velocity, turning angle, wheel speed, position coordinates, etc.

[0135] The user terminal refers to the electronic device used by the user to receive and view the posture data of the self-propelled robot, which can be a smartphone, tablet, laptop, etc. The display interface refers to the visual interface on the user terminal used to display the posture data, which can be presented in the form of charts, values, animations, etc.

[0136] The autonomous mobile robot can transmit motion posture data in the form of data packets to the bound user terminal via a wireless communication module (Bluetooth, Wi-Fi, 4 / 5G, etc.). For example, the autonomous mobile robot can send motion posture data to the user terminal in real time, updating the trajectory position on the user terminal's display interface in real time to form a continuous curve; for example, the autonomous mobile robot can send motion posture data to the user terminal every 100ms, updating a segment of the trajectory on the user terminal's display interface every 100ms to form a continuous curve, etc.

[0137] In one exemplary embodiment, the above method may further include: Acquire control commands; the control commands include the target body linear velocity and target body rudder angle of the self-moving robot; When the target fuselage linear velocity is determined to be zero and the target fuselage rudder angle is not zero, the self-moving robot is triggered to perform a turning operation in place, and the reference turning radius of the drive wheel set is determined according to the target fuselage rudder angle.

[0138] Control commands can be instructions sent via a cloud server or user equipment for motion control of a self-moving robot, which may include the target body linear velocity and target body rudder angle of the self-moving robot.

[0139] When the target body linear velocity is determined to be zero and the target body rudder angle is not zero, the self-moving robot can be triggered to perform a turning operation in place. For example, when the self-moving robot is a lawnmower, the user equipment sends a control command to the lawnmower, wherein the target body linear velocity is 0 mm / s and the target body rudder angle is 30°. Since the conditions of zero target body linear velocity and non-zero target body rudder angle are met, it can be determined that the lawnmower will turn in place as follows: Figure 11 The motion trajectory 1110 shown is used for a stationary turning operation. Further, the target fuselage control angle can be determined using the formula: Calculate the reference turning radius.

[0140] By clearly identifying the intention to turn in place under the conditions of zero target fuselage linear velocity and non-zero control angle, confusion with modes such as turning while moving can be avoided, ensuring precise matching between the turning action and control commands and eliminating the risk of erroneous triggering. Furthermore, by determining the reference turning radius based on the target fuselage control angle, combined with the clearly defined turning center constraints and angle allocation logic in the scheme, the trajectory of the turn in place can be accurately predicted, reducing turning deviation and improving the accuracy of turning in place.

[0141] It should be noted that during the self-moving robot's movement, it can continuously receive control commands. For example, it can receive a control command every 40ms. The self-moving robot can then recalculate the reference turning radius based on the different target fuselage rudder angles in the received control commands, and thus redetermine the rolling speed of each wheel and the turning angle of each steering wheel.

[0142] In some embodiments, the self-moving robot includes a working module, the distance between the turning center of the self-moving robot and a reference line being half the effective working width of the working module; wherein the reference line is a line passing through the working center of the working module and parallel to the longitudinal axis of the self-moving robot.

[0143] The working module can be the main module for the self-moving robot to perform operations. For example, when the self-moving robot is a lawnmower, the working module can be a cutting component; when the self-moving robot is a cleaning robot, the working module can be a mopping component, etc. The effective working width refers to the actual dimensional range of the working module during operation. For example, when the self-moving robot is a lawnmower, the effective working width is the effective cutting width of the cutting component; when the self-moving robot is a cleaning robot, the effective working width is the effective cleaning width of the cleaning component; when the self-moving robot is a seeding robot, the effective working width is the effective seeding width of the seeding component, etc.

[0144] like Figure 12 As shown, the steering drive wheel assembly of the self-moving robot may include a first steering wheel 1210 and a second steering wheel 1220, the drive wheel assembly may include a first drive wheel 1230 and a second drive wheel 1240, the working module may be 1250, and the reference line is a line passing through the working center 1251 of the working module 1250 and parallel to the longitudinal axis of the self-moving robot, such as... Figure 12 As shown by line 1260, the distance 1280 between the turning center 1270 and the reference line 1260 can be half the effective working width D1 of the working module 1250. This setting avoids situations where the shortest distance between the turning center and the reference line is too large, resulting in an area 1290 that the effective working width of the working module remains uncovered when the self-moving robot turns around, leading to an excessively large gap between the new and old working paths and missed areas by the working module. Simultaneously, this setting also avoids situations where the shortest distance between the turning center and the reference line is too small, resulting in an excessively small gap between the new and old working paths and overlapping areas of the working modules, thus affecting the working efficiency of the self-moving robot.

[0145] Figure 13 A flowchart of a steering control method for a self-moving robot is shown, which may include the following steps: Step S1302: Obtain the target body linear velocity and target body rudder angle from the mobile robot; Step S1304: Determine whether the linear velocity of the target body of the self-moving robot is zero and whether the rudder angle of the target body is not zero; If the target body linear velocity of the self-moving robot is zero and the rudder angle with the target body is not zero, then execute step S1306 to determine the steering center and the reference steering radius of the drive wheel set. Step S1308: Check whether the absolute value of the steering radius is equal to half the length of the line connecting the axes of the first steering wheel and the second steering wheel; If the absolute value of the reference turning radius is equal to half the length of the line connecting the axes of the first steering wheel and the second steering wheel, then step S1310 is executed to determine that either the first or the second turning angle is 90 degrees, and the other turning angle is determined based on the reference turning radius, the wheelbase of the self-moving robot, and the wheelbase between the first and the second steering wheels. If the reference turning radius is not equal to half the length of the line connecting the axes of the first steering wheel and the second steering wheel, then execute step S1312 to calculate the first steering angle of the first steering wheel and the second steering angle of the second steering wheel respectively using formulas (2)-(3); Step S1314: Obtain the inertial measurement angle from the mobile robot, and compensate the target fuselage rudder angle based on the inertial measurement angle to obtain the compensated target fuselage rudder angle. Step S1316: Determine the first rolling speed of the first drive wheel, the second rolling speed of the second drive wheel, the third rolling speed of the first steering wheel, and the fourth rolling speed of the second steering wheel using formulas (4)-(7). Step S1318: Determine whether the target fuselage control angle is greater than zero; If the target fuselage rudder angle is greater than zero, then execute step S1320 to reverse the rolling direction of the left wheel; a target fuselage rudder angle greater than zero indicates that the self-moving robot is performing a counterclockwise turn. If the target fuselage rudder angle is less than zero, then execute step S1322 to reverse the rolling direction of the right wheel; a target fuselage rudder angle less than zero indicates that the self-moving robot is performing a clockwise turn. Step S1324: Perform angle limiting processing on the first steering angle and the second steering angle; Step S1326: Based on the steering angle, while controlling each steering wheel to perform steering, drive the steering drive wheel group and each wheel in the drive wheel group to perform rolling according to the rolling speed of each wheel in the steering drive wheel group.

[0146] This disclosure also provides a self-moving robot, comprising: body; Steering drive wheel set; One of the drive wheel set, the steering drive wheel set, and the drive wheel set is located at the front end of the self-moving robot, and the other is located at the rear end of the self-moving robot; The controller is used to determine the reference turning radius of the drive wheel assembly, which is the distance from the target reference point to the turning center of the self-moving robot. The target reference point is the midpoint of the line connecting the axles of each wheel in the drive wheel assembly, and the turning center is located on the straight line connecting the axles of each wheel in the drive wheel assembly. Based on the reference turning radius, the controller determines the turning angle of each steering wheel in the steering drive wheel assembly. According to the turning angle, the controller controls each steering wheel to perform steering.

[0147] In some embodiments, the controller is further configured to: The target fuselage rudder angle obtained from the mobile robot; The reference turning radius of the drive wheel set is determined based on the target fuselage rudder angle of the self-moving robot.

[0148] In some embodiments, the controller is further configured to: The target fuselage rudder angle to be compensated from the mobile robot, and the inertial measurement angle from the mobile robot are obtained. Calculate the deviation between the target fuselage control angle and the inertial measurement angle; The deviation value is added to the target fuselage control angle to be compensated to generate the compensated target fuselage control angle; The reference turning radius of the drive wheel set is determined based on the compensated target fuselage rudder angle of the self-moving robot.

[0149] In some embodiments, the controller is further configured to: The wheelbase is obtained from the mobile robot; where the wheelbase is the perpendicular distance between the line connecting the axes of the steering wheels in the steering drive wheel set and the line connecting the axes of the drive wheels in the drive wheel set, and the line connecting the axes of the steering wheels in the steering drive wheel set is parallel or approximately parallel to the line connecting the axes of the drive wheels in the drive wheel set. Calculate the reference steering radius of the drive wheel set using the following formula:

[0150] in, Indicates the reference turning radius. This indicates the wheelbase of the self-moving robot. Indicates the target fuselage rudder angle.

[0151] In some embodiments, the steering drive wheel assembly includes a first steering wheel and a second steering wheel; The controller is also used for: The wheelbase of the mobile robot and the length of the line connecting the axes of the first and second steering wheels are obtained. Based on the reference turning radius of the drive wheel set, the wheelbase of the self-moving robot, and the length of the connecting line between the axes of the first steering drive wheel and the second steering wheel, the first steering angle of the first steering wheel and the second steering angle of the second steering wheel are determined respectively.

[0152] 22. The self-moving robot according to claim 21, wherein the controller is further configured to: The first steering angle of the first steering wheel and the second steering angle of the second steering wheel are calculated using the following formulas:

[0153] in, Indicates the first steering angle. Indicates the second steering angle. This indicates the wheelbase of the self-moving robot. Indicates the reference steering radius of the drive wheel set, This indicates the length of the line connecting the axes of the first steering drive wheel and the second steering wheel; First steering angle The calculation formula is applicable to the reference steering radius of the drive wheel set. The situation; Second steering angle The calculation formula is applicable to the reference steering radius of the drive wheel set. The situation; The distance between the axle of the first steering wheel and the steering center is less than the distance between the axle of the second steering wheel and the steering center.

[0154] In some embodiments, the controller is further configured to: If the reference steering radius of the drive wheel set satisfies Therefore, the first steering angle of the first steering wheel is determined to be 90 degrees, and the following is adopted: The calculation formula determines the second steering angle of the second steering wheel.

[0155] In some embodiments, the controller is further configured to: If the reference steering radius of the drive wheel set satisfies Therefore, the second steering angle of the second steering wheel is determined to be 90 degrees, and the following is adopted: The calculation formula determines the first steering angle of the first steering wheel.

[0156] In some embodiments, the controller is further configured to: Angle limiting processing is applied to the first steering angle and / or the second steering angle to ensure that the first steering angle and / or the second steering angle are within a preset angle range.

[0157] In some embodiments, the controller is further configured to: The target fuselage linear velocity and target fuselage rudder angle are obtained from the mobile robot; Based on the target fuselage linear velocity and the target fuselage rudder angle, determine the steering drive wheel set and the rolling speed of each wheel in the drive wheel set; The method also includes: Based on the steering angle, while controlling each steering wheel to perform steering, the steering drive wheel set and each wheel in the drive wheel set are driven to roll according to the rolling speed of each wheel in the steering drive wheel set.

[0158] In some embodiments, the drive wheel assembly includes a first drive wheel and a second drive wheel; The controller is also used for: The first rolling speed of the first drive wheel and the second rolling speed of the second drive wheel are determined by the following formulas:

[0159] in, This indicates the first rolling speed of the first drive wheel. This indicates the second rolling speed of the second drive wheel. Indicates the linear velocity of the target fuselage. Indicates the target fuselage rudder angle, This indicates the length of the line connecting the axes of the first and second drive wheels; The distance between the axle of the first drive wheel and the steering center is less than the distance between the axle of the second drive wheel and the steering center.

[0160] In some embodiments, the steering drive wheel includes a first steering wheel and a second steering wheel; The controller is also used for: The third rolling speed of the first steering wheel and the fourth rolling speed of the second steering wheel are determined by the following formulas:

[0161] in, This indicates the third rolling speed of the first steering wheel. This indicates the fourth rolling speed of the second steering wheel. Indicates the linear velocity of the target fuselage. Indicates the target fuselage rudder angle, This indicates the first steering angle of the first steering wheel. This indicates the second steering angle of the second steering wheel.

[0162] In some embodiments, the controller is further configured to: If the target fuselage control angle is greater than zero, then reverse the rolling direction of the left wheel; If the target fuselage control angle is less than zero, reverse the rolling direction of the right wheel; In this context, a target fuselage rudder angle greater than zero indicates that the self-moving robot is performing a counterclockwise turn, while a target fuselage rudder angle less than zero indicates that the self-moving robot is performing a clockwise turn.

[0163] In some embodiments, the controller is further configured to: Obtain the actual rotational speed of the steering drive wheel set and the corresponding drive motor of each wheel in the drive wheel set; The actual rotational speed of each wheel is compared with the expected rotational speed of each wheel, and the execution stability of each wheel is verified based on the comparison results; The expected rotational speed of each wheel is obtained by converting the first rolling speed, the second rolling speed, the third rolling speed, and the fourth rolling speed, respectively.

[0164] In some embodiments, the controller is further configured to: Acquire control commands; the control commands include the target body linear velocity and target body rudder angle of the self-moving robot; When the target fuselage linear velocity is determined to be zero and the target fuselage rudder angle is not zero, the self-moving robot is triggered to perform a turning operation in place, and the reference turning radius of the drive wheel set is determined according to the target fuselage rudder angle.

[0165] In some embodiments, the self-moving robot includes a working module, the distance between the turning center of the self-moving robot and a reference line being half the effective working width of the working module; wherein the reference line is a line passing through the working center of the working module and parallel to the longitudinal axis of the self-moving robot.

[0166] This disclosure also provides a steering control device for a self-moving robot, applied to a self-moving robot, the self-moving robot including a steering drive wheel set and a drive wheel set, one of which is located at the front end of the self-moving robot and the other at the rear end; as Figure 14As shown, the device 1400 may include: a turning radius determination module 1410, used to determine the reference turning radius of the drive wheel set, the reference turning radius being the distance from the target reference point to the turning center of the self-moving robot; wherein, the target reference point is the midpoint of the line connecting the axles of each wheel in the drive wheel set, and the turning center is located on the straight line connecting the axles of each wheel in the drive wheel set; a turning angle determination module 1420, used to determine the turning angle of each steering wheel in the steering drive wheel set based on the reference turning radius; and a turning execution module 1430, used to control each steering wheel to perform turning according to the turning angle.

[0167] The specific details of the steering control device modules of the respective mobile robots mentioned above have been described in detail in the corresponding steering control methods of the self-moving robots, so they will not be repeated here.

[0168] It should be noted that although several modules or units for the execution device have been mentioned in the detailed description above, this division is not mandatory. In fact, according to embodiments of this disclosure, the features and functions of two or more modules or units described above can be embodied in one module or unit. Conversely, the features and functions of one module or unit described above can be further divided and embodied by multiple modules or units.

[0169] In an exemplary embodiment of this disclosure, a self-moving robot is also provided, comprising: a body; a steering drive wheel set and a drive wheel set; a controller disposed in the body; the controller being configured to execute the steering control method of the self-moving robot described above.

[0170] In an exemplary embodiment of this disclosure, an electronic device capable of implementing the above-described method is also provided. For example, the electronic device may be a lawnmower robot capable of implementing the above-described method.

[0171] Those skilled in the art will understand that various aspects of this disclosure can be implemented as a system, method, or program product. Therefore, various aspects of this disclosure can be specifically implemented in the following forms: a completely hardware implementation, a completely software implementation (including firmware, microcode, etc.), or a combination of hardware and software aspects, collectively referred to herein as a "circuit," "module," or "system."

[0172] The following reference Figure 15 To describe an electronic device 1500 according to such an exemplary embodiment of the present disclosure. Figure 15 The electronic device 1500 shown is merely an example and should not be construed as limiting the functionality and scope of use of the embodiments disclosed herein.

[0173] like Figure 15As shown, the electronic device 1500 is presented in the form of a general-purpose computing device. The components of the electronic device 1500 may include, but are not limited to: at least one processing unit 1510, at least one storage unit 1520, a bus 1530 connecting different system components (including storage unit 1520 and processing unit 1510), and a display unit 1540.

[0174] The storage unit stores program code, which can be executed by the processing unit 1510 to perform the steps described in the "Exemplary Methods" section of this specification according to various exemplary embodiments of this disclosure. For example, the processing unit 1510 can execute... Figure 3 or Figure 13 The steps shown are as follows.

[0175] Storage unit 1520 may include readable media in the form of volatile storage units, such as random access memory (RAM) 1521 and / or cache memory 1522, and may further include read-only memory (ROM) 1523.

[0176] Storage unit 1520 may also include a program / utility 1524 having a set (at least one) program module 1525, such program module 1525 including but not limited to: operating system, one or more application programs, other program modules and program data, each or some combination of these examples may include an implementation of a network environment.

[0177] Bus 1530 can represent one or more of several types of bus structures, including a memory cell bus or memory cell controller, a peripheral bus, a graphics acceleration port, a processing unit, or a local bus using any of the various bus structures.

[0178] Electronic device 1500 can also communicate with one or more external devices 1600 (e.g., keyboard, pointing device, Bluetooth device, etc.), one or more devices that enable a user to interact with electronic device 1500, and / or any device that enables electronic device 1500 to communicate with one or more other computing devices (e.g., router, modem, etc.). This communication can be performed via input / output (I / O) interface 1550. Furthermore, electronic device 1500 can also communicate with one or more networks (e.g., local area network (LAN), wide area network (WAN), and / or public networks, such as the Internet) via network adapter 1560. As shown, network adapter 1560 communicates with other modules of electronic device 1500 via bus 1530. It should be understood that, although not shown in the figures, other hardware and / or software modules can be used in conjunction with electronic device 1500, including but not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data backup storage systems.

[0179] From the above description of the embodiments, those skilled in the art will readily understand that the exemplary embodiments described herein can be implemented by software or by combining software with necessary hardware. Therefore, the technical solutions according to the embodiments of this disclosure can be embodied in the form of a software product, which can be stored in a non-volatile storage medium (such as a CD-ROM, USB flash drive, external hard drive, etc.) or on a network, including several instructions to cause a computing device (such as a personal computer, server, terminal device, or network device, etc.) to execute the methods according to the embodiments of this disclosure.

[0180] In exemplary embodiments of this disclosure, a computer-readable storage medium is also provided, on which a program product capable of implementing the methods described above is stored. In some possible implementations, various aspects of this disclosure may also be implemented as a program product including program code that, when the program product is run on a terminal device, causes the terminal device to perform the steps of the various exemplary embodiments of this disclosure described in the "Exemplary Methods" section above.

[0181] The program product for implementing the above-described method according to embodiments of the present disclosure may employ a portable compact disc read-only memory (CD-ROM) and include program code, and may run on a terminal device, such as a personal computer. However, the program product of the present disclosure is not limited thereto. In this document, the readable storage medium may be any tangible medium containing or storing a program that may be used by or in conjunction with an instruction execution system, apparatus, or device.

[0182] The program product may employ any combination of one or more readable media. A readable medium may be a readable signal medium or a readable storage medium. A readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of readable storage media (a non-exhaustive list) include: an electrical connection having one or more wires, a portable disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof.

[0183] Computer-readable signal media may include data signals propagated in baseband or as part of a carrier wave, carrying readable program code. Such propagated data signals may take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. A readable signal medium may also be any readable medium other than a readable storage medium, capable of sending, propagating, or transmitting programs for use by or in conjunction with an instruction execution system, apparatus, or device.

[0184] The program code contained on the readable medium may be transmitted using any suitable medium, including but not limited to wireless, wired, optical fiber, RF, etc., or any suitable combination thereof.

[0185] Program code for performing the operations of this disclosure can be written in any combination of one or more programming languages, including object-oriented programming languages ​​such as Java and C++, and conventional procedural programming languages ​​such as C or similar languages. The program code can execute entirely on the user's computing device, partially on the user's computing device, as a standalone software package, partially on the user's computing device and partially on a remote computing device, or entirely on a remote computing device or server. In cases involving remote computing devices, the remote computing device can be connected to the user's computing device via any type of network, including a local area network (LAN) or a wide area network (WAN), or it can be connected to an external computing device (e.g., via the Internet using an Internet service provider).

[0186] Furthermore, the above figures are merely illustrative of the processes included in the method according to exemplary embodiments of this disclosure and are not intended to be limiting. It is readily understood that the processes shown in the above figures do not indicate or limit the temporal order of these processes. Additionally, it is readily understood that these processes may be executed synchronously or asynchronously, for example, in multiple modules.

[0187] Other embodiments of this disclosure will readily occur to those skilled in the art upon consideration of the specification and practice of the invention disclosed herein. This application is intended to cover any variations, uses, or adaptations of this disclosure that follow the general principles of this disclosure and include common knowledge or customary techniques in the art not disclosed herein. The specification and embodiments are to be considered exemplary only, and the true scope and spirit of this disclosure are indicated by the claims.

[0188] It should be understood that this disclosure is not limited to the precise structures described above and shown in the accompanying drawings, and various modifications and changes can be made without departing from its scope. The scope of this disclosure is defined only by the appended claims.

Claims

1. A steering control method for a self-moving robot, characterized in that, The method is applied to a self-moving robot, the self-moving robot including a steering drive wheel assembly and a drive wheel assembly, one of which is located at the front end of the self-moving robot, and the other is located at the rear end of the self-moving robot; the method includes: A reference turning radius is determined for the drive wheel assembly, which is the distance from the target reference point to the turning center of the self-moving robot; wherein the target reference point is the midpoint of the line connecting the axles of each wheel in the drive wheel assembly, and the turning center is located on the straight line connecting the axles of each wheel in the drive wheel assembly. Based on the reference steering radius, the steering angle of each steering wheel in the steering drive wheel set is determined; Based on the steering angle, control each steering wheel to perform steering.

2. The method according to claim 1, characterized in that, Determining the reference steering radius of the drive wheel assembly includes: Obtain the target fuselage rudder angle of the self-moving robot; The reference turning radius of the drive wheel assembly is determined based on the target fuselage rudder angle of the self-moving robot.

3. The method according to claim 2, characterized in that, The method further includes: Obtain the target fuselage rudder angle to be compensated for by the self-moving robot, and the inertial measurement angle of the self-moving robot; Calculate the deviation between the target fuselage control angle to be compensated and the inertial measurement angle; The deviation value is added to the target fuselage control angle to be compensated to generate the compensated target fuselage control angle; Determining the reference turning radius of the drive wheel assembly based on the target fuselage rudder angle of the self-moving robot includes: Based on the compensated target fuselage rudder angle of the self-moving robot, the reference turning radius of the drive wheel set is determined.

4. The method according to claim 2, characterized in that, Determining the reference turning radius of the drive wheel assembly based on the target fuselage rudder angle of the self-moving robot includes: Obtain the wheelbase of the self-moving robot; wherein, the wheelbase is the perpendicular distance between the line connecting the axes of the steering wheels in the steering drive wheel assembly and the line connecting the axes of the drive wheels in the drive wheel assembly, and the line connecting the axes of the steering wheels in the steering drive wheel assembly is parallel or approximately parallel to the line connecting the axes of the drive wheels in the drive wheel assembly. The reference steering radius of the drive wheel assembly is calculated using the following formula: in, This indicates the reference turning radius. This indicates the wheelbase of the self-moving robot. This indicates the target fuselage rudder angle.

5. The method according to claim 4, characterized in that, The steering drive wheel assembly includes a first steering wheel and a second steering wheel; Determining the steering angle of each steering wheel in the steering drive wheel assembly based on the reference steering radius of the drive wheel assembly includes: Obtain the wheelbase of the self-moving robot, and the length of the line connecting the axes of the first steering wheel and the second steering wheel; Based on the reference turning radius of the drive wheel assembly, the wheelbase of the self-moving robot, and the length of the line connecting the axes of the first steering drive wheel and the second steering wheel, the first steering angle of the first steering wheel and the second steering angle of the second steering wheel are determined respectively.

6. The method according to claim 5, characterized in that, Determining the first steering angle of the first steering wheel and the second steering angle of the second steering wheel respectively includes: The first steering angle of the first steering wheel and the second steering angle of the second steering wheel are calculated using the following formulas: in, This indicates the first steering angle. This indicates the second steering angle. This indicates the wheelbase of the self-moving robot. Indicates the reference steering radius of the drive wheel assembly, This indicates the length of the line connecting the axes of the first steering drive wheel and the second steering wheel; First steering angle The calculation formula is applicable to the reference steering radius of the drive wheel assembly. The situation; Second steering angle The calculation formula is applicable to the reference steering radius of the drive wheel assembly. The situation; The distance between the axis of the first steering wheel and the steering center is less than the distance between the axis of the second steering wheel and the steering center.

7. The method according to claim 6, characterized in that, The method further includes: If the reference steering radius of the drive wheel set satisfies Therefore, the first steering angle of the first steering wheel is determined to be 90 degrees, and the following is adopted: The calculation formula determines the second steering angle of the second steering wheel.

8. The method according to claim 6, characterized in that, The method further includes: If the reference steering radius of the drive wheel set satisfies Therefore, the second steering angle of the second steering wheel is determined to be 90 degrees, and the following is adopted: The calculation formula determines the first steering angle of the first steering wheel.

9. The method according to any one of claims 5-8, characterized in that, The method further includes: Angle limiting processing is applied to the first steering angle and / or the second steering angle to ensure that the first steering angle and / or the second steering angle are within a preset angle range.

10. The method according to any one of claims 5-9, characterized in that, The method further includes: Obtain the target body linear velocity and target body rudder angle of the self-moving robot; Based on the target fuselage linear velocity and the target fuselage rudder angle, determine the steering drive wheel set and the rolling speed of each wheel in the drive wheel set; The method further includes: Based on the steering angle, while controlling each steering wheel to perform steering, the steering drive wheel group and each wheel in the drive wheel group are driven to perform rolling according to the rolling speed of the steering drive wheel group and each wheel in the drive wheel group.

11. The method according to claim 10, characterized in that, The drive wheel assembly includes a first drive wheel and a second drive wheel; The step of determining the rolling speed of the steering drive wheel assembly and each wheel in the drive wheel assembly based on the target fuselage linear velocity and the target fuselage rudder angle includes: The first rolling speed of the first drive wheel and the second rolling speed of the second drive wheel are determined by the following formulas: in, This indicates the first rolling speed of the first drive wheel. This indicates the second rolling speed of the second drive wheel. Indicates the linear velocity of the target fuselage. Indicates the target fuselage rudder angle, This indicates the length of the line connecting the axes of the first and second drive wheels; The distance between the axis of the first drive wheel and the steering center is less than the distance between the axis of the second drive wheel and the steering center.

12. The method according to claim 11, characterized in that, The steering drive wheel includes a first steering wheel and a second steering wheel; The step of determining the rolling speed of the steering drive wheel assembly and each wheel in the drive wheel assembly based on the target fuselage linear velocity and the target fuselage rudder angle includes: The third rolling speed of the first steering wheel and the fourth rolling speed of the second steering wheel are determined by the following formulas: in, This indicates the third rolling speed of the first steering wheel. This indicates the fourth rolling speed of the second steering wheel. Indicates the linear velocity of the target fuselage. Indicates the target fuselage rudder angle, This indicates the first steering angle of the first steering wheel. This indicates the second steering angle of the second steering wheel.

13. The method according to claim 11 or 12, characterized in that, The method further includes: If the target fuselage control angle is greater than zero, then reverse the rolling direction of the left wheel; If the target fuselage control angle is less than zero, then reverse the rolling direction of the right wheel; Wherein, a target fuselage rudder angle greater than zero indicates that the self-moving robot is performing a counterclockwise turn, and a target fuselage rudder angle less than zero indicates that the self-moving robot is performing a clockwise turn.

14. The method according to claim 12, characterized in that, The method further includes: Obtain the actual rotational speed of the drive motor corresponding to each wheel in the steering drive wheel set; The actual rotational speed of each wheel is compared with the expected rotational speed of each wheel, and the execution stability of each wheel is verified based on the comparison results; The expected rotational speeds of each wheel are obtained by converting the first rolling speed, the second rolling speed, the third rolling speed, and the fourth rolling speed, respectively.

15. The method according to any one of claims 1-14, characterized in that, The method further includes: Obtain control commands; the control commands include the target body linear velocity and target body rudder angle of the self-moving robot; When the target fuselage linear velocity is determined to be zero and the target fuselage rudder angle is not zero, the self-moving robot is triggered to perform a turning operation in place, and the reference turning radius of the drive wheel set is determined according to the target fuselage rudder angle.

16. The method according to any one of claims 1-14, characterized in that, The self-moving robot includes a working module, and the distance between the turning center of the self-moving robot and the reference line is half of the effective working width of the working module; wherein the reference line is a line that passes through the working center of the working module and is parallel to the longitudinal axis of the self-moving robot.

17. A self-moving robot, characterized in that, include: body; Steering drive wheel set; The drive wheel assembly, wherein one of the steering drive wheel assembly and the drive wheel assembly is located at the front end of the self-moving robot, and the other is located at the rear end of the self-moving robot; A controller is configured to determine a reference turning radius for the drive wheel assembly, wherein the reference turning radius is the distance from a target reference point to the turning center of the self-moving robot; wherein the target reference point is the midpoint of the line connecting the axles of each wheel in the drive wheel assembly, and the turning center is located on the straight line connecting the axles of each wheel in the drive wheel assembly; based on the reference turning radius, the controller determines the turning angle of each steering wheel in the steering drive wheel assembly; and controls each steering wheel to perform steering according to the turning angle.

18. The self-moving robot according to claim 17, characterized in that, The controller is also used for: Obtain the target fuselage rudder angle of the self-moving robot; The reference turning radius of the drive wheel assembly is determined based on the target fuselage rudder angle of the self-moving robot.

19. The self-moving robot according to claim 18, characterized in that, The controller is also used for: Obtain the target fuselage rudder angle to be compensated for by the self-moving robot, and the inertial measurement angle of the self-moving robot; Calculate the deviation between the target fuselage control angle to be compensated and the inertial measurement angle; The deviation value is added to the target fuselage control angle to be compensated to generate the compensated target fuselage control angle; Based on the compensated target fuselage rudder angle of the self-moving robot, the reference turning radius of the drive wheel set is determined.

20. The self-moving robot according to claim 18, characterized in that, The controller is also used for: Obtain the wheelbase of the self-moving robot; wherein, the wheelbase is the perpendicular distance between the line connecting the axes of the steering wheels in the steering drive wheel assembly and the line connecting the axes of the drive wheels in the drive wheel assembly, and the line connecting the axes of the steering wheels in the steering drive wheel assembly is parallel or approximately parallel to the line connecting the axes of the drive wheels in the drive wheel assembly. The reference steering radius of the drive wheel assembly is calculated using the following formula: in, This indicates the reference turning radius. This indicates the wheelbase of the self-moving robot. This indicates the target fuselage rudder angle.

21. The self-moving robot according to claim 20, characterized in that, The steering drive wheel assembly includes a first steering wheel and a second steering wheel; The controller is also used for: Obtain the wheelbase of the self-moving robot, and the length of the line connecting the axes of the first steering wheel and the second steering wheel; Based on the reference turning radius of the drive wheel assembly, the wheelbase of the self-moving robot, and the length of the line connecting the axes of the first steering drive wheel and the second steering wheel, the first steering angle of the first steering wheel and the second steering angle of the second steering wheel are determined respectively.

22. The self-moving robot according to claim 21, characterized in that, The controller is also used for: The first steering angle of the first steering wheel and the second steering angle of the second steering wheel are calculated using the following formulas: in, This indicates the first steering angle. This indicates the second steering angle. This indicates the wheelbase of the self-moving robot. Indicates the reference steering radius of the drive wheel assembly, This indicates the length of the line connecting the axes of the first steering drive wheel and the second steering wheel; First steering angle The calculation formula is applicable to the reference steering radius of the drive wheel assembly. The situation; Second steering angle The calculation formula is applicable to the reference steering radius of the drive wheel assembly. The situation; The distance between the axis of the first steering wheel and the steering center is less than the distance between the axis of the second steering wheel and the steering center.

23. The self-moving robot according to claim 22, characterized in that, The controller is also used for: If the reference steering radius of the drive wheel set satisfies Therefore, the first steering angle of the first steering wheel is determined to be 90 degrees, and the following is adopted: The calculation formula determines the second steering angle of the second steering wheel.

24. The self-moving robot according to claim 22, characterized in that, The controller is also used for: If the reference steering radius of the drive wheel set satisfies Therefore, the second steering angle of the second steering wheel is determined to be 90 degrees, and the following is adopted: The calculation formula determines the first steering angle of the first steering wheel.

25. The self-moving robot according to any one of claims 21-24, characterized in that, The controller is also used for: Angle limiting processing is applied to the first steering angle and / or the second steering angle to ensure that the first steering angle and / or the second steering angle are within a preset angle range.

26. The self-moving robot according to any one of claims 21-25, characterized in that, The controller is also used for: Obtain the target body linear velocity and target body rudder angle of the self-moving robot; Based on the target fuselage linear velocity and the target fuselage rudder angle, determine the steering drive wheel set and the rolling speed of each wheel in the drive wheel set; The method further includes: Based on the steering angle, while controlling each steering wheel to perform steering, the steering drive wheel group and each wheel in the drive wheel group are driven to perform rolling according to the rolling speed of the steering drive wheel group and each wheel in the drive wheel group.

27. The self-moving robot according to claim 26, characterized in that, The drive wheel assembly includes a first drive wheel and a second drive wheel; The controller is also used for: The first rolling speed of the first drive wheel and the second rolling speed of the second drive wheel are determined by the following formulas: in, This indicates the first rolling speed of the first drive wheel. This indicates the second rolling speed of the second drive wheel. Indicates the linear velocity of the target fuselage. Indicates the target fuselage rudder angle, This indicates the length of the line connecting the axes of the first and second drive wheels; The distance between the axis of the first drive wheel and the steering center is less than the distance between the axis of the second drive wheel and the steering center.

28. The self-moving robot according to claim 27, characterized in that, The steering drive wheel includes a first steering wheel and a second steering wheel; The controller is also used for: The third rolling speed of the first steering wheel and the fourth rolling speed of the second steering wheel are determined by the following formulas: in, This indicates the third rolling speed of the first steering wheel. This indicates the fourth rolling speed of the second steering wheel. Indicates the linear velocity of the target fuselage. Indicates the target fuselage rudder angle, This indicates the first steering angle of the first steering wheel. This indicates the second steering angle of the second steering wheel.

29. The self-moving robot according to claim 27 or 28, characterized in that, The controller is also used for: If the target fuselage control angle is greater than zero, then reverse the rolling direction of the left wheel; If the target fuselage control angle is less than zero, then reverse the rolling direction of the right wheel; Wherein, a target fuselage rudder angle greater than zero indicates that the self-moving robot is performing a counterclockwise turn, and a target fuselage rudder angle less than zero indicates that the self-moving robot is performing a clockwise turn.

30. The self-moving robot according to claim 28, characterized in that, The controller is also used for: Obtain the actual rotational speed of the drive motor corresponding to each wheel in the steering drive wheel set; The actual rotational speed of each wheel is compared with the expected rotational speed of each wheel, and the execution stability of each wheel is verified based on the comparison results; The expected rotational speeds of each wheel are obtained by converting the first rolling speed, the second rolling speed, the third rolling speed, and the fourth rolling speed, respectively.

31. The self-moving robot according to any one of claims 17-30, characterized in that, The controller is also used for: Obtain control commands; the control commands include the target body linear velocity and target body rudder angle of the self-moving robot; When the target fuselage linear velocity is determined to be zero and the target fuselage rudder angle is not zero, the self-moving robot is triggered to perform a turning operation in place, and the reference turning radius of the drive wheel set is determined according to the target fuselage rudder angle.

32. The self-moving robot according to any one of claims 17-30, characterized in that, The self-moving robot includes a working module, and the distance between the turning center of the self-moving robot and the reference line is half of the effective working width of the working module; wherein the reference line is a line that passes through the working center of the working module and is parallel to the longitudinal axis of the self-moving robot.

33. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the method according to any one of claims 1-16.

34. An electronic device, characterized in that, include: processor; as well as Memory for storing the executable instructions of the processor; The processor is configured to execute the method of any one of claims 1-16 by executing the executable instructions.