A gyro-based ackerman chassis correction method, system, and storage medium

By using a gyroscope-based method to control the relationship between the motor steering angle and the turning radius of the Ackerman chassis, and by utilizing a turning model and curve fitting, the problem of insufficient turning control accuracy of the chassis was solved, and higher turning control accuracy was achieved.

CN117124873BActive Publication Date: 2026-04-17GUANGZHOU GOSUNCN ROBOTICS CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
GUANGZHOU GOSUNCN ROBOTICS CO LTD
Filing Date
2023-08-29
Publication Date
2026-04-17

AI Technical Summary

Technical Problem

In the existing technology, it is difficult to accurately calculate the relationship between the motor steering angle and the chassis turning radius of the Ackerman chassis, resulting in insufficient chassis turning control precision, which is subject to factors such as complex linkage relationships, production errors and assembly errors.

Method used

By using a gyroscope-based method, the motor is controlled to make the chassis move in a circular motion with a corrected speed. The linear velocity and angular velocity are obtained, the turning radius is calculated using a turning model, and the relationship between the motor steering angle and the turning radius is obtained through curve fitting, thus eliminating theoretical deviations.

Benefits of technology

It improves the turning control precision of the chassis in actual operation, reduces deviations caused by structural errors, and achieves precise turning.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117124873B_ABST
    Figure CN117124873B_ABST
Patent Text Reader

Abstract

This invention provides a gyroscope-based Ackerman chassis correction method, system, and storage medium. First, the motor steering angle is controlled to make the chassis perform circular motion. Based on the chassis's linear velocity and angular velocity obtained from the gyroscope, the turning radius is calculated using the relationship of the Ackerman chassis structure's turning model. Then, the motor steering angle is adjusted to obtain the turning radii corresponding to multiple motor steering angles. Finally, curve fitting is performed on the motor steering angle and the corresponding turning radius to calculate the relationship between the motor steering angle and the chassis turning radius. The Ackerman chassis correction method provided by this invention obtains a relationship between the motor steering angle and the chassis turning radius that reflects the chassis's actual operation, reducing deviations caused by structural factors and improving the control accuracy of the chassis during operation.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of Ackerman chassis control, and more specifically, to a gyroscope-based Ackerman chassis correction method, system, and storage medium. Background Technology

[0002] With the development of technology, Ackerman chassis have been gradually applied to various fields, playing a particularly important role in the field of motion robots. The front wheel steering of an Ackerman chassis is typically controlled by a motor that controls the steering angle, driving a linkage structure to control the steering of the chassis's front wheels. Theoretically, the relationship between the motor steering angle and the chassis turning radius can be calculated from the transmission relationship of the linkage structure. However, in practical applications, due to the complex linkage relationships, the relationship between the motor steering angle and the chassis turning radius is difficult to obtain; furthermore, manufacturing errors in chassis assembly components, assembly errors, and installation deformation can all lead to deviations between the theoretically calculated relationship and actual applications.

[0003] Figure 1 A turning model of the Ackermann chassis structure is shown. (Example) Figure 1 As shown, the distance between the front and rear axles of the chassis is L, the steering angle of the front wheels of the chassis is θ, the turning radius of the chassis is R, the linear velocity of the chassis is v, and the angular velocity of the chassis is ω. The above parameters satisfy the following relationship:

[0004] v=ω·R

[0005] Summary of the Invention

[0006] In view of the above problems, the purpose of this invention is to provide a gyroscope-based Ackerman chassis correction method, system, and storage medium. This method controls the motor steering angle to make the chassis perform circular motion. Based on the chassis's linear velocity and angular velocity obtained from the gyroscope, the turning radius is calculated using the relationship of the Ackerman chassis structure's turning model. The relationship between the motor steering angle and the chassis turning radius is calculated through curve fitting. This invention, through practical correction testing methods, eliminates theoretical deviations in the obtained relationship between the motor steering angle and the chassis turning radius, enabling robots equipped with this chassis to achieve precise turning.

[0007] The first aspect of this invention provides a gyroscope-based Ackerman chassis correction method, the method comprising:

[0008] Control the motor to make the chassis move in a circular motion at the first corrective speed;

[0009] Set a first motor angle in a preset rotation direction, and obtain a first linear velocity and a first angular velocity; obtain a first turning radius based on the first linear velocity and the first angular velocity;

[0010] Set the second motor angle in the preset rotation direction to obtain the second linear velocity and the second angular velocity; obtain the second turning radius based on the second linear velocity and the second angular velocity;

[0011] At least one third motor angle is set in the preset rotation direction to obtain the third linear velocity and the third angular velocity; the third turning radius is obtained based on the third linear velocity and the third angular velocity.

[0012] Based on the angles of the first motor, the second motor, at least one third motor, and the first turning radius, the second turning radius, and at least one third turning radius, the turning angle relationship is obtained;

[0013] Based on the above method steps, obtain the first angle relationship in the first rotation direction and the second angle relationship in the second rotation direction;

[0014] Based on the first and second angle relationships, the third angle relationship is obtained.

[0015] In this scheme, the first turning radius is obtained based on the first linear velocity and the first angular velocity, specifically as follows:

[0016] Calculate the difference between the first linear velocity and the first correction velocity to obtain the first velocity difference;

[0017] The time when the first speed difference exceeds a preset first speed threshold is recorded as the first deviation time;

[0018] When the first deviation time does not exceed the preset first time threshold, the first turning radius is obtained based on the first correction speed and the first angular velocity.

[0019] In this scheme, the first turning radius is obtained based on the first linear velocity and the first angular velocity, specifically as follows:

[0020] Calculate the difference between the first linear velocity and the first correction velocity to obtain the first velocity difference;

[0021] The time when the first speed difference exceeds a preset first speed threshold is recorded as the first deviation time;

[0022] When the first deviation time exceeds the preset first time threshold, the first turning radius is obtained based on the first linear velocity and the first angular velocity, and a new motor angle flag is set to increase the number of tests for the third motor angle.

[0023] In this solution, the increase in the number of tests for the third motor angle is specifically as follows:

[0024] Obtain the number of angles of the third motor and determine whether it is lower than the preset threshold for the number of angles of the third motor;

[0025] If it is lower, between the first motor angle and the second motor angle, an untested angle is obtained as the third motor angle, which is used to obtain the third turning radius.

[0026] In this scheme, the first turning angle relationship is obtained based on the first motor angle, the second motor angle, at least one third motor angle, and the first turning radius, the second turning radius, and at least one third turning radius, as follows:

[0027] Draw a coordinate system with the turning radius as the horizontal axis and the motor angle as the vertical axis;

[0028] Plot the coordinates of the first motor angle, the second motor angle, at least one of the third motor angles, and the corresponding first turning radius, second turning radius, and at least one of the third turning radii;

