Apparatus and method for correcting command value or teaching point, laser processing system, and computer program

By correcting the laser output and speed command values ​​and adjusting the distance between the laser processing head and the workpiece, the problem of uneven heat input caused by workpiece unevenness in laser processing was solved, thus achieving stable and high-quality laser processing.

CN121889235APending Publication Date: 2026-04-17FANUC LTD
View PDF 1 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
FANUC LTD
Filing Date
2023-09-13
Publication Date
2026-04-17

AI Technical Summary

Technical Problem

Existing laser processing technology struggles to maintain processing quality, especially when the workpiece surface is uneven. Variations in the movement speed of the laser processing head lead to uneven heat input, affecting the processing results.

Method used

By calibrating the laser output command value and speed command value, the distance between the laser processing head and the workpiece is adjusted in real time using a distance measuring sensor, and the command value is corrected in real time according to the movement and speed changes, so as to maintain a constant distance and uniform heat input between the laser exit and the workpiece.

Benefits of technology

It achieves stable laser processing quality even on uneven workpiece surfaces, ensuring uniformity of heat input and laser wavenumber per unit area, and improving processing accuracy and consistency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121889235A_ABST
    Figure CN121889235A_ABST
Patent Text Reader

Abstract

In the prior art, the processing quality of laser processing is required to be maintained. A device (60) for correcting a command value for laser processing a workpiece is provided with: a movement control unit (62) for moving a movement machine (12), which moves a laser beam emission port for emitting laser beam generated by a laser oscillator (18) relative to the workpiece, along a predetermined movement path while operating the movement machine (12) at a predetermined speed command value; a laser oscillation control unit (66) that operates the laser oscillator (18) in accordance with a predetermined laser output command value and causes the laser oscillator (18) to generate laser light; a gap control execution unit (64) that operates the mobile machine such that the distance between the laser light emission port and the workpiece is maintained constant during laser processing; and a command correction unit (72) that corrects the speed command value or the laser output command value on the basis of the amount of movement of the moving machine (12) in the direction orthogonal to the movement path during laser processing.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to apparatus and method for calibrating command values ​​for laser processing, apparatus and method for calibrating teaching points for laser processing, laser processing systems, and computer programs. Background Technology

[0002] Laser processing systems with a moving mechanism that moves the workpiece relative to the laser processing head are known (e.g., Patent Document 1).

[0003] Existing technical documents

[0004] Patent documents

[0005] Patent Document 1: Japanese Patent Application Publication No. 2004-314137 Summary of the Invention

[0006] The problem that the invention aims to solve

[0007] Previously, the requirement was to maintain the processing quality of laser processing.

[0008] Methods for solving problems

[0009] In one aspect of this disclosure, an apparatus for correcting command values ​​for laser processing of a workpiece includes: a movement control unit that causes a moving mechanism to operate according to a predetermined speed command value and move along a predetermined movement path, the moving mechanism causing the laser exit of a laser emitting oscillator to move relative to the workpiece; a laser oscillator control unit that causes the laser oscillator to operate according to a predetermined laser output command value and causes the laser oscillator to generate laser; a gap control execution unit that causes the moving mechanism to operate in a manner that maintains a fixed distance between the laser exit and the workpiece during laser processing; and a command correction unit that corrects the speed command value or the laser output command value based on the amount of movement of the moving mechanism in a direction orthogonal to the movement path during laser processing.

[0010] In other embodiments of this disclosure, the apparatus for correcting a pre-determined teaching for laser processing of a workpiece includes: a movement control unit that moves a moving mechanism along a movement path defined by a first teaching point and a second teaching point, the moving mechanism moving the laser exit of a laser generated by an emitting laser oscillator relative to the workpiece; a gap control execution unit that operates the moving mechanism in a manner that maintains a fixed distance between the laser exit and the workpiece; a movement amount acquisition unit that acquires the movement amount of the moving mechanism in a direction orthogonal to the movement path during the movement from the first teaching point to the second teaching point; and a teaching point correction unit that, when the movement distance of the laser moving relative to the workpiece during the movement of the moving mechanism from the first teaching point to the second teaching point is greater than the length of the movement path, corrects the first teaching point or the second teaching point based on the movement amount acquired by the movement amount acquisition unit so that the movement distance matches the length.

[0011] In another aspect of this disclosure, in the method for correcting the command value for laser processing of a workpiece, a moving mechanism is operated according to a predetermined speed command value and moves along a predetermined movement path. The moving mechanism moves the laser exit of the laser emitting laser generated by the laser oscillator relative to the workpiece, causing the laser oscillator to operate according to a predetermined laser output command value and generate laser light. During laser processing, the moving mechanism is operated in a manner that maintains a fixed distance between the laser exit and the workpiece. The speed command value or the laser output command value is corrected based on the amount of movement of the moving mechanism in the direction orthogonal to the movement path during laser processing.

[0012] In another aspect of this disclosure, in the method for correcting a pre-determined teaching point for laser processing of a workpiece, a moving machine is moved along a movement path defined by a first teaching point and a second teaching point. The moving machine moves the laser exit of the laser generated by the laser oscillator relative to the workpiece so as to maintain a fixed distance between the laser exit and the workpiece. During the movement from the first teaching point to the second teaching point, the amount of movement of the moving machine in a direction orthogonal to the movement path is obtained. If the distance of the laser moving relative to the workpiece during the movement of the moving machine from the first teaching point to the second teaching point is greater than the length of the movement path, the first teaching point or the second teaching point is corrected based on the obtained amount of movement so that the distance of movement is consistent with the length. Attached Figure Description

[0013] Figure 1 This is a schematic diagram of a robot system according to one embodiment.

[0014] Figure 2 yes Figure 1 The diagram shows a block diagram of the robot system.

[0015] Figure 3 This is a diagram showing the teaching points for laser processing.

[0016] Figure 4 This diagram illustrates the position of the laser processing head and TCP when performing laser processing on a workpiece with protrusions.

[0017] Figure 5 Indicates in Figure 4 The position of the TCP that moves on the convex part shown.

[0018] Figure 6 yes Figure 2 The flowchart shows the functions of the robot system.

[0019] Figure 7 express Figure 6 A variation of the process.

[0020] Figure 8 This is a schematic diagram of a robot system with other implementation methods.

[0021] Figure 9 yes Figure 8 The diagram shows a block diagram of the robot system.

[0022] Figure 10 yes Figure 8 An enlarged view of the laser processing head shown.

[0023] Figure 11 Indicates in Figure 10 The laser processing head shown is in the state where the movable nozzle is retracted.

[0024] Figure 12 It is used for explanation Figure 8 The diagram shows the position of the laser processing head and TCP when the robot system performs laser processing on a workpiece with a protrusion.

[0025] Figure 13 express Figure 1 Other functions of the robot system shown.

[0026] Figure 14 This is a diagram used to illustrate the angle of incidence of the laser relative to the workpiece.

[0027] Figure 15 It is a graph showing the relationship between the incident angle of the laser relative to the workpiece and the absorption rate of the workpiece.

[0028] Figure 16 This is an example of a data table that stores the settings of the incident angle, velocity command value, and laser output command value in relation to each other.

[0029] Figure 17 express Figure 1 Another function of the robot system shown.

[0030] Figure 18 express Figure 1 Another function of the robot system shown.

[0031] Figure 19 This is a diagram showing the teaching points for laser processing.

[0032] Figure 20 It is used to explain in Figure 19 The diagram shows the positions of the laser processing head and TCP when performing a moving motion with the workpiece tilted.

[0033] Figure 21 yes Figure 18 The flowchart shows the functions of the robot system.

[0034] Figure 22 This is a diagram used to illustrate the correction method for the teaching points.

[0035] Figure 23 express Figure 21 A variation of the process.

[0036] Figure 24 express Figure 1 Another function of the robot system shown. Detailed Implementation

[0037] Hereinafter, embodiments of the present disclosure will be described in detail based on the accompanying drawings. Furthermore, in the various embodiments described below, the same elements will be labeled with the same reference numerals, and repeated descriptions will be omitted. First, refer to... Figure 1 and Figure 2 The laser processing system 10 of one embodiment will be described. The laser processing system 10 is a system for performing laser processing (laser welding, laser cutting, etc.) on a workpiece W.

[0038] Specifically, the laser processing system 10 includes a robot 12, a laser processing head 14, a range sensor 16, a laser oscillator 18, and a control device 20. The robot 12 moves the laser processing head 14 relative to the workpiece W. In this embodiment, the robot 12 is a vertical joint robot, having a robot base 22, a rotating body 24, a lower arm 26, an upper arm 28, and a wrist 30.

[0039] The robot base 22 is fixed to the floor of the work unit or to an automated guided vehicle (AGV). A rotating body 24 is mounted on the robot base 22 so as to be rotatable about a vertical axis. A lower arm portion 26 is mounted on the rotating body 24 so as to be rotatable about a horizontal axis. An upper arm portion 28 is rotatably mounted on the top end of the lower arm portion 26. The wrist portion 30 includes: a wrist base 30a, which is rotatably mounted on the front end of the upper arm portion 28 about two mutually orthogonal axes; and a wrist flange 30b, which is rotatably mounted on the wrist base 30a.

[0040] Multiple servo motors 32 are respectively provided in each component of robot 12 (i.e., robot base 22, rotating body 24, lower arm 26, upper arm 28 and wrist 30). Figure 2 These servo motors 32, according to instructions from the control unit 20, cause the movable components of the robot 12 (i.e., the rotating body 24, lower arm 26, upper arm 28, wrist base 30a, and wrist flange 30b) to rotate around the drive shaft. This causes the robot 12 to move the laser processing head 14. Each servo motor 32 is equipped with a rotation detection sensor (encoder, Hall element, etc.) to detect the rotational position of the servo motor 32. Each rotation detection sensor supplies the detected rotational position data Dr to the control unit 20.

[0041] The laser processing head 14 is detachably mounted to the wrist flange 30b of the robot 12 via a loading / unloading tool 34. The laser processing head 14 has a head body 36 and a nozzle 38. The head body 36 is hollow and houses optical system components such as optical lenses (collimating lenses, focusing lenses, etc.) and lens drive units (e.g., servo motors) that move the optical lenses according to instructions from the control device 20. The loading / unloading tool 34 is provided on the head body 36, allowing the head body 36 to be loaded and unloaded onto the wrist flange 30b.

[0042] The nozzle 38 is hollow and is located at the front end of the head body 36. In this embodiment, the nozzle 38 has a frustum-shaped profile with a cross-sectional area decreasing from its base end towards its front end, and a laser emission outlet 40 is formed at its front end. A hollow chamber is formed inside the head body 36 and the nozzle 38, and auxiliary gas is supplied to this chamber from an externally located auxiliary gas supply device (not shown). The laser LB generated by the laser oscillator 18 propagates within this chamber and is emitted along the optical axis A from the laser emission outlet 40 along with the auxiliary gas.

[0043] The distance sensor 16 measures the distance d between the laser exit 40 and the workpiece W. Specifically, the distance sensor 16 is, for example, a capacitive, infrared, laser, or acoustic (e.g., ultrasonic) distance sensor, and is fixed to the head body 36 or the nozzle 38. The distance sensor 16 measures the distance d according to the instructions from the control device 20 and supplies the measured distance d data Dd to the control device 20.

