Mobile robot control method, mobile robot and storage medium

By calculating the time scaling coefficient in the mobile robot and dynamically adjusting the speed release time and acceleration, the operation error problem caused by position observation uncertainty in the mobile robot is solved, and the effect of smoothly reaching the destination in a complex environment is achieved.

CN120491656BActive Publication Date: 2025-09-19SUZHOU UNION INTELLIGENT TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202510991332.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-07-18
Publication Date
2025-09-19
Estimated Expiration
2045-07-18

AI Technical Summary

Technical Problem

The traditional S-shaped velocity curve planning method is difficult to adapt to the uncertainty of position observation in mobile robots, resulting in a large error between the actual running distance and the planned distance, and is unable to achieve a balance between smooth speed control and displacement control, and lacks a dynamic compensation mechanism.

Method used

By obtaining the actual and theoretical residual displacements between the mobile robot and the destination, calculating the time scaling factor, adjusting the speed release time and acceleration, and dynamically adjusting the time axis to keep the basic shape of the S-shaped speed curve unchanged, the destination can be reached accurately.

Benefits of technology

While keeping the shape of the speed curve unchanged, the time axis is dynamically adjusted to enable the mobile robot to accurately reach its destination in a complex environment, reduce mechanical shock and vibration, and improve operational smoothness.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120491656B_ABST
    Figure CN120491656B_ABST
Patent Text Reader

Abstract

The present invention discloses a control method for a mobile robot, a mobile robot and a storage medium. The control method for the mobile robot includes obtaining the actual residual displacement and theoretical residual displacement between the mobile robot and the destination when entering a new control cycle; calculating a time scaling coefficient based on the actual residual displacement and the theoretical residual displacement; obtaining the speed sending moment of the mobile robot in the current control cycle based on the time scaling coefficient and the speed sending moment of the mobile robot in the previous control cycle; obtaining the corresponding sending speed in a pre-planned discrete table of theoretical operation data of the mobile robot and running until entering the next new control cycle.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of robotics technology, and in particular to a control method for a mobile robot, a mobile robot, and a storage medium. Background Art

[0002] In modern industrial automation, the dynamic performance of motion control systems directly impacts production efficiency and equipment life. While traditional trapezoidal velocity profile planning methods are simple to use, they suffer from sudden acceleration changes during both acceleration and deceleration, known as mechanical soft shocks. This leads to mechanical shock and vibration, limiting the application of high-precision equipment. To address this issue, the S-shaped velocity profile planning method introduces a jerk (the derivative of acceleration) constraint, achieving continuous acceleration changes and significantly improving motion smoothness.

[0003] Relevant scholars have provided comprehensive research on S-shaped velocity curve planning. However, current planning schemes are generally applied to situations where the path length is fixed and observations are precise, such as in automated equipment and motor rotation. Planning is typically completed before operation, and the original plan is strictly followed. There is generally no implementation of planning during motion. However, these prerequisites cannot be met in the field of mobile robots. In mobile robots, the observation of the mobile robot's position is subject to significant uncertainty, resulting in a large error between the actual distance traveled and the originally planned distance, and this error changes in real time. This makes it difficult for conventional S-shaped motion curve planning methods to achieve a balance between smooth velocity control and displacement control in mobile robots.

[0004] The S-shaped velocity curve is a good trajectory planning method that can effectively reduce the soft and hard impacts of the equipment during operation, thereby achieving a smoother operation effect. However, in mobile robot applications, due to factors such as sensor measurement errors, positioning errors, and positioning jumps, the actual required movement distance of the mobile robot will jump. This poses a great challenge to the application of S-shaped velocity curve planning in mobile robots.

[0005] The above content is only used to assist in understanding the technical solution of the present invention and does not constitute an admission that the above content is prior art. Summary of the Invention

[0006] The main purpose of the present invention is to provide a control method for a mobile robot, a mobile robot and a storage medium, aiming to solve the above technical problems in the prior art.

[0007] To achieve the above object, the present invention provides a control method for a mobile robot, the control method for a mobile robot comprising:

[0008] When entering a new control cycle, the actual residual displacement and theoretical residual displacement between the mobile robot and the destination are obtained;

[0009] Calculating a time scaling factor according to the actual residual displacement and the theoretical residual displacement;

[0010] Obtaining the speed sending moment of the mobile robot in the current control cycle based on the time scaling coefficient and the speed sending moment of the mobile robot in the previous control cycle;

[0011] The corresponding speed is obtained from the pre-planned theoretical operation data discrete table of the mobile robot and the robot is operated until entering the next new control cycle.

[0012] Preferably, in the control method of the mobile robot, after the step of calculating the time scaling coefficient based on the actual residual displacement and the theoretical residual displacement, and before the step of obtaining the speed sending moment of the mobile robot in the current control cycle based on the time scaling coefficient and the speed sending moment of the mobile robot in the previous control cycle, the method further includes:

[0013] Determine whether the time scaling factor exceeds a preset first amplitude range, and obtain a first determination result;

