A robot motion path planning method and system based on model analysis

Through the robot motion path planning method based on three-dimensional model, the contour data of the target component is analyzed and the target motion path is generated, which solves the problem of unreasonable robot motion path in the prior art, and improves the processing efficiency and accuracy.

CN119347793BActive Publication Date: 2025-04-04安徽工布智造工业科技有限公司
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202411907778.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-12-24
Publication Date
2025-04-04
Estimated Expiration
2044-12-24

AI Technical Summary

Technical Problem

The existing robot motion path planning is not reasonable enough, which may lead to risks such as robot rifle, path interruption, and redundant movement, and processing efficiency needs to be improved.

Method used

Based on the three-dimensional model of the target component, the contour data under the three-dimensional model coordinate system is determined and converted into contour coordinate data under the robot coordinate system. By analyzing the contour consistency segment and contour change segment, the starting point and end point of the motion are obtained and the target motion path is generated.

Benefits of technology

By rationally planning the robot's motion path, unnecessary movements are reduced, repeated paths are avoided, processing efficiency and accuracy are improved, and movement risks are reduced.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119347793B_ABST
    Figure CN119347793B_ABST
Patent Text Reader

Abstract

The embodiment of this specification provides a robot motion path planning method and system based on model analysis, the method includes: based on the three-dimensional model of the target component, determining the contour data of the target component in the three-dimensional model coordinate system; based on the contour data and the three-dimensional model coordinate system, determining the contour coordinate data in the robot coordinate system; based on the contour data, determining the contour consistent segment and contour change segment of the target component; obtaining the motion start point and motion end point of the robot motion path; based on the first coordinate data of the motion start point, the second coordinate data of the motion end point, the third coordinate data of the contour consistent segment and the fourth coordinate data of the contour change segment, generating the target motion path of the robot. The system includes: a first determination module, a second determination module, a third determination module, an acquisition module and a generation module.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of path planning, and in particular to a method and system for robot motion path planning based on model analysis. Background Art

[0002] At present, robots are usually used to weld or cut components during the processing of components, which can improve production efficiency and maintain stable product quality. However, the current robot motion path planning is not reasonable enough, and there may be risks such as robot bypassing the gun, path interruption, redundant motion, etc., and the processing efficiency needs to be improved.

[0003] Therefore, it is hoped to provide a robot motion path planning method and system based on model analysis, which can reasonably plan the robot motion path and improve processing efficiency. Summary of the invention

[0004] One or more embodiments of the present specification provide a robot motion path planning method based on model analysis. The method includes: determining the contour data of the target component in the three-dimensional model coordinate system based on the three-dimensional model of the target component; determining the contour coordinate data in the robot coordinate system based on the contour data and the three-dimensional model coordinate system; determining the contour consistent segment and contour change segment of the target component based on the contour data; obtaining the motion start point and motion end point of the robot's motion path; and generating the target motion path of the robot based on the first coordinate data of the motion start point, the second coordinate data of the motion end point, the third coordinate data of the contour consistent segment, and the fourth coordinate data of the contour change segment.

[0005] One of the embodiments of the present specification provides a robot motion path planning system based on model analysis, the system comprising: a first determination module is configured to determine contour data of a target component in a three-dimensional model coordinate system based on a three-dimensional model of the target component; a second determination module is configured to determine contour coordinate data in a robot coordinate system based on the contour data and the three-dimensional model coordinate system; a third determination module is configured to determine a contour consistent segment and a contour change segment of the target component based on the contour data; an acquisition module is configured to acquire a motion start point and a motion end point of the robot's motion path; a generation module is configured to generate a target motion path of the robot based on the first coordinate data of the motion start point, the second coordinate data of the motion end point, the third coordinate data of the contour consistent segment, and the fourth coordinate data of the contour change segment.

[0006] One or more embodiments of the present specification provide a robot motion path planning device based on model analysis, comprising at least one processor and at least one memory, wherein the at least one memory is used to store computer instructions, and the at least one processor is used to execute a robot motion path planning method based on model analysis.

[0007] One or more embodiments of the present specification provide a computer-readable storage medium, wherein the storage medium stores computer instructions. When a computer reads the computer instructions in the storage medium, the computer executes a robot motion path planning method based on model analysis. BRIEF DESCRIPTION OF THE DRAWINGS

[0008] This specification will be further described in the form of exemplary embodiments, which will be described in detail by the accompanying drawings. These embodiments are not restrictive, and in these embodiments, the same number represents the same structure, wherein:

[0009] Figure 1 is an exemplary module diagram of a robot motion path planning system based on model analysis according to some embodiments of this specification;

[0010] Figure 2 is an exemplary flow chart of a robot motion path planning method based on model analysis according to some embodiments of this specification;

[0011] Figure 3 is an exemplary schematic diagram of determining a target motion path according to some embodiments of this specification;

[0012] Figure 4 is an exemplary schematic diagram of determining a second sequence according to some embodiments of this specification;

[0013] Figure 5 is an exemplary top view of a three-dimensional model of a target component according to some embodiments of the present specification. DETAILED DESCRIPTION

