Welding torch oscillation control method based on cosine-sine curve

By employing a cosine or sine curve combined with the DSC algorithm during the welding process, the problem of sudden acceleration changes in the stepper motor was solved, resulting in smoother torch oscillation and improved welding quality, while simplifying the control process.

CN117155187BActive Publication Date: 2026-04-10TIANJIN UNIV
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
TIANJIN UNIV
Filing Date
2022-05-24
Publication Date
2026-04-10

AI Technical Summary

Technical Problem

In the existing welding process, the sudden acceleration of the stepper motor causes an impact during the oscillation of the welding torch, which affects the welding quality and the complexity of control.

Method used

By using a combination of cosine or sine curves and DSC algorithm, the welding torch oscillation trajectory and position control are planned. The pulse increment is calculated by partitioning and the step size is adjusted to achieve smooth transition and precise control.

Benefits of technology

It achieves smoothness in the welding torch oscillation process and improves welding quality, reduces the impact on mechanical structures and stepper motors, and simplifies the control process.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117155187B_ABST
    Figure CN117155187B_ABST
Patent Text Reader

Abstract

The application discloses a welding torch swing control method based on cosine sine curve. The welding torch swing track is fitted into a cosine curve by designing pulse increments and time increments in a unit interval in a motion process and adopting a discrete step number compensation method, so as to achieve the purpose of accurately controlling the welding torch swing track and swing width. According to the application, the solid difficulty of the rising and falling curve is greatly simplified under the condition of ensuring the executable planning track, the position, speed and acceleration in the swing process have good continuity and smoothness, the impact of the welding torch swing moment on the mechanical structure and the stepping motor is reduced, the control process of the method is simple, the adaptability is strong, the corresponding speed is fast, and the executing mechanism can be effectively protected.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application belongs to the field of automatic control. It relates to a welding torch swing control method, which can complete trajectory planning and motion control in the welding torch swing process, reduce the impact of force on the stepping motor during the start-stop process, and ensure the stability of the swing process and the welding quality. BACKGROUND

[0002] Currently, the stepping motor curve control mostly adopts trapezoidal curve, exponential curve, parabolic curve and S-shaped curve. Although the trapezoidal curve is simple in control process, when the welding torch swings at the maximum speed each time and reverses, the acceleration suddenly changes, which causes impact on the control mechanism and motor. The exponential curve, parabolic curve and S-shaped curve are designed to avoid the above problems, and their continuity of speed and acceleration, maximum non-stalling angle, position tracking error and balance position residual oscillation error are all superior to those of the trapezoidal curve, but the control implementation process is relatively complex. SUMMARY

[0003] The present application aims to overcome the shortcomings of the prior art, combine the respective advantages of the above curves, and propose a design scheme based on cosine curve or sine curve. By designing the pulse increment and time increment in the unit interval in the motion process, the welding torch swing trajectory is fitted into the cosine curve or sine curve by using the DSC (discrete step number compensation) method, so as to achieve the purpose of planning the welding torch swing trajectory and accurately controlling the swing width.

[0004] The technical purpose of the present application is achieved by the following technical scheme.

[0005] The welding torch swing control method based on cosine sine curve adopts the cosine curve or sine curve as the control curve, and combines the DSC algorithm to complete the trajectory and position control of the welding torch swing.

[0006] The welding torch accelerates to the maximum speed from the first welding material workpiece, then decelerates to the second welding material workpiece, then accelerates to the maximum speed from the second welding material workpiece, and then decelerates to the first welding material workpiece, which is one cycle. The welding torch reaches the midpoint of the first welding material workpiece and the second welding material workpiece when it reaches the maximum speed.

[0007] The motion of the welding torch in one cycle is divided into four intervals: (1) the welding torch accelerates to the maximum speed from the first welding material workpiece; (2) the welding torch decelerates from the maximum speed to the second welding material workpiece; (3) the welding torch accelerates to the maximum speed from the second welding material workpiece; (4) the welding torch decelerates from the maximum speed to the first welding material workpiece