[0014] When the first judgment result is yes, the time scaling factor is updated using the limit value of the first amplitude range;

[0015] Calculate the rate of change of the time scaling factor over time according to the updated time scaling factor;

[0016] Determining whether the change rate exceeds a preset second amplitude, and obtaining a second determination result;

[0017] When the second judgment result is yes, the change rate is updated using the limit value of the second amplitude, and the time scaling factor is recalculated according to the updated change rate;

[0018] The recalculated time scaling factor is used as the final time scaling factor.

[0019] Preferably, the control method of the mobile robot further includes:

[0020] When the first judgment result is no, using the currently acquired time scaling coefficient as the target time scaling coefficient;

[0021] When the second judgment result is no, the currently acquired time scaling coefficient is used as the target time scaling coefficient.

[0022] Preferably, in the control method of the mobile robot, when the first judgment result is yes, the process of updating the time scaling factor using the limit value of the first amplitude range includes:

[0023] When the time scaling coefficient calculated based on the actual residual displacement and the theoretical residual displacement is greater than 1 and exceeds an upper limit of the first amplitude range, assigning the upper limit of the first amplitude range to the time scaling coefficient to obtain an updated time scaling coefficient;

[0024] When the time scaling coefficient calculated based on the actual residual displacement and the theoretical residual displacement is less than 1 and less than the lower limit of the first amplitude range, the lower limit of the first amplitude range is assigned to the time scaling coefficient to obtain an updated time scaling coefficient.

[0025] Preferably, in the control method of the mobile robot, before the step of determining whether the time scaling coefficient exceeds a preset first amplitude range and obtaining a first determination result, the method further includes:

[0026] According to the first formula, the relationship between the acceleration of the mobile robot and the time scaling factor is calculated, wherein the first formula is as follows:

[0027] ; (1)

[0028] According to the acceleration obtained by formula (1), the first amplitude range is determined;

[0029] in, is the function of the actual running acceleration of the robot with respect to the actual time T;

[0030] is the actual speed at time T;

[0031] is the function of the time scaling factor K with respect to time T;

[0032] is the velocity function corrected by the time scaling factor.

[0033] Preferably, in the control method of the mobile robot, the process of calculating the time scaling coefficient according to the actual residual displacement and the theoretical residual displacement includes:

[0034] Speed ​​release time based on the previous control cycle Calculate and obtain the theoretical moment of the mobile robot in the current control cycle :

[0035] ;in, is the duration of a control cycle;

[0036] According to the current theoretical moment obtained Determine the corresponding theoretical residual displacement ;

[0037] Get the actual residual displacement of the mobile robot corresponding to the current actual time T ;

[0038] Calculate the time scaling factor:

[0039] ;

[0040] in, is the time scaling factor corresponding to the current actual time T.

[0041] Preferably, in the control method of the mobile robot, the step of obtaining the speed sending moment of the mobile robot in the current control cycle based on the time scaling coefficient and the speed sending moment of the mobile robot in the previous control cycle includes:

[0042] Calculate the speed of the mobile robot in the current control cycle:

[0043] ;in, Obtain the speed release moment of the mobile robot in the current control cycle for the mobile robot; is the time when the mobile robot's speed is released in the previous control cycle; is the time scaling coefficient corresponding to the current actual time T of the mobile robot; The duration of a control cycle is the time scaling factor corresponding to the current actual time T.

[0044] Preferably, in the control method of the mobile robot, before the step of obtaining the actual remaining displacement and the theoretical remaining displacement of the mobile robot from the destination when entering a new control cycle, the method further includes:

[0045] Obtain the initial positioning and destination of the mobile robot;

[0046] According to the initial positioning and the destination, path planning is performed, and a discrete table of theoretical operating data of the mobile robot is generated based on the S-type speed curve planning algorithm; the discrete table of theoretical operating data is pre-stored in the system and is configured to at least be able to query and call the issued speed and theoretical residual displacement therein.

[0047] To achieve the above object, the present invention provides a mobile robot, comprising:

[0048] at least one processor; and,

[0049] a memory communicatively connected to the at least one processor; wherein,

[0050] The memory stores instructions that can be executed by the at least one processor. The instructions are executed by the at least one processor to enable the at least one processor to perform the above-mentioned control method for the mobile robot.

[0051] To achieve the above objectives, the present invention provides a computer-readable storage medium storing a computer program, which implements the above-mentioned mobile robot control method when executed by a processor.

[0052] The present invention has at least the following beneficial effects:

