Three-dimensional weld weaving trajectory generation method and apparatus, electronic device, and storage medium

By discretizing and transforming the weld path point sequence, a three-dimensional oscillating welding trajectory is generated, which solves the problem of universality in robot welding trajectory generation, reduces development costs, and improves the versatility and effectiveness of welding robots.

WO2026139001A1PCT designated stage Publication Date: 2026-07-02BEIJING XIAOYU INTELLISYS CO LTD

Patent Information

Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
BEIJING XIAOYU INTELLISYS CO LTD
Filing Date
2025-12-25
Publication Date
2026-07-02

AI Technical Summary

Technical Problem

In existing technologies, robot welding trajectory generation methods suffer from poor versatility due to the differences in robot controllers, which increases development costs. Furthermore, the demand for ultra-high precision welds is not strong in non-mass production scenarios, affecting versatility and cost.

Method used

By discretizing the sequence of weld path points on the workpiece, the target point coordinates in the robot tool coordinate system are generated. Combined with welding process information, the welding forward speed and oscillation speed are determined, the transformation relationship between the robot tool coordinate system and the weld coordinate system is established, and a three-dimensional oscillation welding trajectory is generated.

Benefits of technology

It enables the generation of three-dimensional welding trajectories on a general robotic arm control program, adapting to different robots, reducing development costs, and improving the versatility and welding effect of welding robots.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2025145834_02072026_PF_FP_ABST
    Figure CN2025145834_02072026_PF_FP_ABST
Patent Text Reader

Abstract

A three-dimensional weld weaving trajectory generation method and apparatus, an electronic device, and a storage medium. The method comprises: discretizing a weld seam path point sequence of a workpiece to obtain a plurality of target point coordinates of a robotic arm TCP in a world coordinate system, and transforming the plurality of target point coordinates into a robot tool coordinate system; on the basis of a welding travel speed direction and normal between every two adjacent target points in the robot tool coordinate system, determining a coordinate system transformation relationship associated with a starting point among the every two adjacent target points; and generating a three-dimensional weld weaving trajectory on the basis of a welding travel speed between the two target points in the robot tool coordinate system, the coordinate system transformation relationship, and a weld weaving speed between every two adjacent target points in a weld bead coordinate system.
Need to check novelty before this filing date? Find Prior Art

Description

Three-dimensional tack welding trajectory generation method, apparatus, electronic equipment and storage medium

[0001] Cross-reference to related applications

[0002] This application is based on and claims priority to Chinese Patent Application No. 202411931335.5, filed on December 26, 2024, the entire contents of which are incorporated herein by reference. Technical Field

[0003] This disclosure relates to the field of robotic automatic welding technology, and in particular to a method, apparatus, electronic device and storage medium for generating three-dimensional oscillating welding trajectories. Background Technology

[0004] In related technologies, the welding trajectory relies on the body controller of industrial robots or collaborative robots. A specialized welding plugin package is developed based on this controller, enabling it to execute a straight path from two given points, or to execute an arc from three or more given points, ultimately superimposing the welding trajectory onto this path. However, each robot has a different controller program, and the calling methods vary from machine to machine. This isn't a major problem for robots dedicated to a specific welding process, but if better versatility is desired and a generalized motion is expected, this method hinders generalization and increases development costs. Summary of the Invention

[0005] This disclosure provides a method, apparatus, electronic device, and storage medium for generating three-dimensional oscillating welding trajectories.

[0006] According to a first aspect of the present disclosure, a method for generating a three-dimensional tack welding trajectory is provided, comprising:

[0007] Discretize the sequence of weld path points on the workpiece to obtain the coordinates of multiple target points of the robotic arm tool center point TCP in the world coordinate system, and transform the coordinates of the multiple target points to the robot tool coordinate system;

[0008] Based on the welding process information associated with the workpiece, determine the welding advance speed in the robot tool coordinate system between each pair of adjacent target points among the plurality of target points;

[0009] Based on the welding forward speed direction and normal of each pair of adjacent target points in the robot tool coordinate system, determine the coordinate system transformation relationship associated with the starting point of each pair of adjacent target points. The coordinate system transformation relationship is the transformation relationship between the robot tool coordinate system and the weld coordinate system.

[0010] Based on the welding process information, determine the welding oscillation speed between each pair of adjacent target points in the weld coordinate system;

[0011] A three-dimensional oscillation welding trajectory is generated based on the welding forward speed between each pair of adjacent target points in the robot tool coordinate system, the coordinate system transformation relationship associated with the starting point of each pair of adjacent target points, and the welding oscillation speed between each pair of adjacent target points in the weld bead coordinate system.

[0012] According to a second aspect of the present disclosure, a three-dimensional oscillating welding trajectory generation apparatus is provided, comprising:

[0013] The preprocessing module is used to discretize the weld path point sequence of the workpiece to obtain the coordinates of multiple target points of the robotic arm tool center point TCP of the oscillating welding robot in the world coordinate system, and transform the multiple target point coordinates to the robot tool coordinate system;

[0014] The first determining module is used to determine the welding advance speed in the robot tool coordinate system between every two adjacent target points among the plurality of target points, based on the welding process information associated with the workpiece.

[0015] The second determining module is used to determine the coordinate system transformation relationship associated with the starting point of each pair of adjacent target points based on the welding forward speed direction and normal of each pair of adjacent target points in the robot tool coordinate system. The coordinate system transformation relationship is the transformation relationship between the robot tool coordinate system and the weld coordinate system.

[0016] The third determining module is used to determine the welding oscillation speed between each pair of adjacent target points in the weld coordinate system based on the welding process information.

[0017] The generation module is used to generate a three-dimensional oscillation welding trajectory based on the welding forward speed between each two adjacent target points in the robot tool coordinate system, the coordinate system transformation relationship associated with the starting point of each two adjacent target points, and the welding oscillation speed between each two adjacent target points in the weld bead coordinate system.

[0018] According to a third aspect of the present disclosure, an electronic device is provided, comprising:

[0019] At least one processor; and

[0020] A memory communicatively connected to the at least one processor; wherein,

[0021] The memory stores instructions that can be executed by the at least one processor to enable the at least one processor to perform the method described in the first aspect above.

[0022] According to a fourth aspect of the present disclosure, a storage medium is provided that stores instructions that, when executed on an electronic device, cause the electronic device to perform the method described in the first aspect.

[0023] According to a fifth aspect of the present disclosure, a computer program product is provided, including a computer program that, when executed by a processor, implements the steps of the method described in the first aspect.

