Robot control device, numerical control system and numerical control method

DE112022006565T5Active Publication Date: 2025-02-20FANUC LTD
View PDF 10 Cites 0 Cited by

Patent Information

Application Number
DE112022006565
Authority / Receiving Office
DE · DE
Patent Type
Applications
Current Assignee / Owner
Filing Date
2022-04-18
Publication Date
2025-02-20
Estimated Expiration
2042-04-18

Smart Images

  • Figure 00000000_0000_ABST
    Figure 00000000_0000_ABST
Patent Text Reader

Abstract

A robot control device is provided that makes it possible to implement a control system that interacts with a numerical control device having a multitude of control systems without creating further complications. A robot control device 3 is equipped with: a program input unit 32 for receiving a robot control program for controlling a robot 30 from a memory unit 31; an analysis unit 33 for analyzing the robot control program entered by the program input unit 32 and for receiving a read command and a write command, with which a variable of a numerical control program for controlling a numerical control device 2 is set, and system information for identifying a particular system from the multitude of control systems of the numerical control device;a system setting unit 37 for issuing a command to read / write a variable of the system in question based on the information acquired by the analysis unit 33; and a data communication unit 39 for transmitting the command to read / write the variable of the system in question to the numerical control device 2, causing the numerical control device 2 to update the variable of the system in question.
Need to check novelty before this filing date? Find Prior Art

Description

Technical area

[0001] The present disclosure relates to a robot control apparatus, a numerical control system, and a numerical control method. State of the art

[0002] Traditionally, a system was created that interconnects the respective controllers of a machine tool, a robot, etc., to automate a processing machine. Patent Document 1 and Patent Document 2 are examples of documents related to this type of technology.

[0003] Patent Document 1 describes that, in a numerical control device, a comparative relationship between parameters related to settings of the numerical control device is stored in a comparative relationship storage unit, data having a comparative relationship is extracted from parameters related to settings of the numerical control device based on the comparative relationship stored in the comparative relationship storage unit, and the data having this comparative relationship is displayed on a display unit to be associated with each other.

[0004] Patent Document 2 describes that in a machining system including a machine controller and a robot controller, the machine controller includes a communication unit configured to read setting data and a robot operation program corresponding to a machining type set by a setting unit from a storage unit and transmit the setting data and the robot operation program to the robot controller when a determination unit determines that a mobile robot is disposed at a predetermined position adjacent to a machining device. Citation listPatent document Patent Document 1: Unexamined Japanese Patent Application, Publication No. 2021-009480 Patent Document 2: Unexamined Japanese Patent Application, Publication No. 2018-124910 Disclosure of the invention Problems to be solved by the invention

[0005] However, in a system including a robot and a machine tool, a robot control device that controls the robot can link the operations of the robot and the machine tool by reading / writing macro variables of the machine tool. For example, the robot control device can perform processing such that it detects the operation state by turning on an operation request to the machine tool via the macro variable and reading the macro variable of the machine tool, and turns off the operation request when the operation state reaches operation completion, and then proceeds to the next sequence. However, since there is no concept of a control system of a machine in a conventional robot control device, it is not possible to perform operation with an existing machine consisting of a plurality of groups of tool posts and spindles, such as a lathe.a multi-function machine tool, via macro variables.

[0006] The object of the present disclosure is to provide a robot control apparatus, a numerical control system, and a numerical control method capable of implementing control interlocking with a numerical control apparatus having a plurality of control systems without complicating the control. Means of solving the tasks

[0007] One aspect of the present disclosure relates to a robot control device comprising: a program input unit that acquires a robot control program for controlling a robot from a storage unit; an analysis unit that analyzes the robot control program input from the program input unit and acquires a read command and a write command in which a variable of a numerical control program controlling a numerical control device and system information specifying a target system from a plurality of control systems owned by the numerical control device are set; a system setting unit that outputs a command for reading and writing a variable of the target system based on information acquired by the analysis unit;and a data communication unit that causes an update of the variables of the target system to be executed in the numerical control device by transmitting a command for reading and writing the variables of the target system to the numerical control device;