[0053] The control method of a mobile robot provided by the present invention obtains the actual remaining displacement and the theoretical remaining displacement between the mobile robot and the destination when entering a new control cycle; calculates a time scaling coefficient based on the actual remaining displacement and the theoretical remaining displacement; obtains the speed issuance moment of the mobile robot in the current control cycle based on the time scaling coefficient and the speed issuance moment of the mobile robot in the previous control cycle; obtains the corresponding issuance speed in a pre-planned discrete table of theoretical operation data of the mobile robot and runs until entering the next new control cycle. In this way, according to the relationship between the theoretical remaining displacement and the actual remaining displacement, the time axis can be scaled while keeping the basic shape of the original speed planning curve unchanged, so as to achieve the purpose of adjusting and modifying the remaining walking distance while ensuring that the basic shape of the S-type function remains unchanged, so as to achieve the purpose of reaching the destination more accurately. BRIEF DESCRIPTION OF THE DRAWINGS

[0054] Figure 1 A schematic diagram of a control method for a mobile robot provided by the present invention;

[0055] Figure 2 A schematic diagram of a mobile robot provided by the present invention;

[0056] Figure 3 This is a comparison chart of the implementation effect of the mobile robot control method provided by the present invention and the pre-planned one.

[0057] The purpose, features and advantages of the present invention will be further described with reference to the accompanying drawings and in conjunction with the embodiments. DETAILED DESCRIPTION

[0058] The technical solutions of the present invention will be described clearly and completely below in conjunction with the accompanying drawings. Obviously, the embodiments described are only some embodiments of the present invention, not all embodiments. The present invention will be described in detail below with reference to the accompanying drawings and in conjunction with the embodiments. It should be noted that the embodiments of the present invention and the features therein may be combined with each other unless there is a conflict.

[0059] In embodiments of the present invention, the term "and / or" describes the association relationship between associated objects, indicating that three possible relationships exist. For example, "A and / or B" can represent three situations: A exists alone, A and B exist simultaneously, and B exists alone. The character " / " generally indicates that the associated objects are in an "or" relationship.

[0060] It should be noted that the terms "first", "second", etc. in the description and claims of the present invention and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence.

[0061] In the embodiments of the present invention, the term "plurality" refers to two or more than two, and other quantifiers are similar.

[0062] In the present invention, unless otherwise specified, the directional words used, such as "up, down, top, bottom", usually refer to the directions shown in the drawings, or to the components themselves in the vertical, perpendicular or gravity direction; similarly, for ease of understanding and description, "inside and outside" refer to the inside and outside relative to the outline of each component itself, but the above directional words are not used to limit the present invention.

[0063] In order to make the purpose, technical solutions and advantages of the embodiments of the present invention clearer, the embodiments of the present invention will be described in detail below with reference to the accompanying drawings. However, it will be understood by those skilled in the art that in the embodiments of the present invention, many technical details are provided to enable the reader to better understand the present invention. However, even without these technical details and the various changes and modifications based on the following embodiments, the technical solutions claimed in the present invention can be implemented. The division of the following embodiments is for convenience of description and should not constitute any limitation on the specific implementation of the present invention. The various embodiments can be combined with each other and referenced to each other under the premise that there is no contradiction.

[0064] Mobile robots are autonomous machines that can perform tasks independently. They can accept human commands, run pre-programmed programs, or act according to principles developed using artificial intelligence. Their mission is to assist or replace human work in tasks such as manufacturing, construction, and hazardous occupations. In the field of mobile robots, path planning is a core technology that enables autonomous navigation. Different types of mobile robots may use different path planning algorithms, and the central control system needs to design a path planning strategy based on the robot's characteristics.

[0065] Typically, when planning a mobile robot's path, taking S-shaped velocity curve planning as an example, the motion process of a complete S-shaped velocity curve can be divided into seven stages. While path planning typically produces a normal S-shaped velocity curve, the characteristics of mobile robots differ significantly from those of traditional industrial equipment when it comes to motion control. First, mobile robots typically employ a "host computer planning - slave computer execution" architecture. In actual operation, cumulative errors between execution and planning often occur. Furthermore, speed commands issued by the host computer are affected by factors such as communication delays and motor response deviations, causing the slave computer's execution trajectory to deviate further from expectations. Second, mobile robots typically utilize a positioning system that combines lidar and map matching, which carries the risk of position jumps. Especially in dynamic and complex environments, sudden changes in positioning data can directly degrade the continuity and accuracy of trajectory tracking.

[0066] Furthermore, mobile robots are less sensitive to acceleration but require extremely high landing accuracy. For example, in logistics scenarios, mobile robots must dock precisely at the target point with centimeter-level accuracy, and small fluctuations in acceleration have little impact on the overall task.

[0067] However, traditional S-shaped velocity planning requires strict adherence to planned acceleration and jerk curves. Its core problems include: first, poor anti-disturbance capability. Any external disturbance (such as positioning jump, ground slip) will cause the actual running distance to deviate from the planned distance, and there is a lack of dynamic compensation mechanism; second, the risk of speed mutation. When the actual displacement does not match the planned value, traditional methods may force the speed to be corrected, causing acceleration mutations and exacerbating mechanical shock; third, rigid trajectory constraints. The fixed-segment S-shaped curve is difficult to adapt to the real-time feedback of SLAM positioning, resulting in instability of the "planning-execution-positioning" closed loop.