[0014] In order to more clearly illustrate the technical solutions of the embodiments of this specification, the following is a brief introduction to the drawings required for the description of the embodiments. Obviously, the drawings described below are only some examples or embodiments of this specification. For ordinary technicians in this field, this specification can also be applied to other similar scenarios based on these drawings without creative work. Unless it is obvious from the language environment or otherwise explained, the same reference numerals in the figures represent the same structure or operation.

[0015] It should be understood that the "system", "device", "unit" and / or "module" used herein are a method for distinguishing different components, elements, parts, portions or assemblies at different levels. However, if other words can achieve the same purpose, the words can be replaced by other expressions.

[0016] Unless the context clearly indicates an exception, the words "a", "an", "an" and / or "the" do not refer to the singular and may also include the plural. Generally speaking, the terms "include" and "comprise" only indicate the inclusion of the steps and elements that have been clearly identified, and these steps and elements do not constitute an exclusive list. The method or device may also include other steps or elements.

[0017] Flowcharts are used in this specification to illustrate the operations performed by the system according to the embodiments of this specification. It should be understood that the preceding or following operations are not necessarily performed precisely in order. Instead, the steps may be processed in reverse order or simultaneously. At the same time, other operations may also be added to these processes, or one or more operations may be removed from these processes.

[0018] Figure 1 It is an exemplary module diagram of a robot motion path planning system based on model analysis according to some embodiments of this specification.

[0019] In some embodiments, Figure 1 As shown, the robot motion path planning system 100 based on model analysis includes a first determination module 110 , a second determination module 120 , a third determination module 130 , an acquisition module 140 and a generation module 150 .

[0020] In some embodiments, the first determination module 110 may be configured to determine contour data of the target component in a three-dimensional model coordinate system based on the three-dimensional model of the target component.

[0021] In some embodiments, the second determination module 120 may be configured to determine contour coordinate data in the robot coordinate system based on the contour data and the three-dimensional model coordinate system.

[0022] In some embodiments, the third determination module 130 may be configured to determine contour consistent segments and contour varying segments of the target component based on the contour data.

[0023] In some embodiments, the acquisition module 140 may be configured to acquire a motion start point and a motion end point of the motion path of the robot.

[0024] In some embodiments, the acquisition module 140 may be further configured to determine the motion start point and the motion end point based on the number of inner contours, the type of contour change segments, and the number of contour change segments.

[0025] In some embodiments, the generation module 150 can be configured to generate a target motion path of the robot based on first coordinate data of the motion starting point, second coordinate data of the motion end point, third coordinate data of the contour consistent segment, and fourth coordinate data of the contour changing segment.

[0026] In some embodiments, the generation module 150 can be further configured to determine a first sequence corresponding to the contour consistent segment and a second sequence corresponding to the contour change segment based on the first coordinate data, the second coordinate data, the third coordinate data and the fourth coordinate data; and determine the target motion path based on the first sequence and the second sequence.

[0027] In some embodiments, the generation module 150 can be further configured to generate multiple candidate second sequences based on the first coordinate data, the second coordinate data and the fourth coordinate data; evaluate the motion risks of the multiple candidate second sequences through the processing path model based on the multiple candidate second sequences, the third coordinate data and the plane rotation parameters of the robot; and determine the second sequence based on the motion risk.

[0028] In some embodiments, the robot motion path planning system 100 after model analysis may also include a processor and a memory, etc. The processor may process data and / or information related to the robot motion path planning system 100 after model analysis. The processor may execute program instructions based on these data, information and / or processing results to perform one or more functions described in this application. For example, the processor may determine the contour data of the target component based on the three-dimensional model of the target component.

[0029] In some embodiments, the processor may include one or more sub-processing devices (e.g., a single-core processing device or a multi-core multi-core processing device). As an example only, the processor may include a central processing unit (CPU), a digital signal processor (DSP), an embedded processor, etc., or any combination thereof.

[0030] In some embodiments, the first determination module 110 , the second determination module 120 , the third determination module 130 , the acquisition module 140 , and the generation module 150 may be integrated into a processor.

[0031] In some embodiments, the processor may obtain pre-stored data and / or information related to the robot motion path planning system 100 after model analysis from the memory.

[0032] For more information on the above, see Figures 2 to 4 Related description.

[0033] It should be understood that Figure 1 The illustrated system and its modules may be implemented in various ways.

[0034] It should be noted that the above description of the robot motion path planning system 100 and its modules based on model analysis is only for the convenience of description and cannot limit this specification to the scope of the embodiments. It is understandable that for those skilled in the art, after understanding the principle of the system, it is possible to arbitrarily combine the modules or form a subsystem to connect with other modules without deviating from this principle. In some embodiments, Figure 1 The first determination module 110, the second determination module 120, the third determination module 130, the acquisition module 140 and the generation module 150 disclosed in the specification can be different modules in a system, or one module can realize the functions of two or more modules mentioned above. For example, each module can share a storage module, or each module can have its own storage module. Such variations are all within the protection scope of this specification.

[0035] Figure 2 is an exemplary flow chart of a robot motion path planning method based on model analysis according to some embodiments of this specification. Figure 2 As shown, the process 200 includes the following steps. In some embodiments, the process 200 may be executed by a processor.