[0044] The laser oscillator 18 internally oscillates according to the laser output command value O from the control device 20, generating a laser LB. The laser oscillator 18 can be any type of laser oscillator, such as a fiber laser oscillator, a pulsed laser oscillator, a CO2 laser oscillator, or a solid-state laser (YAG laser) oscillator. The laser oscillator 18 supplies the generated laser LB to the laser processing head 14 via a light guide path 42. The light guide path 42 can be composed of optical fibers, voids, light-guiding materials (crystal, etc.), mirrors, or optical lenses.

[0045] like Figure 2 As shown, the control device 20 is a computer having a processor 50, a memory 52, and an I / O interface 54. The processor 50, such as a CPU or GPU, is communicatively connected to the memory 52 and the I / O interface 54 via a bus 56, communicates with these components, and performs various computational processes for executing the laser processing LP described later. The memory 52, such as RAM or ROM, temporarily or permanently stores various data used in the computational processes executed by the processor 50, as well as various data generated during the computational processes.

[0046] I / O interface 54, for example, has an Ethernet (trademarked) port, a USB port, a fiber optic connector, or an HDMI (trademarked) terminal, and communicates with external devices via wired or wireless means under instructions from processor 50. Robot 12 (servo motor 32), laser processing head 14 (lens drive unit), range sensor 16, and laser oscillator 18 are connected to I / O interface 54 in a communicative manner.

[0047] In robot 12, a robot coordinate system C1 and a tool coordinate system C2 are pre-defined. Robot coordinate system C1 is a control coordinate system C used to control the movements of the various movable components of robot 12 (i.e., the rotating body 24, the lower arm 26, the upper arm 28, the wrist base 30a, and the wrist flange 30b). In this embodiment, robot coordinate system C1 is fixed to robot base 22 with its origin located at the center of robot base 22 and its z-axis parallel (specifically, aligned) with the rotation axis of rotating body 24.

[0048] On the other hand, the tool coordinate system C2 is a control coordinate system C that defines the positions of the wrist flange 30b and the laser processing head 14 in the robot coordinate system C1. For example, the origin of the tool coordinate system C2 (the so-called Tool Center Point: TCP) is located at the focal point FP of the laser LB emitted from the laser exit 40 by the laser processing head 14, and the z-axis of the tool coordinate system C2 is set to be parallel (specifically, aligned) with the optical axis A. TCP is the control point in the robot coordinate system C1 that represents the positions of the robot 12 (specifically, the wrist flange 30b) and the laser processing head 14.

[0049] The processor 50 can calculate the coordinates P of the TCP in the robot coordinate system C1 at any time point τ based on the detection data Dr obtained from the aforementioned rotation detection sensor. These coordinates P represent the position P of the wrist flange 30b and the laser processing head 14 in the robot coordinate system C1 at time point τ. Alternatively, the TCP can be set at the center of the laser exit 40.

[0050] When the laser processing head 14 is moved, the processor 50 of the control device 20 sets a tool coordinate system C2 representing the target position in the robot coordinate system C1, and generates instructions for each servo motor 32 of the robot 12 to position the laser processing head 14 at the position represented by the set tool coordinate system C2. In this way, the control device 20 moves the laser processing head 14 to any position in the robot coordinate system C1 by moving the robot 12. Thus, in this embodiment, the robot 12 constitutes a moving machine that moves the laser processing head 14 (i.e., the laser exit point) relative to the workpiece W. Furthermore, the robot coordinate system C1 and the tool coordinate system C2 constitute a control coordinate system C for automatically controlling the movement of the robot 12.

[0051] Next, refer to Figure 3 To illustrate the laser processing LP performed by the laser processing system 10, in order to perform the laser processing LP on the workpiece W, teaching points TPn (n = 1, 2, 3, ...) that should be positioned on the laser processing head 14 (i.e., TCP) are predetermined. Figure 3 In the example shown, five teaching points TP1 to TP5 are pre-taught along the surface of workpiece W. Furthermore, in this embodiment, the surface of workpiece W is arranged parallel to the xy plane of robot coordinate system C1. Therefore, teaching points TP1 to TP5 are determined along the xy plane of robot coordinate system C1.

[0052] These teach points TPn are defined as command codes in the motion program PG1 for laser processing LP. The processor 50, by executing the motion program PG1, causes the robot 12 to move to position the laser processing head 14 (TCP) in the order of teach points TP1→TP2→TP3→TP4→TP5. The movement path MPn (n=1, 2, 3, 4) is defined by two adjacent teach points TPn and TPn+1. In this embodiment, the movement path MPn is defined as extending along the xy plane of the robot coordinate system C1 (specifically, parallel to it).

[0053] Furthermore, a predetermined speed command value V is set for the speed V at which the laser processing head 14 moves from the teach point TPn towards the teach point TPn+1 along the movement path MPn. This speed command value V is predetermined by the operator as a laser processing condition and is specified as a command code in the action program PG1. Alternatively, a different speed command value V can be set for each movement path MPn, or a common speed command value V can be set for all movement paths MP1 to MP4.

[0054] The processor 50 executes the motion program PG1 in the laser processing LP, thereby executing the movement motion LP1, which moves the robot 12 according to the speed command value V, causing the robot 12 and the laser processing head 14 (TCP) to move along the movement path MPn at the speed V specified by the speed command value V. Thus, in this embodiment, the processor 50 acts as the movement control unit 62 that moves the robot 12 along the movement path MPn according to the speed command value V. Figure 2 It can perform its functions.

[0055] In addition, Figure 3 In the example shown, the direction of the movement path MPn is consistent with the negative x-axis direction of the robot coordinate system C1. Furthermore, in the following description, when the robot 12 moves along the movement path MPn in the movement action LP1, the laser processing head 14 maintains an orientation in which the z-axis of the tool coordinate system C2 (i.e., the optical axis A) is parallel to the z-axis of the robot coordinate system C1 (in other words, orthogonal to the movement path MPn).

[0056] Along with the movement LP1, the processor 50 executes gap control LP2 in the laser processing LP, which causes the robot 12 to move to maintain a constant distance d between the laser exit 40 and the workpiece W. More specifically, the processor 50 executes a gap control program PG2 for gap control LP2.

[0057] According to the gap control program PG2, the processor 50, based on the measurement data Dd obtained from the ranging sensor 16, moves the laser processing head 14 by the action of the robot 12 to make the distance d consistent with the predetermined target distance dt. This target distance dt is, for example, set as the distance from the laser exit 40 to the focal point FP of the laser LB (in other words, the distance from the laser exit 40 to the TCP) (e.g., dt = 1 [mm]). The target distance dt is specified as a command code in the gap control program PG2.

[0058] exist Figure 3 In the example case, the processor 50 moves the laser processing head 14 along the movement path MPn in the negative x-axis direction of the robot coordinate system C1 via the movement action LP1, and moves the laser processing head 14 in the z-axis direction of the robot coordinate system C1 via the gap control LP2, so that the distance d is consistent with the target distance dt. Thus, the distance d remains constant during the movement action LP1. Therefore, in this embodiment, the processor 50 acts as the gap control execution unit 64 that executes the gap control LP2. Figure 2 It can perform its functions.

[0059] In addition, the processor 50 executes movement action LP1 and gap control LP2 in the laser processing LP, and executes laser generation action LP3, which activates the laser oscillator 18 to generate laser LB according to a predetermined laser output command value O. Therefore, the processor 50 acts as the laser oscillation control unit 66 that executes laser generation action LP3. Figure 2 (This function allows the laser output command value O to perform its purpose. For example, it can have a laser power command value Op, a frequency command value Of, and a duty cycle command value Od.)

[0060] The laser power command value Op specifies the laser power Op [kW] of the output laser LB. The frequency command value Of specifies the frequency Of [Hz] of the laser LB when generating pulsed oscillating laser. In addition, the duty cycle command value Od specifies the duty cycle Od [%) of the laser LB. The laser output command values ​​O (laser power command value Op, frequency command value Of, and duty cycle command value Od) are predetermined by the operator as laser processing conditions. As described above, the processor 50 performs laser processing LP on the workpiece W by executing the movement action LP1, the gap control LP2, and the laser generation action LP3 in parallel.

[0061] Here, the surface of workpiece W may not be a plane parallel to the xy plane of robot coordinate system C1 due to surface roughness, deformation, or poor installation, but may be uneven or tilted. Figure 4 This represents such an example. In Figure 4In the workpiece W shown, a protrusion B is formed in the interval between teaching points TP2 and TP4. When the above-described laser processing LP is performed on such a protrusion B, the laser processing head 14 (TCP) moves along the protrusion B by means of gap control LP2, and as a result, is positioned at a position TP3' offset from the teaching point TP3 in the direction orthogonal to the movement path MP2, that is, in the positive z-axis direction of the robot coordinate system C1.

[0062] In this case, during the period when robot 12 moves laser processing head 14 from teach point TP2 to teach point TP3 according to speed command value V, the moving speed ν of laser LB relative to workpiece W is faster than the speed V specified by speed command value V. Regarding this, refer to... Figure 5 Please provide a detailed explanation. Figure 5 The position P1 shown represents the TCP position at any time point τ1 during which the robot 12 moves the laser processing head 14 along the protrusion B.

[0063] On the other hand, position P2 represents the TCP position at time point τ2 (=τ1+T) after a predetermined time T from time point τ1. Additionally, position P2' represents a position with the same x-coordinate and z-coordinate in robot coordinate system C1 as position P2 and position P1, respectively. The coordinates of robot coordinate system C1 for these positions P1, P2, and P2' are respectively designated as P1(x1, y1, z1), P2(x2, y1, z2), and P2'(x2, y1, z1).

[0064] In this case, the distance Δ1 between positions P1 and P2' is Δ1 = x1 - x2, and the distance Δ2 between positions P2' and P2 is Δ2 = z2 - z1. This distance Δ2 is equivalent to the amount of movement Δ2 by which the robot 12 moves the laser processing head 14 in a direction orthogonal to the movement path MP2 (i.e., the z-axis direction of the robot coordinate system C1) through gap control LP2. Additionally, the distance Δ3 between positions P1 and P2 is... .

[0065] Here, in the movement LP1, during the movement of the laser processing head 14 along the movement path MP2, the robot 12 moves in the negative x-axis direction of the robot coordinate system C1 at a speed V specified by the speed command value V. Therefore, the laser processing head 14 moves from position P1 to position P2 in time t = Δ1 / V. The laser LB emitted from the laser processing head 14 moves at a speed ν relative to position P2 on the surface of the protrusion B from position P1. Since Δ3 > Δ1, the movement speed ν is faster than the speed command value V.

[0066] Furthermore, the moving speed ν of the laser LB when the laser processing head 14 moves within the interval between teaching points TP3 and TP4 can also be calculated in the same way. Thus, when the moving speed ν of the laser LB irradiating the workpiece W increases, the heat input of the laser LB per unit area of ​​the workpiece W may decrease. Alternatively, if the laser LB is a pulsed oscillating laser, the wavenumber of the laser LB incident on the workpiece W per unit area may decrease. As a result, this may affect the processing quality of the workpiece W (deviations, etc.).