[0029] At least two coordinate points are selected for fitting to obtain the angular relationship between the motor angle and the turning radius;

[0030] The fitting method used was curve fitting.

[0031] This plan also includes:

[0032] The linear velocity of the chassis movement is obtained through a linear velocity sensor;

[0033] The angular velocity of the chassis as it moves in a circle is obtained using a gyroscope.

[0034] A second aspect of the present invention provides a gyroscope-based Ackerman chassis correction system, including a gyroscope-based Ackerman chassis correction method program, wherein the gyroscope-based Ackerman chassis correction method program, when executed by the processor, performs the following steps:

[0035] Control the motor to make the chassis move in a circular motion at the first corrective speed;

[0036] Set a first motor angle in a preset rotation direction, and obtain a first linear velocity and a first angular velocity; obtain a first turning radius based on the first linear velocity and the first angular velocity;

[0037] Set the second motor angle in the preset rotation direction to obtain the second linear velocity and the second angular velocity; obtain the second turning radius based on the second linear velocity and the second angular velocity;

[0038] At least one third motor angle is set in the preset rotation direction to obtain the third linear velocity and the third angular velocity; the third turning radius is obtained based on the third linear velocity and the third angular velocity.

[0039] Based on the angles of the first motor, the second motor, at least one third motor, and the first turning radius, the second turning radius, and at least one third turning radius, the turning angle relationship is obtained;

[0040] Based on the above method steps, obtain the first angle relationship in the first rotation direction and the second angle relationship in the second rotation direction;

[0041] Based on the first and second angle relationships, the third angle relationship is obtained.

[0042] In this scheme, the first turning radius is obtained based on the first linear velocity and the first angular velocity, specifically as follows:

[0043] Calculate the difference between the first linear velocity and the first correction velocity to obtain the first velocity difference;

[0044] The time when the first speed difference exceeds a preset first speed threshold is recorded as the first deviation time;

[0045] When the first deviation time does not exceed the preset first time threshold, the first turning radius is obtained based on the first correction speed and the first angular velocity.

[0046] In this scheme, the first turning radius is obtained based on the first linear velocity and the first angular velocity, specifically as follows:

[0047] Calculate the difference between the first linear velocity and the first correction velocity to obtain the first velocity difference;

[0048] The time when the first speed difference exceeds a preset first speed threshold is recorded as the first deviation time;

[0049] When the first deviation time exceeds the preset first time threshold, the first turning radius is obtained based on the first linear velocity and the first angular velocity, and a new motor angle flag is set to increase the number of tests for the third motor angle.

[0050] A third aspect of the present invention provides a computer-readable storage medium comprising a gyroscope-based Ackerman chassis correction method program, wherein when the gyroscope-based Ackerman chassis correction method program is executed by a processor, it implements the steps of the gyroscope-based Ackerman chassis correction method as described in any of the preceding claims.

[0051] This invention provides a gyroscope-based Ackerman chassis correction method, system, and storage medium. First, the motor steering angle is controlled to make the chassis perform circular motion. Based on the chassis's linear velocity and angular velocity obtained from the gyroscope, the turning radius is calculated using the relationship of the Ackerman chassis structure's turning model. Then, the motor steering angle is adjusted to obtain the turning radii corresponding to multiple motor steering angles. Finally, curve fitting is performed on the motor steering angle and the corresponding turning radius to calculate the relationship between the motor steering angle and the chassis turning radius. The Ackerman chassis correction method provided by this invention obtains a relationship between the motor steering angle and the chassis turning radius that reflects the chassis's actual operation, reducing deviations caused by structural factors and improving the control accuracy of the chassis during operation. Attached Figure Description

[0052] To more clearly illustrate the technical solutions of the embodiments of the present invention, the accompanying drawings used in the embodiments will be briefly described below. It should be understood that the following drawings only show some embodiments of the present invention and should not be regarded as a limitation on the scope.

[0053] Figure 1 A turning model of the Ackermann chassis structure is shown;

[0054] Figure 2 A flowchart of an Ackerman chassis correction method based on a gyroscope according to the present invention is shown;

[0055] Figure 3 A flowchart illustrating an embodiment of the present invention for obtaining a turning radius is shown.

[0056] Figure 4 This invention provides another flowchart for obtaining the turning radius according to an embodiment of the invention;

[0057] Figure 5 A block diagram of an Ackerman chassis correction system based on a gyroscope according to the present invention is shown. Detailed Implementation

[0058] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.

[0059] Unless otherwise defined, all terms (including technical and scientific terms) used in embodiments of this invention have the same meaning as commonly understood by one of ordinary skill in the art to which this invention pertains. It should also be understood that terms such as those defined in a common dictionary should be interpreted as having a meaning consistent with their meaning in the context of the relevant art, and not as being interpreted in an idealized or highly formalized sense, unless expressly defined in this embodiment of the invention.

[0060] The terms "first," "second," and similar terms used in the embodiments of this invention do not indicate any order, quantity, or importance, but are merely used to distinguish different components. Similarly, terms such as "an," "one," or "the" do not indicate a quantity limitation, but rather indicate the presence of at least one. Likewise, terms such as "including" or "comprising" mean that the element or object preceding the word encompasses the elements or objects listed following the word and their equivalents, without excluding other elements or objects.

[0061] The terms "connection" or "linking" are not limited to physical or mechanical connections, but can include electrical connections, whether direct or indirect. The steps preceding or following each other in the method of this invention are not necessarily performed precisely in sequence. Instead, the steps can be processed in reverse order or simultaneously. Furthermore, other operations can be added to these processes, or one or more steps can be removed from them.

[0062] In addition, the functional modules in the various embodiments of the present invention can be integrated together to form an independent part, or each module can exist independently, or two or more modules can be integrated to form an independent part.

[0063] Figure 2 A flowchart of an Ackerman chassis correction method based on a gyroscope according to the present invention is shown.

[0064] like Figure 2 As shown, this invention discloses an Ackerman chassis correction method based on a gyroscope, the method comprising:

[0065] S202 controls the motor to make the chassis move in a circular motion at the first corrective speed;

[0066] S204, Set the first motor angle in the preset rotation direction, and obtain the first linear velocity and the first angular velocity; Obtain the first turning radius based on the first linear velocity and the first angular velocity;

[0067] S206, Set the second motor angle in the preset rotation direction, and obtain the second linear velocity and the second angular velocity; Obtain the second turning radius based on the second linear velocity and the second angular velocity;

[0068] S208, set at least one third motor angle in the preset rotation direction, obtain the third linear velocity and the third angular velocity; obtain the third turning radius based on the third linear velocity and the third angular velocity;

[0069] S210, based on the angle of the first motor, the angle of the second motor, the angle of at least one third motor, and the first turning radius, the second turning radius, and at least one third turning radius, the turning angle relationship is obtained;