[0036] Step 210: Based on the three-dimensional model of the target component, determine the contour data of the target component in the three-dimensional model coordinate system.

[0037] The target component refers to a component that needs to be processed by a robot. In some embodiments, the robot motion path planning method based on the model analysis can be applied to scenes such as laser welding or laser cutting of metal components. In this case, the target component is a metal component that needs to be obtained by welding or cutting. The robot motion path planning method based on the model analysis can also be applied to other components, which is not limited in this specification.

[0038] In some embodiments, before processing the target component, the technician can use various modeling software to establish a three-dimensional model of the target component, generate a processing drawing of the target component and store it in a memory, and the processor obtains the processing drawing of the target component from the memory to obtain the three-dimensional model of the target component.

[0039] Contour data refers to data used to represent the position of the contour of the target component in the three-dimensional model. For example, the contour position of the target component can be known through the contour data of the target component. In some embodiments, the target component may include an outer contour, so the contour data may include an outer contour data.

[0040] In some embodiments, the target component further includes one or more inner contours, and thus the contour data may further include one or more inner contour data.

[0041] The outermost and largest contour of the target component is the outer contour, and the remaining contours are the inner contours.

[0042] Figure 5 is an exemplary top view of a three-dimensional model of a target component according to some embodiments of this specification. Figure 5 As shown, the target component 500 includes two contours, namely an outer contour 510 and an inner contour 520 .

[0043] It should be noted that Figure 5 It is just an example, and the target component can be a component of any shape that needs to be obtained by robot processing.

[0044] In some embodiments, for a certain contour of the target component, the processor may select multiple points included in the contour in the three-dimensional model, and determine the coordinates of the multiple points in the three-dimensional model coordinate system as contour data corresponding to the contour.

[0045] In some embodiments, the contour data may include the number of inner contours, and the processor may determine the number of inner contours while determining the contour data.

[0046] Step 220: Determine the contour coordinate data in the robot coordinate system based on the contour data and the three-dimensional model coordinate system.

[0047] The robot is used to process the target component (for example, laser welding, laser cutting, etc.). The robot may include a robotic arm and a processing device (for example, a laser generator, etc.) mounted on the robotic arm. The robotic arm includes multiple degrees of freedom (for example, six degrees of freedom, eight degrees of freedom, etc.), which can drive the processing device to move within a spatial range so that the processing device can perform processing at different positions.

[0048] During the processing, the robot controls the position of the processing device in the robot coordinate system in real time to realize the positioning and processing of the processing device at a specific position. Therefore, in order to realize the processing of the target component by the robot, the contour data needs to be transformed into coordinates. Among them, the robot coordinate system is the coordinate system that comes with the robot.

[0049] The contour coordinate data refers to the representation of the contour data in the robot coordinate system. In some embodiments, the processor obtains the coordinates of the three points that meet the right-hand rule in the three-dimensional model coordinate system and the robot coordinate system, respectively, and calculates the coordinate transformation matrix corresponding to the three-dimensional model coordinate system and the robot coordinate system. Based on the contour data and the coordinate transformation matrix, the contour coordinate data is obtained through matrix calculation.

[0050] Step 230 : determining the contour consistent segments and contour varying segments of the target component based on the contour data.

[0051] The contour consistent segment refers to the straight line segment in the contour of the target component. The contour change segment refers to the other segments in the contour of the target component except the straight line segment. The contour change segment includes at least one of the corner, arc, and angle segment in the contour.

[0052] like Figure 5 As shown, the outer contour 510 of the target component 500 includes 5 contour consistent segments, namely, straight line segment ab, straight line segment bc, straight line segment cd, straight line segment ef and straight line segment fg. The outer contour 510 includes 2 contour varying segments, namely, arc segment de and arc segment ag. The inner contour 520 is a contour varying segment.

[0053] In some embodiments, the processor determines whether a certain contour segment is a straight line segment based on the coordinates of multiple points in the contour data. If the contour segment is a straight line segment, the contour segment is a contour consistent segment, otherwise, the contour segment is a contour change segment. For example, the processor selects n consecutive points in the contour data, and determines whether the n consecutive points are located on a straight line based on the coordinates of the n consecutive points. If the n consecutive points are located on a straight line, the processor expands the n consecutive points outward to obtain n+1 consecutive points, and determines whether the n+1 consecutive points are located on a straight line... until n+m consecutive points are located on a straight line and the points adjacent to the n+m consecutive points are not located on a straight line with the n+m consecutive points. Then the n+m consecutive points correspond to a contour consistent segment. The value of n can be set based on experience.

[0054] In some embodiments, the processor may use a similar method to determine the corner segments, arc segments, and angle segments in the contour of the target component, which will not be described in detail here.

[0055] Based on the determination in the above manner, the processor can also determine the type of contour change segments and the number of contour change segments.

[0056] Step 240, obtaining the movement start point and movement end point of the movement path of the robot.

[0057] The motion path refers to the movement route of the robot during the processing of the target component. In some embodiments, the target component needs to be obtained through multiple processing, and each processing corresponds to a motion path. For example, for laser cutting, the processing device emits laser-cuts-stops emitting laser, which is a cutting process, corresponding to a motion path. After the processing device stops emitting laser, it moves to another point, and re-emits laser-cuts-stops emitting laser, which is another cutting process, corresponding to another motion path.