[0068] Therefore, in the actual operation of a mobile robot, if it is directly operated according to the original plan, it is very likely that after the operation is completed, it will not reach the actual target point, or it will have already passed the target point. If the real-time planning is based on the actual operating speed, acceleration, jerk, and remaining distance of the mobile robot during operation, the planning calculation is huge, and there are multiple iterative parameter search processes, which is very difficult to apply in engineering. To solve the above problems, the present invention proposes a control method for a mobile robot that can achieve the smoothest possible arrival at the end of the path while maintaining the original operating curve.

[0069] Specifically, Figure 1 The process of the mobile robot control method provided by the present invention is illustrated. This process can be performed using a mobile robot or any other suitable computer device. The mobile robot may be, but is not limited to, an industrial mobile robot, a service mobile robot, a military mobile robot, a special mobile robot, and the like.

[0070] In step S1001, when entering a new control cycle, the actual remaining displacement and theoretical remaining displacement of the mobile robot relative to the destination are obtained. It should be understood that the actual remaining displacement is the remaining displacement between the current position of the mobile robot at the actual time T and the destination according to the feedback of the positioning system. The theoretical remaining displacement is the displacement of the mobile robot at the theoretical time corresponding to the current control cycle based on the pre-planned speed. The remaining theoretical displacement. Specifically, the mobile machine sends the speed based on the previous control cycle. The theoretical time when the obtained delivery speed moves one control cycle to the current new control cycle The remaining theoretical displacement. Since the mobile robot may not reach the actual destination or may have already passed the destination after the original speed plan is completed in the actual operation according to the planned path. Therefore, for the actual remaining displacement and theoretical remaining displacement between the mobile robot and the destination, the actual remaining displacement may be greater than the theoretical remaining displacement, or the actual remaining displacement may be less than the theoretical remaining displacement. Of course, it is also possible that the actual remaining displacement is equal to the theoretical remaining displacement in the ideal state. Compared with this embodiment, the preset control period , generally, the control cycle Preset to a fixed value, for example, The preset value is 0.02S. Based on the precise control of the mobile robot, the preset control period It should not be too large.

[0071] In a further embodiment, before step S1001, motion control planning is performed in advance to obtain a discrete table of theoretical operation data of the mobile robot. Specifically, it includes obtaining the initial positioning and destination of the mobile robot; performing path planning based on the initial positioning and destination, and generating a discrete table of theoretical operation data of the mobile robot based on the S-type speed curve planning algorithm. The discrete table of theoretical operation data is pre-stored in the system and is configured to at least be able to query and call the issued speed and theoretical residual displacement. The discrete table of theoretical operation data specifically includes the issuing time t, the issuing speed V, and the theoretical residual displacement. The corresponding relationship table of the sending time is a fixed time interval. In some embodiments, the table may also include the running displacement S.