[0070] S212, according to the above method steps, obtain the first rotation angle relationship in the first rotation direction and the second rotation angle relationship in the second rotation direction;

[0071] S214. Based on the first and second angle relationships, the third angle relationship is obtained.

[0072] It should be noted that the first correction speed is usually a very small speed. The chassis motor drives the wheels to rotate, and the wheels move at a low speed to avoid slippage affecting the correction result. In practical applications, the first correction speed is usually controlled at 0.2 m / s. The preset rotation direction includes a first rotation direction and a second rotation direction, which are left turn and right turn during chassis movement, respectively. In the preset rotation direction, the correction method of this invention is used to fit the relationship between the motor steering angle and the chassis turning radius. When the chassis is running autonomously, the motor steering angle can be calculated based on the required turning radius using the steering angle relationship. This calculation is then used to set the steering angle of the motor via the processor, thereby controlling the chassis to turn according to the required radius.

[0073] Taking the first direction of rotation as an example, specifically left turn, the steps of the correction method of this invention are as follows: First, the chassis motor is set to move at a first correction speed. The angle of the chassis motor is set to a first motor angle, where the first motor angle is 0 degrees for left turn. At this time, the first linear velocity of the chassis during circular motion is obtained through a linear velocity sensor, and the first angular velocity of the chassis during circular motion is obtained through a gyroscope. Based on the relationship between the first linear velocity and the first correction speed, it is determined whether the chassis motor speed is stable, and then the first turning radius of the current chassis during circular motion is calculated based on the first angular velocity. Next, the angle of the chassis motor is set to a second motor angle, where the second motor angle is the maximum limit angle for left turn. At this time, the second linear velocity of the chassis during circular motion is obtained through a linear velocity sensor, and the second angular velocity of the chassis during circular motion is obtained through a gyroscope. Based on the relationship between the second linear velocity and the first correction speed, it is determined whether the chassis motor speed is stable, and then the second turning radius of the current chassis during circular motion is calculated based on the second angular velocity. Then, the angle of the chassis motor is set to the third motor angle, which is any angle between 0 degrees to the left and the maximum limit angle. At this time, the third linear velocity of the chassis's circular motion is obtained through a linear velocity sensor, and the third angular velocity of the chassis's circular motion is obtained through a gyroscope. Based on the relationship between the third linear velocity and the first correction velocity, it is determined whether the chassis motor speed is stable, and then the third turning radius of the current chassis's circular motion is calculated based on the third angular velocity. Finally, a coordinate system is drawn with the turning radius as the abscissa and the motor angle as the ordinate; the coordinate points of the first motor angle, the second motor angle, and at least one third motor angle are plotted; the angular relationship between the motor angle and the turning radius is obtained through curve fitting, which is the first angular relationship. This is used to solve for the required motor angle based on the required turning radius, so that the processor can achieve the purpose of making the chassis turn at the required radius by setting the motor angle.

[0074] Similarly, when the second turning direction is set to right, the above steps will yield the second turning angle formula. Combining the first and second turning angle formulas, the third turning angle formula is obtained. Using the third turning angle formula, the requirement for calculating the motor angle when the chassis turns left and / or right with the required turning radius can be met.

[0075] Figure 3 A flowchart illustrating an embodiment of the present invention for obtaining a turning radius is shown.

[0076] According to embodiments of the present invention, such as Figure 3 As shown, the first turning radius is obtained based on the first linear velocity and the first angular velocity, specifically as follows:

[0077] S302, calculate the difference between the first linear velocity and the first correction velocity to obtain the first velocity difference;

[0078] S304, record the time when the first speed difference exceeds the preset first speed threshold, which is the first deviation time;

[0079] S306, when the first deviation time does not exceed a preset first time threshold, the first turning radius is obtained based on the first correction speed and the first angular velocity.

[0080] It should be noted that this method is a procedure for obtaining the turning radius. This method is not only used to obtain the first turning radius, but also applicable to obtaining the second and third turning radii. The first linear velocity is the linear velocity of the chassis during circular motion, obtained through a linear velocity sensor; this is the real-time linear velocity. The first correction speed is the speed set by the processor to drive the chassis during the correction process; this is the reference linear velocity. The difference between the real-time linear velocity and the reference speed limit is calculated; this is the first speed difference. Within one chassis correction cycle, the time when the first speed difference exceeds the first speed threshold is recorded as the first deviation time. The first speed threshold is a reference value used to verify the stability of the first speed difference; in practical applications, it is 0.01 m / s. That is, when the deviation between the real-time linear velocity and the reference speed limit exceeds 0.01 m / s, it indicates that the deviation exceeds the allowable range. The correction cycle can be a preset duration, such as 1 minute or 10 minutes; a preset displacement distance, such as 1 meter or 10 meters; or a preset circular motion angle, such as completing 180 degrees or 360 degrees. Within one chassis correction cycle, the total time it takes for the first speed difference to exceed a preset first speed threshold is recorded, i.e., the first deviation time. It is then determined whether the first deviation time exceeds the first time threshold. The first time threshold is a duration value used to limit the time; in practical applications, it is set to 1 second. When the first deviation time does not exceed the first time threshold, it indicates that the real-time linear velocity of the chassis during operation deviates little from the reference linear velocity set by the processor, and it can be considered to be in a stable speed state. When a stable speed state is identified, the first correction speed and the first angular velocity can be used as parameters, and the calculation formula of the Ackerman chassis structure's turning model can be applied to obtain the first turning radius.

[0081] Figure 4 This invention provides another flowchart for obtaining the turning radius according to an embodiment of the invention.

[0082] According to embodiments of the present invention, such as Figure 4 As shown, the first turning radius is obtained based on the first linear velocity and the first angular velocity, specifically as follows:

[0083] S402, calculate the difference between the first linear velocity and the first correction velocity to obtain the first velocity difference;

[0084] S404, record the time when the first speed difference exceeds the preset first speed threshold, which is the first deviation time;

[0085] S406, when the first deviation time exceeds the preset first time threshold, the first turning radius is obtained according to the first linear velocity and the first angular velocity, and a new motor angle flag is set to increase the number of tests for the third motor angle.