[0058] The starting point of the movement corresponds to the point where the processing starts in the movement path. The end point of the movement corresponds to the point where the processing ends in the movement path. A movement path corresponds to a starting point and an end point of the movement. For example, for laser cutting, the laser emission-cutting-stopping of the laser emission by the processing device is a cutting process. At this time, the starting point of the movement is the point where the laser emission is started, and the end point of the movement is the point where the laser emission stops.

[0059] In some embodiments, the motion path is a closed curve, in which case the motion start point and the motion end point correspond to the same point.

[0060] In some embodiments, a technician can plan the robot's motion path based on experience, and then obtain the motion starting point and motion end point.

[0061] In some embodiments, the processor may determine the motion start point and the motion end point based on the number of inner contours, the type of contour change segments, and the number of contour change segments.

[0062] The types of the contour change segment include at least one of a corner, an arc, a bent angle segment, etc.

[0063] In some embodiments, the processor can construct multiple first clustering vectors based on the number of historical inner contours corresponding to each of the multiple historical components in the historical data, the type of historical contour change segments, and the number of historical contour change segments, and determine the actual motion starting point and actual motion end point of the robot's motion path corresponding to the first clustering vector in the historical data as the first clustering label corresponding to the first clustering vector.

[0064] In some embodiments, the processor can generate a first target vector based on the number of inner contours of the current target component, the type of contour change segments, and the number of contour change segments. Clustering is performed based on the first target vector and multiple first clustering vectors to obtain multiple first clustering clusters. The processor can select a first clustering cluster (recorded as a first target clustering cluster) containing the first target vector from multiple first clustering clusters. The processor can determine the first clustering label corresponding to the first clustering vector with the least sum of the number of robot gun rotations and path interruptions among multiple first clustering vectors in the first target clustering cluster as the movement starting point and movement end point of the current target component. Clustering methods include but are not limited to K-Means clustering algorithm, DBSACN clustering algorithm, etc.

[0065] In some embodiments, in response to the target motion risks corresponding to the motion starting point and motion end point of the robot's motion path satisfying a preset risk condition, the processor can adjust the tolerance for clustering; based on the adjusted tolerance, the motion starting point and motion end point are re-determined.

[0066] The target motion risk refers to the minimum motion risk of the motion path corresponding to the motion start point and the motion end point. In some embodiments, the processor can generate multiple candidate second sequences corresponding to the motion start point and the motion end point, evaluate the motion risks of the multiple candidate second sequences through the processing path model, and determine the minimum motion risk among the motion risks of the multiple candidate second sequences as the target motion risk of the motion path corresponding to the motion start point and the motion end point. For more information about the candidate second sequences, processing path models, and motion risks, please refer to Figure 4 And related instructions.

[0067] The preset risk condition is a condition for determining whether to adjust the tolerance of clustering. In some embodiments, the preset risk condition is that the target motion risk is greater than a risk threshold. The risk threshold can be set by a technician based on experience.

[0068] In some embodiments, the risk threshold is related to the number of inner contours and the number of contour change segments of the target component. For example, the risk threshold is negatively correlated with the weighted sum of the number of inner contours and the number of contour change segments. The weights of the number of inner contours and the contour change segments can be set based on historical experience.

[0069] The larger the weighted sum of the number of inner contours and the number of contour change segments, the more complex the contour of the target component. At this time, appropriately lowering the risk threshold can reduce the motion risk of the final motion path, improve the stability of the motion path, and avoid the robot from circling the gun and / or interrupting the path too many times during movement.

[0070] Tolerance is the threshold corresponding to the mean of the difference between the centers of each cluster after the previous clustering and the centers of each cluster after the current clustering during the clustering process.

[0071] In some embodiments, in response to the target movement risk corresponding to the movement start point and the movement end point satisfying the preset risk condition, the processor may reduce the tolerance by a preset adjustment amount, wherein the preset adjustment amount may be set based on experience.

[0072] In some embodiments, the processor may re-determine the movement start point and the movement end point through the above-mentioned similar cluster analysis based on the adjusted tolerance.

[0073] In some embodiments of the present specification, when the contour of the target component is relatively complex, the tolerance of clustering is appropriately lowered, and the starting point and the end point of the movement are re-determined based on the adjusted tolerance to improve the accuracy of the determined movement path, thereby reducing movement risks and improving the stability of the movement path.

[0074] In some embodiments of the present specification, based on the number of inner contours, the type of contour change segments, and the number of contour change segments, the starting point and the end point of the motion are determined through cluster analysis, which can more reasonably determine the motion path, reduce the risk of the robot circling the gun or the path being interrupted, and improve processing efficiency.

[0075] Step 250, based on the first coordinate data of the motion starting point, the second coordinate data of the motion end point, the third coordinate data of the contour consistent segment and the fourth coordinate data of the contour changing segment, a target motion path of the robot is generated.