[0008] In each interval, divide each interval into several small intervals with Δ(ωt) as a step, and calculate the cosine value or sine value of each point in the interval, the number of sub-intervals seg = π / (2*Δ(ωt)), adjust the step to make the decimal places of the number of sub-intervals seg greater than or equal to 5 to obtain the specific number of sub-intervals;

[0009] As Δ(ωt) = 0.02 radian as a step, the number of sub-intervals seg = π / (2*Δ(ωt)) = 78.5 ≈ 79 (i.e. divided into 79 small intervals), calculate the cosine value or sine value of 0-80 points

[0010] According to the actual ball screw lead, the step angle of the stepper motor, the subdivision number and the actual swing width (i.e. the distance from the first welding material workpiece to the second welding material workpiece), calculate the swing one-way pulse number P (i.e. from the first welding material workpiece to the second welding material workpiece), then the pulse number of each interval V count =P / 2. Calculate the radian Δ(ωt) of each step, 2Δ(ωt),..., segΔ(ωt) corresponding to the pulse number Pn = V count *cos(ωt), n ∈ [0, seg].

[0011] Because in the physical process, the number of steps is an integer, round off the calculated Pn value to obtain the pulse value corresponding to different step segments.

[0012] Calculate the Δ(ωt) unit interval, the pulse increment ΔPn (i.e. the pulse change corresponding to each step interval), sum up ΔPn in each step interval, denoted as V actual , and compared with V count , the pulse deviation is generated, and the deviation value is corrected by DSC algorithm, the algorithm is as follows:

[0013] ΔPn: represents the pulse increment value of the nth step interval, i.e. the pulse change corresponding to the step Δ(ωt) interval;

[0014] V actual : represents the total pulse increment of each step Δ(ωt) interval, i.e. the total pulse change corresponding to each step Δ(ωt) interval after partitioning with Δ(ωt) as a step;

[0015] V count : divide the movement of the welding torch in a cycle into four intervals, the total number of pulses in each interval;

[0016] V diff_step =1, indicating the unit pulse correction value;

[0017] V diff =V actual -Vcount , indicating the total number of pulse corrections;

[0018] num = V diff / V diff_step , indicating the number of pulse corrections;

[0019] (1) If the two are equal to zero, then the number of pulses is equal, and the number of pulses in array ΔP is the number of steps the stepper motor runs in this range, which does not need to be corrected.

[0020] (2)V diff =V actual -V count If the sum of pulse changes for each step interval is greater than the number of pulses in that interval, and the actual number of steps exceeds the number of pulses in that interval, then the actual number of steps needs to be adjusted downwards. The largest pulse change among the pulse changes for each step interval is taken, and this largest pulse change is subtracted from the unit pulse correction value to obtain the pulse change after correction for that step interval. If further correction is needed, the step intervals with already corrected pulse changes and their corresponding already corrected pulse changes are removed. The largest pulse change among the remaining pulse changes for each step interval is selected, and this largest pulse change is subtracted from the unit pulse correction value to obtain the pulse change after correction for that step interval. This process is repeated num times, finding the maximum pulse value in the step interval array each time, thus decreasing the number of pulses to ensure that the actual number of pulses matches the calculated number of pulses.

[0021] (3)V diff =V actual -V count If the sum of pulse changes for each step interval is less than the number of pulses in that interval, and the actual number of steps is less than the number of pulses in that interval, then the actual number of steps needs to be adjusted upwards. The largest pulse change among the pulse changes for each step interval is taken and added to the unit pulse correction value to obtain the pulse change after correction for that step interval. If further correction is needed, the step intervals with already corrected pulse changes and their corresponding already corrected pulse changes are removed. The largest pulse change among the remaining pulse changes in the step intervals is selected and added to the unit pulse correction value to obtain the pulse change after correction for that step interval. This process is repeated num times, finding the maximum pulse value in the step interval array each time, thus increasing the pulse count to ensure that the actual pulse count matches the calculated pulse count.