[0024] According to the technical solution of this disclosure, the weld path point sequence can be discretized to obtain the coordinates of multiple target points in the world coordinate system. These target point coordinates are then transformed into the robot tool coordinate system. Based on the welding forward velocity direction and normal of each pair of adjacent target points in the robot tool coordinate system, a coordinate system transformation relationship associated with the starting point of each pair of adjacent target points is determined. This facilitates the generation of a three-dimensional oscillating welding trajectory based on the coordinate system transformation relationship, the welding forward velocity between the two target points in the robot tool coordinate system, and the welding oscillation velocity between the two target points in the weld bead coordinate system. Therefore, the welding forward velocity in the robot tool coordinate system and the welding oscillation velocity in the weld bead coordinate system can be superimposed through the coordinate system transformation relationship between the robot tool coordinate system and the weld bead coordinate system to generate a three-dimensional oscillating welding trajectory. In other words, the three-dimensional oscillating welding trajectory generation method of this disclosure can be built on a general robotic arm control program for oscillating welding generation. It can adapt to general welding robots or various robot motion algorithms that require superimposed motion on the path, making the welding robot more versatile and reducing development costs.

[0025] Additional aspects and advantages of this disclosure will be set forth in part in the description which follows, and in part will be obvious from the description, or may be learned by practice of this disclosure. Attached Figure Description

[0026] Figure 1 is a schematic flowchart of the three-dimensional swaying welding trajectory generation method provided in the embodiments of this disclosure.

[0027] Figure 2A is a schematic diagram of the coordinate system relationship between the weld coordinate system and the robot tool coordinate system provided in the embodiments of this disclosure.

[0028] Figure 2B is an example diagram of the weld coordinate system provided in the embodiments of this disclosure.

[0029] Figure 3 is a schematic diagram of the coordinate system relationship between the weld coordinate system and the robot tool coordinate system provided in the embodiments of this disclosure.

[0030] Figure 4A is an example diagram of a given period provided in an embodiment of this disclosure.

[0031] Figure 4B is an example diagram of a given period provided in an embodiment of this disclosure.

[0032] Figure 4C is an example diagram illustrating the effects of velocity, displacement, and acceleration in the iterative method provided in the embodiments of this disclosure.

[0033] Figure 5 is a flowchart illustrating the three-dimensional swaying trajectory generation method provided in the embodiments of this disclosure.

[0034] Figure 6A is an example diagram of the trajectory after the swing offset return center line can be obtained through the welding return speed according to the embodiment of this disclosure.

[0035] Figure 6B is a simulation diagram of the z-axis offset effect when the swing offset returns to the center line according to the embodiment of this disclosure.

[0036] Figure 7 is a block diagram of the three-dimensional oscillating welding trajectory generation device provided in the embodiments of this disclosure.

[0037] Figure 8 is a block diagram of an electronic device for implementing a three-dimensional oscillating trajectory generation method according to an embodiment of this disclosure. Detailed Implementation

[0038] Exemplary embodiments will be described in detail herein, examples of which are illustrated in the accompanying drawings. When the following description refers to the drawings, unless otherwise indicated, the same numerals in different drawings denote the same or similar elements. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with the present invention. Rather, they are merely examples of apparatuses and methods consistent with some aspects of the invention as detailed in the appended claims.

[0039] This disclosure is not exhaustive, but merely illustrative of some embodiments, and is not intended to limit the scope of protection of this disclosure. Unless otherwise specified, each step in a particular embodiment can be implemented as an independent embodiment, and the steps can be arbitrarily combined. For example, a solution after removing some steps in a particular embodiment can also be implemented as an independent embodiment, and the order of the steps in a particular embodiment can be arbitrarily interchanged. Furthermore, the optional implementation methods in a particular embodiment can be arbitrarily combined; moreover, the embodiments can be arbitrarily combined, for example, some or all steps of different embodiments can be arbitrarily combined, and a particular embodiment can be arbitrarily combined with the optional implementation methods of other embodiments.

[0040] The prefixes "first," "second," etc., used in the embodiments of this disclosure are merely for distinguishing different descriptive objects and do not impose restrictions on the position, order, priority, quantity, or content of the descriptive objects. The description of the descriptive objects is found in the claims or the context of the embodiments, and the use of prefixes should not constitute unnecessary restrictions. For example, if the descriptive object is a "field," the ordinal numbers preceding "field" in "first field" and "second field" do not restrict the position or order of the "fields." "First" and "second" do not restrict whether the "fields" they modify are in the same message, nor do they restrict the order of "first field" and "second field." Similarly, if the descriptive object is a "level," the ordinal numbers preceding "level" in "first level" and "second level" do not restrict the priority between "levels." Furthermore, the number of descriptive objects is not limited by ordinal numbers and can be one or more. For example, in "first device," the number of "devices" can be one or more. Furthermore, the objects modified by different prefixes can be the same or different. For example, if the object being described is "device", then "first device" and "second device" can be the same device or different devices, and their types can be the same or different. Similarly, if the object being described is "information", then "first information" and "second information" can be the same information or different information, and their content can be the same or different.

[0041] In all embodiments disclosed herein, unless otherwise specified or logically conflicting, the terminology and / or descriptions are consistent across embodiments and can be referenced interchangeably. Technical features from different embodiments can be combined to form new embodiments based on their inherent logical relationships. The terminology used in the embodiments of this disclosure is for the purpose of describing specific embodiments only and is not intended to limit the scope of this disclosure.

[0042] It should be noted that the collection, storage, use, processing, transmission, provision, and disclosure of user personal information involved in the technical solution disclosed herein all comply with the provisions of relevant laws and regulations and do not violate public order and good morals.

[0043] It should also be noted that the information (including but not limited to user device information, user personal information, etc.), data (including but not limited to data used for analysis, data stored, data displayed, etc.) and signals involved in this disclosure are all authorized by the user or fully authorized by all parties, and the collection, use and processing of related data must comply with the relevant laws, regulations and standards of the relevant countries and regions.

[0044] It is worth noting that in the embodiments disclosed herein, certain software, components, models, and other existing solutions in the industry may be mentioned. These should be considered as exemplary, and their purpose is only to illustrate the feasibility of implementing the technical solutions disclosed herein. However, this does not mean that the applicant has used or necessarily used such solutions.

[0045] In related technologies, the welding trajectory relies on the body controller of industrial robots or collaborative robots. A specialized welding plugin package is developed based on this controller, enabling it to execute a straight path from two given points, or to execute an arc from three or more given points, ultimately superimposing the welding trajectory onto this path. However, each robot has a different controller program, and the calling methods vary from machine to machine. This isn't a major problem for robots dedicated to a specific welding process, but if better versatility is desired and a generalized motion is expected, this method hinders generalization and increases development costs.

[0046] It is worth noting that current control methods on the market strive for excellence in various aspects such as welding quality, attempting to create perfect welds. However, many non-mass production scenarios do not require such ultra-high precision welds; instead, welding similar to manual welding is needed. In such cases, the requirement for versatility is relatively high. Based on this, this disclosure provides a three-dimensional oscillating welding trajectory generation method that can be adapted to general welding robots or general robot motion algorithms that require superimposed motion on the path.

[0047] The following description, with reference to the accompanying drawings, outlines a method, apparatus, electronic device, and storage medium for generating three-dimensional oscillating welding trajectories according to embodiments of the present disclosure.

[0048] Figure 1 is a schematic flowchart of the three-dimensional oscillating welding trajectory generation method provided in the embodiments of this disclosure. As shown in Figure 1, the three-dimensional oscillating welding trajectory generation method may include, but is not limited to, the following steps.