[0008] Additionally, one aspect of the present disclosure relates to a numerical control system comprising: a numerical control device having a plurality of control systems; and a robot control device that interacts with the numerical control device to control a robot, the robot control device comprising: a program input unit that acquires a robot control program for controlling a robot from a storage unit; an analysis unit that analyzes the robot control program input from the program input unit and acquires a read command and a write command in which a variable of a numerical control program that controls the numerical control device and system information specifying a target system from a plurality of control systems owned by the numerical control device are set;a system setting unit that issues a command for reading and writing a variable of the target system based on information acquired by the analysis unit; and a data communication unit that transmits a command for reading and writing a variable of the target system to the numerical control device, and in which the numerical control device performs an update of the variable of the target system based on a command for reading and writing a variable of the target system received from the robot control device.

[0009] Furthermore, one aspect of the present invention relates to a numerical control method for interlockingly controlling a robot control device and a numerical control device, the numerical control method comprising: a program input step of acquiring a robot control program for controlling a robot from a storage unit; an analysis step of analyzing the robot control program input in the program input step and acquiring a read command and a write command in which a variable of a numerical control program controlling the numerical control device and system information specifying a target system from a plurality of control systems owned by the numerical control device are set;a system setting step for issuing a command for reading and writing a variable of the target system based on information acquired in the analysis step; and a robot control device updating step for updating a variable of the target system to be executed in the numerical control device by transmitting a command for reading and writing the variable of the target system to the numerical control device. Effects of the invention

[0010] According to the present disclosure, it is possible to provide a robot control device, a numerical control system, and a numerical control method capable of realizing interlocking control with a numerical control device having a plurality of control systems without complicating the control. Brief description of the drawings Fig. 1 is a schematic diagram of a numerical control system according to an embodiment of the present disclosure; Fig. 2 is a functional block diagram of a robot control device and a numerical control device according to an embodiment of the present disclosure; Fig. 3 is a diagram showing an example of a robot control program including a read command and a write command; Fig. 4 is a diagram schematically showing a mechanical configuration of a system 1 and a system 2; Fig. 5 is a diagram showing an example of a robot control program of the robot control device; Fig. 6 is a diagram showing an assignment example of user-defined macro variables of a numerical control program updated by the robot control device; Fig. Fig. 7 is a diagram showing an example of a main program and a subroutine of the system 1; Fig. Fig. 8 is a diagram showing an example of a main program and a subroutine of the system 2; and Fig. 9 is a flowchart showing an example of processing of a numerical control system 1 according to an embodiment of the disclosure. Preferred mode for carrying out the invention

[0011] Hereinafter, an embodiment of the present disclosure will be described in detail with reference to the drawings.

[0012] Fig. 1 is a schematic diagram of a numerical control system 1 according to an embodiment of the present disclosure.

[0013] The numerical control system 1 includes a numerical control device (CNC) 2 that controls a machine tool 20, and a robot control device 3 that is communicatively connected to the numerical control device 2 and controls a robot 30 provided near the machine tool 20. The numerical control system 1 according to the present embodiment is an intermediary for controlling the operations of the machine tool 20 and the robot 30 using the numerical control device 2 and the robot control device 3 that are communicatively connected to each other.

[0014] The numerical control device 2 generates machine tool command signals, which are commands for the machine tool 20 according to a predetermined numerical control program, and transmits these signals to the machine tool 20.

[0015] The machine tool 20 machines a workpiece (not shown) in accordance with machine tool command signals transmitted from the numerical control device 2. The machine tool 20 is, for example, a combined machining device including a turret, a table, a tool holder, a spindle, and the like. The machine tool 20 may be a composite machining device constructed by combining a lathe, a ball mill, a milling machine, a grinder, a laser processing machine, an injection molding machine, and the like, as required.

[0016] The robot 30 operates under the control of the robot control device 3 and performs predetermined work on the workpiece being machined, for example, within the machine tool 20. The robot 30 is, for example, an articulated robot, and a tool 30b for gripping, processing, or inspecting a workpiece is attached to an arm tip portion 30a thereof. A case where the robot 30 is used as a six-axis articulated robot will be described below; however, the present invention is not limited thereto. A case where the robot 30 is used as a six-axis articulated robot will be described below; however, the present invention is not limited thereto.