[0022] This invention combines the advantages of the aforementioned curves to propose a cosine curve design scheme. During the cosine oscillation motion, position, velocity, and acceleration are all continuously differentiable, exhibiting excellent smooth transitions without abrupt acceleration changes. Furthermore, it eliminates the need for start and stop segments in the stepper motor, simplifying motion planning. This effectively ensures the stability of the welding torch oscillation process and the welding quality. Through this invention, while ensuring the feasibility of the planned trajectory, the difficulty of creating solid rising and falling curves is greatly simplified, resulting in better continuity and smoothness of position, velocity, and acceleration during the oscillation process. This reduces the impact of the welding torch oscillation torque on the mechanical structure and stepper motor. The method features a simple control process, strong adaptability, fast response speed, and effective protection of the actuator. Attached Figure Description

[0023] Figure 1 This is a schematic diagram of the welding torch oscillation path in the technical solution of the present invention, where 1 is welding material A, 2 is welding material B, and 3 is the weld.

[0024] Figure 2 This is a schematic diagram of the cosine curve oscillation control in the technical solution of this invention.

[0025] Figure 3 This is a schematic diagram of the cosine curve oscillation control process method in the technical solution of this invention.

[0026] Figure 4 This is a flowchart of the embedded programming implementation in the technical solution of this invention.

[0027] Figure 5 This is a cosine rising curve diagram of the stepper motor in the technical solution of this invention.

[0028] Figure 6 This is a pulse step count diagram of the stepper motor Δ(ωt) interval in the technical solution of this invention.

[0029] Figure 7 This is a comparison chart of the position, velocity, and acceleration trajectories of the trapezoidal and cosine control line curves modeled using MATLAB in the technical solution of this invention.

[0030] Figure 8 These are photographs of the weld formation after welding using the technical solution of this invention. Detailed Implementation

[0031] The technical solution of the present invention will be further described below with reference to specific embodiments.

[0032] by Figure 1As shown, two pieces of welding material A and B are welded, and a weld is formed between the two when welding; the welding motor drives the welding torch (a welding gun is often installed on the welding torch, and the welding gun is driven by the welding torch) to swing between the two pieces of welding material, while moving along the direction of the weld, that is, the welding torch moves from welding material A to welding material B, and then from welding material B to welding material A, while moving along the direction of the weld, until the entire weld is formed, connecting the two pieces of welding material together. When the welding torch swings using the technical solution of the present application, the process of the welding torch moving from welding material A to welding material B and then from welding material B to welding material A is mainly considered (the distance between the two is considered in practice), and cosine curve control is taken as an example.

[0033] The cosine trajectory takes a radius r as a virtual swing arm, and the change of the projection y1 of r on the longitudinal coordinate axis corresponds to the change of the swing position of the welding torch. When the swing arm r completes one rotation, the actual mass point y1 completes a reciprocating motion in the interval [y max , y min ], that is, the welding torch completes one swing period. The corresponding swing width is 2r, that is, the diameter of the circular motion, which is defined as A. The size of the swing width is actually determined by the size of the radius of the circular motion. In the virtual swing process, the swing width A and the motion position of the mass point y1 satisfy the formula:

[0034] y1=A cos(ωt)

[0035] The velocity is:

[0036]

[0037] The acceleration is:

[0038]

[0039] The welding torch starts from the bevel of the welding material workpiece A (the speed is zero), accelerates to the maximum speed, at which time it is located at the midpoint of AB, and then decelerates to the welding material workpiece B (the speed is zero); then the welding torch returns from the welding material workpiece B to A, and experiences the above opposite process, which actually completes one period; in this process, since the position, velocity and acceleration are continuously derivable, smooth transition, there is no mutation, and there is no need to design step start and stop sections, etc., as shown in Figure 2 .