[0049] In step 101, the sequence of weld path points on the workpiece is discretized to obtain the coordinates of multiple target points of the tool central point (TCP) of the robotic arm of the oscillating welding robot in the world coordinate system, and the coordinates of the multiple target points are transformed into the robot tool coordinate system.

[0050] In some embodiments, the weld path point sequence of the workpiece can be obtained based on various methods such as large models. For example, the workpiece is scanned using a 3D camera to obtain a 2D image and a 3D point cloud of the workpiece. Visual recognition processing is then performed on the 2D image and 3D point cloud based on a large model to obtain the weld path point sequence of the workpiece. Exemplarily, the weld path point sequence may include multiple point clouds of the weld path of the workpiece. Exemplarily, the large model may be a Large Language Model (LLM), but is not limited to this.

[0051] For example, the method described in this embodiment can be built on a general robotic arm control program. For example, various methods such as using large models can be used to process the point cloud of the workpiece weld path. The point cloud is used to obtain only the coordinate position in three-dimensional space, that is, to control the six coordinate values ​​of the robotic arm TCP in three-dimensional space, such as x, y, z, rx, ry, rz, which are the movement along the x, y, z axes of the world coordinate system and the rotation around the x, y, z axes, respectively. By filtering and interpolating these positions, which are not particularly accurate, such as straight lines or curves, the welding is generated by these subdivided small straight line segments, without having to use complex planning by various algorithms that require manual intervention, such as circular arc fitting and specification.

[0052] In one possible implementation, when the weld path point sequence of the workpiece is obtained, the weld path point sequence can be discretized. For example, the weld path point sequence can be discretized at fixed intervals to obtain the coordinates of multiple target points of the robotic arm TCP in the world coordinate system, and these multiple target point coordinates can be transformed into the robot tool coordinate system. For example, the TCP can be the tip of a welding torch. In some embodiments, terms such as "target point" and "discrete point" can be used interchangeably.

[0053] In some embodiments, the aforementioned plurality of target points can divide the weld path of the workpiece into at least one segment. That is, a segment is formed between every two adjacent target points among the plurality of target points. Each segment corresponds to a robot tool coordinate system. The robot tool coordinate system corresponding to each segment can be a coordinate system established based on the starting point of the segment, that is, the orientation of the starting point of the segment is consistent with the orientation of the starting TCP. For example, after obtaining the coordinates of the multiple target points of the robot arm TCP in the world coordinate system, the coordinates of the multiple target points can be transformed into the corresponding robot tool coordinate system. For example, the origin of the robot tool coordinate system can be the starting point of the segment, the X-axis of the robot tool coordinate system can point to the welding forward speed direction of the segment (i.e., the segment between every two adjacent target points among the plurality of target points) in the robot tool coordinate system, the Z-axis of the robot tool coordinate system can point to the orientation of the welding torch tip in the robot tool coordinate system, and the Y-axis of the robot tool coordinate system can be specified by a right-handed coordinate system.

[0054] In step 102, based on the welding process information associated with the workpiece, the welding advance speed between each two adjacent target points in the robot tool coordinate system is determined among multiple target points.

[0055] In some embodiments, the welding running speed value between each two adjacent target points can be obtained based on the welding process information calculated by certain methods, and the welding forward speed between each two adjacent target points in the robot tool coordinate system can be determined based on the welding running speed value.

[0056] In some embodiments, welding process information associated with the workpiece can be obtained based on user interaction. In some embodiments, welding process information to be used when welding the workpiece can be obtained by using a large model based on the 2D image information and 3D point cloud information of the workpiece; wherein, the 2D image information and 3D point cloud information of the workpiece can be obtained by scanning the workpiece with a 3D camera.

[0057] In some embodiments, the welding process information associated with the workpiece may include, but is not limited to, the welding running speed between every two adjacent target points; for example, the welding running speed may include a speed value and a speed direction. In some embodiments, welding process information associated with the workpiece may be obtained, and the speed value of the welding running speed between every two adjacent target points (i.e., the welding running speed) may be determined from the welding process information, and the welding running speed value between every two adjacent target points may be determined as the welding forward speed between the corresponding two adjacent target points in the robot tool coordinate system.

[0058] For example, the welding speed value between any two adjacent target points can be understood as the welding speed value from the starting point to the ending point between any two adjacent target points. For example, this welding speed value between any two adjacent target points can be obtained based on the welding speed value at the starting point and the welding speed value at the ending point between any two adjacent target points. For instance, the difference between the welding speed value at the starting point and the welding speed value at the ending point between any two adjacent target points is the welding speed value between any two adjacent target points.

[0059] In step 103, the coordinate system transformation relationship associated with the starting point of each pair of adjacent target points is determined based on the welding forward speed direction and normal of each pair of adjacent target points in the robot tool coordinate system.

[0060] In some embodiments, the welding forward velocity direction between each pair of adjacent target points in the robot tool coordinate system can be projected onto the forward direction of the weld bead, serving as the X-axis of the weld bead coordinate system. The normal direction between each pair of adjacent target points in the robot tool coordinate system can be projected onto the normal direction of the oscillating plane, serving as the Z-axis of the weld bead coordinate system, thus obtaining the coordinate system transformation relationship associated with the starting point among each pair of adjacent target points. In some embodiments, this coordinate system transformation relationship can be a transformation relationship between the robot tool coordinate system and the weld bead coordinate system. In some embodiments, the aforementioned oscillating plane can be aligned with the Y-axis of the weld bead coordinate system; or, the oscillation direction of the oscillating plane can form a certain angle with the Y-axis of the weld bead coordinate system; or, the oscillation direction of the oscillating plane can swing on the YZ plane under the weld bead coordinate system. However, in general, these movements are determined based on the forward direction formed by the two adjacent target points and the normal direction of the weld bead.

[0061] In some embodiments, the forward direction of the weld bead can be orthogonalized to the normal direction between each pair of adjacent target points in the robot tool coordinate system; the welding forward velocity direction between each pair of adjacent target points in the robot tool coordinate system is projected onto the X-axis of the weld bead coordinate system to obtain a first rotation matrix; the X-axis points to the forward direction of the weld bead; the first rotation matrix is ​​applied to the orthogonalized normal direction, and the orthogonalized normal direction is aligned to the Z-axis of the weld bead coordinate system to obtain a second rotation matrix; the Z-axis points to the normal direction of the swing plane; based on the first rotation matrix and the second rotation matrix, the coordinate system transformation relationship associated with the starting point among each pair of adjacent target points is determined.

