Scanner Controller and Scanner Control System
By introducing path generation devices and related components into the scanner control system, the problem that the scanner controller is difficult to master the robot position/pose is solved, and the synchronization of the hang-up function at any position is achieved and the accuracy and flexibility of the machining path is achieved.
Patent Information
- Application Number
- CN202011480659.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2019-12-16
- Filing Date
- 2020-12-15
- Publication Date
- 2025-07-01
- Estimated Expiration
- 2040-12-15
AI Technical Summary
In remote laser welding, it is difficult for the scanner controller to always accurately grasp the position/position of the robot, resulting in the inability to start the hang-up function at any position, and the processing results may be biased.
By introducing a path generation device into the scanner control system, the scanner action is simulated, and a program block containing world coordinates and local coordinates is generated to ensure synchronization between the scanner and the robot. The system includes program analysis, interpolation, position calculation, hang-up start determination and motor output section, and can switch multiple programs for processing during robot action.
The scanner controller does not need to start the hang-up function when the mutually stationary state is synchronized, and can switch multiple programs for processing during the robot's actions, improving the accuracy and flexibility of the processing path.
Smart Images

Figure CN112975120B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to a scanner controller and a scanner control system. Background Art
[0002] A technique of performing welding by irradiating a laser beam from a position away from a workpiece is called remote laser welding. In remote laser welding, an electric scanner is provided in one of the units for controlling the processing path. An electric scanner (hereinafter simply referred to as a scanner) is a device that scans a laser along an arbitrary path by moving one or more mirrors (for example, two mirrors in the case of laser control in the XY directions) in an optical system for a laser. A remote laser welding robot system in which this scanner is installed at the front end of a robot, that is, a robot hand part, has been put into practical use (see Figure 7 ). In the remote laser welding robot system, since the scanner is operated while the robot is being moved, welding can be performed along a processing path that is more complex than that in the case of a single scanner. A processing method in which such a robot is moved while the scanner is being operated is called on-the-fly.
[0003] Generally, a robot controller that controls a robot controls a motor of the robot based on a program of a movement command of the robot. On the other hand, a scanner controller that controls a scanner controls a motor of the scanner and an output of the laser based on a program that describes an irradiation position of the laser and an output condition (power) of the laser. In the above-described remote laser welding robot system, the robot controller transmits the position / pose of the operating robot to the scanner controller, and the scanner controller generates an actual processing path in consideration of the movement of the robot (see Japanese Patent Application Laid-Open No. 2007-283402, etc.). Each program is generated as a synchronized program by a path generation device.
[0004] As described above, a controller that controls a scanner and a controller of a robot that mounts the scanner on a robot hand part are installed as different devices. Further, the movement of the robot is synchronized with the movement of the scanner by transmitting and receiving the position / pose of the robot between these different controllers. However, it is difficult for the scanner controller to always accurately grasp the position / pose of the robot. In order to improve the synchronization between the scanner controller and the position / pose of the robot, it is necessary for the scanner and the robot to be stationary with respect to each other when the execution of the program is started by the scanner controller.
[0005] Therefore, there is a problem that hanging up cannot be started at an arbitrary position. Through the hanging-up function, the scanner controller can control the scanner to irradiate the laser on the desired position of the workpiece. However, since the scanner controller cannot always grasp the degree to which the current position of the robot deviates from the ideal value, the processing result sometimes deviates. In addition, there are also situations related to the OT (out-of-tolerance) of the scanner. Summary of the Invention
[0006] Therefore, a structure that can obtain the synchronization of the scanner and the robot from an arbitrary position is sought.
[0007] When generating the paths of the robot and the scanner, the path generation device of the scanner control system of the present invention performs simulation of the scanner operation, and generates a program that includes the world coordinates of the scanner path and the local coordinates of the scanner in the same program block based on the simulation result. After the local coordinate value calculated from the world coordinate value included in such a program and the position of the robot enters a certain range with respect to the local coordinate value of the same program block, the scanner that receives such a program starts processing using the hanging-up function.
[0008] The scanner controller of one aspect of the present invention controls the scanner. The scanner controller controls the scanner, which is installed at the front end of the robot and scans the laser along a predetermined path based on a scanner control program to process the workpiece. The scanner control program includes a program block of a position command that associates the position in the world coordinate system of the path of the laser with the position in the local coordinate system. The scanner controller includes: a program analysis unit that analyzes the scanner control program and generates a movement command for the driving unit of the scanner based on the position in the local coordinate system instructed by the program block; an interpolation unit that generates interpolation data for each interpolation cycle according to the movement command; a position calculation unit that calculates the current local coordinate position of the scanner based on the position and orientation of the robot in the world coordinate system and the position in the world coordinate system instructed by the program block; a hanging-up start determination unit that determines to start processing based on the hanging-up function when the distance between the local coordinate position calculated by the position calculation unit and the local coordinate position instructed by the program block is within a predetermined threshold determined in advance; and a motor output unit that controls the driving unit of the scanner based on the interpolation data generated by the interpolation unit when the hanging-up start determination unit determines to start processing based on the hanging-up function.
[0009] Another mode of the scanner control system of the present invention includes: a path generation device that performs simulation based on a specified machining path and generates a robot control program and a scanner control program including program blocks that associate the positions of the laser path in the world coordinate system with the positions in the local coordinate system; a robot controller that controls the movement of the robot based on the robot control program; and a scanner controller that controls a scanner. The scanner is installed at the front end of the robot and scans a laser along a predetermined path based on the scanner control program to machine a workpiece. The scanner controller includes: a program analysis unit that analyzes the scanner control program and generates a movement instruction for the driving unit of the scanner based on the position in the local coordinate system instructed by the program block; an interpolation unit that generates interpolation data for each interpolation cycle based on the movement instruction; a position calculation unit that calculates the current position of the scanner in the local coordinate system based on the position and orientation of the robot in the world coordinate system and the position in the world coordinate system instructed by the program block; a hang-up start determination unit that determines to start machining based on the hang-up function when the distance between the position of the scanner in the local coordinate system calculated by the position calculation unit and the position in the local coordinate system instructed by the program block is within a predetermined threshold; and a motor output unit that controls the driving unit of the scanner based on the interpolation data generated by the interpolation unit when the hang-up start determination unit determines to start machining based on the hang-up function.
[0010] With the above structure, the scanner controller of the present invention grasps the offset of the robot from the ideal position, so that it is not necessary to start the synchronization of the hang-up function in a mutually stationary state. In addition, it is possible to switch between multiple programs during the movement of the robot to perform machining using the hang-up function. BRIEF DESCRIPTION OF THE DRAWINGS
[0011] Figure 1 It is a schematic hardware structure diagram of a path generation device included in a scanner control system according to an embodiment.
[0012] Figure 2 It is a schematic hardware structure diagram of a scanner controller and a robot controller included in a scanner control system according to an embodiment.
[0013] Figure 3 It is a block diagram showing the schematic functions of a path generation device according to an embodiment.
[0014] Figure 4 It is a block diagram showing the schematic functions of a scanner controller according to an embodiment.
[0015] Figure 5 It is a block diagram showing the schematic functions of a robot controller according to an embodiment.
[0016] Figure 6 This is a diagram showing a processing example using multiple scanner control programs.
[0017] Figure 7 This is a diagram illustrating the hanging process of the prior art.
[0018] Figure 8 This is a diagram illustrating the operation of the hanging start determination unit. Detailed implementation manners
[0019] Figure 1 This is a schematic hardware structure diagram showing the main part of the path generation device included in the scanner control system according to an embodiment of the present invention.
[0020] The scanner control system 1 of the present embodiment is configured such that a scanner controller 3 that controls a scanner 4, a robot controller 5 that controls a robot 6 that mounts the scanner 4 at the front end of a manipulator, and a path generation device 2 that generates a program for instructing a movement path to the scanner controller 3 and the robot controller 5 are connected via, for example, a wired or wireless network 7.
[0021] The path generation device 2 included in the scanner control system 1 can be installed, for example, on a personal computer connected to the scanner controller 3 and the robot controller 5 via the network 7. The CPU 211 included in the path generation device 2 of the present embodiment is a processor that integrally controls the path generation device 2. The CPU 211 reads out a system program stored in the ROM 212 via a bus 222 and controls the entire path generation device 2 according to the system program. The RAM 213 temporarily stores temporary calculation data, display data, and various data input from the outside, etc.
[0022] The non-volatile memory 214 is composed of, for example, a memory backed up by a battery (not shown), an SSD (Solid State Drive), etc., and maintains a storage state even when the power supply of the path generation device 2 is turned off. Data read from an external device (not shown), data input via the input device 271, data obtained from the scanner controller 3, the robot controller 5, etc. via the interface 220, etc. are stored in the non-volatile memory 214. The data stored in the non-volatile memory 214 can also be loaded into the RAM 213 during execution / use. In addition, various system programs such as a known analysis program are pre-written in the ROM 212.
[0023] The interface 220 is an interface for connecting the CPU 211 of the path generation device 2 to a wired or wireless network 7. The network 7 is connected to a scanner controller 3, a robot controller 5, a fog computer, a cloud server, etc., and exchanges data with the path generation device 2.
[0024] In the display device 270, data and the like obtained as a result of executing each data, program, etc. read into the memory are output and displayed via the interface 217. In addition, an input device 271 composed of a keyboard, a pointing device, etc. delivers instructions, data, etc. based on the operator's operation to the CPU 211 via the interface 218.
[0025] Figure 2 It is a schematic hardware structure diagram showing the main parts of the scanner controller and the robot controller included in a scanner control system according to an embodiment of the present invention.
[0026] The CPU 311 included in the scanner controller 3 of the present embodiment is a processor that overall controls the scanner controller 3. The CPU 311 reads out the system program stored in the ROM 312 via the bus 322, and controls the entire scanner controller 3 according to the system program. Temporary calculation data, display data, and various data input from the outside are temporarily stored in the RAM 313.
[0027] The non-volatile memory 314 is composed of, for example, a memory backed up by a battery (not shown) or an SSD (Solid State Drive), and maintains the storage state even when the power of the scanner controller 3 is turned off. Data read from an external device (not shown), data input via the input device 371, data obtained from the path generation device 2 via the interface 321, data obtained from the robot controller 5 via the interface 315, etc. are stored in the non-volatile memory 314. The data stored in the non-volatile memory 314 can be loaded into the RAM 313 at the time of execution / use. In addition, various system programs such as a known analysis program are pre-written in the ROM 312.
[0028] The scanner controller 3 is connected to the scanner 4 via the interface 320. The CPU 311, for example, executes a program obtained from the path generation device 2, and outputs an instruction for controlling the motor included in the scanner 4 and an instruction for controlling a laser oscillator (not shown) via the interface 320. The CPU 311 also obtains data related to the operation state of the scanner 4 via the interface 320.
[0029] The interface 321 is an interface for connecting the CPU 311 of the scanner controller 3 and the wired or wireless network 7. The path generation device 2, the robot controller 5, the fog computer, the cloud server, etc. are connected to the network 7, and data is exchanged with the scanner controller 3.
[0030] In the display device 370, data and the like obtained as a result of executing each data, program, etc. read into the memory are output and displayed via the interface 317. In addition, the input device 371 composed of a keyboard, a pointing device, etc. delivers instructions, data, etc. based on the operator's operation to the CPU 311 via the interface 318.
[0031] The CPU 511 included in the robot controller 5 of the present embodiment is a processor that integrally controls the robot controller 5. The CPU 511 reads the system program stored in the ROM 512 via the bus 522 and controls the entire robot controller 5 according to the system program. The RAM 513 temporarily stores temporary calculation data, display data, and various data input from the outside.
[0032] The non-volatile memory 514 is composed of, for example, a memory backed up by a battery (not shown) or an SSD (Solid State Drive), and maintains the storage state even when the power of the robot controller 5 is turned off. The non-volatile memory 514 stores data read from an external device (not shown), data input via the input device 571, data obtained from the path generation device 2, etc. via the interface 521, data obtained from the scanner controller 3 via the interface 515, etc. The data stored in the non-volatile memory 514 can also be loaded into the RAM 513 at the time of execution / use. In addition, various system programs such as a known analysis program are pre-written in the ROM 512.
[0033] The robot controller 5 is connected to the robot 6 via the interface 520. The CPU 511, for example, executes the program obtained from the path generation device 2 and outputs an instruction for controlling the motors of the respective axes of the robot 6 via the interface 520. In addition, the CPU 511 obtains data related to the operation state of the robot 6 via the interface 520.
[0034] The interface 521 is an interface for connecting the CPU 511 of the robot controller 5 and the wired or wireless network 7. The path generation device 2, the scanner controller 3, the fog computer, the cloud server, etc. are connected to the network 7, and data is exchanged with the robot controller 5.
[0035] Data and the like obtained as a result of executing various data, programs, etc. read into the memory are output and displayed on the display device 570 via the interface 517. In addition, the input device 571 composed of a keyboard, a pointing device, etc. gives instructions, data, etc. based on the operations of the operator to the CPU 511 via the interface 518.
[0036] The scanner controller 3 and the robot controller 5 can also be connected by a high-speed communication line 8 different from the network 7. The robot controller 5 can, for example, send data related to the position / pose of the robot 6 to the scanner controller 3 at high speed via the communication line 8.
[0037] Figure 3 FIG. shows a functional block diagram of the path generation device 2 included in the scanner control system 1 according to the first embodiment of the present invention.
[0038] Each function of the path generation device 2 of the present embodiment is realized by Figure 1 the CPU included in the path generation device 2 shown in FIG. executing a system program and controlling the operations of each part of the path generation device 2.
[0039] The path generation device 2 of the present embodiment includes a simulation unit 21, a program generation unit 23, and a program transmission unit 25.
[0040] The simulation unit 21 is realized by executing Figure 1 the system program read from the ROM 212 by the CPU 211 included in the path generation device 2 shown in FIG. and performing arithmetic processing mainly by the CPU 211 using the RAM 213 and the non-volatile memory 214. The simulation unit 21 executes simulation processing based on, for example, the machining path input by the operator via the input device 271. The simulation processing performed by the simulation unit 21 is processing that moves the teaching and movement of the robot by the robot / workpiece in the virtual space and generates instructions that avoid obstacles.
[0041] The simulation unit 21 associates the irradiation position in the world coordinate system instructed by the machining path with the irradiation position in the local coordinate system of the actual scanner operation. The simulation unit 21 simulates the transition (motion path) of the position / pose of the robot 6 for machining the machining path based on the input machining path. In addition, when the position / pose of the robot 6 changes, the simulation unit 21 simulates the transition (motion path) of the position of each motor of the scanner 4 for irradiating the laser to the position of the machining path on the workpiece. The simulation result of the simulation unit 21 is output to the program generation unit 23.
[0042] The program generation unit 23 is realized by executing Figure 1The system program read by the CPU 211 included in the path generation device 2 shown is executed, and the arithmetic processing mainly performed by the CPU 211 using the RAM 213 and the non-volatile memory 214 is implemented. The program generation unit 23 calculates the movement path of the robot 6 in the world coordinate system (for example, the coordinate system with the origin of the robot 6 as the reference position) based on the result of the simulation processing of the simulation unit 21. In addition, the program generation unit 23 calculates the movement path of the scanner 4 in the world coordinate system and the movement path of the scanner 4 in the local coordinate system of the scanner 4 (for example, the coordinate system with the origin of the scanner 4 as the reference position) according to the result of the simulation processing of the simulation unit 21. Then, the program generation unit 23 generates a robot control program for moving the robot 6 and a scanner control program for moving the scanner 4 respectively based on the calculated movement paths.
[0043] The robot control program generated by the program generation unit 23 includes a program block that commands the movement path of the robot 6 in the world coordinate system. In addition, the scanner control program generated by the program generation unit 23 includes a program block that associates and commands the movement path of the scanner in the world coordinate system with the movement path of the scanner in the local coordinate system.
[0044] The program sending unit 25 is implemented by executing Figure 1 The system program read by the CPU 211 included in the path generation device 2 shown is executed, and the arithmetic processing mainly performed by the CPU 211 using the RAM 213 and the non-volatile memory 214 and the communication processing using the interface 220 are implemented. The program sending unit 25 sends the robot control program generated by the program generation unit 23 to the robot controller 5. In addition, the program sending unit 25 sends the scanner control program generated by the program generation unit 23 to the scanner controller 3.
[0045] Figure 4 It is a schematic block diagram showing the functions of the scanner controller 3 included in the scanner control system 1 according to the first embodiment of the present invention.
[0046] Each function of the scanner controller 3 in this embodiment is implemented by Figure 2 The CPU included in the scanner controller 3 shown executes the system program to control the operation of each part of the scanner controller 3.
[0047] The scanner controller 3 in this embodiment includes a program analysis unit 31, an interpolation unit 32, a position calculation unit 33, a hang-up start determination unit 34, and a motor output unit 36.
[0048] The program analysis unit 31 is implemented by executing Figure 2The system program read by the CPU 311 provided in the scanner controller 3 shown is implemented by performing arithmetic processing mainly by the CPU 311 using the RAM 313 and the non-volatile memory 314. The program analysis unit 31 analyzes each program block of the scanner control program generated by the path generation device 2 and calculates the operation path of the scanner 4. The program analysis unit 31 generates a movement instruction for the drive unit of the scanner 4 (a movement instruction for the irradiation position of the laser in the local coordinate system) based on the operation path of the scanner 4 instructed by the scanner control program in the local coordinate system.
[0049] The interpolation unit 32 is implemented by executing Figure 2 The system program read by the CPU 311 provided in the scanner controller 3 shown is implemented by performing arithmetic processing mainly by the CPU 311 using the RAM 313 and the non-volatile memory 314. The interpolation unit 32 generates interpolation data indicating the movement amount for each interpolation cycle of each motor that drives the drive unit of the scanner 4 based on the movement instruction for the drive unit of the scanner 4 generated by the program analysis unit 31.
[0050] The position calculation unit 33 is implemented by executing Figure 2 The system program read by the CPU 311 provided in the scanner controller 3 shown is implemented by performing arithmetic processing mainly by the CPU 311 using the RAM 313 and the non-volatile memory 314 and communication processing using the interface 315. The position calculation unit 33 receives the position / pose of the robot 6 in the world coordinate system transmitted from the robot controller 5 via the communication line 8, and calculates the position of the scanner 4 in the local coordinate system based on the received position / pose of the robot 6 and the position in the world coordinate system of the scanner control program instruction analyzed by the program analysis unit 31.
[0051] The hang-up start determination unit 34 is implemented by executing Figure 2 The system program read by the CPU 311 provided in the scanner controller 3 shown, and is implemented by performing arithmetic processing mainly by the CPU 311 using the RAM 313 and the non-volatile memory 314. As Figure 8 Illustrated, when the distance between the position of the scanner 4 in the local coordinate system calculated by the position calculation unit 33 and the start position of the movement instruction in the local coordinate system analyzed by the program analysis unit 31 is within a predetermined threshold value, the hang-up start determination unit 34 determines to start machining of a workpiece using the hang-up function.
[0052] The motor output unit 36 is implemented by executing Figure 2The system program read by the CPU 311 included in the scanner controller 3 shown is mainly implemented by performing arithmetic processing using the RAM 313 and non-volatile memory 314 of the CPU 311 and input / output processing using the interface 320. When the workpiece for which the hook function is determined to be used by the hook start determination unit 34 starts processing, the motor output unit 36 performs drive control of the motors on the interpolation data generated by the interpolation unit 32 for driving the drive unit of the scanner 4.
[0053] Figure 5 FIG. is a schematic block diagram showing the functions of the robot controller 5 included in the scanner control system 1 according to the first embodiment of the present invention.
[0054] Each function of the robot controller 5 in the present embodiment is realized by Figure 2 the CPU included in the robot controller 5 shown executing the system program and controlling the operations of each part of the robot controller 5.
[0055] The robot controller 5 in the present embodiment includes a program analysis unit 51, an interpolation unit 52, a motor output unit 56, and a position output unit 58.
[0056] The program analysis unit 51 is realized by executing Figure 2 the system program read by the CPU 511 included in the robot controller 5 shown and performing arithmetic processing mainly using the RAM 513 and non-volatile memory 514 by the CPU 511. The program analysis unit 51 analyzes each program block of the robot control program generated by the path generation device 2 and calculates the movement path of the robot 6.
[0057] The interpolation unit 52 is realized by executing Figure 2 the system program read by the CPU 511 included in the robot controller 5 shown and performing arithmetic processing mainly using the RAM 513 and non-volatile memory 514 by the CPU 511. The interpolation unit 52 generates interpolation data representing the movement amount of each interpolation cycle of the motors for driving the axes of the robot 6 based on the movement instructions for the drive unit of the robot 6 generated by the program analysis unit 51.
[0058] The motor output unit 56 is realized by executing Figure 2 the system program read by the CPU 511 included in the robot controller 5 shown and performing arithmetic processing mainly using the RAM 513 and non-volatile memory 514 by the CPU 511 and input / output processing using the interface 520. The motor output unit 56 performs drive control of the motors by outputting the interpolation data generated by the interpolation unit 52 for the motors driving the axes of the robot 6.
[0059] The position output unit 58 is implemented by executing Figure 2 the system program read out from the ROM 512 by the CPU 511 included in the robot controller 5 shown, and performing arithmetic processing using the RAM 513 and the non-volatile memory 514 mainly by the CPU 511 and input / output processing using the interface 515. The position output unit 58 generates data related to the current position / pose in the world coordinate system of the robot based on the interpolation data (position commands) output to the motors for driving the axes of the robot 6 by the motor output unit 56, or the position information fed back from the respective motors, and outputs the generated position / pose-related data to the scanner controller 3.
[0060] In the scanner control system 1 having the above structure, a program block associating the position in the world coordinate system of the scanner 4 with the position in the local coordinate system is included in the scanner control program for operating the scanner 4 generated by the path generation device 2. The robot controller 5 controls the operation of the robot 6 according to the robot control program. On the other hand, the scanner controller 3 waits for the execution of this program until the position / pose of the robot 6 approaches the predetermined machining start position instructed by the scanner control program. Then, when the position / pose of the robot 6 approaches the machining start position, the execution of the scanner control program is started, and the machining of the workpiece is started. The difference between the data related to the position / pose of the robot 6 and the coordinate position instructed by the scanner control program represents the offset of the robot 6 assumed by the scanner controller 3 from the ideal position. By grasping this offset, it is not necessary to start the synchronization of the hanging function in a mutually stationary state.
[0061] In the scanner control system 1 having the above structure, it is only necessary to generate the operation of the scanner 4 near the machining position of the workpiece as the scanner control program. Therefore, as Figure 6 illustrated, a plurality of scanner control programs representing the operation of the scanner 4 near the machining position of the workpiece can be prepared for one robot control program and stored in the scanner controller 3. When the position / pose of the robot 6 approaches each machining start position, the scanner control programs at each position are executed for machining. In this way, since a series of scanner control programs for machining can be generated at each machining position, it is possible to flexibly respond, for example, by replacing only a part of the scanner control program as needed (for example, there is a failure at a part of the machining position, or the machining shape of a part of the machining position needs to be changed).
[0062] The above has described one embodiment of the present invention, but the present invention is not limited to the examples of the above-described embodiment, and can be implemented in various ways by applying appropriate changes.
Claims
1. A scanner controller controls a scanner. The scanner is installed at the front end of a robot and scans a laser along a predetermined path based on a scanner control program to process a workpiece. Characterized in that, The scanner control program includes a program block of a position command that associates the position in the world coordinate system of the path of the laser with the position in the local coordinate system. The scanner controller includes: A program parsing unit that parses each program block of the scanner control program and generates a movement command for the driving unit of the scanner based on the irradiation position of the laser in the local coordinate system instructed by the program block. An interpolation unit that generates interpolation data representing the movement amount of each interpolation cycle of each motor driving the driving unit of the scanner based on the generated movement command for the driving unit of the scanner. A position calculation unit that calculates the current position of the scanner in the local coordinate system based on the position and orientation of the robot in the world coordinate system and the position in the world coordinate system received through the program block. A hanging start determination unit that determines to start processing the workpiece based on the hanging function when the distance between the position of the scanner in the local coordinate system calculated by the position calculation unit and the position of the scanner in the local coordinate system instructed by the program block is within a predetermined threshold determined in advance. A motor output unit that controls the driving unit of the scanner according to the generated interpolation data generated by the interpolation unit and the start of processing based on the hanging function.
2. A scanner control system, characterized in that, The scanner control system includes: A path generation device that performs simulation based on a specified processing path and generates a robot control program and a scanner control program including a program block of a position command that associates the position in the world coordinate system of the path of the laser with the position in the local coordinate system. A robot controller that controls the movement of the robot based on the robot control program. And A scanner controller that controls a scanner. The scanner is installed at the front end of the robot and scans a laser along a predetermined path based on the scanner control program to process a workpiece. The scanner controller includes: A program parsing unit that parses each program block of the scanner control program and generates a movement command for the driving unit of the scanner based on the irradiation position of the laser in the local coordinate system instructed by the program block. An interpolation unit that generates interpolation data representing the movement amount of each interpolation cycle of each motor driving the driving unit of the scanner based on the generated movement command for the driving unit of the scanner. A position calculation unit that calculates the current position of the scanner in the local coordinate system based on the position and orientation of the robot in the world coordinate system and the position in the world coordinate system received through the program block. A hanging start determination unit that determines to start processing the workpiece based on the hanging function when the distance between the position of the scanner in the local coordinate system calculated by the position calculation unit and the position of the scanner in the local coordinate system instructed by the program block is within a predetermined threshold determined in advance. The motor output unit controls the driving unit of the scanner according to the interpolation data generated by the interpolation unit and the start of machining based on the hanging-up function.
Citation Information
Patent Citations
Laser welding apparatus, and its method
JP2007283402A
Laser processing system, and method for controlling same
JP2012139711A
Laser processing robot system and laser processing method
US20180043471A1