[0040] The interval segmentation method is adopted to divide [0, 2π] into 4 segments, and each segment has consistency in trajectory planning. The rising interval of the welding torch in [π / 2, π] (that is, the rising interval of the welding torch from zero to the maximum speed) is selected for illustration: the [π / 2, π] interval is divided into 79 segments, a total of 80 points.

[0041] In the interval [π / 2, π], the corresponding radian is: 0 < ωt < 1.57, taking Δ(ωt) = 0.02 radian as a step, seg = π / (2*Δ(ωt)) = 78.5 ≈ 79 (i.e. divided into 79 intervals), calculate the cosine value of 0-80 points: cos(0) ~ cos(1.57), as follows:

[0042] 1st point: cos(1.57) = 0

[0043] 2nd point: cos(1.56) = 0.0108

[0044] 3rd point: cos(1.54) = 0.0308

[0045] 4th point: cos(1.52) = 0.0508

[0046]

[0047] 78th point: cos(0.04) = 0.9992

[0048] 79th point: cos(0.02) = 0.9998

[0049] 80th point: cos(0) = 1

[0050] According to the actual ball screw lead, step motor step angle, subdivision number and actual swing width, calculate the swing one-way pulse number recorded as P (i.e. from the welding material workpiece A to B), then the rising interval pulse number is recorded as: V count = P / 2. Calculate Δ(ωt), 2Δ(ωt),..., 80Δ(ωt) radians corresponding to the pulse number recorded as: Pn = V count *cos(ωt), n ∈ [0, seg].

[0051] Physically, the rising step number is an integer, so round off the calculated Pn value to obtain the pulse value of different seg intervals. Calculate the Δ(ωt) unit interval, the pulse increment is recorded as ΔPn, and the sum of ΔPn in the interval [π / 2, π] is recorded as: V actual . Compare with V count , calculate the pulse deviation, and correct the deviation value by DSC algorithm.

[0052] Let the swing width L = 2mm, the ball screw lead D = 4mm, the step motor step angle θ s = 1.8°, the subdivision number N d = 4, i.e. 800 pps / r. Calculate the swing one-way pulse total number as:

[0053] P = 360 / θ s × N dX L / D = 800 * (2 / 4) = 400

[0054] Pulse number of rising interval:

[0055] V count = P / 2 = 400 / 2 = 200

[0056] Calculate the pulse number corresponding to 2Δ(ωt), 80Δ(ωt) radians and round it up:

[0057] Pulse number of the first point: P1 = 200 * cos(1.57) = 200 * 0 = 0

[0058] Pulse number of the second point: P2 = 200 * cos(1.56) = 200 * 0.0108 = 2.16 ≈ 2

[0059] Pulse number of the third point: P3 = 200 * cos(1.54) = 200 * 0.0308 = 6.16 ≈ 6

[0060] Pulse number of the fourth point: P4 = 200 * cos(1.52) = 200 * 0.0508 = 10.1549 ≈ 10

[0061]

[0062] Pulse number of the 78th point: P78 = 200 * cos(0.04) = 200 * 0.9992 = 199.84 ≈ 200

[0063] Pulse number of the 79th point: P79 = 200 * cos(0.02) = 200 * 0.9998 = 199.96 ≈ 200

[0064] Pulse number of the 80th point: P80 = 200 * cos(0) = 200 * 1 = 200

[0065] Draw the cosine rising curve of the stepper motor as shown in Figure 5 Calculate the pulse increment in Δ(ωt) unit interval:

[0066] ΔP1 = P2 - P1 = 2 - 0 = 2

[0067] ΔP2 = P3 - P2 = 6 - 2 = 4

[0068] ΔP3 = P4 - P3 = 10 - 6 = 4

[0069]

[0070] ΔP77 = P78 - P77 = 200 - 200 = 0