[0017] Fig. 2 is a functional block diagram of the robot control device 3 and the numerical control device 2 according to an embodiment of the present disclosure.

[0018] The numerical control device 2 and the robot control device 3 are each computers configured as: hardware such as an arithmetic processing unit such as a CPU (Central Processing Unit), an auxiliary storage unit such as an HDD (Hard Disk Drive) or an SSD (Solid State Drive) that stores various computer programs, a main storage unit such as a RAM (Random Access Memory) for temporarily storing the data required by the arithmetic unit to execute the computer programs, an operation unit such as a keyboard on which an operator performs various operations, and a display unit such as a display for displaying various information to the operator.The numerical control device 2 and the robot control device 3 can send and receive various signals to and from each other via, for example, Ethernet (registered trademark).

[0019] First, the configuration of the numerical control device 2 will be described. The numerical control device 2 implements a machine tool control function for controlling the operation of the machine tool 20, which is to be linked to the operation of the control axis of the robot 30, through the hardware configuration described above. Specifically, to implement these functions, the numerical control device 2 includes a storage unit 21, a program input unit 22, an analysis unit 23, a robot control variable unit 26, an I / O control unit 25, an interpolation control unit 24, a servo control unit 27, a data communication unit 28, and the like.

[0020] The storage unit 21 stores numerical control programs. The numerical control program is created based on, for example, operations performed by an operator. The numerical control program is configured by a variety of command blocks, etc., related to the machine tool 20 to control the operation of the machine tool 20. The numerical control program is written in a well-known programming language such as G-code or M-code.

[0021] Note that various types of information other than the numerical control programs are stored in the storage unit 21. These various types of information include, for example, machine coordinate values, robot coordinate values, and robot teaching positions.

[0022] The machine coordinate values ​​are values ​​indicating the positions of various axes of the machine tool 20 operated by the numerical control program (i.e., positions of a tool post, table, etc. of the machine tool 20). The machine coordinate values ​​are defined in a machine tool coordinate system having a reference point as the origin, which is defined at any location on the machine tool 20 or near the machine tool 20. The latest values ​​of the machine coordinate values, which change sequentially under the numerical control program, are sequentially updated by processing (not shown) to be stored in the storage unit 21.

[0023] The robot coordinate values ​​are values ​​indicating the position and attitude of a control point of the robot 30 (e.g., the arm tip portion 30a of the robot 30) operating under the control of the robot control device 3, in other words, the position of each control axis of the robot 30. The robot coordinate values ​​are defined in a robot coordinate system that is different from the machine tool coordinate system, as described above. The robot coordinate system is a coordinate system with a reference point defined at any position on the robot 30 or near the robot 30 as the origin. The following describes a case where the robot coordinate system is different from the machine tool coordinate system. The robot coordinate system may be the same as the machine tool coordinate system.In other words, the origin or coordinate axis direction of the robot coordinate system can be the same as the origin or coordinate axis direction of the machine tool coordinate system. Furthermore, the robot coordinate system can be switched between two or more coordinate formats with different control axes. Specifically, in the numerical control program, the position and attitude of the control points of the robot 30 can be specified using Cartesian coordinate formats or corresponding axis coordinate formats.

[0024] The latest values ​​of the robot coordinate values ​​that sequentially change under the numerical control program are sequentially updated by the robot coordinate values ​​acquired by the robot control device 3 through processing (not shown) to be stored in the storage unit 21.

[0025] The robot teaching positions are teaching positions, such as a start point and an end point of the robot 30, input by an operator, specifically, a teaching position of the robot 30 input from a teach pendant or the like, a teaching position input from a keyboard, etc. The teaching positions of the robot 30 include robot coordinate values ​​indicating the positions of each control axis of the robot 30.

[0026] The program input unit 22 reads the numerical control program from the storage unit 21 and sequentially inputs it to the analysis unit 23. Furthermore, the program input unit 22 reads various types of information, such as the machine coordinate values, the robot coordinate values, and the robot teaching positions, stored in the storage unit 21 and inputs the information to the analysis unit 23.