[0086] It should be noted that this method is an alternative approach for obtaining the turning radius. This method is applicable not only to obtaining the first turning radius but also to obtaining the second and third turning radii. The first linear velocity is the linear velocity of the chassis during circular motion, obtained through a linear velocity sensor; this is the real-time linear velocity. The first correction speed is the speed set by the processor to drive the chassis during the correction process; this is the reference linear velocity. The difference between the real-time linear velocity and the reference speed limit is calculated; this is the first speed difference. Within one chassis correction cycle, the time during which the first speed difference exceeds the first speed threshold is recorded as the first deviation time. The first speed threshold is a reference value used to verify the stability of the first speed difference; in practical applications, it is 0.01 m / s. That is, when the deviation between the real-time linear velocity and the reference speed limit exceeds 0.01 m / s, it indicates that the deviation exceeds the allowable range. The correction cycle can be a preset duration, such as 1 minute or 10 minutes; a preset displacement distance, such as 1 meter or 10 meters; or a preset circular motion angle, such as completing 180 degrees or 360 degrees. Within one chassis correction cycle, the total time it takes for the first speed difference to exceed a preset first speed threshold is recorded, i.e., the first deviation time. It is then determined whether the first deviation time exceeds the first time threshold. The first time threshold is a duration value used to limit the time; in practical applications, it is set to 1 second. When the first deviation time exceeds the first time threshold, it indicates that the real-time linear velocity of the chassis during operation deviates from the reference linear velocity set by the processor beyond the allowable range, and can be considered to be in a speed unstable state. When a speed unstable state is identified, the actual linear velocity (i.e., the first linear velocity) and the first angular velocity are used as parameters, and the calculation formula of the Ackermann chassis structure turning model is applied to calculate the first turning radius. The actual linear velocity used as a parameter is the average linear velocity within one chassis correction cycle. In addition, a new motor angle flag needs to be set. This flag is used to prompt the processor to add at least one third motor angle within the allowable range. This is used to measure and calculate the turning radius, so that the curve fitting results in the correction operation are more consistent with the actual chassis movement and reduce deviations.

[0087] According to an embodiment of the present invention, the increase in the number of tests for the third motor angle specifically includes:

[0088] Obtain the number of angles of the third motor and determine whether it is lower than the preset threshold for the number of angles of the third motor;

[0089] If it is lower, between the first motor angle and the second motor angle, an untested angle is obtained as the third motor angle, which is used to obtain the third turning radius.

[0090] It should be noted that the third motor angle is any angle between the first and second motor angles, that is, any angle between 0 degrees and the maximum limit angle in the preset turning direction. The number of third motor angles refers to the number of third motor angles that need to be tested in the correction method steps. It is determined whether the number of third motor angles is lower than a preset threshold. In practical applications, to ensure the accuracy of curve fitting and control the complexity of fitting calculations, the upper limit threshold is generally set to 8. When the number of third motor angles is lower than the preset threshold, it means that more third motor angles can be added to improve the accuracy of curve fitting. Unselected angles between 0 degrees and the maximum limit angle in the preset turning direction are selected as new third motor angles for correction testing.

[0091] According to an embodiment of the present invention, the first turning angle relationship is obtained based on the first motor angle, the second motor angle, at least one third motor angle, and the first turning radius, the second turning radius, and at least one third turning radius, specifically as follows:

[0092] Draw a coordinate system with the turning radius as the horizontal axis and the motor angle as the vertical axis;

[0093] Plot the coordinates of the first motor angle, the second motor angle, at least one of the third motor angles, and the corresponding first turning radius, second turning radius, and at least one of the third turning radii;

[0094] At least two coordinate points are selected for fitting to obtain the angular relationship between the motor angle and the turning radius;

[0095] The fitting method used was curve fitting.

[0096] It should be noted that the curve fitting is performed by analyzing and calculating the relationship between two variables using a relational formula. In the preset steering direction, firstly, a coordinate system is drawn with the turning radius as the abscissa and the motor angle as the ordinate. Then, each motor angle and the turning radius obtained after correction testing are plotted as coordinate points in the coordinate system. Finally, at least two coordinate points are selected, and curve fitting is used to fit these points, thereby obtaining the angular relationship between the motor angle and the turning radius in the preset direction, i.e., the first angular relationship or the second angular relationship. In other words, by inputting the required turning radius into the angular relationship in the preset direction, the required motor angle can be obtained. The curve fitting includes, but is not limited to, commonly used curve fitting methods such as linear fitting, polynomial fitting, exponential fitting, and logarithmic fitting.

[0097] It's important to note that the process of drawing the coordinate system described above is a visual representation of the processor's computation. The processor does not necessarily need to draw the coordinate system and add punctuation before performing fitting calculations. In fact, the processor can combine and calculate the variable data according to the curve fitting calculation process to obtain the relationship. For example, linear fitting can use the least squares method to process and calculate the relationship.

[0098] According to an embodiment of the present invention, it further includes:

[0099] The linear velocity of the chassis movement is obtained through a linear velocity sensor;

[0100] The angular velocity of the chassis as it moves in a circle is obtained using a gyroscope.

[0101] It should be noted that a linear velocity sensor is an electronic device used to measure the speed or distance traveled by an object in its direction of motion. To ensure the resolution and sensitivity of linear velocity measurements, non-contact linear velocity sensors, such as optical sensors, are typically used. These sensors calculate the object's speed by scanning and calculating the time required for reflected light. An angular velocity gyroscope is a type of single-degree-of-freedom gyroscope, comprising a single-degree-of-freedom gyroscope, an elastic element, and a damper. The single-degree-of-freedom gyroscope consists of a frame and a rotor, used to sense information such as rotation angle, angular velocity, and angular acceleration. The elastic element provides elastic constraints; when the gyroscope rotates relative to the housing at an angle, the elastic element generates an elastic constraint torque opposite to its deflection direction. The damper provides viscous constraints; when the gyroscope has an angular velocity relative to the housing, the damper generates a damping torque opposite to its rotation direction. Through the gyroscope, the angular velocity of the chassis's circular motion can be obtained.

[0102] It is worth mentioning that it also includes:

[0103] Draw a coordinate system with the turning radius as the horizontal axis and the motor angle as the vertical axis;

[0104] Plot the coordinates of the first motor angle, the second motor angle, and at least one third motor angle in the first rotation direction;

[0105] Plot the coordinates of the first motor angle, the second motor angle, and at least one third motor angle in the second rotation direction;

[0106] The third rotation angle relationship is obtained by fitting all coordinate points in the coordinate system.

[0107] It should be noted that the curve fitting described herein analyzes and calculates the relationship between two variables using a relational formula. First, a coordinate system is plotted with the turning radius as the abscissa and the motor angle as the ordinate. Then, coordinate points for the first rotation direction are plotted in the coordinate system using each motor angle and the turning radius obtained after correction testing. Similarly, coordinate points for the second rotation direction are plotted in the same coordinate system. Finally, all coordinate points are selected, and curve fitting is used to fit the coordinate points, thus obtaining the angular relationship between the motor angle and the turning radius. Since this angular relationship already includes both the first and second rotation directions, it is the third angular relationship. In other words, by inputting the required turning radius into the angular relationship, the required motor angle can be obtained. The curve fitting includes, but is not limited to, commonly used curve fitting methods such as polynomial fitting, exponential fitting, and logarithmic fitting.

[0108] It's important to note that the process of drawing the coordinate system described above is a visual representation of the processor's computation. The processor does not necessarily need to draw the coordinate system and add punctuation before performing the fitting calculation. In fact, the processor can obtain the relational expression by combining and calculating the variable data according to the curve fitting calculation process.