[0071] ΔP78 = P79 - P78 = 200 - 200 = 0

[0072] ΔP79 = P80 - P79 = 200 - 200 = 0

[0073] Sum all the pulse increment values:

[0074] V actual = ΔP1 + ΔP2 + ΔP3 +... + ΔP77 + ΔP78 + ΔP79 = 200

[0075] Calculate, V diff = V actual - V count = 0

[0076] It indicates that under this condition, the number of pulses is equal, and the number of pulses in the array ΔP is the number of steps of the stepper motor in this interval, as shown in Figure 6 .

[0077] Through calculation, the final determination of Δ(ωt) unit interval pulse increment ΔPn is the execution step number of the stepper motor. Then calculate the execution time ΔT of the pulse increment ΔPn in the unit interval of Δ(ωt), and the single swing time is recorded as Tb (i.e. from the first welding material workpiece to the second welding material workpiece), and the interval number is: seg = 79, then

[0078] ΔT = Tb / (2 × seg)

[0079] Establish the ΔPn array in the interval [π / 2, π], set two timers, T1 timer: every ΔT period, generate an interrupt. Calculate the pulse number corresponding to seg interval: ΔPn. T2 timer: every time it counts to SetValue, generate an interrupt. Update the corresponding SetValue of the next ΔT period, as shown in Figure 4 . Thus, the motion curve planning and control of the stepper motor is completed.

[0080] By establishing the dynamics equation of the stepper motor, the control equation is derived from Newton's second law and Kirchhoff's law.

[0081] B is the rotational damping, generally in units of N·m·s;

[0082] J is the moment of inertia, generally in units of kg·m 2 ;

[0083] ω is the angular velocity, generally in units of rad / s;

[0084] θ is the rotor angle, generally in units of rad;

[0085] R is the winding resistance, generally in units of Ω;

[0086] L is the winding inductance, generally in units of H;

[0087] i is the loop current, generally in units of A;

[0088] V is the control voltage, generally in units of V;

[0089] In SI units, the motor torque and back EMF constants are equal, so K is used to represent the motor torque constant (generally in units of V / rad / sec) and back EMF constant (generally in units of N·m / A)

[0090]

[0091]

[0092] Taking the motor position, speed and armature current as state variables, the state equation is established:

[0093]

[0094]

[0095] The Laplace transform is performed to obtain the transfer function:

[0096]

[0097] Modeling using matlab, as shown in Figure 7 The uppermost two curves correspond to position, the middle two curves correspond to speed, and the lowermost two curves correspond to acceleration. In each pair of curves, the black curve corresponds to the trapezoidal curve, and the red curve corresponds to the cosine curve. Comparing the trapezoidal curve and the cosine curve, it can be seen that the cosine algorithm can more optimally complete the trajectory realization of position, speed and acceleration, and ensure the flexible change (i.e. non-sudden change) of the acceleration curve, without the sudden change of the trapezoidal curve.

[0098] The calculation results are implemented using an embedded system, the welding process is stable, and the effect is good, and the weld formation is as shown in Figure 8 The weld has good weld formation.

[0099] The above has exemplarily described the present application, and it should be noted that, without departing from the core of the present application, any simple modification, change or other equivalent replacement that can not cost creative labor of those skilled in the art falls within the protection scope of the present application.

Claims