[0067] Therefore, in this embodiment, the processor 50 corrects the command value (specifically, the laser output command value O or the speed command value V) for laser processing LP to avoid the impact of increased movement speed ν on processing quality. Hereinafter, refer to... Figure 6 To illustrate the functions of the laser processing system 10, the processor 50 begins processing upon receiving a processing start command from the operator, the host controller, or the computer program PG3. Figure 6 The process.

[0068] In step S1, the processor 50 begins laser processing LP. Specifically, the processor 50 executes the aforementioned movement action LP1, gap control LP2, and laser generation action LP3 in parallel as laser processing LP. Thus, while moving the laser processing head 14 along the movement path MPn, the workpiece W is laser-processed using the laser LB emitted from the laser exit 40 of the laser processing head 14. During the execution of laser processing LP, the processor 50 periodically obtains the coordinates P(x, y, z) of TCP in the robot coordinate system C1 based on the detection data Dr from the rotation detection sensor.

[0069] In step S2, the processor 50 determines whether the amount of movement Δ2 by which the robot 12 moves the laser processing head 14 in a direction orthogonal to the movement path MPn (i.e., the z-axis direction of the robot coordinate system C1) exceeds a predetermined threshold Δth. As an example, see reference... Figure 5 As explained, the processor 50 calculates the movement Δ2 as Δ2 = z2 - z1 based on the z-coordinate of the TCP robot coordinate system C1 coordinate P2 (x2, y1, z2) obtained at the most recent time point τ2 and the z-coordinate of the TCP robot coordinate system C1 coordinate P1 (x1, y1, z1) obtained at a time point τ1 that is a period T earlier than the time point τ2.

[0070] As another example, when processor 50 obtains coordinates P2(x2, y1, z2) at the most recent time point τ2, it calculates the average z-coordinate Σzm / m (i.e., the moving average of the z-coordinate) of any number m (e.g., m = 5) of coordinates Pm(xm, ym, zm) obtained consecutively before that time point τ2. Then, processor 50 calculates the movement Δ2 as... .

[0071] Thus, in this embodiment, the processor 50 obtains the movement amount Δ2 based on the coordinates z1, z2, and zm of the z-axis of the robot coordinate system C1 of the robot 12 (TCP). Therefore, the processor 50 serves as the movement amount acquisition unit 68 for obtaining the movement amount Δ2. Figure 2 The processor 50 compares the acquired movement amount Δ2 with the threshold Δth. When the movement amount Δ2 exceeds the threshold Δth (Δ2 > Δth), it determines "yes". If the determination is "yes", the processor 50 proceeds to step S3; otherwise, if the determination is "no", it proceeds to step S4.

[0072] In step S3, the processor 50 corrects the command value (speed command value V or laser output command value O) based on the amount of movement Δ2 of the robot 12 in the direction orthogonal to the movement path MPn. The case of correcting the laser output command value O will be described below. In this case, the processor 50 first obtains the moving speed ν of the laser LB, which moves relatively on the workpiece W in the laser processing LP, based on the amount of movement Δ2.

[0073] As an example, if the movement Δ2 is calculated as Δ2 = z2 - z1 in the previous step S2, the processor 50 calculates the movement speed ν according to the above formula: ν = V × Δ3 / Δ1. As another example, if the movement Δ2 is calculated as Δ2 = z2 - Σzm / m in the previous step S2, the processor 50 first calculates the average x-coordinate Σxm / m (i.e., the average movement value of the x-coordinate) of the m coordinates Pm (xm, ym, zm) obtained before time point τ2. Then, the distance Δ1 is calculated as Δ1 = Σxm / m - x2, and the movement speed ν is calculated according to the formula ν = V × Δ3 / Δ1 (here, ...). Thus, in this embodiment, the processor 50 serves as the speed acquisition unit 70 for acquiring the moving speed ν. Figure 2 It can perform its functions.

[0074] Next, the processor 50 corrects the laser output command value O based on the acquired movement speed ν. Specifically, the processor 50 multiplies the variable α (=ν / V) obtained by dividing the movement speed ν by the speed command value V with the laser output command value O, thereby correcting the laser output command value O to a corrected output command value. For example, when the laser output command value O is the laser power command value Op, the processor 50 corrects the laser power command value Op to a corrected output command value. .

[0075] Furthermore, when the laser output command value O is the duty cycle command value Od, the processor 50 will also correct the duty cycle command value Od to ​​the correction output command value. In this way, by correcting the laser power command value Op or the duty cycle command value Od to ​​the correction output command value Op' or Od' (in other words, increasing the laser power Op and the duty cycle Od), the reduction in heat input per unit area of ​​the workpiece W caused by the increase in the moving speed ν can be suppressed in the laser processing LP, thereby achieving uniformity of heat input throughout the entire laser processing LP.

[0076] On the other hand, when the laser output command value O is the frequency command value Of, the processor 50 similarly corrects the frequency command value Of to the correction output command value. In this case, the frequency of the laser LB incident on the workpiece W increases with the moving speed ν. Therefore, in laser processing LP, the reduction in the wavenumber of the laser LB incident on each unit area of ​​the workpiece W can be suppressed, thereby achieving uniformity of the wavenumber incident throughout the entire laser processing LP.

[0077] Thus, the processor 50 corrects the laser output command value O based on the movement speed ν. Furthermore, the formula for calculating the corrected output command value O' is not limited to O' = α × O. The processor 50 can also use any function of the movement speed ν: O' = f(ν) to calculate the corrected output command value O'. The terms of this function: O' = f(ν) are arbitrarily determined by the operator through experimental methods or simulations. After step S3, the processor 50, as the laser oscillation control unit 66, executes the laser generation operation LP3 by causing the laser oscillator 18 to operate according to the corrected output command value O'.

[0078] Next, the case of correcting the speed command value V will be described. As an example, in the previous step S2, when the movement amount Δ2 is calculated as Δ2 = z2 - z1, the processor 50 calculates the tilt angle θ of the surface of the convex part B relative to the movement path MPn. Figure 5 )for (Where, Δ1 = x1 - x2). Then, processor 50 calculates the correction speed instruction value V' as V' = Vcosθ.

[0079] As another example, in the previous step S2, the movement Δ2 is used as... Given the calculated values, processor 50 calculates the average value Σxm / m, and determines the distance Δ1 as Δ1 = Σxm / m - x2. Then, processor 50 calculates the angle θ as θ = tan -1 (Δ2 / Δ1), the corrected speed command value V' is V'=Vcosθ.

[0080] In this way, the processor 50 corrects the speed command value V based on the movement amount Δ2. After this step S3, the processor 50, as the movement control unit 62, causes the robot 12 to move according to the corrected speed command value V', executing the movement action LP1. In this way, by correcting the speed command value V to the corrected speed command value V' (in other words, reducing the speed V), in the laser processing LP, it is possible to suppress the decrease in the amount of heat input per unit area of ​​the workpiece W caused by the increase in the movement speed ν, thereby achieving uniformity of the amount of heat input throughout the laser processing LP.

[0081] As described above, in this embodiment, in step S3, the processor 50 corrects the speed command value V or the laser output command value O based on the amount of movement Δ2 that the robot 12 moves in a direction orthogonal to the movement path MPn (the z-axis direction of the robot coordinate system C1) during the execution of laser processing LP. Therefore, the processor 50 acts as a command correction unit 72 for correcting the speed command value V or the laser output command value O. Figure 2 (This function is then implemented.) In step S4, the processor 50 determines whether the laser processing LP has ended. If the processor 50 determines "yes," it terminates the process. Figure 6 On the one hand, if the result is "no", the process returns to step S2.

[0082] As described above, in this embodiment, the processor 50 functions as a movement control unit 62, a gap control execution unit 64, a laser oscillation control unit 66, a movement amount acquisition unit 68, a speed acquisition unit 70, and a command correction unit 72, correcting the command values ​​V and O for laser processing of the workpiece W. Therefore, the movement control unit 62, the gap control execution unit 64, the laser oscillation control unit 66, the movement amount acquisition unit 68, the speed acquisition unit 70, and the command correction unit 72 constitute a device 60 for correcting the command values ​​V and O. Figure 2 ).

[0083] In this device 60, the motion control unit 62 executes a motion action LP1 in the laser processing LP (step S1), which causes the mobile machinery (robot) 12 to move along a predetermined motion path MPn according to a predetermined speed command value V. On the other hand, the laser oscillation control unit 66 executes a laser generation action LP3 in the laser processing LP, which causes the laser oscillator 18 to generate laser LB according to a predetermined laser output command value O (laser power command value Op, frequency command value Of, duty cycle command value Od).

[0084] Additionally, the gap control execution unit 64 executes gap control LP2 in the laser processing LP to move the moving mechanism 12, so as to maintain the distance d between the laser exit 40 and the workpiece W at a constant (target distance dt). Then, the command correction unit 72 corrects the speed command value V or the laser output command value O based on the amount of movement Δ2 of the moving mechanism 12 in the laser processing LP in the direction orthogonal to the movement path MPn (the z-axis direction of the robot coordinate system C1) (step S3).

[0085] Here, in the case where the surface of workpiece W has undesirable unevenness or tilt, as referred to Figure 5 As explained, the moving speed ν of the laser LB relative to the workpiece W is greater than the speed command value V. In this embodiment, by correcting the speed command value V or the laser output command value O, it is possible to achieve uniformity of the heat input or wavenumber per unit area of ​​the workpiece W, thereby maintaining processing quality.

[0086] Furthermore, in this embodiment, the speed acquisition unit 70 acquires the moving speed ν of the laser LB, which moves relatively on the workpiece W during laser processing LP, based on the movement amount Δ2. Then, the command correction unit 72 corrects the laser output command value O based on the moving speed ν acquired by the speed acquisition unit 70. According to this structure, the laser output command value O can be appropriately corrected according to the moving speed ν, so as to more effectively suppress the reduction of heat input or wavenumber per unit area of ​​the workpiece W.

[0087] Furthermore, in this embodiment, the laser output command value O includes at least one of the following: a laser power command value Op specifying the laser power Op of the laser LB, a frequency command value Of specifying the frequency Of of the laser LB, and a duty cycle command value Od specifying the duty cycle Od of the laser LB. Then, the command correction unit 72 corrects the laser power command value Op, the frequency command value Of, or the duty cycle command value Od. According to this structure, the heat input per unit area or wavenumber of the workpiece W can be effectively adjusted according to the moving speed ν.

[0088] Furthermore, in this embodiment, the command correction unit 72 corrects the laser output command value O by multiplying the laser output command value O by the variable α (ν / V) (α×O) obtained by dividing the moving speed ν obtained by the speed acquisition unit 70 by the speed command value V. Based on this structure, the laser output command value O can be corrected using a relatively simple algorithm, thus enabling the process of correcting the laser output command value O (step S3) to be accelerated.