[0062] For example, as shown in Figure 2A, taking steel plates as the workpiece, steel plates 1 and 2 need to be welded together along the weld seam. As shown in Figures 2A and 2B, the welding torch orientation at this discrete distance can be given from the point cloud composed of the weld seam path point sequence. This welding torch orientation is the normal direction of the weld bead. Each pair of adjacent target points forms a segment. The starting point of each segment is taken as the origin, the forward direction is the X-axis of the weld bead coordinate system, the normal direction of the weld bead is the Z-axis of the weld bead coordinate system, and the Y-axis of the weld bead coordinate system is specified by the right-hand coordinate system. In this way, the weld bead coordinate system can be established. As shown in Figure 2A, taking a straight weld bead as an example, there are two discrete points between the start and end points of the weld bead. The start point, end point, and two discrete points are the four target points of the TCP in the world coordinate system. We can establish corresponding weld bead coordinate systems for the three segments formed by these four target points. The starting point of each segment is taken as the origin, the forward direction of each segment (i.e., the velocity direction from the starting point to the end point of the segment) is the X-axis, the normal direction of the segment is the Z-axis, and the Y-axis is specified by the right-hand coordinate system. Thus, the weld bead coordinate system of the segment can be obtained.

[0063] Figure 3 is an example diagram of the coordinate system relationship of a non-linear weld bead provided in an embodiment of this disclosure. As shown in Figure 3, the weld is divided into multiple segments by multiple target points, and a corresponding weld bead coordinate system is established for each segment. Figure 3 shows the weld bead coordinate system and the robot tool coordinate system. In each segment, the weld bead coordinate system and the robot tool coordinate system share the same origin, that is, both are the starting point of that segment. However, the orientation of the robot tool coordinate system is different from the orientation of the weld bead coordinate system generated by the tack welding, so it is necessary to establish the coordinate system relationship between the two (i.e., the coordinate system transformation relationship). Since the welding forward velocity direction of the segment in the robot tool coordinate system (or TCP coordinate system) is consistent with the X-axis direction of the weld bead coordinate system, and the normal direction of the oscillating plane is consistent with the Z-axis direction of the weld bead coordinate system, the welding forward velocity direction of the segment in the robot tool coordinate system can be orthogonalized to the normal direction in the specified robot tool coordinate system. This allows the welding forward velocity direction of the segment to be projected onto the X-axis, resulting in a first rotation matrix R1 that makes the two coincide. Applying this first rotation matrix to the orthogonalized normal and aligning it to the Z-axis yields a second rotation matrix R2. Based on the first and second rotation matrices, the coordinate system transformation relationship M associated with this segment can be obtained. top-seam This refers to the transformation relationship between the robot tool coordinate system and the weld bead coordinate system for that segment. For example, the transformation relationship M can be obtained by multiplying the first rotation matrix R1 and the second rotation matrix R2. top-seam It is worth noting that each time the robotic arm passes a target point in a weld bead, the coordinate system transformation relationship M changes. top-seam Then it needs to be recalculated.

[0064] In step 104, the welding oscillation speed between each two adjacent target points in the weld coordinate system is determined based on the welding process information.

[0065] In some embodiments, the welding process information associated with the workpiece may include, but is not limited to, amplitude and / or frequency. For example, the welding process information may include amplitude and frequency. For example, the amplitude may be a three-dimensional representation of (x, y, z).

[0066] In some embodiments, an auxiliary point sequence associated with each pair of adjacent target points can be generated based on the swing amplitude and / or swing frequency. This auxiliary point sequence can be a sequence of auxiliary points that have periodic motion along all three axes of the weld bead coordinate system. The welding oscillation velocity between each pair of adjacent target points in the weld bead coordinate system is determined using the cosine acceleration motion law. For example, each pair of adjacent target points forms a segment. An auxiliary point sequence associated with this segment can be generated based on the swing amplitude and / or swing frequency. This auxiliary point sequence can be a sequence of auxiliary points that have periodic motion along all three axes of the weld bead coordinate system of this segment. The welding oscillation velocity of this segment in the weld bead coordinate system is determined based on the cosine acceleration motion law.

[0067] In some embodiments, time can be mapped to a given period, and different auxiliary points can be selected from the auxiliary point sequence according to time; the maximum speed is continuously adjusted according to the cosine acceleration motion law of the selected auxiliary points, and finally the speed sequence of the distance between each two adjacent target points is obtained within a specified time; the speed sequence is determined as the welding oscillation speed between each two adjacent target points in the weld coordinate system.

[0068] For example, Figures 4A and 4B show two different example diagrams of different periods. Taking one of these two different periods as an example, time can be mapped to the given period, and different auxiliary points can be selected from the auxiliary point sequence according to time, such as moving to auxiliary points (x, y, z) or (-x, -y, -z), etc. Substituting the selected auxiliary points into the commonly used cosine acceleration formula, the process is iterated (adjusting the magnitude of the maximum speed, for example, increasing the speed value), and finally calculating the speed sequence with acceleration and deceleration that covers a specified distance within a specified time. This sequence is used as the basis for executing a relatively regular waving path, denoted as the welding waving speed.

[0069] For example, the above iterative method may include the following steps: Step 1, calculate the cosine acceleration curve based on the maximum velocity (blue dashed line in Figure 4C) to obtain the displacement X1 reached in a specified time. Step 2, calculate the displacement error error = X - X1, where X is the ideal displacement of a specified distance performed in a specified time. Step 3, when the error error is greater than or equal to a threshold (e.g., 0.00001m), adjust the maximum velocity value to v. max =v max *(1+error / X). Repeat steps 1 to 3 above to iterate until an acceptable cosine acceleration curve is obtained, and finally the welding oscillation velocity between each two adjacent target points in the weld coordinate system is obtained, denoted as vseam-waving.

[0070] In step 105, a three-dimensional oscillation welding trajectory is generated based on the welding forward speed between each two adjacent target points in the robot tool coordinate system, the coordinate system transformation relationship associated with the starting point between each two adjacent target points, and the welding oscillation speed between each two adjacent target points in the weld bead coordinate system.

[0071] In some embodiments, the welding oscillation speed between each pair of adjacent target points can be transformed from the weld coordinate system to the robot tool coordinate system based on the coordinate system transformation relationship associated with the starting point of each pair of adjacent target points. The welding forward speed between each pair of adjacent target points in the robot tool coordinate system and the welding oscillation speed after coordinate system transformation are superimposed to obtain the running speed between each pair of adjacent target points in the robot tool coordinate system. Based on the running speed between each pair of adjacent target points in the robot tool coordinate system, a three-dimensional oscillation welding trajectory is generated.

[0072] For example, the coordinate system transformation relationship described above is the transformation relationship between the robot tool coordinate system and the weld bead coordinate system. This transformation relationship can be inversely operated on to obtain the transformation relationship between the weld bead coordinate system and the robot tool coordinate system. Based on this transformation relationship, the welding oscillation speed is transformed back into the robot tool coordinate system. The welding forward speed and the transformed welding oscillation speed are then superimposed to obtain the running speed between each pair of adjacent target points in the robot tool coordinate system. Combining these running speeds between each pair of adjacent target points in the robot tool coordinate system yields the three-dimensional oscillation welding trajectory. For example, the formula for this running speed can be expressed as follows:

[0073] Among them, v top vseam-waving is the running speed between each two adjacent target points in the robot tool coordinate system; vtop-forward is the welding oscillation speed between each two adjacent target points in the weld bead coordinate system; vtop-forward is the welding forward speed between each two adjacent target points in the robot tool coordinate system. This represents the transformation relationship from the weld coordinate system to the robot tool coordinate system.

[0074] It is worth noting that the robot tool coordinate system is an additional coordinate system, which will not change once the robot equipment is manufactured. However, the actual controlled speed is under the robot tool coordinate system. Therefore, some transformations are needed to modify the welding speed direction in any direction in space to the robot tool coordinate system.

[0075] In the above embodiments, the weld path point sequence can be discretized to obtain multiple target point coordinates of TCP in the world coordinate system. These multiple target point coordinates are then transformed into the robot tool coordinate system. Based on the welding forward velocity direction and normal of each pair of adjacent target points in the robot tool coordinate system, a coordinate system transformation relationship associated with the starting point of each pair of adjacent target points is determined. This facilitates the generation of a three-dimensional oscillating welding trajectory based on the coordinate system transformation relationship, the welding forward velocity of the two target points in the robot tool coordinate system, and the welding oscillation velocity of the two target points in the weld bead coordinate system. Therefore, the welding forward velocity in the robot tool coordinate system and the welding oscillation velocity in the weld bead coordinate system can be superimposed through the coordinate system transformation relationship between the robot tool coordinate system and the weld bead coordinate system to generate a three-dimensional oscillating welding trajectory. That is, the three-dimensional oscillating welding trajectory generation method of this disclosure can be built on a general robotic arm control program for oscillating welding generation, adaptable to general welding robots or various robot motion algorithms that require superimposed motion on the path, thus giving the welding robot better versatility and reducing development costs.

[0076] Figure 5 is a schematic flowchart of the three-dimensional oscillating welding trajectory generation method provided in the embodiments of this disclosure. As shown in Figure 5, the three-dimensional oscillating welding trajectory generation method may include, but is not limited to, the following steps.

[0077] In step 501, the sequence of weld path points on the workpiece is discretized to obtain the coordinates of multiple target points of the robotic arm TCP of the oscillating welding robot in the world coordinate system, and the coordinates of the multiple target points are transformed into the robot tool coordinate system.

[0078] The optional implementation of step 501 can be found in the optional implementation of step 101 in Figure 1 and other related parts in the embodiments involved in Figure 1, which will not be repeated here.

[0079] In step 502, the welding advance speed between each two adjacent target points in the robot tool coordinate system is determined based on the welding process information associated with the workpiece.

[0080] The optional implementation of step 502 can be found in the optional implementation of step 102 in Figure 1 and other related parts in the embodiments involved in Figure 1, which will not be repeated here.

[0081] In step 503, the coordinate system transformation relationship associated with the starting point of each pair of adjacent target points is determined based on the welding forward speed direction and normal of each pair of adjacent target points in the robot tool coordinate system.

[0082] The optional implementation of step 503 can be found in the optional implementation of step 103 in Figure 1 and other related parts in the embodiments involved in Figure 1, which will not be repeated here.

[0083] In step 504, the welding oscillation speed between each pair of adjacent target points in the weld coordinate system is determined based on the welding process information.

[0084] The optional implementation of step 504 can be found in the optional implementation of step 104 in Figure 1 and other related parts in the embodiments involved in Figure 1, which will not be repeated here.

[0085] In step 505, the welding return speed in the weld coordinate system between each two adjacent target points is determined.

[0086] In some embodiments, the offset information of the oscillation trajectory generated during the distance between each two adjacent target points can be obtained; based on the oscillation trajectory offset information, the welding return speed between each two adjacent target points in the weld coordinate system is determined. For example, the welding oscillation speed in step 504 is an open-loop speed, which may lead to discrepancies between the actual executed position and the ideal position due to time discrepancies and inconsistencies in the cycle. Therefore, at the beginning of each cycle, the error value between the current position, or the extreme point of the oscillation in the previous cycle, and the theoretically expected position can be determined. This error value constitutes the oscillation trajectory offset information. This error value is used as an input parameter for PID (Proportional Integral Derivative) or other adjustment algorithms to calculate and generate the welding return speed in subsequent cycles, denoted as v. seam-back As shown in Figures 6A and 6B, when a swing offset occurs, the trajectory after the swing offset returns to the center line can be obtained by measuring the welding return speed.

[0087] In step 506, a three-dimensional oscillation welding trajectory is generated based on the welding forward speed between each pair of adjacent target points in the robot tool coordinate system, the coordinate system transformation relationship associated with the starting point between each pair of adjacent target points, and the welding oscillation speed and welding return speed between each pair of adjacent target points in the weld bead coordinate system.

[0088] In some embodiments, based on the coordinate system transformation relationship associated with the starting point of each pair of adjacent target points, the welding oscillation speed and welding return speed are transformed from the weld coordinate system to the robot tool coordinate system, respectively; the welding forward speed, the welding oscillation speed and the welding return speed after coordinate system transformation between each pair of adjacent target points are superimposed to obtain the running speed between each pair of adjacent target points in the robot tool coordinate system; and a three-dimensional oscillation welding trajectory is generated based on the running speed between each pair of adjacent target points in the robot tool coordinate system.

[0089] For example, the above coordinate system transformation relationship is the transformation relationship between the robot tool coordinate system and the weld bead coordinate system. This coordinate system transformation relationship can be inversely operated to obtain the transformation relationship between the weld bead coordinate system and the robot tool coordinate system. Based on this transformation relationship, the welding oscillation speed and welding return speed are transformed back into the robot tool coordinate system. The welding advance speed, the welding oscillation speed after coordinate system transformation, and the welding return speed are then superimposed to obtain the running speed between each pair of adjacent target points in the robot tool coordinate system. Combining these running speeds between each pair of adjacent target points in the robot tool coordinate system yields the three-dimensional oscillation welding trajectory. For example, this running speed v... top The formula can be expressed as follows:

[0090] In some embodiments, the running speed between any two adjacent target points in the robot tool coordinate system can be transformed into the coordinate system for controlling the movement of the robotic arm. This disclosure uses speed control in the robot tool coordinate system, but is not limited to this. For example, it can control the movement of any coordinate system point behind a flange, or the speed at which a positioner or other device moves a welding workpiece. This speed can be transmitted via various control methods such as servo control to control the movement of the robotic arm. When controlling the movement of the robotic arm, the robotic arm's TCP can be executed to the starting point in the world coordinate system, and the obtained speed value can be transmitted to the robotic arm to control its movement and achieve tack welding.

[0091] In the above embodiments, by taking into account the welding return speed, the generated three-dimensional oscillating welding trajectory can be made more regular, further improving the welding effect of the welding robot.

[0092] Figure 7 is a block diagram of a three-dimensional oscillating welding trajectory generation device provided in an embodiment of this disclosure. As shown in Figure 7, the three-dimensional oscillating welding trajectory generation device may include: a preprocessing module 701, a first determining module 702, a second determining module 703, a third determining module 704, and a generation module 705.

