Real-time planning method and device for shore cleaning and unmanned ship
By constructing a three-dimensional water model and path search algorithm, local paths are generated and selected, and the problem of inefficient traditional unmanned ship cleaning methods is solved, and efficient cleaning in complex water environments is achieved.
Patent Information
- Application Number
- CN202411551777.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-01
- Publication Date
- 2025-02-25
AI Technical Summary
Traditional unmanned boat water cleaning methods are limited by fixed paths, lack flexibility, and are difficult to adapt to changes in water shorelines and complex environments, resulting in low cleaning efficiency.
By obtaining water environment information, building a three-dimensional model, controlling the unmanned ship's shore travel, recording coordinates in real time, generating a global route point queue, and using the path search algorithm to generate candidate paths, determine the evaluation factors, select local paths, and control the unmanned ship according to the following Driving on local paths.
It has achieved the flexibly adapted to coastline changes in complex water environments, improved the cleaning efficiency, and effectively cleaned the water coastline.
Smart Images

Figure CN119512085A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of path planning, and in particular to a real-time planning method and device for shore cleaning and an unmanned boat. Background Art
[0002] With the development of society, the use of unmanned boats for water cleaning has become an important part of maintaining the water environment. However, the traditional unmanned boat water cleaning method has obvious shortcomings when dealing with complex and changeable water environments. Specifically, the traditional cleaning method is limited by fixed paths, lacks flexibility, and is difficult to adapt to changes in water shorelines and complex water environments. Therefore, when faced with emergencies, traditional cleaning methods often take a lot of time, resulting in low cleaning efficiency. Summary of the invention
[0003] The purpose of the present invention is to provide a real-time planning method, device and unmanned boat for shore cleaning, aiming to solve the problems of low cleaning efficiency of traditional cleaning methods.
[0004] In a first aspect, an embodiment of the present invention provides a real-time planning method for shore cleaning, which is used for an unmanned ship, comprising:
[0005] Acquiring environmental information of the water area and preprocessing the environmental information;
[0006] Construct a three-dimensional model of the water environment based on the pre-processed environmental information;
[0007] Controlling the unmanned boat to travel close to the shore according to the three-dimensional model, recording the coordinates of the unmanned boat in real time, and obtaining a global route point queue;
[0008] When the unmanned ship travels along the global route point queue, the current position of the unmanned ship is acquired and a target point of a local path is set according to the current position; the target point is located on the global route point queue;
[0009] Generate multiple candidate paths according to the current position and the target point using a path search algorithm;
[0010] Determining evaluation factors of the candidate paths and obtaining a local path according to the evaluation factors;
[0011] The unmanned boat is controlled to travel along the local path.
[0012] In a second aspect, an embodiment of the present invention provides a real-time planning device for shore cleaning, which is used in an unmanned ship, comprising:
[0013] An acquisition unit, used for acquiring environmental information of the water area and preprocessing the environmental information;
[0014] A construction unit, used for constructing a three-dimensional model of the water environment according to the pre-processed environmental information;
[0015] A recording unit, used for controlling the unmanned boat to travel close to the shore according to the three-dimensional model, recording the coordinates of the unmanned boat in real time, and obtaining a global route point queue;
[0016] A setting unit, configured to obtain a current position of the unmanned ship and set a target point of a local path according to the current position when the unmanned ship travels along the global route point queue; the target point is located on the global route point queue;
[0017] A generating unit, configured to generate a plurality of candidate paths according to the current position and the target point by using a path search algorithm;
[0018] a determination unit, configured to determine evaluation factors of the candidate paths and obtain a local path according to the evaluation factors;
[0019] A control unit is used to control the unmanned boat to travel along the local path.
[0020] In a third aspect, an embodiment of the present invention provides an unmanned boat, comprising: a real-time planning device for shore cleaning as described in the second aspect.
[0021] The present invention discloses a real-time planning method, device and unmanned boat for cleaning close to the shore. The method includes: obtaining environmental information of the water area and preprocessing the environmental information; constructing a three-dimensional model of the water environment according to the preprocessed environmental information; controlling the unmanned boat to travel close to the shore according to the three-dimensional model, recording the coordinates of the unmanned boat in real time, and obtaining a global route point queue; when the unmanned boat travels along the global route point queue, obtaining the current position of the unmanned boat and setting the target point of the local path according to the current position; the target point is located on the global route point queue; generating multiple candidate paths according to the current position and the target point and using a path search algorithm; determining the evaluation factors of the candidate paths and obtaining the local path according to the evaluation factors; and controlling the unmanned boat to travel along the local path. The present invention creates a local path based on the global route point queue, so that the unmanned boat can adapt to the changes in the shoreline and complex waters by continuously adjusting the local path, thereby improving the cleaning efficiency. The embodiment of the present invention also provides a real-time planning device for cleaning close to the shore and an unmanned boat, which have the above-mentioned beneficial effects and are not repeated here. BRIEF DESCRIPTION OF THE DRAWINGS
[0022] In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the accompanying drawings required for use in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are some embodiments of the present invention. For ordinary technicians in this field, other accompanying drawings can be obtained based on these accompanying drawings without paying any creative work.
[0023] Figure 1 A flow chart of the real-time planning method for shore cleaning of this embodiment;
[0024] Figure 2 This is the first sub-flow chart of the real-time planning method for shore cleaning of this embodiment;
[0025] Figure 3 This is a second sub-flow chart of the real-time planning method for shore cleaning of this embodiment;
[0026] Figure 4 This is a third sub-flow chart of the real-time planning method for shore cleaning of this embodiment;
[0027] Figure 5 It is a schematic block diagram of the real-time planning device for shore cleaning of this embodiment. DETAILED DESCRIPTION
[0028] The following will be combined with the drawings in the embodiments of the present invention to clearly and completely describe the technical solutions in the embodiments of the present invention. Obviously, the described embodiments are part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.
[0029] It should be understood that when used in this specification and the appended claims, the terms "include" and "comprises" indicate the presence of described features, integers, steps, operations, elements and / or components, but do not exclude the presence or addition of one or more other features, integers, steps, operations, elements, components and / or combinations thereof.
[0030] It should also be understood that the terms used in this specification of the present invention are only for the purpose of describing specific embodiments and are not intended to limit the present invention. As used in the specification of the present invention and the appended claims, the singular forms "a", "an" and "the" are intended to include plural forms unless the context clearly indicates otherwise.
[0031] It should be further understood that the term "and / or" used in the present description and the appended claims refers to any and all possible combinations of one or more of the associated listed items, and includes these combinations.
[0032] See also Figure 1 The present invention provides a real-time planning method for shore cleaning, which is used for an unmanned ship, comprising:
[0033] S101: Acquire environmental information of a water area and pre-process the environmental information;
[0034] In this embodiment, the environmental information of the water area is mainly obtained by sensors, so it is necessary to select appropriate sensors to obtain key environmental information. For example, cameras, lidar, millimeter-wave radar, GPS, compass and other sensors can be selected and installed in different parts of the unmanned boat to perceive the environment in all directions.
[0035] Furthermore, the acquired environmental information needs to be preprocessed accordingly for better analysis and application. Specifically, the raw data obtained from sensors such as lidar, millimeter-wave radar, and cameras need to undergo preprocessing and filtering operations. The preprocessing operations mainly include denoising, scaling, and normalization. Denoising is to eliminate random noise in sensor data, such as electromagnetic interference, temperature changes, etc. Scaling and normalization are to convert sensor data into a unified numerical range for subsequent processing and analysis. The goal of the preprocessing operation is to improve the quality of the data and provide an accurate basis for subsequent filtering and analysis.
[0036] Next, filtering operations mainly include low-pass filtering, high-pass filtering, band-pass filtering, etc. Low-pass filtering is mainly used to eliminate high-frequency noise, high-pass filtering is used to eliminate low-frequency noise, and band-pass filtering is used to retain signals within a specific frequency range. Filtering operations can help eliminate interfering signals in sensor data, thereby improving data reliability.
[0037] Furthermore, the data acquired by the laser radar of this embodiment also needs to be processed as point cloud data. Point cloud data processing mainly includes the following aspects: data denoising, point cloud segmentation, feature extraction and data optimization.
[0038] Data denoising is the first step in point cloud processing. Since the data collected by LiDAR in outdoor or complex environments may contain many noise points, these noise points interfere with subsequent processing and analysis. Therefore, it is necessary to denoise the original point cloud data. Common denoising methods include filtering denoising, clustering denoising, etc. Through these methods, noise points can be effectively removed and the quality of point cloud data can be improved.
[0039] Next, point cloud segmentation is to divide the processed point cloud data into different regions to facilitate subsequent feature extraction and analysis. There are many methods for point cloud segmentation, such as region growing, edge detection, graph theory, etc. According to the specific application scenario, the point cloud data can be divided into sub-regions with similar features.
[0040] After completing the point cloud segmentation, it is necessary to extract features from each sub-region. Feature extraction is to extract discriminative geometric features and texture features by analyzing the point cloud data. Commonly used feature extraction methods include principal component analysis (PCA), local linear embedding (LLE), etc. These methods can effectively extract the features of point cloud data and provide a basis for subsequent classification and recognition.
[0041] Finally, data optimization is to further improve the processing effect of point cloud data. Data optimization mainly includes: point cloud noise reduction, point cloud compression, point cloud uniform sampling, etc. These optimization methods can reduce the amount of data, increase data processing speed, and ensure the integrity of point cloud data.
[0042] Furthermore, the data acquired by the camera of this embodiment needs to be processed by image processing and target recognition;
[0043] Image acquisition: Use cameras to obtain real-time image data in a water environment. Ensure that the camera settings and angles can capture all parts of the water area, including the surface, underwater, and shoreline.
[0044] Preprocessing: Preprocess the real-time image data, including color correction, denoising and enhancement. Since water quality may affect color, the image needs to be color corrected to make it closer to the real color. Then, the noise is removed through the filter, and image enhancement technology (such as histogram equalization) is used to improve the contrast and clarity of the image.
[0045] After preprocessing, underwater segmentation and surface segmentation are performed. Specifically, the underwater part is identified and segmented, which usually involves using specific color and brightness thresholds to identify the underwater area; then the surface area is identified and segmented, taking into account the reflection and ripple effects of the water surface.
[0046] Then, an edge detection algorithm (such as Canny edge detection) is used to identify features such as the edge of the water area and the outline of underwater objects; at the same time, texture analysis is performed on the segmented underwater and water surface to identify potential targets or objects.
[0047] The extracted features are then classified using machine learning or deep learning classifiers. For aquatic environments, specific classifiers can be trained to identify fish, plankton, ships, or other underwater objects.
[0048] For moving targets, tracking algorithms (such as Kalman filter or optical flow method) are used for continuous tracking and identification.
[0049] S102: constructing a three-dimensional model of the water environment according to the pre-processed environmental information;
[0050] Specifically, the environmental information includes: lidar data and camera data. In this embodiment, the lidar data is mainly used to establish a high-resolution terrain model, including the depth of the water area, the height of the coastline and the underwater terrain; the camera data is used to establish a visual model, including obstacles in the water area, the geometry of the coastline, terrain features, and the positions and features of other targets; then the terrain model and the visual model are aligned through the iterative closest point (ICP) algorithm, and then the aligned terrain model and the visual model are fused to obtain a three-dimensional model of the water environment.
[0051] This embodiment can obtain a more comprehensive water environment model by fusing the laser radar data and the camera data; since the water environment is dynamically changing, the visual model can be regularly updated using the camera data to reflect the changes in obstacles and other targets in the water. At the same time, the laser radar data can also be regularly acquired and used to update the terrain model. This dynamic update mechanism can improve the real-time performance and accuracy of the model and adapt to the dynamic changes of the water environment.
[0052] S103: controlling the unmanned boat to travel close to the shore according to the three-dimensional model, recording the coordinates of the unmanned boat in real time, and obtaining a global route point queue;
[0053] Specifically, a global positioning system (such as the Beidou satellite navigation system, GPS, etc.) is installed on the unmanned ship to obtain the current longitude and latitude of the unmanned ship in real time; then the unmanned ship is controlled to travel close to the shore according to the three-dimensional model, and the coordinates of the unmanned ship are recorded in real time to obtain a global route point queue.
[0054] The global route point queue is mainly used to ensure that the unmanned boat always travels close to the shore, so as to ensure that the unmanned boat can effectively clean the shore. However, the unmanned boat does not always travel according to the global route point queue. This embodiment also provides a local path so that the unmanned boat can adapt to the complexity of the water environment.
[0055] S104: when the unmanned ship travels along the global route point queue, obtaining the current position of the unmanned ship and setting a target point of the local path according to the current position; the target point is located on the global route point queue;
[0056] In one embodiment, a robotic arm is provided on the unmanned vessel. Therefore, when setting the target point of the local path according to the current position, it is necessary to consider the length of the extension arm and the cleaning width of the robotic arm to ensure that the setting of the target point enables the unmanned vessel to effectively clean the target area through the extension arm to avoid missing the target area.
[0057] S105: Generate multiple candidate paths according to the current position and the target point using a path search algorithm;
[0058] For details, please refer to Figure 2, based on the current position and the target point, multiple candidate paths are generated using the path search algorithm, including:
[0059] S201: Determine a search space for local path planning and a boundary of the search space according to the current position and the target point;
[0060] Specifically, a certain range centered on the midpoint between the current position of the unmanned ship and the target point is usually used as the search space. The current position of the unmanned ship and the target point are always located in the search space. For example, the midpoint between the current position of the unmanned ship and the target point can be used as the center of the circle, and the distance between the current position of the unmanned ship and the target point can be used as the radius to draw a circle, and the range covered by the circle is the search space; and the boundary of the search space is mainly used to prevent the generated candidate path from deviating from the task area, so that the unmanned ship cannot clean the shore when traveling along the candidate path. Therefore, the effective cleaning length of the unmanned ship can be used as a fixed width, and the shoreline between the current position of the unmanned ship and the target point can be scanned to obtain a boundary similar to the shoreline. This boundary is the boundary of the search space, and the distance between each point on the boundary and the corresponding point on the shoreline is equal to the effective cleaning length of the unmanned ship. In this way, the area within the search space that is within the boundary of the search space is the sampling area.
[0061] S202: Generate a series of sampling points in the search space and the boundary;
[0062] Sampling points are mainly used to generate candidate paths; in the field of path planning, the density of sampling points affects the effect of path planning. Sampling points with higher density can make path planning more accurate, but it will also increase the computational burden. Therefore, in practical applications, it is necessary to reasonably adjust the density of sampling points according to computing resources and actual needs to achieve the goal of balancing path planning accuracy and computational efficiency.
[0063] S203: detecting obstacles within the search space and the boundary according to the environmental information, and deleting sampling points corresponding to the obstacles to obtain final sampling points;
[0064] Among them, obstacles are divided into static obstacles and dynamic obstacles. For static obstacles, you only need to delete the sampling points corresponding to the static obstacles to get the final sampling points. For dynamic obstacles, you need to obtain the position information of the dynamic obstacles in real time, and delete the sampling points corresponding to the dynamic obstacles in real time according to the position information of the dynamic obstacles, and update the final sampling points in real time.
[0065] S204: Generate multiple candidate paths according to the final sampling points and using a path search algorithm.
[0066] Among them, commonly used path search algorithms include: A* algorithm, RRT (Rapidly-exploring Random Tree) algorithm, etc. Therefore, when selecting the corresponding path search algorithm to generate multiple candidate paths, it is necessary to consider the computational efficiency and adaptability of the algorithm to ensure that it can run in real-time applications.
[0067] In one embodiment, when facing a complex water environment, the RRT algorithm is selected to generate multiple candidate paths. Specifically, the current position of the unmanned ship is used as the starting point, and then step a is executed. a. Starting from the starting point, a random tree is gradually constructed. In each step, a new neighbor node is generated according to conditions such as the distance and angle between the current node and the target node. The new node is added to the random tree, and the neighbor node list is updated. Then step b is executed. b. When generating new neighbor nodes, different selection strategies can be adopted. A commonly used strategy is to select neighbor nodes according to the distance, that is, to select the neighbor node closest to the current node. This can approach the target node faster and may find a shorter path. Then repeat steps a and b until the target node (that is, the target point of the local path) is found. Then find all paths from the starting point to the target node from the generated random tree, and record their length, direction and other information. These paths are candidate paths.
[0068] In another embodiment, when facing a relatively calm water environment, the A* algorithm is used to generate multiple candidate paths, specifically:
[0069] 1. Set the current position of the unmanned ship as the starting point, set the target point of the local path as the target node, then determine the priority queue (openlist) according to the priority function and add the starting point to the priority queue;
[0070] 2. When the openlist is not empty, take the node n with the highest priority (lowest cost) from the openlist and check its adjacent nodes at the same time;
[0071] 3. For each neighboring node m of node n, if m is not in the openlist, calculate its cost g(m) = g(n) + d(n, m), where d(n, m) is the distance between nodes n and m. If m is already in the openlist, compare whether its cost is smaller. If the cost is smaller, update m's parent node and cost.
[0072] 4. If m is the target node, or its cost is less than the cost of its parent node (indicating that a better path has been found), add m to the list of visited nodes (closelist) and add its parent node to the openlist.
[0073] 5. Repeat steps 2-4 until the openlist is empty or the target node is found.
[0074] 6. Find all the paths from the starting point to the target node from the list of visited nodes, and record their length, direction, etc. These paths are candidate paths.
[0075] It should be noted that the generated candidate path should be as close to the shoreline as possible, and the range of motion of the extended arm of the manipulator needs to be taken into account to ensure that the path can effectively clean the target area.
[0076] S106: Determine evaluation factors of the candidate paths and obtain a local path according to the evaluation factors;
[0077] For details, please refer to Figure 3 , determine the evaluation factors of the candidate path and obtain the local path based on the evaluation factors including:
[0078] S301: Determine the evaluation factors of the candidate path;
[0079] Among them, the evaluation factors include: path length, cleaning efficiency, distance between the hull path and the shoreline and the ability to avoid obstacles.
[0080] Path length: Consider the total length of the candidate path to ensure that the unmanned ship is economical and efficient during execution;
[0081] Cleaning efficiency: measures the ability of a path to effectively clean the target area;
[0082] Distance between the ship path and the shoreline: Ensure that the candidate path is close to the shoreline to maximize the shoreline area clearance;
[0083] Obstacle Avoidance: Evaluates whether candidate paths can skillfully avoid static and dynamic obstacles.
[0084] S302: assigning a weight to each evaluation factor;
[0085] Assigning weights to each evaluation factor is mainly used to reflect the importance of the evaluation factor in the overall evaluation; and the weight assignment can be based on task requirements, user preferences, or automatically adjusted through optimization algorithms.
[0086] S303: performing standardization processing on each evaluation factor to obtain a standardized value of each evaluation factor;
[0087] Each evaluation factor is standardized so that it can remain consistent throughout the entire evaluation process. There are many methods of standardization, such as linear standardization, interval standardization, and Z-score standardization. The following takes Z-score standardization as an example to introduce its operation steps in detail:
[0088] 1. Calculate the mean (μ) of each evaluation factor: add up all the evaluation data and divide it by the number of evaluation data to get the overall mean of the factor.
[0089] 2. Calculate the standard deviation (σ) of each evaluation factor: First, find the difference between each evaluation data and the mean, then sum the squares of these differences, and then divide by the number of evaluation data (minus 1) to get the standard deviation of the factor.
[0090] 3. Convert each evaluation data into a Z score: subtract the mean from the evaluation data and divide it by the standard deviation to get the Z score of the evaluation data.
[0091] 4. Standardize the Z score: Subtract 0.5 from the Z score and multiply it by 2 to get the standardized assessment score.
[0092] Through the above steps, each evaluation factor can be converted into a standardized score between 0 and 1. In this way, the scores of different evaluation factors can be directly compared, thereby achieving a unified evaluation of each evaluation factor.
[0093] It should be noted that in practical applications, other standardization methods can be selected according to specific circumstances. In addition, when performing standardization, the reliability and accuracy of the data should be ensured to avoid affecting the evaluation results.
[0094] S304: performing weighted summation on the standardized value of each evaluation factor according to the weight to obtain an overall evaluation value of the candidate path;
[0095] The overall evaluation value cost of this embodiment is as follows:
[0096] cost = w 1 *cost length +w 2 *cost efficiency +w 3 *cost distance_to_shore +w 4 *cost obstacle_avoidance
[0097] Among them: cost length Indicates the path length; cost efficiency Indicates the cleaning efficiency, which is related to the covered area, cleaning speed, etc.; cost distance_to_shore Indicates the distance between the ship path and the shoreline; cost obstacle_avoidance Indicates the ability to avoid obstacles; w 1 、w 2 、w 3 、w 4They represent the weights corresponding to the path length, cleaning efficiency, the distance between the hull path and the shoreline, and the ability to avoid obstacles.
[0098] S305: Calculate the overall evaluation value of each candidate path, and select the candidate path with the lowest overall evaluation value as the local path.
[0099] Among them, the candidate path with the lowest overall evaluation value usually corresponds to a path that performs well in terms of path length, cleaning efficiency, distance between the hull path and the shoreline, and the ability to avoid obstacles. Therefore, selecting the candidate path with the lowest overall evaluation value is equivalent to selecting the candidate path with the lowest cost, which is the required local path.
[0100] S107: Control the unmanned boat to travel along the local path.
[0101] This embodiment realizes the automatic cleaning of the water area through the above method, and the cleaning efficiency is greatly improved. However, it is mainly for unmanned boats with fixed cleaning devices. This type of unmanned boat can adapt to complex water environments through the above method, but it cannot clean areas that the unmanned boat cannot reach. To solve this problem, the unmanned boat of this embodiment is equipped with a mechanical arm, which can clean the objects to be cleaned in the water area through the mechanical arm. Please refer to Figure 4 , controlling the unmanned ship to travel along a local path includes:
[0102] S401: Acquire the location information of the target object;
[0103] In this embodiment, the position information of the target object is mainly obtained by the camera; in order to improve the accuracy of the target object position detection, a multi-camera joint positioning method can also be used to use the image information captured by different cameras and perform three-dimensional reconstruction of the target object through a certain algorithm to obtain more accurate position information. The multi-camera joint positioning algorithm includes: triangulation method, parallel line method, bundle adjustment method, etc.
[0104] S402: Determine the structure and number of joints of the robotic arm, and define the range of motion of each joint;
[0105] Wherein, determining the structure of the robotic arm mainly includes: determining the type of each joint, the connection relationship between each joint, the starting position of the robotic arm, and the initial angle of each joint.
[0106] The range of motion of each joint is defined as follows: the minimum angle of the joint, the maximum angle of the joint, the minimum position of the joint, and the maximum position of the joint. Considering the various situations that the robot arm may encounter during the cleaning task, it is necessary to ensure that the set range of motion meets the actual needs.
[0107] S403: Establishing a mathematical model of joint motion according to the structure and number of joints of the robotic arm and the motion range;
[0108] Specifically, establishing a mathematical model of joint motion according to the structure, number of joints and range of motion of the robotic arm includes: determining the type of each joint on the robotic arm; if the type of joint is a rotational joint, using angles to represent the position of the joint; if the type of joint is a linear joint, using coordinates to represent the position of the joint; after confirming the position representation method of each joint, obtaining the expected position and posture of the end effector of the robotic arm, and using an inverse kinematics model to convert the expected position and posture of the end effector of the robotic arm into angles or positions of each joint to obtain a mathematical model.
[0109] It should be noted that the mathematical model is created by converting the expected position and posture of the end effector into the angle or position of each joint many times. That is, the mathematical model is pre-set with the corresponding expected position and posture many times, and then converted into the angle or position of each joint, so as to obtain the angle or position of each joint corresponding to each position and posture of the end effector, thereby obtaining the corresponding mathematical model.
[0110] After creating the mathematical model, it is necessary to determine the control method of the actuator on the robot arm, such as using a closed-loop control method such as a PID controller. Specifically, the PID controller adjusts the three parameters of proportion, integration, and differentiation to make the system output close to the expected value. The design method is as follows: a. Set the proportional coefficient Kp so that the output of the actuator is reduced to zero when the robot arm reaches the target posture. b. Set the integral coefficient Ki to eliminate vibration in the process of the robot arm reaching the target posture. c. Set the differential coefficient Kd to predict the movement trend of the robot arm, thereby reducing overshoot and reaction time; while determining the control method of the actuator on the robot arm, the corresponding control algorithm must also be implemented to control the movement of the robot arm actuator according to the planned path and target posture.
[0111] Then, it is necessary to use a simulation environment or an actual hardware platform to verify the accuracy and feasibility of the robot arm's motion model; and based on the verification results, adjust the model parameters and control algorithm to ensure that the robot arm can perform the required actions in actual tasks.
[0112] S404: Obtaining the final position and final angle of each joint according to the position information and using the mathematical model;
[0113] Specifically, obtaining the final position and final angle of each joint based on the position information and using a mathematical model includes: determining the target position and posture of the end effector on the robot arm based on the position information; and then using the mathematical model to convert the target position and posture into the final position and final angle of each joint.
[0114] In one embodiment, obtaining the final position and final angle of each joint based on the position information and using a mathematical model includes: determining the target position and posture of the end effector on the robotic arm based on the position information; then using the forward kinematics model to convert the target position and posture into the final position and final angle of each joint; using the forward kinematics model, the target position and posture can be converted into the final position and angle of each joint, which is suitable for different types of robotic arms and different application scenarios and has good versatility.
[0115] Furthermore, since some robotic arms are provided with extension arms, in the process of determining the target position and posture of the end effector on the robotic arm according to the position information, it is also necessary to determine the telescopic target of the extension arm according to the position information.
[0116] S405: Obtain the starting position of each joint and the initial angle of each joint, and generate a corresponding motion trajectory according to the final position and final angle of each joint;
[0117] Among them, when generating the corresponding motion trajectory, factors such as the joint limitations of the robot, workspace limitations, and collision avoidance must be considered. By reasonably selecting and designing the motion planning algorithm, efficient, safe, and stable robot arm movement can be achieved.
[0118] In this embodiment, after obtaining the starting position and the initial angle of each joint and generating the corresponding motion trajectory according to the final position and the final angle of each joint, it includes: interpolating the motion trajectory, and the interpolation processing is mainly used to ensure the smoothness and continuity of the path; the interpolation processing may include spline interpolation, linear interpolation or other interpolation processing techniques, which can ensure that no drastic changes occur during the movement of the robotic arm.
[0119] After the interpolation processing is completed, this embodiment also needs to perform real-time collision detection on the generated robot arm motion trajectory to ensure that the robot arm does not collide with obstacles in the environment when executing the motion trajectory; if a collision is detected, the motion trajectory is adjusted in time to avoid the obstacle, thereby obtaining the final motion trajectory.
[0120] S406: Control each joint on the robot arm to move according to the motion trajectory.
[0121] While controlling the joints on the robotic arm to move along the motion trajectory, the actual state of the robotic arm is continuously monitored, including the joint angles, the position and posture of the end effector, and the telescopic state of the extension arm. The motion path of the robotic arm is then adjusted in real time according to the actual situation to ensure that the robotic arm can flexibly adapt to environmental changes.
[0122] This embodiment realizes the cleaning of the object to be cleaned (i.e., the target object) on the water area by the robotic arm through steps S401-S406. This embodiment converts the position of the object to be cleaned into the target position and posture of the end effector, and then converts the target position and posture of the end effector into the final position and final angle of each joint, and then generates a corresponding motion trajectory according to the starting position of each joint, the initial angle of each joint, and the final position and final angle of each joint, and then controls each joint to operate according to the generated motion trajectory to move the end effector to the object to be cleaned, thereby cleaning the object to be cleaned.
[0123] When the unmanned boat is traveling along the global route point queue, the coastline ahead, the position of obstacles and the position of the objects to be cleaned are constantly changing. Therefore, it is necessary to continuously detect the environmental coastline, obstacle changes and the position of the objects to be cleaned. At the same time, it is necessary to detect the real-time status of the unmanned boat, including key parameters such as current position, speed, direction, and posture, such as: the current position coordinates of the ship (x, y), the current speed of the ship v, the current heading angle of the ship θ, etc. It is also necessary to detect the real-time status of the robotic arm, including position, posture, joint angle, etc., and then update the local path of the unmanned boat and the motion trajectory of the robotic arm in real time according to the above detection data.
[0124] This embodiment also needs to continuously detect whether the task has been completed, and determine whether the task has been completed by whether the end point of the global route has been reached; once the task is completed, the corresponding end processing is triggered, such as data recording, report generation, or the system automatically enters a sleep state.
[0125] See also Figure 5 This embodiment provides a shore cleaning real-time planning device 500 for an unmanned ship, comprising:
[0126] The acquisition unit 501 is used to acquire the environmental information of the water area and pre-process the environmental information;
[0127] A construction unit 502, used to construct a three-dimensional model of the water environment according to the pre-processed environmental information;
[0128] A recording unit 503 is used to control the unmanned boat to travel close to the shore according to the three-dimensional model, record the coordinates of the unmanned boat in real time, and obtain a global route point queue;
[0129] A setting unit 504 is used to obtain the current position of the unmanned ship and set a target point of the local path according to the current position when the unmanned ship travels along the global route point queue; the target point is located on the global route point queue;
[0130] A generating unit 505, configured to generate a plurality of candidate paths according to the current position and the target point by using a path search algorithm;
[0131] A determination unit 506, configured to determine evaluation factors of the candidate paths and obtain a local path according to the evaluation factors;
[0132] The control unit 507 is used to control the unmanned ship to travel along the local path.
[0133] Furthermore, the generating unit 505 includes:
[0134] A space confirmation subunit, used to determine a search space for local path planning and a boundary of the search space according to the current position and the target point;
[0135] A sampling point generating subunit, used for generating a series of sampling points in the search space and the boundary;
[0136] an obstacle detection subunit, configured to detect obstacles in the search space and the boundary according to the environmental information, and delete sampling points corresponding to the obstacles to obtain final sampling points;
[0137] The path generation subunit is used to generate multiple candidate paths according to the final sampling points and using a path search algorithm.
[0138] Further, the determining unit 506 includes:
[0139] A factor determination subunit, used to determine the evaluation factors of the candidate path;
[0140] A weight assignment subunit, used to assign a weight to each evaluation factor;
[0141] A standardization processing subunit is used to perform standardization processing on each evaluation factor to obtain a standardized value of each evaluation factor;
[0142] A summing subunit, used for performing weighted summation of the standardized value of each evaluation factor according to the weight to obtain an overall evaluation value of the candidate path;
[0143] The calculation subunit is used to calculate the overall evaluation value of each candidate path and select the candidate path with the lowest overall evaluation value as the local path.
[0144] The evaluation factors include: path length, cleaning efficiency, distance between the hull path and the shoreline, and the ability to avoid obstacles.
[0145] Furthermore, a mechanical arm is provided on the unmanned ship, and the control unit 507 includes:
[0146] A position acquisition subunit, used to acquire the position information of the target object;
[0147] Defining subunits for determining the structure and number of joints of the robotic arm and defining the range of motion of each joint;
[0148] A model creation subunit, used for establishing a mathematical model of joint motion according to the structure and number of joints of the robotic arm and the range of motion;
[0149] A model utilizing subunit, used for obtaining the final position and final angle of each joint according to the position information and utilizing the mathematical model;
[0150] The trajectory generation subunit is used to obtain the starting position of each joint and the initial angle of each joint, and generate the corresponding motion trajectory according to the final position and final angle of each joint;
[0151] The motion subunit is used to control each joint on the robot arm to move according to the motion trajectory.
[0152] Furthermore, the model creation subunit includes:
[0153] A type determination subunit, used to determine the type of each joint on the robotic arm;
[0154] A first representation subunit is used for representing the position of the joint using an angle if the type of the joint is a revolute joint;
[0155] A second representation subunit is used for representing the position of the joint using coordinates if the type of the joint is a linear joint;
[0156] The representation determination subunit is used to obtain the expected position and posture of the end effector of the robotic arm after confirming the position representation of each joint, and use the inverse kinematics model to convert the expected position and posture of the end effector of the robotic arm into the angle or position of each joint to obtain the mathematical model.
[0157] Furthermore, the model utilization subunit includes:
[0158] a position determination subunit, used to determine a target position and posture of an end effector on the robotic arm according to the position information;
[0159] The conversion subunit is used to convert the target position and posture into the final position and final angle of each joint by using the mathematical model.
[0160] Furthermore, the trajectory generation subunit is also used for:
[0161] The motion trajectory is interpolated.
[0162] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working processes of the above-mentioned devices and units can refer to the corresponding processes in the aforementioned method embodiments, and will not be repeated here.
[0163] The present invention also provides an unmanned boat, comprising: a real-time planning device for shore cleaning as described in the above embodiment.
[0164] The various embodiments in the specification are described in a progressive manner, and each embodiment focuses on the differences from other embodiments. The same and similar parts between the various embodiments can be referred to each other. For the device disclosed in the embodiment, since it corresponds to the method disclosed in the embodiment, the description is relatively simple, and the relevant parts can be referred to the method part description. It should be pointed out that for ordinary technicians in this technical field, without departing from the principle of the present invention, several improvements and modifications can be made to the present invention, and these improvements and modifications also fall within the scope of protection of the claims of the present invention.
[0165] It should also be noted that, in this specification, relational terms such as first and second, etc. are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, the terms "include", "comprises", or any other variations thereof are intended to cover non-exclusive.
[0166] Inclusion, so that the process, method, article or device including a series of elements includes not only those elements, but also includes other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of more restrictions, the elements defined by the sentence "including a..." do not exclude the existence of other identical elements in the process, method, article or device including the elements.
Claims
1. A real-time planning method for shore cleaning, for use with an unmanned ship, characterized in that: include: Acquiring environmental information of the water area and preprocessing the environmental information; Construct a three-dimensional model of the water environment based on the pre-processed environmental information; Controlling the unmanned boat to travel close to the shore according to the three-dimensional model, recording the coordinates of the unmanned boat in real time, and obtaining a global route point queue; When the unmanned ship travels along the global route point queue, the current position of the unmanned ship is acquired and a target point of a local path is set according to the current position; the target point is located on the global route point queue; Generate multiple candidate paths according to the current position and the target point using a path search algorithm; Determining evaluation factors of the candidate paths and obtaining a local path according to the evaluation factors; The unmanned boat is controlled to travel along the local path.
2. The real-time planning method for shore cleaning according to claim 1 is characterized in that: The generating a plurality of candidate paths according to the current position and the target point by using a path search algorithm comprises: Determine a search space for local path planning and a boundary of the search space according to the current position and the target point; generating a series of sampling points within the search space and the boundary; Detecting obstacles within the search space and the boundary according to the environmental information, and deleting sampling points corresponding to the obstacles to obtain final sampling points; Multiple candidate paths are generated based on the final sampling points and using a path search algorithm.
3. The real-time planning method for shore cleaning according to claim 2 is characterized in that: The step of determining the evaluation factors of the candidate paths and obtaining the local paths according to the evaluation factors comprises: determining evaluation factors for the candidate paths; Assign weights to each evaluation factor; Performing standardization on each evaluation factor to obtain a standardized value of each evaluation factor; The standardized value of each evaluation factor is weighted and summed according to the weight to obtain the overall evaluation value of the candidate path; The overall evaluation value of each candidate path is calculated, and the candidate path with the lowest overall evaluation value is selected as the local path.
4. The real-time planning method for shore cleaning according to claim 3 is characterized in that: The evaluation factors include: path length, cleaning efficiency, distance of the hull path from the shoreline and the ability to avoid obstacles.
5. According to the real-time planning method for shore cleaning in claim 1, the unmanned ship is provided with a mechanical arm, characterized in that: The controlling the unmanned ship to travel according to the local path comprises: Obtaining the location information of the target object; Determine the structure and number of joints of the robotic arm, and define the range of motion of each joint; Establishing a mathematical model of joint motion according to the structure and number of joints of the robotic arm and the range of motion; Obtaining the final position and final angle of each joint according to the position information and using the mathematical model; Get the starting position and initial angle of each joint, and generate the corresponding motion trajectory according to the final position and final angle of each joint; Control each joint on the robot arm to move according to the motion trajectory.
6. The real-time planning method for shore cleaning according to claim 5 is characterized in that: The mathematical model of joint motion established according to the structure and number of joints of the robotic arm and the range of motion comprises: Determining the type of each joint on the robotic arm; If the type of the joint is a revolute joint, the position of the joint is represented by an angle; If the type of the joint is a linear joint, the position of the joint is represented by coordinates; After confirming the position representation of each joint, the expected position and posture of the end effector of the robotic arm are obtained, and the inverse kinematics model is used to convert the expected position and posture of the end effector of the robotic arm into the angle or position of each joint to obtain the mathematical model.
7. The real-time planning method for shore cleaning according to claim 5 is characterized in that: The method of obtaining the final position and final angle of each joint according to the position information and using the mathematical model includes: Determine the target position and posture of the end effector on the robotic arm according to the position information; Using the mathematical model, the target position and posture are converted into the final position and final angle of each joint.
8. The real-time planning method for shore cleaning according to claim 5, characterized in that: The method of obtaining the starting position of each joint and the initial angle of each joint and generating the corresponding motion trajectory according to the final position and final angle of each joint includes: The motion trajectory is interpolated.
9. A real-time planning device for shore cleaning, used for an unmanned ship, characterized in that: include: An acquisition unit, used for acquiring environmental information of the water area and preprocessing the environmental information; A construction unit, used for constructing a three-dimensional model of the water environment according to the pre-processed environmental information; A recording unit, used for controlling the unmanned boat to travel close to the shore according to the three-dimensional model, recording the coordinates of the unmanned boat in real time, and obtaining a global route point queue; A setting unit, configured to obtain a current position of the unmanned ship and set a target point of a local path according to the current position when the unmanned ship travels along the global route point queue; the target point is located on the global route point queue; A generating unit, configured to generate a plurality of candidate paths according to the current position and the target point by using a path search algorithm; a determination unit, configured to determine evaluation factors of the candidate paths and obtain a local path according to the evaluation factors; A control unit is used to control the unmanned boat to travel along the local path.
10. An unmanned ship, characterized in that: include: The real-time planning device for shore cleaning as claimed in claim 9.