1. A method of torch oscillation control based on a cosine-sine curve, characterized in that, The method is completed by using a cosine curve or a sine curve as a control curve and combining a DSC algorithm: The welding torch is accelerated from the first welding material workpiece to the maximum speed, then decelerated to the second welding material workpiece, then accelerated from the second welding material workpiece to the maximum speed, and then decelerated to the first welding material workpiece, which is a cycle. The welding torch reaches the midpoint of the first welding material workpiece and the second welding material workpiece when the welding torch reaches the maximum speed. The movement of the welding torch in one cycle is divided into four intervals: (1) the welding torch is accelerated from the first welding material workpiece to the maximum speed; (2) the welding torch is decelerated from the maximum speed to the second welding material workpiece; (3) the welding torch is accelerated from the second welding material workpiece to the maximum speed; (4) the welding torch is decelerated from the maximum speed to the first welding material workpiece. In each interval, each interval is divided into several small intervals with Δ(ωt) as a step, and the cosine value or the sine value of each point in the interval is calculated, and the number of partitions of the small interval ; The single-pass distance of the first welding material workpiece to the second welding material workpiece is taken as an actual situation, the number of swing single-pass pulses calculated according to the actual situation is recorded as P, and the number of pulses in each interval is recorded as: ; The number of pulses corresponding to each step radian Δ(ωt), 2Δ(ωt), …, segΔ(ωt) is recorded as: , ; The Δ(ωt) unit interval is calculated, and the pulse increment is denoted as That is, the pulse change amount corresponding to each step interval, the pulse change amount in each step interval is calculated The sum is denoted as And compared with The pulse deviation is generated, and the deviation value is corrected by the DSC algorithm, and the algorithm is as follows: (1) If the difference between them is equal to zero, the number of pulses is equal, and the array of pulse numbers is the number of steps of the stepper motor in the interval, and no correction is needed. (2) The maximum pulse change amount in the pulse change amount corresponding to each step interval is taken out, and the maximum pulse change amount is subtracted from the unit pulse correction value to obtain the corrected pulse change amount corresponding to the step interval. If further correction is needed, the maximum pulse change amount is selected from the pulse change amounts corresponding to the remaining step intervals after removing the step interval and the corresponding corrected pulse change amount, and the maximum pulse change amount is subtracted from the unit pulse correction value to obtain the corrected pulse change amount corresponding to the step interval. The same process is repeated a total of num times to find the maximum pulse value in the step interval array and complete the pulse number decrement to ensure that the actual pulse number and the calculated pulse number are consistent. (3) The maximum pulse change amount in the pulse change amount corresponding to each step interval is taken out, and the maximum pulse change amount is subtracted from the unit pulse correction value to obtain the corrected pulse change amount corresponding to the step interval. If further correction is needed, the maximum pulse change amount is selected from the pulse change amounts corresponding to the remaining step intervals after removing the step interval and the corresponding corrected pulse change amount, and the maximum pulse change amount is subtracted from the unit pulse correction value to obtain the corrected pulse change amount corresponding to the step interval. The same process is repeated a total of num times to find the maximum pulse value in the step interval array and complete the pulse number decrement to ensure that the actual pulse number and the calculated pulse number are consistent.

2. The cosine-sine curve based torch weave control method of claim 1, wherein, The step size is adjusted so that the decimal places of the number of partitions seg are greater than or equal to 5 to obtain the specific number of partitions.

3. The cosine-sine curve based torch weave control method of claim 1, wherein, The single-trip pulse number is calculated according to the lead of the ball screw, the step angle of the stepper motor, the subdivision number, and the actual swing width, which is the single-trip distance from the first welding material workpiece to the second welding material workpiece.

4. The cosine-sine curve based torch weave control method of claim 1, wherein, The calculation The value is rounded to obtain the number of pulses corresponding to the different length segments.

5. The cosine-sine curve based torch weave control method of claim 1, wherein, , indicates the number of pulse corrections; indicates the total number of pulse corrections; , indicates the unit pulse correction value.

6. The cosine-sine curve based torch weave control method of claim 1, wherein, The pulse change amount of each step interval is determined by calculation, which is the execution step number of the stepper motor. The execution time of the pulse change amount of each step interval is calculated, and the single-trip swing time is combined to complete the motion curve planning and control of the stepper motor.

Citation Information

Patent Citations

  • High precision control method for motor

    CN102751939A

  • Motor acceleration and deceleration control method and system

    CN109713956A