[0076] Coordinate data refers to the coordinates of each point in the robot coordinate system. In some embodiments, the coordinate data may include first coordinate data of the starting point of the movement, second coordinate data of the end point of the movement, third coordinate data of the contour consistent segment, and fourth coordinate data of the contour change segment. The first coordinate data is the coordinate of the starting point of the movement in the robot coordinate system. The second coordinate data is the coordinate of the end point of the movement in the robot coordinate system. The third coordinate data is the coordinate of the point corresponding to the contour consistent segment in the robot coordinate system. The fourth coordinate data is the coordinate of the point corresponding to the contour change segment in the robot coordinate system.

[0077] In some embodiments, the processor may obtain coordinate data corresponding to each point from the contour coordinate data. For example, the processor may determine the coordinates corresponding to the starting point of the movement in the contour coordinate data as the first coordinate data, and determine the coordinates corresponding to the end point of the movement in the contour coordinate data as the second coordinate data.

[0078] The target motion path refers to the motion path of the robot during the processing of the target component. The target motion path includes the motion direction, Rz value, motion start point and motion end point, etc. Among them, the Rz value refers to the rotation angle of the robot around the Z axis of the robot coordinate system.

[0079] In some embodiments, the target motion path can be represented as a sequence of multiple sub-target motion paths. Each sub-target motion path corresponds to a contour consistent segment or contour change segment. The processor can determine the sub-target motion path corresponding to the contour consistent segment or contour change segment by querying a preset table based on the third coordinate data or the fourth coordinate data.

[0080] The preset table includes the correspondence between the third coordinate data and the fourth coordinate data and the sub-target motion path. The preset table can be constructed based on historical data and / or preset based on experience.

[0081] In some embodiments, technicians can determine the sequential processing order of multiple sub-target motion paths based on experience, and combine the multiple sub-target motion paths based on the sequential processing order to obtain the target motion path.

[0082] In some embodiments, the processor may determine a first sequence corresponding to the contour consistent segment and a second sequence corresponding to the contour change segment based on the first coordinate data, the second coordinate data, the third coordinate data, and the fourth coordinate data; determine the target motion path based on the first sequence and the second sequence. For more information, see Figure 3 And related instructions.

[0083] In some embodiments of the present specification, the contour data of the target component in the three-dimensional model coordinate system is converted into contour coordinate data in the robot coordinate system through coordinate transformation. The robot can obtain global and detailed information of the target component (such as contour consistency segments and contour change segments, etc.), and can reasonably plan the robot's motion path, thereby formulating the optimal target motion path, reducing unnecessary movement of the robot, avoiding repeated paths, and improving processing efficiency and accuracy.

[0084] It should be noted that the above description of process 200 is only for example and illustration, and does not limit the scope of application of this specification. For those skilled in the art, various modifications and changes can be made to process 200 under the guidance of this specification. However, these modifications and changes are still within the scope of this specification. For example, the execution order of step 220 and step 230 can be interchanged.

[0085] Figure 3 It is an exemplary schematic diagram of determining a target motion path according to some embodiments of this specification.

[0086] In some embodiments, Figure 3 As shown, the processor can determine the first sequence 321 corresponding to the contour consistent segment and the second sequence 322 corresponding to the contour change segment based on the first coordinate data 311, the second coordinate data 312, the third coordinate data 313 and the fourth coordinate data 314; based on the first sequence 321 and the second sequence 322, determine the target motion path 331.

[0087] For more information about coordinate data, contour consistency segments, contour change segments, and target motion paths, see Figure 2 Related instructions.

[0088] The first sequence 321 refers to a sequence of sub-target motion paths corresponding to the contour consistent segment. The second sequence 322 refers to a sequence of sub-target motion paths corresponding to the contour varying segment. For more information about sub-target motion paths, see Figure 2 Related instructions.

[0089] In some embodiments, the processor constructs a feature vector based on the first coordinate data, the second coordinate data, the third coordinate data, and the fourth coordinate data corresponding to multiple robot movements in the historical data, and constructs a first vector library based on multiple feature vectors. The processor can perform clustering based on multiple feature vectors to obtain multiple second cluster clusters. For each second cluster cluster, the processor can count the number of gun bypasses and path interruptions in the actual processing process corresponding to each feature vector in the second cluster cluster, and determine the actual first sequence and the actual second sequence corresponding to the feature vector with the least number of gun bypasses and path interruptions as the labels corresponding to all feature vectors in the second cluster cluster.

[0090] In some embodiments, the processor constructs a second target vector based on the first coordinate data 311, the second coordinate data 312, the third coordinate data 313, and the fourth coordinate data 314 corresponding to the current robot, and searches the first vector library based on the second target vector, and determines the label corresponding to the feature vector with the greatest similarity to the second target vector as the first sequence 321 and the second sequence 322 corresponding to the second target vector. The similarity can be determined based on the vector distance, and the vector distance includes but is not limited to the Euclidean distance, the cosine distance, etc.

[0091] In some embodiments, the processor may generate multiple candidate second sequences based on the first coordinate data, the second coordinate data, and the fourth coordinate data; evaluate the motion risks of the multiple candidate second sequences through the machining path model based on the multiple candidate second sequences, the third coordinate data, and the plane rotation parameters of the robot; and determine the second sequence based on the motion risks. Figure 4 And related instructions.