[0027] The analysis unit 23 analyzes the command classification based on the numerical control program input from the program input unit 22 for each command block and obtains information about the user-defined macro variable from the robot control variable unit 26. The analysis unit 23 outputs a command to the interpolation control unit 24 and the I / O control unit 25 to control the machine tool 20 based on the analysis result of the numerical control program and the user-defined macro variable. Hereinafter, the user-defined macro variable is referred to as a variable.

[0028] In the present embodiment, when the robot control variable is updated, the analysis unit 23 outputs a command for operating the target system to the interpolation control unit 24 and the I / O control unit 25 based on the system specifying information.

[0029] The interpolation control unit 24 is connected to the servo control unit 27 and performs interpolation control for linear interpolation, arc interpolation, spiral interpolation, etc. via the servo control unit 27. The servo control unit 27 generates machine tool control signals for controlling the operation of the machine tool 20 and transmits the machine tool control signals to the actuators that drive various axes of the machine tool 20. The machine tool 20 operates in accordance with the machine tool control signals to machine a workpiece (not shown). After controlling the operation of the machine tool 20 according to the numerical control program, the aforementioned machine coordinate values ​​are updated with the latest machine coordinate values.

[0030] The robot control variable unit 26 analyzes the commands read and written by the robot control device 3 in the machining program and updates the variable.

[0031] The data communication unit 28 sends and receives various commands and data to and from the data communication unit 39 of the robot control device 3.

[0032] Next, the structure of the robot control device 3 will be described in detail. As shown in Fig. 2, the robot control device 3 for controlling the operation of the robot 30 includes a storage unit 31, a program input unit 32, an analysis unit 33, a trajectory control unit 34, a kinematics control unit 35, a servo control unit 36, a system setting unit 37, a robot control variable unit 38, a data communication unit 39, and the like.

[0033] The storage unit 31 stores various types of information, such as the robot control program. The robot control program is created based on operations performed by an operator, for example. The robot control program is configured for the robot 30 through a variety of command blocks, etc., to control the operation of the robot 30. The various types of information include, for example, machine coordinate values, robot coordinate values, and robot learning positions.

[0034] The program input unit 32 reads the robot control program from the storage unit 31 and inputs the robot control program to the analysis unit 33.

[0035] The analysis unit 33 determines a command classification of the input robot control program. The analysis unit 33 transmits commands of an operation plan to the path control unit 34 based on the analysis results.

[0036] When the commands of the operation plan are input from the analysis unit 33, the path control unit 34 calculates time series data of control points of the robot 30 and outputs the time series data to the kinematics control unit 35.

[0037] The kinematics control unit 35 calculates a target angle of each joint of the robot 30 through inverse kinematics calculation based on the input time series data and outputs the target angles to the servo control unit 36. The inverse kinematics calculation of the robot 30 is a calculation method for calculating the angle of each joint from the tool position and the posture of the robot 30.

[0038] The servo control unit 36 ​​generates robot control signals for the robot 30 by feedback controlling each servo motor of the robot 30 so as to implement the target angles input from the kinematics control unit 35, and outputs the robot control signals to the servo motor of the robot 30.

[0039] Moreover, in the analysis unit 33 of the present embodiment, when the command classification of the inputted robot control program is analyzed as a read / write command of the variables of the numerical control device 2, the target system included in the read / write command is notified from the analysis unit 33.

[0040] The read / write command includes a read command and a write command. Fig. Figure 3 is a diagram showing an example of a robot control program with read commands 60 and write commands 70. Each read command 60 has four parameters: a first argument 61, a second argument 62, a third argument 63, and a fourth argument 64. The first argument 61 specifies a machine to be a target of the read command 60, and is "MACHINE1" in this example. The second argument 62 is a system number (system information) for specifying which of a plurality of systems is to be used, and is "1" in this example. The third argument 63 is a macro variable number for specifying a target macro variable, and is "100" in this example. The fourth argument 64 specifies an address for storing the read value, and is "1" in this example.

