Movement control method and self-moving device
By employing a phased acceleration and deceleration method using an S-shaped speed curve in self-moving equipment, the stability problem caused by sudden speed changes was solved, thereby improving the stability and lifespan of the equipment.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-30
- Publication Date
- 2026-03-31
AI Technical Summary
During autonomous driving, speed planning is prone to sudden changes, leading to low stability of autonomous mobile devices, affecting device lifespan and user experience.
By accelerating and decelerating in stages during movement, and using different accelerations to plan velocity curves, an S-shaped velocity curve is adopted to ensure smooth speed changes, including acceleration, uniform acceleration, deceleration, and constant speed processes, thereby reducing the unevenness of the equipment's drive load.
It improves the stability and lifespan of self-moving devices, reduces the impact on devices during movement, and enhances the user experience.
Smart Images

Figure CN121764060A_ABST
Abstract
Description
Technical Field
[0001] This application belongs to the field of self-moving devices, and particularly relates to a mobile control method and a self-moving device. Background Technology
[0002] With the development of autonomous driving technology, speed planning is often necessary to ensure the safety of autonomous driving. However, in related technologies, when faced with complex planned paths, the planned speed is prone to sudden changes, causing impact forces on the autonomous device during movement, resulting in low stability and affecting the lifespan of the device. Summary of the Invention
[0003] This application provides a motion control method and a self-moving device to solve the technical problem that sudden speed changes during the planned speed lead to low stability of the self-moving device.
[0004] The first aspect of this application provides a motion control method, the method comprising: accelerating movement in a first stage and / or decelerating movement in a second stage during the movement of a self-moving device, wherein the first stage includes at least two acceleration processes, the second stage includes at least two deceleration processes, the acceleration of the acceleration processes is different, and the acceleration of the deceleration processes is different.
[0005] According to an embodiment of this application, the movement of the self-moving device includes a first stage, and the method further includes: determining the actual distance of the self-moving device from the starting point to the ending point; determining a first running distance corresponding to the self-moving device in a uniform acceleration state based on the initial speed of the self-moving device at the starting point, a preset ending speed, and a preset maximum acceleration; determining a second running distance corresponding to the self-moving device completing a preset speed change based on the initial speed and the ending speed; if the first running distance is less than the actual distance, the second running distance is greater than the actual distance, and the initial speed is less than the ending speed, planning the duration of the first stage and the acceleration of the first stage according to the actual distance, the initial speed, and the ending speed, so that the moving speed of the self-moving device reaches the ending speed after the first stage ends; or planning the duration of the first stage and the acceleration of the first stage according to the actual distance, the initial speed, the ending speed, and the maximum acceleration, so that the moving speed of the self-moving device reaches the ending speed after the first stage ends.
[0006] According to an embodiment of this application, the method further includes: if the first running distance is less than the actual distance, the second running distance is greater than the actual distance, and the initial speed is greater than the final speed, the movement of the self-moving device includes a second stage; based on the actual distance, the initial speed, and the final speed, the duration of the second stage and the acceleration of the second stage are planned so that the movement speed of the self-moving device reaches the final speed after the second stage ends; if the second running distance is less than the actual distance, based on the initial speed, the final speed, and a preset acceleration variable, the movement of the self-moving device includes the first stage and the second stage, and the duration of the uniform speed process and the acceleration of the first stage are planned sequentially. The duration of the first stage and the duration of the second stage are determined such that the moving speed of the self-moving device reaches the endpoint speed after the second stage ends. If the second running distance is equal to the actual distance, the movement of the self-moving device includes the first stage and the second stage. Based on the initial speed, the endpoint speed, and the preset acceleration variable, the duration of the first stage and the duration of the second stage are planned sequentially so that the moving speed of the self-moving device reaches the endpoint speed after the second stage ends. If the first running distance is greater than or equal to the actual distance, a prompt message is generated. The prompt message is used to indicate that when the moving speed of the self-moving device reaches the endpoint speed, the moving distance of the self-moving device is greater than the actual distance.
[0007] According to an embodiment of this application, determining the first running distance corresponding to the self-moving device in a uniform acceleration state based on the initial speed of the self-moving device at the starting point, the preset ending speed, and the preset maximum acceleration includes: determining the first state duration corresponding to the uniform acceleration state based on the initial speed, the ending speed, and the maximum acceleration; and determining the first running distance based on the initial speed, the first state duration, and the maximum acceleration.
[0008] According to an embodiment of this application, determining the second running distance corresponding to the self-moving device completing a preset speed change based on the initial speed and the final speed includes: determining the second state duration when the self-moving device is in an acceleration state and the third state duration when the self-moving device is in a deceleration state based on the initial speed, the final speed, and a preset jerk; and determining the second running distance based on the initial speed, the final speed, the second state duration, and the third state duration; or determining the fourth state duration when the self-moving device is in an acceleration state, the fifth state duration when the self-moving device is in a uniform acceleration state, and the sixth state duration when the self-moving device is in a deceleration state based on the initial speed, the final speed, the preset jerk, and the maximum acceleration; and determining the second running distance based on the initial speed, the final speed, the fourth state duration, the fifth state duration, and the sixth state duration.
[0009] According to an embodiment of this application, the preset acceleration variable includes a preset jerk for the first stage and a preset jerk for the second stage. The step of sequentially planning the duration of the first stage and the duration of the second stage based on the initial velocity, the final velocity, and the preset acceleration variable includes:
[0010] Based on the actual distance, the initial speed, and the final speed, the planned jerk is determined, and based on the initial speed and the planned jerk, the planned speed of the self-moving device at any given time is determined.
[0011] Based on the initial speed and the preset jerk of the first stage, the target speed of the self-moving device at any acceleration moment is determined; based on the final speed and the preset jerk of the second stage, the target speed of the self-moving device at any deceleration moment is determined.
[0012] When the planned speed at any given moment is less than or equal to the target speed at any given acceleration moment, and when the planned speed at any given moment is less than or equal to the target speed at any given deceleration moment, the duration of the acceleration / deceleration process, the duration of the acceleration / deceleration process, and the duration of the deceleration / deceleration process are planned based on the actual distance, the initial speed, the final speed, the preset acceleration / deceleration of the first stage, and the preset acceleration / deceleration of the second stage. The first stage includes the acceleration / deceleration process and the deceleration / deceleration process, and the second stage includes the acceleration / deceleration process and the deceleration / deceleration process.
[0013] According to an embodiment of this application, the method further includes: the preset acceleration variable further includes the target acceleration of the first stage and the target acceleration of the second stage; the method further includes: when the planned speed at any moment is greater than the target speed at any acceleration moment, the target speed at any acceleration moment is greater than the initial speed, and the target speed at any deceleration moment is less than the initial speed, determining a third running distance corresponding to the self-moving device reaching the target acceleration of the first stage based on the initial speed and the preset jerk of the first stage; determining a fourth running distance corresponding to the self-moving device reaching the target acceleration of the second stage based on the endpoint speed and the preset jerk of the second stage; if the sum of the third running distance and the fourth running distance is less than the actual distance, determining a fourth running distance corresponding to the self-moving device reaching the target acceleration of the second stage based on the actual distance, the initial speed, the endpoint speed, the target acceleration of the first stage, the target acceleration of the second stage, the preset jerk of the first stage, and the preset jerk of the second stage. The system plans the duration of the acceleration process, the duration of the uniform acceleration process, the duration of the deceleration process, the duration of the acceleration / deceleration process, the duration of the uniform deceleration process, and the duration of the deceleration / deceleration process for each stage. The first stage includes the acceleration process, the uniform acceleration process, and the deceleration process, and the second stage includes the acceleration / deceleration process, the uniform deceleration process, and the deceleration / deceleration process. If the sum of the third running distance and the fourth running distance is greater than or equal to the actual distance, the system plans the duration of the acceleration process, the duration of the deceleration process, the duration of the acceleration / deceleration process, the duration of the uniform deceleration process, and the duration of the deceleration / deceleration process based on the actual distance, the initial velocity, the final velocity, the target acceleration of the second stage, the preset acceleration / deceleration of the first stage, and the preset acceleration / deceleration of the second stage. The first stage includes the acceleration process and the deceleration process, and the second stage includes the acceleration / deceleration process, the uniform deceleration process, and the deceleration / deceleration process.
[0014] According to an embodiment of this application, the method further includes: when the planned speed at any given time is greater than the target speed at any given acceleration time, the target speed at any given acceleration time is greater than the initial speed, the planned speed at any given time is greater than the target speed at any given deceleration time, and the target speed at any given deceleration time is greater than the initial speed; if the target speed at any given acceleration time is equal to the target speed at any given deceleration time, a fifth running distance corresponding to when the self-moving device reaches the target acceleration of the second stage is determined based on the initial speed and the preset jerk of the second stage; if the sum of the third running distance and the fifth running distance is less than the actual distance, the duration of the acceleration process is planned based on the actual distance, the initial speed, the endpoint speed, the target acceleration of the first stage, the target acceleration of the second stage, the preset jerk of the first stage, and the preset jerk of the second stage. The duration of the uniform acceleration process, the duration of the deceleration process, the duration of the acceleration / deceleration process, the duration of the uniform deceleration process, and the duration of the deceleration / deceleration process are defined. The first stage includes the acceleration / deceleration process, the uniform acceleration process, and the deceleration / deceleration process. The second stage includes the acceleration / deceleration process, the uniform deceleration process, and the deceleration / deceleration process. If the sum of the third running distance and the fifth running distance is greater than or equal to the actual distance, the duration of the acceleration / deceleration process, the duration of the deceleration / deceleration process, the duration of the acceleration / deceleration process, the duration of the uniform deceleration process, and the duration of the deceleration / deceleration process are planned based on the actual distance, the initial speed, the final speed, the target acceleration of the second stage, the preset jerk of the first stage, and the preset jerk of the second stage. The first stage includes the acceleration / deceleration process and the deceleration / deceleration process. The second stage includes the acceleration / deceleration process, the uniform deceleration process, and the deceleration / deceleration process.
[0015] According to an embodiment of this application, the method further includes: when the target speed at any acceleration moment is less than the target speed at any deceleration moment, determining a sixth running distance corresponding to when the self-moving device reaches the target acceleration of the first stage based on the initial speed and the preset jerk of the first stage; if the sum of the fifth running distance and the sixth running distance is less than the actual distance, planning the duration of the acceleration process and the uniform acceleration process based on the actual distance, the initial speed, the final speed, the target acceleration of the first stage, the target acceleration of the second stage, the preset jerk of the first stage, and the preset jerk of the second stage. The duration of the acceleration process, the duration of the deceleration process, the duration of the acceleration / deceleration process, the duration of the uniform deceleration process, and the duration of the deceleration process are defined. The first stage includes the acceleration process, the uniform acceleration process, and the deceleration process. The second stage includes the acceleration / deceleration process, the uniform deceleration process, and the deceleration process. If the sum of the fifth running distance and the sixth running distance equals the actual distance, the duration of the acceleration process, the duration of the uniform acceleration process, and the duration of the deceleration process are planned based on the actual distance, the initial speed, the final speed, the target acceleration of the second stage, the preset acceleration of the first stage, and the preset acceleration of the second stage. The duration of the acceleration / deceleration process, the duration of the acceleration / deceleration process, and the duration of the deceleration / deceleration process are defined. The first stage includes the acceleration / deceleration process, the uniform acceleration process, and the deceleration / deceleration process. The second stage includes the acceleration / deceleration process and the deceleration / deceleration process. If the sum of the fifth running distance and the sixth running distance is greater than the actual distance, and the sum of the third running distance and the fifth running distance is less than the actual distance, the duration of the acceleration / deceleration process, the duration of the uniform acceleration process, the duration of the deceleration / deceleration process, the duration of the acceleration / deceleration process, and the duration of the deceleration / deceleration process are planned. The first stage includes the acceleration / deceleration process, the uniform acceleration process, and the deceleration / deceleration process. The acceleration process, the second stage includes the acceleration / deceleration process and the deceleration / deceleration process; if the sum of the fifth running distance and the sixth running distance is greater than the actual distance, and the sum of the third running distance and the fifth running distance is greater than or equal to the actual distance, the duration of the acceleration / deceleration process, the duration of the acceleration / deceleration process, and the duration of the deceleration / deceleration process are planned according to the actual distance, the initial speed, the final speed, the preset acceleration / deceleration of the first stage and the preset acceleration / deceleration of the second stage, the first stage includes the acceleration / deceleration process and the deceleration / deceleration process, and the second stage includes the acceleration / deceleration process and the deceleration / deceleration process.
[0016] A second aspect of this application provides a motion control device, the device comprising: a motion unit, configured to accelerate in a first stage and / or decelerate in a second stage during the movement of a self-moving device, wherein the acceleration is different in each stage.
[0017] A third aspect of this application provides a self-moving device, the self-moving device comprising: a memory for storing computer-readable instructions; and a processor for executing the computer-readable instructions stored in the memory to implement the mobility control method.
[0018] A fourth aspect of this application provides a computer-readable storage medium storing computer-readable instructions, which are executed by a processor in a self-moving device to implement the mobile control method.
[0019] In several embodiments of this application, a first running distance corresponding to the self-moving device in a state of uniform acceleration is determined based on the initial speed, the final speed, and the preset maximum acceleration. A second running distance corresponding to the self-moving device completing a preset speed change is determined based on the initial speed and the final speed. Furthermore, by comparing the relationship between the first running distance and the actual distance, and between the second running distance and the actual distance, the planning of the first and second stages is realized, ensuring that the self-moving device completes its movement from the starting point to the ending point when its moving speed reaches the final speed. In addition, since the planned first stage uses planned accelerators to gradually increase speed, and the planned second stage uses planned accelerators to gradually decrease speed, this embodiment can also improve the smoothness of the planned speed, reduce uneven drive load on the self-moving device, and thus improve the stability of the self-moving device. Attached Figure Description
[0020] Figure 1 This is a schematic diagram of the S-shaped velocity curve provided in the embodiments of this application.
[0021] Figure 2 This is a flowchart of the motion control method provided in the embodiments of this application.
[0022] Figure 3 This is a schematic diagram of the speed change of the self-moving device provided in the embodiments of this application.
[0023] Figure 4 This is a flowchart of a motion control method provided in another embodiment of this application.
[0024] Figure 5 These are schematic diagrams of speed and distance changes of the self-moving device provided in the embodiments of this application.
[0025] Figure 6 This is a flowchart of a motion control method provided in another embodiment of this application.
[0026] Figure 7 This is another schematic diagram of speed change of the self-moving device provided in the embodiments of this application.
[0027] Figure 8 This is another schematic diagram of speed change of the self-moving device provided in the embodiments of this application.
[0028] Figure 9 This is a functional block diagram of the mobile control device provided in the embodiments of this application.
[0029] Figure 10 This is a schematic diagram of the structure of a self-moving device that implements the motion control method according to an embodiment of this application.
[0030] Figure 11 This is a schematic diagram of the overall structure of the lawn mowing device that implements the motion control method according to an embodiment of this application. Detailed Implementation
[0031] To make the objectives, technical solutions, and advantages of this application clearer, the application will be described in detail below with reference to the accompanying drawings and specific embodiments.
[0032] It should be noted that in this application, "at least one" means one or more, and "more than one" means two or more. "And / or" describes the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A alone, A and B simultaneously, or B alone, where A and B can be singular or plural. The terms "first," "second," "third," "fourth," etc. (if present) in the specification, claims, and drawings of this application are used to distinguish similar objects, not to describe a specific order or sequence.
[0033] In the embodiments of this application, the terms "exemplary" or "for example" are used to indicate examples, illustrations, or descriptions. Any embodiment or design described as "exemplary" or "for example" in the embodiments of this application should not be construed as being more preferred or advantageous than other embodiments or design solutions. Specifically, the use of terms such as "exemplary" or "for example" is intended to present the relevant concepts in a specific manner. Unless otherwise specified, the following embodiments and features described herein can be combined with each other.
[0034] The mobility control method provided in this application can be applied to one or more self-moving devices. These self-moving devices can be lawnmowers, cleaning robots, de-icing robots, and cruise robots, etc. The mobility control method provided in this application can also be applied to computer devices that communicate with the self-moving devices.
[0035] Currently, the movement of self-operated devices typically involves acceleration, constant speed, and deceleration. The curve showing the change in speed over time is called a velocity curve, with common types including T-shaped and S-shaped velocity curves. However, the T-shaped velocity curve involves sudden speed changes, causing impact forces during movement and resulting in uneven drive loads, thus reducing the stability and lifespan of the self-operated device. Furthermore, if a user rides a self-operated device operating at a T-shaped velocity, the impact forces generated during movement will lead to a poor user experience.
[0036] Therefore, this application provides a motion control method, and the speed-time curve planned in this application is as follows: Figure 1 The S-shaped velocity curve is shown.
[0037] like Figure 1 The S-shaped velocity curve shown mainly includes the acceleration process (such as...). Figure 1 The T1 stage), uniform acceleration process (such as Figure 1 The T2 phase), deceleration process (such as Figure 1 The T3 stage), uniform process (such as Figure 1 The T4 phase), acceleration and deceleration processes (such as Figure 1 The T5 stage), uniform deceleration process (such as Figure 1 The T6 stage), deceleration process (such as Figure 1 (T7 stage). In the acceleration phase, the jerk remains constant and positive, and both acceleration and velocity increase slowly. In the uniform acceleration phase, the jerk is zero, the acceleration remains constant and positive, and the velocity increases rapidly. In the deceleration phase, the jerk remains constant and is the opposite of the jerk of the acceleration phase, and both acceleration and velocity increase slowly. In the uniform speed phase, the velocity remains constant. In the acceleration / deceleration phase, the jerk is the same as the jerk of the acceleration / deceleration phase, and both acceleration and velocity decrease slowly. In the uniform deceleration phase, the jerk is zero, the acceleration remains constant and negative, and the velocity decreases rapidly. In the deceleration phase, the jerk is the same as the jerk of the acceleration / deceleration phase, and the velocity decreases slowly. Compared to the T-shaped velocity curve, the S-shaped velocity curve has less impact on the motor and mechanical structure of the self-moving device and results in smoother operation.
[0038] like Figure 2 The diagram shown is a flowchart of a motion control method provided in an embodiment of this application. The order of steps in this flowchart can be changed, and some steps can be omitted, depending on different requirements. The motion control method provided in this application includes the following steps.
[0039] S201, determine the actual distance of the self-moving device from the starting point to the ending point.
[0040] In at least one embodiment of this application, the starting point can be the current location of the self-moving device, the ending point can be the parking location corresponding to the self-moving device in parking planning, the ending point can also be the location of obstacles during the operation of the self-moving device, or the ending point can be any location point on any path when the self-moving device moves along any path. This application does not specifically limit the ending point. The actual distance can represent the distance that the self-moving device needs to move from the starting point to the ending point.
[0041] In at least one embodiment of this application, during the movement of the self-moving device, the movement is accelerated in a first stage and / or decelerated in a second stage, with different accelerations in each stage.
[0042] S202, based on the initial speed of the self-moving device at the starting point, the preset ending speed, and the preset maximum acceleration, determine the first running distance corresponding to the self-moving device when it is in a state of uniform acceleration.
[0043] In at least one embodiment of this application, the initial speed can represent the speed of the self-moving device at the starting point, and the endpoint speed can be set according to actual needs. For example, if parking planning is performed on the self-moving device, the endpoint speed can be set to 0. The maximum acceleration can be set according to the performance of the self-moving device, and the maximum acceleration can be positively correlated with the performance of the self-moving device. The first running distance can represent the running distance corresponding to the self-moving device completing parking with maximum acceleration.
[0044] In at least one embodiment of this application, the self-moving device determines the first running distance corresponding to the self-moving device in a uniform acceleration state based on the initial speed of the self-moving device at the starting point, the preset ending speed, and the preset maximum acceleration. This includes: the self-moving device determining the first state duration corresponding to the uniform acceleration state based on the initial speed, the ending speed, and the maximum acceleration, and determining the first running distance based on the initial speed, the first state duration, and the maximum acceleration.
[0045] The first state duration can represent the time it takes for the self-moving device to complete the parking process with maximum acceleration, at which point the final speed can be set to 0.
[0046] The formula for determining the duration of the first state can be expressed as: The formula for determining the first running distance can be expressed as: S minT1 represents the first running distance, and T2 represents the duration of the first state. If the initial velocity is greater than the final velocity, then v0 represents the initial velocity, v3 represents the final velocity, and a... max This represents the maximum acceleration, and the maximum acceleration is negative. If the final velocity is greater than the initial velocity, then v0 represents the final velocity, v3 represents the initial velocity, and a... max This represents the maximum acceleration, and the maximum acceleration is a positive number.
[0047] By combining the initial velocity, the final velocity, and the maximum acceleration, this embodiment of the application can determine the time taken for the mobile device to accelerate uniformly at maximum acceleration until it stops. Furthermore, by combining the initial velocity, the duration of the first state, and the maximum acceleration, the minimum running distance corresponding to the mobile device completing the stop at maximum acceleration can be determined.
[0048] S203, based on the initial speed and the final speed, determine the second running distance corresponding to the self-moving device when it completes the preset speed change.
[0049] In at least one embodiment of this application, the second running distance may represent the running distance of the self-moving device when it completes the journey from the initial speed to the final speed. The second running distance is greater than the first running distance.
[0050] In at least one embodiment of this application, the process corresponding to the self-moving device completing a preset speed change may include an acceleration process and a deceleration process. The self-moving device determines a second running distance corresponding to the completion of the preset speed change based on an initial speed and an ending speed, including: the self-moving device determining a second state duration when it is in an acceleration state and a third state duration when it is in a deceleration state based on the initial speed, the ending speed, and a preset acceleration. The self-moving device determines the second running distance based on the initial speed, the ending speed, the second state duration, and the third state duration.
[0051] The preset jerk can be set according to the performance of the self-device, and the preset jerk can be positively correlated with the performance of the self-device. The duration of the second state is usually equal to the duration of the third state.
[0052] The formula for determining the duration of the second or third state can be expressed as: The formula for determining the second running distance can be expressed as: s(T1+T3)=(v0-v3)T1+2v3T1, where s(T1+T3) represents the second running distance, T1 represents the duration of the second state, T3 represents the duration of the third state, and J represents the jerk. If the initial velocity is greater than the final velocity, then v0 represents the initial velocity and v3 represents the final velocity.
[0053] This application embodiment, by combining the initial speed, the final speed, and the jerk, can determine the duration of the second state when the mobile device is in the acceleration state and the duration of the third state when it is in the deceleration state. Furthermore, by combining the initial speed, the final speed, the duration of the second state, and the duration of the third state, it can determine the running distance of the mobile device when it changes from the initial speed to the final speed.
[0054] In another embodiment, the process corresponding to the self-moving device completing the preset speed change may further include an acceleration process, a uniform acceleration process, and a deceleration process. The self-moving device determines the second running distance corresponding to the completion of the preset speed change based on the initial speed and the final speed. This further includes: the self-moving device determining the duration of a fourth state when it is in an acceleration state, the duration of a fifth state when it is in a uniform acceleration state, and the duration of a sixth state when it is in a deceleration state, based on the initial speed, the final speed, the preset jerk, and the maximum acceleration. The self-moving device determines the second running distance based on the initial speed, the final speed, the duration of the fourth state, the duration of the fifth state, and the duration of the sixth state.
[0055] The duration of the fourth state is usually equal to the duration of the sixth state. The formula for determining the duration of the fourth or sixth state can be expressed as: The formula for determining the duration of the fifth state can be expressed as:
[0056] The formula for determining the second running distance can be expressed as: s(T1′+T2′+T3′)=(v0+v3)(T1′+0.5T2′), where s(T1′+T2′+T3′) represents the second running distance, T1′ represents the duration of the fourth state, T3′ represents the duration of the sixth state, T2′ represents the duration of the fifth state, and J represents the jerk. If the initial velocity is greater than the final velocity, then v0 represents the initial velocity, v3 represents the final velocity, and a max This represents the maximum acceleration, and the maximum acceleration is negative. If the final velocity is greater than the initial velocity, then v0 represents the final velocity, v3 represents the initial velocity, and a... max This represents the maximum acceleration, and the maximum acceleration is a positive number.
[0057] This application embodiment, by combining the initial velocity, the final velocity, the maximum acceleration, and the jerk, can determine the duration of the fourth state when the self-moving device is in an acceleration state, the duration of the fifth state when the self-moving device is in a uniform acceleration state, and the duration of the sixth state when the self-moving device is in a deceleration state. Furthermore, by combining the initial velocity, the final velocity, the duration of the fourth state, the duration of the fifth state, and the duration of the sixth state, it can determine the running distance of the self-moving device when it changes from the initial velocity to the final velocity.
[0058] S204, if the first running distance is less than the actual distance, the second running distance is greater than the actual distance, and the initial speed is less than the final speed, then based on the actual distance, the initial speed, and the final speed, plan the duration of the first stage and the acceleration of the first stage so that the moving speed of the self-moving device reaches the final speed after the first stage ends.
[0059] In at least one embodiment of this application, the movement of the self-moving device includes a first stage. The self-moving device plans the duration of the first stage and the acceleration of the first stage based on the actual distance, initial speed, and final speed, including: planning the duration of the acceleration process, the acceleration of the acceleration process, the duration of the deceleration process, and the acceleration of the deceleration process based on the actual distance, initial speed, and final speed.
[0060] The first stage includes an acceleration process and a deceleration process. The duration of the acceleration process is equal to the duration of the deceleration process, and the jerk of the acceleration process and the jerk of the deceleration process are opposites. The formula for determining the duration of either the acceleration or deceleration process can be expressed as: The formula for determining the jerk during acceleration can be expressed as: The formula for determining the jerk during deceleration can be expressed as:
[0061] T1 represents the duration of the acceleration process, T3 represents the duration of the deceleration process, J1 represents the jerk of the acceleration process, J3 represents the jerk of the deceleration process, s represents the actual distance, v0 represents the initial velocity, and v3 represents the final velocity.
[0062] In this embodiment, when the first running distance is less than the actual distance, the second running distance is greater than the actual distance, and the initial speed is less than the final speed, the speed change of the self-moving device from the acceleration process to the deceleration process is planned by combining the actual distance, the initial speed, and the final speed, thereby ensuring the gradual change of the planned speed and improving the smoothness of the speed.
[0063] In at least one embodiment of this application, the self-moving device plans the duration of the first stage and the acceleration of the first stage based on the actual distance, initial speed, final speed and maximum acceleration, so that the moving speed of the self-moving device reaches the final speed after the first stage ends.
[0064] The first stage includes an acceleration process, a uniform acceleration process, and a deceleration process. The duration of the acceleration process is equal to the duration of the deceleration process, the jerk of the uniform acceleration process is 0, and the jerk of the acceleration process is the opposite of the jerk of the deceleration process.
[0065] The formula for determining the duration of a uniformly accelerated process can be expressed as: The formula for determining the duration of an acceleration or deceleration process can be expressed as: The formula for determining the jerk during acceleration can be expressed as: The formula for determining the jerk during deceleration can be expressed as: The jerk during uniform acceleration can be set to 0.
[0066] T1 represents the duration of the acceleration process, T2 represents the duration of the uniform acceleration process, T3 represents the duration of the deceleration process, J1 represents the jerk of the acceleration process, J3 represents the jerk of the deceleration process, s represents the actual distance, v0 represents the initial velocity, v3 represents the final velocity, and a max This indicates the maximum acceleration.
[0067] Combination Figure 3 Explain the speed change of the self-moving device during acceleration, such as Figure 3 As shown, the initial velocity of the self-moving device at the starting point is v0. The self-moving device accelerates during stage T1, accelerates uniformly during stage T2, and decelerates during stage T3. After stage T3, the self-moving device reaches the destination, and its speed reaches the destination velocity v. g Where the initial velocity v0 is less than the final velocity v g .
[0068] In this embodiment, when the first running distance is less than the actual distance, the second running distance is greater than the actual distance, and the initial speed is less than the final speed, the speed change of the self-moving device from the acceleration process, the uniform acceleration process to the deceleration process is planned by combining the actual distance, the initial speed, the final speed and the maximum acceleration, thereby ensuring the gradual change of the planned speed and improving the smoothness of the speed.
[0069] In several embodiments of this application, a first running distance corresponding to the self-moving device in a state of uniform acceleration is determined based on the initial speed, the final speed, and the preset maximum acceleration. A second running distance corresponding to the self-moving device completing a preset speed change is determined based on the initial speed and the final speed. Furthermore, by comparing the relationship between the first running distance and the actual distance, and between the second running distance and the actual distance, the planning of the first and second stages is realized, ensuring that the self-moving device completes its movement from the starting point to the ending point when its moving speed reaches the final speed. In addition, since the planned first stage uses planned accelerators to gradually increase speed, and the planned second stage uses planned accelerators to gradually decrease speed, this embodiment can also improve the smoothness of the planned speed, reduce uneven drive load on the self-moving device, and thus improve the stability of the self-moving device.
[0070] like Figure 4 The diagram shown is a flowchart of a motion control method according to another embodiment of this application. The order of the steps in this flowchart can be changed, and some steps can be omitted, depending on different requirements. The motion control method provided in this embodiment includes the following steps.
[0071] S401, determine the actual distance of the self-moving device from the starting point to the ending point.
[0072] S402, based on the initial speed of the self-moving device at the starting point, the preset ending speed, and the preset maximum acceleration, determine the first running distance corresponding to the self-moving device when it is in a state of uniform acceleration.
[0073] S403, based on the initial speed and the final speed, determine the second running distance corresponding to the self-moving device when it completes the preset speed change.
[0074] For details of steps S401-S403, please refer to the above text. Figure 2 The detailed descriptions of steps S201-S203 are not repeated here.
[0075] S404, compare whether the first running distance is less than the actual distance.
[0076] In at least one embodiment of this application, if the first running distance is greater than or equal to the actual distance, step S405 is executed; if the first running distance is less than the actual distance, step S406 is executed.
[0077] S405, generate a prompt message.
[0078] In at least one embodiment of this application, a prompt message is used to indicate that when the self-moving device reaches its destination speed, the distance traveled by the self-moving device is greater than the actual distance. If the self-moving device then performs parking planning, it will be unable to park safely.
[0079] S406, compare whether the second running distance is greater than the actual distance.
[0080] In at least one embodiment of this application, if the second running distance is less than the actual distance, step S407 is executed; if the second running distance is equal to the actual distance, step S408 is executed; if the second running distance is greater than the actual distance, step S409 is executed.
[0081] S407, based on the initial velocity, the final velocity, and the preset acceleration variable, sequentially plans the duration of the uniform motion process, the duration of the first stage, and the duration of the second stage, so that the moving speed of the self-moving device reaches the final velocity after the second stage.
[0082] In at least one embodiment of this application, the movement of the self-moving device includes a first stage and a second stage.
[0083] In at least one embodiment of this application, the self-moving device calculates the distance difference between the actual distance and the second running distance, and plans the duration of the uniform speed process based on the distance difference and the initial speed. The self-moving device sequentially plans the duration of the first stage and the duration of the second stage based on the second running distance, the initial speed, the final speed, and a preset acceleration variable. The method by which the self-moving device plans the duration of the first stage and the duration of the second stage can be referred to the relevant description of step S408 below.
[0084] S408, based on the initial speed, the final speed and the preset acceleration variable, sequentially plans the duration of the first stage and the duration of the second stage, so that the moving speed of the self-moving device reaches the final speed after the second stage ends.
[0085] In at least one embodiment of this application, the movement of the self-moving device includes a first stage and a second stage.
[0086] In at least one embodiment of this application, the self-moving device sequentially plans the duration of a first stage and the duration of a second stage based on an initial speed, an ending speed, and a preset acceleration variable. This includes: the self-moving device determining a planned jerk based on the actual distance, initial speed, and ending speed; determining a planned speed for the self-moving device at any given time based on the initial speed and the planned jerk; determining a target speed for the self-moving device at any given acceleration time based on the initial speed and the preset jerk of the first stage; determining a target speed for the self-moving device at any given deceleration time based on the ending speed and the preset jerk of the second stage; and finally, the self-moving device planning the duration of the first stage and the duration of the second stage based on the planned speed at any given time, the target speed at any given acceleration time, the target speed at any given deceleration time, the initial speed, the ending speed, and the preset acceleration variable.
[0087] The method for determining the jerk obtained from the planning can refer to the method for determining the jerk in the first stage of step S204 above, and this application will not repeat the description here.
[0088] The formula for determining the planned velocity at any given time can be expressed as: v2 = v0 + Jt 2 Where v2 represents the planned velocity at any time, v0 represents the initial velocity, J represents the planned jerk, and t represents any time.
[0089] The formula for determining the target velocity at any acceleration moment can be expressed as: Where v2′ represents the target velocity at any acceleration moment, v0 represents the initial velocity, J represents the preset jerk of the first stage, and T1 represents any acceleration moment.
[0090] The formula for determining the target velocity at any deceleration moment can be expressed as: Where v″2 represents the target velocity at any deceleration moment, v0 represents the initial velocity, J represents the preset jerk in the second stage, and T3 represents any deceleration moment.
[0091] In this embodiment, when the second running distance equals the actual distance, the planned speed of the mobile device is planned from the first stage to the second stage by combining the planned speed at any moment, the target speed at any acceleration moment, the target speed at any deceleration moment, the initial speed, the final speed, and the preset acceleration variable. This ensures the gradual change of the planned speed and improves the smoothness of the speed.
[0092] In at least one embodiment of this application, the preset acceleration variables include a preset jerk for a first stage and a preset jerk for a second stage. The preset acceleration variables also include a target acceleration for the first stage and a target acceleration for the second stage. The self-moving device plans the duration of the first stage and the duration of the second stage based on the planned speed at any given time, the target speed at any acceleration time, the target speed at any deceleration time, the initial speed, the final speed, and the preset acceleration variables, as described below. Figure 6 Related descriptions.
[0093] S409, compare whether the initial velocity is less than the final velocity.
[0094] In at least one embodiment of this application, if the initial speed is less than the final speed, step S410 is executed; if the initial speed is greater than the final speed, step S411 is executed.
[0095] S410 plans the duration and acceleration of the first stage based on the actual distance, initial speed, and final speed, so that the moving speed of the self-moving device reaches the final speed after the first stage.
[0096] In at least one embodiment of this application, the movement of the self-moving device includes a first phase.
[0097] For details of step S410, please refer to the above text. Figure 2 The detailed description of step S204 is provided in the previous text and will not be repeated here.
[0098] S411, based on the actual distance, initial speed, and final speed, plans the duration of the second stage and the acceleration of the second stage, so that the moving speed of the self-moving device reaches the final speed after the second stage ends.
[0099] In at least one embodiment of this application, the movement of the self-moving device includes a second stage. The self-moving device plans the duration of the acceleration / deceleration process, the acceleration / deceleration rate of the acceleration / deceleration process, the duration of the deceleration process, and the acceleration / deceleration rate of the deceleration process based on the actual distance, initial speed, and final speed.
[0100] In this process, the duration of the acceleration / deceleration process is equal to the duration of the deceleration / deceleration process, and the acceleration / deceleration of the acceleration / deceleration process is an inverse of the acceleration / deceleration / deceleration process. The specific methods for planning the duration, acceleration / deceleration, and acceleration / deceleration of the self-moving device's acceleration / deceleration process can be found in step S204 above, where the self-moving device plans the duration, acceleration / deceleration, and acceleration / deceleration of its acceleration / deceleration processes. This application will not repeat the description of these methods.
[0101] In another embodiment, the self-moving device plans the duration of the second stage and the acceleration of the second stage based on the actual distance, initial speed, final speed and maximum acceleration, so that the moving speed of the self-moving device reaches the final speed after the second stage ends.
[0102] The second stage includes an acceleration / deceleration process, a uniform deceleration process, and a deceleration process. The duration of the acceleration / deceleration process is equal to the duration of the deceleration process. The acceleration during the uniform deceleration process is zero, and the acceleration during the acceleration / deceleration process is an inverse of the acceleration during the deceleration process. The specific method by which the self-moving device plans the duration and acceleration of the second stage based on the actual distance, initial velocity, final velocity, and maximum acceleration can be referred to in step S204 above, where the self-moving device plans the duration and acceleration of the first stage based on the actual distance, initial velocity, final velocity, and maximum acceleration. This application will not repeat the description therein.
[0103] Combination Figure 5 Explain the changes in travel distance and speed of the self-moving device in the second stage, such as Figure 5 As shown, the initial velocity of the self-moving device at the starting point is v0. The self-moving device undergoes acceleration and deceleration in stage T1, uniform deceleration in stage T2, and acceleration and deceleration in stage T3. After stage T3, the self-moving device reaches the destination and its moving speed reaches the destination speed v3. At this time, the moving distance of the self-moving device reaches s, where the initial velocity v0 is greater than the destination speed v3.
[0104] In several embodiments of this application, a first running distance corresponding to the self-moving device in a state of uniform acceleration is determined based on the initial speed, the final speed, and a preset maximum acceleration. A second running distance corresponding to the self-moving device completing a preset speed change is determined based on the initial speed and the final speed. Furthermore, by comparing the relationships between the first running distance and the actual distance, the second running distance and the actual distance, and the initial speed and the final speed, the speed change process is planned, ensuring that the self-moving device completes its movement from the starting point to the ending point when its moving speed reaches the final speed. In addition, since the planned speed change process is based on a gradual change from the initial speed, this embodiment can also improve the smoothness of the planned speed, reduce uneven drive load on the self-moving device, and thus improve the stability of the self-moving device.
[0105] like Figure 6 The diagram shown is a flowchart of a motion control method according to another embodiment of this application. The order of the steps in this flowchart can be changed, and some steps can be omitted, depending on different requirements. The motion control method provided in this embodiment includes the following steps.
[0106] To improve the parking efficiency of automated parking systems, they typically need to use gear shifting to complete the parking process. However, if multiple obstacles are encountered during the parking process, the automated parking system may be unable to complete the parking. (Combined with...) Figure 7 , Figure 8 Explain the speed change process of the self-moving device. Figure 7 Curve 1 in the image represents the self-moving device coming to a stop during deceleration. For example... Figure 8 Curve 1 in the figure represents the self-moving device stopping during deceleration. However, this method may result in the self-moving device not reaching the destination speed when it reaches the destination speed, thus preventing the self-moving device from stopping.
[0107] Figure 7 Curve 3 in the image represents the stopping of the self-moving device during acceleration and deceleration. For example... Figure 8 Curve 1 in the figure represents the self-moving device stopping during the deceleration process and the constant speed process. However, in this way, when the self-moving device reaches the destination, the moving speed of the self-moving device has not yet decreased to the destination speed, which also causes the self-moving device to fail to stop.
[0108] Therefore, embodiments of this application provide, as follows: Figure 6 The illustrated motion control method achieves rational speed planning for a self-moving device by comparing speeds and distances (e.g., ...). Figure 7 Curve 2 in the diagram stops during both acceleration and deceleration. Figure 7 The acceleration of curve 2 is less than Figure 7 (Acceleration of curve 3) to ensure that the self-moving device can park successfully and improve the parking efficiency of the self-moving device.
[0109] In at least one embodiment of this application, the movement of the self-moving device includes a first stage and a second stage.
[0110] S601 detects whether the planned speed at any given moment is less than or equal to the target speed at any given acceleration moment.
[0111] In at least one embodiment of this application, when the planned speed at any time is less than or equal to the target speed at any acceleration time, step S602 is executed; when the planned speed at any time is greater than the target speed at any acceleration time, step S603 is executed.
[0112] S602, if the planned speed at any moment is less than or equal to the target speed at any deceleration moment, based on the actual distance, initial speed, final speed, preset acceleration in the first stage and preset acceleration in the second stage, plan the duration of the acceleration process, the duration of the deceleration process, the duration of the acceleration and deceleration process, and the duration of the deceleration process. The first stage includes the acceleration process and the deceleration process, and the second stage includes the acceleration and deceleration process and the deceleration process.
[0113] In at least one embodiment of this application, the self-moving device determines the target speed at any given time based on the following formula, according to the actual distance, initial speed, final speed, preset jerk in the first stage, and preset jerk in the second stage: Where v2 represents the target velocity at any given time, s represents the actual distance, v0 represents the initial velocity, v3 represents the final velocity, and J represents the preset jerk for the first stage or the preset jerk for the second stage.
[0114] The self-moving device determines the duration of the acceleration or deceleration process based on the target speed, initial speed, and preset jerk of the first stage at any given time, using the following formula: Wherein, the duration of the acceleration process is equal to the duration of the deceleration process, T1 represents the duration of the acceleration process or the duration of the deceleration process, v2 represents the target velocity at any moment, v0 represents the initial velocity, and J represents the preset jerk of the acceleration process.
[0115] The self-moving device determines the duration of the acceleration / deceleration process or the duration of the deceleration / deceleration process based on the target speed, the final speed, and the preset jerk in the second stage at any given time, using the following formula: Wherein, the duration of the acceleration / deceleration process is equal to the duration of the deceleration / deceleration process, T3 represents the duration of the acceleration / deceleration process or the duration of the deceleration / deceleration process, v3 represents the final velocity, v2 represents the target velocity at any time, and J represents the preset jerk of the deceleration process.
[0116] S603: If the target speed at any acceleration moment is greater than the initial speed, detect whether the target speed at any deceleration moment is less than the initial speed.
[0117] In at least one embodiment of this application, when the target speed at any deceleration moment is less than the initial speed, step S604 is executed; when the target speed at any deceleration moment is greater than the initial speed, step S608 is executed.
[0118] S604, based on the initial speed and the preset jerk of the first stage, determine the third running distance corresponding to when the self-moving device reaches the target acceleration of the first stage, and based on the final speed and the preset jerk of the second stage, determine the fourth running distance corresponding to when the self-moving device reaches the target acceleration of the second stage.
[0119] In at least one embodiment of this application, the third running distance is determined based on the initial velocity and the preset jerk of the first stage, according to the following formula:
[0120]
[0121] a acc =JT1.
[0122] Where s(2T1) represents the third running distance, v0 represents the initial velocity, and a acc J represents the target acceleration for the first stage, and J represents the preset jerk for the first stage.
[0123] In at least one embodiment of this application, the fourth running distance is determined based on the final velocity and the preset jerk of the second stage, according to the following formula:
[0124] s"′=(T3+0.5T4)(v′2+v3),
[0125]
[0126] Where s″′ represents the fourth running distance, a dec v2′ represents the target acceleration of the second stage, J represents the preset acceleration of the second stage, v3 represents the target velocity at any acceleration moment, and v3 represents the final velocity.
[0127] S605, detect whether the sum of the third and fourth running distances is less than the actual distance.
[0128] In at least one embodiment of this application, if the sum of the third running distance and the fourth running distance is less than the actual distance, step S606 is executed; if the sum of the third running distance and the fourth running distance is greater than or equal to the actual distance, step S607 is executed.
[0129] S606, based on the actual distance, initial velocity, final velocity, target acceleration of the first stage, target acceleration of the second stage, preset jerk of the first stage, and preset jerk of the second stage, plans the duration of the acceleration process, the duration of the uniform acceleration process, the duration of the deceleration process, the duration of the acceleration and deceleration process, the duration of the uniform deceleration process, and the duration of the deceleration process. The first stage includes the acceleration process, the uniform acceleration process, and the deceleration process, and the second stage includes the acceleration and deceleration process, the uniform deceleration process, and the deceleration process.
[0130] In at least one embodiment of this application, the target velocity at any given time is determined based on the following formula:
[0131]
[0132] b = T1 + T4
[0133]
[0134] Where v2 represents the target velocity at any given time, a acc a represents the target acceleration in the first stage. dec v0 represents the target acceleration for the second stage, v3 represents the initial velocity, s represents the preset jerk for the first stage or the preset jerk for the second stage, v3 represents the final velocity, and s represents the actual distance.
[0135] The self-moving device plans the duration of acceleration, uniform acceleration, deceleration, acceleration / deceleration, uniform deceleration, and deceleration / deceleration processes based on the following formulas:
[0136]
[0137]
[0138] Where T1 represents the duration of the acceleration or deceleration process, T2 represents the duration of the uniform acceleration process, T3 represents the duration of the acceleration or deceleration process, T4 represents the duration of the uniform deceleration process, v2 represents the target velocity at any given time, and a acc The target acceleration during the acceleration process is represented by v0, and the initial velocity is represented by a. dec represents the target acceleration during deceleration, J represents the preset jerk during acceleration or deceleration, and v3 represents the final velocity.
[0139] S607, if the sum of the third running distance and the fourth running distance is greater than or equal to the actual distance, based on the actual distance, initial speed, final speed, target acceleration of the second stage, preset jerk of the first stage and preset jerk of the second stage, plan the duration of the acceleration process, the duration of the deceleration process, the duration of the acceleration and deceleration process, the duration of the uniform deceleration process and the duration of the deceleration process. The first stage includes the acceleration process and the deceleration process, and the second stage includes the acceleration and deceleration process, the uniform deceleration process and the deceleration process.
[0140] In at least one embodiment of this application, the target velocity at any given time is determined based on the following formula:
[0141]
[0142] Where v2 represents the target velocity at any given time, s represents the actual distance, v0 represents the initial velocity, v3 represents the final velocity, and a decJ represents the target acceleration for the second stage, and J represents the preset jerk for the first stage or the preset jerk for the second stage.
[0143] The self-moving device determines the duration of the acceleration or deceleration process based on the target speed, initial speed, and preset jerk of the first stage at any given time, using the following formula: Wherein, the duration of the acceleration process is equal to the duration of the deceleration process, T1 represents the duration of the acceleration process or the duration of the deceleration process, v2 represents the target velocity at any moment, v0 represents the initial velocity, and J represents the preset jerk of the acceleration process.
[0144] The self-moving device plans the duration of acceleration / deceleration, uniform deceleration, and slow-down processes based on the following formulas:
[0145]
[0146] Where T3 represents the duration of the acceleration / deceleration process or the duration of the deceleration / deceleration process, T4 represents the duration of the uniform deceleration process, v2 represents the target velocity at any given moment, and a dec The target acceleration during the deceleration process is represented by J, or the preset acceleration during the deceleration process, and v3 represents the final velocity.
[0147] S608: If the planned speed at any time is greater than the target speed at any deceleration time, check whether the target speed at any acceleration time is less than the target speed at any deceleration time.
[0148] In at least one embodiment of this application, if the target speed at any acceleration moment is equal to the target speed at any deceleration moment, step S609 is executed; if the target speed at any acceleration moment is less than the target speed at any deceleration moment, step S613 is executed.
[0149] S609, based on the initial speed and the preset jerk of the second stage, determines the fifth running distance corresponding to when the self-moving device reaches the target acceleration of the second stage.
[0150] In at least one embodiment of this application, the fifth running distance is determined based on the initial velocity and the preset jerk of the second stage, according to the following formula: a dec =JT3, where s(2T3) represents the fifth running distance, v3 represents the destination distance, and a dec J represents the target acceleration for the second stage, and J represents the preset jerk for the second stage.
[0151] S610, detects whether the sum of the third and fifth running distances is less than the actual distance.
[0152] In at least one embodiment of this application, if the sum of the third running distance and the fifth running distance is less than the actual distance, step S611 is executed; if the sum of the third running distance and the fifth running distance is greater than or equal to the actual distance, step S612 is executed.
[0153] S611, based on the actual distance, initial velocity, final velocity, target acceleration of the first stage, target acceleration of the second stage, preset jerk of the first stage, and preset jerk of the second stage, plans the duration of the acceleration process, the duration of the uniform acceleration process, the duration of the deceleration process, the duration of the acceleration and deceleration process, the duration of the uniform deceleration process, and the duration of the deceleration and deceleration process. The first stage includes the acceleration process, the uniform acceleration process, and the deceleration process, and the second stage includes the acceleration and deceleration process, the uniform deceleration process, and the deceleration and deceleration process.
[0154] In at least one embodiment of this application, the method by which the self-moving device plans the duration of the acceleration process, the duration of the uniform acceleration process, the duration of the deceleration process, the duration of the acceleration and deceleration process, the duration of the uniform deceleration process, and the duration of the deceleration and deceleration process can refer to the planning method of step S606 above, and this application will not repeat the description.
[0155] S612, based on the actual distance, initial speed, final speed, target acceleration of the second stage, preset jerk of the first stage and preset jerk of the second stage, plans the duration of the acceleration process, the duration of the deceleration process, the duration of the acceleration and deceleration process, the duration of the uniform deceleration process and the duration of the deceleration process. The first stage includes the acceleration process and the deceleration process, and the second stage includes the acceleration and deceleration process, the uniform deceleration process and the deceleration process.
[0156] In at least one embodiment of this application, the duration of the acceleration process, deceleration process, acceleration / deceleration process, uniform deceleration process, and deceleration / deceleration process planned by the self-moving device can refer to the planning method of step S607 above, and this application will not repeat the description.
[0157] S613, based on the initial velocity and the preset jerk of the first stage, determines the sixth running distance corresponding to when the self-moving device reaches the target acceleration of the first stage.
[0158] In at least one embodiment of this application, the sixth running distance is calculated based on the initial velocity and the preset jerk of the first stage using the following formula:
[0159] s6 = (T1 + 0.5T2)(v"2 + v0),
[0160]
[0161] Where s6 represents the sixth running distance, v″2 represents the target velocity at any deceleration moment, v0 represents the initial velocity, and a acc J represents the target acceleration for the first stage, and J represents the preset jerk for the first stage.
[0162] S614, detect whether the sum of the fifth running distance and the sixth running distance is less than the actual distance.
[0163] In at least one embodiment of this application, if the sum of the fifth running distance and the sixth running distance is less than the actual distance, step S615 is executed; if the sum of the fifth running distance and the sixth running distance is equal to the actual distance, step S616 is executed; if the sum of the fifth running distance and the sixth running distance is greater than the actual distance, step S617 is executed.
[0164] S615, based on the actual distance, initial speed, final speed, target acceleration of the first stage, target acceleration of the second stage, preset jerk of the first stage and preset jerk of the second stage, plans the duration of the acceleration process, the duration of the uniform acceleration process, the duration of the deceleration process, the duration of the acceleration and deceleration process, the duration of the uniform deceleration process and the duration of the deceleration process. The first stage includes the acceleration process, the uniform acceleration process and the deceleration process, and the second stage includes the acceleration and deceleration process, the uniform deceleration process and the deceleration process.
[0165] In at least one embodiment of this application, the method by which the self-moving device plans the duration of the acceleration process, the duration of the uniform acceleration process, the duration of the deceleration process, the duration of the acceleration and deceleration process, the duration of the uniform deceleration process, and the duration of the deceleration and deceleration process can refer to the planning method of step S606 above, and this application will not repeat the description.
[0166] S616, based on the actual distance, initial speed, final speed, target acceleration of the second stage, preset jerk of the first stage and preset jerk of the second stage, plans the duration of the acceleration process, the duration of the uniform acceleration process, the duration of the deceleration process, the duration of the acceleration and deceleration process and the duration of the deceleration process. The first stage includes the acceleration process, the uniform acceleration process and the deceleration process, and the second stage includes the acceleration and deceleration process and the deceleration process.
[0167] In at least one embodiment of this application, the target velocity at any given time is determined based on the following formula:
[0168]
[0169] Where v2 represents the target velocity at any given time, v3 represents the destination velocity, and a accv0 represents the target acceleration for the first stage, v0 represents the initial velocity, J represents the preset jerk for the first stage or the preset jerk for the second stage, and s represents the actual distance.
[0170] The self-moving device plans the duration of the acceleration process, the duration of the uniform acceleration process, and the duration of the deceleration process based on the following formulas:
[0171]
[0172] Where T1 represents the duration of the acceleration or deceleration process, T2 represents the duration of the uniform acceleration process, v2 represents the target velocity at any given moment, and a acc The target acceleration of the acceleration process is represented by v0, the initial velocity is represented by v0, and the preset jerk of the acceleration process is represented by J.
[0173] The self-moving device plans the duration of acceleration / deceleration and the duration of deceleration based on the following formulas: Wherein, the duration of the acceleration / deceleration process is equal to the duration of the deceleration / deceleration process, T3 represents the duration of the acceleration / deceleration process or the duration of the deceleration / deceleration process, v3 represents the final velocity, v2 represents the target velocity at any time, and J represents the preset jerk of the deceleration process.
[0174] S617, detect whether the sum of the third and fifth running distances is less than the actual distance.
[0175] In at least one embodiment of this application, if the sum of the third running distance and the fifth running distance is less than the actual distance, step S618 is executed; if the sum of the third running distance and the fifth running distance is greater than or equal to the actual distance, step S619 is executed.
[0176] S618 plans the duration of the acceleration process, the uniform acceleration process, the deceleration process, the acceleration-deceleration process, and the deceleration-deceleration process. The first stage includes the acceleration process, the uniform acceleration process, and the deceleration process, and the second stage includes the acceleration-deceleration process and the deceleration-deceleration process.
[0177] In at least one embodiment of this application, the method by which the self-moving device plans the duration of the acceleration process, the duration of the uniform acceleration process, the duration of the deceleration process, the duration of the acceleration and deceleration process, and the duration of the deceleration and deceleration process refers to the planning method in S616 above, and this application will not repeat the description.
[0178] S619 plans the duration of acceleration, deceleration, acceleration / deceleration, and deceleration / deceleration processes based on the actual distance, initial speed, final speed, preset jerk in the first stage, and preset jerk in the second stage. The first stage includes acceleration and deceleration processes, and the second stage includes acceleration and deceleration processes.
[0179] In at least one embodiment of this application, the method by which the self-moving device plans the duration of the acceleration process, the duration of the deceleration process, the duration of the acceleration and deceleration process, and the duration of the deceleration process refers to the planning method in S602 above, and this application will not repeat the description.
[0180] In several embodiments of this application, a first running distance corresponding to the self-moving device in a state of uniform acceleration is determined based on the initial speed, the final speed, and a preset maximum acceleration. A second running distance corresponding to the self-moving device completing a preset speed change is determined based on the initial speed and the final speed. Then, when the second running distance equals the actual distance, reasonable speed planning is achieved through comparisons between speeds and between distances, ensuring that the self-moving device completes its movement from the starting point to the ending point when its moving speed reaches the final speed. Furthermore, since the planned speed change process is based on a gradual change from the initial speed, this embodiment can also improve the smoothness of the planned speed, reduce uneven drive load on the self-moving device, and thus improve the stability of the self-moving device.
[0181] like Figure 9 The diagram shown is a functional block diagram of a mobile control device provided in an embodiment of this application. The mobile control device 11 includes a mobile unit 110, a determining unit 111, a planning unit 112, and a generating unit 113. The module / unit referred to in this application refers to a series of computer-readable instruction segments that can be acquired by the processor 13 and perform a fixed function, and which are stored in the memory 12.
[0182] In one embodiment, the moving unit 110 is configured to accelerate in a first stage and / or decelerate in a second stage during the movement of the self-moving device, with different accelerations in each stage.
[0183] In one embodiment, the movement of the self-moving device includes a first stage, a determining unit 111 for determining the actual distance of the self-moving device from the starting point to the ending point; the determining unit 111 is further used to determine a first running distance corresponding to the self-moving device in a uniform acceleration state based on the initial speed of the self-moving device at the starting point, a preset ending speed, and a preset maximum acceleration; the determining unit 111 is further used to determine a second running distance corresponding to the self-moving device when it completes a preset speed change based on the initial speed and the ending speed; and a planning unit 112 for planning the duration of the first stage and the acceleration of the first stage based on the actual distance, the initial speed, and the ending speed if the first running distance is less than the actual distance, the second running distance is greater than the actual distance, and the initial speed is less than the ending speed, so that the moving speed of the self-moving device reaches the ending speed after the first stage; or the planning unit 112 is used to plan the duration of the first stage and the acceleration of the first stage based on the actual distance, the initial speed, the ending speed, and the maximum acceleration, so that the moving speed of the self-moving device reaches the ending speed after the first stage.
[0184] In one embodiment, the planning unit 111 is further configured to: if the first running distance is less than the actual distance, the second running distance is greater than the actual distance, and the initial speed is greater than the final speed, the movement process of the self-moving device includes a second stage; and plan the duration of the second stage and the acceleration of the second stage based on the actual distance, the initial speed, and the final speed, so that the movement speed of the self-moving device reaches the final speed after the second stage ends; the planning unit 111 is further configured to: if the second running distance is less than the actual distance, and the movement process of the self-moving device includes a first stage and a second stage based on the initial speed, the final speed, and a preset acceleration variable, sequentially plan the duration of the uniform speed process, the duration of the first stage, and the acceleration of the second stage. The duration of each stage is determined so that the moving speed of the self-moving device reaches the endpoint speed after the second stage ends. The planning unit 111 is also used to plan the duration of the first stage and the duration of the second stage in sequence according to the initial speed, the endpoint speed and the preset acceleration variable, if the second running distance is equal to the actual distance, the movement of the self-moving device includes the first stage and the second stage, so that the moving speed of the self-moving device reaches the endpoint speed after the second stage ends. The generation unit 113 is used to generate a prompt message if the first running distance is greater than or equal to the actual distance, the prompt message being used to indicate that the moving distance of the self-moving device is greater than the actual distance when the moving speed of the self-moving device reaches the endpoint speed.
[0185] In one embodiment, the determining unit 111 is specifically used to: determine the duration of a first state corresponding to the uniform acceleration state based on the initial velocity, the final velocity, and the maximum acceleration; and determine the first running distance based on the initial velocity, the duration of the first state, and the maximum acceleration.
[0186] In one embodiment, the determining unit 111 is specifically configured to: determine the duration of a second state when the self-moving device is in an acceleration state and the duration of a third state when the self-moving device is in a deceleration state based on the initial speed, the final speed, and a preset jerk; and determine a second running distance based on the initial speed, the final speed, the duration of the second state, and the duration of the third state; or determine the duration of a fourth state when the self-moving device is in an acceleration state, the duration of a fifth state when the self-moving device is in a uniform acceleration state, and the duration of a sixth state when the self-moving device is in a deceleration state based on the initial speed, the final speed, the preset jerk, and the maximum acceleration; and determine a second running distance based on the initial speed, the final speed, the duration of the fourth state, the duration of the fifth state, and the duration of the sixth state.
[0187] In one embodiment, the preset acceleration variables include a preset jerk for a first stage and a preset jerk for a second stage. The planning unit 112 is specifically used to: determine the planned jerk based on the actual distance, initial speed, and final speed; determine the planned speed of the self-moving device at any given time based on the initial speed and the planned jerk; determine the target speed of the self-moving device at any acceleration time based on the initial speed and the preset jerk for the first stage; determine the target speed of the self-moving device at any deceleration time based on the final speed and the preset jerk for the second stage; when the planned speed at any time is less than or equal to the target speed at any acceleration time, and when the planned speed at any time is less than or equal to the target speed at any deceleration time, plan the duration of the acceleration / deceleration process, the duration of the acceleration / deceleration process, and the duration of the deceleration / deceleration process based on the actual distance, initial speed, final speed, the preset jerk for the first stage, and the preset jerk for the second stage. The first stage includes the acceleration / deceleration process and the second stage includes the acceleration / deceleration process and the deceleration / deceleration process.
[0188] In one embodiment, the preset acceleration variables further include a target acceleration for the first stage and a target acceleration for the second stage. The planning unit 112 is specifically used to: determine the third running distance corresponding to the self-moving device reaching the target acceleration for the first stage based on the initial speed and the preset jerk for the first stage when the planned speed at any time is greater than the target speed at any acceleration time, the target speed at any acceleration time is greater than the initial speed, and the target speed at any deceleration time is less than the initial speed; and determine the fourth running distance corresponding to the self-moving device reaching the target acceleration for the second stage based on the endpoint speed and the preset jerk for the second stage. If the sum of the third running distance and the fourth running distance is less than the actual distance, the plan unit 112 is used to determine the third running distance corresponding to the self-moving device reaching the target acceleration for the second stage based on the actual distance, the initial speed, the endpoint speed, the target acceleration for the first stage, the target acceleration for the second stage, and the preset jerk for the first stage. The second stage includes a preset jerk, and the durations of the acceleration, uniform acceleration, deceleration, acceleration / deceleration, uniform deceleration, and deceleration processes are planned. The first stage includes acceleration, uniform acceleration, and deceleration processes, and the second stage includes acceleration / deceleration, uniform deceleration, and deceleration processes. If the sum of the third and fourth running distances is greater than or equal to the actual distance, the durations of the acceleration, deceleration, acceleration / deceleration, uniform deceleration, and deceleration processes are planned based on the actual distance, initial velocity, final velocity, target acceleration of the second stage, preset jerk of the first stage, and preset jerk of the second stage. The first stage includes acceleration and deceleration processes, and the second stage includes acceleration / deceleration, uniform deceleration, and deceleration processes.
[0189] In one embodiment, the planning unit 112 is specifically configured to: when the planned speed at any moment is greater than the target speed at any acceleration moment, the target speed at any acceleration moment is greater than the initial speed, the planned speed at any moment is greater than the target speed at any deceleration moment, and the target speed at any deceleration moment is greater than the initial speed; if the target speed at any acceleration moment is equal to the target speed at any deceleration moment, determine the fifth running distance corresponding to when the self-moving device reaches the target acceleration of the second stage based on the initial speed and the preset jerk of the second stage; if the sum of the third running distance and the fifth running distance is less than the actual distance, plan the acceleration based on the actual distance, the initial speed, the final speed, the target acceleration of the first stage, the target acceleration of the second stage, the preset jerk of the first stage, and the preset jerk of the second stage. The duration of the acceleration process, the duration of the uniform acceleration process, the duration of the deceleration process, the duration of the acceleration / deceleration process, the duration of the uniform deceleration process, and the duration of the deceleration process are calculated. The first stage includes the acceleration, uniform acceleration, and deceleration processes, and the second stage includes the acceleration / deceleration, uniform deceleration, and deceleration processes. If the sum of the third and fifth running distances is greater than or equal to the actual distance, the duration of the acceleration, deceleration, acceleration / deceleration, uniform deceleration, and deceleration processes are planned based on the actual distance, initial velocity, final velocity, target acceleration of the second stage, preset jerk of the first stage, and preset jerk of the second stage. The duration of the acceleration, deceleration, acceleration / deceleration, uniform deceleration, and deceleration processes are calculated. The first stage includes the acceleration and deceleration processes, and the second stage includes the acceleration / deceleration, uniform deceleration, and deceleration processes.
[0190] In one embodiment, the planning unit 112 is specifically configured to: when the target speed at any acceleration moment is less than the target speed at any deceleration moment, determine the sixth running distance corresponding to when the self-moving device reaches the target acceleration of the first stage based on the initial speed and the preset jerk of the first stage; if the sum of the fifth running distance and the sixth running distance is less than the actual distance, plan the duration of the acceleration process, the duration of the uniform acceleration process, the duration of the deceleration process, the duration of the acceleration and deceleration process, the duration of the uniform deceleration process, and the duration of the deceleration process based on the actual distance, the initial speed, the final speed, the target acceleration of the first stage, the target acceleration of the second stage, the preset jerk of the first stage, and the preset jerk of the second stage; the first stage includes the acceleration process, the uniform acceleration process, and the deceleration process, and the second stage includes the acceleration and deceleration process, the uniform deceleration process, and the deceleration and deceleration process; if the sum of the fifth running distance and the sixth running distance is equal to the actual distance, plan the duration of the acceleration process, the duration of the uniform acceleration process, and the duration of the deceleration process based on the actual distance, the initial speed, the final speed, the target acceleration of the second stage, the preset jerk of the first stage, and the preset jerk of the second stage. The duration of the acceleration, deceleration, acceleration / deceleration, and deceleration processes are planned. The first stage includes acceleration, uniform acceleration, and deceleration processes, and the second stage includes acceleration / deceleration and deceleration processes. If the sum of the fifth and sixth running distances is greater than the actual distance, and the sum of the third and fifth running distances is less than the actual distance, the duration of the acceleration, uniform acceleration, acceleration / deceleration, and deceleration processes is planned. The first stage includes acceleration, uniform acceleration, and deceleration processes. The acceleration process, the second stage includes acceleration and deceleration processes; if the sum of the fifth and sixth running distances is greater than the actual distance, and the sum of the third and fifth running distances is greater than or equal to the actual distance, based on the actual distance, initial speed, final speed, the preset acceleration of the first stage and the preset acceleration of the second stage, the duration of the acceleration process, the duration of the deceleration process, the duration of the acceleration and deceleration process and the duration of the deceleration process are planned. The first stage includes acceleration and deceleration processes, and the second stage includes acceleration and deceleration processes.
[0191] In several embodiments of this application, a first running distance corresponding to the self-moving device in a state of uniform acceleration is determined based on the initial speed, the final speed, and a preset maximum acceleration. A second running distance corresponding to the self-moving device completing a preset speed change is determined based on the initial speed and the final speed. Then, by comparing the relationship between the first running distance and the actual distance, and the second running distance and the actual distance, the planning of the first and second stages is realized, ensuring that the self-moving device completes its movement from the starting point to the ending point when its moving speed reaches the final speed. Furthermore, since the planned first stage uses a planned jerk to gradually increase the speed, and the planned second stage uses a planned jerk to gradually decrease the speed, this embodiment can also improve the smoothness of the planned speed, reduce uneven drive load on the self-moving device, and thus improve the stability of the self-moving device.
[0192] like Figure 10 The diagram shown is another structural schematic of a self-moving device that implements the motion control method according to an embodiment of this application.
[0193] In this embodiment, the self-moving device 100 includes, but is not limited to, a memory 12, a processor 13, and computer-readable instructions, such as a motion control program, stored in the memory 12 and executable on the processor 13. The self-moving device 100 also includes a sensor 14, a working mechanism 15, a power supply 16, a positioning module 17, a drive wheel 18, and a bus 19. The processor 13 is coupled to the memory 12, sensor 14, working mechanism 15, power supply 16, positioning module 17, and drive wheel 18 via the bus 19.
[0194] Those skilled in the art will understand that the schematic diagram is merely an example of the self-moving device 100 and does not constitute a limitation on the self-moving device 100. It may include more or fewer components than shown, or combine certain components, or different components. For example, the self-moving device 100 may also include input / output devices, network access devices, etc.
[0195] Processor 13 can be a Central Processing Unit (CPU), or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The general-purpose processor can be a microprocessor, a processor, or any conventional processor. Processor 13 is the computing core and control center of the self-moving device 100, connecting various parts of the self-moving device 100 through various interfaces and lines, and executing the operating system of the self-moving device 100, as well as various installed applications and program code.
[0196] Memory 12 may include one or more random access memory (RAM) and one or more non-volatile memory (NVM). The RAM can be directly read and written by the processor 13, and can be used to store executable programs (e.g., machine instructions) of the operating system or other running programs, as well as user and application data. The RAM may include static random-access memory (SRAM), dynamic random-access memory (DRAM), synchronous dynamic random-access memory (SDRAM), double data rate synchronous dynamic random-access memory (DDR SDRAM), etc.
[0197] Non-volatile memory can also store executable programs and user and application data, and can be pre-loaded into random access memory for direct reading and writing by the processor 13. Non-volatile memory can include disk storage devices and flash memory.
[0198] In other embodiments, memory 12 may be external memory and / or internal memory of the self-moving device 100. Further, memory 12 may be a physical memory, such as a memory module, a TF card (Trans-flash Card), etc.
[0199] Combination Figure 2 , Figure 4 , Figure 6 The memory 12 stores computer-readable instructions, and the processor 13 can execute the computer-readable instructions stored in the memory 12 to achieve, for example, Figure 2 , Figure 4 , Figure 6 The multiple processes shown are used to implement the motion control method.
[0200] Processor 13 may include one or more processing units, such as: application processor (AP), modem processor, graphics processing unit (GPU), image signal processor (ISP), controller, video codec, digital signal processor (DSP), baseband processor, and / or neural network processing unit (NPU), etc. Different processing units may be independent devices or integrated into one or more processors.
[0201] Processor 13 provides computing and control capabilities; for example, processor 13 is used to execute computer-readable instructions stored in memory 12 to achieve the above. Figure 2 , Figure 4 , Figure 6 The descriptions of the relevant steps in the corresponding embodiments are not repeated here.
[0202] In one embodiment of this application, sensor 14 may include one or more of the following types of sensors: lidar, camera device, infrared sensor, encoder, etc.
[0203] The working mechanism 15 is used to perform corresponding work tasks, such as mowing, de-icing, patrolling, sweeping, and spraying pesticides. In some embodiments of this application, the working mechanism 15 may include a motor, a transmission mechanism, and a blade disc. When the self-moving device is a lawnmower, the motor can drive the blade disc to rotate through the transmission mechanism to achieve the mowing function. The motor can also control the movement of the blades to adjust the mowing height and the mowing area.
[0204] Power source 16 is used to power the self-moving device. In one embodiment of this application, power source 13 may include any one or more power supply devices such as batteries, fuel generators, solar power modules, and wind power modules.
[0205] The positioning module 17 is used to determine the location of the self-moving device. In some embodiments of this application, the positioning module 17 may include one or more of the following types of positioning modules: Global Positioning System (GPS), inertial navigation system, real-time kinematic (RTK) carrier phase differential system, etc.
[0206] The drive wheel 18 is used to enable movement of the self-moving device. In some embodiments of this application, the drive wheel 18 can realize the movement function of the self-moving device according to the control of the processor 13. In some embodiments of this application, the drive wheel 18 may include a left drive wheel and a right drive wheel.
[0207] Bus 19 is used at least to provide a channel for communication between the memory 12, processor 13, sensor 14, working mechanism 15, power supply 16, positioning module 17, and drive wheel 18 in the self-moving device 100.
[0208] In other embodiments of this application, the self-moving device 100 may further include a collision avoidance component and a steering assembly. The collision avoidance component can be used to prevent the drive wheels 18 from colliding with obstacles in front of the self-moving device. The steering assembly can be used to adjust the driving direction of the drive wheels 18.
[0209] It is understood that the structures illustrated in the embodiments of this application do not constitute a specific limitation on the self-moving device 100. For example, the self-moving device 100 may also include a communication module. In other embodiments of this application, the self-moving device 100 may include more or fewer components than illustrated, or combine some components, or split some components, or have different component arrangements. The illustrated components may be implemented in hardware, software, or a combination of software and hardware.
[0210] If the modules / units integrated into the self-mobile device 100 are implemented as software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, all or part of the processes in the methods of the above embodiments of this application can also be implemented by instructing related hardware through computer-readable instructions. The computer-readable instructions can be stored in a computer-readable storage medium, and when executed by a processor, the computer-readable instructions can implement the steps of the various method embodiments described above.
[0211] Computer-readable instructions include computer-readable instruction code, which can be in the form of source code, object code, executable files, or certain intermediate forms. Computer-readable media can include: any entity or device capable of carrying computer-readable instruction code, recording media, USB flash drives, portable hard drives, magnetic disks, optical disks, computer memory, read-only memory (ROM), and random access memory (RAM).
[0212] like Figure 11 The diagram shown is a schematic representation of the overall structure of a lawn mowing device that implements a motion control method according to an embodiment of this application.
[0213] In this application embodiment, the motion control method can be applied to a lawn mowing device, which can be an automatic lawn mowing robot or a semi-automatic lawn mowing robot. This application does not limit the specific type of lawn mowing device.
[0214] In this embodiment, the lawn mowing device 200 includes a housing 21 and a walking module 22 for supporting the movement of the housing 21 (e.g., Figure 9 The system includes a drive wheel 18, a cutting module (not shown) located at the bottom of the housing 21, a control module (not shown) located inside the housing 21 for controlling the automatic operation of the walking module 22 and the automatic operation of the cutting module, and an energy module (not shown) for powering the intelligent lawnmower 200. The lawnmower 200 also includes a lidar 23 for detecting obstacles and the external environment.
[0215] In the several embodiments provided in this application, it should be understood that the disclosed systems, apparatuses, and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of modules is only a logical functional division, and other division methods may be used in actual implementation.
[0216] The modules described as separate components may or may not be physically separate. The components shown as modules may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of this embodiment according to actual needs.
[0217] Furthermore, the functional modules in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or in the form of hardware plus software functional modules.
[0218] Therefore, the embodiments should be considered exemplary and non-limiting in all respects, and the scope of this application is defined by the appended claims rather than the foregoing description. Thus, all variations falling within the meaning and scope of equivalents of the claims are intended to be embraced within this application. No appended diagram markings in the claims should be construed as limiting the scope of the claims.
[0219] Furthermore, it is clear that the word "including" does not exclude other units or steps, and the singular does not exclude the plural. Multiple units or devices can also be implemented by a single unit or device through software or hardware. Terms such as "first," "second," etc., are used to indicate names and do not indicate any specific order.
[0220] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of this application and are not intended to limit it. Although this application has been described in detail with reference to preferred embodiments, those skilled in the art should understand that modifications or equivalent substitutions can be made to the technical solutions of this application without departing from the spirit and scope of the technical solutions of this application.
Claims
1. A mobile control method characterized by, The method comprises: During the movement of the self-moving device, accelerating movement is performed in a first stage, and / or decelerating movement is performed in a second stage, wherein the first stage comprises at least two acceleration processes, the second stage comprises at least two deceleration processes, the acceleration processes have different accelerations, and the deceleration processes have different accelerations.
2. The mobile control method according to claim 1, characterized by, The movement of the self-moving device comprises the first stage, and the method further comprises: determining an actual distance of the self-moving device from a starting point to an ending point; based on an initial speed of the self-moving device at the starting point, a preset ending speed, and a preset maximum acceleration, determining a first running distance corresponding to the self-moving device in a uniform acceleration state; based on the initial speed and the ending speed, determining a second running distance corresponding to the self-moving device when a preset speed change is completed; if the first running distance is less than the actual distance, the second running distance is greater than the actual distance, and the initial speed is less than the ending speed, according to the actual distance, the initial speed, and the ending speed, planning a time length of the first stage and a jerk of the first stage, so that the moving speed of the self-moving device reaches the ending speed after the first stage ends; or according to the actual distance, the initial speed, the ending speed, and the maximum acceleration, planning a time length of the first stage and a jerk of the first stage, so that the moving speed of the self-moving device reaches the ending speed after the first stage ends.
3. The mobile control method according to claim 2, wherein The method further comprises: if the first running distance is less than the actual distance, the second running distance is greater than the actual distance, and the initial speed is greater than the ending speed, the movement of the self-moving device comprises the second stage, according to the actual distance, the initial speed, and the ending speed, planning a time length of the second stage and a jerk of the second stage, so that the moving speed of the self-moving device reaches the ending speed after the second stage ends; and / or, if the second running distance is less than the actual distance, according to the initial speed, the ending speed, and a preset acceleration variable, the movement of the self-moving device comprises the first stage and the second stage, sequentially planning a time length of a uniform speed process, a time length of the first stage, and a time length of the second stage, so that the moving speed of the self-moving device reaches the ending speed after the second stage ends; and / or, if the second running distance is equal to the actual distance, the movement of the self-moving device comprises the first stage and the second stage, according to the initial speed, the ending speed, and the preset acceleration variable, sequentially planning a time length of the first stage and a time length of the second stage, so that the moving speed of the self-moving device reaches the ending speed after the second stage ends; and / or, If the first running distance is greater than or equal to the actual distance, a prompt information is generated, and the prompt information is used to prompt that a moving distance of the self-moving device is greater than the actual distance when a moving speed of the self-moving device reaches the terminal speed.
4. The mobile control method of claim 2, wherein The first running distance corresponding to the uniform acceleration state of the self-moving device is determined based on an initial speed of the self-moving device at the starting point, a preset terminal speed and a preset maximum acceleration, and the first running distance corresponding to the uniform acceleration state of the self-moving device is determined based on the initial speed, the terminal speed and the maximum acceleration. A first state duration corresponding to the uniform acceleration state is determined according to the initial speed, the terminal speed and the maximum acceleration. The first running distance is determined according to the initial speed, the first state duration and the maximum acceleration.
5. The mobile control method of claim 2, wherein The second running distance corresponding to the self-moving device completing a preset speed change is determined based on the initial speed and the terminal speed. The second state duration when the self-moving device is in a jerk acceleration state and the third state duration when the self-moving device is in a deceleration state are determined according to the initial speed, the terminal speed and a preset jerk acceleration, and the second running distance is determined according to the initial speed, the terminal speed, the second state duration and the third state duration; or The fourth state duration when the self-moving device is in a jerk acceleration state, the fifth state duration when the self-moving device is in a uniform acceleration state and the sixth state duration when the self-moving device is in a deceleration state are determined according to the initial speed, the terminal speed, a preset jerk acceleration and the maximum acceleration, and the second running distance is determined according to the initial speed, the terminal speed, the fourth state duration, the fifth state duration and the sixth state duration.
6. The mobile control method of claim 3, wherein, The preset acceleration variable includes a preset jerk acceleration of the first stage and a preset jerk acceleration of the second stage, and the duration of the first stage and the duration of the second stage are sequentially planned according to the initial speed, the terminal speed and the preset acceleration variable, and the duration of the first stage and the duration of the second stage are sequentially planned according to the initial speed, the terminal speed and the preset acceleration variable. The actual distance, the initial speed and the terminal speed are used to determine a planned jerk acceleration, and the initial speed and the planned jerk acceleration are used to determine a planned speed of the self-moving device at any time. The initial speed and the preset jerk acceleration of the first stage are used to determine a target speed of the self-moving device at any acceleration time, and the terminal speed and the preset jerk acceleration of the second stage are used to determine a target speed of the self-moving device at any deceleration time. planning the duration of the jerk process, the duration of the deceleration process, the duration of the acceleration-deceleration process, and the duration of the deceleration-deceleration process according to the actual distance, the initial speed, the final speed, the preset jerk of the first stage, and the preset jerk of the second stage, the first stage including the jerk process and the deceleration process, and the second stage including the acceleration-deceleration process and the deceleration-deceleration process, when the planning speed at the any time is less than or equal to the target speed at the any acceleration time, and the planning speed at the any time is less than or equal to the target speed at the any deceleration time.
7. The mobile control method of claim 6, wherein, The preset acceleration variable further includes a target acceleration of the first stage and a target acceleration of the second stage, and the method further includes: determining a third running distance corresponding to when the self-moving device reaches the target acceleration of the first stage according to the initial speed and the preset jerk of the first stage, and determining a fourth running distance corresponding to when the self-moving device reaches the target acceleration of the second stage according to the final speed and the preset jerk of the second stage, when the planning speed at the any time is greater than the target speed at the any acceleration time, the target speed at the any acceleration time is greater than the initial speed, and the target speed at the any deceleration time is less than the initial speed; planning the duration of the jerk process, the duration of the constant acceleration process, the duration of the deceleration process, the duration of the acceleration-deceleration process, the duration of the constant deceleration process, and the duration of the deceleration-deceleration process according to the actual distance, the initial speed, the final speed, the target acceleration of the first stage, the target acceleration of the second stage, the preset jerk of the first stage, and the preset jerk of the second stage, the first stage including the jerk process, the constant acceleration process, and the deceleration process, and the second stage including the acceleration-deceleration process, the constant deceleration process, and the deceleration-deceleration process, when the third running distance and the fourth running distance are less than the actual distance; and / or planning the duration of the jerk process, the duration of the deceleration process, the duration of the acceleration-deceleration process, the duration of the constant deceleration process, and the duration of the deceleration-deceleration process according to the actual distance, the initial speed, the final speed, the target acceleration of the second stage, the preset jerk of the first stage, and the preset jerk of the second stage, the first stage including the jerk process and the deceleration process, and the second stage including the acceleration-deceleration process, the constant deceleration process, and the deceleration-deceleration process, when the third running distance and the fourth running distance are greater than or equal to the actual distance.
8. The mobile control method according to claim 6 or 7, characterized by, The method further includes: when the planning speed at the any time is greater than the target speed at the any acceleration time, the target speed at the any acceleration time is greater than the initial speed, the planning speed at the any time is greater than the target speed at the any deceleration time, and the target speed at the any deceleration time is greater than the initial speed, if the target speed at the any acceleration time is equal to the target speed at the any deceleration time, determining a fifth running distance corresponding to a target acceleration of the self-moving device reaching the second stage according to the initial speed and a preset jerk of the second stage; if the sum of the third running distance and the fifth running distance is less than the actual distance, planning a duration of the jerk-up process, a duration of the uniform acceleration process, a duration of the jerk-down process, a duration of the jerk-up process, a duration of the uniform deceleration process, and a duration of the jerk-down process according to the actual distance, the initial speed, the terminal speed, the target acceleration of the first stage, the target acceleration of the second stage, a preset jerk of the first stage, and a preset jerk of the second stage, the first stage including the jerk-up process, the uniform acceleration process, and the jerk-down process, and the second stage including the jerk-up process, the uniform deceleration process, and the jerk-down process; and / or, if the sum of the third running distance and the fifth running distance is greater than or equal to the actual distance, planning a duration of the jerk-up process, a duration of the jerk-down process, a duration of the jerk-up process, a duration of the uniform deceleration process, and a duration of the jerk-down process according to the actual distance, the initial speed, the terminal speed, the target acceleration of the second stage, a preset jerk of the first stage, and a preset jerk of the second stage, the first stage including the jerk-up process and the jerk-down process, and the second stage including the jerk-up process, the uniform deceleration process, and the jerk-down process.
9. The mobile control method according to claim 6 or 7, characterized by, The method further includes: when the target speed at the any acceleration time is less than the target speed at the any deceleration time, determining a sixth running distance corresponding to a target acceleration of the self-moving device reaching the first stage according to the initial speed and a preset jerk of the first stage; if the sum of the fifth running distance and the sixth running distance is less than the actual distance, planning a duration of the jerk-up process, a duration of the uniform acceleration process, a duration of the jerk-down process, a duration of the jerk-up process, a duration of the uniform deceleration process, and a duration of the jerk-down process according to the actual distance, the initial speed, the terminal speed, the target acceleration of the first stage, the target acceleration of the second stage, a preset jerk of the first stage, and a preset jerk of the second stage, the first stage including the jerk-up process, the uniform acceleration process, and the jerk-down process, and the second stage including the jerk-up process, the uniform deceleration process, and the jerk-down process; and / or, If the sum of the fifth running distance and the sixth running distance is equal to the actual distance, the duration of the jerk process, the duration of the uniform acceleration process, the duration of the deceleration process, the duration of the acceleration-deceleration process and the duration of the deceleration-deceleration process are planned according to the actual distance, the initial speed, the terminal speed, the target acceleration of the second stage, the preset jerk of the first stage and the preset jerk of the second stage, the first stage including the jerk process, the uniform acceleration process and the deceleration process, and the second stage including the acceleration-deceleration process and the deceleration-deceleration process. and / or If the sum of the fifth running distance and the sixth running distance is greater than the actual distance, and the sum of the third running distance and the fifth running distance is less than the actual distance, the duration of the jerk process, the duration of the uniform acceleration process, the duration of the deceleration process, the duration of the acceleration-deceleration process and the duration of the deceleration-deceleration process are planned, the first stage including the jerk process, the uniform acceleration process and the deceleration process, and the second stage including the acceleration-deceleration process and the deceleration-deceleration process. and / or If the sum of the fifth running distance and the sixth running distance is greater than the actual distance, and the sum of the third running distance and the fifth running distance is greater than or equal to the actual distance, the duration of the jerk process, the duration of the deceleration process, the duration of the acceleration-deceleration process and the duration of the deceleration-deceleration process are planned according to the actual distance, the initial speed, the terminal speed, the preset jerk of the first stage and the preset jerk of the second stage, the first stage including the jerk process and the deceleration process, and the second stage including the acceleration-deceleration process and the deceleration-deceleration process.
10. A self-moving device, characterized in that, including: a memory storing computer readable instructions; and a processor executing the computer readable instructions stored in the memory to implement the mobile control method according to any one of claims 1 to 9.