[0092] In some embodiments, in response to the number of inner contours and the number of contour change segments in the contour data satisfying the preset condition, the processor may determine the second sequence 322 by searching the first vector database as described above. In response to the number of inner contours and the number of contour change segments in the contour data not satisfying the preset condition, the processor may determine the second sequence 322 by searching the first vector database as described above. Figure 4 The method determines a second sequence 322 .

[0093] For more information about contour data and inner contours, see Figure 2 Related instructions.

[0094] The preset condition is used to determine which method is used to determine the second sequence 322. In some embodiments, the preset condition is that the number of inner contours is less than the inner contour number threshold and the number of contour change segments is less than the change segment number threshold. The inner contour number threshold and the change segment number threshold can be set based on experience.

[0095] In some embodiments, the inner contour number threshold and the change segment number threshold may be determined based on historical motion data of the robot.

[0096] The historical motion data refers to data related to the motion of the robot during the historical processing. The historical motion data includes the number of historical inner contours, the number of historical contour change segments, and the number of historical gun bypasses and / or path interruptions. The processor can obtain the historical motion data based on the historical data.

[0097] In some embodiments, the processor may cluster multiple historical motion data based on the number of historical inner contours and the number of historical contour change segments to obtain multiple third clustering clusters. The processor may calculate the mean of the number of historical gun bypasses and / or path interruptions in the historical motion data in each third clustering cluster. The processor may screen the third clusters (recorded as second target clusters) whose mean is greater than a preset threshold, and calculate the mean of the number of historical inner contours and the mean of the number of historical contour change segments in the historical motion data in each second target cluster. The processor may determine the mean of the minimum number of historical inner contours as the inner contour number threshold, and determine the mean of the minimum number of historical contour change segments as the change segment number threshold. The preset threshold may be set based on experience.

[0098] In some embodiments, the preset threshold may be related to the average of the number of historical gun bypasses and / or path interruptions in the historical motion data. The larger the average, the smaller the first preset threshold.

[0099] In some embodiments of the present specification, the greater the average value of the number of historical gun bypasses and / or path interruptions in the historical motion data, the more likely the robot is to have motion risks. By appropriately lowering the preset threshold, the requirement for determining the second sequence through the processing path model can be reduced, which is more conducive to optimizing path planning and ensuring the stability of the robot's motion path and processing efficiency.

[0100] In some embodiments of the present specification, when the number of inner contours and the number of contour change segments meet the preset conditions, the contour of the target component is relatively simple, and the second sequence is determined by a vector database, which can save computing resources. When the number of inner contours and the number of contour change segments do not meet the preset conditions, the contour of the target component is relatively complex, and the second sequence is determined by a processing path model, which can reduce movement risks and avoid the robot circling the gun or path interruption.

[0101] In some embodiments, technicians can determine the processing sequence of multiple sub-target motion paths in the first sequence 321 and the second sequence 322 based on experience, and combine the multiple sub-target motion paths based on the processing sequence to obtain the target motion path 331.

[0102] In some embodiments of the present specification, based on the first coordinate data, the second coordinate data, the third coordinate data and the fourth coordinate data, the first sequence and the second sequence are determined by vector matching, and the target motion path can be determined based on the actual motion path of the robot. The obtained target motion path is more reliable, can reduce motion risks and improve processing efficiency.

[0103] Figure 4 It is an exemplary schematic diagram of determining the second sequence according to some embodiments of the present specification.

[0104] In some embodiments, Figure 4 As shown, the processor can generate multiple candidate second sequences 411 based on the first coordinate data 311, the second coordinate data 312 and the fourth coordinate data 314; based on the multiple candidate second sequences 411, the third coordinate data 313 and the plane rotation parameters 412 of the robot, evaluate the motion risks 430 of the multiple candidate second sequences 411 through the processing path model 420; based on the motion risk 430, determine the second sequence 322.

[0105] For more information about coordinate data, see Figure 2 For more information about the second sequence, see Figure 3 And related instructions.

[0106] The candidate second sequence 411 refers to a sequence of sub-motion paths that can be selected as the second sequence 322. For more information about the sub-motion paths, see Figure 2 And related instructions.

[0107] In some embodiments, the processor may generate multiple candidate second sequences 411 in multiple ways based on the first coordinate data 311, the second coordinate data 312, and the fourth coordinate data 314. For example, the processor may randomly generate multiple candidate second sequences 411 under the conditions that the first coordinate data 311, the second coordinate data 312, and the fourth coordinate data 314 are satisfied.

[0108] The processing path model 420 refers to a model for evaluating the motion risk 430 of the candidate second sequence 411. In some embodiments, the processing path model is a machine learning model, for example, any one or combination of a deep learning model, a convolutional neural network model, or other customized model structures.

[0109] In some embodiments, the input of the machining path model includes the candidate second sequence 411, the third coordinate data 313, and the plane rotation parameter 412 of the robot. The output of the machining path model includes the motion risk 430 corresponding to the candidate second sequence 411. The processor can input a candidate second sequence into the machining path model each time and output the motion risk corresponding to the candidate second sequence.