[0109] It is worth mentioning that it also includes:

[0110] The preset angle of the third motor is determined based on the threshold value of the third motor angle.

[0111] Sort the angles of the third motor;

[0112] Select the third motor angles in sequence according to the required number of third motor angles.

[0113] It should be noted that the third motor angle is any angle between the first and second motor angles, that is, any angle between 0 degrees and the maximum limit angle in the preset turning direction. To meet the requirements of correction testing, the processor typically presets recommended third motor angles based on the chassis system for correction testing. For example, when the second motor angle is 40 degrees and the threshold number of third motors is 7, if an arithmetic distribution method is used, the third motor angles can be set to 5 degrees, 10 degrees, 15 degrees, 20 degrees, 25 degrees, 30 degrees, and 35 degrees. According to the actual application requirements, the above 7 third motor angles can be sorted as 20 degrees, 10 degrees, 30 degrees, 5 degrees, 25 degrees, 15 degrees, and 35 degrees, and the processor selects the third motor angles sequentially for correction testing according to the required number. Furthermore, for chassis systems requiring high precision at low motor angles, the influence of low motor angle coordinate points during curve fitting can be increased by modifying the third motor angle allocation method. For example, setting the third motor angle to 3 degrees, 5 degrees, 8 degrees, 10 degrees, 15 degrees, 20 degrees, and 30 degrees increases the influence of low motor angle coordinate points between 0 and 10 degrees on curve fitting. As the principle of curve fitting states, the fitted expression will be closer to the already labeled coordinate points.

[0114] It is worth mentioning that it also includes:

[0115] Obtain the fitting coefficients for the coordinate points;

[0116] Determine whether the fitting coefficient exceeds the preset threshold range;

[0117] If the number of re-corrections exceeds the limit, retrieve the number of re-corrections. If the number of re-corrections does not exceed the preset threshold, perform re-correction and record the number of corrections and set prompts.

[0118] It should be noted that the fitting coefficient is the goodness of fit of the response curve. The goodness of fit is used to test the fitted relationship and compare the degree of agreement between their predicted results and the actual situation. In other words, if the fitting coefficient is within a preset threshold range, it indicates a high goodness of fit, and the result obtained from the angle relationship closely matches the actual situation. If the fitting coefficient exceeds the preset threshold range, it indicates a low goodness of fit, and the deviation between the result obtained from the angle relationship and the actual situation exceeds the allowable range. This means that the current angle relationship cannot meet the actual application requirements and needs to be recalibrated. When it is determined that recalibration is needed, the number of recalibrations is determined. If the number does not exceed a preset threshold, the calibration method steps are repeated, and the number of calibrations is recorded and relevant prompts are set. If the number of calibrations has exceeded the preset threshold, it indicates that there may be a structural problem that prevents software calibration.

[0119] Figure 5A block diagram of an Ackerman chassis correction system based on a gyroscope according to the present invention is shown.

[0120] like Figure 5 As shown, this invention discloses a gyroscope-based Ackerman chassis correction system 5, including a memory 51 and a processor 52. The memory includes a gyroscope-based Ackerman chassis correction method program. When the processor executes the gyroscope-based Ackerman chassis correction method program, it performs the following steps:

[0121] Control the motor to make the chassis move in a circular motion at the first corrective speed;

[0122] Set a first motor angle in a preset rotation direction, and obtain a first linear velocity and a first angular velocity; obtain a first turning radius based on the first linear velocity and the first angular velocity;

[0123] Set the second motor angle in the preset rotation direction to obtain the second linear velocity and the second angular velocity; obtain the second turning radius based on the second linear velocity and the second angular velocity;

[0124] At least one third motor angle is set in the preset rotation direction to obtain the third linear velocity and the third angular velocity; the third turning radius is obtained based on the third linear velocity and the third angular velocity.

[0125] Based on the angles of the first motor, the second motor, at least one third motor, and the first turning radius, the second turning radius, and at least one third turning radius, the turning angle relationship is obtained;

[0126] Based on the above method steps, obtain the first angle relationship in the first rotation direction and the second angle relationship in the second rotation direction;

[0127] Based on the first and second angle relationships, the third angle relationship is obtained.

[0128] It should be noted that the first correction speed is usually a very small speed. The chassis motor drives the wheels to rotate, and the wheels move at a low speed to avoid slippage affecting the correction result. In practical applications, the first correction speed is usually controlled at 0.2 m / s. The preset rotation direction includes a first rotation direction and a second rotation direction, which are left turn and right turn during chassis movement, respectively. In the preset rotation direction, the correction method of this invention is used to fit the relationship between the motor steering angle and the chassis turning radius. When the chassis is running autonomously, the motor steering angle can be calculated based on the required turning radius using the steering angle relationship. This calculation is then used to set the steering angle of the motor via the processor, thereby controlling the chassis to turn according to the required radius.

[0129] Taking the first direction of rotation as an example, specifically left turn, the steps of the correction method of this invention are as follows: First, the chassis motor is set to move at a first correction speed. The angle of the chassis motor is set to a first motor angle, where the first motor angle is 0 degrees for left turn. At this time, the first linear velocity of the chassis during circular motion is obtained through a linear velocity sensor, and the first angular velocity of the chassis during circular motion is obtained through a gyroscope. Based on the relationship between the first linear velocity and the first correction speed, it is determined whether the chassis motor speed is stable, and then the first turning radius of the current chassis during circular motion is calculated based on the first angular velocity. Next, the angle of the chassis motor is set to a second motor angle, where the second motor angle is the maximum limit angle for left turn. At this time, the second linear velocity of the chassis during circular motion is obtained through a linear velocity sensor, and the second angular velocity of the chassis during circular motion is obtained through a gyroscope. Based on the relationship between the second linear velocity and the first correction speed, it is determined whether the chassis motor speed is stable, and then the second turning radius of the current chassis during circular motion is calculated based on the second angular velocity. Then, the angle of the chassis motor is set to the third motor angle, which is any angle between 0 degrees to the left and the maximum limit angle. At this time, the third linear velocity of the chassis's circular motion is obtained through a linear velocity sensor, and the third angular velocity of the chassis's circular motion is obtained through a gyroscope. Based on the relationship between the third linear velocity and the first correction velocity, it is determined whether the chassis motor speed is stable, and then the third turning radius of the current chassis's circular motion is calculated based on the third angular velocity. Finally, a coordinate system is drawn with the turning radius as the abscissa and the motor angle as the ordinate; the coordinate points of the first motor angle, the second motor angle, and at least one third motor angle are plotted; the angular relationship between the motor angle and the turning radius is obtained through curve fitting, which is the first angular relationship. This is used to solve for the required motor angle based on the required turning radius, so that the processor can achieve the purpose of making the chassis turn at the required radius by setting the motor angle.