[0089] Furthermore, in this embodiment, a control coordinate system C (robot coordinate system C1) for automatically controlling the movement of the mobile machine 12 is preset, and a movement path MPn is determined along a plane (xy plane) defined by the first axis (x-axis) and the second axis (y-axis) of the control coordinate system C. Then, the movement amount acquisition unit 68 acquires the movement amount Δ2 based on the coordinates z1, z2, and zm of the third axis (z-axis) of the control coordinate system C of the mobile machine 12. With this structure, the movement amount Δ2 can be acquired quickly and with high accuracy from the coordinates of the control coordinate system C.

[0090] Furthermore, in the above embodiment, the case where the teaching point TPn and the movement path MPn are determined along the xy plane of the robot coordinate system C1 is described. However, the teaching point TPn and the movement path MPn can also be determined at any position, for example, they can be determined to be inclined (intersecting) with respect to the xy plane of the robot coordinate system C1. In addition, if the processor 50 only performs correction of the speed command value V in step S3, the process of calculating the movement speed ν can be omitted. That is, in this case, the speed acquisition unit 70 can be omitted from the device 60.

[0091] In addition, it is able to Figure 6 Various changes are applied to the process. Figure 7 express Figure 6 This is an example of a variation of the process. Furthermore, in Figure 7 In the process shown, for and Figure 6 For processes with identical workflows, label the steps with the same numbers and omit duplicate descriptions. Figure 7 In the process, the processor 50 executes steps S5 and S6 after step S1.

[0092] In step S5, the processor 50 functions as the speed acquisition unit 70, similar to the embodiment described above, and acquires the movement speed ν based on the movement amount Δ2. In step S6, the processor 50 determines whether the movement speed ν acquired in the previous step S5 exceeds a predetermined threshold νth (ν > νth). If the determination is "yes", the processor 50 proceeds to step S3; otherwise, if the determination is "no", it proceeds to step S4.

[0093] In step S3, the processor 50 functions as the instruction correction unit 72 in the same manner as in the embodiment described above, and corrects the laser output instruction value O to a corrected output instruction value O' (O' = α × O or O' = f(ν)) based on the moving speed ν obtained in the most recent step S5. Thus, in this embodiment, the laser output instruction value O is corrected because the moving speed ν exceeds the threshold νth.

[0094] Furthermore, if the determination in step S2 or S6 is "No" after executing step S3, the processor 50 can switch the correction output command value O' or correction speed command V' back to the original output command value O or speed command V. For example, after correcting the laser power command value Op to the correction laser power command value Op' in step S3, if the determination in step S2 or S6 is "No", the processor 50 will switch the command value sent to the laser oscillator 18 from the correction laser power command value Op' back to the laser power command value Op.

[0095] Next, refer to Figures 8-11 To illustrate another embodiment of the laser processing system 80, we will now describe it. The laser processing system 80 differs from the laser processing system 10 described above in that it has a laser processing head 82. For example… Figure 10 As shown, the laser processing head 82 has a head body 36 and a movable nozzle 84 disposed on the head body 36 in a manner that allows it to move forward and backward along the optical axis A. A laser emission outlet 40 is formed at the front end of the movable nozzle 84.

[0096] Inside the head body 36, in addition to the aforementioned optical lens and lens drive unit, an ejection port drive unit 86 is also provided. The ejection port drive unit 86, for example, has a servo motor that causes the movable nozzle 84 (i.e., the laser ejection port 40) to move forward and backward relative to the head body 36 along the optical axis A. Furthermore, inside the head body 36, a distance sensor (encoder, Hall element, linear scale, etc.) is provided to detect the forward distance L of the movable nozzle 84 relative to the head body 36. The forward distance L is, for example, defined as the distance from the front end of the head body 36 to the laser ejection port 40. The distance sensor supplies the detected forward distance L, Dl, to the control device 20.

[0097] Figure 10 This indicates that the movable nozzle 84 is positioned relative to the head body 36 at a reference position with a forward distance L = L0. The reference distance L0 corresponding to this reference position is predetermined by the operator. In this embodiment, the origin (TCP) of the tool coordinate system C2 is, for example, located at the focal point FP of the laser LB emitted from the laser outlet 40 of the movable nozzle 84 positioned at the reference position.

[0098] on the other hand, Figure 11 This indicates that the movable nozzle 84 is driven from the outlet drive unit 86 by the movement of the nozzle. Figure 10 The reference position shown is in a backward position towards the head body 36. Here, the TCP is fixed relative to the wrist flange 30b and the head body 36. Therefore, Figure 11 The distance ratio between TCP and laser exit 40 shown Figure 10 Large. That is, in this embodiment, the positional relationship between TCP and the laser emission outlet 40 changes according to the forward distance L.

[0099] Thus, in this embodiment, the robot 12 moves the laser processing head 82, and the ejection port drive 86 moves the movable nozzle 84 (i.e., the laser ejection port 40). Therefore, the robot 12 and the ejection port drive 86 constitute a moving mechanism 88 that moves the laser ejection port 40 relative to the workpiece W.

[0100] Next, refer to Figure 6 The functions of the laser processing system 80 will be described. In step S1, the processor 50 begins laser processing LP. Specifically, the processor 50 functions as a motion control unit 62, causing the robot 12 to move according to the speed command value V, and executing the placement of the movable nozzle 84 in the reference position. Figure 10 The laser processing head 82 (TCP) in the state of being positioned sequentially moves LP1 at the teaching point TPn.

[0101] In parallel with the movement LP1, the processor 50 functions as a gap control actuator 64, executing gap control LP2 to maintain the distance d between the laser exit 40 and the workpiece W at a constant (target distance dt). Specifically, based on the measurement data Dd from the distance sensor 16, the processor 50 actuates the exit drive 86, changing the forward distance L so that the distance d matches the target distance dt.

[0102] Furthermore, the processor 50 functions as the laser oscillation control unit 66, activating the laser oscillator 18 according to the laser output command value O to execute the laser generation action LP3, which generates the laser LB. Additionally, during the execution of the laser processing LP, the processor 50 periodically acquires the coordinates P (x, y, z) of the TCP in the robot coordinate system C1 based on the detection data Dr from the rotation detection sensor, and periodically acquires the forward distance L based on the detection data Dl from the distance sensor. Moreover, the processor 50 can also acquire the TCP coordinates P and the forward distance L synchronously (in other words, at the same time points).

[0103] In step S2, the processor 50 determines whether the amount of movement Δ2 by which the moving mechanism 88 moves the laser emission outlet 40 in a direction orthogonal to the movement path MPn (i.e., the z-axis direction of the robot coordinate system C1) exceeds a predetermined threshold Δth. Here, as... Figure 12As shown, when the laser processing head 82 (TCP) is moved from the teaching point TP2 to the teaching point TP3, although the TCP is positioned at the teaching point TP3, the movable nozzle 84 retracts due to the action of the ejection drive unit 86 by controlling LP2 through the gap. That is, in this embodiment, the z-coordinate of the TCP's robot coordinate system C1 does not change.

[0104] Therefore, in this embodiment, the processor 50 functions as a movement acquisition unit 68, calculating the movement amount Δ2 based on the forward distance L. As an example, the processor 50 calculates the movement amount Δ2 as Δ2 = L1 - L2 based on the forward distance L2 obtained at the most recent time point τ2 and the forward distance L1 obtained at a time point τ1 that is a period T earlier than τ2.

[0105] As another example, when processor 50 obtains a forward distance L2 at the most recent time point τ2, it calculates the average value ΣLm / m of any number m (e.g., m = 5) of forward distances Lm obtained consecutively before that time point τ2 (i.e., the moving average of the forward distance L). Then, processor 50 calculates the movement amount Δ2 as Δ2 = ΣLm / m - L2. In this way, processor 50 functions as a movement amount acquisition unit 68, acquiring the movement amount Δ2 based on the forward distance L. When the acquired movement amount Δ2 exceeds the threshold Δth, processor 50 determines "yes" and proceeds to step S3; on the other hand, when it determines "no", it proceeds to step S4.

[0106] In step S3, the processor 50 functions as a command correction unit 72, correcting the command value (speed command value V or laser output command value O) based on the amount of movement Δ2 of the moving machine 88 in a direction orthogonal to the moving path MPn. When correcting the laser output command value O, the processor 50 functions as a speed acquisition unit 70, acquiring the moving speed ν of the laser LB that moves relative to the workpiece W in the laser processing LP based on the amount of movement Δ2.

[0107] As an example, if the movement Δ2 is calculated as Δ2 = L1 - L2 in the previous step S2, the processor 50 calculates Δ1 = x1 - x2 based on the TCP coordinates P1 (x2, y1, z1) of the robot coordinate system C1 obtained at the most recent time point τ2 and the TCP coordinates P1 (x1, y1, z1) of the robot coordinate system C1 obtained at a time point τ1 that is a period T ahead of τ2. Then, the processor 50 calculates... According to the formula Find the movement speed ν.

[0108] As another example, if the movement Δ2 is calculated as Δ2 = ΣLm / m - L2 in the previous step S2, the processor 50 first obtains the coordinates Pm(xm, ym, zm) of any number m (e.g., m = 5) TCPs consecutively obtained before the most recent time point τ2. Then, the processor 50 calculates the average of the x-coordinates of the m coordinates Pm, Σxm / m.