[0110] The plane rotation parameter 412 of the robot refers to the Rx and Ry values ​​of the robot in each section of the motion path. Among them, the Rx value refers to the rotation angle of the robot around the x-axis of the robot coordinate system when the robot is moving. The Ry value refers to the rotation angle of the robot around the y-axis of the robot coordinate system when the robot is moving. When Rx and Ry are positive angles, they represent clockwise rotation, and when they are negative angles, they represent counterclockwise rotation. For example, Rx can be 45°, which means that the robot rotates 45° clockwise around the x-axis of the robot coordinate system when it is moving. Among them, the plane rotation parameters of the robot can be preset by a technician.

[0111] The motion risk 430 refers to the risk that may occur when the robot moves based on the candidate second sequence 411. For example, the motion risk 430 includes circumvention of the gun, path discontinuity, and the like.

[0112] In some embodiments, the processing path model 420 can be trained by training samples and labels, and the training samples are collected from historical data when the robot moves multiple times. Each group of training samples includes a sample second sequence, sample third coordinate data, and a plane rotation parameter of the sample robot. The label refers to the sample movement risk corresponding to the sample second sequence when the robot corresponding to each group of training samples in the historical data moves. For example, the label may include the number of times the robot actually goes around the gun and the number of path interruptions when the robot moves based on the sample second sequence.

[0113] In some embodiments, the processor may cluster multiple groups of training samples to obtain multiple fourth clusters. For each fourth cluster, the processor calculates the ratio of the number of training samples of the robot in the fourth cluster that appears when the robot moves based on the second sequence of samples around the gun / path discontinuity to the total number of training samples in the fourth cluster, and determines the ratio as the label of all training samples in the fourth cluster. Clustering methods include but are not limited to K-Means clustering algorithm, mean shift clustering algorithm, etc.

[0114] In some embodiments, the processing path model 420 is trained in the following manner: the processor can input multiple labeled training samples into the initial processing path model, construct a loss function through the labels and the output results of the initial processing path model, and iteratively update the parameters of the initial processing path model based on the loss function. When the loss function of the initial processing path model meets the iteration condition, the model training is completed and the trained processing path model is obtained. Among them, the iteration condition can be that the loss function converges, the number of iterations reaches a threshold, etc.

[0115] In some embodiments, the input of the machining path model 420 also includes the first sequence 321. For more information about the first sequence, see Figure 3 And related instructions.

[0116] In some embodiments, when the input of the machining path model 420 includes the first sequence 321 , the training sample may further include a sample first sequence.

[0117] In some embodiments of the present specification, by adding the first sequence 321, the movement angles of the robot in multiple contour consistent segments and the corresponding Rz values ​​are reflected, which is helpful for predicting the movement risk of connecting with the contour consistent segments and improving the prediction results of the processing path model.

[0118] In some embodiments, the processor may select a candidate second sequence with the lowest motion risk as the second sequence 322 .

[0119] In some embodiments of the present specification, determining the motion risk 430 through the processing path model 420 can improve the efficiency of determining the motion risk, and then determining the second sequence 322 based on the motion risk can effectively reduce the motion risk and improve the efficiency and accuracy of the robot movement.

[0120] Some embodiments of the present specification also provide a robot motion path planning device based on model analysis, including at least one processor and at least one memory, the at least one memory is used to store computer instructions, and the at least one processor is used to execute at least part of the computer instructions to implement the robot motion path planning method based on model analysis described in any of the above embodiments.

[0121] Some embodiments of the present specification also provide a computer-readable storage medium, which stores computer instructions. When a computer reads the computer instructions in the storage medium, the computer executes the robot motion path planning method based on model analysis as described in any of the above embodiments.

[0122] The basic concepts have been described above. Obviously, for those skilled in the art, the above detailed disclosure is only for example and does not constitute a limitation of this specification. Although not explicitly stated here, those skilled in the art may make various modifications, improvements and corrections to this specification. Such modifications, improvements and corrections are suggested in this specification, so such modifications, improvements and corrections still belong to the spirit and scope of the exemplary embodiments of this specification.

[0123] At the same time, this specification uses specific words to describe the embodiments of this specification. For example, "one embodiment", "an embodiment", and / or "some embodiments" refer to a certain feature, structure or characteristic related to at least one embodiment of this specification. Therefore, it should be emphasized and noted that "one embodiment" or "an embodiment" or "an alternative embodiment" mentioned twice or more in different positions in this specification does not necessarily refer to the same embodiment. In addition, certain features, structures or characteristics in one or more embodiments of this specification can be appropriately combined.

[0124] In addition, unless explicitly stated in the claims, the order of the processing elements and sequences described in this specification, the use of alphanumeric characters, or the use of other names are not intended to limit the order of the processes and methods of this specification. Although the above disclosure discusses some invention embodiments that are currently considered useful through various examples, it should be understood that such details are only for illustrative purposes, and the attached claims are not limited to the disclosed embodiments. On the contrary, the claims are intended to cover all modifications and equivalent combinations that are consistent with the essence and scope of the embodiments of this specification. For example, although the system components described above can be implemented by hardware devices, they can also be implemented only by software solutions, such as installing the described system on an existing server or mobile device.