[0093] The preprocessing module 701 is used to discretize the weld path point sequence of the workpiece, obtain the coordinates of multiple target points of the robotic arm tool center point TCP of the oscillating welding robot in the world coordinate system, and transform the coordinates of multiple target points to the robot tool coordinate system.

[0094] The first determining module 702 is configured to determine the welding advance speed in the robot tool coordinate system between each pair of adjacent target points among a plurality of target points based on welding process information associated with the workpiece. In some embodiments, the first determining module 702 is specifically configured to: determine the welding process information associated with the workpiece; the welding process information includes welding running speed values ​​between each pair of adjacent target points; and determine the welding running speed values ​​between each pair of adjacent target points as the welding advance speed between the corresponding adjacent target points in the robot tool coordinate system.

[0095] The second determining module 703 is used to determine the coordinate system transformation relationship associated with the starting point of each pair of adjacent target points based on the welding forward speed direction and normal of each pair of adjacent target points in the robot tool coordinate system. The coordinate system transformation relationship is the transformation relationship between the robot tool coordinate system and the weld bead coordinate system. In some embodiments, the second determining module 703 is used to: orthogonalize the forward direction of the weld bead with the normal of each pair of adjacent target points in the robot tool coordinate system; project the welding forward speed direction of each pair of adjacent target points in the robot tool coordinate system onto the X-axis of the weld bead coordinate system to obtain a first rotation matrix; the X-axis points to the forward direction of the weld bead; apply the first rotation matrix to the orthogonalized normal and align the orthogonalized normal to the Z-axis of the weld bead coordinate system to obtain a second rotation matrix; the Z-axis points to the normal of the swing plane; and determine the coordinate system transformation relationship associated with the starting point of each pair of adjacent target points based on the first rotation matrix and the second rotation matrix.

[0096] The third determining module 704 is used to determine the welding oscillation speed between each pair of adjacent target points in the weld bead coordinate system based on welding process information. In some embodiments, the third determining module 704 is used to: generate an auxiliary point sequence associated with each pair of adjacent target points based on the oscillation amplitude and / or oscillation frequency, wherein the auxiliary point sequence is a sequence of auxiliary points that have periodic motion along all three axes in the weld bead coordinate system; and determine the welding oscillation speed between each pair of adjacent target points in the weld bead coordinate system using the cosine acceleration motion law.

[0097] In some embodiments, the third determining module 704 is used to: map time to a given period and select different auxiliary points from the auxiliary point sequence according to time; continuously adjust the magnitude of the maximum speed according to the cosine acceleration motion law of the selected auxiliary points, and finally obtain the speed sequence of the distance between each two adjacent target points within a specified time; and determine the speed sequence as the welding oscillation speed between each two adjacent target points in the weld coordinate system.

[0098] The generation module 705 is used to generate a three-dimensional oscillation welding trajectory based on the welding forward speed between each two adjacent target points in the robot tool coordinate system, the coordinate system transformation relationship associated with the starting point between each two adjacent target points, and the welding oscillation speed between each two adjacent target points in the weld bead coordinate system.

[0099] In some embodiments, the third determining module 704 is further configured to: determine the welding return speed between each pair of adjacent target points in the weld bead coordinate system. In some embodiments, the third determining module 704 is configured to: acquire the oscillation trajectory offset information generated during the execution of the distance between each pair of adjacent target points; and determine the welding return speed between each pair of adjacent target points in the weld bead coordinate system based on the oscillation trajectory offset information. In this embodiment, the generating module 705 is configured to: generate a three-dimensional oscillation trajectory based on the welding forward speed between each pair of adjacent target points in the robot tool coordinate system, the coordinate system transformation relationship associated with the starting point of each pair of adjacent target points, the welding oscillation speed between each pair of adjacent target points in the weld bead coordinate system, and the welding return speed.

[0100] In some embodiments, the generation module 705 is configured to: transform the welding oscillation speed and welding return speed from the weld coordinate system to the robot tool coordinate system based on the coordinate system transformation relationship associated with the starting point of each pair of adjacent target points; superimpose the welding forward speed, the welding oscillation speed and the welding return speed after coordinate system transformation between each pair of adjacent target points in the robot tool coordinate system to obtain the running speed between each pair of adjacent target points in the robot tool coordinate system; and generate a three-dimensional oscillation welding trajectory based on the running speed between each pair of adjacent target points in the robot tool coordinate system.

[0101] Regarding the apparatus in the above embodiments, the specific manner in which each module performs its operation has been described in detail in the embodiments related to the method, and will not be elaborated upon here.

[0102] According to embodiments of this disclosure, this disclosure also provides an electronic device and a readable storage medium.

[0103] Figure 8 is a block diagram of an electronic device for implementing a three-dimensional oscillating welding trajectory generation method according to an embodiment of the present disclosure. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workbenches, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device may also represent various forms of mobile devices, such as personal digital processors, cellular phones, smartphones, wearable devices, and other similar computing devices. Furthermore, the electronic device may be a robot (e.g., a welding robot), or a microcontroller that can be applied to a robot (e.g., a welding robot). The components shown herein, their connections and relationships, and their functions are merely examples and are not intended to limit the implementation of the present disclosure described and / or claimed herein.

[0104] As shown in Figure 8, the electronic device includes one or more processors 801, a memory 802, and interfaces for connecting the components, including high-speed interfaces and low-speed interfaces. The components are interconnected via different buses and can be mounted on a common motherboard or otherwise as required. The processors can process instructions executed within the electronic device, including instructions stored in or on memory to display graphical information of a GUI on an external input / output device (such as a display device coupled to the interface). In other embodiments, multiple processors and / or multiple buses can be used with multiple memories and multiple memory modules, if desired. Similarly, multiple electronic devices can be connected, each providing some of the necessary operations (e.g., as a server array, a group of blade servers, or a multiprocessor system). Figure 8 uses a single processor 801 as an example.

[0105] The memory 802 is the non-transitory computer-readable storage medium provided in this disclosure. The memory stores instructions executable by at least one processor to cause the at least one processor to perform the three-dimensional tumbling weld trajectory generation method provided in this disclosure. The non-transitory computer-readable storage medium of this disclosure stores computer instructions for causing a computer to perform the three-dimensional tumbling weld trajectory generation method provided in this disclosure.

[0106] The memory 802, as a non-transitory computer-readable storage medium, can be used to store non-transitory software programs, non-transitory computer-executable programs, and modules, such as the program instructions / modules corresponding to the three-dimensional oscillating welding trajectory generation method in the embodiments of this disclosure (e.g., the preprocessing module 701, the first determining module 702, the second determining module 703, the third determining module 704, and the generation module 705 shown in Figure 7). The processor 801 executes various functional applications and data processing of the server by running the non-transitory software programs, instructions, and modules stored in the memory 802, thereby implementing the three-dimensional oscillating welding trajectory generation method in the above method embodiments.