[0041] Similarly, each write command 70 also has the four parameters of a first argument 71, a second argument 72, a third argument 73, and a fourth argument 74. The first argument 71 specifies a machine that is the target of the write command 70 and is "MACHINE1" in this example. The second argument 72 is a system number (system information) for specifying which of a plurality of systems and is "1" in this example. The third argument 73 is a macro variable number for specifying a target macro variable and is "100" in this example. The fourth argument 74 specifies a value to be written to the target macro variable and is "1" in this example.

[0042] The system setting unit 37 sends commands for reading and writing variables of a target system to the robot control variable unit 38 based on the robot control program including the read command 60 and the write command 70.

[0043] The robot control variable unit 38 sends variable read and write commands to the data communication unit 39 based on the commands communicated from the system setting unit 37. The data communication unit 39 sends and receives command signals to and from the data communication unit 28. The variable read and write commands are transmitted to the robot control variable unit 26 via the data communication unit 28.

[0044] Next, specific examples of the control of System 1 and System 2 will be described with reference to Figs. 4 to 8. Fig. Figure 4 is a diagram schematically showing the mechanical configurations of System 1 and System 2. Fig. 4 shows a system 1 which machines a workpiece W1 lying on the table 53 with a second turret 52, and a system 2 which machines a workpiece W2 lying on the table 54 with a first turret 51.

[0045] In Fig. 4, Z1 of system 1 indicates the z-axis direction and corresponds to a variable that specifies the coordinates in the z-axis direction of system 1. X2 specifies the x-axis direction and corresponds to a variable that specifies the coordinates in the x-axis direction of system 1. Similarly, Z2 of system 2 indicates the z-axis direction and corresponds to a variable that specifies the coordinates in the z-axis direction of system 2. X1 specifies the x-axis direction and corresponds to a variable that specifies the coordinates in the x-axis direction of system 2.

[0046] Fig. Fig. 5 is a diagram showing an example of input of a robot control program from the program input unit 32 to the analysis unit 33. As shown in Fig. 5, the label [1] is written in the first line. In the second line, "CALL WR CNC_MACRO ('MACHINE1', 1, 101, 1)" is a read command of system 1, and the read processing of the machining start request of system 1 is performed. In the third line, "CALL WR CNC_MACRO ('MACHINE1', 2, 101, 1)" is a read command of system 2, and the read processing of the machining start request of system 2 is performed.

[0047] A label [2] is written to the fourth line. In the fifth line, "WAIT 10.0 sec" executes standby processing for 10 seconds. In the sixth line, "CALL RD_CNC_MACRO ('MACHINE1', 1, 101, 1)" is a write command from System 1. "IF REGISTER [1]=ON, Jump Label 2" is the processing for confirming the machining completion of System 1. If the condition of "IF REGISTER [1]=ON" is met, processing proceeds to "Label 2."

[0048] In the seventh line, a label [3] is written. In the eighth line, "WAIT 10.0 sec" executes standby processing for 10 seconds. In the ninth line, "CALL RD_CNC_MACRO ('MACHINE1', 2, 101, 2)" is a write command from system 2. "IF REGISTER [2]=ON, Jump Label 3" is the processing for confirming the machining completion of system 2. If the condition of "IF REGISTER [2]=ON" is met, processing proceeds to label 3.

[0049] As in Fig. 5, the systems are distinguished from each other in the robot control program, and the processing of read and write variables is performed by the robot control device 3. Fig. Fig. 6 is a diagram showing an assignment example of user-defined macro variables of the numerical control program that are read and written by the robot control device 3. In the example of Fig. 6, variable #100 is a variable indicating a program stop request, #100=0 indicates the OFF request, and #100=1 indicates the ON request. In addition, variable #101 indicates a machining request, variable #102 indicates a door opening request, variable #103 indicates a door closing request, variable #104 indicates a tray opening request, and variable #105 indicates a tray closing request. In each of variables #101 to #105, 0 indicates the OFF request and 1 indicates the ON request.

[0050] Next, with reference to Figs. 7 and 8, the control of System 1 and System 2 in a situation will be described in which the control system described in the example of Fig. 7 shown variables are set.

