Obstacle avoidance path planning method and system of robot in working area and storage medium
By creating a real-time geometric environment inside the drum of a washing machine or dryer, and using 3D imaging and basic path templates to plan robot paths, the problem of low path planning efficiency in existing technologies is solved, and efficient and safe path planning is achieved.
Patent Information
- Application Number
- CN202511645023.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-11-11
- Publication Date
- 2026-02-27
AI Technical Summary
Existing robotic arm path planning schemes are not suitable for narrow, complex, and restricted unstructured environments, such as inside the drums of washing machines or dryers, resulting in low path planning efficiency.
By creating a real-time geometric environment, point cloud data is collected using 3D imaging devices to generate a continuous 3D mesh model. The target path is planned within the search space by combining basic path templates and priority rules to ensure that obstacles are avoided.
It enables efficient and real-time path planning in constrained unstructured environments, avoiding both static and dynamic obstacles, thus improving the efficiency and safety of path planning.
Smart Images

Figure CN121572287A_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of service robots, in particular to a robot system, a method for obstacle-avoiding path planning of a robot in a working area and a storage medium. BACKGROUND
[0002] In the working flow of a laundry and drying care robot, the robot's mechanical arm needs to extend into the drum of a washing machine or a dryer to perform operations such as picking up and putting down laundry. Since the drum interior serves as the working area of the robot, its space is narrow and its geometry is complex (e.g., there are protruding lifting ribs, irregular inner walls, etc.); and the space inside the drum is full of soft and easily deformed laundry, constituting a typical "restricted unstructured environment". However, the existing path planning schemes for the robot's mechanical arm are applied in relatively open spaces and are not suitable for application in such scenarios. SUMMARY
[0003] The main purpose of the present application is to provide a robot system, a method for obstacle-avoiding path planning of a robot in a working area and a storage medium, aiming to solve the problem that the traditional path planning scheme for the robot's mechanical arm is not suitable for restricted unstructured environments.
[0004] To achieve the above-mentioned purpose, the present application provides a method for obstacle-avoiding path planning of a robot in a working area, comprising:
[0005] creating a real-time geometric environment in the working area;
[0006] obtaining a basic path template associated with the robot from a preset typical motion trajectory library, and according to the basic path template, drawing a search space with a smaller range than the real-time geometric environment from the real-time geometric environment;
[0007] planning a target path in the search space, and converting the target path into motion parameters of the robot for the robot to run according to the motion parameters.
[0008] Optionally, the step of creating a real-time geometric environment in the working area comprises:
[0009] collecting original point cloud data in the working area based on a three-dimensional imaging device;
[0010] preprocessing the original point cloud data to obtain effective point cloud data;
[0011] converting the effective point cloud data into a continuous three-dimensional grid model to constitute a real-time geometric environment.
[0012] Optionally, the three-dimensional imaging device is arranged outside the working area, and the imaging surface of the three-dimensional imaging device is arranged towards the working area; and / or,
[0013] The three-dimensional imaging device is installed at an execution end of the robot, and the step of collecting raw point cloud data in the working area based on the three-dimensional imaging device comprises:
[0014] The execution end is controlled to drive the three-dimensional imaging device to extend into the working area and perform a preset activity.
[0015] Optionally, the process of collecting raw point cloud data in the working area based on the three-dimensional imaging device further comprises:
[0016] Illuminating the working area based on a visible light source; or,
[0017] Ranging the working area based on a non-visible light wave generator.
[0018] Optionally, the step of preprocessing the raw point cloud data to obtain effective point cloud data comprises:
[0019] The raw point cloud data is processed by a voxel grid downsampling method and a statistical outlier removal method respectively to obtain effective point cloud data.
[0020] Optionally, the step of converting the effective point cloud data into a continuous three-dimensional grid model comprises:
[0021] The effective point cloud data is converted into a continuous three-dimensional grid model by a moving cube method; or,
[0022] The effective point cloud data is converted into a continuous three-dimensional grid model by a Poisson surface reconstruction method.
[0023] Optionally, the real-time geometric environment comprises static obstacle geometric structures and dynamic obstacle geometric structures in the working area; and / or,
[0024] The basic path template is associated with working parameters of the robot, and the working parameters comprise types, working modes, and specification parameters of the execution end.
[0025] Optionally, the construction method of the typical motion trajectory library comprises:
[0026] Obtaining prior data of human operation in the working area;
[0027] According to the prior data, a plurality of path templates of robot motion in the working area are obtained, and each path template is stored to obtain a typical motion trajectory library.
[0028] Optionally, the step of drawing a smaller search space from the real-time geometric environment according to the basic path template comprises:
[0029] obtaining an initial radius value associated with the base path template;
[0030] detecting congestion degree data of an obstacle in a real-time geometric environment, and adjusting the initial radius value according to the congestion degree data to obtain an actual radius value;
[0031] centering on the base path template, and drawing a search space according to the actual radius value.
[0032] Optionally, the step of planning a target path in the search space comprises:
[0033] collecting point data in the search space, and generating an initial path according to the point data;
[0034] screening the initial path according to a preset priority rule to obtain a target path.
[0035] Optionally, the preset priority rule comprises:
[0036] setting a gradually increasing priority in order of path length from long to short; and / or,
[0037] setting a gradually increasing priority in order of distance from the obstacle from near to far; and / or,
[0038] setting a gradually increasing priority in order of activity smoothness of an execution end of the robot from low to high.
[0039] Optionally, in the process of running the robot according to the motion parameters, the method further comprises:
[0040] when a new obstacle is detected in the real-time geometric environment, redrawing a new search space from the real-time geometric environment, or re-planning a new target path from the original search space;
[0041] converting the new target path into motion parameters of the robot for running the robot according to the motion parameters.
[0042] Optionally, the new obstacle can be detected based on a three-dimensional imaging device; and / or,
[0043] The new obstacle can be detected based on a force sensing device arranged at the robot.
[0044] In addition, in order to achieve the above technical purposes, the application further provides a robot system, comprising:
[0045] a base station;
[0046] a robot disposed at the base station, the robot comprising a movable execution end; and
[0047] a control device electrically connected to the base station and / or the robot, the control device comprising a memory, a processor, and a robot obstacle-avoiding path planning program stored in the memory and executable on the processor, the robot obstacle-avoiding path planning program being configured to implement the steps of the robot obstacle-avoiding path planning method described above.
[0048] Optionally, the robot system further comprises:
[0049] a three-dimensional imaging device disposed at the execution end and / or the base station; and / or,
[0050] a visible light source disposed at the execution end and / or the base station; and / or,
[0051] a non-visible light wave generator disposed at the execution end.
[0052] In addition, to achieve the above technical purposes, the application further provides a storage medium, wherein the storage medium stores a robot obstacle-avoiding path planning program, and the robot obstacle-avoiding path planning program implements the steps of the robot obstacle-avoiding path planning method described above when executed by a processor.
[0053] In the technical solution provided by the application, the real-time geometric environment created in the working area has real-time performance and can cover static obstacles and dynamic obstacles, so as to ensure that the target path planned subsequently can completely avoid any obstacle. The basic path template is closely related to the working parameters of the robot, and is based on prior knowledge of manual operation, so as to ensure that the target path planned subsequently is more consistent with the characteristics of manual operation. The basic path template can assist in restricting the search space in the relatively large real-time geometric environment. By sampling the target path in the search space, the problem of low efficiency in the prior art that the global planning is applied in the limited space can be fundamentally solved. BRIEF DESCRIPTION OF DRAWINGS
[0054] In order to more clearly illustrate the technical solutions in the embodiments of the application or the prior art, the following will briefly introduce the drawings needed to be used in the embodiments or the prior art description. Obviously, the drawings in the following description only show some embodiments of the application, and for those skilled in the art, other drawings can also be obtained from the structures shown in the drawings without creative labor.
[0055] Figure 1A perspective view of an embodiment of the robot system provided by the present application;
[0056] Figure 2 A structural schematic diagram of a hardware running environment of an embodiment of the control device provided by the present application;
[0057] Figure 3 A flowchart of an embodiment of the obstacle avoidance path planning method of the robot in the working area provided by the present application.
[0058] Brief Description of the Drawings
[0059] 100 base station; 200 robot; 210 execution end; 300 carrier device; 310 working area; 400 control device; 410 processor; 420 communication bus; 430 user interface; 440 network interface; 450 memory.
[0060] The implementation, functional features and advantages of the present application will be further described with reference to the embodiments in combination with the accompanying drawings. DETAILED DESCRIPTION
[0061] The technical solutions in the embodiments of the present application will be clearly and completely described below in combination with the accompanying drawings in the embodiments of the present application. Obviously, the described embodiments are only a part of the embodiments of the present application, rather than all the embodiments of the present application. Based on the embodiments in the present application, all the other embodiments obtained by those skilled in the art without creative work fall within the protection scope of the present application.
[0062] It should be noted that if the embodiments of the present application involve directional indications (such as up, down, left, right, front, back, etc.), the directional indications are only used to explain the relative position relationship, movement condition, etc. between components in a certain posture (as shown in the drawings), and if the certain posture changes, the directional indications also change accordingly.
[0063] In addition, if the embodiments of the present application involve descriptions of "first", "second", etc., the descriptions of "first", "second", etc. are only for description purposes, and cannot be understood as indicating or implying the relative importance of the indicated technical features or implicitly indicating the number of the indicated technical features. Therefore, the features limited by "first" and "second" can explicitly or implicitly include at least one of the features. In addition, the meaning of "and / or" appearing throughout the text includes three parallel solutions. Taking "A and / or B" as an example, it includes A solution, or B solution, or A and B solutions. In addition, the technical solutions of each embodiment can be combined with each other, but it must be based on the fact that a person skilled in the art can realize it, and when the combination of technical solutions appears contradictory or unachievable, it should be considered that the combination of technical solutions does not exist, nor is it within the protection scope required by the present application.
[0064] Referring to Figure 1 The application provides a robot system.
[0065] The robot system provided by the application can be applied in any suitable occasion such as a family, a shopping mall, an enterprise, etc.
[0066] The robot system comprises a base station 100, a robot 200 and a control device 400.
[0067] The robot 200 can be used with any suitable carrier device 300, so as to intelligently and automatically serve and assist the carrier device 300 to complete a preset work.
[0068] The specific form of the carrier device 300 can be adjusted according to actual needs, and is adapted to the occasion in which it is applied. For example, when the carrier device 300 is applied in a family and is set to meet the cleaning needs, the carrier device 300 can be, but is not limited to, a washing device, a drying device, a multifunctional cleaning device, etc.
[0069] At this time, correspondingly, the robot 200 can be set to be capable of assisting the carrier device 300 to perform the operations such as opening a door, closing a door, picking up clothes and other materials in a drum inner cavity, triggering a function button, etc. The robot system will be described below by taking this setting as an example.
[0070] When the carrier device 300 is a washing and protecting device, the drum inner cavity constitutes a work area 310 described below. At this time, it can be understood that the work area 310 is a relatively narrow, complex geometric unstructured space. There are static obstacles and dynamic obstacles in the work area 310. The static obstacles are, for example, the cavity wall of the drum inner cavity, various protruding rib structures, etc. The dynamic obstacles are, for example, clothes placed in the drum, etc. The clothes will be moved.
[0071] The specific form of the robot 200 is not limited, and when the carrier device 300 is a washing and protecting device as described above, the robot 200 can be, but is not limited to, comprising a movable execution end 210. The execution end 210 can be, but is not limited to, a mechanical arm. The activity freedom degree of the execution end 210 can be, but is not limited to, any one or several translational freedom degrees and / or any one or several rotational freedom degrees.
[0072] The base station 100 is generally arranged outside the carrier device 300.
[0073] The base station 100 can be used to install the robot 200. In this case, the base station 100 and the robot 200 can be pre-installed as a modular whole. This makes it more convenient to install, disassemble, transfer and store the module formed by the base station 100 and the robot 200 as a whole. Alternatively, the base station 100 and the robot 200 can be kept separate, transferred and stored separately. Then, when needed, the base station 100 and the robot 200 can be installed and disassembled in sequence.
[0074] In addition, the base station 100 can also be pre-installed with other functions according to actual needs. For example, it can be, but is not limited to, charging, movement adjustment, rotation adjustment, storage and the like.
[0075] The robot system can also be provided with various sensor devices according to actual needs.
[0076] In a specific scheme, the robot system can also include a three-dimensional imaging device. The three-dimensional imaging device is a device that can take three-dimensional image data. For example, a binocular camera.
[0077] The three-dimensional imaging device can be provided as one or at least two. When provided as at least two, each three-dimensional imaging device can be applied to achieve the same imaging purpose. Each three-dimensional imaging device is complementary to each other, and the obtained three-dimensional image data can be integrated with each other. Alternatively, at least two of the three-dimensional imaging devices are applied to achieve different imaging purposes. For example, at least one three-dimensional imaging device is applied to take three-dimensional image data within the working area 310. At least one three-dimensional imaging device is applied to take three-dimensional image data of the environment adjacent to the working area 310 outside the working area 310, and the like.
[0078] In actual application, the three-dimensional imaging device can be assembled at the execution end 210 of the robot 200. That is, at the mechanical arm. In this way, when the robot 200 operates its execution end 210 to extend into the working area 310, the three-dimensional imaging device can be used to take three-dimensional image data within the working area 310.
[0079] And / or, the three-dimensional imaging device can be assembled outside the working area 310, for example, specifically assembled at the base station 100:
[0080] However, the imaging surface of the three-dimensional imaging device can face into the working area 310. When the path of the imaging surface of the three-dimensional imaging device to the working area 310 is substantially unobstructed, for example, without the robot 200, then the three-dimensional image data within the working area 310 can also be taken by the three-dimensional imaging device outside.
[0081] Or at this time, the imaging surface of the three-dimensional imaging device can be directed towards the working area 310, but concentrated at the external environment outside the periphery of the working area 310. In this way, the three-dimensional image data of the external environment outside the periphery of the working area 310 can be captured by the three-dimensional imaging device outside the periphery. For example, when the carrier device 300 is running, or when the robot 200 is operating, the sudden appearance of an external environment, such as a pet, a child, or the like, can be discovered in time.
[0082] Then, in order to make the operation of the three-dimensional imaging device more high-quality and efficient, the robot system can also include a device that assists the imaging of the three-dimensional imaging device. The device is, for example, but not limited to:
[0083] Visible light source. The visible light source is arranged at the execution end 210 and / or the base station 100, and is arranged adjacent to the three-dimensional imaging device. In particular, it is necessary to illuminate the imaging range of the three-dimensional imaging device. The visible light source can emit visible light. It can be, but is not limited to, a common lamp bead, a lamp strip, a lamp bulb, etc.
[0084] And / or non-visible light wave generator. The non-visible light wave generator is arranged at the execution end 210 and is arranged adjacent to the three-dimensional imaging device. It is especially applied in the imaging range of the three-dimensional imaging device. The non-visible light wave generator can emit light waves of a specific wave band. The light waves of a specific wave band emitted by the non-visible light wave generator are applied to the effect of, for example, ranging, etc. Therefore, the non-visible light wave can be, but is not limited to, infrared light wave, ultrasonic wave, laser, etc.
[0085] In addition, the execution end 210 of the robot 200 can also be provided with, for example, a force sensor, etc. The force sensor can sense the force condition at the execution end 210 in real time. When the force sensor senses that the force condition at the execution end 210 is within the normal range, the control device 400 controls the robot 200 to continue to operate normally. When the force sensor senses that the force condition at the execution end 210 is abnormal, the control device 400 will process according to the preset rules, which will be described in detail below.
[0086] Based on one or more of the above embodiments, in a further scheme, the control device 400 described above can be fixedly arranged at the base station 100. Or the control device 400 can be arranged at the carrier device 300. Or directly, the control device 400 can be part of the control system fixedly arranged at the carrier device 300.
[0087] Referring to Figure 2 , Figure 2 The control device 400 structure schematic diagram of the hardware operating environment involved in the embodiment scheme of the application.
[0088] As Figure 2As shown, the control device 400 can include a processor 410, such as a central processing unit 410 (CPU), a communication bus 420, a user interface 430, a network interface 440, and a memory 450. The communication bus 420 is used to realize the connection and communication between the components. The user interface 430 can include a display, an input unit such as a keyboard, and can also include a standard wired interface, a wireless interface. The network interface 440 can optionally include a standard wired interface, a wireless interface (such as a wireless fidelity (WIreless-FIdelity, WI-FI) interface). The memory 450 can be a high-speed random access memory (RAM) memory, or a stable non-volatile memory (Non-Volatile Memory, NVM), such as a disk memory. The memory 450 can also be a storage device independent of the aforementioned processor 410.
[0089] Those skilled in the art can understand that Figure 2 The structure shown in the figure does not constitute a limitation on the control device 400, and can include more or fewer components than shown, or combine certain components, or different component arrangements.
[0090] As Figure 2 As shown, the memory 450 as a storage medium can include an operating system, a network communication module, a user interface 430 module, and an obstacle avoidance path planning program of the robot 200 in the working area 310.
[0091] In Figure 2 In the control device 400 shown, the network interface 440 is mainly used for data communication with a network server; the user interface 430 is mainly used for data interaction with the user; the processor 410 and the memory 450 in the control device 400 of the application can be arranged in the brewing device, and the control device 400 calls the obstacle avoidance path planning program of the robot 200 in the working area 310 stored in the memory 450 through the processor 410, and executes the obstacle avoidance path planning method of the robot 200 in the working area 310 provided by the embodiment of the application.
[0092] The embodiment of the application provides an obstacle avoidance path planning method of a robot 200 in a working area 310, referring to Figure 3 The obstacle avoidance path planning method of the robot 200 in the working area 310 includes:
[0093] Step S100: Create a real-time geometric environment in the working area 310.
[0094] In the embodiment, after confirming the obstacle avoidance path planning procedure of the running robot 200 in the working area 310, it is first necessary to obtain the real-time environment in the current working area 310. Specifically, it is necessary to obtain the real-time geometric structure features in the current working area 310. The geometric structure features are jointly constituted by the static obstacles and dynamic obstacles in the working area 310. Therefore, it is necessary to first create the real-time geometric environment in the current working area 310.
[0095] There are various schemes for creating the real-time geometric environment in the current working area 310:
[0096] In a specific scheme, the geometric structure features in the working area 310 can be scanned in real time by means of a scanner. The scanner can be, but is not limited to, by means of infrared light, laser, ultrasonic wave, etc.
[0097] Or in a specific scheme, the three-dimensional image data in the working area 310 can be taken by means of a three-dimensional imaging device. Specifically, it can include the following steps:
[0098] Step S110: Collecting original point cloud data in the working area 310 based on the three-dimensional imaging device.
[0099] As described above, the robot system can be pre-provided with a three-dimensional imaging device. When it is necessary to collect three-dimensional image data in the working area 310, i.e. original point cloud data, the three-dimensional imaging device can be specifically installed at the execution end 210 of the robot 200. Then the control device 400 controls the execution end 210 to drive the three-dimensional imaging device to extend into the working area 310 and perform a preset activity.
[0100] It can be understood that the activity track of the three-dimensional imaging device formed by the preset activity needs to cover the entire working area 310 as much as possible:
[0101] For example, the execution end 210 can drive the three-dimensional imaging device to perform translational activity along the depth direction of the working area 310, and the execution end 210 can drive the three-dimensional imaging device to perform rotational activity around the axis extending along the depth direction of the working area 310. In such a composite activity process, the imaging surface of the three-dimensional imaging device is enough to face all places in the working area 310.
[0102] Or for example, when the imaging range of the three-dimensional imaging device is large enough, the execution end 210 can also drive the three-dimensional imaging device to perform translational activity along the depth direction of the working area 310, and the execution end 210 can drive the three-dimensional imaging device to perform translational activity along the circumferential direction of the working area 310. In such a composite activity process, the imaging surface of the three-dimensional imaging device can also be directed to all places in the working area 310.
[0103] Before and / or during the imaging of the three-dimensional imaging device, the working area 310 can be illuminated based on the visible light source as described above. And / or the working area 310 can be ranged based on the non-visible light wave generator. Wherein, the illumination of the light source can avoid the situation that the imaging quality of the three-dimensional imaging device is not high due to the over dark of the working area 310. And the ranging of the non-visible light wave generator can assist the three-dimensional imaging device to obtain more accurate geometric structure feature information in the working area 310.
[0104] Especially when there is a challenging environment in the working area 310, for example, the static obstacles thereof include a metal surface, the arrangement of the visible light source and / or the non-visible light wave generator helps to ensure the robustness in the challenging environment.
[0105] After the step S110 as described above is executed, the step S120 of pre-processing the original point cloud data to obtain effective point cloud data is executed.
[0106] It can be understood that when the original point cloud data is obtained based on the three-dimensional imaging device, the data amount of the original point cloud data is generally large. And the original point cloud data generally contains unusable data (i.e. noise data).
[0107] At this time, for example, the voxel grid downsampling method can be used to reduce the data amount of the original point cloud data. The voxel grid downsampling method is a commonly used three-dimensional point cloud data processing method. The core idea thereof is to divide the three-dimensional space into uniform cubic grids (voxels), and replace all points in each voxel with a representative point (such as the centroid or the center point), so as to realize the dimension reduction and simplification of the point cloud data.
[0108] The general steps of the voxel grid downsampling method can include space division, voxel index calculation and sampling point generation. The voxel grid downsampling method can perform data compression, reduce the point cloud data amount, reduce the storage and transmission cost. And can accelerate the calculation, reduce the calculation complexity of the subsequent processing (such as registration, reconstruction). Also can realize feature extraction according to actual needs, highlight the main structure features in shape analysis.
[0109] The statistical outlier removal method can also be used to filter noise data. The statistical outlier removal method generally assumes that most of the points in the point cloud are distributed in a local neighborhood, calculates the mean and standard deviation of the distance between each point and the neighborhood points, and considers the points with a distance exceeding a set threshold as outliers, which is more suitable for real-time processing of original point cloud data.
[0110] It should be noted that the processing steps of the above method of voxel grid downsampling and the processing steps of the method of statistical outlier removal are not strictly limited in sequence, and can be processed in sequence according to actual needs. Of course, in the case of technology, it can also be done at the same time. When the above two processing steps are executed, the original point cloud data can be processed to obtain effective point cloud data.
[0111] After performing step S120 as described above, step S130 is performed: converting the effective point cloud data into a continuous three-dimensional mesh model to form a real-time geometric environment.
[0112] It can be understood that when the effective point cloud data is obtained in real time, the effective point cloud data can be converted into a continuous three-dimensional mesh model by mature technology.
[0113] Specifically, for example, the method of moving cubes can be used to convert the effective point cloud data into a continuous three-dimensional mesh model. Alternatively, the method of Poisson surface reconstruction can be used to convert the effective point cloud data into a continuous three-dimensional mesh model.
[0114] The method of moving cubes is a classic surface rendering algorithm for extracting isosurfaces from a three-dimensional discrete data field. The method of moving cubes generates triangular patches to approximate isosurfaces by processing cube cells (voxels) in the data field according to the relative position relationship between the vertices and the isosurface.
[0115] The core steps of the method of moving cubes include, for example, voxel processing: processing cube cells in the data field one by one, comparing the size relationship of their eight vertices with a given threshold. Pattern classification: according to the relationship between the vertices and the threshold, the voxels are divided into 256 possible states, which can be summarized into 15 basic configurations through rotation and mirroring. Intersection interpolation: for the cube edges intersecting the isosurface, the intersection position is calculated by linear interpolation. Triangular patch generation: connect the intersection points according to the lookup table method (predefined 256 pattern table) to generate triangular patches.
[0116] The method of Poisson surface reconstruction is a three-dimensional point cloud surface reconstruction algorithm based on Poisson equation. The core idea is to recover a smooth and closed object surface from point cloud data with normal vectors by solving the Poisson equation.
[0117] The main flow of the method of Poisson surface reconstruction includes, for example, data preparation: after inputting the point cloud data, preprocessing is required, including filtering and denoising, outlier rejection, and downsampling (if the point cloud density is too high). Normal estimation: calculate the normal vector (vector perpendicular to the surface) of each point. Common methods include PCA (Principal Component Analysis) or local geometric methods. Field function construction: construct a three-dimensional scalar field function, whose gradient at the point cloud is approximately equal to the normal vector field. Define the object boundary by an indicator function (1 inside the surface, 0 outside the surface), and process the gradient field using a smoothing filter. Solve the Poisson equation: convert the problem into a Poisson equation. Discretize and solve using numerical methods (such as finite difference method, multigrid method) to obtain the scalar field. Iso-surface extraction: use the Marching Cubes algorithm to extract the iso-surface from the scalar field to generate a triangular mesh. Post-processing: smooth, hole filling, and detail enhancement of the generated mesh to improve surface quality.
[0118] The method of Poisson surface reconstruction is robust to noisy data, generates smooth and closed surfaces, and is suitable for complex topological structures.
[0119] After performing step S100 as described above, step S200 is performed: obtaining a basic path template associated with robot 200 from a preset typical motion trajectory library, and according to the basic path template, drawing a smaller search space from the real-time geometric environment.
[0120] In this embodiment, it is first necessary to determine the typical motion trajectory library. The typical motion trajectory library can be directly called, obtained by querying, or pre-constructed and stored.
[0121] The construction method of the typical motion trajectory library can include but is not limited to:
[0122] Step A100: obtaining prior data of human operation in working area 310.
[0123] Step A200: obtaining a plurality of path templates of robot 200 motion in working area 310 according to the prior data, storing each path template, and obtaining a typical motion trajectory library.
[0124] It can be understood that the construction of the typical motion trajectory library first requires obtaining a large amount of prior data. The prior data can be generated by repeatedly performing a large amount of preset work through the execution end 210 of the same robot 200.
[0125] Alternatively, the prior data can be generated by human operation in the working area 310. The human can repeatedly perform actions such as picking up clothes, and then aggregate and analyze the sufficient amount of action data to obtain the prior data.
[0126] According to the prior data, a plurality of path templates of the execution end 210 of the robot 200 moving within the working area 310 can be extracted. Each path template can be, but is not limited to:
[0127] A spiral descending trajectory. That is, the end of the mechanical arm moves along a path spiraling downward from the drum port to the drum center, which is suitable for large-capacity drums.
[0128] A parabolic insertion trajectory. That is, the end of the mechanical arm moves directly along a smooth parabola to the vicinity of the target clothes, which is suitable for small and medium-sized drums.
[0129] Each path template is parameterized and stored to form a basic path template.
[0130] The basic path template is generally associated with the working parameters of the robot 200. The working parameters of the robot 200 include the type of the robot 200, the working mode of the robot 200, the specification parameters of the execution end 210 of the robot 200, and the like.
[0131] By associating and storing the basic path template with the corresponding working parameters of the robot 200, a complete typical motion trajectory library is constructed.
[0132] Therefore, in step S200, when the robot 200 is uniquely determined, its working parameters are also known. Then, according to the working parameters of the robot 200, the basic path template associated therewith can be obtained from the typical motion trajectory library.
[0133] Then, the following steps can be performed:
[0134] Step S210: Obtain an initial radius value associated with the basic path template.
[0135] Step S220: Detect the congestion degree data of the obstacles in the real-time geometric environment, and adjust the initial radius value according to the congestion degree data to obtain an actual radius value.
[0136] Step S230: Draw a search space according to the actual radius value with the basic path template as the center.
[0137] It can be understood that after the basic path template is determined, the initial radius value adapted thereto can be determined. The initial radius value can also be obtained by querying the typical motion trajectory library. At this time, when the typical motion trajectory library is constructed in advance, the basic path template, the working parameters of the corresponding robot 200, and the initial radius value corresponding thereto can be associated and stored one by one.
[0138] Alternatively, the initial radius value can be obtained based on user manual input. In this case, for example, the robot system can input the required initial radius value through a fixed human-machine interface.
[0139] When the base path template and the corresponding initial radius value are determined, a virtual search environment is created with the base path template as the center line and the initial radius value as the radius. However, this virtual search environment is an ideal virtual search environment and cannot fully represent the implementation geometry characteristics in the working area 310.
[0140] Therefore, the actual radius value needs to be obtained. At this time, the congestion degree data of the obstacles in the real-time geometric environment can be detected. The obstacles include static obstacles and dynamic obstacles as described above. In particular, for dynamic obstacles in the working area 310. According to the congestion degree data, the initial radius value of the entire path of the base path template can be corrected one by one. And mainly to appropriately reduce the initial radius value to obtain the final actual radius value.
[0141] When the base path template and the corresponding actual radius value are determined, a search space that meets the actual situation is created with the base path template as the center line and the actual radius value as the radius.
[0142] The search space is obviously smaller than the entire real-time geometric environment. That is, the present application does not take the entire drum inner cavity space (i.e., the working area 310) as the search range, but defines a "tunnel-shaped" narrow search space around the selected base path template by introducing prior knowledge. The search range is constrained near the typical trajectory where the robot 200 is most likely to move, greatly reducing the search range, and quickly converging to a safe and efficient target path.
[0143] After performing step S200 as described above, step S300 is performed: planning a target path in the search space and converting the target path into motion parameters of the robot 200 for the robot 200 to run according to the motion parameters.
[0144] In the present embodiment, the step of planning a target path in the search space can include but is not limited to:
[0145] Step S310: Collect point position data in the search space and generate an initial path according to the point position data.
[0146] Step S320: Screen the initial path according to a preset priority rule to obtain a target path.
[0147] It can be understood that the point position data can be collected in the search space first. For example, random sampling points are collected in the search space to generate an initial path.
[0148] When the initial paths are generated, a target path is selected from the initial paths. The target path generally refers to the optimal path among the initial paths after comprehensive consideration. The comprehensive consideration can be reflected by the preset priority rules. The preset priority rules can be, but are not limited to:
[0149] The priority is gradually increased in the order of path length from long to short. That is, in the initial paths, the path with shorter path length is preferentially selected.
[0150] And / or, the priority is gradually increased in the order of distance from the obstacle from near to far. That is, in the initial paths, the path farther away from the obstacle is preferentially selected. And the "farther away" also takes into account that a sufficient safety margin needs to be reserved between the path and the obstacle.
[0151] And / or, the priority is gradually increased in the order of activity smoothness of the execution end 210 of the robot 200 from low to high. In other words, the priority is positively correlated with the activity smoothness of the execution end 210. That is, in the initial paths, the path with higher smoothness is preferentially selected. The smoothness here mainly considers the movement of the mechanical arm of the robot 200. For example, whether the rotation of the mechanical arm is smooth, whether the rotation angle is too large, whether the translation is smooth, etc. In actual application, the path forming a sharp turn is generally penalized to sufficiently ensure the smooth movement of the mechanical arm of the robot 200.
[0152] In this way, the target path finally selected can integrate the requirements of the washing and drying task (such as safety margin, smoothness). Not only can it ensure that there is no collision between the mechanical arm of the robot 200 and the carrier device 300 in geometry, but also make the generated target path more in line with the actual operation requirements of the robot 200.
[0153] It should be noted that the above does not constitute a limitation on the formation method of the point data, the initial path and the target path. For example, after obtaining the point data, a plurality of initial paths can be formed first, and then a target path is selected from the plurality of initial paths. Or, after obtaining the point data, an initial path can be formed according to the point data, and the initial path is selected according to the preset priority, and finally a target path is determined.
[0154] The real-time geometric environment created in the working area 310 has real-time performance, can cover static obstacles and dynamic obstacles, and ensures that the subsequent planned target path can completely avoid any obstacles. The basic path template is closely related to the working parameters of the robot 200, and is based on prior knowledge of manual operation, so as to ensure that the subsequent planned target path is more in line with the characteristics of manual operation. The basic path template can help to constrain and define a relatively small search space in a relatively large real-time geometric environment. By sampling the search space to generate a target path, the problem of low efficiency in the prior art of applying global planning in a limited space can be fundamentally solved.
[0155] Then in the present application, during the process that the robot 200 runs according to the motion parameters, the following can also be included:
[0156] Step S410: When a new obstacle appears in the real-time geometric environment, a new search space is redefined from the real-time geometric environment, or a new target path is re-planned from the original search space.
[0157] Step S420: The new target path is converted into motion parameters of the robot 200, so that the robot 200 runs according to the motion parameters.
[0158] In the present embodiment, the real-time performance of the target path is emphasized. That is, the real-time performance of each obstacle in the working area 310, especially the dynamic obstacle, is emphasized. When the dynamic obstacle changes, the path needs to be re-planned.
[0159] For example, when a new obstacle in the real-time geometric environment is detected based on the three-dimensional imaging device described above and / or based on the force sensor device arranged at the robot 200: if the new obstacle changes the actual radius value, the above related steps are repeated to redefine a new search space from the current real-time geometric environment. Or if the new obstacle does not change the actual radius value, the above related steps are repeated to re-plan a new target path from the original search space.
[0160] In this way, the dynamic constraint sampling strategy can be implemented. The sampling strategy of the classical sampling planning algorithm (such as RRT) in the prior art is improved, so that it is no longer completely random, but is guided to a high-probability success area, which is the core of the efficiency improvement of the algorithm.
[0161] In the present application, the algorithms in the whole process from perception to reconstruction to planning are all designed to be lightweight, which ensures real-time running capability on an embedded platform and meets the requirements of productization and landing.
[0162] The above merely describes the preferred embodiments of the present application, and is not intended to limit the patent scope of the present application. Any equivalent structural changes made according to the content of the present application specification and drawings, or direct / indirect application in other related technical fields, are included in the patent protection scope of the present application.
Claims
1. A method for obstacle avoidance path planning for a robot within a work area, characterized in that, include: Create a real-time geometric environment within the work area; Obtain a basic path template associated with the robot from a preset library of typical motion trajectories, and based on the basic path template, delineate a search space within the real-time geometric environment that is smaller than the real-time geometric environment. A target path is planned within the search space, and the target path is converted into motion parameters for the robot to operate according to the motion parameters.
2. The obstacle avoidance path planning method for a robot within a working area as described in claim 1, characterized in that, The steps for creating the real-time geometric environment of the work area include: The original point cloud data within the working area is acquired using a 3D imaging device. The raw point cloud data is preprocessed to obtain valid point cloud data; The effective point cloud data is converted into a continuous three-dimensional mesh model to form a real-time geometric environment.
3. The obstacle avoidance path planning method for a robot within a working area as described in claim 2, characterized in that, The three-dimensional imaging device is disposed outside the working area, and the imaging surface of the three-dimensional imaging device is oriented towards the working area; and / or, The three-dimensional imaging device is installed at the end effector of the robot, and the step of acquiring raw point cloud data within the working area based on the three-dimensional imaging device includes: The actuator is controlled to drive the three-dimensional imaging device into the working area and perform preset activities.
4. The obstacle avoidance path planning method for a robot within a working area as described in claim 2, characterized in that, The process of acquiring raw point cloud data within the working area based on a 3D imaging device also includes: Illuminate the work area using visible light sources; or... Distance measurement within the working area is performed using a non-visible light wave generator.
5. The obstacle avoidance path planning method for a robot within a working area as described in claim 2, characterized in that, The step of preprocessing the original point cloud data to obtain valid point cloud data includes: The original point cloud data was processed using both voxel grid downsampling and statistical outlier removal methods to obtain effective point cloud data.
6. The obstacle avoidance path planning method for a robot within a working area as described in claim 2, characterized in that, The step of converting the effective point cloud data into a continuous 3D mesh model includes: The effective point cloud data is converted into a continuous 3D mesh model using the moving cube method; or, The effective point cloud data is converted into a continuous three-dimensional mesh model using the Poisson surface reconstruction method.
7. The obstacle avoidance path planning method for a robot within a working area as described in claim 1, characterized in that, The real-time geometric environment includes both static and dynamic obstacle geometry within the working area; and / or, The basic path template is associated with the robot's operating parameters, which include type, operating mode, and end effector specifications.
8. The obstacle avoidance path planning method for a robot within a working area as described in claim 1, characterized in that, The method for constructing the typical motion trajectory library includes: Acquire prior data on human operations within the work area; Based on the prior data, multiple path templates for the robot's movement within the working area are obtained, and each path template is stored to obtain a typical motion trajectory library.
9. The obstacle avoidance path planning method for a robot within a working area as described in claim 1, characterized in that, The step of delineating a smaller search space from the real-time geometric environment based on the basic path template includes: Obtain the initial radius value associated with the base path template; The congestion level data of obstacles in the real-time geometric environment is detected, and the initial radius value is adjusted according to the congestion level data to obtain the actual radius value; Using the basic path template as the center, draw a search space according to the actual radius value.
10. The obstacle avoidance path planning method for a robot within a working area as described in claim 1, characterized in that, The step of planning the target path within the search space includes: Collect point data within the search space and generate an initial path based on the point data; The initial path is filtered according to a preset priority rule to obtain the target path.
11. The obstacle avoidance path planning method for a robot within a working area as described in claim 10, characterized in that, The preset priority rules include: Priority is set gradually increasing according to path length from longest to shortest; and / or, Priority is set progressively higher based on distance from obstacles, from closest to furthest; and / or, The priority is set to gradually increase according to the smoothness of the robot's end effector activity from low to high.
12. The obstacle avoidance path planning method for a robot within a working area as described in claim 1, characterized in that, During the process of the robot operating according to the motion parameters, the following is also included: When a new obstacle is detected in the real-time geometric environment, a new search space is redrawn from the real-time geometric environment, or a new target path is replanned from the original search space. The new target path is converted into motion parameters for the robot to operate according to these parameters.
13. The obstacle avoidance path planning method for a robot within a working area as described in claim 12, characterized in that, New obstacles can be detected using 3D imaging devices; and / or, New obstacles can be detected based on force sensors located on the robot.
14. A robot system, characterized in that, include: Base station; A robot is located at the base station, and the robot includes a movable end effector. as well as, A control device is electrically connected to the base station and / or the robot, the control device including a memory, a processor, and a robot obstacle avoidance path planning program stored in the memory and executable on the processor, the robot obstacle avoidance path planning program in the work area being configured to implement the steps of the robot obstacle avoidance path planning method in the work area as described in any one of claims 1 to 13.
15. The robot system as described in claim 14, characterized in that, The robot system also includes: A three-dimensional imaging device is disposed at the execution end and / or the base station; and / or, A visible light source is located at the execution end and / or the base station; and / or, A non-visible light wave generator is located at the execution end.
16. A storage medium, characterized in that, The storage medium stores a robot obstacle avoidance path planning program within the work area. When the robot obstacle avoidance path planning program within the work area is executed by the processor, it implements the steps of the robot obstacle avoidance path planning method within the work area as described in any one of claims 1 to 13.