[0125] Similarly, it should be noted that in order to simplify the description disclosed in this specification and thus help understand one or more embodiments of the invention, in the above description of the embodiments of this specification, multiple features are sometimes combined into one embodiment, figure or description thereof. However, this disclosure method does not mean that the features required by the subject matter of this specification are more than the features mentioned in the claims. In fact, the features of the embodiments are less than all the features of the single embodiment disclosed above.

[0126] In some embodiments, numbers describing the number of components and attributes are used. It should be understood that such numbers used in the description of the embodiments are modified by the modifiers "about", "approximately" or "substantially" in some examples. Unless otherwise specified, "about", "approximately" or "substantially" indicate that the numbers are allowed to vary by ±20%. Accordingly, in some embodiments, the numerical parameters used in the specification and claims are approximate values, which may change according to the required features of individual embodiments. In some embodiments, the numerical parameters should take into account the specified significant digits and adopt the general method of retaining the digits. Although the numerical domains and parameters used to confirm the breadth of the range in some embodiments of this specification are approximate values, in specific embodiments, the setting of such numerical values ​​is as accurate as possible within the feasible range.

[0127] Each patent, patent application, patent application publication, and other materials, such as articles, books, specifications, publications, documents, etc., cited in this specification is hereby incorporated by reference in its entirety. Except for application history documents that are inconsistent with or conflicting with the contents of this specification, documents that limit the broadest scope of the claims of this specification (currently or later attached to this specification) are also excluded. It should be noted that if the descriptions, definitions, and / or use of terms in the materials attached to this specification are inconsistent or conflicting with the contents described in this specification, the descriptions, definitions, and / or use of terms in this specification shall prevail.

[0128] Finally, it should be understood that the embodiments described in this specification are only used to illustrate the principles of the embodiments of this specification. Other variations may also fall within the scope of this specification. Therefore, as an example and not a limitation, alternative configurations of the embodiments of this specification may be considered consistent with the teachings of this specification. Accordingly, the embodiments of this specification are not limited to the embodiments explicitly introduced and described in this specification.

Claims

1. A robot motion path planning method based on model analysis, characterized in that: The method comprises: Based on the three-dimensional model of the target component, determining contour data of the target component in the three-dimensional model coordinate system; Based on the contour data and the three-dimensional model coordinate system, determining contour coordinate data in a robot coordinate system; Based on the contour data, determining a contour consistent segment and a contour varying segment of the target component; Get the starting point and end point of the robot's motion path; Determine a first sequence corresponding to the contour consistent segment based on the first coordinate data of the movement starting point, the second coordinate data of the movement end point, the third coordinate data of the contour consistent segment, and the fourth coordinate data of the contour change segment; generating a plurality of candidate second sequences based on the first coordinate data, the second coordinate data and the fourth coordinate data; Based on the multiple candidate second sequences, the third coordinate data and the plane rotation parameter of the robot, the motion risk of the multiple candidate second sequences is evaluated by a processing path model, wherein the processing path model is a machine learning model; Based on the motion risk, determining a second sequence corresponding to the contour change segment; and Based on the first sequence and the second sequence, a target motion path is determined.

2. The method according to claim 1, characterized in that The method of obtaining the movement starting point and the movement end point of the movement path of the robot includes: The movement start point and the movement end point are determined based on the number of inner contours, the type of the contour change segment, and the number of the contour change segments.

3. A robot motion path planning system based on model analysis, characterized in that: The system comprises: The first determination module is configured to determine contour data of the target component in a three-dimensional model coordinate system based on the three-dimensional model of the target component; The second determination module is configured to determine the contour coordinate data in the robot coordinate system based on the contour data and the three-dimensional model coordinate system; The third determination module is configured to determine a contour consistent segment and a contour varying segment of the target component based on the contour data; The acquisition module is configured to acquire a motion start point and a motion end point of a motion path of the robot; and The build module is configured as: Determine a first sequence corresponding to the contour consistent segment based on the first coordinate data of the movement starting point, the second coordinate data of the movement end point, the third coordinate data of the contour consistent segment, and the fourth coordinate data of the contour change segment; generating a plurality of candidate second sequences based on the first coordinate data, the second coordinate data and the fourth coordinate data; Based on the multiple candidate second sequences, the third coordinate data and the plane rotation parameter of the robot, the motion risk of the multiple candidate second sequences is evaluated by a processing path model, wherein the processing path model is a machine learning model; Based on the motion risk, determining a second sequence corresponding to the contour change segment; and Based on the first sequence and the second sequence, a target motion path is determined.

4. The system according to claim 3, characterized in that The acquisition module is further configured to: The movement start point and the movement end point are determined based on the number of inner contours, the type of the contour change segment, and the number of the contour change segments.

5. A robot motion path planning device based on model analysis, characterized in that: The apparatus comprises at least one processor and at least one memory; The at least one memory is used to store computer instructions; The at least one processor is configured to execute at least part of the computer instructions to implement the method according to any one of claims 1 to 2.

6. A computer-readable storage medium, characterized in that: The storage medium stores computer instructions. When a computer reads the computer instructions in the storage medium, the computer executes the method according to any one of claims 1 to 2.

Citation Information

Patent Citations

  • Guide welding system

    CN113909765A