[0107] The memory 802 may include a program storage area and a data storage area. The program storage area may store the operating system and applications required for at least one function; the data storage area may store data created based on the use of the electronic device. Furthermore, the memory 802 may include high-speed random access memory and may also include non-transitory memory, such as at least one disk storage device, flash memory device, or other non-transitory solid-state storage device. In some embodiments, the memory 802 may optionally include memory remotely located relative to the processor 801, and these remote memories can be connected to the electronic device via a network. Examples of such networks include, but are not limited to, the Internet, intranets, local area networks, mobile communication networks, and combinations thereof.

[0108] The electronic device may also include an input device 803 and an output device 804. The processor 801, memory 802, input device 803 and output device 804 can be connected by a bus or other means, as shown in Figure 8, which illustrates a connection via a bus.

[0109] Input device 803 can receive input numerical or character information, and generate key signal inputs related to user settings and function control of the electronic device, such as touch screens, keypads, mice, trackpads, touchpads, joysticks, one or more mouse buttons, trackballs, joysticks, etc. Output device 804 may include display devices, auxiliary lighting devices (e.g., LEDs), and haptic feedback devices (e.g., vibration motors). The display device may include, but is not limited to, liquid crystal displays (LCDs), light-emitting diode (LED) displays, and plasma displays. In some embodiments, the display device may be a touch screen.

[0110] Various implementations of the systems and techniques described herein can be implemented in digital electronic circuit systems, integrated circuit systems, application-specific integrated circuits (ASICs), computer hardware, firmware, software, and / or combinations thereof. These various implementations may include: implementations in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which may be a dedicated or general-purpose programmable processor, capable of receiving data and instructions from a storage system, at least one input device, and at least one output device, and transferring data and instructions to the storage system, the at least one input device, and the at least one output device.

[0111] These computational programs (also referred to as programs, software, software applications, or code) include machine instructions for a programmable processor and can be implemented using high-level procedural and / or object-oriented programming languages, and / or assembly / machine languages. As used herein, the terms “machine-readable medium” and “computer-readable medium” refer to any computer program product, device, and / or apparatus (e.g., disk, optical disk, memory, programmable logic device (PLD)) used to provide machine instructions and / or data to a programmable processor, including machine-readable media that receive machine instructions as machine-readable signals. The term “machine-readable signal” refers to any signal used to provide machine instructions and / or data to a programmable processor.

[0112] To provide interaction with a user, the systems and techniques described herein can be implemented on a computer having: a display device for displaying information to the user (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor); and a keyboard and pointing device (e.g., a mouse or trackball) through which the user provides input to the computer. Other types of devices can also be used to provide interaction with the user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including sound input, voice input, or tactile input).

[0113] The systems and technologies described herein can be implemented in computing systems that include backend components (e.g., as data servers), or middleware components (e.g., application servers), or frontend components (e.g., user computers with graphical user interfaces or web browsers through which users can interact with implementations of the systems and technologies described herein), or any combination of such backend, middleware, or frontend components. The components of the system can be interconnected via digital data communication of any form or medium (e.g., communication networks). Examples of communication networks include local area networks (LANs), wide area networks (WANs), the Internet, and blockchain networks.

[0114] Computer systems can include clients and servers. Clients and servers are generally geographically separated and typically interact via communication networks. The client-server relationship is created by computer programs running on the respective computers and having a client-server relationship with each other. A server can be a cloud server, also known as a cloud computing server or cloud host, a hosting product within the cloud computing service ecosystem, addressing the shortcomings of traditional physical hosts and VPS (Virtual Private Server, or simply "VPS") services, such as high management difficulty and weak business scalability. Servers can also be servers for distributed systems or servers incorporating blockchain technology.

[0115] In the description of this specification, the references to terms such as "one embodiment," "some embodiments," "example," "specific example," or "some examples," etc., indicate that a specific feature, structure, material, or characteristic described in connection with that embodiment or example is included in at least one embodiment or example of this disclosure. In this specification, the illustrative expressions of the above terms do not necessarily refer to the same embodiment or example. Furthermore, the specific features, structures, materials, or characteristics described may be combined in any suitable manner in one or more embodiments or examples. Moreover, without contradiction, those skilled in the art can combine and integrate the different embodiments or examples described in this specification, as well as the features of different embodiments or examples.

[0116] Any process or method description in the flowchart or otherwise herein can be understood as representing a module, segment, or portion of code comprising one or more executable instructions for implementing custom logic functions or processes, and the scope of preferred embodiments of this disclosure includes additional implementations in which functions may be performed not in the order shown or discussed, including substantially simultaneously or in reverse order depending on the functions involved, as will be understood by those skilled in the art to which embodiments of this disclosure pertain.

[0117] The logic and / or steps represented in the flowchart or otherwise described herein, for example, can be considered as a sequenced list of executable instructions for implementing logical functions, and can be embodied in any computer-readable medium for use by, or in conjunction with, an instruction execution system, apparatus, or device (such as a computer-based system, a processor-included system, or other system that can fetch and execute instructions from, an instruction execution system, apparatus, or device). For the purposes of this specification, "computer-readable medium" can be any means that can contain, store, communicate, propagate, or transmit programs for use by, or in conjunction with, an instruction execution system, apparatus, or device. More specific examples (a non-exhaustive list) of computer-readable media include: an electrical connection having one or more wires (electronic device), a portable computer disk drive (magnetic device), random access memory (RAM), read-only memory (ROM), erasable and editable read-only memory (EPROM or flash memory), fiber optic devices, and portable optical disc read-only memory (CDROM). Alternatively, the computer-readable medium may be paper or other suitable media on which the program can be printed, since the program can be obtained electronically, for example, by optically scanning the paper or other medium, followed by editing, interpreting, or otherwise processing as necessary, and then stored in a computer memory.

[0118] It should be understood that various parts of this disclosure can be implemented using hardware, software, firmware, or a combination thereof. In the above embodiments, multiple steps or methods can be implemented using software or firmware stored in memory and executed by a suitable instruction execution system. For example, if implemented in hardware as in another embodiment, it can be implemented using any one or a combination of the following techniques known in the art: discrete logic circuits having logic gates for implementing logical functions on data signals, application-specific integrated circuits (ASICs) having suitable combinational logic gates, programmable gate arrays (PGAs), field-programmable gate arrays (FPGAs), etc.

[0119] Those skilled in the art will understand that all or part of the steps of the methods in the above embodiments can be implemented by a program instructing related hardware. The program can be stored in a computer-readable storage medium, and when executed, the program includes one or a combination of the steps of the method embodiments.

[0120] Furthermore, the functional units in the various embodiments of this disclosure can be integrated into a processing module, or each unit can exist physically separately, or two or more units can be integrated into a module. The integrated module can be implemented in hardware or as a software functional module. If the integrated module is implemented as a software functional module and sold or used as an independent product, it can also be stored in a computer-readable storage medium.

[0121] The storage medium mentioned above can be a read-only memory, a disk, or an optical disk, etc. Although embodiments of the present disclosure have been shown and described above, it is to be understood that the above embodiments are exemplary and should not be construed as limiting the present disclosure. Those skilled in the art can make changes, modifications, substitutions, and variations to the above embodiments within the scope of the present disclosure.