[0130] Similarly, when the second turning direction is set to right, the above steps will yield the second turning angle formula. Combining the first and second turning angle formulas, the third turning angle formula is obtained. Using the third turning angle formula, the requirement for calculating the motor angle when the chassis turns left and / or right with the required turning radius can be met.

[0131] According to an embodiment of the present invention, obtaining the first turning radius based on the first linear velocity and the first angular velocity specifically involves:

[0132] Calculate the difference between the first linear velocity and the first correction velocity to obtain the first velocity difference;

[0133] The time when the first speed difference exceeds a preset first speed threshold is recorded as the first deviation time;

[0134] When the first deviation time does not exceed the preset first time threshold, the first turning radius is obtained based on the first correction speed and the first angular velocity.

[0135] It should be noted that this method is a procedure for obtaining the turning radius. This method is not only used to obtain the first turning radius, but also applicable to obtaining the second and third turning radii. The first linear velocity is the linear velocity of the chassis during circular motion, obtained through a linear velocity sensor; this is the real-time linear velocity. The first correction speed is the speed set by the processor to drive the chassis during the correction process; this is the reference linear velocity. The difference between the real-time linear velocity and the reference speed limit is calculated; this is the first speed difference. Within one chassis correction cycle, the time when the first speed difference exceeds the first speed threshold is recorded as the first deviation time. The first speed threshold is a reference value used to verify the stability of the first speed difference; in practical applications, it is 0.01 m / s. That is, when the deviation between the real-time linear velocity and the reference speed limit exceeds 0.01 m / s, it indicates that the deviation exceeds the allowable range. The correction cycle can be a preset duration, such as 1 minute or 10 minutes; a preset displacement distance, such as 1 meter or 10 meters; or a preset circular motion angle, such as completing 180 degrees or 360 degrees. Within one chassis correction cycle, the total time it takes for the first speed difference to exceed a preset first speed threshold is recorded, i.e., the first deviation time. It is then determined whether the first deviation time exceeds the first time threshold. The first time threshold is a duration value used to limit the time; in practical applications, it is set to 1 second. When the first deviation time does not exceed the first time threshold, it indicates that the real-time linear velocity of the chassis during operation deviates little from the reference linear velocity set by the processor, and it can be considered to be in a stable speed state. When a stable speed state is identified, the first correction speed and the first angular velocity can be used as parameters, and the calculation formula of the Ackerman chassis structure's turning model can be applied to obtain the first turning radius.

[0136] According to an embodiment of the present invention, obtaining the first turning radius based on the first linear velocity and the first angular velocity specifically involves:

[0137] Calculate the difference between the first linear velocity and the first correction velocity to obtain the first velocity difference;

[0138] The time when the first speed difference exceeds a preset first speed threshold is recorded as the first deviation time;

[0139] When the first deviation time exceeds the preset first time threshold, the first turning radius is obtained based on the first linear velocity and the first angular velocity, and a new motor angle flag is set to increase the number of tests for the third motor angle.

[0140] It should be noted that this method is an alternative approach for obtaining the turning radius. This method is applicable not only to obtaining the first turning radius but also to obtaining the second and third turning radii. The first linear velocity is the linear velocity of the chassis during circular motion, obtained through a linear velocity sensor; this is the real-time linear velocity. The first correction speed is the speed set by the processor to drive the chassis during the correction process; this is the reference linear velocity. The difference between the real-time linear velocity and the reference speed limit is calculated; this is the first speed difference. Within one chassis correction cycle, the time during which the first speed difference exceeds the first speed threshold is recorded as the first deviation time. The first speed threshold is a reference value used to verify the stability of the first speed difference; in practical applications, it is 0.01 m / s. That is, when the deviation between the real-time linear velocity and the reference speed limit exceeds 0.01 m / s, it indicates that the deviation exceeds the allowable range. The correction cycle can be a preset duration, such as 1 minute or 10 minutes; a preset displacement distance, such as 1 meter or 10 meters; or a preset circular motion angle, such as completing 180 degrees or 360 degrees. Within one chassis correction cycle, the total time it takes for the first speed difference to exceed a preset first speed threshold is recorded, i.e., the first deviation time. It is then determined whether the first deviation time exceeds the first time threshold. The first time threshold is a duration value used to limit the time; in practical applications, it is set to 1 second. When the first deviation time exceeds the first time threshold, it indicates that the real-time linear velocity of the chassis during operation deviates from the reference linear velocity set by the processor beyond the allowable range, and can be considered to be in a speed unstable state. When a speed unstable state is identified, the actual linear velocity (i.e., the first linear velocity) and the first angular velocity are used as parameters, and the calculation formula of the Ackermann chassis structure turning model is applied to calculate the first turning radius. The actual linear velocity used as a parameter is the average linear velocity within one chassis correction cycle. In addition, a new motor angle flag needs to be set. This flag is used to prompt the processor to add at least one third motor angle within the allowable range. This is used to measure and calculate the turning radius, so that the curve fitting results in the correction operation are more consistent with the actual chassis movement and reduce deviations.

[0141] According to an embodiment of the present invention, the increase in the number of tests for the third motor angle specifically includes:

[0142] Obtain the number of angles of the third motor and determine whether it is lower than the preset threshold for the number of angles of the third motor;

[0143] If it is lower, between the first motor angle and the second motor angle, an untested angle is obtained as the third motor angle, which is used to obtain the third turning radius.

[0144] It should be noted that the third motor angle is any angle between the first and second motor angles, that is, any angle between 0 degrees and the maximum limit angle in the preset turning direction. The number of third motor angles refers to the number of third motor angles that need to be tested in the correction method steps. It is determined whether the number of third motor angles is lower than a preset threshold. In practical applications, to ensure the accuracy of curve fitting and control the complexity of fitting calculations, the upper limit threshold is generally set to 8. When the number of third motor angles is lower than the preset threshold, it means that more third motor angles can be added to improve the accuracy of curve fitting. Unselected angles between 0 degrees and the maximum limit angle in the preset turning direction are selected as new third motor angles for correction testing.

[0145] According to an embodiment of the present invention, the first turning angle relationship is obtained based on the first motor angle, the second motor angle, at least one third motor angle, and the first turning radius, the second turning radius, and at least one third turning radius, specifically as follows:

[0146] Draw a coordinate system with the turning radius as the horizontal axis and the motor angle as the vertical axis;

[0147] Plot the coordinates of the first motor angle, the second motor angle, at least one of the third motor angles, and the corresponding first turning radius, second turning radius, and at least one of the third turning radii;

[0148] At least two coordinate points are selected for fitting to obtain the angular relationship between the motor angle and the turning radius;

[0149] The fitting method used was curve fitting.