[0109] Then, processor 50 calculates the distance Δ1 as Δ1 = Σxm / m - x2, and calculates the moving speed ν according to the formula ν = V × Δ3 / Δ1 (here, Then, the processor 50 functions as the instruction correction unit 72, correcting the laser output instruction value O to a corrected output instruction value O' (e.g., as described in the above embodiment). ).

[0110] Next, the case of correcting the speed command value V will be described. Specifically, if the movement Δ2 is calculated as Δ2 = L1 - L2 or ΣLm / m - L2 in the previous step S2, the processor 50 will calculate the angle θ as θ = tan -1 (Δ2 / Δ1) (where Δ1 = x1 - x2 or Σxm / m - x2), the corrected speed command value V' is obtained as V' = Vcosθ. In this way, the processor 50 functions as the command correction unit 72, correcting the speed command value V based on the shift Δ2.

[0111] As described above, in this embodiment, the moving machine 88 includes: a robot 12 that moves a laser processing head 82 having a laser emission outlet 40; and an emission outlet drive unit 86 disposed on the laser processing head 82 that moves the laser emission outlet 40 forward and backward along the optical axis A. Furthermore, the movement amount acquisition unit 68 acquires a movement amount Δ2 based on the forward distance L of the laser emission outlet 40 driven by the emission outlet drive unit 86. According to this structure, even when using a laser processing head 82 capable of moving the laser emission outlet 40 forward and backward to perform laser processing LP, the forward distance L can be used to correct the speed command value V or the laser output command value O.

[0112] Furthermore, in the laser processing system 80, the processor 50 can also execute based on the movement amount Δ2 calculated according to the forward distance L. Figure 7 The process. Additionally, in the laser processing system 10 or 80, the processor 50 can also execute according to the computer program PG3 pre-stored in the memory 52. Figure 6 or Figure 7 The process. In addition, the functions of the device 60 (movement control unit 62, gap control execution unit 64, laser oscillation control unit 66, movement amount acquisition unit 68, speed acquisition unit 70, and command correction unit 72) executed by the processor 50 can also be implemented by the computer program PG3 as functional modules.

[0113] Next, refer to Figure 13 To illustrate the other functions of the laser processing system 10. (Refer to...) Figure 6 The functions of this embodiment will be explained. The processor 50 functions as the movement control unit 62, the gap control execution unit 64, the laser oscillation control unit 66, and the movement amount acquisition unit 68 in the same way as in the embodiment described above, and executes steps S1 and S2.

[0114] In step S3, the processor 50 corrects the speed command value V or the laser output command value O based on the incident angle φ of the laser LB relative to the workpiece W. For example... Figure 14 As shown, the incident angle φ of the laser LB incident on the surface of the convex portion B, which is inclined at an angle θ, is φ = 90° - θ. Here, the absorptivity ρ [%) of the laser LB incident on the workpiece W varies depending on the incident angle φ.

[0115] Figure 15 This is a graph showing the relationship between the incident angle φ of a specific type of laser (YAG laser, CO2 laser) and the absorptivity ρ towards the workpiece W. For example... Figure 15 As shown in characteristic E, the absorptivity ρ varies along with the incident angle φ. When the absorptivity ρ decreases due to the change in the incident angle φ, the heat input of the laser LB per unit area of ​​the workpiece W decreases, which may affect the processing quality.

[0116] Therefore, in this embodiment, the processor 50 corrects the velocity command value V or the laser output command value O based on the incident angle φ in step S3. First, the processor 50 obtains the incident angle φ based on the movement Δ2. As an example, if the movement Δ2 is calculated as Δ2 = z2 - z1 or Δ2 = z2 - Σzm / m in the previous step S2, the processor 50 will adjust the angle θ ( Figure 14 Find the answer as follows: (Where, Δ1 = x1 - x2 or Δ1 = Σxm / m - x2). Then, the processor 50 calculates the incident angle φ as φ = 90° - θ. Thus, in this embodiment, the processor 50 serves as the incident angle acquisition unit 92 that obtains the incident angle φ based on the movement amount Δ2. Figure 13 It can perform its functions.

[0117] Next, the processor 50 functions as the command correction unit 72, correcting the velocity command value V or the laser output command value O based on the acquired incident angle φ. In this embodiment, a data table 150 is prepared in advance and stored in relation to the set values ​​Vs and Os of the incident angle φ and the velocity command value V and the laser output command value O. Figure 16 This shows an example of the data structure of data table 150.

[0118] exist Figure 16In the example shown, column 152 illustrates various incident angles φ (=90°, 85°, 80°…). Additionally, column 154 represents the set value Ops of the laser power command value Op. In this embodiment, the set value Ops is set to the value (βi×Op) obtained by multiplying the laser power command value Op set by the operator for laser processing conditions by a predetermined coefficient βi (i=1, 2, 3, …). That is, the set value Ops varies according to the laser power command value Op set by the operator.

[0119] Considering coefficient βi Figure 15 As shown, characteristic E is set appropriately. For example, in Figure 15 In characteristic E shown, when the incident angle φ at which the absorption rate ρ reaches its peak is φ90°, β1 is set to 1. Other coefficients βi are set to numbers greater than 1 according to characteristic E. Columns 156 and 158 represent the setting values ​​of the frequency command value Ofs and the duty cycle command value Ods, respectively.

[0120] These setting values ​​Ofs and Ods, similar to the setting value Ops for the laser power command value Op, are set by multiplying the operator-set frequency command value Of and duty cycle command value Od by predetermined coefficients γi and εi (γi×Of, εi×Od). The coefficients γi and εi can also be determined based on coefficients γ1 and ε1, corresponding to the incident angle φ = 90° where the absorptivity ρ peaks, just like the coefficient βi. By setting the coefficients βi, γi, and εi in this way, the setting values ​​Ops, Ofs, and Ods can be increased as the absorptivity ρ decreases with decreasing incident angle φ.

[0121] On the other hand, column 160 represents the setpoint Vs of the speed command value V. This setpoint Vs is also set to the value obtained by multiplying the speed command value V set by the operator by a predetermined coefficient ζi (ζi×V). Regarding this coefficient ζi, for example, when it is set to 1 (corresponding to the incident angle φ = 90° where the absorptivity ρ reaches its peak), other coefficients βi are set to numbers less than 1 according to characteristic E. That is, in this case, as the absorptivity ρ decreases according to the incident angle φ, the setpoint Vs decreases.

[0122] The aforementioned coefficients βi, γi, εi, and ζi can be determined experimentally or through simulation, using the incident angle φ (e.g., 90°) at which the absorptivity ρ reaches its peak. The processor 50 applies the obtained incident angle φ along with the operator-set command value O or V to the data table 150. By multiplying the command value O or V by the coefficients βi, γi, εi, or ζi, the processor obtains the setpoint values ​​Ops, Ofs, Ods, or Vs for that incident angle φ. The processor 50 then performs corrections by changing the laser power command value Op, frequency command value Of, duty cycle command value Od, or speed command value V set at the current time point to the obtained setpoint values ​​Ops, Ofs, Ods, or Vs.

[0123] For example, when correcting the laser power command value Op, if the incident angle φ = 80° is obtained, the processor 50 applies the incident angle φ = 80° together with the laser power command value Op to the data table 150, correcting the laser power command value Op to a corrected output command value Op' = β3 × Op. Thus, in step S3, the processor 50 corrects the velocity command value V or the laser output command value O based on the incident angle φ. After step S3, the processor 50 executes step S4.

[0124] As described above, in this embodiment, the processor 50 functions as a movement control unit 62, a gap control execution unit 64, a laser oscillation control unit 66, a movement amount acquisition unit 68, a command correction unit 72, and an incident angle acquisition unit 92, correcting the command values ​​V and O for laser processing of the workpiece W. Therefore, the movement control unit 62, the gap control execution unit 64, the laser oscillation control unit 66, the movement amount acquisition unit 68, the command correction unit 72, and the incident angle acquisition unit 92 constitute a device 90 for correcting the command values ​​V and O. Figure 13 ).

[0125] In this device 90, the incident angle acquisition unit 92 acquires the incident angle φ of the laser LB relative to the workpiece W based on the movement amount Δ2 of the moving machinery (robot) 12 in the laser processing LP in a direction orthogonal to the movement path MPn. Then, the command correction unit 72 corrects the speed command value V or the laser output command value O based on the incident angle φ acquired by the incident angle acquisition unit 92. According to this structure, as described above, even when the absorptivity ρ decreases according to the incident angle φ, it is possible to achieve uniformity of the heat input or wavenumber of the laser LB per unit area of ​​the workpiece W, thus maintaining processing quality.

[0126] Additionally, in the device 90, a data table 150 is prepared in advance to store the set values ​​Ops, Ofs, Ods, and Vs that correlate the incident angle φ with the velocity command value V or the laser output command value O. Figure 16Then, the command correction unit 72 applies the incident angle φ obtained by the incident angle acquisition unit 92 to the data table 150, and changes the speed command value V or the laser output command value O to the set values ​​Ops, Ofs, Ods, and Vs corresponding to the incident angle φ, thereby performing correction. According to this structure, the process of correcting the speed command value V or the laser output command value O can be executed at high speed with a relatively simple algorithm (step S3).

[0127] Furthermore, in data table 150, as an example, the case where the incident angle φ of column 152 is determined to be 90°, 85°, 80°, etc. is explained. However, it is not limited to this; for example, the incident angle φ specified for each row of column 152 can also be determined to be a predetermined range: φ k ≤φ<φ k+1 (For example, the incident angle φ in the third row of column 152 is 78°≤φ<82°).

[0128] Furthermore, the case where the setting values ​​Ops, Ofs, Ods, and Vs stored in data table 150 are determined to be values ​​obtained by multiplying the instruction value O or V by coefficients βi, γi, εi, and ζi is described. However, it is not limited to this; the setting values ​​Ops, Ofs, Ods, or Vs can be determined by the operator as arbitrary constants or by other arbitrary calculation formulas.

[0129] Furthermore, in the above embodiment, the case where the processor 50 uses data table 150 to correct instruction values ​​V and O has been described. However, it is not limited to this; the processor 50 can also be based on... Figure 15 The characteristic E shown is used to correct the instruction values ​​V and O. For example, characteristic E can be expressed as a function such as ρ = f(φ).

[0130] When correcting the laser output command value O, the processor 50 can also use the corrected output command value O' as a function of the incident angle φ to calculate O' = O × κ / f(φ) (where κ is a predetermined coefficient or function). Based on this function: O' = O × κ / f(φ), the laser output command value O can be increased in accordance with the decrease in absorptivity ρ = f(φ) due to the incident angle φ.

[0131] On the other hand, when correcting the speed command value V, the processor 50 can also use the corrected speed command value V' as a function of the incident angle φ to obtain V' = λ × f(φ) (where λ is a predetermined coefficient or function). Based on this function, the speed command value V can be reduced in accordance with the decrease in the absorptivity ρ due to the incident angle φ.

[0132] Furthermore, it should be understood as being able to Figure 13 The function of the device 90 shown is applied to Figure 9The laser processing system 80 is shown. In the laser processing system 80, the processor 50 can also calculate the angle θ = tan θ based on the aforementioned forward distance L. -1 (Δ2 / Δ1), from which the incident angle φ can be obtained.

[0133] Next, refer to Figure 17 To illustrate another function of the laser processing system 10. Figure 17 The laser processing system 10 shown combines Figure 2 Functions and Figure 13 The function performs corrections for command values ​​V and O based on the movement amount Δ2 and for command values ​​V and O based on the incident angle φ. (Refer to...) Figure 6 The function will be explained below. The processor 50 functions as the movement control unit 62, the gap control execution unit 64, the laser oscillation control unit 66, and the movement amount acquisition unit 68 in the same way as in the above embodiment, and executes steps S1 and S2.

[0134] In step S3, the processor 50 corrects the command value V or O based on the movement amount Δ2 and the incident angle φ. For example, when correcting the laser power command value Op, the processor 50 first functions as a speed acquisition unit 70 to obtain the movement speed ν, and corrects the laser power command value Op to a correction output command value Op' = α × Op = Opxν / V based on the movement speed ν.

[0135] On the other hand, the processor 50 functions as the incident angle acquisition unit 92, acquiring the incident angle φ based on the movement amount Δ2, and applying the incident angle φ and the correction output instruction value Op' to the data table 150. Then, the processor 50 further corrects the correction output instruction value Op' to the correction output instruction value Op” = βi × Op' = α × βi × Op. Furthermore, the frequency instruction value Of and the duty cycle instruction value Od can also be corrected based on the movement amount Δ2 (movement speed ν) and the incident angle φ.

[0136] On the other hand, when correcting the speed command value V, the processor 50 first corrects the speed command value V to a corrected speed command value V' = Vcosθ based on the movement amount Δ2. Then, the processor 50 applies the obtained incident angle φ and the corrected speed command value V' to the data table 150. Then, the processor 50 corrects the corrected speed command value V' to a corrected speed command value V” = ζi × V' = ζi × Vcosθ. In this way, the processor 50 can correct the command value V or 0 based on the movement amount Δ2 and the incident angle φ.

[0137] As described above, in this embodiment, the processor 50 functions as a movement control unit 62, a gap control execution unit 64, a laser oscillation control unit 66, a movement amount acquisition unit 68, a speed acquisition unit 70, a command correction unit 72, and an incident angle acquisition unit 92, correcting the command values ​​V and O for laser processing of the workpiece W. Therefore, the movement control unit 62, the gap control execution unit 64, the laser oscillation control unit 66, the movement amount acquisition unit 68, the speed acquisition unit 70, the command correction unit 72, and the incident angle acquisition unit 92 constitute a device 100 for correcting the command values ​​V and O. Figure 17 ).

