Mobile robot path planning method and device based on B spline, medium and equipment
Through the improved RRT* and DWA algorithms, combined with B-spline path smoothing, the problem of global optimal path planning in unknown dynamic obstacle environments is solved, and efficient obstacle avoidance and path optimization are achieved.
Patent Information
- Application Number
- CN202411682449.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-22
- Publication Date
- 2025-03-14
AI Technical Summary
The prior art is difficult to plan a global optimal path in an unknown dynamic obstacle environment, resulting in unnecessary collision between the robot and the obstacle.
Using the B-spline-based mobile robot path planning method, through the improved RRT* algorithm and DWA algorithm, combined with node pruning strategy and B-spline curve path smoothing, global optimal path planning is achieved and dynamic obstacles are effectively avoided.
It realizes planning the optimal global path in an unknown dynamic obstacle environment, reducing the calculation amount, shortening the distance of the planned route, and avoiding falling into the local optimal solution.
Smart Images

Figure CN119618219A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the technical field of mobile robot path planning, and in particular to a mobile robot path planning method, device, storage medium and electronic device based on B-spline. Background Art
[0002] When the robot follows the target person, after determining the specific location of the target person through indoor positioning technology, it needs to perform path planning and plan an optimal path to guide the robot's movement.
[0003] However, the robot may encounter unknown dynamic obstacles during movement. How to follow the target while avoiding dynamic obstacles is an important issue.
[0004] At present, the global optimal path planning method is used in the robot movement process. Although the global optimal path determines the approximate trajectory and direction of the robot to follow the target, a local path is also required to prevent the following robot from colliding with unknown dynamic obstacles during the following process. The global optimal path uses two algorithms with good path planning effects: the RRT algorithm and the DWA algorithm. Since the RRT algorithm can only plan the global optimal path in a static obstacle environment, but cannot plan the path in an unknown dynamic obstacle environment. Therefore, in more complex situations, the RRT algorithm may have unnecessary collisions with obstacles due to the inability to perceive dynamic obstacles. Summary of the invention
[0005] The embodiments of the present application provide a mobile robot path planning method, device, storage medium and electronic device based on B-spline, which can plan the optimal global path while effectively avoiding dynamic obstacles, reduce the amount of calculation, shorten the distance of the mobile robot's planned route, and are not prone to falling into local optimal solutions.
[0006] The present application embodiment provides a mobile robot path planning method based on B-spline, comprising:
[0007] Initialize the grid map and determine the location of each node;
[0008] Constructing an RRT* algorithm, and removing redundant points generated by the RRT* algorithm based on a node pruning strategy to obtain an improved RRT* algorithm, and performing global optimal path planning for the mobile robot based on the improved RRT* algorithm to obtain a global optimal path;
[0009] The key nodes in the global optimal path are extracted, the key nodes are used as local target points of the improved DWA algorithm, and the optimal path of the mobile robot is determined by the improved DWA algorithm.
[0010] Furthermore, in the above-mentioned B-spline-based mobile robot path planning method, the node pruning strategy is used to remove redundant points generated by the RRT* algorithm, including:
[0011] Connect the path start node to other nodes in sequence;
[0012] When there is no obstacle between the path start node and the connecting line of node a, determining that node a is a redundant point, and removing node a;
[0013] When there is an obstacle between the connection line between the path start node and the b node, it is determined that the b node is not a redundant point and the b node is retained.
[0014] Furthermore, the above-mentioned B-spline-based mobile robot path planning method, wherein, after the steps of constructing the RRT* algorithm, removing redundant points generated by the RRT* algorithm based on a node pruning strategy, obtaining an improved RRT* algorithm, and performing local optimal path planning on the mobile robot based on the improved RRT* algorithm, and obtaining a global optimal path, comprises:
[0015] The global optimal path is smoothed by using a B-spline curve to obtain a smoothed global optimal path.
[0016] Furthermore, in the above-mentioned B-spline-based mobile robot path planning method, the global optimal path is smoothed by a B-spline curve to obtain an optimized global optimal path, which includes:
[0017] Using the coordinate points in the global optimal path as control points of the B-spline curve;
[0018] Determine parameter values of the B-spline curve, and calculate a node vector based on the parameter values;
[0019] A k-order B-spline curve is obtained based on the node vector and the B-spline curve basis function, and path smoothing is performed on the global optimal path based on the k-order B-spline curve to obtain a smoothed global optimal path.
[0020] Furthermore, in the above-mentioned B-spline-based mobile robot path planning method, the B-spline curve basis function is:
[0021]
[0022] Among them, the coefficient p i represents the control point, N i,k (u) is represented by the i-th k-order B-spline basis function, and the value of n is the number of control points minus one;
[0023] in,
[0024]
[0025] Furthermore, in the above-mentioned B-spline-based mobile robot path planning method, the key nodes in the global optimal path are extracted, the key nodes are used as local target points of the improved DWA algorithm, and the optimal path of the mobile robot is determined by the improved DWA algorithm, including:
[0026] Extracting key nodes from the smoothed global optimal path, and using the key nodes in sequence as local target points of the improved DWA algorithm;
[0027] Initializing the local target point;
[0028] Collecting the node velocity of the local target point;
[0029] Inputting the node speed and position of the local target point into the motion model for prediction;
[0030] A DWA evaluation function is calculated based on the prediction result and the node speed of the local target, and an optimal path of the mobile robot is determined based on the DWA evaluation function.
[0031] Furthermore, in the above-mentioned B-spline-based mobile robot path planning method, the DWA evaluation function is:
[0032] G(υ,ω)=σ[αpheading(υ,ω)+βvel(υ,ω)+γdist(υ,ω)]
[0033] Among them, pheading(υ,ω) is the angular deviation between the endpoint of the simulated trajectory and the local target point, vel(υ,ω) is the speed evaluation function, which represents the magnitude of the current simulated speed, and dist(υ,ω) is the distance evaluation function, which is the distance between the end of the current trajectory and the optimal global path.
[0034] The embodiment of the present application also provides a mobile robot path planning device based on B-spline, comprising:
[0035] Initialization module, used to initialize the grid map and determine the location of each node;
[0036] A global optimization module is used to construct an RRT* algorithm and remove redundant points generated by the RRT* algorithm based on a node pruning strategy to obtain an improved RRT* algorithm. Based on the improved RRT* algorithm, a global optimal path planning is performed on the mobile robot to obtain a global optimal path.
[0037] The local optimization module is used to extract the key nodes in the global optimal path, use the key nodes as the local target points of the improved DWA algorithm, and determine the optimal path of the mobile robot through the improved DWA algorithm.
[0038] An embodiment of the present application also provides a computer-readable storage medium, in which a plurality of instructions are stored, and the instructions are suitable for being loaded by a processor to execute any of the above-mentioned B-spline-based mobile robot path planning methods.
[0039] An embodiment of the present application also provides an electronic device, including a processor and a memory, wherein the processor is electrically connected to the memory, the memory is used to store instructions and data, and the processor is used for the steps in any of the above-mentioned B-spline-based mobile robot path planning methods.
[0040] The present application provides a B-spline-based mobile robot path planning method, device, storage medium and electronic device. Compared with the RRT algorithm, the RRT* algorithm plans a smoother and shorter path. The present application improves the RRT* algorithm and also adopts a node pruning strategy to remove redundant points. The improved RRT* algorithm is used to optimize the global optimal path, which can reduce the amount of calculation and shorten the distance of the planned route. The present application also uses key nodes as local target points in sequence in the DWA algorithm, which can achieve local dynamic obstacle avoidance and avoid falling into local optimality. BRIEF DESCRIPTION OF THE DRAWINGS
[0041] The technical solution and other beneficial effects of the present application will be made apparent by describing in detail the specific implementation methods of the present application in conjunction with the accompanying drawings.
[0042] Figure 1 RRT provided in the embodiment of the present application * Schematic diagram of the algorithm's reselection process.
[0043] Figure 2 RRT provided in the embodiment of the present application * Schematic diagram of the algorithm's rewiring process.
[0044] Figure 3 A flow chart of a mobile robot path planning method based on B-splines provided in an embodiment of the present application.
[0045] Figure 4 Another flowchart of the B-spline-based mobile robot path planning method provided in an embodiment of the present application.
[0046] Figure 5 A schematic diagram of the process of removing redundant points using the Tonggu node pruning strategy provided in an embodiment of the present application.
[0047] Figure 6 A schematic diagram of the process of fusing B-spline curves based on the improved RRT* algorithm provided in an embodiment of the present application.
[0048] Figure 7 A schematic diagram of the structure of a mobile robot path planning device based on B-splines provided in an embodiment of the present application.
[0049] Figure 8 A schematic diagram of the structure of an electronic device provided in an embodiment of the present application.
[0050] Fig. 9 Another schematic diagram of the structure of an electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0051] The following will be combined with the drawings in the embodiments of the present application to clearly and completely describe the technical solutions in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those skilled in the art without creative work are within the scope of protection of this application.
[0052] The RRT algorithm can only plan the global optimal path in a static obstacle environment, but cannot plan the path in an unknown dynamic obstacle environment. Therefore, in more complex situations, the RRT algorithm cannot perceive dynamic obstacles and may cause unnecessary collisions with obstacles. The DWA algorithm can perform local path planning and is suitable for path planning with local key points as the target, but it is also easy to fall into the local optimal solution and cannot get the guidance of the global optimal path and fall into trouble.
[0053] To solve the above problems, the embodiments of the present application provide a mobile robot path planning method, device, storage medium and electronic device based on B-spline. The mobile robot path planning device based on B-spline provided in the embodiments of the present application can be integrated in an electronic device, which can be a terminal, a server and other devices, wherein the terminal can include a tablet computer, a laptop computer, a personal computer (PC), a micro processing box, or other devices.
[0054] First, let me briefly introduce the RRT* algorithm:
[0055] RRT * Algorithm reselection process: Figure 1 RRT provided in the embodiment of the present application * Schematic diagram of the algorithm's reselection process, as shown in Figure 1 As shown, node A is the initial node q start Node F is the newly generated node q newThe numbers next to the connecting lines between nodes represent the Euclidean distance between the two nodes, and the Euclidean distance represents the path cost. First, the newly generated node q new As the center, draw a circle with a certain radius, and find all the neighboring nodes in this circle as q new The candidate parent nodes are: D, E, and I. Figure 1 It can be seen that the original RRT algorithm path is the AHF path, and its path cost is 14. The three candidate nodes D, E, and I are connected to q new The paths at this time are: ABDF, AHEF, ABDIF, and the costs are: 13, 18, 22 respectively. It can be seen that the path cost of path ABDF is relatively the smallest, so node q new The parent node of is changed from the original node H to node D, and the original path AHF is replaced by the path ABDF.
[0056] RRT * The rewiring process of the algorithm: Figure 2 RRT provided in the embodiment of the present application * Schematic diagram of the algorithm's rewiring process, such as Figure 2 As shown in Figure 1, after reselecting the parent node, the random number is rewired to minimize the cost of connecting the random number nodes. new Select the next neighbor node to reduce the path cost. If the parent node of the neighbor node is changed to the new node q new The path cost can be reduced, so the parent node of the neighboring node is changed to the new node q new. . F is the new node q new , its neighboring nodes are E, H, and I. The parent nodes of these three neighboring nodes are H, A, and D, and the paths are AHE, AH, and ABDI, with costs of 17, 12, and 17, respectively. Now change the parent nodes of the three neighboring nodes E, H, and I to the new node q new , the paths and path costs become: ABDFE, path cost becomes 14; ABDFH, path cost becomes 15; ABDFI, path cost becomes 18. Therefore, the parent node of E is changed to the new node q new , a new random tree is generated.
[0057] See also Figure 3 and Figure 4 , Figure 3 A flow chart of a mobile robot path planning method based on B-splines provided in an embodiment of the present application, Figure 4Another flow chart of a mobile robot path planning method based on B-splines provided in an embodiment of the present application, which is applied to an electronic device, and the mobile robot path planning method based on B-splines includes the following steps:
[0058] S1, initialize the grid map and determine the location of each node.
[0059] Specifically, a working environment map of the mobile robot is set, the working environment map is converted into a grid map, and the starting position, end position, obstacle position of the mobile robot, and each node and node position corresponding to the starting position, end position and obstacle position are determined.
[0060] S2, construct the RRT* algorithm, and remove the redundant points generated by the RRT* algorithm based on the node pruning strategy to obtain the improved RRT* algorithm. Based on the improved RRT* algorithm, the global optimal path planning of the mobile robot is performed to obtain the global optimal path.
[0061] Although the global route planned by the traditional RRT* algorithm is relatively complete, there are a lot of redundant points, which increases the amount of calculation of the algorithm and makes the planned route longer. To this end, the traditional RRT* algorithm removes redundant points and adopts a node pruning strategy to remove redundant points in the path planned by the RRT* algorithm. The strategy is:
[0062] S21, connecting the path start node with other nodes in sequence.
[0063] S22, when there is no obstacle between the connection line between the path start node and node a, node a is determined to be a redundant point and node a is removed.
[0064] S23, when there is an obstacle between the connection line between the path start node and the b node, it is determined that the b node is not a redundant point and the b node is retained.
[0065] The use of node pruning strategies can reduce path turning points and path length, thereby reducing the distance the robot travels. The RRT* algorithm adds a recalculation process for new nodes on the basis of the RRT algorithm, namely: the process of reselecting parent nodes and rewiring. Compared with the RRT algorithm, the RRT* algorithm plans a smoother and shorter path. The most important thing is that the RRT algorithm is prone to falling into a local optimal solution, while the RRT* algorithm avoids this problem by introducing heuristic functions and rewiring. In addition, the RRT* algorithm does not rely on a specific map representation and environmental model, and has good adaptability and robustness.
[0066] Figure 5 A schematic diagram of the process of removing redundant points by the Tonggu node pruning strategy provided in the embodiment of the present application is shown as follows: Figure 5As shown in the figure, a path is planned from the starting point (point 1) to the end point (point 6), and the intermediate path points are: 2, 3, 4, 5. 2 is connected to 1 and does not collide with the obstacle. For the time being, 2 is ignored. 3 is connected to 1 and collides with the obstacle, so 3 cannot be removed. At the same time, 2 must be connected to 3 because 3 collides, so 2 and 3 are retained. Similarly, 4 and 5 are connected to 1 and do not collide with the obstacle, so they are removed, so 3 is directly connected to 6. Finally, the path after removing the redundant points is the purple line, and the path is: 1-2-3-6.
[0067] Furthermore, after step S2, the method further includes:
[0068] SA1, the global optimal path is smoothed by using a B-spline curve to obtain the smoothed global optimal path.
[0069] Step SA1 may include the following steps:
[0070] SA11, the coordinate points in the global optimal path are used as control points of the B-spline curve.
[0071] The shape of the B-spline curve can be changed by changing the control points, degree and order of the B-spline curve. Figure 6 A schematic diagram of a process for fusing B-spline curves based on an improved RRT* algorithm provided in an embodiment of the present application is shown in FIG. Figure 6 As shown in the figure, the improved RRT* algorithm is used to plan the global optimal path from the starting point to the end point and successfully bypass obstacles. The coordinates of the global optimal path points are used as the control points of the B-spline curve, and the number of control points is obtained.
[0072] SA12, determine the parameter values of the B-spline curve, and calculate the node vector based on the parameter values.
[0073] The B-spline curve basis function is:
[0074]
[0075] Among them, the coefficient p i represents the control point, N i,k (u) is represented by the i-th k-order B-spline basis function, and the value of n is the number of control points minus one;
[0076] The derivation of B-spline basis function can be divided into two cases: k = 0 and k = 1:
[0077]
[0078]
[0079] The node vector is represented as a non-negative real number sequence U = [u0, ..., u max], for all k, i and u, the B-spline basis function N i,k (u) are all non-negative, and in [u i ,u i+k ]The value outside the interval is 0.
[0080] B-spline curves are divided into uniform B-spline curves and quasi-uniform B-spline curves. The difference is that the nodes in the node vector of the uniform B-spline curve are uniformly or equidistantly distributed along the parameter axis, while the nodes at both ends of the node vector of the quasi-uniform B-spline curve have a repetition degree k. The embodiment of the present application uses a quasi-uniform B-spline curve to smooth the curve.
[0081] In the embodiment of the present application, a cubic B-spline curve is used, k is the order, and the value of k is the degree plus one, so the value of k is 4. The node vector is calculated according to the values of k and n.
[0082] SA13, based on the node vector and the B-spline curve basis function, a k-order B-spline curve is obtained, and the global optimal path is smoothed based on the k-order B-spline curve to obtain a smoothed global optimal path.
[0083] Substituting the values of k and n into the B-spline basis function, a smooth B-spline curve with curvature and obstacle avoidance safety is generated through the B-spline basis function.
[0084] S3, extract the key nodes in the global optimal path, use the key nodes as the local target points of the improved DWA algorithm, and determine the optimal path of the mobile robot through the improved DWA algorithm.
[0085] Please continue reading Figure 4 , step S3 comprises the following steps:
[0086] S31, extracting key nodes in the smoothed global optimal path, and using the key nodes in sequence as local target points of the improved DWA algorithm.
[0087] In view of the fact that the DWA algorithm is prone to fall into a local optimal solution due to its dependence on a single target point in a complex obstacle environment, especially when facing U-shaped or C-shaped obstacles, the improved RRT* algorithm is used to obtain the global path and the B-spline algorithm is used to smooth the path, extract the key nodes in the path, and use the key points sequentially (in the order of the key nodes) as the local target nodes in the DWA algorithm.
[0088] S32, initializing the local target point.
[0089] S33, collecting node speeds of local target points.
[0090] S34, inputting the node speed and position of the local target point into the motion model for prediction.
[0091] S35, calculating a DWA evaluation function based on the prediction result and the node speed of the local target, and determining the optimal path of the mobile robot based on the DWA evaluation function.
[0092] The DWA evaluation function is:
[0093] G(υ,ω)=σ[αpheading(υ,ω)+βvel(υ,ω)+γdist(υ,ω)]
[0094] Among them, pheading(υ,ω) is the angular deviation between the endpoint of the simulated trajectory and the local target point, vel(υ,ω) is the speed evaluation function, which represents the magnitude of the current simulated speed, and dist(υ,ω) is the distance evaluation function, which is the distance between the end of the current trajectory and the optimal global path.
[0095] By integrating the planning information of the improved global path RRT* algorithm and the path optimized by B-spline, the DWA algorithm is guided to achieve the global optimal path while ensuring local dynamic obstacle avoidance.
[0096] The present application uses the improved RRT* algorithm to obtain a global path from the starting point to the end point and successfully bypasses static obstacles. These global coordinate points are used as control points in the cubic B-spline curve process, and the optimized global path is obtained. The coordinate points of the optimized global path are used as key points, and these key points are used as local target points when the improved DWA algorithm implements local path planning. Then, the current node is initialized, the node speed is collected, and the local path planning is performed. The trajectory is predicted according to the motion model and the optimal path is selected according to the evaluation function of the improved DWA algorithm until the optimal path is output when the mobile robot moves to the end point. Otherwise, the current target point is updated and the next key point is used as the local target point to implement local path planning. During the entire fusion algorithm process, the global path RRT* algorithm provides the DWA algorithm with a global optimal path, while the DWA algorithm also successfully avoids dynamic obstacles for the robot. Finally, the fusion algorithm successfully avoids static and dynamic obstacles while obtaining the global optimal path. The present application improves the RRT* algorithm, removes redundant points, can reduce the amount of calculation, shorten the distance of the planned route, and uses B-spline curves to process the global optimal path to make the route smoother. By optimizing the global optimal path through the improved RRT* algorithm, local dynamic obstacle avoidance can be achieved to avoid falling into the local optimum.
[0097] According to the method described in the above embodiment, this embodiment will be further described from the perspective of a mobile robot path planning device based on B-spline. The mobile robot path planning device based on B-spline can be implemented as an independent entity or integrated in an electronic device. The electronic device can be a terminal, a server, etc., wherein the terminal can include a tablet computer, a laptop computer, a personal computer (PC, Personal Computer), a micro processing box, or other devices.
[0098] See also Figure 7 , Figure 7 The present invention specifically describes a mobile robot path planning device based on B-spline provided in an embodiment of the present invention, which is applied to an electronic device. The mobile robot path planning device based on B-spline may include:
[0099] Initialization module, used to initialize the grid map and determine the location of each node;
[0100] A global optimization module is used to construct an RRT* algorithm and remove redundant points generated by the RRT* algorithm based on a node pruning strategy to obtain an improved RRT* algorithm. Based on the improved RRT* algorithm, a global optimal path planning is performed on the mobile robot to obtain a global optimal path.
[0101] The local optimization module is used to extract the key nodes in the global optimal path, use the key nodes as the local target points of the improved DWA algorithm, and determine the optimal path of the mobile robot through the improved DWA algorithm.
[0102] During specific implementation, the above modules and / or units can be implemented as independent entities, or can be arbitrarily combined to be implemented as the same or several entities. The specific implementation of the above modules and / or units can refer to the previous method embodiments. The specific beneficial effects that can be achieved can also refer to the beneficial effects in the previous method embodiments, which will not be repeated here.
[0103] In addition, the embodiment of the present application also provides an electronic device, which may be a computer, a tablet computer, or other device. Figure 8 As shown, the electronic device 400 includes a processor 401 and a memory 402. The processor 401 is electrically connected to the memory 402.
[0104] The processor 401 is the control center of the electronic device 400. It uses various interfaces and lines to connect various parts of the entire electronic device. It executes various functions of the electronic device and processes data by running or loading applications stored in the memory 402 and calling data stored in the memory 402, thereby monitoring the electronic device as a whole.
[0105] In this embodiment, the processor 401 in the electronic device 400 loads instructions corresponding to the processes of one or more application programs into the memory 402 according to the following steps, and the processor 401 runs the application programs stored in the memory 402 to implement various functions:
[0106] Initialize the grid map and determine the location of each node;
[0107] Constructing an RRT* algorithm, and removing redundant points generated by the RRT* algorithm based on a node pruning strategy to obtain an improved RRT* algorithm, and performing global optimal path planning for the mobile robot based on the improved RRT* algorithm to obtain a global optimal path;
[0108] The key nodes in the global optimal path are extracted, the key nodes are used as local target points of the improved DWA algorithm, and the optimal path of the mobile robot is determined by the improved DWA algorithm.
[0109] The electronic device can implement the steps in any embodiment of the B-spline-based mobile robot path planning method provided in the embodiments of the present application. Therefore, it can achieve the beneficial effects that can be achieved by any B-spline-based mobile robot path planning method provided in the embodiments of the present invention. For details, please refer to the previous embodiments and will not be repeated here.
[0110] Fig. 9 The specific structural block diagram of the electronic device provided in the embodiment of the present invention is shown, and the electronic device can be used to implement the mobile robot path planning method based on B-spline provided in the above embodiment. The electronic device 500 can be a terminal, a server and other devices, wherein the terminal can include a tablet computer, a notebook computer, a personal computer (PC, Personal Computer), a micro processing box, or other devices.
[0111] The RF circuit 510 is used to receive and send electromagnetic waves, realize the mutual conversion between electromagnetic waves and electrical signals, and thus communicate with a communication network or other devices. The RF circuit 510 may include various existing circuit elements for performing these functions, such as antennas, radio frequency transceivers, digital signal processors, encryption / decryption chips, user identity module (SIM) cards, memories, etc. The RF circuit 510 can communicate with various networks such as the Internet, corporate intranets, wireless networks, or communicate with other devices through wireless networks. The above-mentioned wireless networks may include cellular telephone networks, wireless local area networks, or metropolitan area networks. The above-mentioned wireless networks can use various communication standards, protocols and technologies, including but not limited to Global System for Mobile Communication (GSM), Enhanced Data GSM Environment (EDGE), Wideband Code Division Multiple Access (WCDMA), Code Division Multiple Access (CDMA), Time Division Multiple Access (TDMA), Wireless Fidelity (Wi-Fi) (such as Institute of Electrical and Electronics Engineers standards IEEE 802.11a, IEEE 802.11b, IEEE802.11g and / or IEEE802.11n), Voice over Internet Protocol (VoIP), Worldwide Interoperability for Microwave Access (Wi-Max), other protocols for email, instant messaging and short messages, and any other suitable communication protocols, even those that have not yet been developed.
[0112] The memory 520 can be used to store software programs and modules, such as the corresponding program instructions / modules in the above embodiments. The processor 580 executes various functional applications and data processing by running the software programs and modules stored in the memory 520, that is, realizing the functions of taking pictures with the front camera, processing the captured images, and switching the display color of the display content on the display screen. The memory 520 may include a high-speed random access memory, and may also include a non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some examples, the memory 520 may further include a memory remotely arranged relative to the processor 580, and these remote memories may be connected to the electronic device 500 via a network. Examples of the above-mentioned network include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and a combination thereof.
[0113] The input unit 530 may be used to receive input digital or character information, and generate a keyboard and a mouse related to user settings and function control.
[0114] The display unit 540 may be used to display information input by the user or information provided to the user and various graphical user interfaces, which may be composed of graphics, text, icons, videos, and any combination thereof. The display unit 540 may include a display panel 541, which may be configured in the form of an LCD (Liquid Crystal Display), an OLED (Organic Light-Emitting Diode), or the like.
[0115] The audio circuit 560, the speaker 561, and the microphone 562 can provide an audio interface between the user and the electronic device 500. The audio circuit 560 can transmit the electrical signal converted from the received audio data to the speaker 561, which is converted into a sound signal for output; on the other hand, the microphone 562 converts the collected sound signal into an electrical signal, which is received by the audio circuit 560 and converted into audio data, and then the audio data is output to the processor 580 for processing, and then sent to another terminal through the RF circuit 510, or the audio data is output to the memory 520 for further processing. The audio circuit 560 may also include an earplug jack to provide communication between an external headset and the electronic device 500.
[0116] The electronic device 500 can help the user receive requests, send information, etc. through the transmission module 570 (such as a Wi-Fi module), which provides the user with wireless broadband Internet access. Although the transmission module 570 is shown in the figure, it is understandable that it is not a necessary component of the electronic device 500 and can be omitted as needed without changing the essence of the invention.
[0117] The processor 580 is the control center of the electronic device 500. It uses various interfaces and lines to connect various parts of the entire mobile phone. By running or executing software programs and / or modules stored in the memory 520, and calling data stored in the memory 520, it executes various functions of the electronic device 500 and processes data, thereby monitoring the electronic device as a whole. Optionally, the processor 580 may include one or more processing cores; in some embodiments, the processor 580 may integrate an application processor and a modem processor, wherein the application processor mainly processes the operating system, user interface, and application programs, etc., and the modem processor mainly processes wireless communications. It can be understood that the above-mentioned modem processor may not be integrated into the processor 580.
[0118] The electronic device 500 also includes a power supply 590 (such as a battery) for supplying power to various components. In some embodiments, the power supply can be logically connected to the processor 580 through a power management system, so that the power management system can manage charging, discharging, and power consumption management. The power supply 590 can also include any components such as one or more DC or AC power supplies, recharging systems, power failure detection circuits, power converters or inverters, and power status indicators.
[0119] Although not shown, the electronic device 500 also includes a camera (such as a front camera, a rear camera), a Bluetooth module, etc., which will not be described in detail here. Specifically in this embodiment, the display unit of the electronic device is a touch screen display, and the mobile terminal also includes a memory, and one or more programs, wherein one or more programs are stored in the memory, and are configured to be executed by one or more processors. One or more programs include instructions for performing the following operations:
[0120] Initialize the grid map and determine the location of each node;
[0121] Constructing an RRT* algorithm, and removing redundant points generated by the RRT* algorithm based on a node pruning strategy to obtain an improved RRT* algorithm, and performing global optimal path planning for the mobile robot based on the improved RRT* algorithm to obtain a global optimal path;
[0122] The key nodes in the global optimal path are extracted, the key nodes are used as local target points of the improved DWA algorithm, and the optimal path of the mobile robot is determined by the improved DWA algorithm.
[0123] In specific implementation, the above modules can be implemented as independent entities, or can be arbitrarily combined and implemented as the same or several entities. The specific implementation of the above modules can be found in the previous method embodiments, which will not be repeated here.
[0124] Those skilled in the art can understand that all or part of the steps in the various methods of the above embodiments can be completed by instructions, or by controlling related hardware through instructions, and the instructions can be stored in a computer-readable storage medium and loaded and executed by a processor. To this end, an embodiment of the present invention provides a storage medium, which stores multiple instructions, and the instructions can be loaded by a processor to execute the steps of any embodiment of the mobile robot path planning method based on B-splines provided in an embodiment of the present invention.
[0125] The computer-readable storage medium may include: a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk, etc.
[0126] Since the instructions stored in the storage medium can execute the steps in any embodiment of the mobile robot path planning method based on B-splines provided in the embodiments of the present invention, the beneficial effects that can be achieved by any mobile robot path planning method based on B-splines provided in the embodiments of the present invention can be achieved. For details, please refer to the previous embodiments and will not be repeated here.
[0127] The above is a detailed introduction to a B-spline-based mobile robot path planning method, device, storage medium and electronic device provided in the embodiments of the present application. Specific examples are used in this article to illustrate the principles and implementation methods of the present application. The description of the above embodiments is only used to help understand the method of the present application and its core idea; at the same time, for technical personnel in this field, according to the ideas of the present application, there will be changes in the specific implementation methods and application scope. In summary, the content of this specification should not be understood as a limitation on the present application.
Claims
1. A mobile robot path planning method based on B-spline, characterized in that: The method comprises: Initialize the grid map and determine the location of each node; Constructing an RRT* algorithm, and removing redundant points generated by the RRT* algorithm based on a node pruning strategy to obtain an improved RRT* algorithm, and performing global optimal path planning for the mobile robot based on the improved RRT* algorithm to obtain a global optimal path; The key nodes in the global optimal path are extracted, the key nodes are used as local target points of the improved DWA algorithm, and the optimal path of the mobile robot is determined by the improved DWA algorithm.
2. The mobile robot path planning method based on B-spline according to claim 1, characterized in that: The node pruning strategy is based on which redundant points generated by the RRT* algorithm are removed, including: Connect the path start node to other nodes in sequence; When there is no obstacle between the path start node and the connecting line of node a, determining that node a is a redundant point, and removing node a; When there is an obstacle between the connection line between the path start node and the b node, it is determined that the b node is not a redundant point and the b node is retained.
3. The mobile robot path planning method based on B-spline according to claim 1, characterized in that: After the steps of constructing the RRT* algorithm, removing redundant points generated by the RRT* algorithm based on a node pruning strategy to obtain an improved RRT* algorithm, and performing local optimal path planning for the mobile robot based on the improved RRT* algorithm to obtain a global optimal path, the method includes: The global optimal path is smoothed by using a B-spline curve to obtain a smoothed global optimal path.
4. The mobile robot path planning method based on B-spline according to claim 3 is characterized in that: The global optimal path is smoothed by a B-spline curve to obtain an optimized global optimal path including: Using the coordinate points in the global optimal path as control points of the B-spline curve; Determine parameter values of the B-spline curve, and calculate a node vector based on the parameter values; A k-order B-spline curve is obtained based on the node vector and the B-spline curve basis function, and path smoothing is performed on the global optimal path based on the k-order B-spline curve to obtain a smoothed global optimal path.
5. The mobile robot path planning method based on B-spline according to claim 4, characterized in that: The B-spline curve basis function is: Among them, the coefficient p i represents the control point, N i,k (u) is represented by the i-th k-order B-spline basis function, and the value of n is the number of control points minus one; in, 6. The mobile robot path planning method based on B-spline according to claim 4, characterized in that: The step of extracting key nodes from the global optimal path, using the key nodes as local target points of the improved DWA algorithm, and determining the optimal path of the mobile robot by the improved DWA algorithm includes: Extracting key nodes from the smoothed global optimal path, and using the key nodes in sequence as local target points of the improved DWA algorithm; Initializing the local target point; Collecting the node velocity of the local target point; Inputting the node speed and position of the local target point into the motion model for prediction; A DWA evaluation function is calculated based on the prediction result and the node speed of the local target, and an optimal path of the mobile robot is determined based on the DWA evaluation function.
7. The mobile robot path planning method based on B-spline according to claim 2, characterized in that: The DWA evaluation function is: G(υ,ω)=σ[αpheading(υ,ω)+βvel(v,ω)+γdist(υ,ω)] Among them, pheading(υ,ω) is the angular deviation between the endpoint of the simulated trajectory and the local target point, vel(υ,ω) is the speed evaluation function, which represents the magnitude of the current simulated speed, and dist(υ,ω) is the distance evaluation function, which is the distance between the end of the current trajectory and the optimal global path.
8. A mobile robot path planning device based on B-spline, characterized in that: include: Initialization module, used to initialize the grid map and determine the location of each node; A global optimization module is used to construct an RRT* algorithm and remove redundant points generated by the RRT* algorithm based on a node pruning strategy to obtain an improved RRT* algorithm. Based on the improved RRT* algorithm, a global optimal path planning is performed on the mobile robot to obtain a global optimal path. The local optimization module is used to extract the key nodes in the global optimal path, use the key nodes as the local target points of the improved DWA algorithm, and determine the optimal path of the mobile robot through the improved DWA algorithm.
9. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a plurality of instructions, and the instructions are suitable for being loaded by a processor to execute the B-spline-based mobile robot path planning method according to any one of claims 1 to 7.
10. An electronic device, characterized in that: It includes a processor and a memory, the processor is electrically connected to the memory, the memory is used to store instructions and data, and the processor is used to execute the steps in the B-spline-based mobile robot path planning method described in any one of claims 1 to 7.