[0051] Fig. Figure 7 is a diagram showing an example of a main program and a subroutine of System 1. Fig. Figure 7 shows a program of system 1, which is executed by the robot control program of Fig. 5 is called.

[0052] First, the control of System 1 is described. A conditional branch is set to sequence number "N10." When variable #101=1 is created in the first "IF [#101 EQ 1] GOTO20," processing proceeds to sequence number "N20." In sequence number "N20," subroutine O1000, corresponding to program number 1000, is called and executed by "M98P1000."

[0053] In subroutine O1000, positioning processing is performed based on the coordinates X2=100 and Z1=100 in "G00." During positioning processing, linear movement processing is performed at a feedrate based on F=1000 to the coordinate of Z1=0 by "G01." Then, a 0 is input to "#101," indicating the OFF request, and the subroutine ends at "M99." After subroutine O1000 ends, processing returns to the sequence number "N10" at "GOTO10," and the conditional branch processing is repeated.

[0054] If #101=1 is not established in the first "IF [#101 EQ 1] GOTO20," processing proceeds to "IF [#102 EQ 1] GOTO30." If #102=1 is established in this "IF [#102 EQ 1] GOTO30," processing proceeds to sequence number "N30" (not shown). In sequence number "N30," although the specific processing is omitted, the processing related to the door opening operation is executed. If #102=1 is not established in "IF [#102 EQ 1] GOTO30," processing proceeds to "IF [#103 EQ 1] GOTO40." If #103=1 is established in this "IF [#103 EQ 1] GOTO40," processing proceeds to sequence number "N40" (not shown). At sequence number "N40," the door-closing processing is executed, although the specific processing is omitted. If #103=1 is not established in "IF [#103 EQ 1] GOTO40," processing proceeds to "IF [#104 EQ 1] GOTO50."If #104=1 is created in "IF [#104 EQ 1] GOTO50", processing advances to sequence number "N50" (not shown), and in sequence number "N50", the processing related to the chuck opening operation is executed, although the specific processing is omitted. If #104=1 is not created in "IF [#104 EQ 1] GOTO50", processing advances to "IF [#105 EQ 1] GOTO60". If #105=1 is created in "IF [#105 EQ 1] GOTO60", processing advances to sequence number "N60" (not shown), and in sequence number "N60", the processing related to the chuck closing operation is executed, although the specific processing is omitted.

[0055] If the determination condition of "IF [#105 EQ 1] GOTO 60" is not met, the determination of "IF [#100 EQ 1] GOTO 100" is executed. If the determination condition of "IF [#100 EQ 1] GOTO 100" is met, the program is terminated by "M30" in sequence number "N100".

[0056] Fig. Figure 8 is a diagram showing an example of a main program and a subroutine of System 2. Fig. Figure 8 shows a program of system 2, which is executed by the robot control program of Fig. 5 is called. Also in Fig. 8 the same processing as in the Fig. 7 shown example. The example of Fig. 8 differs in that the subroutine O2000, which corresponds to program number 2000, is called by “M98P2000” in sequence number “N20”.

[0057] In subroutine O2000, positioning processing is performed based on coordinates X1=200 and Z2=0 in "G00." During positioning processing, linear movement processing is performed at a feedrate based on F=1000 to coordinate Z2=1000 in "G01." Then, a 0 is input to "#101" to indicate the OFF request, and the subroutine ends at "M99." After subroutine O2000 ends, processing returns to sequence number "N10" at "GOTO10," and the conditional branch processing is repeated.

[0058] In the example described with reference to Figs. 8 and 9, variables #100 to #105 are shared between system 1 and system 2. In the configuration of the present embodiment, since system 1 and system 2 are distinguished from each other by the command output of robot control device 3, the system can be specified on the numerical control device 2 side.

[0059] Next, the flow of system selection processing of the numerical control system 1 will be explained with reference to Fig. 9 described. Fig. 9 is a flowchart illustrating an example of processing of the numerical control system 1 according to the embodiment of the present disclosure. Fig. Figure 9 shows only an example of the flow of system selection processing, and other parallel processing is omitted.