Claims

1. A method for generating a three-dimensional weaving trajectory, comprising: discretizing a sequence of welding path points of a workpiece to obtain a plurality of target point coordinates of a tool center point (TCP) of a mechanical arm of a weaving robot in a world coordinate system, and transforming the plurality of target point coordinates into a robot tool coordinate system; determining a welding advancing speed between each two adjacent target points in the robot tool coordinate system according to welding process information associated with the workpiece; determining a coordinate system transformation relationship associated with a starting point in the each two adjacent target points according to a welding advancing speed direction and a normal direction between the each two adjacent target points in the robot tool coordinate system, the coordinate system transformation relationship being a transformation relationship between the robot tool coordinate system and a welding bead coordinate system; determining a welding weaving speed between the each two adjacent target points in the welding bead coordinate system according to the welding process information; generating a three-dimensional weaving trajectory according to the welding advancing speed between the each two adjacent target points in the robot tool coordinate system, the coordinate system transformation relationship associated with the starting point in the each two adjacent target points, and the welding weaving speed between the each two adjacent target points in the welding bead coordinate system.

2. The method of claim 1, wherein, The determining of the welding advancing speed between the each two adjacent target points in the robot tool coordinate system according to the welding process information associated with the workpiece comprises: determining welding process information associated with the workpiece, the welding process information including a welding running speed value between the each two adjacent target points; determining the welding running speed value between the each two adjacent target points as the welding advancing speed between the corresponding two adjacent target points in the robot tool coordinate system.

3. The method of claim 1, wherein, The determining of the coordinate system transformation relationship associated with the starting point in the each two adjacent target points according to the welding advancing speed direction and the normal direction between the each two adjacent target points in the robot tool coordinate system comprises: orthogonalizing a welding bead advancing direction and a normal direction between the each two adjacent target points in the robot tool coordinate system; projecting the welding advancing speed direction between the each two adjacent target points in the robot tool coordinate system to an X-axis of the welding bead coordinate system to obtain a first rotation matrix, the X-axis pointing to the welding bead advancing direction; applying the first rotation matrix to the orthogonalized normal direction and aligning the orthogonalized normal direction to a Z-axis of the welding bead coordinate system to obtain a second rotation matrix, the Z-axis pointing to a normal direction of a weaving plane; determining the coordinate system transformation relationship associated with the starting point in the each two adjacent target points based on the first rotation matrix and the second rotation matrix.

4. The method of claim 1, wherein, The welding process information includes a weaving amplitude and / or a weaving frequency, and the determining of the welding weaving speed between the each two adjacent target points in the welding bead coordinate system according to the welding process information comprises: generating a sequence of auxiliary points associated with each of the two adjacent target points according to the swing amplitude and / or swing frequency, the sequence of auxiliary points being a sequence of auxiliary points each having a periodic motion along three axes in the weld coordinate system; determining the welding swing speed between each of the two adjacent target points in the weld coordinate system using a cosine acceleration motion law.

5. The method of claim 4, wherein, The determination of the welding swing speed between each of the two adjacent target points in the weld coordinate system using a cosine acceleration motion law comprises: mapping time into a given period and selecting different auxiliary points from the sequence of auxiliary points according to the time; continuously adjusting the maximum speed according to the selected auxiliary points using the cosine acceleration motion law, and finally obtaining a speed sequence for executing the distance between each of the two adjacent target points within a specified time; determining the speed sequence as the welding swing speed between each of the two adjacent target points in the weld coordinate system.

6. The method of any one of claims 1-5, further comprising: determining a welding return speed between each of the two adjacent target points in the weld coordinate system; wherein the generation of the three-dimensional weaving trajectory according to the welding forward speed between each of the two adjacent target points in the robot tool coordinate system, the coordinate system transformation relationship associated with the starting point in each of the two adjacent target points, and the welding swing speed and the welding return speed between each of the two adjacent target points in the weld coordinate system comprises: generating the three-dimensional weaving trajectory according to the welding forward speed between each of the two adjacent target points in the robot tool coordinate system, the coordinate system transformation relationship associated with the starting point in each of the two adjacent target points, and the welding swing speed and the welding return speed between each of the two adjacent target points in the weld coordinate system.

7. The method of claim 6, wherein, The determination of the welding return speed between each of the two adjacent target points in the weld coordinate system comprises: obtaining weaving trajectory offset information generated during the execution of the distance between each of the two adjacent target points; determining the welding return speed between each of the two adjacent target points in the weld coordinate system according to the weaving trajectory offset information.

8. The method of claim 6, wherein, The generation of the three-dimensional weaving trajectory according to the welding forward speed between each of the two adjacent target points in the robot tool coordinate system, the coordinate system transformation relationship associated with the starting point in the two adjacent target points, and the welding swing speed and the welding return speed between each of two adjacent target points in the weld coordinate system comprises: transforming the welding swing speed and the welding return speed from the weld coordinate system to the robot tool coordinate system based on the coordinate system transformation relationship associated with the starting point in each of the two adjacent target points, respectively; superimpose the welding advancing speed of each two adjacent target points in the robot tool coordinate system, the welding weaving speed after coordinate system transformation and the welding reversing speed to obtain the running speed of each two adjacent target points in the robot tool coordinate system; generate the three-dimensional weaving trajectory based on the running speed of each two adjacent target points in the robot tool coordinate system. 9.A three-dimensional weaving trajectory generation device, comprising: a preprocessing module configured to discretize a sequence of weld path points of a workpiece to obtain a plurality of target point coordinates of a tool center point (TCP) of a mechanical arm of a weaving robot in a world coordinate system and transform the plurality of target point coordinates to a robot tool coordinate system; a first determination module configured to determine a welding advancing speed of each two adjacent target points in the robot tool coordinate system according to welding process information associated with the workpiece; a second determination module configured to determine a coordinate system transformation relationship associated with a starting point of each two adjacent target points according to a welding advancing speed direction and a normal direction of each two adjacent target points in the robot tool coordinate system, the coordinate system transformation relationship being a transformation relationship between the robot tool coordinate system and a weld bead coordinate system; a third determination module configured to determine a welding weaving speed of each two adjacent target points in the weld bead coordinate system according to the welding process information; a generation module configured to generate a three-dimensional weaving trajectory according to the welding advancing speed of each two adjacent target points in the robot tool coordinate system, the coordinate system transformation relationship associated with the starting point of each two adjacent target points and the welding weaving speed of each two adjacent target points in the weld bead coordinate system.

10. An electronic device, comprising: comprising: at least one processor; and a memory connected with the at least one processor in communication; wherein the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to perform the method of any one of claims 1-8.

11. A storage medium, the storage medium storing instructions, wherein, When the instructions run on an electronic device, the electronic device is caused to perform the method of any one of claims 1-8.

12. A computer program product comprising a computer program, characterized in that, The computer program, when executed by a processor, implements the steps of the method of any one of claims 1-8.