[0138] Additionally, the processor 50 can first correct the instruction value V or O based on the incident angle φ, and then further correct the correction instruction value V' or O' based on the movement amount Δ2 (movement speed ν) to obtain the correction instruction value V” or O”. Furthermore, it should be understood that it is possible to… Figure 17 The function of the device 100 shown is applied to Figure 9 The laser processing system 80 shown.

[0139] Next, refer to Figure 18 To illustrate another function of the laser processing system 10, in this embodiment, the processor 50 corrects a pre-determined teach point TPn for laser processing LP. For example, as... Figure 19 As shown, assume that teaching points TP1 and TP2 are pre-taught along the surface of workpiece W. In this case, the movement path MP1 is defined by teaching points TP1 and TP2.

[0140] On the other hand, workpiece W may sometimes fail due to improper installation or deformation, etc. Figure 20 The tilt angle θ is shown. In this case, when the processor 50 executes the aforementioned movement action LP1 and gap control LP2 in parallel, the laser processing head 14 (TCP) does not reach the teaching point TP2, but instead reaches a position TP2' on the surface of the workpiece W corresponding to the teaching point TP2. This position TP2' is a position displaced by a distance δ2 from the teaching point TP in a direction orthogonal to the movement path MP1 (i.e., the positive z-axis direction of the robot coordinate system C1).

[0141] If laser processing LP is performed on such a workpiece W, then during the period when robot 12 moves from teach point TP1 to teach point TP2, the distance δ3 of the laser LB that moves relative to the workpiece W is longer than the length of the movement path MP1 (i.e., the distance between teach points TP1 and TP2) δ1. Figure 20 The distance δ4 is calculated. As a result, the actual length (δ3) of the workpiece W to be laser-processed is longer than the desired length (δ1).

[0142] Therefore, in this embodiment, if the moving distance δ3 of the laser LB increases as described above when the processor 50 performs laser processing LP, the teaching point TP1 or TP2 is corrected in a manner that makes the moving distance δ3 consistent with the length δ1. Hereinafter, refer to... Figure 21 To explain Figure 18 The laser processing system 10 has the following functions. When the processor 50 receives a teach point correction command from the operator, the host controller, or the computer program PG4, it begins... Figure 21 The process.

[0143] In step S11, the processor 50 executes simulated laser processing LPs. Specifically, in the simulated laser processing LPs, the processor 50 functions as a motion control unit 62, executing the same motion action LP1 as in the laser processing LPs. Specifically, the processor 50 executes the motion program PG1 that specifies teaching points TP1 and TP2, and through the movement of the robot 12, moves the laser processing head 14 (TCP) along the motion path MP1, sequentially positioning it at teaching points TP1 and TP2.

[0144] Along with the movement LP1, the processor 50 functions as the gap control actuator 64, executing the gap control program PG2 in the same way as the laser processing LP. This gap control LP2, performed by the robot 12, maintains a fixed distance d between the laser exit 40 and the workpiece W. As a result, the laser processing head 14 (TCP) reaches... Figure 20 The position TP' in the middle.

[0145] On the other hand, the processor 50 functions as a laser oscillation control unit 66, stopping the laser generation operation LP3 of the laser oscillator 18. Therefore, during simulated laser processing LPs, the laser processing head 14 does not emit laser LB from the laser emission outlet 40. That is, in this embodiment, as simulated laser processing LPs, the processor 50 executes the movement operation LP1 and the gap control LP2, but does not execute the laser generation operation LP3.

[0146] During the execution of the simulated laser processing LPs, the processor 50 periodically acquires the coordinates P(x, y, z) of the TCP in the robot coordinate system C1, just like the laser processing LPs. Therefore, the processor 50 acquires the TCP coordinates when the robot 12 moves to the position TP2' corresponding to the teaching point TP2. Next, in step S12, the processor 50 determines whether the simulated laser processing LPs have ended. If the determination is "yes", the processor 50 proceeds to step S13; otherwise, if the determination is "no", it loops through step S12.

[0147] In step S13, the processor 50 obtains the travel distance δ3 of the laser LB, which is estimated to have moved relatively on the workpiece W during the period when the robot 12 moves from teach point TP1 to teach point TP2. Here, Figure 20 The coordinates of robot coordinate system C1 for teaching points TP1 and TP2 are set as TP1(x1, y1, z1) and TP2(x2, y1, z1), respectively.

[0148] Furthermore, the coordinates of the robot coordinate system C1 at position TP2' are set to (x2, y1, z2). In this case, the length δ1 of the movement path MP1 is δ1 = x1 - x2, and the distance δ2 between the teaching point TP2 and position TP2' is δ2 = z2 - z1. This distance δ2 represents the amount of movement δ2 in the direction orthogonal to the movement path MP1 (i.e., the z-axis direction of the robot coordinate system C1) during the period when the robot 12 moves the laser processing head 14 from the teaching point TP1 to the teaching point TP2. This amount of movement δ2 corresponds to the aforementioned amount of movement Δ2. The processor 50 functions as a movement amount acquisition unit 68, acquiring the movement amount δ2 based on the teaching point TP1 and the z coordinates of position TP2': z1, z2.

[0149] Then, based on the movement δ2, the processor 50 obtains the estimated movement distance δ3 of the laser LB relative to the workpiece W during the movement of the robot 12 (TCP) from the teach point TP1 to the teach point TP2, which is δ3 = (δ1) 2 +δ2 2 ) 1 / 2 Thus, in this embodiment, the processor 50 serves as a distance acquisition unit 112 that obtains the movement distance δ3 based on the movement amount δ2. Figure 18 It can perform its functions.

[0150] In step S14, the processor 50 determines whether the moving distance δ3 obtained in step S13 is greater than the length δ1 of the moving path MP1 (or a threshold determined based on the length δ1) (δ3 > δ1). If the determination is "yes", the processor 50 proceeds to step S15; otherwise, if the determination is "no", the process ends. Figure 21 The process. Thus, in this embodiment, the processor 50 serves as the distance determination unit 114 for determining whether the moving distance δ3 is greater than the length δ1 of the moving path MP1. Figure 18 It can perform its functions.

[0151] In step S15, the processor 50 corrects the teaching point TP1 or TP2. Specifically, the processor 50 calculates the angle θ. Figure 20 ) is θ = tan -1 (δ2 / δ1). Here, as... Figure 22As shown, on the surface of workpiece W, if the position TP3' is set as δ1 at a distance from the teaching point TP1, then the position TP3 is on the movement path MP1 in the robot coordinate system C1 with the same x-coordinate as the position TP3'.

[0152] If the coordinates of position TP3 are set to TP3(x3, y1, z1), then the x-coordinate x3 is calculated as x3 = x1 - δ1cosθ. The processor 50 sets a new teaching point TP3 by correcting the coordinates of teaching point TP2 to TP3(x3, y1, z1). Then, the processor 50 specifies the new teaching point TP3 in the motion program PG1. Based on this teaching point TP3, in the movement motion LP1, the movement distance of the laser LB, which is presumed to be the relative movement on the workpiece W during the robot 12's movement towards teaching points TP1 and TP3, is made consistent with the length δ1 of the initial movement path MP1.

[0153] Furthermore, the processor 50 can also shift the teaching point TP1 in the negative x-axis direction of the robot coordinate system C1. Figure 20 The new teaching point TP3 is set by correcting the distance δ4 (=δ3-δ1) shown. In this case, it is also possible to make the distance of the laser LB that moves relative to the workpiece W during the movement of robot 12 towards teaching points TP3 and TP2 consistent with the length δ1 of the initial movement path MP1.

[0154] Thus, in this embodiment, the processor 50 serves as the teaching point correction unit 116 for correcting teaching points TP1 or TP2. Figure 18 (The processor then performs its function.) Afterwards, processor 50 terminates. Figure 21 The process. In Figure 21 After the process is completed, the processor 50 executes the actual laser processing LP. At this time, the processor 50 executes the movement action LP1 according to the prescribed action program PG1 of the corrected teaching point TP3.

[0155] As described above, in this embodiment, the processor 50 functions as a movement control unit 62, a gap control execution unit 64, a laser oscillation control unit 66, a movement amount acquisition unit 68, a distance acquisition unit 112, and a teach point correction unit 116, correcting the teach point TPn predetermined for laser processing LP. Therefore, the movement control unit 62, the gap control execution unit 64, the laser oscillation control unit 66, the movement amount acquisition unit 68, the distance acquisition unit 112, and the teach point correction unit 116 constitute a device 110 for correcting the teach point TPn. Figure 18 ).

[0156] In this device 110, the movement amount acquisition unit 68 acquires the movement amount δ2 of the moving machine 12 in the direction orthogonal to the movement path MP1 (the z-axis direction of the robot coordinate system C1) during the period when the moving machine 12 moves from the first teaching point TP1 to the second teaching point TP2. Then, if the movement distance δ3 of the laser LB that moves relative to the workpiece W during the period when the moving machine 12 moves from the first teaching point TP1 to the second teaching point TP2 is greater than the length δ1 of the movement path MP1, the teaching point correction unit 116 corrects the first teaching point TP1 or the second teaching point TP2 according to the movement amount δ2 acquired by the movement amount acquisition unit 68, so that the movement distance δ3 is consistent with the length δ1 (step S15).

[0157] According to this structure, even if Figure 20 As shown, the surface tilt of workpiece W ensures that the actual length of laser processing performed on workpiece W matches the desired length (δ1). Furthermore, by automatically correcting the teaching point TPn in this way, the operator can avoid having to re-teach the teaching point TPn.

[0158] Furthermore, in the device 110, the distance acquisition unit 112 acquires the travel distance δ3 of the laser LB that moves relative to the workpiece W during the period when the moving machine 12 moves from the first teaching point TP1 to the second teaching point TP2, based on the travel amount δ2 acquired by the travel amount acquisition unit 68. Additionally, the distance determination unit 114 determines whether the travel distance δ3 acquired by the distance acquisition unit 112 is greater than the length δ1 of the travel path.

[0159] Then, if the distance determination unit 114 determines that the movement distance δ3 is greater than the length δ1 ("Yes" in step S14), the teaching point correction unit 116 corrects the first teaching point TP1 or the second teaching point TP2 (step S15). According to this structure, the correction of teaching point TP1 or TP2 can be performed only when the movement distance δ3 is greater than the length δ1. Therefore, unnecessary corrections can be reliably avoided.