[0072] Before the mobile robot actually operates, motion control planning is performed based on the S-shaped velocity curve planning method to obtain a discrete table of the mobile robot's theoretical operating data. For better illustration, the following assumes that the total travel distance of the mobile robot is 1 meter. Using the S-shaped velocity curve planning method, it is determined that the mobile robot will take 3.25 seconds to reach the designated destination along the preset path. This results in a discrete table of the mobile robot's pre-planned theoretical operating data, as shown in Table 1 below (information such as the mobile robot's steering is not included in this table). This discrete table of the mobile robot's theoretical operating data is pre-stored in the host computer system and can be directly queried and accessed during actual operation.

[0073] Table 1 Discrete table of theoretical operating data of mobile robot

[0074]

[0075] It should be noted that during the operation of the mobile robot, the speed will be sent down every time a new control cycle is reached. The speed can be obtained by querying and calling the speed information sent down in the pre-planned theoretical operation data discrete table. The control cycle in this embodiment and the interval between the sending moments in Table 1 are different control quantities. Taking Table 1 as an example, if the mobile robot enters a new control cycle corresponding to the speed sending moment If the speed is 1.620s, the corresponding sending time is 1.620s, and the sending speed is 0.5m / s. There is a corresponding value in Table 1, which can be directly found. If the theoretical release time corresponding to the mobile robot entering a new control cycle falls between two release times t1 and t2, the speed release time corresponding to the initial actual time T of the mobile robot entering the new control cycle can be obtained based on the linear algorithm. The speed of sending ; Where V1 represents the sending speed corresponding to the sending time t1; V2 represents the sending speed corresponding to the sending time t2. During the operation of the mobile robot, the theoretical residual displacement will be determined every time a new control cycle is reached. The theoretical residual displacement can be obtained by querying and calling the residual displacement information in the pre-planned theoretical operation data discrete table. Similarly, if the mobile robot enters the theoretical time t corresponding to the new control cycle T If the mobile robot enters the new control cycle at the theoretical time corresponding to 1.620s, the remaining displacement corresponding to the call time 1.620s is 0.5m. If it happens to fall between two sending times t1 and t2, the theoretical time t corresponding to the initial actual time T when the mobile robot enters a new control cycle can also be obtained based on the linear algorithm. TTheoretical residual displacement .in, Indicates the theoretical residual displacement corresponding to the sending time t1; Indicates the theoretical residual displacement corresponding to the sending time t2.

[0076] In step S1002, according to the actual residual displacement L and the theoretical residual displacement , calculate the time scaling factor K. It should be understood that according to the plan in Table 1, the mobile robot needs 3.250 seconds to complete the displacement of a total distance of 1 meter. The time interval is 0.001 seconds, that is, 3.250 seconds is divided into 3250 parts, and the speed corresponding to each 0.001 second is the theoretical speed. The mobile robot can theoretically reach the destination by executing according to the theoretical speed in Table 1. However, when the actual remaining displacement L obtained is different from the theoretical remaining displacement Inconsistency, for example, the theoretical residual displacement is 0.5m, but the actual residual displacement actually detected is 0.4m, which is equivalent to a 20% reduction in the residual displacement. That is, at this time, the actual residual displacement is smaller than the theoretical residual displacement. Based on the technical solution of this embodiment, it is necessary to speed up the theoretical time and make the theoretical time loss rate faster, so that the acceleration and jerk change slightly, but the shape of the speed curve can still maintain its original shape. On the contrary, if the actual residual displacement actually detected is 0.6m, it is equivalent to a 20% increase in the residual displacement. That is, at this time, the actual residual displacement is larger than the theoretical residual displacement. Based on the technical solution of this embodiment, it is necessary to slow down the theoretical time and make the theoretical time loss rate slower.

[0077] Specifically, when the actual residual displacement L is less than the theoretical residual displacement When the actual residual displacement L is greater than the theoretical residual displacement, the theoretical time needs to be faster. At this time, the time scaling factor K is greater than 1. , the actual time needs to be slowed down, and the time scaling factor K is less than 1.

[0078] In some implementations, the time scaling factor is obtained:

[0079] ;in, is the time scaling factor of the current actual time T, is the actual residual displacement at the current actual time T; For the current theoretical moment; is the residual displacement at the current theoretical moment. From this, we can further construct a function of the time scaling factor K with respect to time T:

[0080] ;in, is the actual residual displacement function; is the theoretical residual displacement function.

[0081] In step S1003, it is determined whether the acquired time scaling coefficient exceeds the preset first amplitude range, and a first judgment result is obtained. It should be noted that the first amplitude range of the time scaling coefficient includes a first upper limit and a second lower limit. The time scaling coefficient is adjusted between the first upper limit and the first lower limit. The larger the first upper limit and the first lower limit, the stronger the adjustment ability of the time scaling coefficient will be; but if it is too large, it will easily cause the acceleration to exceed the set range. By setting the first lower limit of the time scaling coefficient to constrain the time scaling coefficient, it is possible to effectively prevent a sudden drop in speed from causing a negative acceleration shock; by setting the first upper limit of the time scaling coefficient to constrain the time scaling coefficient, it is possible to avoid excessive acceleration exceeding the set acceleration range.

[0082] In some implementations, the first amplitude range of the time scaling factor K may be set with a first lower limit of 0 and a first upper limit of 2, specifically, 0<K≤2.

[0083] In some other implementations, the setting of the first amplitude range may also be determined according to the following steps S2001 and S2002. It should be noted that steps S2001 and S2002 may be before or after step S1002, and are not specifically limited here.

[0084] Specifically, in step S2001, the relationship between the acceleration of the mobile robot and the time scaling factor is calculated according to a first formula, wherein the first formula is as follows:

[0085] ; (1)

[0086] in, is the function of the actual running acceleration of the robot with respect to the actual time T;

[0087] is the actual speed at time T;

[0088] is the function of the time scaling factor K with respect to time T;

[0089] is the velocity function corrected by the time scaling factor.

[0090] The function of deceleration with respect to the actual time T can be obtained by fitting the relevant parameters obtained by simulation or actual operation of the mobile robot. It should also be noted that the actual time T in this embodiment is the theoretical time t T , and the speed release time All times / moments are relative to their respective initial moments which are 0.

[0091] In step S2002, the first amplitude range is determined based on the acceleration function obtained by formula (1). It should be noted that the first amplitude range that needs to be determined generally only needs to ensure the continuity of the acceleration function curve. The first amplitude range of the time scaling factor is determined based on the preset limit of the acceleration. For example, the maximum acceleration allowed by the mobile robot is preset to be A times the theoretical acceleration in the pre-planned plan, where the specific value of A can be determined according to the required accuracy requirements. For example, if the maximum acceleration allowed by the mobile robot is 3 times the theoretical acceleration, then any first amplitude range that meets this condition can be used, and the largest first amplitude range that meets this condition can also be selected.

[0092] In step S1004, when the first judgment result is yes, the time scaling factor is updated using the limit value of the first amplitude range. When the time scaling factor calculated in step S1002 is greater than 1 and exceeds the upper limit value of the first amplitude range, the upper limit value of the first amplitude range is assigned to the time scaling factor to obtain an updated time scaling factor; when the time scaling factor calculated in step S1002 is less than 1 and less than the lower limit value of the first amplitude range, the lower limit value of the first amplitude range is assigned to the time scaling factor to obtain an updated time scaling factor. In addition, when the first judgment result is no, the time scaling factor obtained in step S1002 can be directly used as the final time scaling factor.

[0093] For example, in some embodiments, the time scaling factor K satisfies: 0<K≤2. When the time scaling factor is greater than 1 and exceeds the first upper limit 2 of the first amplitude range, the time scaling factor=2.

[0094] In step S1005, the rate of change of the time scaling factor over time is calculated. The rate of change of the time scaling factor over time is |dK / dt|. It should be noted that if the time scaling factor has been updated, the updated time scaling factor is used to calculate the rate of change; if the time scaling factor has not been updated, the time scaling factor calculated in step S1002 is used to calculate the rate of change.

[0095] In step S1006, a determination is made as to whether the rate of change exceeds a preset second amplitude, yielding a second determination result. If the second determination result is yes, step S1007 is executed; if not, step S1008 is executed directly, with the current time scaling factor being used as the target time scaling factor. In some embodiments, the second amplitude is 10, requiring |dK / dt| ≤ 10. As long as the rate of change does not exceed the second amplitude, it is assumed that there is no significant abrupt change between the actual residual displacement and the theoretical residual displacement within the current cycle.

[0096] If the second determination result is yes in step S1007, the rate of change is updated using the second amplitude limit, and the time scaling factor is recalculated based on the updated rate of change. Specifically, if the second amplitude is ϵ, and |dK / dt| exceeds ϵ, |dK / dt| is defined as ϵ, and K is recalculated based on |dK / dt|=ϵ.

[0097] In step S1008, a final time scaling coefficient is obtained. If the second judgment result is yes, the recalculated time scaling coefficient is used as the target time scaling coefficient; if the second judgment result is no, the time scaling coefficient in step S1005 is used as the final time scaling coefficient.

[0098] In step S1009, the speed sending time of the mobile robot in the current control cycle is obtained based on the time scaling coefficient and the speed sending time of the mobile robot in the previous control cycle. In some embodiments, the time scaling coefficient When the mobile robot sends the speed in the new control cycle =The speed of the mobile robot in the previous control cycle is sent + *One control cycle Taking Table 2 below as an example, this embodiment provides a mobile robot simulation operation data table. Among them, a control cycle ΔT is 0.02s. When the mobile robot starts and actually runs to 0.02s (actual time), it enters the first control cycle and obtains the time scaling coefficient. After that, the speed is calculated to be 0s+1*0.02s=0.02s. After the mobile robot continues to run for ΔT (0.02s) to 0.04s (actual time), it enters the second control cycle and obtains the time scaling coefficient. After that, the speed sending time is calculated to be 0.02s+0.9*0.02s=0.038s. And so on, until the mobile robot moves to the destination position, at which time the mobile robot enters the last control cycle and obtains the time scaling coefficient. After calculation, the speed release time is 3.24s + 0.7 * 0.02s = 3.254s. Since the speed release time exceeds the pre-planned 3.25s, the speed is adjusted to the release time of 3.25s. At this point, we should note that the actual movement time of the mobile robot is 3.68s, which exceeds the pre-planned 3.25s.

[0099] In step S1010, the corresponding speed is obtained from the pre-planned theoretical operation data discrete table of the mobile robot and the robot is operated until the next new control cycle is entered. Specifically, when the mobile robot enters a new control cycle, the speed is determined based on the time of the speed release. In the pre-planned discrete table of theoretical operating data of the mobile robot (Table 1), the corresponding dispatch speed is quickly searched and a control cycle ΔT is run to enter the next new control cycle. In this way, the execution rhythm of the speed curve can be changed by adjusting K (the proportional factor calculated by adjusting the actual residual displacement and the theoretical residual displacement after positioning jump), but its differential characteristics are not changed. Therefore, this embodiment can dynamically adjust the time axis by adopting the time scaling coefficient, and adjust and modify the remaining walking distance while ensuring that the basic shape of the S-shaped speed curve remains unchanged, so as to achieve the purpose of reaching the destination more accurately. In addition, when entering the next control cycle, based on the speed dispatch time of the previous cycle Theoretical moment of the current control cycle Specifically, the mobile robot is updated at the theoretical moment of the current control cycle. =The speed of the previous cycle is issued at the time + One control cycle .

[0100] In step S1009, it also includes sending the time based on the speed of the mobile robot in the previous control cycle. Determine the theoretical moment of the mobile robot in the new control cycle , and obtain the time scaling factor K based on the theoretical moment. Specifically: ;in, is the theoretical moment of the mobile robot in a new control cycle; is the time when the mobile robot sends the speed in the previous control cycle; ΔT is the duration of a control cycle. Based on the theoretical time of the mobile robot in the new control cycle Query Table 1 to obtain the corresponding theoretical residual displacement of the mobile robot The actual position of the mobile robot is obtained based on the mobile robot positioning system such as the laser radar system, the visual camera system, etc., and then the actual remaining displacement of the mobile robot is determined. Then according to the theoretical residual displacement and the actual residual displacement Calculate and obtain the time scaling factor K. The following table 2 will be used to illustrate the theoretical moments of the mobile robot in different control cycles. Among them, when the mobile robot starts and actually runs to 0.02s, the corresponding theoretical moment is Initial 0s moment + one control cycle = 0s+0.02s=0.02s. Then, according to the theoretical time of 0.02s, query Table 1 to obtain its theoretical residual displacement, and then obtain the actual residual displacement according to the measured posture, and obtain the time scaling factor K=1 by calculation. Then, calculate the time when its speed is sent 0s+1*0.02s=0.02s. After the mobile robot continues to actually run for ΔT (0.02s) to 0.04s, it enters the next control cycle. The corresponding theoretical moment + = 0.02s+0.02s=0.04s. Then, according to the theoretical time of 0.04s, query Table 1 to obtain its theoretical residual displacement, and then obtain the actual residual displacement according to the measured posture, and obtain the time scaling factor K=0.9 by calculation. Then, calculate the time when its speed is sent 0.02s+0.9*0.02s=0.38s. And so on, until the mobile robot moves to the destination, at which time the mobile robot enters the last control cycle, and the corresponding theoretical time is + = 3.240s+0.02s=3.26s. 3.26s is greater than the pre-planned 3.25s, so the theoretical time corresponding to the last control cycle is Adjusted to 3.25s. And, according to the calculation, the time scaling factor K=0.7 is obtained. The speed sending time is calculated to be 3.24s+0.7*0.02s=3.254s. At this time, the speed sending time exceeds the pre-planned 3.25s, and the speed is adjusted to be sent at the sending time of 3.25s. It should be noted that in this embodiment, the current actual time T determined by the mobile robot when entering the new control cycle is the theoretical time And the speed of delivery time They correspond to the initial moments when they enter a new control cycle.

[0101] Table 2 Mobile robot simulation operation data table

[0102]

[0103] In step S1011, it is determined whether the actual remaining displacement is less than the preset threshold. If it is, the speed is set to 0 and the mobile robot stops running. Otherwise, the plan is re-planned and executed. Figure 3Figure 2 shows a comparison of the mobile robot's speed-time curves based on pre-planning and simulated operation. The green curve represents the mobile robot's speed-time curve determined using the S-shaped speed curve planning method, while the red curve represents the mobile robot's speed-time curve based on simulated operation data. Comparing the two reveals that while the basic shape of the S-shaped speed curve remains unchanged, scaling the time axis allows the mobile robot's residual displacement to be adjusted and corrected, resulting in more accurate destination arrival.

[0104] In order to achieve the above object, the present invention also provides a mobile robot, such as Figure 2 As shown, the mobile robot includes at least one processor 301; and a memory 302 communicatively connected to the at least one processor 301; wherein the memory 302 stores instructions that can be executed by the at least one processor 301, and the instructions are executed by the at least one processor 301 so that the at least one processor 301 can execute the above-mentioned mobile robot control method.

[0105] The memory 302 and processor 301 are connected using a bus. The bus can include any number of interconnected buses and bridges, connecting various circuits of one or more processors 301 and memory 302. The bus can also connect various other circuits such as peripheral devices, voltage regulators, and power management circuits. These are all well known in the art and are therefore not described further herein. The bus interface provides an interface between the bus and the transceiver. The transceiver can be a single component or multiple components, such as multiple receivers and transmitters, providing a unit for communicating with various other devices over a transmission medium. Data processed by the processor 301 is transmitted over a wireless medium via an antenna. Furthermore, the antenna receives data and transmits it to the processor 301.

[0106] The processor 301 is responsible for managing the bus and general processing, and can also provide various functions, including timing, peripheral interfaces, voltage regulation, power management, and other control functions. The memory 302 can be used to store data used by the processor 301 when performing operations.

[0107] In order to achieve the above objectives, the present invention provides a computer-readable storage medium storing a computer program, which implements the above-mentioned mobile robot control method when executed by the processor 301.

[0108] That is, those skilled in the art will understand that all or part of the steps in the above-described method embodiments can be implemented by instructing the relevant hardware through a program. The program is stored in a storage medium and includes a number of instructions for causing a device (such as a microcontroller or chip) or a processor to execute all or part of the steps in the method embodiments of the present invention. The aforementioned storage medium includes various media capable of storing program code, such as a USB flash drive, a mobile hard drive, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk.

[0109] Obviously, the embodiments described above are only part of the embodiments of the present invention, rather than all of the embodiments. Based on the embodiments of the present invention, those skilled in the art may make other different forms of changes or modifications without making any creative work, and all of these should fall within the scope of protection of the present invention.

Claims

1. A control method for a mobile robot, characterized in that: include: When entering a new control cycle, the actual residual displacement and theoretical residual displacement between the mobile robot and the destination are obtained; Calculating a time scaling factor according to the actual residual displacement and the theoretical residual displacement; The speed sending moment of the mobile robot in the current control cycle is obtained based on the time scaling coefficient and the speed sending moment of the mobile robot in the previous control cycle, including calculating and obtaining the speed sending moment of the mobile robot in the current control cycle: ;in, Obtain the speed release moment of the mobile robot in the current control cycle for the mobile robot; is the time when the mobile robot's speed is released in the previous control cycle; is the time scaling coefficient corresponding to the current actual time T of the mobile robot; The duration of a control cycle; is the time scaling coefficient corresponding to the current actual time T; Obtain the corresponding speed from the pre-planned theoretical operation data discrete table of the mobile robot and run until entering the next new control cycle; After the step of calculating the time scaling coefficient according to the actual residual displacement and the theoretical residual displacement, and before the step of obtaining the speed sending moment of the mobile robot in the current control cycle based on the time scaling coefficient and the speed sending moment of the mobile robot in the previous control cycle, the method further includes: Determine whether the time scaling factor exceeds a preset first amplitude range, and obtain a first determination result; When the first judgment result is yes, the time scaling factor is updated using the limit value of the first amplitude range; Calculate the rate of change of the time scaling factor over time according to the updated time scaling factor; Determining whether the change rate exceeds a preset second amplitude, and obtaining a second determination result; When the second judgment result is yes, the change rate is updated using the limit value of the second amplitude, and the time scaling factor is recalculated according to the updated change rate; The recalculated time scaling factor is used as the final time scaling factor; The process of calculating the time scaling coefficient according to the actual residual displacement and the theoretical residual displacement includes: Speed ​​release time based on the previous control cycle Calculate and obtain the theoretical moment of the mobile robot in the current control cycle : ;in, is the duration of a control cycle; According to the current theoretical moment obtained Determine the corresponding theoretical residual displacement ; Get the actual residual displacement of the mobile robot corresponding to the current actual time T ; Calculate the time scaling factor: ; in, is the time scaling factor corresponding to the current actual time T.

2. The control method of the mobile robot according to claim 1, wherein: Also includes: When the first judgment result is no, using the currently acquired time scaling coefficient as the target time scaling coefficient; When the second judgment result is no, the currently acquired time scaling coefficient is used as the target time scaling coefficient.

3. The control method of the mobile robot according to claim 1, wherein: When the first judgment result is yes, the process of updating the time scaling factor by using the limit value of the first amplitude range includes: When the time scaling coefficient calculated based on the actual residual displacement and the theoretical residual displacement is greater than 1 and exceeds an upper limit of the first amplitude range, assigning the upper limit of the first amplitude range to the time scaling coefficient to obtain an updated time scaling coefficient; When the time scaling coefficient calculated based on the actual residual displacement and the theoretical residual displacement is less than 1 and less than the lower limit of the first amplitude range, the lower limit of the first amplitude range is assigned to the time scaling coefficient to obtain an updated time scaling coefficient.

4. The control method of a mobile robot according to claim 1, wherein: Before the step of determining whether the time scaling factor exceeds a preset first amplitude range and obtaining a first determination result, the method further includes: According to formula (1), the relationship between the acceleration of the mobile robot and the time scaling factor is calculated, where formula (1) is as follows: ;(1) According to the acceleration obtained by formula (1), the first amplitude range is determined; in, is the function of the actual running acceleration of the robot with respect to the actual time T; is the actual speed at time T; is the function of the time scaling factor K with respect to time T; is the velocity function corrected by the time scaling factor.

5. The control method of a mobile robot according to claim 1, wherein: Before the step of obtaining the actual remaining displacement and the theoretical remaining displacement between the mobile robot and the destination when entering a new control cycle, the method further includes: Obtain the initial positioning and destination of the mobile robot; According to the initial positioning and the destination, path planning is performed, and a discrete table of theoretical operating data of the mobile robot is generated based on the S-type speed curve planning algorithm; the discrete table of theoretical operating data is pre-stored in the system and is configured to at least be able to query and call the issued speed and theoretical residual displacement therein.

6. A mobile robot, characterized in that: include: at least one processor; as well as, a memory communicatively connected to the at least one processor; wherein, The memory stores instructions that can be executed by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to execute the control method of the mobile robot according to any one of claims 1 to 5.

7. A computer-readable storage medium storing a computer program, characterized in that: When the computer program is executed by a processor, the control method of the mobile robot according to any one of claims 1 to 5 is implemented.

Citation Information

Patent Citations

  • Speed control method and device, automation equipment, electronic equipment and storage medium

    CN114020055A

  • Speed curve optimization method and device, vehicle and storage medium

    CN117908534A