[0150] It should be noted that the curve fitting is performed by analyzing and calculating the relationship between two variables using a relational formula. In the preset steering direction, firstly, a coordinate system is drawn with the turning radius as the abscissa and the motor angle as the ordinate. Then, each motor angle and the turning radius obtained after correction testing are plotted as coordinate points in the coordinate system. Finally, at least two coordinate points are selected, and curve fitting is used to fit these points, thereby obtaining the angular relationship between the motor angle and the turning radius in the preset direction, i.e., the first angular relationship or the second angular relationship. In other words, by inputting the required turning radius into the angular relationship in the preset direction, the required motor angle can be obtained. The curve fitting includes, but is not limited to, commonly used curve fitting methods such as linear fitting, polynomial fitting, exponential fitting, and logarithmic fitting.

[0151] It's important to note that the process of drawing the coordinate system described above is a visual representation of the processor's computation. The processor does not necessarily need to draw the coordinate system and add punctuation before performing fitting calculations. In fact, the processor can combine and calculate the variable data according to the curve fitting calculation process to obtain the relationship. For example, linear fitting can use the least squares method to process and calculate the relationship.

[0152] According to an embodiment of the present invention, it further includes:

[0153] The linear velocity of the chassis movement is obtained through a linear velocity sensor;

[0154] The angular velocity of the chassis as it moves in a circle is obtained using a gyroscope.

[0155] It should be noted that a linear velocity sensor is an electronic device used to measure the speed or distance traveled by an object in its direction of motion. To ensure the resolution and sensitivity of linear velocity measurements, non-contact linear velocity sensors, such as optical sensors, are typically used. These sensors calculate the object's speed by scanning and calculating the time required for reflected light. An angular velocity gyroscope is a type of single-degree-of-freedom gyroscope, comprising a single-degree-of-freedom gyroscope, an elastic element, and a damper. The single-degree-of-freedom gyroscope consists of a frame and a rotor, used to sense information such as rotation angle, angular velocity, and angular acceleration. The elastic element provides elastic constraints; when the gyroscope rotates relative to the housing at an angle, the elastic element generates an elastic constraint torque opposite to its deflection direction. The damper provides viscous constraints; when the gyroscope has an angular velocity relative to the housing, the damper generates a damping torque opposite to its rotation direction. Through the gyroscope, the angular velocity of the chassis's circular motion can be obtained.

[0156] It is worth mentioning that it also includes:

[0157] Draw a coordinate system with the turning radius as the horizontal axis and the motor angle as the vertical axis;

[0158] Plot the coordinates of the first motor angle, the second motor angle, and at least one third motor angle in the first rotation direction;

[0159] Plot the coordinates of the first motor angle, the second motor angle, and at least one third motor angle in the second rotation direction;

[0160] The third rotation angle relationship is obtained by fitting all coordinate points in the coordinate system.

[0161] It should be noted that the curve fitting described herein analyzes and calculates the relationship between two variables using a relational formula. First, a coordinate system is plotted with the turning radius as the abscissa and the motor angle as the ordinate. Then, coordinate points for the first rotation direction are plotted in the coordinate system using each motor angle and the turning radius obtained after correction testing. Similarly, coordinate points for the second rotation direction are plotted in the same coordinate system. Finally, all coordinate points are selected, and curve fitting is used to fit the coordinate points, thus obtaining the angular relationship between the motor angle and the turning radius. Since this angular relationship already includes both the first and second rotation directions, it is the third angular relationship. In other words, by inputting the required turning radius into the angular relationship, the required motor angle can be obtained. The curve fitting includes, but is not limited to, commonly used curve fitting methods such as polynomial fitting, exponential fitting, and logarithmic fitting.

[0162] It's important to note that the process of drawing the coordinate system described above is a visual representation of the processor's computation. The processor does not necessarily need to draw the coordinate system and add punctuation before performing the fitting calculation. In fact, the processor can obtain the relational expression by combining and calculating the variable data according to the curve fitting calculation process.

[0163] It is worth mentioning that it also includes:

[0164] The preset angle of the third motor is determined based on the threshold value of the third motor angle.

[0165] Sort the angles of the third motor;

[0166] Select the third motor angles in sequence according to the required number of third motor angles.

[0167] It should be noted that the third motor angle is any angle between the first and second motor angles, that is, any angle between 0 degrees and the maximum limit angle in the preset turning direction. To meet the requirements of correction testing, the processor typically presets recommended third motor angles based on the chassis system for correction testing. For example, when the second motor angle is 40 degrees and the threshold number of third motors is 7, if an arithmetic distribution method is used, the third motor angles can be set to 5 degrees, 10 degrees, 15 degrees, 20 degrees, 25 degrees, 30 degrees, and 35 degrees. According to the actual application requirements, the above 7 third motor angles can be sorted as 20 degrees, 10 degrees, 30 degrees, 5 degrees, 25 degrees, 15 degrees, and 35 degrees, and the processor selects the third motor angles sequentially for correction testing according to the required number. Furthermore, for chassis systems requiring high precision at low motor angles, the influence of low motor angle coordinate points during curve fitting can be increased by modifying the third motor angle allocation method. For example, setting the third motor angle to 3 degrees, 5 degrees, 8 degrees, 10 degrees, 15 degrees, 20 degrees, and 30 degrees increases the influence of low motor angle coordinate points between 0 and 10 degrees on curve fitting. As the principle of curve fitting states, the fitted expression will be closer to the already labeled coordinate points.

[0168] It is worth mentioning that it also includes:

[0169] Obtain the fitting coefficients for the coordinate points;

[0170] Determine whether the fitting coefficient exceeds the preset threshold range;

[0171] If the number of re-corrections exceeds the limit, retrieve the number of re-corrections. If the number of re-corrections does not exceed the preset threshold, perform re-correction and record the number of corrections and set prompts.

[0172] It should be noted that the fitting coefficient is the goodness of fit of the response curve. The goodness of fit is used to test the fitted relationship and compare the degree of agreement between their predicted results and the actual situation. In other words, if the fitting coefficient is within a preset threshold range, it indicates a high goodness of fit, and the result obtained from the angle relationship closely matches the actual situation. If the fitting coefficient exceeds the preset threshold range, it indicates a low goodness of fit, and the deviation between the result obtained from the angle relationship and the actual situation exceeds the allowable range. This means that the current angle relationship cannot meet the actual application requirements and needs to be recalibrated. When it is determined that recalibration is needed, the number of recalibrations is determined. If the number does not exceed a preset threshold, the calibration method steps are repeated, and the number of calibrations is recorded and relevant prompts are set. If the number of calibrations has exceeded the preset threshold, it indicates that there may be a structural problem that prevents software calibration.

[0173] A third aspect of the present invention provides a computer-readable storage medium comprising a gyroscope-based Ackerman chassis correction method program, wherein when the gyroscope-based Ackerman chassis correction method program is executed by a processor, it implements the steps of the gyroscope-based Ackerman chassis correction method as described in any of the preceding claims.