[0160] Furthermore, in this embodiment, the laser oscillation control unit 66 stops the laser generation operation LP3 of the laser oscillator 18 while the moving machine 12 is moving from the first teaching point TP1 to the second teaching point TP2. With this structure, it is possible to prevent the workpiece W from being processed by simulated laser processing LPs and to ensure operational safety.

[0161] Furthermore, the processor 50 can also function as a laser oscillation control unit 66 in the simulated laser processing LPs in step S11, causing the laser oscillator 18 to execute the laser generation operation LP3 according to the second laser output command value O2. The second laser output command value O2 is a command value smaller than the laser output command value O that causes the laser oscillator 18 to operate in the actual laser processing LP.

[0162] For example, when the laser output command value O is the laser power command value Op (e.g., 5 [kW]), the second laser power command value Op2, which is the second laser output command value O2, is set to a value much smaller than the laser power command value Op (e.g., 1 [W]) (so-called visible light guided laser). Similarly, the second frequency command value Of2 or the second duty cycle command value Od can also be set to a value smaller than the frequency command value Of or the duty cycle command value Od.

[0163] In addition, it is able to Figure 21 Various changes are applied to the process. Figure 23 express Figure 21 A variation of the process. Furthermore, in Figure 23 In the process shown, for and Figure 21 For processes with identical workflows, label the steps with the same numbers and omit duplicate descriptions. Figure 23 In the process, when the processor 50 determines that it is yes in step S12, it executes steps S16 and S17.

[0164] In step S16, the processor 50 functions as a movement acquisition unit 68, acquiring the movement amount δ2 of the robot 12 in a direction orthogonal to the movement path MP1 during the movement from teaching point TP1 to teaching point TP2. Specifically, as described above, the processor 50 acquires the movement amount δ2 = z2 - z1 based on the z coordinates z1 and z2 of the robot coordinate system C1 at teaching point TP1 and position TP2'.

[0165] In step S17, similar to step S2 described above, the processor 50 determines whether the movement amount δ2 exceeds a predetermined threshold δth. This threshold δth is a value such that the movement distance δ3 calculated based on the movement amount δ2 exceeds the length δ1 of the movement path MP1, and is predetermined by the operator. If the determination is "yes", the processor 50 proceeds to step S15; otherwise, if the determination is "no", the process ends. Figure 23 The process.

[0166] In this way, the processor 50 does not need to calculate the aforementioned movement distance δ3, but can determine whether the teaching point TPn needs to be corrected based on the movement amount δ2. That is, in this case, the distance acquisition unit 112 and the distance determination unit 114 can be omitted from the device 110. According to this embodiment, the processing of calculating the movement distance δ3 can be omitted, thus shortening the cycle time of the operation.

[0167] In addition, the processor 50 can also execute the computer program PG4 pre-stored in the memory 52. Figure 21 or Figure 23The process. Furthermore, the functions of the device 110 (movement control unit 62, gap control execution unit 64, laser oscillation control unit 66, movement acquisition unit 68, distance acquisition unit 112, distance determination unit 114, and teaching point correction unit 116) executed by the processor 50 can also be functional modules implemented by the computer program PG4. Additionally, it should be understood that... Figure 18 The function of the device 110 shown can be applied to Figure 9 The laser processing system 80 is shown. In the laser processing system 80, the processor 50 is also able to obtain the movement amount δ2 based on the aforementioned forward distance L, and correct the teaching point TPn.

[0168] Furthermore, the laser oscillation control unit 66 can be omitted from the device 110. For example, the functions of the device 110 without the laser oscillation control unit 66 (i.e., the movement control unit 62, the gap control execution unit 64, the movement amount acquisition unit 68, the distance acquisition unit 112, and the teaching point correction unit 116) can be installed in a computer (e.g., a teaching device) that is different from the control device 20. In this case, the other computer is configured not to perform the laser generation operation LP3 of the laser oscillator 18, but instead to perform the movement operation LP1 and the gap control LP2 of the moving mechanism 12.

[0169] In addition, the functions of the aforementioned devices 60, 90, 100 and 110 can also be combined. Figure 24 A laser processing system 10 with such functionality is shown. Figure 24 In the laser processing system 10 shown, the processor 50 functions as a device 120. This device 120 includes a movement control unit 62, a gap control execution unit 64, a laser oscillation control unit 66, a movement acquisition unit 68, a speed acquisition unit 70, a command correction unit 72, an incident angle acquisition unit 92, a distance acquisition unit 112, a distance determination unit 114, and a teaching point correction unit 116. Furthermore, it is desirable to understand that the functions of the device 120 can be combined with… Figure 9 80 combinations of laser processing systems.

[0170] In addition, it can also be obtained from Figure 6 The process omits step S2, and after step S1 begins, step S3 is executed repeatedly. Alternatively, the processor 50 may receive input from the operator of a command value (laser power command value Op, frequency command value Of, duty cycle command value Od, or speed command value V) selected as the calibration target in step S3. Then, the processor 50 calibrates the command value V or O selected by the operator in step S3.

[0171] Furthermore, the control device 20 may also include a first control device 20A for controlling the moving machinery 12 or 88 and a second control device 20B for controlling the laser oscillator 18. In the above embodiment, the case where the robot 12 moves the laser processing head 14 or 82 relative to the fixed workpiece W has been described. However, it is not limited to this; the robot 12 may also move the workpiece W relative to the fixed laser processing head 14 or 82. The concepts of this disclosure can also be applied in such a manner.

[0172] Furthermore, the mobile mechanism 12 or 88 is not limited to the example shown in the figure. For example, robot 12 can be any type of robot, such as a horizontal multi-joint robot or a parallel linkage robot. Alternatively, the mobile mechanism 12 or 88 may also include: a worktable mechanism that moves the workpiece W along the xy plane of the robot coordinate system C1; and a z-axis movement mechanism that moves the laser processing head 14 or 82 in the z-axis direction of the robot coordinate system C1.

[0173] Furthermore, in the above embodiments, the case where the movement amounts Δ2 and δ2 are obtained based on the coordinates of the robot coordinate system C1, serving as the control coordinate system C, is described. However, this is not a limitation; for example, a workpiece coordinate system C3 can also be set for the workpiece W. The workpiece coordinate system C3 is the control coordinate system C1 that defines the position of the workpiece W in the robot coordinate system C1. The processor 50 can also obtain the movement amounts Δ2 and δ2 based on the coordinates of the workpiece coordinate system C3. In addition, the control coordinate system C is not limited to the robot coordinate system C1, the tool coordinate system C2, and the workpiece coordinate system C3; any other arbitrary coordinate system can be set.

[0174] The present disclosure has been described in detail above, but it is not limited to the various embodiments described above. Various additions, substitutions, modifications, and partial deletions can be made to these embodiments without departing from the spirit of the present disclosure, or from the spirit of the present disclosure derived from the content described in the claimed scope and its equivalents. Furthermore, these embodiments can also be implemented in combination. For example, in the embodiments described above, the order of each action and the order of each process are shown as an example and are not limited thereto. The same applies to the use of numerical values ​​or mathematical formulas in the description of the above embodiments.

[0175] This disclosure is made in the following manner.

[0176] (Method 1) An apparatus 60, 90, 100, 120 for correcting command values ​​V and O for laser processing LP on workpiece W, comprising: a movement control unit 62 that causes moving mechanisms 12 and 88 to operate according to a predetermined speed command value V and move along a predetermined movement path MPn, the moving mechanisms 12 and 88 causing the laser exit 40 of the laser LB generated by the laser oscillator 18 to move relative to the workpiece W; a laser oscillation control unit 66 that causes the laser oscillator 18 to operate according to a predetermined laser output command value and causes the laser oscillator 18 to generate laser LB; a gap control execution unit 64 that operates the moving mechanisms 12 and 88 in the laser processing LP in a manner that maintains the distance d between the laser exit 40 and the workpiece W at a fixed distance; and a command correction unit 72 that corrects the speed command value V or the laser output command value O based on the amount of movement Δ2 of the moving mechanisms 12 and 88 in the laser processing LP in a direction orthogonal to the movement path MPn.

[0177] (Method 2) According to the apparatus 60, 90, 100, 120 of Method 1, the apparatus further includes: a speed acquisition unit 70, which acquires the moving speed ν of the laser W that moves relative to the workpiece W in the laser processing LP based on the movement amount Δ2, and a command correction unit 72 corrects the laser output command value O based on the moving speed ν acquired by the speed acquisition unit 70.

[0178] (Method 3) According to the apparatus 60, 90, 100, 120 of Method 2, the laser output command value O includes at least one of the laser power command value Op which specifies the laser power Op of the laser LB, the frequency command value Of which specifies the frequency Of of the laser LB, and the duty cycle command value Od which specifies the duty cycle Od of the laser LB. The command correction unit 72 corrects the laser power command value Op, the frequency command value Of, or the duty cycle command value Od.

[0179] (Method 4) According to the apparatus 60, 90, 100, 120 described in Method 2 or 3, the command correction unit 72 corrects the laser output command value O by multiplying the laser output command value O by a variable obtained by dividing the moving speed ν obtained by the speed acquisition unit 70 by the speed command value V.

[0180] (Method 5) According to any one of Methods 1 to 4, the device 60, 90, 100, 120 pre-sets a control coordinate system C (robot coordinate system C1) for automatically controlling the movement of the mobile machine 12, and determines the movement path MPn along the plane (xy plane) defined by the first axis (x-axis) and the second axis (y-axis) of the control coordinate system C1. The device 60, 90, 100, 120 further includes: a movement amount acquisition unit 68, which acquires the movement amount Δ2 based on the coordinates of the third axis (z-axis) of the control coordinate system C of the mobile machine 12, 88.

[0181] (Method 6) According to any one of Methods 1 to 4, the moving machine 88 includes: a robot 12 that moves a laser processing head 82 having a laser emission outlet 40; and an emission outlet drive unit 86 disposed on the laser processing head 82 that moves the laser emission outlet 40 along the optical axis A of the laser LB. The devices 60, 90, 100, and 120 further include: a movement amount acquisition unit 68 that acquires a movement amount Δ2 based on the forward distance L of the laser emission outlet 40 driven by the emission outlet drive unit 86.

[0182] (Method 7) The apparatus 60, 90, 100, 120 according to any one of Methods 1 to 6 further comprises: an incident angle acquisition unit 92, which acquires the incident angle φ of the laser LB relative to the workpiece W based on the movement amount Δ2, and a command correction unit 72 corrects the speed command value V or the laser output command value O based on the incident angle φ acquired by the incident angle acquisition unit 92.

[0183] (Method 8) According to the apparatus 90, 100, 120 of Method 2, a data table 150 is prepared in advance to store the incident angle φ in relation to the set value of the speed command value V or the laser output command value O. The command correction unit 72 applies the incident angle φ obtained by the incident angle acquisition unit 92 to the data table 150 and changes the speed command value V or the laser output command value O to the set value Vs or Os corresponding to the incident angle φ, thereby performing correction.

