Method and device for determining navigation track, computer equipment and storage medium
By calculating the distance and motion constraints between the pilot robot and the pilot object, the pilot control speed range and target trajectory are generated, which solves the dynamic path planning problem of the pilot robot in complex scenarios and achieves safe and efficient guidance.
Patent Information
- Application Number
- CN202510871363.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-06-26
- Publication Date
- 2025-09-26
AI Technical Summary
Existing navigation robots have difficulty adapting to dynamic path planning requirements in complex scenarios and are unable to effectively guide workers or equipment to abnormal locations for disposal or maintenance.
By determining the distance information and motion constraints between the pilot robot and the pilot object, the pilot control speed range is calculated, and speed sampling is performed in combination with real-time speed and environmental information to generate a target trajectory to instruct the pilot robot to guide the pilot object.
Ensure that the pilot robot maintains a safe distance and movement restrictions in complex environments, dynamically adapts to the needs of different scenarios, and improves navigation efficiency and accuracy.
Smart Images

Figure CN120697010A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the technical field of robot path planning, and in particular to a method, apparatus, computer equipment, computer-readable storage medium, and computer program product for determining a navigation trajectory. Background Art
[0002] Mobile inspection robots can replace manual inspections, significantly improving maintenance efficiency, reducing labor intensity, and enabling informatization. They are currently widely used in practical environments such as substations and depots. Existing mobile inspection robots use onboard cameras and other equipment to detect anomalies and provide back-office staff with important information such as the location and type of the anomaly.
[0003] However, when an anomaly occurs, existing mobile inspection robots are only responsible for detecting the anomaly and issuing an alarm; they lack the ability to guide personnel to the anomaly location or perform simple repairs. In complex and ever-changing real-world environments, personnel must quickly reach the anomaly location for repairs or evacuation, or urgently evacuate personnel nearby. To address this, intelligent devices such as pilot robots have emerged in existing technologies to provide personnel guidance.
[0004] However, existing navigation robots have difficulty adapting to the dynamic navigation requirements in complex scenarios when performing path planning. Summary of the Invention
[0005] Based on this, it is necessary to provide a method, device, computer equipment, computer-readable storage medium and computer program product for determining a navigation trajectory that can perform dynamic path planning according to the navigation object and environmental conditions to address the above technical problems.
[0006] In a first aspect, the present application provides a method for determining a pilot trajectory, the method comprising:
[0007] Determining distance information and distance constraints between the pilot robot and the pilot object, as well as motion constraints of the pilot robot;
[0008] determining, based on the motion constraint, the distance information, and the distance constraint, a navigation control speed range for the pilot robot when guiding the pilot object;
[0009] determining a target speed sampling interval according to the pilot control speed interval and the constraint control speed interval of the pilot robot; the constraint control speed interval is determined based on the real-time speed of the pilot robot, the motion constraint condition, and current environmental information around the pilot robot;
[0010] Speed sampling is performed on the target speed sampling interval, at least one candidate trajectory is determined based on the speed sampling result, and a target trajectory is determined from the at least one candidate trajectory; the target trajectory is used to instruct the pilot robot to guide the pilot object.
[0011] In a second aspect, the present application further provides a device for determining a pilot trajectory, the device comprising:
[0012] A navigation information determination module, configured to determine distance information and distance constraints between the pilot robot and the pilot object, as well as motion constraints of the pilot robot;
[0013] a speed interval determination module, configured to determine a navigation control speed interval of the pilot robot when guiding the pilot object based on the motion constraint, the distance information, and the distance constraint;
[0014] a speed interval fusion module, configured to determine a target speed sampling interval based on the pilot control speed interval and the constraint control speed interval of the pilot robot; the constraint control speed interval is determined based on the real-time speed of the pilot robot, the motion constraint conditions, and current environmental information surrounding the pilot robot;
[0015] A pilot trajectory determination module is configured to perform speed sampling in the target speed sampling interval, determine at least one candidate trajectory based on the speed sampling results, and determine a target trajectory from the at least one candidate trajectory; the target trajectory is used to instruct the pilot robot to guide the pilot object.
[0016] In a third aspect, the present application further provides a computer device comprising a memory and a processor, wherein the memory stores a computer program, and the processor implements the steps of the above method when executing the computer program.
[0017] In a fourth aspect, the present application further provides a computer-readable storage medium having a computer program stored thereon, which implements the steps of the above method when executed by a processor.
[0018] In a fifth aspect, the present application also provides a computer program product, comprising a computer program, which implements the steps of the above method when executed by a processor.
[0019] The above-mentioned method, device, computer equipment, computer-readable storage medium and computer program product for determining the navigation trajectory determine the distance information and distance constraints between the navigation robot and the navigation object, as well as the motion constraints of the navigation robot; based on the motion constraints, distance information and distance constraints, determine the navigation control speed range of the navigation robot when guiding the navigation object; determine the target speed sampling range according to the navigation control speed range and the constraint control speed range of the navigation robot; the constraint control speed range is determined based on the real-time speed of the navigation robot, the motion constraints and the current environmental information around the navigation robot; speed sampling is performed on the target speed sampling range, at least one candidate trajectory is determined according to the speed sampling results, and the target trajectory is determined from the at least one candidate trajectory; the target trajectory is used to instruct the navigation robot to guide the navigation object. By combining the distance information and distance constraints between the pilot robot and the pilot object and the motion constraints of the pilot robot, the pilot control speed range of the pilot robot under the pilot control constraints is determined. Combined with the constraint control speed range determined according to the real-time speed of the pilot robot, the motion constraints and the surrounding environment information, the target speed sampling range of the pilot robot during movement is obtained. Finally, the target speed sampling range is sampled, and based on the sampling results, at least one candidate trajectory that meets the constraints is obtained, and the final target trajectory is determined from at least one candidate trajectory. Comprehensive consideration of the constraint relationship between the pilot robot, the pilot object and the surrounding environment information can ensure that the pilot robot always maintains a safe distance and motion restrictions during the navigation process, which is conducive to the pilot robot dynamically adapting to different environments and navigation task requirements, thereby improving the efficiency and accuracy of navigation. BRIEF DESCRIPTION OF THE DRAWINGS
[0020] In order to more clearly illustrate the technical solutions in the embodiments of the present application or related technologies, the following briefly introduces the drawings required for use in the embodiments of the present application or related technical descriptions. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other related drawings can be obtained based on these drawings without paying any creative work.
[0021] Figure 1 FIG. 1 is a diagram illustrating an application environment of a method for determining a navigation trajectory in one embodiment;
[0022] Figure 2 1 is a flow chart of a method for determining a navigation trajectory in one embodiment;
[0023] Figure 3 Schematic diagram of the process of pilot control speed interval step in one embodiment;
[0024] Figure 4This is a schematic diagram of the structure of a pilot robot in an application example;
[0025] Figure 5 A control block diagram for path planning and determination for a pilot robot in an application example;
[0026] Figure 6 A flowchart of a method for determining a navigation trajectory in an application example;
[0027] Figure 7 A schematic diagram of a two-dimensional environment map constructed in an application example;
[0028] Figure 8 A schematic diagram of visualizing motion trajectories on Rviz when navigating between two points in an application example;
[0029] Figure 9 The figure is a schematic diagram of a curve showing a change in separation distance and speed when navigating between two points in an application example;
[0030] Figure 10 A schematic diagram of visualizing motion trajectories on Rviz when navigating between multiple points in an application example;
[0031] Figure 11 This is a schematic diagram of the curves of distance and speed variation when navigating between multiple points in an application example;
[0032] Figure 12 A schematic diagram of the actual motion trajectory of the pilot robot and the pilot object when piloting between multiple points in an application example;
[0033] Figure 13 is a structural block diagram of a device for determining a navigation trajectory in one embodiment;
[0034] Figure 14 FIG. 1 is a diagram showing the internal structure of a computer device in one embodiment. DETAILED DESCRIPTION
[0035] In order to make the purpose, technical solutions and advantages of this application more clear, the following further describes this application in detail with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain this application and are not intended to limit this application.
[0036] It should be noted that the terms "first", "second", etc. used in this application may be used to describe various elements, but these elements are not limited by these terms. These terms are only used to distinguish the first element from the second element. The terms "including" and "having" used in this application and any variations thereof are intended to cover non-exclusive inclusions. The term "plurality" used in this application refers to two or more. The term "and / or" used in this application refers to one of the solutions or any combination of multiple solutions.
[0037] The method for determining the navigation trajectory provided in the embodiment of the present application can be applied to Figure 1 In the application environment shown. Among them, the terminal 102 communicates with the server 104 through the network. The data storage system can store data that the server 104 needs to process. The data storage system can be integrated on the server 104, or it can be placed on the cloud or other network servers. The server 104 can determine the distance information and distance constraints between the pilot robot and the pilot object, as well as the motion constraints of the pilot robot; and based on the motion constraints, the distance information and the distance constraints, determine the navigation control speed interval of the pilot robot when guiding the pilot object; then, the server 104 can determine the target speed sampling interval based on the navigation control speed interval and the constraint control speed interval of the pilot robot; the constraint control speed interval is determined based on the real-time speed of the pilot robot, the motion constraints and the current environmental information around the pilot robot; finally, the server 104 can perform speed sampling on the target speed sampling interval, determine at least one candidate trajectory based on the speed sampling result, and determine the target trajectory from the at least one candidate trajectory; the target trajectory is used to instruct the pilot robot to guide the pilot object.
[0038] The terminal 102 can be integrated into the pilot robot, specifically in the form of various personal computers, laptops, smart phones, tablet computers, drones, low-altitude aircraft, Internet of Things devices and portable wearable devices. The Internet of Things devices can be smart speakers, smart TVs, smart air conditioners, smart car devices, projection devices, etc. Portable wearable devices can be smart watches, smart bracelets, head-mounted devices, etc. The head-mounted devices can be virtual reality (VR) devices, augmented reality (AR) devices, smart glasses, etc. The server 104 can be an independent physical server, a server cluster or distributed system composed of multiple physical servers, or a cloud server that provides cloud computing services.
[0039] In an exemplary embodiment, Figure 2 As shown, a method for determining a pilot trajectory is provided, and the method is applied to Figure 1 The server 104 in the example is used as an example to illustrate the process, including the following steps 202 to 208.
[0040] Step 202: Determine the distance information and distance constraints between the pilot robot and the pilot object, as well as the motion constraints of the pilot robot.
[0041] Among them, the pilot robot refers to the subject that performs the pilot task. The pilot robot has the ability to move autonomously, perceive the environment, plan paths, and control its own movement, so as to guide the pilot object to the target location or complete a specific task according to a preset strategy or real-time decision. For example, in the inspection tasks of substations and vehicle depots, the pilot object can be quickly led to the fault point, maintenance point, etc. accurately. The pilot object refers to the target entity guided by the pilot robot. The pilot object can be a device with mobility (such as a transport cart, drone, etc.) or a person (such as maintenance personnel, etc.). The pilot object needs to follow the pilot robot and can move according to the path planned by the pilot robot.
[0042] Distance information refers to the spatial distance between the pilot robot and the pilot object. This information can be acquired through various recognition devices, such as cameras, sensors (such as lidar, ultrasonic sensors, and visual sensors) installed on the pilot robot, and other structures to determine the relative positional relationship between the pilot robot and the pilot object. Distance constraints refer to the restrictions on the distance between the pilot robot and the pilot object. Distance constraints can be set based on specific application scenarios and task requirements to ensure the stability and safety of the pilot robot's movement during navigation. For example, when guiding a pilot object, a distance constraint can limit the distance between the pilot robot and the pilot object to a certain range, neither too close to cause a collision nor too far to cause the pilot object to lose guidance. In specific implementations, distance constraints are typically expressed as a numerical range. The server can control the pilot robot to adjust its position and speed in real time based on the distance constraint to maintain an appropriate distance between the pilot robot and the pilot object.
[0043] Motion constraints are restrictions on the pilot robot's motion, and may include but are not limited to speed constraints and acceleration constraints. Speed constraints specify the maximum and minimum speeds of the pilot robot during its motion, as well as limits on speed variations. For example, the maximum and / or minimum speeds of the pilot robot can be limited to certain values to prevent loss of control due to excessive speed or slowness. Acceleration constraints limit the speed of the pilot robot's velocity variations, specifically the magnitude and direction of acceleration.
[0044] Exemplarily, the pilot robot is provided with a camera that can identify the pilot object and a three-dimensional laser radar for positioning itself. The pilot robot can position itself through the three-dimensional laser radar and identify the position of the pilot object behind it through the camera set at its tail. The server can determine the distance information between the pilot robot and the pilot object by receiving the position of the pilot robot and the position of the pilot object; at the same time, the server can determine the motion constraints of the pilot robot and the distance constraints between the pilot robot and the pilot object based on the structural limitations of the pilot robot itself.
[0045] In an optional embodiment, the server can initialize the pilot robot. Specifically, the server can load a pre-built navigation map for the navigation area. The server can then obtain point cloud data collected by a three-dimensional laser radar installed on the pilot robot and match the point cloud data with the navigation map to locate the pilot robot in the navigation area, thereby initializing the pilot robot's posture information. Specifically, the pilot robot can interact with the pilot object through a voice module installed on it, so as to enter initialization or perform subsequent path planning when the voice command of the pilot object is recognized. At the same time, navigation information can also be fed back through voice during the navigation process. For example, when the pilot object deviates or fails to keep up, the voice module can issue a voice prompt such as "Please keep up with me". For example, when the navigation path changes (such as turning), the voice module can issue a voice prompt such as "about to turn left" to allow the pilot object to understand the pilot's intention in real time, thereby enhancing the navigation effect and safety.
[0046] When navigation begins, the camera installed on the navigation robot can capture images of the navigation object in real time. The server can obtain the image of the navigation object and identify and detect the navigation object through target detection algorithms (such as YOLOSterero3D, You Only Look OnceSterero Three Dimensional). For example, when the navigation object is detected, a three-dimensional box can be generated around the navigation object, and the location and speed information of the navigation object can be generated in the three-dimensional box.
[0047] Optionally, when the server determines the distance information between the pilot robot and the pilot object, since the position of the pilot object is acquired through a camera, the position coordinates of the pilot object detected are based on the position coordinates in the camera reference coordinate system. Therefore, the position coordinates in the camera reference coordinate system need to be converted to the physical reference coordinate system of the pilot robot. During the conversion, the relationship between the camera reference coordinate system and the physical reference coordinate system can be measured by the camera's installation position. In specific implementation, the server can determine the distance information between the pilot robot and the pilot object by calculating the distance between the camera and the pilot object, taking into account the camera's installation position and pitch angle, that is:
[0048]
[0049] Among them, S t is the distance information between the pilot robot and the pilot object at time t, that is, the actual distance between the pilot robot and the pilot object; is the position coordinate of the center point of the navigation object detected by the camera at time t in the camera reference coordinate system, is the distance in the x-axis direction of the camera reference coordinate system from the center point of the navigation object detected by the camera at time t. is the distance in the y-axis direction of the camera reference coordinate system from the center point of the navigation object detected by the camera at time t. The distance in the z-axis direction of the camera reference coordinate system from the center point of the navigation object detected by the camera at time t. Since the camera usually detects the position of the navigation object at a horizontal angle, the distance in the z-axis direction is is 0, so when determining the distance information S between the pilot robot and the pilot object at time t t The distance in the z-axis direction is not considered.
[0050] When the actual distance between the pilot object and the pilot robot deviates from the distance constraint (i.e., the set optimal distance), the server can dynamically adjust the movement speed of the pilot robot according to the deviation between the actual distance and the optimal distance. When the actual distance is too far, the server can control the pilot robot to appropriately reduce the speed or stop and wait for the pilot object to catch up; or when the actual distance is too close, the server can control the pilot robot to appropriately accelerate to keep the pilot robot and the pilot object at a safe distance.
[0051] Step 204 : determining a navigation control speed range for the pilot robot when guiding the pilot object based on the motion constraint condition, the distance information, and the distance constraint condition.
[0052] The pilot control speed range refers to the speed range allowed for the pilot robot when navigating the target, taking into account the pilot robot's own motion constraints, as well as the distance information and distance constraints between the pilot robot and the target. This allows the pilot robot to select an appropriate speed within the speed range to effectively navigate the target. For example, if the target is far away, the robot may need to increase its speed to reach it as quickly as possible; when the distance is close, the robot may need to reduce its speed to avoid collision.
[0053] For example, the server may determine a navigation control speed range for the pilot robot when guiding the pilot object based on the acquired motion constraints of the pilot robot itself and the distance information and distance constraints between the pilot robot and the pilot object.
[0054] Step 206 : Determine a target speed sampling interval based on the navigation control speed interval and the constraint control speed interval of the navigation robot.
[0055] The constraint control speed range refers to the speed range allowed for the pilot robot when navigating the pilot object, determined based on the real-time speed of the pilot robot, motion constraints, and the current environmental information surrounding the pilot robot. The real-time speed refers to the actual speed of the pilot robot at the current moment, which can be measured in real time by the pilot robot's speed sensors (such as encoders, gyroscopes, etc.) and is used to reflect the pilot robot's current motion state. The current environmental information refers to the real-time status data of the pilot robot's surroundings, including but not limited to the location, size, and shape of obstacles, the flatness of the ground, and friction. The current environmental information can be obtained through various sensors (such as lidar, cameras, infrared sensors, etc.). In specific implementation, when the pilot robot is navigating in an environment with obstacles, the pilot robot needs to adjust its speed and path according to the location and distance of the obstacles to avoid collisions.
[0056] The target speed sampling interval refers to the speed range used to ultimately limit the movement of the pilot robot, determined based on the pilot control speed interval and the constraint control speed interval of the pilot robot. The target speed sampling interval can be the speed interval obtained by taking the intersection of the pilot control speed interval and the constraint control speed interval to ensure that the pilot robot can meet the requirements of guiding the pilot object and comply with its own motion constraints and environmental restrictions.
[0057] For example, the server may intersect the navigation control speed interval and the constraint control speed interval of the navigation robot to determine the target speed sampling interval.
[0058] Step 208 : Perform speed sampling on the target speed sampling interval, determine at least one candidate trajectory based on the speed sampling result, and determine the target trajectory from the at least one candidate trajectory.
[0059] Among them, speed sampling is the process of selecting several speed combinations within the target speed sampling interval according to certain rules or algorithms. The speed combinations can be used for subsequent trajectory generation and evaluation. In specific implementations, speed sampling can adopt uniform sampling, random sampling, or other specific sampling strategies. For example, uniform sampling can be to select speed combinations at equal intervals within the target speed sampling interval; random sampling can be to randomly select speed combinations within the interval. Through speed sampling, multiple different speed combinations can be obtained to generate multiple candidate trajectories.
[0060] Candidate trajectories are a series of possible trajectories for the pilot robot during navigation, generated based on velocity combinations obtained from velocity sampling. Each candidate trajectory corresponds to a specific velocity combination, representing the path the pilot robot will take from its current position to a future timeframe under that velocity combination. A target trajectory is the optimal trajectory, determined after evaluation and selection from at least one candidate trajectory, used to guide the pilot robot toward the navigation object. The target trajectory can be selected based on a variety of evaluation metrics, such as trajectory safety (whether collisions with obstacles are possible), smoothness (whether velocity and acceleration changes smoothly), and efficiency (whether the task can be completed in the shortest time or path). For example, when evaluating candidate trajectories, if a candidate trajectory can avoid collisions with obstacles while allowing the robot to reach the target location at a relatively stable speed and within a relatively short path, then this trajectory is likely to be selected as the target trajectory.
[0061] Exemplarily, the server can uniformly sample the speeds within the target speed sampling interval at equal intervals to obtain at least one set of speed combinations. Then, the server can generate at least one set of candidate trajectories corresponding to each speed combination based on the at least one set of speed combinations and the current motion state of the pilot robot. Finally, the server can evaluate each candidate trajectory to select a qualified trajectory from at least one candidate trajectory to be determined as the target trajectory.
[0062] In the above-mentioned method for determining the navigation trajectory, the distance information and distance constraints between the navigation robot and the navigation object and the motion constraints of the navigation robot are determined; based on the motion constraints, distance information and distance constraints, the navigation control speed range of the navigation robot when guiding the navigation object is determined; according to the navigation control speed range and the constraint control speed range of the navigation robot, the target speed sampling range is determined; the constraint control speed range is determined based on the real-time speed of the navigation robot, the motion constraints and the current environmental information around the navigation robot; speed sampling is performed on the target speed sampling range, and at least one candidate trajectory is determined according to the speed sampling result, and the target trajectory is determined from the at least one candidate trajectory; the target trajectory is used to instruct the navigation robot to guide the navigation object. By combining the distance information and distance constraints between the pilot robot and the pilot object and the motion constraints of the pilot robot, the pilot control speed range of the pilot robot under the pilot control constraints is determined. Combined with the constraint control speed range determined according to the real-time speed of the pilot robot, the motion constraints and the surrounding environment information, the target speed sampling range of the pilot robot during movement is obtained. Finally, the target speed sampling range is sampled, and based on the sampling results, at least one candidate trajectory that meets the constraints is obtained, and the final target trajectory is determined from at least one candidate trajectory. Comprehensive consideration of the constraint relationship between the pilot robot, the pilot object and the surrounding environment information can ensure that the pilot robot always maintains a safe distance and motion restrictions during the navigation process, which is conducive to the pilot robot dynamically adapting to different environments and navigation task requirements, thereby improving the efficiency and accuracy of navigation.
[0063] In one embodiment, Figure 3 As shown, based on the motion constraint conditions, distance information and distance constraint conditions, the navigation control speed range of the pilot robot when guiding the pilot object is determined, including:
[0064] Step 302: Determine the distance discrimination parameter between the pilot robot and the pilot object according to the distance information and the distance constraint condition.
[0065] The distance determination parameter is a parameter calculated based on the distance information between the pilot robot and the pilot object and pre-set distance constraints. It is used to quantitatively determine the distance state between the pilot robot and the pilot object, and is used for subsequent logical judgment and decision-making. By comparing the distance determination parameter with a specific distance range (such as the distance maintenance interval described below), it can be determined whether the pilot robot's motion state needs to be adjusted, such as changing the pilot robot's speed or direction, to maintain the appropriate guidance distance.
[0066] For example, the server may subtract the distance information between the pilot robot and the pilot object from the distance constraint condition to obtain a distance determination parameter between the pilot robot and the pilot object.
[0067] In an optional embodiment, the distance discrimination parameter can be determined by the following formula:
[0068] E t =S t -D (2)
[0069] Among them, E t is the distance discrimination parameter at time t, S t is the distance information between the pilot robot and the pilot object at time t, and D is the distance constraint between the pilot robot and the pilot object, that is, the optimal distance between the pilot robot and the pilot object during navigation. The distance discrimination parameter can be positive or negative. When the distance discrimination parameter is positive, it indicates that the distance (distance information) between the pilot robot and the pilot object is greater than the distance constraint. In this case, the pilot robot needs to be controlled to slow down or stop. Conversely, when the distance discrimination parameter is negative, it indicates that the distance (distance information) between the pilot robot and the pilot object is less than the distance constraint. In this case, the pilot robot needs to be controlled to accelerate. To prevent the pilot robot's speed from fluctuating frequently due to small fluctuations in the distance between the pilot robot and the pilot object, a distance maintenance interval can be set. When the distance discrimination parameter falls within this distance maintenance interval, even if the distance discrimination parameter is positive or negative, it is considered to be zero, and the pilot robot's speed does not need to be adjusted or maintained at a baseline speed, thereby preventing the pilot robot's speed from oscillating back and forth.
[0070] Optionally, the distance constraint can be determined based on the structural characteristics of the pilot robot (such as inertia, maximum speed, minimum speed, etc.) and pre-stored in a data storage system. When determining the distance discrimination parameter, the server can directly obtain it from the data storage system. In other embodiments, the distance constraint can also be determined in real time during the pilot robot's movement based on the pilot robot's real-time state (such as real-time speed, real-time acceleration, etc.) and current environmental information (such as obstacles, terrain, road conditions). For example, after extracting features of the pilot robot's real-time state and current environmental information through a pre-trained neural network model, the distance constraint between the pilot robot and the pilot object at the current moment can be output based on the forward propagation of the neural network model. The distance constraint can be flexibly adjusted to make the pilot robot more adaptable to the current navigation conditions and environment during navigation.
[0071] Step 304 : When the distance discrimination parameter does not belong to the distance keeping interval, obtain the motion constraint condition of the pilot robot, and determine the speed information of the pilot robot when guiding the pilot object based on the motion constraint condition and the distance discrimination parameter.
[0072] The distance maintenance interval refers to the range of distance deviation between the pilot robot and the pilot object, pre-set based on the requirements of the pilot mission and safety considerations, from the optimal separation distance. The distance maintenance interval can be defined by a lower limit and an upper limit, providing a clear distance control target for the server's control of the pilot robot. In specific implementations, the distance between the pilot robot and the pilot object can be monitored in real time to maintain the distance deviation within the distance maintenance interval. If the distance deviation exceeds this range, the pilot robot can be controlled by implementing control strategies such as acceleration, deceleration, and directional adjustment to bring the distance deviation back within the distance maintenance interval, thereby ensuring the stability and safety of the guidance process.
[0073] Speed information refers to the speed of the pilot robot's movement while guiding the pilot object, subject to motion and distance constraints. This information may include, but is not limited to, the magnitude and direction of the pilot robot's current actual speed. Speed information serves as the pilot robot's control target. When the distance discrimination parameter is greater than the upper limit, indicating that the pilot robot is too far away from the pilot object, the server can control the pilot robot to slow down or stop according to the determined speed information to shorten the distance as quickly as possible and ensure that the pilot object can catch up. Conversely, when the distance discrimination parameter is less than the lower limit, indicating that the pilot robot is too close to the pilot object, the server can control the pilot robot to speed up according to the speed information to avoid collision or being overtaken by the pilot object.
[0074] For example, the server may compare the distance discrimination parameter with the upper and lower distance limits of the distance-keeping interval to determine whether the distance discrimination parameter falls within the distance-keeping interval. If the distance discrimination parameter does not fall within the distance-keeping interval, the server may retrieve the motion constraints of the pilot robot from a data storage system. Subsequently, based on the motion constraints and the distance discrimination parameter, the server may segmentally determine the speed information of the pilot robot as it guides the pilot object. For example, when determining the speed information, the server may determine corresponding speed information for each of the following situations: when the distance discrimination parameter falls within the distance-keeping interval, when the distance discrimination parameter does not fall within the distance-keeping interval and is greater than the upper distance limit, and when the distance discrimination parameter does not fall within the distance-keeping interval and is less than the lower distance limit. This allows the pilot robot to smoothly and quickly respond to the distance between the pilot robot and the pilot object, thereby controlling the acceleration and deceleration of the pilot robot. In this way, segmented control of the pilot robot's speed can achieve nonlinear adjustment of the distance between the pilot robot and the pilot object, thereby avoiding drastic changes and instability in the pilot robot's motion state.
[0075] Step 306: Determine the navigation control speed range based on the speed information.
[0076] Exemplarily, the server can determine the navigation control speed interval for the pilot robot based on the speed information determined in segments. For example, without considering the angular velocity, when the distance between the pilot robot and the pilot object is too large, the pilot robot needs to slow down or stop, and thus the upper limit of the navigation control speed interval can be determined based on the speed information. Since the pilot robot needs to slow down or stop at this time, the lower limit of the navigation control speed interval can be zero (or the minimum linear speed value of the pilot robot), that is, in this case, the navigation control speed interval can be expressed as [minimum linear speed, speed information]; for another example, when the distance between the pilot robot and the pilot object is too small, the pilot robot needs to accelerate, and thus the navigation control speed interval can be determined based on the speed information. The lower limit value of the speed range. Since the pilot robot needs to accelerate at this time, the upper limit value of the pilot control speed range can be positive infinity or the maximum linear speed value of the pilot robot. In this case, the pilot control speed range can be expressed as [speed information, maximum linear speed]. For example, when the distance between the pilot robot and the pilot object belongs to the distance maintenance range, there is no need for the pilot control layer to adjust the speed of the pilot robot. In this case, the pilot control speed range can be ignored. In other words, the pilot control speed range can be determined based on the maximum and minimum speed values and minimum linear speed values of the pilot robot itself, that is, [minimum linear speed, maximum linear speed].
[0077] In this embodiment, the distance discrimination parameter is determined by the distance information and the constraint condition. When the distance discrimination parameter does not belong to the distance maintenance range, the speed information is determined in combination with the motion constraint condition, and the navigation control speed range is determined based on the speed information. The speed of the navigation robot can be flexibly adjusted according to the actual situation between the navigation robot and the navigation object, thereby ensuring the rationality and safety of the guidance process.
[0078] In one embodiment, when the distance discrimination parameter does not fall within the distance maintenance interval, obtaining motion constraints of the pilot robot and determining, based on the motion constraints and the distance discrimination parameter, speed information of the pilot robot when guiding the pilot object includes at least one of the following:
[0079] When the distance discrimination parameter is greater than the upper limit distance of the distance holding interval, the speed constraint condition in the motion constraint condition of the pilot robot is obtained, and the speed information of the pilot robot when guiding the pilot object is determined based on the speed constraint condition, the distance discrimination parameter and the upper limit distance.
[0080] When the distance discrimination parameter is less than the lower limit distance of the distance holding interval, the speed constraint condition in the motion constraint condition of the pilot robot is obtained, and the speed information of the pilot robot when guiding the pilot object is determined based on the speed constraint condition, the distance discrimination parameter and the lower limit distance.
[0081] Among them, the upper limit distance is the upper boundary value of the distance maintenance interval. When the distance discrimination parameter (i.e., distance deviation) between the pilot robot and the pilot object exceeds the upper limit distance, it means that the distance between the pilot robot and the pilot object is too large, which may affect the guidance effect and even cause the pilot object to leave the guidance range. The lower limit distance is the lower boundary value of the distance maintenance interval. When the distance discrimination parameter (i.e., distance deviation) between the pilot robot and the pilot object is less than the lower limit distance, there is a risk of collision. Therefore, the pilot robot needs to take timely measures to increase the distance. The speed constraint condition refers to the restriction requirement on the movement speed of the pilot robot, which is used to limit the maximum and minimum speed of the pilot robot during movement, including maximum speed limit, minimum speed limit, etc. The speed constraint condition can be determined based on factors such as the structural performance, power system, safety requirements, and task requirements of the pilot robot.
[0082] The maximum speed limit refers to the maximum speed value set based on the pilot robot's dynamic performance and safety considerations, including the maximum linear velocity and maximum angular velocity. The pilot robot's speed during movement cannot exceed the maximum speed. The minimum speed limit refers to the minimum speed value set to ensure that the pilot robot can continuously and effectively guide the pilot object, including the minimum linear velocity and minimum angular velocity. The pilot robot's speed during movement cannot fall below the minimum speed.
[0083] For example, the server can compare the distance determination parameter with the upper limit of the distance maintenance interval. If the distance determination parameter is greater than the upper limit of the distance maintenance interval, it indicates that the distance between the pilot robot and the pilot object is too large. In this case, the server can obtain the speed constraints from the pilot robot's motion constraints. For example, the server can obtain the maximum and minimum linear velocities from the speed constraints. Subsequently, the server can determine the speed information of the pilot robot during deceleration based on the maximum and minimum linear velocities, the distance determination parameter, and the upper limit.
[0084] In specific implementation, when the server determines that the distance discrimination parameter is greater than the upper limit distance d of the distance holding interval [-d, d], that is, E t When >d, the server can use an exponential function to determine the speed information of the pilot robot during deceleration, that is:
[0085]
[0086] Among them, v t is the speed information of the pilot robot during deceleration at time t, v min ,v max are the minimum and maximum linear speeds of the pilot robot, E t is the distance discrimination parameter at time t, d is the upper limit of the distance keeping interval, and α is the attenuation coefficient, which is used to control the steepness of the deceleration curve.
[0087] If the distance determination parameter is less than the upper limit of the distance maintenance interval, the server can further determine whether the distance determination parameter is less than the lower limit of the distance maintenance interval. If the distance determination parameter is less than the lower limit of the distance maintenance interval, it indicates that the distance between the pilot robot and the pilot object is too small. In this case, the server can obtain the speed constraints of the pilot robot's motion constraints. For example, the server can obtain the minimum linear velocity of the speed constraints. Subsequently, the server can determine the speed information of the pilot robot during acceleration based on the minimum linear velocity, the distance determination parameter, and the upper limit.
[0088] In specific implementation, when the server determines that the distance discrimination parameter is less than the lower limit distance -d of the distance holding interval [-d, d], that is, E t <-d, the server can use the square law to determine the speed information of the pilot robot during acceleration, that is:
[0089] v t =v min +β(E t -d) 2 (4)
[0090] Among them, v tis the speed information of the pilot robot during acceleration at time t, v min is the minimum linear velocity of the pilot robot, E t is the distance discrimination parameter at time t, -d is the lower limit of the distance keeping interval, and β is the gain coefficient, which is used to control the intensity of acceleration.
[0091] In this embodiment, when the distance judgment parameter exceeds the distance holding interval, reasonable speed information can be determined by combining the distance judgment parameter with the upper and lower limits of the distance holding interval. The speed of the navigation robot can be dynamically adjusted according to the actual distance between the navigation robot and the navigation object, thereby effectively avoiding the risk of navigation failure due to too close or too far distance, ensuring the safety and stability of the navigation process, and helping to improve the execution efficiency and accuracy of the navigation task.
[0092] In one embodiment, the method for determining the navigation trajectory further includes:
[0093] When the distance discrimination parameter belongs to the distance keeping interval, the real-time speed of the pilot robot is obtained, and the speed information of the pilot robot when guiding the pilot object is determined according to the real-time speed.
[0094] For example, the server can compare the distance determination parameter with the lower and upper limits of the distance maintenance interval. If the distance determination parameter is greater than or equal to the lower limit and less than or equal to the upper limit, it indicates that the distance between the pilot robot and the pilot object is appropriate. In this case, there is no need to adjust the speed of the pilot robot, and the server can obtain the real-time speed of the pilot robot. Subsequently, the server can determine the speed information of the pilot robot when the speed (or distance) is maintained based on the real-time speed. For example, the server can directly determine the real-time speed as the speed of the pilot robot when the speed is maintained, or it can process the real-time speed and determine it as the speed of the pilot robot when the speed is maintained.
[0095] In specific implementation, when the server determines that the distance discrimination parameter belongs to the distance maintenance interval [-d, d], that is, |E t When |≤d, the server can determine the real-time speed of the pilot robot at time t as the speed information of the pilot robot when the speed is maintained (or the distance is maintained).
[0096] In this embodiment, when the distance discrimination parameter is in the distance holding interval, the guidance speed information is determined by obtaining the real-time speed of the pilot robot, which can avoid frequent changes in the speed of the pilot robot due to slight fluctuations in the interval distance between the pilot robot and the pilot object, thereby avoiding the speed of the pilot robot from oscillating back and forth.
[0097] Based on this, the server can determine that within the constraints of the navigation control speed range, the segmented speed of the pilot robot when performing the navigation task is expressed as follows:
[0098]
[0099] Among them, v l is the speed information of the pilot robot when performing the pilot task, v t is the real-time speed of the pilot robot at time t, v min ,v max are the minimum and maximum linear speeds of the pilot robot, E t is the distance discrimination parameter at time t, d is the upper limit distance of the distance keeping interval, α is the attenuation coefficient, which is used to control the steepness of the deceleration curve, and β is the gain coefficient, which is used to control the intensity of acceleration.
[0100] In one embodiment, the constraint control speed interval is determined based on the real-time speed of the pilot robot, motion constraints, and current environmental information around the pilot robot, including:
[0101] Based on the speed constraint in the motion constraint of the pilot robot, the basic speed range of the pilot robot under the structural speed constraint is determined; based on the current speed of the pilot robot and the acceleration constraint in the motion constraint, the dynamic speed range of the pilot robot under the acceleration constraint is determined; based on the current environmental information around the pilot robot, the obstacle avoidance speed range of the pilot robot under the obstacle constraint is determined; based on the basic speed range, dynamic speed range and obstacle avoidance speed range, the constraint control speed range is determined.
[0102] Structural speed constraints refer to speed limits set based on the characteristics of the pilot robot's mechanical structure and power system. Because the pilot robot's mechanical structure (such as joints, transmission components, etc.) and power system (such as motors and batteries) have upper limits on their tolerance, structural speed constraints ensure that the pilot robot's mechanical structure does not suffer damage or excessive wear due to excessive speeds during movement. Structural speed constraints protect the pilot robot's hardware, extend its service life, and ensure the robot's stability and reliability during movement. For example, if the robot's motor is prone to overheating or damage at high speeds, structural speed constraints will limit the pilot robot's maximum speed to prevent the motor from being under high load for extended periods. The basic speed range refers to the permissible speed range for the pilot robot's movement, determined after considering the pilot robot's structural speed constraints. In practice, the basic speed range can be the basic speed range within which the pilot robot can safely operate, ignoring other dynamic factors (such as acceleration changes and obstacles). This range can be determined by the minimum linear velocity, maximum linear velocity, minimum angular velocity, and maximum angular velocity.
[0103] Acceleration constraints limit the rate of change of the pilot robot's velocity. They govern the maximum and minimum velocity changes, as well as the pattern of acceleration changes, during acceleration and deceleration. By limiting the magnitude and rate of acceleration, the pilot robot can ensure smooth transitions during acceleration and deceleration, improving the quality and safety of its motion. The dynamic speed range is the permissible speed range for the pilot robot, determined based on its current velocity and subject to the acceleration constraints. The dynamic speed range adjusts in real time as the pilot robot's current velocity and acceleration change. During motion, the pilot robot must select an appropriate speed within the dynamic speed range based on its current velocity and acceleration to ensure smooth and safe motion. For example, when the pilot robot is accelerating, the dynamic speed range determines an upper speed limit based on the magnitude of the acceleration and the remaining acceleration time. This prevents the pilot robot from exceeding the safe range due to excessive acceleration. The dynamic speed range is determined by the pilot robot's minimum linear acceleration, maximum linear acceleration, minimum angular acceleration, and maximum angular acceleration.
[0104] Obstacle constraints refer to the speed limits that a pilot robot must adhere to when faced with obstacles in its surroundings. Obstacles can be fixed, such as walls and pillars, or mobile, such as pedestrians or other robots. In an environment with obstacles, the pilot robot must adjust its trajectory and speed based on information such as the obstacle's location, size, and motion state to avoid collisions. The obstacle avoidance speed range is a permissible speed range determined by considering the current environment around the pilot robot (particularly the location and distance of the obstacle) to avoid collisions. When an obstacle is detected near the pilot robot, an appropriate obstacle avoidance speed range is calculated based on the obstacle's distance and motion state. Within this range, an appropriate speed is determined to control the pilot robot's movement and ensure safe avoidance. By selecting a speed within the obstacle avoidance speed range, the pilot robot can maintain its guidance mission as much as possible while ensuring safety. For example, when an obstacle is close, the obstacle avoidance speed range may limit the pilot robot's maximum speed, giving it sufficient time and distance to adjust its trajectory and avoid collisions.
[0105] The constrained control speed range is a combination of the base speed range, dynamic speed range, and obstacle avoidance speed range to determine the final allowable speed range of the pilot robot during movement. This allows the pilot robot to move within the constraints of this speed range during actual operation, ensuring safe and stable operation and successful completion of the guidance mission. For example, if the base speed range, dynamic speed range, and obstacle avoidance speed range overlap, the constrained control speed range can be this overlapping portion. If there is no complete overlap, it is necessary to comprehensively consider the limitations of each range to determine a reasonable final speed range.
[0106] For example, the server can determine the minimum linear velocity, maximum linear velocity, minimum angular velocity and maximum angular velocity of the pilot robot based on the mechanical structure and motion characteristics of the pilot robot. Afterwards, the server can combine the minimum linear velocity, maximum linear velocity, minimum angular velocity and maximum angular velocity to obtain the basic speed range of the pilot robot under the structural speed constraint. The server can obtain the current speed of the pilot robot at the current moment through the gyroscope set on the pilot robot, and determine the minimum linear acceleration, maximum linear acceleration, minimum angular acceleration and maximum angular acceleration of the pilot robot according to the mechanical structure and motion characteristics of the pilot robot. Afterwards, the server can determine the upper limit of the linear velocity, the lower limit of the linear velocity, the upper limit of the angular velocity and the lower limit of the angular velocity of the pilot robot under the limitations of the minimum linear acceleration, maximum linear acceleration, minimum angular acceleration and maximum angular acceleration according to the current speed of the pilot robot and the minimum linear acceleration, maximum linear acceleration, minimum angular acceleration and maximum angular acceleration of the pilot robot. The server then combines the upper limit of the linear velocity, the lower limit of the linear velocity, the upper limit of the angular velocity and the lower limit of the angular velocity to obtain the dynamic speed range of the pilot robot under the acceleration constraint. The server can collect images of the surrounding environment using the pilot robot's 3D lidar, camera, and other devices to obtain information about the current environment around the pilot robot. The server can then determine whether there are obstacles based on this information. If an obstacle is confirmed, the server can determine the pilot robot's movement speed under obstacle constraints based on the positional relationship between the obstacle and the pilot robot and the pilot robot's current speed. The server then determines the obstacle avoidance speed range based on this movement speed. Finally, the server can intersect the basic speed range, dynamic speed range, and obstacle avoidance speed range to obtain the constrained control speed range.
[0107] In an optional embodiment, the server may combine the basic speed interval, the dynamic speed interval, the obstacle avoidance speed interval, and the navigation control speed interval, that is, find the intersection of the four speed intervals to obtain the target speed sampling interval of the navigation robot, which is expressed as:
[0108] V=V m +V a+V d +V l (6)
[0109] Among them, V is the target speed sampling interval, V m is the basic speed range, V a is the dynamic speed range, V d is the obstacle avoidance speed range, V l Control the speed range for navigation.
[0110] In this embodiment, the basic and dynamic speed ranges are determined respectively by comprehensively considering the speed and acceleration constraints. At the same time, the obstacle avoidance speed range is determined in combination with the current environmental information. Finally, the three ranges are integrated to determine the constraint control speed range, so that the pilot robot can flexibly adjust its speed according to its own state and environmental changes, which can enhance the adaptability and reliability of the pilot robot control.
[0111] In one embodiment, performing speed sampling in a target speed sampling interval, determining at least one candidate trajectory based on the speed sampling result, and determining a target trajectory from the at least one candidate trajectory includes:
[0112] Speed sampling is performed on a target speed sampling interval to obtain at least one speed combination; each speed combination includes a linear speed and an angular speed; for the linear speed and angular speed in each speed combination, a pre-constructed kinematic model is used to predict the motion trajectory of the pilot robot within a preset pilot time based on the linear speed and angular speed in the targeted speed combination, and a candidate trajectory corresponding to the pilot robot when moving according to the targeted speed combination is obtained; the candidate trajectory corresponding to each of the at least one speed combination is scored by a trajectory evaluation model to obtain a trajectory score for the candidate trajectory corresponding to each of the at least one speed combination; the trajectory evaluation model is constructed based on at least one of speed evaluation, obstacle avoidance evaluation, azimuth evaluation and navigation control evaluation for the candidate trajectory; based on the trajectory score of the candidate trajectory corresponding to each of the at least one speed combination, a target trajectory is determined from the at least one candidate trajectory.
[0113] A speed combination is a set of speeds obtained after sampling the target speed sampling interval. Each speed combination contains information about the possible speeds of the pilot robot at a specific moment or stage, and is used to describe the speed state of the pilot robot's motion. By evaluating and screening different speed combinations, the speed solution that best suits the current environment and task requirements can be found, thereby optimizing the pilot robot's motion performance. Each speed combination includes linear velocity and angular velocity. Linear velocity refers to the instantaneous speed of the pilot robot in the direction of motion, representing the distance the pilot robot travels in a straight line per unit time. It is used to determine the amount of forward or backward displacement of the pilot robot per unit time. Angular velocity refers to the instantaneous speed of the pilot robot rotating about its own axis. It represents the angle the pilot robot turns per unit time and is used to determine the steering speed of the pilot robot.
[0114] A pre-built kinematic model is a mathematical model established based on the physical structure, motion characteristics, and motion laws of the pilot robot. It describes the relationship between the pilot robot's motion state (such as position, velocity, acceleration, etc.) and input control variables (such as linear velocity and angular velocity). The kinematic model can be used to predict the pilot robot's trajectory for a given velocity combination. By inputting the linear velocity and angular velocity from the velocity combination into the kinematic model, the kinematic model can be used to determine the position and posture changes of the pilot robot over a period of time, thereby generating candidate trajectories. The preset pilot time is a pre-set duration used when evaluating velocity combinations and predicting trajectories. During the preset pilot time, the pilot robot will move according to the selected velocity combination, and the kinematic model predicts the robot's trajectory based on the preset pilot time. A trajectory is a collection of positions that the pilot robot passes through during its movement, describing its path in space. The trajectory can be used to evaluate the quality of velocity combinations. Specifically, by analyzing the trajectory, it can be determined whether the robot can complete the guidance task as expected, avoid obstacles, and maintain smooth motion.
[0115] The trajectory score is a numerical value obtained by quantitatively evaluating candidate trajectories using a trajectory evaluation model. It reflects the candidate's overall performance in terms of meeting task requirements, avoiding obstacles, and maintaining smooth motion. The trajectory score can be used to rank and screen candidate trajectories. A higher trajectory score indicates that the candidate trajectory meets the requirements more effectively and is more likely to be selected as the target trajectory. By scoring candidate trajectories, the optimal target trajectory can be selected to guide the pilot robot's actual motion. The trajectory evaluation model is constructed based on at least one of the following evaluation criteria: speed, obstacle avoidance, azimuth, and pilot control. Speed evaluation evaluates the current speed of the pilot robot in the candidate trajectory; obstacle avoidance evaluates the positional relationship between the pilot robot and obstacles in the candidate trajectory; azimuth evaluates the difference in angle between the trajectory endpoint and the line connecting the target point, generated at the current sampling speed; and pilot control evaluates the distance between the pilot robot and the pilot object in the candidate trajectory under pilot control.
[0116] For example, the server may sample the speed within the target speed sampling interval at equal speed intervals to obtain multiple speed combinations including linear and angular velocities. For each linear and angular velocity in each speed combination, the server may use a pre-built kinematic model to predict the distance and direction that the pilot robot will travel within a preset pilot time based on the linear and angular velocities, according to the pilot robot's current acceleration. The server may then predict the linear and angular velocities of the pilot robot during the preset pilot time, thereby obtaining candidate trajectories corresponding to the pilot robot when moving according to the targeted speed combination. The server may construct a trajectory evaluation model based on speed evaluation, obstacle avoidance evaluation, azimuth evaluation, and pilot control evaluation, and may use the trajectory evaluation model to score the candidate trajectories corresponding to each speed combination, obtaining a trajectory score for the candidate trajectory corresponding to at least one speed combination. Finally, based on the trajectory scores of the candidate trajectories corresponding to at least one speed combination, the server may determine the candidate trajectory with the lowest trajectory score as the target trajectory.
[0117] In specific implementations, the trajectory evaluation model can use multiple evaluation functions to evaluate candidate trajectories based on speed, obstacle avoidance, azimuth, and navigation control. For example, the trajectory evaluation model can include speed, obstacle avoidance, azimuth, and navigation control functions to score each candidate trajectory.
[0118] In an optional embodiment, the server may use the speed evaluation function, obstacle avoidance evaluation function, azimuth evaluation function and navigation control evaluation function to score the candidate trajectory respectively, and obtain the corresponding speed evaluation score, obstacle avoidance evaluation score, azimuth evaluation score and navigation control evaluation score. After that, the server may fuse the speed evaluation score, obstacle avoidance evaluation score, azimuth evaluation score and navigation control evaluation score, and the fusion method includes but is not limited to weighting, averaging, addition, etc. to obtain the trajectory score of each candidate trajectory. The trajectory score can be expressed as:
[0119] G(v,ω)=σ(α·head(v,ω)+β·vel(v,ω)+γ·dist(v,ω)+η·L(v,ω)) (7)
[0120] Among them, G(v,ω) is the trajectory evaluation model, which can represent the trajectory score, head(v,ω) is the azimuth evaluation function, whose value can represent the azimuth evaluation score, α is the weight coefficient of the azimuth evaluation score, vel(v,ω) is the speed evaluation function, whose value can represent the speed evaluation score, β is the weight coefficient of the speed evaluation score, dist(v,ω) is the obstacle avoidance evaluation function, whose value can represent the obstacle avoidance evaluation score, γ is the weight coefficient of the obstacle avoidance evaluation score, L(v,ω) is the pilot control evaluation function, whose value can represent the pilot control evaluation score, η is the weight coefficient of the pilot control evaluation score, σ is the normalization processing, v and ω are the linear velocity and angular velocity in the candidate trajectory, respectively.
[0121] Optionally, the server may determine the azimuth evaluation score based on the difference between the position direction of the trajectory endpoint generated by the pilot robot at the currently sampled speed and the angle between the line connecting the target points, that is:
[0122] head(v,ω)=π-θ (8)
[0123] Where head(v,ω) is the azimuth evaluation function, and its value can represent the azimuth evaluation score. v and ω are the linear velocity and angular velocity in the candidate trajectory, respectively. π represents 180°, and θ is the difference between the angle between the end position direction of the trajectory generated by the pilot robot at the current sampled velocity and the line connecting the target point.
[0124] The server can determine the speed evaluation score based on the current speed (linear speed) of the pilot robot at the current moment. That is:
[0125] vel(v,ω)=|v t | (9)
[0126] Among them, vel(v,ω) is the speed evaluation function, and its value can represent the speed evaluation score. v and ω are the linear velocity and angular velocity in the candidate trajectory respectively. t is the current speed of the pilot robot at the current moment (time t).
[0127] The server can determine the obstacle avoidance evaluation score based on the position coordinates of the pilot robot moving on the candidate trajectory and the position coordinates of the obstacle, namely:
[0128]
[0129] Among them, dist(v,ω) is the obstacle avoidance evaluation function, and its value can represent the obstacle avoidance evaluation score. v and ω are the linear velocity and angular velocity in the candidate trajectory, respectively. (x,y) is the position coordinate of the pilot robot in the candidate trajectory, and (x',y') is the position coordinate of the obstacle.
[0130] The server can determine the pilot control evaluation score based on the distance discrimination parameter and the limit distance of the distance keeping interval, namely:
[0131] L(v,ω)=||E t |-d| (11)
[0132] Among them, L(v,ω) is the pilot control evaluation function, and its value can represent the pilot control evaluation score. v and ω are the linear velocity and angular velocity in the candidate trajectory respectively. E t is the distance discrimination parameter, and d is the upper limit distance of the distance preservation interval.
[0133] In this embodiment, multiple speed combinations are obtained by sampling the target speed sampling interval, the candidate trajectories corresponding to each speed combination are predicted through the kinematic model, and the candidate trajectories are scored based on a trajectory evaluation model that includes multi-dimensional evaluations such as speed, obstacle avoidance, angle, and navigation control. Finally, the target trajectory is determined based on the trajectory score. This can comprehensively consider various possible motion conditions of the navigation robot, scientifically and objectively evaluate the pros and cons of each candidate trajectory, and effectively balance multiple requirements such as speed, obstacle avoidance, azimuth, and navigation control, which is conducive to improving the accuracy, safety, and efficiency of navigation.
[0134] In one embodiment, the method for determining the navigation trajectory further includes:
[0135] Obtain at least one of the real-time speed of the pilot robot, the real-time distance between the pilot robot and the pilot object, and the real-time environmental information of the pilot robot; and when at least one of the real-time speed, the real-time distance, and the real-time environmental information satisfies a speed space update condition, update the target speed sampling interval to obtain an updated target speed sampling interval.
[0136] The real-time distance refers to the actual distance between the pilot robot and the pilot object at the current moment. This distance can change continuously with the relative motion of the pilot robot and the pilot object. By monitoring the real-time distance in real time, the robot's motion strategy can be adjusted to ensure that the robot maintains an appropriate distance from the pilot object, avoiding guidance failure due to excessive distance or collision due to close distance. Real-time environmental information refers to the various characteristics and status information of the pilot robot's surroundings at the current moment. By monitoring the pilot robot's real-time environmental information, the server can plan its motion path, adjust its speed and direction, avoid obstacles, adapt to different ground conditions, and ensure stable operation in various environments. For example, when an obstacle is detected ahead, the robot needs to adjust its speed or change direction to avoid a collision.
[0137] Speed space update conditions are pre-set criteria used to determine whether to update the target speed sampling interval. In practice, these conditions can be formulated based on changes in parameters such as real-time speed, real-time distance, and real-time environmental information. This ensures that the server can promptly adjust the target speed sampling interval based on the pilot robot's actual operating conditions, adapting to varying environments and mission requirements. When real-time parameters meet the update conditions, it indicates that the pilot robot's operating state or surrounding environment has significantly changed, necessitating an update to the target speed sampling interval to ensure the pilot robot selects a more appropriate speed combination to complete the mission. For example, a speed space update condition may be triggered when the deviation between the real-time speed and the target speed exceeds a certain threshold; an update to the target speed sampling interval may also be necessary when the real-time distance falls below or exceeds a certain safety range; and a speed space update can also be triggered if real-time environmental information indicates an obstacle ahead or changes in ground conditions.
[0138] Updating the target speed sampling interval means adjusting and modifying the original target speed sampling interval according to the changes in parameters such as real-time speed, real-time distance and real-time environmental information, as well as the preset speed space update conditions, to obtain a new target speed sampling interval that is more in line with the current actual situation, so that the pilot robot can select a more appropriate speed combination in the subsequent speed sampling process, thereby improving the pilot robot's motion performance and task completion efficiency.
[0139] Exemplarily, the server can obtain the real-time speed of the pilot robot, the real-time distance between the pilot robot and the pilot object, and the real-time environmental information of the pilot robot through a gyroscope, camera, etc. set on the pilot robot; when any one of the real-time speed, real-time distance or real-time environmental information meets the corresponding speed space update conditions, the target speed sampling interval is updated to obtain an updated target speed sampling interval. For example, when the real-time speed is too fast, causing the difference between the real-time distance and the distance constraint condition (distance judgment parameter) to deviate from the distance holding interval, the server can redetermine the target speed sampling interval based on the real-time speed, real-time distance and real-time environmental information of the pilot robot at the current moment to update the existing target speed sampling interval to obtain an updated target speed sampling interval.
[0140] In this embodiment, by obtaining at least one of the real-time speed of the pilot robot, the real-time distance between the pilot robot and the pilot object, and the real-time environmental information, when any one of the real-time speed, real-time distance or real-time environmental information meets the speed space update condition, the target speed sampling interval is dynamically updated, which can make the sampling interval more in line with the current actual scene, and then control the pilot robot to flexibly adjust the speed sampling range according to the real-time situation, ensuring that the subsequently planned speed combination and trajectory are more reasonable and safe, so as to further improve the adaptability and reliability of navigation, and enhance the ability of the pilot robot to cope with complex and changing environments.
[0141] In an application example, the method for determining the navigation trajectory is explained by taking the pilot robot as a four-legged mobile inspection robot. Figure 4 As shown, the pilot robot is equipped with a solid-state three-dimensional laser radar, a binocular camera (the pilot uses a camera installed on the tail of the quadruped robot), a voice module, a gigabit switch, a wireless AP (Access Point) and an industrial computer. The solid-state three-dimensional laser radar is used for the positioning of the pilot robot itself, the binocular camera is used to identify the position of the pilot object and the surrounding obstacles, the voice module is used for voice interaction between the pilot robot and the pilot object, the gigabit switch is used for data exchange between different devices, the wireless AP is used to provide wireless network services for the pilot robot, and the industrial computer is used to deploy software algorithms to the pilot robot so that the server can control the actions of the pilot robot.
[0142] Figure 5 The control block diagram for path planning and determination of the pilot robot is shown. Figure 6 The workflow of the method for determining the pilot trajectory is shown, which specifically includes:
[0143] The first step is the preliminary preparation for navigation. Before executing the non-contact intelligent navigation task, the server needs to build a two-dimensional environment map (grid map), such as Figure 7As shown in Figure 1, this includes traversable areas (white), impassable areas (black), and unknown areas (gray). The pilot robot can move within the traversable area while automatically avoiding various static and dynamic obstacles. Furthermore, it is necessary to mark some target points on the map in advance and obtain their coordinate information on the map. The coordinate information is shown in Table 1.
[0144] Table 1
[0145] name x-axis coordinate y-axis coordinate Yaw angle (yaw) origin 0.0m 0.0m 0° Point A 7.348m -1.457m 10.741° Point B 8.379m -6.366m -77.795° Point C -0.044m 14.186m -90.049°
[0146] The second step is to initialize the pilot robot. The pilot robot is in standby mode, and its binocular camera detects and identifies pilot objects within its field of view. During a piloting mission, the pilot robot leads the way, with the pilot object following behind. Using the binocular camera mounted on the pilot robot's tail, when a pilot object enters its field of view, the robot can provide a voice prompt to determine whether to execute the pilot function. The robot also uses the YOLOSterero3D 3D object detection algorithm to identify and detect the pilot object. When a pilot object is present in its field of view, a 3D box is generated around it, containing its position coordinates and movement speed.
[0147] The third step is the start of navigation. When a navigation task is required, the server can load the previously constructed two-dimensional grid navigation map based on the laser SLAM (Simultaneous Localization and Mapping) algorithm. By matching the current lidar point cloud data with the map, the server can locate the navigation robot, initialize the navigation robot's pose information, and visualize it on Rviz (Robot Visualization Tool, a three-dimensional visualization tool). Subsequently, the server can obtain voice commands from the navigation object through the voice module, parse the voice commands to determine the navigation target location, and autonomously plan the global path. At the same time, the server will issue a voice prompt "Start navigation".
[0148] The fourth step is the piloting process. The pilot robot non-contactly guides the pilot object to the target location. Using a 3D lidar sensor to sense the surrounding environment in real time, it automatically avoids static and dynamic obstacles, ensuring that the pilot robot maintains an appropriate distance from the pilot object. If the distance is too large, the pilot robot decelerates; if the distance is too small, the pilot robot accelerates. During piloting, the distance constraint (optimal distance) is 1 meter, and the distance interval is [0.9, 1.1].
[0149] Because the pilot robot's navigation of the piloted object is contactless, the voice module not only receives commands but also provides guidance information throughout the entire process. During the navigation process, the robot provides voice prompts, such as "Please follow me" or "About to turn left," ensuring that the piloted object understands the guidance intent in real time, enhancing guidance effectiveness and safety. Various unexpected situations may arise during the navigation process, such as the piloted object not following and causing it to be lost. This can occur when the piloted object does not want to proceed to the target location and becomes preoccupied with other matters, or when the piloted object suddenly disappears from the camera's field of view during a turn. Several measures can be taken to address this issue. First, the pilot robot can stop in place and provide voice prompts to ensure that the piloted object follows. If the piloted object follows within a preset time (e.g., 15 seconds), the piloted object continues its navigation mission. If the piloted object does not follow after the preset time, the piloted robot can terminate the current navigation mission and automatically return to its initial position for the next navigation attempt.
[0150] Step 5: Navigation mission completed. The pilot robot safely and smoothly guides the pilot object to the target location, completing the current navigation mission and automatically returning to the initial origin or performing the next navigation mission at the current location.
[0151] The sixth step is to test the repeatability of the navigation function. The repeatability test can include performing continuous navigation between two points and continuous navigation between multiple points to test the stability and reliability of the navigation process. Figure 8 and Figure 9 The results of the closed-loop navigation test from the origin to point A and from point A to the origin are shown. During the test, the pilot object was also lost and then re-followed. Figure 10 、 Figure 11 and Figure 12 The results of the navigation test from the origin to point A, point A to point B, point B to point C, and finally back to the origin are shown. From the test results, we can see that the distance between the navigation robot and the navigation object is negatively correlated with the linear speed of the navigation robot; Figure 9 and Figure 11 It can be seen that using this method, the distance between the pilot robot and the pilot object is around 1 meter, which is consistent with the set optimal distance.
[0152] It should be understood that, although the various steps in the flowcharts involved in the various embodiments described above are displayed in sequence according to the instructions of the arrows, these steps are not necessarily performed in sequence in the order indicated by the arrows. Unless clearly stated herein, the execution of these steps is not strictly limited in order, and these steps can be performed in other orders. Moreover, at least a portion of the steps in the flowcharts involved in the various embodiments described above may include multiple steps or multiple stages, and these steps or stages are not necessarily performed at the same time, but can be performed at different times, and the execution order of these steps or stages is not necessarily performed in sequence, but can be performed in turn or alternately with at least a portion of the steps or stages in other steps or other steps. It is understandable that the various steps in different embodiments can be freely combined as needed, and the various non-contradictory schemes formed by the combination all fall within the scope of protection of this application.
[0153] Based on the same inventive concept, embodiments of the present application also provide a device for determining a pilot trajectory for implementing the aforementioned method for determining a pilot trajectory. The solution provided by this device is similar to the solution described in the aforementioned method. Therefore, the specific limitations of one or more embodiments of the device for determining a pilot trajectory provided below can be found in the aforementioned limitations of the method for determining a pilot trajectory, and will not be further elaborated here.
[0154] In an exemplary embodiment, Figure 13 As shown, a device for determining a pilot trajectory is provided, comprising: a pilot information determination module 1302, a speed interval determination module 1304, a speed interval fusion module 1306, and a pilot trajectory determination module 1308, wherein:
[0155] A navigation information determination module 1302 is used to determine the distance information and distance constraints between the pilot robot and the pilot object, as well as the motion constraints of the pilot robot;
[0156] A speed interval determination module 1304 is configured to determine a navigation control speed interval of the pilot robot when guiding the pilot object based on the motion constraint, the distance information, and the distance constraint.
[0157] The speed interval fusion module 1306 is configured to determine a target speed sampling interval based on the pilot control speed interval and the pilot robot's constraint control speed interval; the constraint control speed interval is determined based on the pilot robot's real-time speed, motion constraints, and current environmental information surrounding the pilot robot;
[0158] The pilot trajectory determination module 1308 is used to perform speed sampling in the target speed sampling interval, determine at least one candidate trajectory based on the speed sampling results, and determine a target trajectory from the at least one candidate trajectory; the target trajectory is used to instruct the pilot robot to guide the pilot object.
[0159] In an optional embodiment, the speed interval determination module 1304 is also used to determine the distance discrimination parameter between the pilot robot and the pilot object based on the distance information and the distance constraint condition; when the distance discrimination parameter does not belong to the distance maintenance interval, the motion constraint condition of the pilot robot is obtained, and based on the motion constraint condition and the distance discrimination parameter, the speed information of the pilot robot when guiding the pilot object is determined; and the navigation control speed interval is determined based on the speed information.
[0160] In an optional embodiment, the speed interval determination module 1304 is also used to obtain the speed constraint condition in the motion constraint condition of the pilot robot when the distance discrimination parameter is greater than the upper limit distance of the distance holding interval, and determine the speed information of the pilot robot when guiding the pilot object based on the speed constraint condition, the distance discrimination parameter and the upper limit distance; or to obtain the speed constraint condition in the motion constraint condition of the pilot robot when the distance discrimination parameter is less than the lower limit distance of the distance holding interval, and determine the speed information of the pilot robot when guiding the pilot object based on the speed constraint condition, the distance discrimination parameter and the lower limit distance.
[0161] In an optional embodiment, the speed interval determination module 1304 is further configured to obtain the real-time speed of the pilot robot when the distance discrimination parameter belongs to the distance keeping interval, and determine the speed information of the pilot robot when guiding the pilot object based on the real-time speed.
[0162] In an optional embodiment, the speed range fusion module 1306 is also used to determine the basic speed range of the pilot robot under the structural speed constraint based on the speed constraint in the motion constraint of the pilot robot; determine the dynamic speed range of the pilot robot under the acceleration constraint based on the current speed of the pilot robot and the acceleration constraint in the motion constraint; determine the obstacle avoidance speed range of the pilot robot under the obstacle constraint based on the current environmental information around the pilot robot; and determine the constraint control speed range based on the basic speed range, the dynamic speed range and the obstacle avoidance speed range.
[0163] In an optional embodiment, the navigation trajectory determination module 1308 is further used to perform speed sampling on the target speed sampling interval to obtain at least one speed combination; each speed combination includes a linear velocity and an angular velocity; for the linear velocity and angular velocity in each speed combination, a pre-constructed kinematic model is used to predict the motion trajectory of the navigation robot within a preset navigation time based on the linear velocity and angular velocity in the targeted speed combination, and obtain the candidate trajectory corresponding to the navigation robot when moving according to the targeted speed combination; the candidate trajectory corresponding to each of the at least one speed combination is scored by the trajectory evaluation model to obtain a trajectory score of the candidate trajectory corresponding to each of the at least one speed combination; the trajectory evaluation model is constructed based on at least one of the speed evaluation, obstacle avoidance evaluation, azimuth evaluation and navigation control evaluation for the candidate trajectory; based on the trajectory score of the candidate trajectory corresponding to each of the at least one speed combination, the target trajectory is determined from the at least one candidate trajectory.
[0164] In an optional embodiment, the navigation trajectory determination device also includes a speed interval update module, which is used to obtain at least one of the real-time speed of the navigation robot, the real-time distance between the navigation robot and the navigation object, and the real-time environmental information of the navigation robot; when at least one of the real-time speed, real-time distance and real-time environmental information meets the speed space update condition, the target speed sampling interval is updated to obtain an updated target speed sampling interval.
[0165] Each module in the aforementioned navigation trajectory determination device may be implemented in whole or in part through software, hardware, or a combination thereof. Each module may be embedded in or independent of a processor within a computer device in the form of hardware, or may be stored in a computer device memory in the form of software, so that the processor can call and execute the corresponding operations of each module.
[0166] In an exemplary embodiment, a computer device is provided. The computer device may be a server, and its internal structure diagram may be as shown in FIG. Figure 14As shown. The computer device includes a processor, a memory, an input / output interface (Input / Output, abbreviated as I / O) and a communication interface. The processor, memory and input / output interface are connected through a system bus, and the communication interface is connected to the system bus through the input / output interface. The processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, a computer program and a database. The internal memory provides an environment for the operation of the operating system and computer program in the non-volatile storage medium. The database of the computer device is used to store data such as navigation maps, distance constraints, motion constraints, and distance keeping intervals. The input / output interface of the computer device is used to exchange information between the processor and an external device. The communication interface of the computer device is used to communicate with an external terminal through a network connection. When the computer program is executed by the processor, a method for determining a navigation trajectory is implemented.
[0167] Those skilled in the art will understand that Figure 14 The structure shown in the figure is only a block diagram of a part of the structure related to the solution of the present application, and does not constitute a limitation on the computer device to which the solution of the present application is applied. The specific computer device may include more or fewer components than shown in the figure, or combine certain components, or have a different component arrangement.
[0168] In an exemplary embodiment, a computer device is provided, including a memory and a processor. The memory stores a computer program, and the processor implements the method for determining the pilot trajectory of the above embodiment when executing the computer program.
[0169] In one embodiment, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, the method for determining the pilot trajectory of the above embodiment is implemented.
[0170] In one embodiment, a computer program product is provided, including a computer program. When the computer program is executed by a processor, the method for determining the pilot trajectory of the above embodiment is implemented.
[0171] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, stored data, displayed data, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of relevant data must comply with relevant regulations.
[0172] Those skilled in the art will appreciate that all or part of the processes in the above-mentioned embodiment methods can be implemented by instructing the relevant hardware through a computer program, and the computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to memory, database or other media used in the embodiments provided in this application may include at least one of non-volatile memory and volatile memory. Non-volatile memory may include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory may include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can be in various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM). The database involved in the various embodiments provided herein may include at least one of a relational database and a non-relational database. Non-relational databases may include, but are not limited to, distributed databases based on blockchains. The processor involved in the various embodiments provided herein may be, but are not limited to, a general-purpose processor, a central processing unit (CPU), a graphics processing unit (GPU), a digital signal processor (DSP), a programmable logic unit (PLC), a data processing logic unit based on quantum computing, an artificial intelligence (AI) processor, and the like.
[0173] The technical features of the above embodiments can be combined arbitrarily. In order to make the description concise, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this application.
[0174] The above-described embodiments merely represent several implementation methods of the present application. While the descriptions are relatively specific and detailed, they should not be construed as limiting the scope of the present application. It should be noted that a person of ordinary skill in the art may make various modifications and improvements without departing from the spirit of the present application, and these modifications and improvements fall within the scope of protection of the present application. Therefore, the scope of protection of the present application shall be determined by the appended claims.
Claims
1. A method for determining a navigation trajectory, characterized in that: The method comprises: Determining distance information and distance constraints between the pilot robot and the pilot object, as well as motion constraints of the pilot robot; determining, based on the motion constraint, the distance information, and the distance constraint, a navigation control speed range for the pilot robot when guiding the pilot object; determining a target speed sampling interval according to the pilot control speed interval and the constraint control speed interval of the pilot robot; the constraint control speed interval is determined based on the real-time speed of the pilot robot, the motion constraint condition, and current environmental information around the pilot robot; Speed sampling is performed on the target speed sampling interval, at least one candidate trajectory is determined based on the speed sampling result, and a target trajectory is determined from the at least one candidate trajectory; the target trajectory is used to instruct the pilot robot to guide the pilot object.
2. The method according to claim 1, characterized in that The determining, based on the motion constraint, the distance information, and the distance constraint, of a navigation control speed range for the pilot robot when guiding the pilot object includes: Determining a distance discrimination parameter between the pilot robot and the pilot object according to the distance information and the distance constraint condition; When the distance discrimination parameter does not belong to the distance keeping interval, obtaining motion constraints of the pilot robot, and determining speed information of the pilot robot when guiding the pilot object based on the motion constraints and the distance discrimination parameter; The navigation control speed range is determined according to the speed information.
3. The method according to claim 2, characterized in that When the distance discrimination parameter does not belong to the distance keeping interval, obtaining the motion constraint condition of the pilot robot, and determining the speed information of the pilot robot when guiding the pilot object based on the motion constraint condition and the distance discrimination parameter, includes at least one of the following: When the distance discrimination parameter is greater than an upper limit distance of the distance maintenance interval, obtaining a speed constraint condition in the motion constraint conditions of the pilot robot, and determining speed information of the pilot robot when guiding the pilot object based on the speed constraint condition, the distance discrimination parameter, and the upper limit distance; When the distance discrimination parameter is less than the lower limit distance of the distance maintenance interval, the speed constraint condition in the motion constraint condition of the pilot robot is obtained, and the speed information of the pilot robot when guiding the pilot object is determined based on the speed constraint condition, the distance discrimination parameter and the lower limit distance.
4. The method according to claim 2, characterized in that The method further comprises: When the distance discrimination parameter belongs to the distance keeping interval, the real-time speed of the pilot robot is acquired, and speed information of the pilot robot when guiding the pilot object is determined according to the real-time speed.
5. The method according to claim 1, wherein The constraint control speed interval is determined based on the real-time speed of the pilot robot, the motion constraint condition, and current environmental information around the pilot robot, including: Determining a basic speed range of the pilot robot under structural speed constraints based on a speed constraint in the motion constraints of the pilot robot; Determining a dynamic speed range of the pilot robot under the acceleration constraint based on the current speed of the pilot robot and the acceleration constraint in the motion constraint; determining an obstacle avoidance speed range of the pilot robot under obstacle constraints based on current environmental information around the pilot robot; A constraint control speed range is determined according to the basic speed range, the dynamic speed range, and the obstacle avoidance speed range.
6. The method according to claim 1, wherein The performing speed sampling on the target speed sampling interval, determining at least one candidate trajectory according to the speed sampling result, and determining the target trajectory from the at least one candidate trajectory includes: Performing speed sampling on the target speed sampling interval to obtain at least one speed combination; each of the speed combinations includes a linear speed and an angular speed; For each of the linear velocities and angular velocities in the speed combination, using a pre-built kinematic model, a motion trajectory of the pilot robot within a preset pilot time is predicted based on the linear velocities and angular velocities in the speed combination, thereby obtaining a candidate trajectory corresponding to the pilot robot when moving according to the speed combination; Scoring the candidate trajectories corresponding to each of the at least one speed combination using a trajectory evaluation model to obtain trajectory scores for the candidate trajectories corresponding to each of the at least one speed combination; the trajectory evaluation model is constructed based on at least one of a speed evaluation, an obstacle avoidance evaluation, an azimuth evaluation, and a navigation control evaluation for the candidate trajectories; A target trajectory is determined from the at least one candidate trajectory based on the trajectory scores of the candidate trajectories corresponding to each of the at least one speed combination.
7. The method according to any one of claims 1 to 6, characterized in that The method further comprises: Acquire at least one of the real-time speed of the pilot robot, the real-time distance between the pilot robot and the pilot object, and the real-time environmental information of the pilot robot; When at least one of the real-time speed, the real-time distance, and the real-time environment information meets a speed space update condition, the target speed sampling interval is updated to obtain an updated target speed sampling interval.
8. A device for determining a navigation trajectory, characterized in that: The device comprises: A navigation information determination module, configured to determine distance information and distance constraints between the pilot robot and the pilot object, as well as motion constraints of the pilot robot; a speed interval determination module, configured to determine a navigation control speed interval of the pilot robot when guiding the pilot object based on the motion constraint, the distance information, and the distance constraint; a speed interval fusion module, configured to determine a target speed sampling interval based on the pilot control speed interval and the constraint control speed interval of the pilot robot; the constraint control speed interval is determined based on the real-time speed of the pilot robot, the motion constraint conditions, and current environmental information surrounding the pilot robot; A pilot trajectory determination module is configured to perform speed sampling in the target speed sampling interval, determine at least one candidate trajectory based on the speed sampling results, and determine a target trajectory from the at least one candidate trajectory; the target trajectory is used to instruct the pilot robot to guide the pilot object.
9. A computer device comprising a memory and a processor, wherein the memory stores a computer program, wherein: When the processor executes the computer program, the steps of the method according to any one of claims 1 to 7 are implemented.
10. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 7 are implemented.
Citation Information
Cited By
Navigation method and device for robot, robot and computer readable medium
CN121558032A