[0060] First, the program input unit 32 of the robot control device 3 reads the robot control program from the storage unit 31 and then performs input processing for inputting the robot control program to the analysis unit 33 (step S1).

[0061] Next, the analysis unit 33 determines a command classification of the inputted robot control program, acquires system information specifying the system and the variables belonging to the system when analyzing the command classification as a variable read / write command of the numerical control device 2, and executes the analysis processing of notifying the target system to the system setting unit 37 (step S2).

[0062] The system setting unit 37, which is informed of the target system in step S2, performs setting processing of outputting the target system notified from the analysis unit 33 and the variables pertaining to the target system to the robot control variable unit 38 (step S3).

[0063] The robot control variable unit 38 transmits the target system and the related variables to the data communication unit 28 of the numerical control device 2 via the data communication unit 39 and performs update processing for updating the target system and the related variables of the robot control variable unit 26 of the numerical control device 2 (step S4).

[0064] The robot control device 3 executes machining request processing to instruct a target system of the machine tool 20 to perform machining, and the target system of the machine tool 20 performs machining on a workpiece (step S5). This completes the present processing.

[0065] As described above, the numerical control system 1 of the present embodiment includes the numerical control device 2, which has a plurality of control systems, and the robot control device 3, which cooperates with the numerical control device 2 to control the robot 30. The robot control device 3 then includes: a program input unit 32 that acquires a robot control program for controlling the robot 30 from the storage unit 31; an analysis unit 33 that analyzes the robot control program input from the program input unit 32 and receives a read command and a write command in which a variable of the numerical control program for controlling the numerical control device 2 and system information (system number) specifying a target system from a plurality of control systems included in the numerical control device are set; anda system setting unit 37 that issues a command for reading and writing a variable of the target system based on the information acquired by the analysis unit 33; and a data communication unit 39 that causes the numerical control device 2 to update the variable of the target system by transmitting a command for reading and writing a variable of the target system to the numerical control device 2.

[0066] Furthermore, a numerical control method for controlling the robot control device 3 and the numerical control device 2 to be interlocked according to the present embodiment includes: a program input step of acquiring a robot control program for controlling the robot 30 from the storage unit 31; an analysis step of analyzing the robot control program input in the program input step and acquiring a read command and a write command in which variables of a numerical control program for controlling the numerical control device 2 and system information (system number) specifying a target system from a plurality of control systems included in the numerical control device 2 are set;a system setting step of issuing a command for reading and writing the variables of the target system based on the information obtained in the analysis step; and an updating step of the robot control device 3, which transmits a command for reading and writing the variables of the target system to the numerical control device 2 to cause the variables of the target system to be executed to be updated in the numerical control device 2.

[0067] The robot control device 3, the numerical control system 1, and the numerical control method according to the present embodiment exert the following effects. That is, even if the numerical control device 2 has a plurality of control systems and the variables are shared between each of the control systems, it is possible to distinguish the systems by the robot control device 3 and read and write the variables of the numerical control device 2.Therefore, an update of the variables of the target system can be appropriately updated without setting the variables of various systems on the numerical control device 2 side, and the interlocking control of the numerical control device 2 having a plurality of control systems and the robot control device 3 can be appropriately realized without making the interlocking control more complicated.

[0068] Furthermore, the analysis unit 33 of the robot control device 3 according to the present embodiment outputs a command to perform robot control to mesh with a plurality of control systems controlled by the numerical control device 2 based on the updated variables of the target system.

[0069] This makes it possible to appropriately perform intermeshing between the numerical control device 2 having a plurality of control systems and the robot control device 3.

[0070] Furthermore, in the present embodiment, each of the plurality of control systems (System 1 and System 2) controls the tool holder, the turret, the table, and / or the spindle to machine a workpiece, and the tool holder, the turret, the table, and / or the spindle are controlled based on the variables of the target system updated by the numerical control device 2. In the present embodiment, the first turret 51, the second turret, the table 53, and the table 54 are control targets.