[0174] This invention provides a gyroscope-based Ackerman chassis correction method, system, and storage medium. Based on the device's battery status and pseudorange information obtained from two frequency carrier signals, it determines the positioning information acquisition mode, ensuring positioning accuracy while controlling power consumption to extend the device's battery life. This invention can also determine the positioning information acquisition mode based on the strength of the two frequency carrier signals; furthermore, for situations without carrier signals, it employs a predictive approach to positioning information, improving the user experience.

[0175] If the aforementioned functions are implemented as software functional modules and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this invention, essentially, or the part that contributes to the prior art, or a portion of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this invention. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.

[0176] The above description is merely a preferred embodiment of the present invention and is not intended to limit the invention. Various modifications and variations can be made to the present invention by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of the present invention should be included within the scope of protection of the present invention.

Claims

1. A gyroscope-based Ackerman chassis correction method, characterized in that, The method includes: Control the motor to make the chassis move in a circular motion at the first corrective speed; A first motor angle is set in a preset rotation direction, and a first linear velocity and a first angular velocity are obtained, wherein the first motor angle is 0 degrees of turning. Based on the first linear velocity and the first angular velocity, a first turning radius is obtained, specifically by: calculating the difference between the first linear velocity and the first correction velocity to obtain a first velocity difference; recording the time when the first velocity difference exceeds a preset first velocity threshold, which is the first deviation time; when the first deviation time does not exceed the preset first time threshold, the first turning radius is obtained based on the first correction velocity and the first angular velocity; when the first deviation time exceeds the preset first time threshold, the first turning radius is obtained based on the first linear velocity and the first angular velocity, and a new motor angle flag is set to increase the number of tests for the third motor angle; wherein, increasing the number of tests for the third motor angle specifically involves: obtaining the number of third motor angles and determining whether it is lower than a preset threshold for the number of third motor angles; if it is lower, an untested angle between the first motor angle and the second motor angle is obtained as the third motor angle to obtain the third turning radius. A second motor angle is set in a preset rotation direction to obtain a second linear velocity and a second angular velocity, wherein the second motor angle is the maximum limit angle for turning relative to the first motor angle; the second turning radius is obtained based on the second linear velocity and the second angular velocity. At least one third motor angle is set in a preset rotation direction to obtain a third linear velocity and a third angular velocity, wherein the third motor angle is any angle between the first motor angle and the second motor angle; the third turning radius is obtained based on the third linear velocity and the third angular velocity. The method of obtaining the first turning radius based on the first linear velocity and the first angular velocity is not only used to obtain the first turning radius, but also applicable to obtaining the second turning radius and the third turning radius; Based on the first motor angle, the second motor angle, at least one third motor angle, and the first turning radius, the second turning radius, and at least one third turning radius, the turning angle relationship is obtained; specifically: a coordinate system is drawn with the turning radius as the abscissa and the motor angle as the ordinate; the coordinate points of the first motor angle, the second motor angle, at least one of the third motor angles, and the corresponding first turning radius, second turning radius, and at least one of the third turning radii are plotted; at least two coordinate points are selected for fitting to obtain the turning angle relationship between the motor angle and the turning radius; wherein, the fitting method is curve fitting; Based on the above method, obtain the first angle relationship in the first rotation direction and the second angle relationship in the second rotation direction; Based on the first and second angle relationships, the third angle relationship is obtained.

2. The Ackerman chassis correction method based on a gyroscope according to claim 1, characterized in that, Also includes: The linear velocity of the chassis movement is obtained through a linear velocity sensor; The angular velocity of the chassis as it moves in a circle is obtained using a gyroscope.

3. An Ackerman chassis correction system based on a gyroscope, characterized in that, The system includes a memory and a processor. The memory contains a gyroscope-based Ackerman chassis correction method program. When the processor executes the gyroscope-based Ackerman chassis correction method program, it performs the following steps: Control the motor to make the chassis move in a circular motion at the first corrective speed; A first motor angle is set in a preset rotation direction, and a first linear velocity and a first angular velocity are obtained, wherein the first motor angle is 0 degrees of turning. Based on the first linear velocity and the first angular velocity, a first turning radius is obtained, specifically by: calculating the difference between the first linear velocity and the first correction velocity to obtain a first velocity difference; recording the time when the first velocity difference exceeds a preset first velocity threshold, which is the first deviation time; when the first deviation time does not exceed the preset first time threshold, the first turning radius is obtained based on the first correction velocity and the first angular velocity; when the first deviation time exceeds the preset first time threshold, the first turning radius is obtained based on the first linear velocity and the first angular velocity, and a new motor angle flag is set to increase the number of tests for the third motor angle; wherein, increasing the number of tests for the third motor angle specifically involves: obtaining the number of third motor angles and determining whether it is lower than a preset threshold for the number of third motor angles; if it is lower, an untested angle between the first motor angle and the second motor angle is obtained as the third motor angle to obtain the third turning radius. A second motor angle is set in a preset rotation direction to obtain a second linear velocity and a second angular velocity, wherein the second motor angle is the maximum limit angle for turning relative to the first motor angle; the second turning radius is obtained based on the second linear velocity and the second angular velocity. At least one third motor angle is set in a preset rotation direction to obtain a third linear velocity and a third angular velocity, wherein the third motor angle is any angle between the first motor angle and the second motor angle; the third turning radius is obtained based on the third linear velocity and the third angular velocity. The method of obtaining the first turning radius based on the first linear velocity and the first angular velocity is not only used to obtain the first turning radius, but also applicable to obtaining the second turning radius and the third turning radius; Based on the first motor angle, the second motor angle, at least one third motor angle, and the first turning radius, the second turning radius, and at least one third turning radius, the turning angle relationship is obtained; specifically: a coordinate system is drawn with the turning radius as the abscissa and the motor angle as the ordinate; the coordinate points of the first motor angle, the second motor angle, at least one of the third motor angles, and the corresponding first turning radius, second turning radius, and at least one of the third turning radii are plotted; at least two coordinate points are selected for fitting to obtain the turning angle relationship between the motor angle and the turning radius; wherein, the fitting method is curve fitting; Based on the above steps, obtain the first angle relationship in the first rotation direction and the second angle relationship in the second rotation direction; Based on the first and second angle relationships, the third angle relationship is obtained.

4. A computer-readable storage medium having a computer program stored thereon, characterized in that, The computer-readable storage medium includes a gyroscope-based Ackerman chassis correction method program, which, when executed by a processor, implements the steps of the gyroscope-based Ackerman chassis correction method as described in any one of claims 1 to 2.

Citation Information

Patent Citations

  • Four-wheel-drive robot automatic steering method based on extended Ackerman algorithm

    CN109367617A

  • Method of calibrating a gyrometer installed in a vehicle

    CN111902693A