[0184] (Method 9) An apparatus 110, 120, which calibrates a pre-determined teaching point TPn for laser processing LP on a workpiece W, the apparatus comprising: a movement control unit 62 that moves a moving mechanism along a movement path MP2 defined by a first teaching point TP1 and a second teaching point TP2, the moving mechanism causing the laser exit 40 of the laser LB generated by the laser oscillator 18 to move relative to the workpiece W; a gap control execution unit 64 that operates the moving mechanisms 12, 13 in a manner that maintains a fixed distance between the laser exit 40 and the workpiece W; and a movement amount acquisition unit 68, which... The system acquires the movement amount δ2 of the moving machines 12 and 88 in a direction orthogonal to the movement path MP1 during the period when they move from the first teaching point TP1 to the second teaching point TP2; and the teaching point correction unit 116, which, when the movement distance δ3 of the laser LB that moves relatively on the workpiece W during the period when the moving machines 12 and 88 move from the first teaching point TP1 to the second teaching point TP2 is greater than the length δ1 of the movement path MP1, corrects the first teaching point TP1 or the second teaching point TP2 based on the movement amount δ2 acquired by the movement amount acquisition unit 68, so that the movement distance δ3 is consistent with the length δ1.

[0185] (Method 10) The apparatus 110 and 120 according to Method 9 further include: a distance acquisition unit 112, which acquires a movement distance δ3 based on the movement amount δ2 acquired by the movement amount acquisition unit 68; and a distance determination unit 114, which determines whether the movement distance δ3 acquired by the distance acquisition unit 112 is greater than the length δ1 of the movement path MP1, and if the distance determination unit 114 determines that the movement distance δ3 is greater than the length δ1, the teaching point correction unit 116 corrects the first teaching point TP1 or the second teaching point TP2.

[0186] (Method 11) The apparatus 110 or 120 according to Method 9 or 10 further includes: a laser oscillation control unit 66, which stops the laser generation operation LP3 of the laser oscillator 18 during the period when the moving machinery 12 or 88 moves from the first teaching point TP1 to the second teaching point TP2, or causes the laser oscillator 18 to perform the laser generation operation LP3 according to a second laser output command value O2 that is smaller than the laser output command value O that causes the laser oscillator 18 to operate in the laser processing LP.

[0187] (Method 12) A laser processing system (10) comprising: a laser oscillator 18 that generates a laser LB; a moving mechanism 12, 88 that moves a laser exit 40 from which the laser LB generated by the laser oscillator 18 is emitted relative to a workpiece W; a distance sensor 16 that measures the distance d between the laser exit 40 and the workpiece W; and a device 60, 90, 100, 110, 120 as described in any one of methods 1 to 11.

[0188] (Method 13) A method is to correct the command values ​​V and O for laser processing LP on workpiece W, so that the moving machinery 12 and 88 move according to the predetermined speed command value V and move along the predetermined movement path MPn. The moving machinery moves the laser outlet 40 of the laser LB generated by the laser oscillator 18 relative to the workpiece W, so that the laser oscillator 18 moves according to the predetermined laser output command value O and generates laser LB. The moving machinery 12 and 88 are moved in the laser processing LP in such a way that the distance d between the laser outlet 40 and the workpiece W is kept fixed. The speed command value V or the laser output command value O is corrected based on the amount of movement Δ2 of the moving machinery 12 and 88 in the laser processing LP in the direction orthogonal to the movement path MPn.

[0189] (Method 14) A method that corrects a predetermined teaching point TPn for laser processing LP on a workpiece W, and moves a moving machine along a moving path MP1 defined by a first teaching point TP1 and a second teaching point TP2. The moving machine 12, 88 moves the laser exit 40 of the laser LB generated by the laser oscillator 18 relative to the workpiece W, and operates the moving machine 12, 88 in such a way that the distance d between the laser exit 40 and the workpiece W is maintained at a fixed distance. During the movement from the first teaching point TP1 to the second teaching point TP2, the amount of movement δ2 of the moving machine 12, 88 in the direction orthogonal to the moving path MP1 is obtained. If the moving distance δ3 of the laser LB moving relative to the workpiece W during the movement of the moving machine 12, 88 from the first teaching point TP1 to the second teaching point TP2 is greater than the length δ1 of the moving path MP1, the first teaching point TP1 or the second teaching point TP2 is corrected based on the obtained amount of movement δ2, so that the moving distance δ3 is consistent with the length δ1.

[0190] (Method 15) A computer program PG3, PG4, causing processor 50 to execute the method described in method 13 or 14.

[0191] Explanation of reference numerals in the attached figures

[0192] 10 Laser Processing Systems

[0193] 12 robots

[0194] 14. 82 laser processing head

[0195] 16 ranging sensors

[0196] 18 laser oscillators

[0197] 20 control devices

[0198] 40 laser exit

[0199] 50 processors

[0200] 60, 90, 100, 110, 120 devices

[0201] 62 Motion Control Unit

[0202] 64 Clearance Control Actuator

[0203] 66 Laser Oscillation Control Unit

[0204] 68 moving volume acquisition department

[0205] 70 speed acquisition part

[0206] 72 Command Correction Department

[0207] 86-shot outlet drive unit

[0208] 88 Mobile Machinery

[0209] 92° incident angle acquisition section

[0210] 112 Distance Acquisition Department

[0211] 114 Distance Judgment Unit

[0212] 116 Teaching Point Correction Department.

Claims

1. An apparatus for calibrating command values ​​for laser processing of a workpiece, characterized in that, have: The movement control unit causes the moving machinery to operate according to a predetermined speed command value and move along a predetermined movement path. The moving machinery moves the laser emission outlet of the laser generated by the laser oscillator relative to the workpiece. A laser oscillation control unit that causes the laser oscillator to operate according to a predetermined laser output command value and causes the laser oscillator to generate the laser; A gap control actuator that, in the laser processing, causes the moving mechanism to operate in a manner that maintains a fixed distance between the laser exit and the workpiece; as well as The command correction unit corrects the speed command value or the laser output command value based on the amount of movement of the moving machinery in the laser processing in a direction orthogonal to the movement path.

2. The apparatus according to claim 1, characterized in that, The device further includes a speed acquisition unit that, based on the amount of movement, acquires the speed of the laser beam that moves relative to the workpiece during the laser processing. The command correction unit corrects the laser output command value based on the moving speed obtained by the speed acquisition unit.

3. The apparatus according to claim 2, characterized in that, The laser output command value includes at least one of the following: a laser power command value specifying the laser power, a frequency command value specifying the laser frequency, and a duty cycle command value specifying the laser duty cycle. The command correction unit corrects the laser power command value, the frequency command value, or the duty cycle command value.

4. The apparatus according to claim 2, characterized in that, The command correction unit corrects the laser output command value by multiplying it by a variable obtained by dividing the moving speed obtained by the speed acquisition unit by the speed command value.

5. The apparatus according to claim 1, characterized in that, A control coordinate system is pre-set for automatically controlling the movement of the mobile machinery. The movement path is determined along the plane defined by the first and second axes of the control coordinate system. The device further includes a movement acquisition unit that acquires the movement amount based on the coordinates of the moving machine on the third axis of the control coordinate system.

6. The apparatus according to claim 1, characterized in that, The mobile machinery has: A robot that moves a laser processing head having the laser emission port formed thereon; and An emission outlet drive unit, disposed on the laser processing head, causes the laser emission outlet to advance and retract along the optical axis of the laser. The device further includes a movement acquisition unit that acquires the movement amount based on the forward distance of the laser emission outlet driven by the emission outlet drive unit.

7. The apparatus according to claim 1, characterized in that, The device further includes: an incident angle acquisition unit, which acquires the incident angle of the laser relative to the workpiece based on the movement amount. The command correction unit corrects the velocity command value or the laser output command value based on the incident angle obtained by the incident angle acquisition unit.

8. The apparatus according to claim 7, characterized in that, Prepare in advance a data table that stores the incident angle in relation to the set values ​​of the velocity command value or the laser output command value. The command correction unit applies the incident angle obtained by the incident angle acquisition unit to the data table, and changes the speed command value or the laser output command value to the set value corresponding to the incident angle, thereby performing correction.

9. A device for calibrating a pre-determined teaching point for laser processing of a workpiece, characterized in that, have: A motion control unit that causes a moving machine to move along a motion path defined by the first and second teaching points, the moving machine causing the laser emission outlet of the laser generated by the laser oscillator to move relative to the workpiece; A gap control actuator that causes the moving machinery to operate in a manner that maintains a fixed distance between the laser exit and the workpiece. The movement acquisition unit acquires the movement amount of the moving machine in a direction orthogonal to the movement path during the movement from the first teaching point to the second teaching point; as well as The teaching point correction unit, when the moving distance of the laser relative to the workpiece during the movement of the moving machine from the first teaching point to the second teaching point is greater than the length of the moving path, corrects the first teaching point or the second teaching point based on the moving amount obtained by the moving amount acquisition unit, so that the moving distance is consistent with the length.

10. The apparatus according to claim 9, characterized in that, The device also includes: A distance acquisition unit acquires the movement distance based on the movement amount acquired by the movement amount acquisition unit; and The distance determination unit determines whether the moving distance obtained by the distance acquisition unit is greater than the length of the moving path. If the distance determination unit determines that the moving distance is greater than the length, the teaching point correction unit corrects the first teaching point or the second teaching point.

11. The apparatus according to claim 9, characterized in that, The device further includes a laser oscillation control unit that, while moving the mobile machinery from the first teaching point to the second teaching point, stops the laser generation operation of the laser oscillator, or causes the laser oscillator to perform the laser generation operation according to a second laser output command value smaller than the laser output command value that causes the laser oscillator to operate in the laser processing.

12. A laser processing system, characterized in that, have: A laser oscillator that generates laser light; A moving mechanism that moves the laser exit point from which the laser generated by the laser oscillator is emitted relative to the workpiece; A distance sensor that measures the distance between the laser exit point and the workpiece; and The apparatus according to any one of claims 1 to 11.

13. A method for calibrating command values ​​used for laser processing of a workpiece, characterized in that, The moving mechanism operates according to a predetermined speed command value and moves along a predetermined path, causing the laser emission outlet of the laser generated by the laser oscillator to move relative to the workpiece. The laser oscillator is made to operate according to a predetermined laser output command value, and the laser oscillator is made to generate the laser. In the laser processing, the moving mechanism is operated in a manner that maintains a fixed distance between the laser exit point and the workpiece. The speed command value or the laser output command value is corrected based on the amount of movement of the moving machinery in the laser processing in a direction orthogonal to the movement path.

14. A method for calibrating pre-determined teaching points for laser processing of a workpiece, characterized in that, The moving mechanism moves along a path defined by the first and second teaching points, causing the laser emission outlet of the laser generated by the laser oscillator to move relative to the workpiece. The moving mechanism operates by maintaining a fixed distance between the laser emission outlet and the workpiece. During the movement from the first teaching point to the second teaching point, the amount of movement of the moving machine in a direction orthogonal to the movement path is obtained. If, during the movement of the mobile machinery from the first teaching point to the second teaching point, the distance the laser moves relative to the workpiece is greater than the length of the movement path, the first teaching point or the second teaching point is corrected based on the obtained amount of movement so that the distance moves in accordance with the length.

15. A computer program, characterized in that, The processor is made to perform the method of claim 13 or 14.

Citation Information

Patent Citations

  • Laser beam machining robot

    JP2004314137A