[0071] Since each of the plurality of control systems includes the tool holder and / or the turret and / or the table and / or the spindle, it is possible to implement efficient creation of a control program using variables even in a case where different controls are set.

[0072] The present disclosure is not limited to the above embodiment, and various changes and variations are possible. Explanation of reference symbols 1 Numerical control system 2 Numerical control device 3 Robot control device 20 machine tools 30 robots 31 storage unit 32 Program input unit 33 Analysis Unit 37 System Settings Unit 39 Data communication unit QUOTES CONTAINED IN THE DESCRIPTION

[0000] This list of documents submitted by the applicant was generated automatically and is included solely for the convenience of the reader. This list is not part of the German patent or utility model application. The DPMA assumes no liability for any errors or omissions. Cited patent literature

[0000] JP 2021-009480

[0004] JP 2018-124910

[0004]

Claims

[1] A robot control device comprising: a program input unit that acquires a robot control program for controlling a robot from a storage unit; an analysis unit that analyzes the robot control program input from the program input unit and acquires a read command and a write command in which a variable of a numerical control program controlling a numerical control device and system information specifying a target system from a plurality of control systems possessed by the numerical control device are set; a system setting unit that issues a command to read and write a variable of the target system based on information acquired by the analysis unit; and a data communication unit that updates the variables of the target system, to be executed in the numerical control device by sending a command to read and write the variables of the target system to the numerical control device. [2] The robot control device according to claim 1, wherein the analysis unit outputs a command to perform robot control to mesh with the plurality of control systems controlled by the numerical control device based on the variables of the target system that have been updated. [3] The robot control device according to claim 1 or 2, wherein each of the plurality of control systems machines a workpiece by controlling at least one of a tool holder, a turret, a table, and a spindle, and wherein the tool holder, the turret, the table, and / or the spindle are controlled based on the variables of the target system updated by the numerical control device. [4] A numerical control system comprising: a numerical control device having a plurality of control systems; and a robot control device that cooperates with the numerical control device to control a robot, wherein the robot control device comprises: a program input unit that acquires a robot control program for controlling a robot from a storage unit; an analysis unit that analyzes the robot control program input from the program input unit and acquires a read command and a write command in which a variable of a numerical control program that controls the numerical control device and system information specifying a target system from a plurality of control systems that the numerical control device has are set; a system setting unit that issues a command to read and write a variable of the target system based on the information acquired by the analysis unit; and a data communication unit that transmits a command for reading and writing a variable of the target system to the numerical control device, and wherein the numerical control device performs an update of the variables of the target system based on a command for reading and writing a variable of the target system received from the robot control device. [5] The numerical control system according to claim 4, wherein the analysis unit outputs a command to perform robot control to mesh with the plurality of control systems controlled by the numerical control device based on the variable of the target system that has been updated. [6] A numerical control system according to claim 4 or 5, wherein each of the plurality of control systems machines a workpiece by controlling a tool holder and / or a turret and / or a table and / or a spindle, and wherein the tool holder and / or the turret and / or the table and / or the spindle are controlled based on the variables of the target system updated by the numerical control device. [7] A numerical control method for interlockingly controlling a robot control device and a numerical control device with each other, the numerical control method comprising: a program input step of acquiring a robot control program for controlling a robot from a storage unit; an analysis step for analyzing the robot control program inputted in the program input step and acquiring a read command and a write command in which a variable of a numerical control program controlling the numerical control device and system information specifying a target system from a plurality of control systems possessed by the numerical control device are set; a system setting step for issuing a command for reading and writing a variable of the target system based on the information obtained in the analysis step; and a robot control device updating step that updates a variable of the target system to be executed in the numerical control device by transmitting a command for reading and writing the variables of the target system to the numerical control device.

Citation Information

Patent Citations

  • Processing system in which mobile robot carries item into or out of processing machine, and machine controller

    JP2018124910A

  • Parameter management device and management system

    JP2021009480A

  • manufacturing system for controlling several types of manufacturing devices with one program based on the common language specification

    DE102017000864A1

  • Machine tool control device and manufacturing system

    DE102018206241B4

  • machine tool system

    DE102019129041A1