Automatic programming method and device for external axis trajectory of eight-degree-of-freedom robot linkage welding
The automatic programming method of the external axis trajectory of the eight-degree-of-freedom robot linkage welding is used to solve the problem of inaccurate calculation of the external axis target value in the existing technology, realize efficient and accurate welding control code generation, and improve welding quality and efficiency.
Patent Information
- Application Number
- CN202410118426.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-01-26
- Publication Date
- 2025-09-12
- Estimated Expiration
- 2044-01-26
AI Technical Summary
Existing offline programming software has difficulty in accurately calculating the external axis target value when generating large-scale pipeline intersection line welding programs, resulting in poor welding results, and the intelligent optimization algorithm is complex and inefficient.
An automatic programming method for the external axis trajectory of eight-degree-of-freedom robot linkage welding is adopted. The processing curve of the discrete welding workpiece is divided into multiple processing points, the movement and rotation external axis target values of each point are calculated, and the robot linkage welding control code is automatically generated.
It reduces the calculation workload of welding engineers, improves calculation accuracy and programming efficiency, realizes smooth transition of multiple trajectories, and reduces programming complexity and time.
Smart Images

Figure CN117773946B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of robot design, in particular to an automatic programming method for an external axis trajectory of an eight-degree-of-freedom robot linkage welding and an automatic programming method device for an external axis trajectory of an eight-degree-of-freedom robot linkage welding. Background Art
[0002] 6R industrial robots are commonly used for welding the intersection line of large pipelines. Because the intersection line is a complex three-dimensional curve, the robot needs to be equipped with external axes to increase its degrees of freedom, enabling the workpiece and welding gun to achieve the flat or boat-shaped welding postures required by the welding process. Using offline programming to generate usable linked welding programs is a key technology for improving production efficiency and welding quality.
[0003] Current offline programming software requires users to either customize an external axis target value for a specific trajectory segment or automatically calculate it using intelligent optimization methods. With the former, directly estimating the external axis target value is difficult for complex curves, resulting in discontinuous weld connections between different trajectory segments. During welding of a trajectory segment, the positioner is effectively stationary, negating its linkage function. This reduces the robot's accessibility, flexibility, and non-singularity, leading to poor welding results. With the latter, the intelligent optimization algorithm is complex, slow, and subject to randomness. The resulting external axis target value may not necessarily ensure that the welding angle between the welding gun and the workpiece meets the welding process requirements. Summary of the Invention
[0004] In view of the above problems, the present invention is proposed to provide an eight-degree-of-freedom robot linkage welding external axis trajectory automatic programming method and a corresponding eight-degree-of-freedom robot linkage welding external axis trajectory automatic programming device to overcome the above problems or at least partially solve the above problems.
[0005] The present invention discloses an automatic programming method for an external axis trajectory of an eight-degree-of-freedom robot linkage welding, the method comprising:
[0006] Selecting a processing curve of the welding workpiece and discretizing the processing curve into a plurality of processing points;
[0007] Calculate the target value of the external axis movement corresponding to each processing point;
[0008] Obtaining a starting posture angle and an ending posture angle of the processing curve in a polar coordinate system, and calculating a rotation target value of the rotating external axis corresponding to each processing point according to the starting posture angle and the ending posture angle;
[0009] Based on the moving external axis movement target value and the rotating external axis rotation target value corresponding to each processing point, the robot linkage welding control code is automatically generated.
[0010] Optionally, the step of calculating the target movement value of the external axis corresponding to each processing point includes:
[0011] Get the offset of the translation positioner along the moving external axis based on the processing point;
[0012] For each target processing point, obtain the position description of the target processing point, robot, and mobile external axis relative to the world coordinate system;
[0013] According to the pose description of the target processing point, the robot, and the mobile external axis relative to the world coordinate system, the pose description of the target processing point and the robot relative to the mobile external axis are calculated respectively;
[0014] According to the description of the target processing point and the position of the robot relative to the mobile external axis, the movement amount of the mobile external axis from its current position to the target processing point is calculated;
[0015] calculating, based on the movement amount and the offset amount, a total offset amount of the mobile external axis moving from the target processing point to a position corresponding to the offset amount;
[0016] The moving target value of the moving external axis corresponding to the target processing point is calculated according to the total offset and the posture description of the moving external axis relative to the world coordinate system.
[0017] Optionally, the step of calculating the target movement value of the external axis corresponding to each processing point includes:
[0018] For each target processing point, obtain the position description of the target processing point, robot, and mobile external axis relative to the world coordinate system;
[0019] According to the pose description of the target processing point, the robot, and the mobile external axis relative to the world coordinate system, the pose description of the target processing point and the robot relative to the mobile external axis are calculated respectively;
[0020] According to the description of the target processing point and the position of the robot relative to the mobile external axis, the movement amount of the mobile external axis from its current position to the target processing point is calculated;
[0021] A moving target value of the moving external axis corresponding to the target processing point is calculated according to the moving amount and the posture description of the moving external axis relative to the world coordinate system.
[0022] Optionally, the step of obtaining a starting posture angle and an ending posture angle of the processing curve in a polar coordinate system, and calculating a rotation target value of the rotating external axis corresponding to each processing point according to the starting posture angle and the ending posture angle includes:
[0023] The starting posture angle and the ending posture angle of the processing curve in the polar coordinate system are obtained, the deviation value of each processing point from the starting posture angle and the ending posture angle in the polar coordinate system is calculated, and the rotation target value of the rotating external axis corresponding to each processing point is obtained.
[0024] Optionally, the step of obtaining a starting posture angle and an ending posture angle of the processing curve in a polar coordinate system, calculating a deviation value of each processing point from the starting posture angle and the ending posture angle in the polar coordinate system, and obtaining a rotation target value of the external axis corresponding to each processing point includes:
[0025] Obtaining the starting posture angle and the ending posture angle of the processing curve in the polar coordinate system, as well as the posture description of each processing point and the external rotation axis relative to the world coordinate system;
[0026] uniformly interpolating a plurality of processing posture angles between the starting posture angle and the ending posture angle;
[0027] Construct a polar coordinate system on a plane perpendicular to the axis of the rotating external axis, and make the zero position of the polar coordinate system coincide with the zero position of the rotary positioner;
[0028] Project the machining point in space onto a plane perpendicular to the axis of the rotating external axis, and convert the projected point into a polar coordinate system point;
[0029] According to the polar coordinate system point position of each projection point, the starting posture angle and the ending posture angle, the rotation target value of the rotating external axis corresponding to each processing point is calculated.
[0030] The present invention also discloses an automatic programming device for external axis trajectory of eight-degree-of-freedom robot linkage welding, the device comprising:
[0031] A processing point determination module is used to select a processing curve of the welding workpiece and discretize the processing curve into multiple processing points;
[0032] A moving target value calculation module is used to calculate the moving target value of the moving external axis corresponding to each processing point;
[0033] a rotation target value calculation module, configured to obtain a starting posture angle and an ending posture angle of the processing curve in a polar coordinate system, and calculate a rotation target value of the external axis corresponding to each processing point according to the starting posture angle and the ending posture angle;
[0034] The automatic programming module is used to automatically generate robot linkage welding control codes based on the moving external axis movement target value and the rotating external axis rotation target value corresponding to each processing point.
[0035] Optionally, the moving target value calculation module includes:
[0036] The offset acquisition submodule is used to obtain the offset of the translation positioner along the direction of the external axis based on the processing point;
[0037] The first world coordinate system pose acquisition submodule is used to obtain the pose description of the target processing point, the robot, and the mobile external axis relative to the world coordinate system for each target processing point;
[0038] The first relative posture calculation submodule is used to calculate the posture descriptions of the target processing point and the robot relative to the mobile external axis based on the posture descriptions of the target processing point, the robot, and the mobile external axis relative to the world coordinate system;
[0039] A first movement amount calculation submodule is used to calculate the movement amount of the mobile external axis from its current position to the target processing point based on the position description of the target processing point and the robot relative to the mobile external axis;
[0040] A total offset calculation submodule, configured to calculate a total offset of the movable external axis from the target processing point to a position corresponding to the offset based on the movement amount and the offset;
[0041] The first movement target value calculation submodule is used to calculate the movement target value of the moving external axis corresponding to the target processing point according to the total offset and the posture description of the moving external axis relative to the world coordinate system.
[0042] Optionally, the moving target value calculation module includes:
[0043] The second world coordinate system pose acquisition submodule is used to obtain the pose description of the target processing point, the robot, and the mobile external axis relative to the world coordinate system for each target processing point;
[0044] The second relative posture calculation submodule is used to calculate the posture descriptions of the target processing point and the robot relative to the mobile external axis based on the posture descriptions of the target processing point, the robot, and the mobile external axis relative to the world coordinate system;
[0045] A second movement amount calculation submodule is used to calculate the movement amount of the mobile external axis from its current position to the target processing point based on the position description of the target processing point and the robot relative to the mobile external axis;
[0046] The second movement target value calculation submodule is used to calculate the movement target value of the moving external axis corresponding to the target processing point according to the movement amount and the posture description of the moving external axis relative to the world coordinate system.
[0047] Optionally, the rotation target value calculation module includes:
[0048] The rotation target value calculation submodule is used to obtain the starting posture angle and the ending posture angle of the processing curve in the polar coordinate system, calculate the deviation value of each processing point from the starting posture angle and the ending posture angle in the polar coordinate system, and obtain the rotation target value of the rotating external axis corresponding to each processing point.
[0049] Optionally, the rotation target value calculation submodule includes:
[0050] A starting and ending posture angle and posture acquisition unit is used to obtain the starting posture angle and the ending posture angle of the processing curve in the polar coordinate system, as well as the posture description of each processing point and the external axis of rotation relative to the world coordinate system;
[0051] An interpolation unit, configured to uniformly interpolate a plurality of machining posture angles between the starting posture angle and the ending posture angle;
[0052] A polar coordinate system construction unit is used to construct a polar coordinate system on a plane perpendicular to the axis of the rotating external axis, and to make the zero position of the polar coordinate system coincide with the zero position of the rotary positioner;
[0053] A coordinate conversion unit is used to project the processing point in space onto a plane perpendicular to the axis of the rotating external axis, and convert the projected point into a polar coordinate system point;
[0054] The rotation target value calculation unit is used to calculate the rotation target value of the external axis corresponding to each processing point according to the polar coordinate system point position of each projection point, the starting posture angle and the ending posture angle.
[0055] The present invention includes the following advantages:
[0056] The present invention provides an automatic programming method for an external axis trajectory of an eight-degree-of-freedom robot linkage welding. The method selects a machining curve of a welding workpiece and discretizes the machining curve into multiple machining points. The method calculates the target movement value of the moving external axis corresponding to each machining point, obtains the starting and ending posture angles of the machining curve in a polar coordinate system, and calculates the rotation target value of the rotating external axis corresponding to each machining point based on the starting and ending posture angles. Based on the moving external axis target movement value and the rotating external axis rotation target value corresponding to each machining point, the robot linkage welding control code is automatically generated. The present invention can automatically calculate the moving external axis target movement value based on the position of the machining point and the offset input by the user, and automatically calculate the rotating external axis rotation target value based on the starting and ending posture angles input by the user. Furthermore, based on the moving external axis target movement value and the rotating external axis rotation target value, a smooth eight-degree-of-freedom linkage welding trajectory with multiple discrete machining points is planned, and the robot linkage welding control code is automatically generated. The method greatly reduces the computational workload of welding engineers, reduces the errors that may exist in estimation and calculation by welding engineers, improves the accuracy of calculations, and can achieve smooth transition of machining angles of multiple trajectory segments. It reduces the programming complexity of welding engineers for trajectories, speeds up generation time, and improves programming efficiency. BRIEF DESCRIPTION OF THE DRAWINGS
[0057] Figure 1 This is a flowchart of the steps of an automatic programming method for the external axis trajectory of an eight-degree-of-freedom robot linkage welding provided by an embodiment of the present invention;
[0058] Figure 2 This is a schematic diagram of a system using an automatic programming method for external axis trajectories of an eight-degree-of-freedom robot linkage welding;
[0059] Figure 3 2 is a schematic diagram showing the principle of calculating the target value of the external axis movement for each target processing point in an embodiment of the present invention;
[0060] Figure 4 It is a flow chart for calculating the target value of the external axis movement for each target processing point;
[0061] Figure 5 It is the posture relationship diagram of each component in the system;
[0062] Figure 6 2 is a schematic diagram of the principle of calculating the target rotation value of the external axis for each target processing point in an embodiment of the present invention;
[0063] Figure 7 It is a flow chart for calculating the rotation target value of the external axis of each target processing point;
[0064] Figure 8 It is a schematic diagram of the axial projection of the processing point under the three coordinate system construction methods;
[0065] Figure 9 This is a structural block diagram of an automatic programming device for external axis trajectories of an eight-degree-of-freedom robot linkage welding system provided by an embodiment of the present invention. DETAILED DESCRIPTION
[0066] In order to make the above-mentioned objects, features and advantages of the present invention more obvious and easy to understand, the present invention is further described in detail below with reference to the accompanying drawings and specific embodiments.
[0067] Reference Figure 1 , shows a flowchart of the steps of an automatic programming method for the external axis trajectory of an eight-degree-of-freedom robot linkage welding provided in an embodiment of the present invention, which may specifically include the following steps:
[0068] Step 101, selecting a processing curve of a welding workpiece and discretizing the processing curve into a plurality of processing points;
[0069] The system of the present invention using the automatic programming method of the external axis trajectory of the eight-degree-of-freedom robot linkage welding can include a welding workpiece, a 6-degree-of-freedom industrial robot, a rotating external axis of a rotary positioner, a moving external axis of a moving positioner, and a moving guide rail. Figure 2 , showing a schematic diagram of the system using the automatic programming method for the external axis trajectory of the eight-degree-of-freedom robot linkage welding, Figure 2 The reference numerals in the figure represent: ① welding workpiece; ② welding track; ③ 6-DOF industrial robot; ④ rotating external axis; ⑤ moving external axis; ⑥ moving guide rail. ① The welding workpiece is mounted on the ④ rotating external axis and moves along it; ③ the 6-DOF industrial robot is mounted on the ⑤ moving external axis, which moves along the ⑥ moving guide rail.
[0070] In an embodiment of the present invention, the welding of a certain welding workpiece can be programmed by selecting a processing curve of the welding workpiece and discretizing the processing curve of the welding workpiece into multiple processing points, and then further determining the movement target value and rotation target value of each processing point, so that a linkage welding trajectory can be planned.
[0071] Step 102, calculating the target value of the external axis movement corresponding to each processing point;
[0072] After determining the various processing points of the welding workpiece, the moving target value of the mobile external axis corresponding to each processing point can be calculated. The present invention sets the moving external axis to be moved to the same position of the processing point. As another embodiment of the present invention, the present invention can also allow the user to freely adjust the offset along the external axis direction based on the processing point on the basis of moving the mobile external axis to the same position of the processing point. Therefore, the present invention can automatically calculate the moving target value of the mobile external axis according to the position of the processing point, or the position of the processing point and the offset input by the user, thereby ensuring the accessibility and flexibility of the robot, and reducing the error caused by the user's direct trajectory definition of N trajectory points in the moving axis space.
[0073] In one embodiment of the present invention, the step of calculating the target movement value of the external axis corresponding to each processing point includes:
[0074] Get the offset of the translation positioner along the moving external axis based on the processing point;
[0075] For each target processing point, obtain the position description of the target processing point, robot, and mobile external axis relative to the world coordinate system;
[0076] According to the pose description of the target processing point, the robot, and the mobile external axis relative to the world coordinate system, the pose description of the target processing point and the robot relative to the mobile external axis are calculated respectively;
[0077] According to the description of the target processing point and the position of the robot relative to the mobile external axis, the movement amount of the mobile external axis from its current position to the target processing point is calculated;
[0078] calculating, based on the movement amount and the offset amount, a total offset amount of the mobile external axis moving from the target processing point to a position corresponding to the offset amount;
[0079] The moving target value of the moving external axis corresponding to the target processing point is calculated according to the total offset and the posture description of the moving external axis relative to the world coordinate system.
[0080] In an embodiment of the present invention, the user can customize the offset of the translation positioner along the moving external axis relative to the processing point. After the user enters the offset of the translation positioner along the moving external axis relative to the processing point, the present invention first moves the moving external axis to the same position as the target processing point, then moves the external axis based on the user-entered offset and calculates the final moving external axis target value. Allowing the user to customize the offset of the robot base relative to the workpiece along the moving external axis reduces the welding engineer's programming time for the moving external axis and meets the robot's accessibility requirements.
[0081] Specifically, the present invention can obtain the offset of the translation positioner along the direction of the moving external axis with the processing point as the reference, and for each target processing point, respectively obtain the posture description of the target processing point, the robot, and the moving external axis relative to the world coordinate system, and then calculate the posture description of the target processing point and the robot relative to the moving external axis based on the posture description of the target processing point, the robot, and the moving external axis relative to the world coordinate system, respectively. Then, based on the posture description of the target processing point and the robot relative to the moving external axis, the movement amount of the moving external axis from its current position to the target processing point can be calculated, and then based on the calculated movement amount and the offset input by the user, the total offset of the moving external axis from the target processing point to the position corresponding to the offset is calculated. Finally, based on the total offset and the posture description of the moving external axis relative to the world coordinate system, the moving target value of the moving external axis corresponding to the target processing point is calculated.
[0082] Reference Figure 3 , which shows a schematic diagram of the principle for calculating the target movement value of the external axis for each target processing point in an embodiment of the present invention. The present invention sets the external axis to coincide with the target processing point along the moving guide rail. On this basis, the user is allowed to move the external axis by an offset relative to the target processing point Pi. Where a represents the current state of the external axis (hereinafter referred to as the a-current state), b represents the state in which the external axis coincides with the target processing point Pi along the moving guide rail (hereinafter referred to as the b-coincidence state), and c represents the offset state of the external axis relative to the target processing point Pi (hereinafter referred to as the c-offset state).
[0083] For each target processing point, refer to Figure 4 , shows a flow chart for calculating the target value of the external axis movement for each target processing point; the specific process is as follows:
[0084] Step 0: Obtain the position descriptions of ② processing point Pi, ③ robot and ⑤ moving external axis relative to the world coordinate system in the offline programming software; refer to Figure 5 , which shows the posture relationship diagram of each component in the system;
[0085] in, ——② Description of the position and posture of the processing point Pi relative to the world coordinate system;
[0086] ——③ Description of the position and posture of the 6-DOF robot relative to the world coordinate system;
[0087] ——⑤ Description of the pose of the moving external axis relative to the world coordinate system.
[0088] In the embodiment of the present invention, a 4*4 rigid body transformation matrix can be used to represent the posture description relative to the world coordinate system:
[0089] T represents the 4x4 rigid body transformation matrix:
[0090]
[0091] Among them, n represents the X-axis vector of the coordinate system, o represents the Y-axis vector of the coordinate system, a represents the Z-axis vector of the coordinate system, and p represents the origin vector of the coordinate system; n x represents the x-component of the three-dimensional vector n;
[0092] Represents the pose description of coordinate system R relative to coordinate system W; p represents the rigid body transformation matrix x Quantity.
[0093] Step 1: To determine the positional offset between the processing point (2) and the robot (3) in the direction of the movable guideway (6), first calculate the pose description of the processing point (2) and the robot (3) relative to the movable external axis (5). The world pose description of the processing point (2) and the robot (3) is then converted to a pose description relative to the movable external axis (5). This allows the user to freely define the axis of the movable external axis parallel to any axis of its own coordinate system, independent of the orientation of the external axis coordinate system.
[0094] according to Figure 5 From the posture relationship diagram, we can get the posture transformation relationship between ② processing point and ⑤ moving external axis:
[0095]
[0096] From formula (2), we can get:
[0097]
[0098] Similarly, the posture transformation relationship between the robot ③ and the external moving axis ⑤ is:
[0099]
[0100] From formula (4), we can get:
[0101]
[0102] Step 2: Calculate the movement distance of the external axis from the current state a to the overlap state b:
[0103]
[0104] Step 3: Consider the user-defined offset s offset Next, calculate the total offset of ⑤ moving the external axis from the current state a to the offset state c:
[0105] Δs i ′=Δs i +soffset (7)
[0106] Step 4: Calculate the target value of the external axis when the external axis is in the offset state c:
[0107] s i =s cur +Δs i ′ (8)
[0108] Among them, S cur Indicates ⑤ moving the current position value of the external axis; so far, s i This is the target value for the external axis when the robot (3) processes the i-th processing point (2).
[0109] In one embodiment of the present invention, the step of calculating the target movement value of the external axis corresponding to each processing point includes:
[0110] For each target processing point, obtain the position description of the target processing point, robot, and mobile external axis relative to the world coordinate system;
[0111] According to the pose description of the target processing point, the robot, and the mobile external axis relative to the world coordinate system, the pose description of the target processing point and the robot relative to the mobile external axis are calculated respectively;
[0112] According to the description of the target processing point and the position of the robot relative to the mobile external axis, the movement amount of the mobile external axis from its current position to the target processing point is calculated;
[0113] A moving target value of the moving external axis corresponding to the target processing point is calculated according to the moving amount and the posture description of the moving external axis relative to the world coordinate system.
[0114] In an embodiment of the present invention, it can also be set as a default to only move the mobile external axis to the same position as the target processing point, so it is only necessary to calculate the mobile external axis movement target value corresponding to moving the mobile external axis to the same position as the target processing point. Setting the mobile external axis to be moved to the same position as the target processing point can ensure the continuity of the mobile external axis target value. Specifically, the present invention can obtain the position description of the target processing point, the robot, and the mobile external axis relative to the world coordinate system for each target processing point, and then calculate the position description of the target processing point and the robot relative to the mobile external axis based on the position description of the target processing point, the robot, and the mobile external axis relative to the world coordinate system. Then, based on the position description of the target processing point and the robot relative to the mobile external axis, the movement amount of the mobile external axis from its current position to the target processing point can be calculated. Finally, the mobile external axis movement target value corresponding to the target processing point is calculated based on the calculated movement amount and the position description of the mobile external axis relative to the world coordinate system.
[0115] Step 103, obtaining the starting posture angle and the ending posture angle of the processing curve in the polar coordinate system, and calculating the rotation target value of the rotating external axis corresponding to each processing point according to the starting posture angle and the ending posture angle;
[0116] To reduce the workload of welding engineers who directly program the target rotation value of the external axis corresponding to each processing point, and to avoid the problem of uneven trajectory caused by the target value calculation deviation introduced during programming, the present invention allows welding engineers to customize the linkage processing angle of the complex processing curve of the welding workpiece in the polar coordinate system according to the relative posture requirements between the welding gun and the pipe during the welding process. The starting linkage processing angle of the processing curve in the polar coordinate system can be freely defined, which can facilitate the continuous and smooth transition of the continuous connected curve processing points on the positioner and the welding posture, without the need for arc starting and extinguishing, and ensure welding quality. The present invention can automatically convert the rotation angle of the rotation positioner of the welding workpiece in the polar coordinate system based on this processing angle, greatly reducing the workload of welding engineers for calculating the rotation angles of N processing points. Specifically, the welding engineer can define the starting posture angle and ending posture angle of the processing curve in the polar coordinate system. After obtaining the starting posture angle and ending posture angle of the processing curve defined by the welding engineer in the polar coordinate system, the present invention can calculate the rotation target value of the external axis corresponding to each processing point based on the starting posture angle and ending posture angle.
[0117] In one embodiment of the present invention, the step of obtaining a starting posture angle and an ending posture angle of the processing curve in a polar coordinate system, and calculating a rotation target value of the external axis corresponding to each processing point according to the starting posture angle and the ending posture angle includes:
[0118] The starting posture angle and the ending posture angle of the processing curve in the polar coordinate system are obtained, the deviation value of each processing point from the starting posture angle and the ending posture angle in the polar coordinate system is calculated, and the rotation target value of the rotating external axis corresponding to each processing point is obtained.
[0119] The present invention uses a polar coordinate system to associate the multi-point rotation calculation of a complex curve in Cartesian space with the linkage processing posture of the welding gun, allowing welding engineers to customize the linkage processing angle of a complex curve in space in the polar coordinate system according to the relative posture requirements between the welding gun and the pipeline during the welding process. Based on the customized processing angle, the deviation value between the processing point and the welding gun processing posture in the polar coordinate system is calculated, thereby obtaining the rotation target value of the rotating external axis corresponding to each processing point. Specifically, the user can input the starting posture angle and the ending posture angle of the processing curve in the polar coordinate system. After obtaining the starting posture angle and the ending posture angle, the deviation value of each processing point from the starting posture angle and the ending posture angle in the polar coordinate system can be calculated to obtain the rotation target value of the rotating external axis corresponding to each processing point, so as to ultimately accurately weld each processing point.
[0120] In one embodiment of the present invention, the steps of obtaining a starting posture angle and an ending posture angle of the processing curve in a polar coordinate system, calculating a deviation value of each processing point from the starting posture angle and the ending posture angle in the polar coordinate system, and obtaining a rotation target value of the external axis corresponding to each processing point include:
[0121] Obtaining the starting posture angle and the ending posture angle of the processing curve in the polar coordinate system, as well as the posture description of each processing point and the external rotation axis relative to the world coordinate system;
[0122] uniformly interpolating a plurality of processing posture angles between the starting posture angle and the ending posture angle;
[0123] Construct a polar coordinate system on a plane perpendicular to the axis of the rotating external axis, and make the zero position of the polar coordinate system coincide with the zero position of the rotary positioner;
[0124] Project the machining point in space onto a plane perpendicular to the axis of the rotating external axis, and convert the projected point into a polar coordinate system point;
[0125] According to the polar coordinate system point position of each projection point, the starting posture angle and the ending posture angle, the rotation target value of the rotating external axis corresponding to each processing point is calculated.
[0126] In an embodiment of the present invention, the starting posture angle and ending posture angle of the processing curve in the polar coordinate system can be obtained, as well as the posture description of each processing point and the rotating external axis relative to the world coordinate system. Afterwards, multiple processing posture angles can be evenly interpolated between the starting posture angle and the ending posture angle, making the transition between the two postures of the robot smoother and avoiding sudden jumps or changes. The robot's motion trajectory can be controlled more accurately, which helps to ensure the accuracy and consistency of the processing process. In addition, interpolation between the key starting and ending postures can generate a denser posture sequence, thereby improving computational efficiency. At the same time, a polar coordinate system is constructed on a plane perpendicular to the axis of the rotating external axis, and the zero position of the polar coordinate system is coincident with the zero position of the rotary positioner. The processing points in space are projected onto a plane perpendicular to the axis of the rotating external axis, and the projected points are converted into polar coordinate system points. Finally, the polar coordinate system point position of each projection point and the deviation values of the starting posture angle and the ending posture angle can be calculated to obtain the rotating target value of the rotating external axis corresponding to each processing point.
[0127] Reference Figure 6 , showing a schematic diagram of the principle of calculating the target rotation value of the external axis for each target processing point in an embodiment of the present invention. The present invention constructs a polar coordinate system on a plane perpendicular to the axis of the external axis, and coincides the zero position of the polar coordinate system with the zero position of the rotary positioner. The processing points in space are projected onto the plane where the polar coordinate system is located and converted into a polar coordinate representation. Based on the angle of the welding gun in polar coordinates for processing this series of points specified by the user, the deviation value between the processing point and the welding gun processing posture in the polar coordinate system is calculated, thereby obtaining the target rotation value of the external axis corresponding to each processing point.
[0128] For each target processing point, refer to Figure 7 , shows a flow chart for calculating the target rotation value of the external axis of each target processing point; the specific process is as follows:
[0129] Step 0: Obtain the pose description of ② the processing point and ④ the external rotation axis relative to the world coordinate system The detailed description of the rigid body transformation matrix T is consistent with formula (1); obtain the processing angle defined by the user in the polar coordinate system - the starting posture angle and the ending posture angle. First, uniformly interpolate the starting and ending posture angles to obtain N processing postures θ′ in the polar coordinate system ti (i=1,2,...,N);
[0130] Step 1: Construct a polar coordinate system on a plane perpendicular to the axis of the external rotating axis (4), and make the zero position of the polar coordinate system coincide with the zero position of the external rotating axis.
[0131] Step 2: Project the ② processing point onto a plane perpendicular to the ④ rotating external axis. According to the situation that the coordinate system is coaxial with the rotating axis, there are three ways to construct the coordinate system, such as Figure 8 As shown, a schematic diagram of the axial projection of the processing point under three coordinate system construction methods is shown.
[0132] The projection of a point on a plane can be obtained using the inner product of vectors. i Form a vector with the coordinate system origin O The inner product of the vector with the X, Y, and Z axes is obtained to obtain its components P on the X, Y, and Z axes respectively. i x 、P i y 、P i z .
[0133]
[0134]
[0135]
[0136] Step 3: Convert the projection point on the plane into a polar coordinate point.
[0137]
[0138] Step 4: Calculate the rotation amount of the polar coordinate system point relative to the target processing angle - the starting posture angle and the ending posture angle, and you can get the rotation target value of the external axis corresponding to each target processing point.
[0139]
[0140] Step 104 : Automatically generate a robot linkage welding control code based on the moving external axis movement target value and the rotating external axis rotation target value corresponding to each processing point.
[0141] After the present invention automatically calculates the moving external axis movement target value and the rotating external axis rotation target value corresponding to each processing point based on the user-defined offset value, starting posture angle, and ending posture angle, the present invention can further automatically generate a robot linkage welding control code based on the moving external axis movement target value and the rotating external axis rotation target value corresponding to each processing point. Through the eight-degree-of-freedom robot linkage welding external axis trajectory automatic programming method of the present invention, the user needs to define fewer parameters and does not need to perform complex calculations by the user himself, thereby making the robot linkage welding control code generation time fast, reducing the programming complexity of the welding engineer user, and improving programming efficiency.
[0142] In the present invention, given N discrete processing points of a complex curve of a welding workpiece, the present invention only requires the user to input three parameters, that is, it can complete the calculation of the two external axis target values corresponding to the N discrete processing points, and the user does not need to manually calculate the external axis target values of the N points. In addition, for the mobile external axis part, the method of offsetting after the points in the moving direction coincide with each other is adopted, which can not only ensure the continuity of the mobile external axis target value, but also take into account the accessibility, flexibility and non-singularity of the robot. Furthermore, for the rotating external axis part, the method of inputting two processing postures in the polar coordinate system is adopted, which can also ensure the continuity of the external axis target value between multiple trajectories, and avoid the influence of welding discontinuity on welding quality.
[0143] In addition, the processing point and the robot are converted to a posture description relative to the moving external axis. In the moving external axis reference system, the processing point and the robot are first aligned in the moving axis direction by default, and then offset according to the user-defined offset value, realizing a fast mapping calculation of the moving position values of N processing points with one offset parameter.
[0144] In addition, the polar coordinate system is used to associate the processing posture of the welding gun relative to the round tube with the rotation value of the rotary positioner in the rotation space, so that the user does not need to worry about the rotation value calculation of the specific N points in the rotation space. The user only needs to define the starting two processing postures in the polar coordinate system, and then the two posture parameters can be quickly mapped to the rotation position values of N processing points.
[0145] It should be noted that for the sake of simplicity, the method embodiments are described as a series of actions. However, those skilled in the art should be aware that the embodiments of the present invention are not limited by the order of the actions described, because according to the embodiments of the present invention, certain steps can be performed in other orders or simultaneously. Secondly, those skilled in the art should also be aware that the embodiments described in this specification are all preferred embodiments, and the actions involved are not necessarily required by the embodiments of the present invention.
[0146] Reference Figure 9 , shows a structural block diagram of an automatic programming device for external axis trajectory of an eight-degree-of-freedom robot linkage welding provided in an embodiment of the present invention, which may specifically include the following modules:
[0147] A processing point determination module 901 is used to select a processing curve of a welding workpiece and discretize the processing curve into a plurality of processing points;
[0148] The movement target value calculation module 902 is used to calculate the movement target value of the external axis corresponding to each processing point;
[0149] A rotation target value calculation module 903 is used to obtain the starting posture angle and the ending posture angle of the processing curve in the polar coordinate system, and calculate the rotation target value of the external axis corresponding to each processing point according to the starting posture angle and the ending posture angle;
[0150] The automatic programming module 904 is used to automatically generate the robot linkage welding control code based on the moving external axis movement target value and the rotating external axis rotation target value corresponding to each processing point.
[0151] Optionally, the moving target value calculation module includes:
[0152] The offset acquisition submodule is used to obtain the offset of the translation positioner along the direction of the external axis based on the processing point;
[0153] The first world coordinate system pose acquisition submodule is used to obtain the pose description of the target processing point, the robot, and the mobile external axis relative to the world coordinate system for each target processing point;
[0154] The first relative posture calculation submodule is used to calculate the posture descriptions of the target processing point and the robot relative to the mobile external axis based on the posture descriptions of the target processing point, the robot, and the mobile external axis relative to the world coordinate system;
[0155] A first movement amount calculation submodule is used to calculate the movement amount of the mobile external axis from its current position to the target processing point based on the position description of the target processing point and the robot relative to the mobile external axis;
[0156] A total offset calculation submodule, configured to calculate a total offset of the movable external axis from the target processing point to a position corresponding to the offset based on the movement amount and the offset;
[0157] The first movement target value calculation submodule is used to calculate the movement target value of the moving external axis corresponding to the target processing point according to the total offset and the posture description of the moving external axis relative to the world coordinate system.
[0158] Optionally, the moving target value calculation module includes:
[0159] The second world coordinate system pose acquisition submodule is used to obtain the pose description of the target processing point, the robot, and the mobile external axis relative to the world coordinate system for each target processing point;
[0160] The second relative posture calculation submodule is used to calculate the posture descriptions of the target processing point and the robot relative to the mobile external axis based on the posture descriptions of the target processing point, the robot, and the mobile external axis relative to the world coordinate system;
[0161] A second movement amount calculation submodule is used to calculate the movement amount of the mobile external axis from its current position to the target processing point based on the position description of the target processing point and the robot relative to the mobile external axis;
[0162] The second movement target value calculation submodule is used to calculate the movement target value of the moving external axis corresponding to the target processing point according to the movement amount and the posture description of the moving external axis relative to the world coordinate system.
[0163] Optionally, the rotation target value calculation module includes:
[0164] The rotation target value calculation submodule is used to obtain the starting posture angle and the ending posture angle of the processing curve in the polar coordinate system, calculate the deviation value of each processing point from the starting posture angle and the ending posture angle in the polar coordinate system, and obtain the rotation target value of the rotating external axis corresponding to each processing point.
[0165] Optionally, the rotation target value calculation submodule includes:
[0166] A starting and ending posture angle and posture acquisition unit is used to obtain the starting posture angle and the ending posture angle of the processing curve in the polar coordinate system, as well as the posture description of each processing point and the external axis of rotation relative to the world coordinate system;
[0167] An interpolation unit, configured to uniformly interpolate a plurality of machining posture angles between the starting posture angle and the ending posture angle;
[0168] A polar coordinate system construction unit is used to construct a polar coordinate system on a plane perpendicular to the axis of the rotating external axis, and to make the zero position of the polar coordinate system coincide with the zero position of the rotary positioner;
[0169] A coordinate conversion unit is used to project the processing point in space onto a plane perpendicular to the axis of the rotating external axis, and convert the projected point into a polar coordinate system point;
[0170] The rotation target value calculation unit is used to calculate the rotation target value of the external axis corresponding to each processing point according to the polar coordinate system point position of each projection point, the starting posture angle and the ending posture angle.
[0171] As for the device embodiment, since it is basically similar to the method embodiment, the description is relatively simple, and the relevant parts can be referred to the partial description of the method embodiment.
[0172] It should be noted that, in this document, relational terms such as first and second, etc., are used only to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply the existence of any such actual relationship or order between these entities or operations. Moreover, the terms "comprises," "comprising," or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article, or device comprising a series of elements includes not only those elements, but also other elements not explicitly listed, or elements inherent to such process, method, article, or device. In the absence of further limitations, an element defined by the phrase "comprising a ..." does not exclude the presence of other identical elements in the process, method, article, or device comprising the element.
[0173] Each embodiment in this specification is described in a related manner. The same or similar parts between the embodiments can be referred to each other. Each embodiment focuses on the differences from other embodiments.
[0174] The above description is only a preferred embodiment of the present invention and is not intended to limit the scope of protection of the present invention. Any modifications, equivalent replacements, improvements, etc. made within the spirit and principles of the present invention are included in the scope of protection of the present invention.
Claims
1. An automatic programming method for the external axis trajectory of an eight-degree-of-freedom robot linkage welding, characterized in that: The method comprises: Selecting a processing curve of the welding workpiece and discretizing the processing curve into a plurality of processing points; Calculate the target value of the external axis movement corresponding to each processing point; Obtaining a starting posture angle and an ending posture angle of the processing curve in a polar coordinate system, and calculating a rotation target value of the rotating external axis corresponding to each processing point according to the starting posture angle and the ending posture angle; Automatically generate robot linkage welding control code based on the mobile external axis movement target value and the rotation external axis rotation target value corresponding to each processing point; The steps for calculating the target movement value of the external axis corresponding to each processing point include: For each target processing point, obtain the position description of the target processing point, robot, and mobile external axis relative to the world coordinate system; According to the pose description of the target processing point, the robot, and the mobile external axis relative to the world coordinate system, the pose description of the target processing point and the robot relative to the mobile external axis are calculated respectively; According to the description of the target processing point and the position of the robot relative to the mobile external axis, the movement amount of the mobile external axis from its current position to the target processing point is calculated; Calculating a target movement value of the mobile external axis corresponding to the target processing point according to the movement amount and the posture description of the mobile external axis relative to the world coordinate system; The steps of obtaining a starting posture angle and an ending posture angle of the processing curve in a polar coordinate system, and calculating a rotation target value of the rotating external axis corresponding to each processing point according to the starting posture angle and the ending posture angle include: Obtaining a starting posture angle and an ending posture angle of the processing curve in a polar coordinate system, calculating a deviation value of each processing point from the starting posture angle and the ending posture angle in the polar coordinate system, and obtaining a rotation target value of the external axis corresponding to each processing point; The steps of obtaining a starting posture angle and an ending posture angle of the processing curve in a polar coordinate system, calculating a deviation value of each processing point from the starting posture angle and the ending posture angle in the polar coordinate system, and obtaining a rotation target value of the rotating external axis corresponding to each processing point include: Obtaining the starting posture angle and the ending posture angle of the processing curve in the polar coordinate system, as well as the posture description of each processing point and the external rotation axis relative to the world coordinate system; uniformly interpolating a plurality of processing posture angles between the starting posture angle and the ending posture angle; Construct a polar coordinate system on a plane perpendicular to the axis of the rotating external axis, and make the zero position of the polar coordinate system coincide with the zero position of the rotary positioner; Project the machining point in space onto a plane perpendicular to the axis of the rotating external axis, and convert the projected point into a polar coordinate system point; According to the polar coordinate system point position of each projection point, the starting posture angle and the ending posture angle, the rotation target value of the rotating external axis corresponding to each processing point is calculated.
2. The method according to claim 1, characterized in that The steps for calculating the target movement value of the external axis corresponding to each processing point include: Get the offset of the translation positioner along the moving external axis based on the processing point; calculating, based on the movement amount and the offset amount, a total offset amount of the mobile external axis moving from the target processing point to a position corresponding to the offset amount; The moving target value of the moving external axis corresponding to the target processing point is calculated according to the total offset and the posture description of the moving external axis relative to the world coordinate system.
3. An automatic programming device for external axis trajectory of eight-degree-of-freedom robot linkage welding, characterized in that: The device comprises: A processing point determination module is used to select a processing curve of the welding workpiece and discretize the processing curve into multiple processing points; A moving target value calculation module is used to calculate the moving target value of the moving external axis corresponding to each processing point; a rotation target value calculation module, configured to obtain a starting posture angle and an ending posture angle of the processing curve in a polar coordinate system, and calculate a rotation target value of the external axis corresponding to each processing point according to the starting posture angle and the ending posture angle; An automatic programming module is used to automatically generate robot linkage welding control codes based on the mobile external axis movement target value and the rotation target value of the rotating external axis corresponding to each processing point; The moving target value calculation module includes: The second world coordinate system pose acquisition submodule is used to obtain the pose description of the target processing point, the robot, and the mobile external axis relative to the world coordinate system for each target processing point; The second relative posture calculation submodule is used to calculate the posture descriptions of the target processing point and the robot relative to the mobile external axis based on the posture descriptions of the target processing point, the robot, and the mobile external axis relative to the world coordinate system; A second movement amount calculation submodule is used to calculate the movement amount of the mobile external axis from its current position to the target processing point based on the position description of the target processing point and the robot relative to the mobile external axis; A second movement target value calculation submodule is used to calculate the movement target value of the moving external axis corresponding to the target processing point according to the movement amount and the posture description of the moving external axis relative to the world coordinate system; The rotation target value calculation module includes: a rotation target value calculation submodule, configured to obtain a starting posture angle and an ending posture angle of the processing curve in a polar coordinate system, calculate a deviation value of each processing point from the starting posture angle and the ending posture angle in the polar coordinate system, and obtain a rotation target value of the external axis corresponding to each processing point; The rotation target value calculation submodule includes: A starting and ending posture angle and posture acquisition unit is used to obtain the starting posture angle and the ending posture angle of the processing curve in the polar coordinate system, as well as the posture description of each processing point and the external axis of rotation relative to the world coordinate system; An interpolation unit, configured to uniformly interpolate a plurality of machining posture angles between the starting posture angle and the ending posture angle; A polar coordinate system construction unit is used to construct a polar coordinate system on a plane perpendicular to the axis of the rotating external axis, and to make the zero position of the polar coordinate system coincide with the zero position of the rotary positioner; A coordinate conversion unit is used to project the processing point in space onto a plane perpendicular to the axis of the rotating external axis, and convert the projected point into a polar coordinate system point; The rotation target value calculation unit is used to calculate the rotation target value of the external axis corresponding to each processing point according to the polar coordinate system point position of each projection point, the starting posture angle and the ending posture angle.
4. The device according to claim 3, characterized in that The moving target value calculation module includes: The offset acquisition submodule is used to obtain the offset of the translation positioner along the direction of the external axis based on the processing point; A total offset calculation submodule, configured to calculate a total offset of the movable external axis from the target processing point to a position corresponding to the offset based on the movement amount and the offset; The first movement target value calculation submodule is used to calculate the movement target value of the moving external axis corresponding to the target processing point according to the total offset and the posture description of the moving external axis relative to the world coordinate system.
Citation Information
Patent Citations
Coordination motion control method for eight-freedom-degree welding-track online generation system
CN108972547A
Tank body welding point pose planning method, welding workstation, equipment and medium
CN113942017A