WO2022097719A1 - 数値制御システム及び産業機械の制御方法 - Google Patents
数値制御システム及び産業機械の制御方法 Download PDFInfo
- Publication number
- WO2022097719A1 WO2022097719A1 PCT/JP2021/040773 JP2021040773W WO2022097719A1 WO 2022097719 A1 WO2022097719 A1 WO 2022097719A1 JP 2021040773 W JP2021040773 W JP 2021040773W WO 2022097719 A1 WO2022097719 A1 WO 2022097719A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- variable
- robot
- value
- machine tool
- control module
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 32
- 230000033001 locomotion Effects 0.000 claims description 9
- 238000004891 communication Methods 0.000 claims description 6
- 230000005540 biological transmission Effects 0.000 description 20
- 238000003754 machining Methods 0.000 description 15
- 238000010586 diagram Methods 0.000 description 7
- 230000000694 effects Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000005553 drilling Methods 0.000 description 1
- 238000000227 grinding Methods 0.000 description 1
- 238000001746 injection moulding Methods 0.000 description 1
- 238000003801 milling Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/418—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
- G05B19/41815—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by the cooperation between machine tools, manipulators and conveyor or other workpiece supply system, workcell
- G05B19/41825—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by the cooperation between machine tools, manipulators and conveyor or other workpiece supply system, workcell machine tools and manipulators only, machining centre
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/18—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
- G05B19/4155—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by programme execution, i.e. part programme or machine function execution, e.g. selection of a programme
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/39—Robotics, robotics to robotics hand
- G05B2219/39001—Robot, manipulator control
Definitions
- This disclosure relates to a numerical control system and a control method for industrial machinery.
- This disclosure has been made in view of the above problems, and provides a numerical control system and an industrial machine control method capable of easily interlocking a machine tool and a robot.
- One aspect of the present disclosure is a numerical control device having a first control unit that controls the operation of the machine tool based on a numerical control program in a numerical control system that controls the operation of the machine tool and the robot in conjunction with each other, and a robot.
- a robot control device having a second control unit that controls the operation of the robot based on a control program, and a storage device that stores the values of variables that can be read and written by the first control unit and the second control unit are provided.
- the first control unit reads the value of the variable stored in the storage device, controls the operation of the machine tool based on the value of the read variable, and the second control unit controls the operation of the machine tool.
- a numerical control system that reads the value of a variable stored in the machine tool and controls the operation of the robot based on the value of the read variable.
- One aspect of the present disclosure includes a first control unit that controls the operation of a machine tool based on a numerical control program, a second control unit that controls the operation of a robot based on a robot control program, the first control unit, and the first control unit.
- a numerical control system including a storage device for storing the values of variables that can be read and written by the second control unit, the first. 1
- the control unit reads out the value of the variable stored in the storage device and controls the operation of the machine tool based on the value of the read out variable, and the second control unit is in the storage device.
- a control method of an industrial machine comprising a step of reading out a stored variable value and controlling the operation of the robot based on the read-out variable value.
- the numerical control system includes a first control unit that controls the operation of a machine tool based on a numerical control program, a second control unit that controls the operation of a robot based on a robot control program, and the like.
- a storage device for storing the values of variables that can be read and written from both the first control unit and the second control unit is provided.
- the first control unit reads the value of the rewritable variable from the second control unit, controls the operation of the machine tool based on the read variable value, and the second control unit can be rewritten from the first control unit.
- the value of the variable is read, and the operation of the robot is controlled based on the value of the read variable.
- notifications and requests from the first control unit to the second control unit, notifications and requests from the second control unit to the first control unit, and the like can be transmitted from both sides via variables that can be read and written. Since this can be done, the machine tool and the robot can be easily linked without adding a new I / O signal or an external device or editing an existing ladder circuit. Further, according to one aspect of the present disclosure, it is possible to correspond to various automation forms only by storing the values of various variables in the storage device.
- FIG. 1 is a schematic diagram of the numerical control system 1 according to the present embodiment.
- the numerical control system 1 includes a machine tool 2 for processing a workpiece (not shown), a numerical control device (CNC) 5 for controlling the operation of the machine tool 2, a robot 3 provided in the vicinity of the machine tool 2, and a robot 3.
- the robot control device 6 for controlling the operation of the above is provided.
- the numerical control system 1 controls the operations of the machine tool 2 and the robot 3 in conjunction with each other by using the numerical control device 5 and the robot control device 6 which are connected to each other so as to be able to communicate with each other.
- the machine tool 2 is, for example, a lathe, a drilling machine, a milling machine, a grinding machine, a laser processing machine, an injection molding machine, and the like, but is not limited thereto.
- the machine tool 2 is provided in a work machining operation (not shown), a chuck opening / closing operation for gripping the work, and a work machining area in response to various command signals transmitted from the numerical control device 5 according to a procedure described later. Performs various operations such as opening and closing the door.
- the robot 3 operates under the control of the robot control device 6, and performs a predetermined work on a work machined by, for example, a machine tool 2.
- the robot 3 is, for example, an articulated robot, and a tool 32 for gripping, processing, and inspecting a work is attached to the arm tip portion 31 thereof.
- the robot 3 is a 6-axis articulated robot
- the robot 3 is not limited to this.
- the case where the robot 3 is a 6-axis articulated robot will be described, but the number of axes is not limited to this.
- the numerical control device 5 and the robot control device 6 have arithmetic processing means such as a CPU (Central Processing Unit), auxiliary storage means such as an HDD (Hard Disk Drive) and SSD (Solid State Drive) storing various programs, and arithmetic processing, respectively.
- Main storage means such as RAM (Random Access Memory) for storing data temporarily required for the means to execute a program, operation means such as a keyboard on which the operator performs various operations, and various information is displayed to the operator.
- It is a computer composed of hardware such as display means such as a display.
- the robot control device 6 and the numerical control device 5 can transmit and receive various signals to and from each other by, for example, Ethernet (registered trademark).
- FIG. 2 is a functional block diagram of the numerical control device 5 and the robot control device 6.
- the numerical control device 5 includes a machine tool control module 50 as a first control unit for controlling the operation of the machine tool 2 according to the above hardware configuration, a storage unit 51 for storing a numerical control program, and a machine tool.
- a variable storage unit 58 for storing the values of a plurality of readable and writable variables and a data transmission / reception unit 59 are realized by the machine control module 50 and the robot control module 60 described later.
- the storage unit 51 stores a numerical control program for controlling the operation of the machine tool 2 (for example, the movement operation of the control shaft, the rotation operation of the spindle, the opening / closing operation of the chuck, the opening / closing operation of the door, etc.). ..
- the numerical control program stored in the storage unit 51 is created in advance by the operator in order to control the operation of the machine tool 2 in conjunction with the operation of the robot 3 under the control of the robot control device 6, and is created in advance by the operator, such as a G coat or M. It is described in a programming language that uses code and the like.
- the machine tool control module 50 reads and writes the values of the variables stored in the variable storage unit 58 based on the numerical control program, and controls the operation of the machine tool 2. More specifically, the machine tool control module 50 includes a program input unit 52, an input analysis unit 53, an interpolation control unit 54, an I / O control unit 55, and a servo control unit 56.
- the program input unit 52 reads a numerical control program from the storage unit 51 and inputs it to the sequential input analysis unit 53.
- the input analysis unit 53 sequentially analyzes the command type based on the numerical control program input from the program input unit 52 for each block, and outputs the analysis result to the I / O control unit 55, the interpolation control unit 54, and the variable storage unit 58. Send.
- the input analysis unit 53 commands, for example, the opening / closing of the chuck of the machine tool 2 or the opening / closing of the door of the machine tool 2 when the type of the command acquired based on the numerical control program is.
- the acquired command is input to the I / O control unit 55.
- the I / O control unit 55 inputs an I / O signal corresponding to the input command to the machine tool 2.
- the chuck and door of the machine tool 2 are opened and closed according to the procedure specified by the numerical control program.
- the input analysis unit 53 inputs the acquired command to the interpolation control unit 54.
- the interpolation control unit 54 calculates the movement path of the control axis according to the command by performing interpolation processing, and inputs the calculated movement path to the servo control unit 56.
- the servo control unit 56 feedback-controls the servomotor of the machine tool 2 so that the control axis moves along the movement path calculated by the interpolation control unit 54.
- the operation of the machine tool 2 is controlled by the procedure defined by the numerical control program.
- the input analysis unit 53 stores, for example, when the type of the command acquired based on the numerical control program commands the reading of the value of the variable stored in the variable storage unit 58, or stores it in the variable storage unit 58.
- the command is to rewrite the value of the variable, the acquired command is input to the variable storage unit 58.
- the variable storage unit 58 includes a variable memory 58m for storing the values of a plurality of variables, and is input from the robot control module 60 described later of the robot control device 6 via a command input from the input analysis unit 53 or a data transmission / reception unit 59.
- the value of the variable stored in the variable memory 58m is read or rewritten according to the command to be issued.
- variable memory 58m is designated by a number or a character string in the numerical control program for controlling the operation of the machine tool 2 in the machine tool control module 50 and the robot control program for controlling the operation of the robot 3 in the robot control module 60.
- a part of macro variables for example, # 100 to # 199, # 500 to # 599
- many numerical control devices is assigned as the variables stored by the variable memory 58m. However, it is not limited to this.
- variable storage unit 58 When a command to read the value of the variable stored in the variable memory 58m is input from the input analysis unit 53, the variable storage unit 58 reads the value of the variable specified by the command from the variable memory 58m and reads the read value. It is transmitted to the input analysis unit 53. Further, when a command for rewriting the value of the variable stored in the variable memory 58m is input from the input analysis unit 53, the variable storage unit 58 sets the value of the variable specified by the command in the variable memory 58m according to the command. Rewrite to. As a result, the machine tool control module 50 can read and rewrite the value of the variable stored in the variable memory 58m.
- variable storage unit 58 When a command to read the value of the variable stored in the variable memory 58m is input from the robot control module 60 via the data transmission / reception unit 59, the variable storage unit 58 is the value of the variable specified by the command from the variable memory 58m. Is read, and the read value is transmitted to the robot control module 60 via the data transmission / reception unit 59. Further, when a command for rewriting the value of the variable stored in the variable memory 58m is input from the robot control module 60 via the data transmission / reception unit 59, the variable storage unit 58 is a variable specified by the command in the variable memory 58m. Rewrite the value to the value according to the command. As a result, the robot control module 60 can read and rewrite the value of the variable stored in the variable memory 58m.
- the variable memory 58m is a first storage area 581 that stores the values of a plurality of first variables that are supposed to be used for notifications and requests from the machine tool control module 50 to the robot control module 60, and works from the robot control module 60. It includes a second storage area 582 that stores the values of a plurality of second variables that are supposed to be used for notifications and requests to the machine control module 50.
- a case where variables # 500 to # 599 are assigned as the first variable and variables # 100 to # 199 are assigned as the second variable will be described.
- the first variable stored in the first storage area 581 is used for notifications and requests from the machine tool control module 50 to the robot control module 60
- the machine tool control module 50 and the robot control module 60 It is preferable that it can be read from both sides and at least rewritable from the machine tool control module 50.
- the second variable stored in the second storage area 582 is expected to be used for notifications and requests from the robot control module 60 to the machine tool control module 50
- the machine tool control module 50 and the robot control module 60 It is preferable that the robot can be read from both of the above and at least rewritable from the robot control device 6.
- the first variable # 500 is assigned, for example, from the machine tool control module 50 to the robot control module 60 to notify the stop state of the spindle of the machine tool 2.
- the value of the first variable # 500 is 0, it means that the spindle of the machine tool 2 is in operation, and when the value of the first variable # 500 is 1, the spindle of the machine tool 2 is stopped. Show that.
- the first variable # 501 notifies, for example, from the machine tool control module 50 to the robot control module 60 that each axis of the machine tool 2 is retracted to a position outside the interference region when the robot 3 invades. Assigned for.
- the value of the first variable # 501 is 0, it means that each axis of the machine tool 2 exists in a predetermined interference region, and when the value of the first variable # 501 is 1, each of the machine tools 2 The axis indicates that it is outside the interference region.
- the first variable # 502 is assigned, for example, from the machine tool control module 50 to the robot control module 60 to notify the open / closed state of the door of the machine tool 2.
- the value of the first variable # 502 is 0, it means that the door of the machine tool 2 is not open, and when the value of the first variable # 502 is 1, the door of the machine tool 2 is opened. Indicates that it is in a state.
- the first variable # 503 is assigned, for example, from the machine tool control module 50 to the robot control module 60 to request the exchange of the work of the machine tool 2.
- the value of the first variable # 503 is 0, it means that the work exchange is not requested, and when the value of the first variable # 503 is 1, the work exchange is requested. Indicates that.
- the second variable # 100 is assigned, for example, from the robot control module 60 to the machine tool control module 50 in order to request the stop of the numerical control program being executed in the machine tool control module 50.
- the value of the second variable # 100 is 0, it means that the stop of the numerical control program is not requested, and when the value of the second variable # 100 is 1, the stop of the numerical control program is requested. Indicates that it is in a state of being.
- the second variable # 101 is assigned, for example, from the robot control module 60 to the machine tool control module 50 in order to request the opening operation of the door of the machine tool 2.
- the value of the second variable # 101 is 0, it means that the door opening operation is not requested, and when the value of the second variable # 101 is 1, the door opening operation is requested. Indicates that you are in a state of being.
- the second variable # 102 is assigned, for example, from the robot control module 60 to the machine tool control module 50 in order to request the closing operation of the door of the machine tool 2.
- the value of the second variable # 102 is 0, it means that the door closing operation is not requested, and when the value of the second variable # 102 is 1, the door closing operation is requested. Indicates that you are in a state of being.
- the second variable # 103 is assigned, for example, from the robot control module 60 to the machine tool control module 50 in order to request the opening operation of the chuck of the machine tool 2.
- the value of the second variable # 103 is 0, it means that the chuck opening operation is not requested, and when the value of the second variable # 103 is 1, the chuck opening operation is requested. Indicates that you are in a state of being.
- the second variable # 104 is assigned, for example, from the robot control module 60 to the machine tool control module 50 in order to request the closing operation of the chuck of the machine tool 2.
- the value of the second variable # 104 is 0, it means that the chuck closing operation is not requested, and when the value of the second variable # 104 is 1, the chuck closing operation is requested. Indicates that you are in a state of being.
- the second variable # 105 is assigned, for example, from the robot control module 60 to the machine tool control module 50 in order to request the machine tool 2 to execute the first machining.
- the value of the second variable # 105 is 0, it means that the execution of the first machining is not requested, and when the value of the second variable # 105 is 1, the execution of the first machining is requested. Indicates that it is in a state of being.
- the second variable # 106 is assigned, for example, from the robot control module 60 to the machine tool control module 50 in order to request the machine tool 2 to execute the second machining.
- the value of the second variable # 106 is 0, it means that the execution of the second machining is not requested, and when the value of the second variable # 106 is 1, the execution of the second machining is requested. Indicates that it is in a state of being.
- the second variable # 107 is assigned, for example, from the robot control module 60 to the machine tool control module 50 in order to request the machine tool 2 to execute the third machining.
- the value of the second variable # 107 is 0, it means that the execution of the third machining is not requested, and when the value of the second variable # 107 is 1, the execution of the third machining is requested. Indicates that it is in a state of being.
- the second variable # 150 is assigned, for example, from the robot control module 60 to the machine tool control module 50 to notify the operating state of the robot 3.
- the value of the second variable # 150 is 0, it indicates that the robot 3 is in operation, and when the value of the second variable # 150 is 1, it indicates that the operation of the robot 3 is completed. ..
- the values of the plurality of variables stored in the variable memory 58m are reset to predetermined initial values (for example, 0) in response to turning on the numerical control device 5.
- the robot control device 6 includes a robot control module 60 as a second control unit that controls the operation of the robot 3, a storage unit 61 that stores a robot control program, and data according to the hardware configuration.
- Various functions such as the transmission / reception unit 69 are realized.
- the storage unit 61 stores a robot control program for controlling the operation of the robot 3.
- the robot control program stored in the storage unit 61 is created in advance by an operator in order to control the operation of the robot 3 in conjunction with the operation of the machine tool 2 under the control of the numerical control device 5.
- the robot control module 60 reads and writes the values of the variables stored in the variable storage unit 58 based on the robot control program, and controls the operation of the robot 3. More specifically, the robot control module 60 includes a program input unit 62, an input analysis unit 63, a locus control unit 64, an I / O control unit 65, and a servo control unit 66.
- the program input unit 62 reads out the robot control program from the storage unit 61 and inputs it to the sequential input analysis unit 63.
- the input analysis unit 63 sequentially analyzes the command type based on the robot control program input from the program input unit 62 for each block, and outputs the analysis result to the locus control unit 64, the I / O control unit 65, and the data transmission / reception unit 69. Send.
- the input analysis unit 63 controls the acquired command in a trajectory. Input to unit 64.
- the locus control unit 64 calculates the motion locus of the control point when moving the control point of the robot 3 to the position designated by the command, and responds to the calculated motion locus.
- the angle of each joint of the robot 3 is calculated as a target angle, and these target angles are transmitted to the servo control unit 66.
- the servo control unit 66 generates a robot control signal for the robot 3 by feedback-controlling each servomotor of the robot 3 so that the target angle of each joint transmitted from the locus control unit 64 is realized. Input to the servo motor. As a result, the operation of the robot 3 is controlled by the procedure defined in the robot control program.
- the input analysis unit 63 receives the acquired command as I /. Input to the O control unit 65.
- the I / O control unit 65 inputs an I / O signal corresponding to the input command to the tool 32.
- the tool 32 of the robot 3 operates according to the procedure defined by the robot control program.
- the input analysis unit 63 stores, for example, when the type of the command acquired based on the robot control program commands the reading of the value of the variable stored in the variable storage unit 58, or stores it in the variable storage unit 58.
- the command is to rewrite the value of the variable, the acquired command is input to the data transmission / reception unit 69.
- the data transmission / reception unit 69 When the data transmission / reception unit 69 receives a command for reading a variable value from the input analysis unit 63, the data transmission / reception unit 69 transmits the command to the data transmission / reception unit 59 of the numerical control device 5. As described above, when such a read command is input, the variable storage unit 58 reads the value of the variable specified by the command from the variable memory 58m, and uses the read value as the data transmission / reception unit 59 and the data transmission / reception unit 69. It is sent back to the input analysis unit 63 via.
- the data transmission / reception unit 69 When the data transmission / reception unit 69 receives a command for rewriting the value of the variable from the input analysis unit 63, the data transmission / reception unit 69 transmits the command to the data transmission / reception unit 59 of the numerical control device 5. As described above, when such a rewrite command is input, the variable storage unit 58 rewrites the value of the variable specified by the command in the variable memory 58m to the value corresponding to the command. As a result, the robot control module 60 can read and rewrite the value of the variable stored in the variable memory 58m.
- the first variable rewriting process, the second variable rewriting process, the first variable reading process, the second variable reading process, the machine tool control process, and the robot control described below are performed.
- the operations of the machine tool 2 and the robot 3 are controlled in conjunction with each other.
- the machine tool control module 50 rewrites the value of the first variable stored in the first storage area 581 of the variable memory 58m according to the numerical control program. As a result, various notifications and requests can be transmitted from the machine tool control module 50 to the robot control module 60.
- the robot control module 60 rewrites the value of the second variable stored in the second storage area 582 of the variable memory 58m according to the robot control program. As a result, various notifications and requests can be transmitted from the robot control module 60 to the machine tool control module 50.
- the machine tool control module 50 reads out the value of the second variable stored in the second storage area 582 of the variable memory 58m according to the numerical control program. As described above, the value of the second variable is appropriately rewritten by the robot control module 60 in the second variable rewriting step. Therefore, the machine tool control module 50 can acquire various notifications and requests from the robot control module 60 by reading the value of the second variable.
- the robot control module 60 reads out the value of the first variable stored in the first storage area 581 of the variable memory 58m according to the robot control program. As described above, the value of the first variable is appropriately rewritten by the machine tool control module 50 in the first variable rewriting step. Therefore, the robot control module 60 can acquire various notifications and requests from the machine tool control module 50 by reading the value of the first variable.
- the machine tool control module 50 controls the operation of the machine tool 2 based on the numerical control program and the value of the second variable read in the second variable reading process. As a result, the operation of the machine tool 2 can be controlled at a timing and mode determined based on various notifications and requests transmitted from the robot control module 60.
- the robot control module 60 controls the operations of the robot 3 and the tool 32 based on the robot control program and the value of the first variable read in the first variable reading step. Thereby, the operation of the robot 3 can be controlled at the timing and the mode determined based on various notifications and requests transmitted from the machine tool control module 50.
- FIG. 3 is a diagram showing a first example of a numerical control program executed in the machine tool control module 50.
- the machine tool control module 50 has various commands “G00”, “M03”, “G83”, and “G03” for machining the work by the machine tool 2. G80 ”is input. As a result, the machine tool control module 50 controls the operation of the machine tool 2 according to the procedure defined by the numerical control program, and processes the work.
- the command "S0" for stopping the rotation of the spindle of the machine tool 2 is input to the machine tool control module 50.
- the machine tool control module 50 stops the rotation of the spindle of the machine tool 2.
- the command "G00” for retracting each axis of the machine tool 2 to the outside of the predetermined interference region is input to the machine tool control module 50.
- the machine tool control module 50 moves each axis of the machine tool 2 to the position designated by the command “G00”.
- the command "M88" for opening the door of the machine tool 2 is input to the machine tool control module 50.
- the machine tool control module 50 opens the door of the machine tool 2.
- the robot control module 60 reads out the values of the first variables # 500, # 501, # 502, and # 503 in a predetermined cycle according to the robot control program. Further, the robot control module 60 is used when the values of the first variables # 500, # 501, # 502, and # 503 stored in the first storage area 581 of the variable memory 58 m are all "1", that is, the machine tool.
- the main shaft of No. 2 is stopped, each shaft is outside the interference region, the door is open, and the machine tool control module 50 requests a work replacement operation.
- the operation of the robot 3 and the tool 32 is controlled according to a predetermined procedure in the robot control program, and the workpieces are exchanged.
- the robot control module 60 when the execution of the block indicated by the sequence number “N34” is completed, the robot control module 60 starts the work exchange operation using the robot 3 and the tool 32. Further, when the work exchange operation is completed, the robot control module 60 changes the value of the second variable # 150 stored in the second storage area 582 of the variable memory 58 m from the initial value "0" to "0" according to the robot control program. Rewrite to 1 ".
- the machine tool control module 50 reads the value of the second variable # 150 and determines whether or not the read value is “0” in a predetermined cycle. Judge repeatedly. That is, the machine tool control module 50 is in a state of waiting for the completion of the work exchange operation by the robot control module 60.
- the value of the second variable # 150 read out by the machine tool control module 50 is "1"
- the robot control module 60 notifies that the work exchange operation is completed
- the machine tool control module 50 withdraws the request for the work exchange operation from the robot control module 60.
- the command "M89” for closing the door of the machine tool 2 is input to the machine tool control module 50.
- the machine tool control module 50 closes the door of the machine tool 2.
- the machine tool control module 50 notifies the robot control module 60 that the door of the machine tool 2 is in the closed state, and the first variable # 502 stored in the first storage area 581 of the variable memory 58 m. Rewrite the value of from "1" to "0".
- the machine tool control module 50 receives various commands "M03" and "G00" for processing the replaced new workpiece by the machine tool 2. Entered. As a result, the machine tool control module 50 controls the operation of the machine tool 2 according to the procedure defined by the numerical control program, and processes the work.
- FIG. 4 is a diagram showing a second example of a numerical control program executed in the machine tool control module 50.
- the robot control module 60 controls the operation of the robot 3 according to the robot control program, and rewrites the values of the second variables # 100 to # 107 stored in the second storage area 582 of the variable memory 58 m according to the robot control program. ..
- the numerical control program shown in FIG. 4 monitors the request from the robot control module 60 by reading the values of the second variables # 100 to # 107 in the machine tool control module 50 at a predetermined cycle, and reads out the second variable.
- the operation of the machine tool 2 is controlled according to the values of the variables # 100 to # 107.
- the machine tool control module 50 reads the value of the second variable # 101 stored in the second storage area 582 of the variable memory 58m, and the read value. Is determined to be "1". Further, the machine tool control module 50 calls a subprogram when the value of the second variable # 101 is "1", that is, when the robot control module 60 requests the opening operation of the door of the machine tool 2. In accordance with the command "M98", the subprogram with the program number "0001" is called, and if the value of the second variable # 101 is "0", the process moves to the next block.
- FIG. 5 is a diagram showing an example of a subprogram of the program number “0001”.
- the machine tool control module 50 opens the door of the machine tool 2 according to the command “M88”, and then resets the value of the second variable # 101 to “0”. , Return to the main program shown in FIG. 4 according to the command "M99".
- the machine tool control module 50 reads the value of the second variable # 102 stored in the second storage area 582 of the variable memory 58m, and the read value. Is determined to be "1". Further, the machine tool control module 50 has a program number “0002” when the value of the second variable # 102 is “1”, that is, when the robot control module 60 requests the closing operation of the door of the machine tool 2. ”, And if the value of the second variable # 102 is“ 0 ”, the process moves to the next block. Here, the machine tool control module 50 closes the door of the machine tool 2 by executing the subprogram of the program number “0002”, resets the value of the second variable # 102 to “0”, and then shows FIG. Return to the main program shown.
- the machine tool control module 50 reads the value of the second variable # 103 stored in the second storage area 582 of the variable memory 58m, and the read value. Is determined to be "1". Further, in the machine tool control module 50, when the value of the second variable # 103 is "1", that is, when the robot control module 60 requests the opening operation of the chuck of the machine tool 2, the program number "0003". ”, And if the value of the second variable # 103 is“ 0 ”, the process moves to the next block. Here, the machine tool control module 50 closes the chuck of the machine tool 2 by executing the subprogram of the program number “0003”, resets the value of the second variable # 103 to “0”, and then shows FIG. Return to the main program shown.
- the machine tool control module 50 reads the value of the second variable # 103 stored in the second storage area 582 of the variable memory 58m, and the read value. Is determined to be "1". Further, in the machine tool control module 50, when the value of the second variable # 103 is "1", that is, when the robot control module 60 requests the opening operation of the chuck of the machine tool 2, the program number "0003". ”, And if the value of the second variable # 103 is“ 0 ”, the process moves to the next block. Here, the machine tool control module 50 closes the chuck of the machine tool 2 by executing the subprogram of the program number “0003”, resets the value of the second variable # 103 to “0”, and then shows FIG. Return to the main program shown.
- the machine tool control module 50 reads out the value of the second variable # 105 stored in the second storage area 582 of the variable memory 58m, and the read-out value. Is determined to be “1". Further, the machine tool control module 50 has a program number “0005” when the value of the second variable # 105 is “1”, that is, when the robot control module 60 requests the first machining operation by the machine tool 2. ”, And if the value of the second variable # 105 is“ 0 ”, the process moves to the next block.
- the machine tool control module 50 executes the first machining operation of the machine tool 2 by executing the subprogram of the program number "0005", and after resetting the value of the second variable # 105 to "0". , Return to the main program shown in FIG.
- the machine tool control module 50 reads out the value of the second variable # 100 stored in the second storage area 582 of the variable memory 58m, and the read-out value. Is determined to be "0". Further, the machine tool control module 50 is indicated by the sequence number “N50” when the value of the second variable # 100 is “0”, that is, when the robot control module 60 does not request the stop of the numerical control program. Return to the block and monitor the values of the second variables # 100 to # 107 again. Further, the machine tool control module 50 is indicated by the sequence number “N110” when the value of the second variable # 100 is “1”, that is, when the robot control module 60 requests the stop of the numerical control program. Move to the block and end the numerical control program shown in FIG.
- the machine tool control module 50 is predetermined until the value of the second variable # 100 is rewritten from "0" to "1", in other words, until the robot control module 60 requests the stop of the numerical control program.
- the request from the robot control module 60 is monitored by reading the values of the second variables # 101 to # 107 in the cycle of, and any value of the second variables # 101 to # 107 is set to "0" by the robot control module 60.
- the operation of the machine tool 2 is controlled at the rewritten timing in an manner corresponding to the rewritten second variable.
- the numerical control system 1 includes a machine tool control module 50 that controls the operation of the machine tool 2 based on the numerical control program, a robot control module 60 that controls the operation of the robot 3 based on the robot control program, and control of these machine tools. It includes a variable storage unit 58 that stores the values of a plurality of variables that can be read and written from both the module 50 and the robot control module 60.
- the machine tool control module 50 reads a value of a rewritable variable from the robot control module 60, controls the operation of the machine machine 2 based on the value of the read variable, and the robot control module 60 controls the machine machine control module 50.
- the value of the rewritable variable is read from, and the operation of the robot 3 is controlled based on the value of the read variable.
- the numerical control system 1 notifications and requests from the machine tool control module 50 to the robot control module 60, notifications and requests from the machine tool control module 60 to the machine tool control module 50, and the like are transmitted from both sides via variables that can be read and written. Therefore, the machine tool 2 and the robot 3 can be easily linked without adding a new I / O signal or an external device or editing an existing ladder circuit. Further, according to the numerical control system 1, it is possible to correspond to various automation forms only by storing the values of various variables in the variable storage unit 58.
- the machine tool control module 50 reads and writes the values of the variables stored in the variable storage unit 58 based on the numerical control program
- the robot control module 60 reads and writes the variable values stored in the variable storage unit 58 based on the robot control program. Read and write the value of the variable stored in 58. That is, in the numerical control system 1, variables defined in the numerical control program and the robot control program are used as variables used for transmitting notifications and requests between the machine tool control module 50 and the robot control module 60. As a result, the operation of the machine tool 2 and the operation of the robot 3 can be controlled in conjunction with each other without updating the software of the existing numerical control device 5 and the robot control device 6.
- the first storage area 581 of the variable storage unit 58 stores the value of the first variable rewritten according to the numerical control program
- the second storage area 582 of the variable storage unit 58 is rewritten according to the robot control program.
- the value of the second variable is stored, and the machine tool control module 50 controls the operation of the machine tool 2 based on the value of the second variable, rewrites the value of the first variable according to the numerical control program, and the robot control module.
- 60 controls the operation of the robot 3 based on the value of the first variable, and rewrites the value of the second variable according to the robot control program.
- the machine tool control module 50 sends notifications and requests to the robot control module 60 using the first variable, and the machine tool control module 60 uses the second variable to control the machine tool. Notifications, requests, etc. can be sent to the module 50.
- the machine machine control module 50 of the numerical control device 5 and the robot control module 60 of the robot control device 6 can communicate with each other via the data transmission / reception units 59 and 69, and the variable storage unit 58 is the numerical control device.
- the robot control module 60 provided in No. 5 reads and writes the values of the variables stored in the variable storage unit 58 via communication using the data transmission / reception units 59 and 69.
- the operation of the machine tool 2 and the operation of the robot 3 can be controlled in conjunction with each other without adding a new external device for storing the value of the variable.
- variable storage unit 58 for storing the values of a plurality of variables readable and writable by both the machine tool control module 50 and the robot control module 60 is provided in the numerical control device 5 has been described. Not limited to.
- variable storage unit may be provided in, for example, a robot control device that is communicably connected to the numerical control device.
- the machine tool control module of the numerical control device can read and write the value of the variable stored in the variable storage unit provided in the robot control device via the above communication, and is therefore substantially the same as the above embodiment. It works.
- variable storage unit may be provided in, for example, a server connected to the numerical control device and the robot control device so as to be able to communicate with each other.
- the machine tool control module of the numerical control device and the robot control module of the robot control device can read and write the values of the variables stored in the variable storage unit provided in the server, respectively, via the above communication. , It has almost the same effect as the above embodiment.
Landscapes
- Engineering & Computer Science (AREA)
- Manufacturing & Machinery (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- General Engineering & Computer Science (AREA)
- Quality & Reliability (AREA)
- Human Computer Interaction (AREA)
- Numerical Control (AREA)
Abstract
Description
図5に示すようなサブプログラムが呼び出されると、工作機械制御モジュール50は、コマンド“M88”に従って工作機械2のドアを開いた後、第2変数#101の値を“0”にリセットした後、コマンド“M99”に従って図4に示すメインプログラムに復帰する。
数値制御システム1は、数値制御プログラムに基づいて工作機械2の動作を制御する工作機械制御モジュール50と、ロボット制御プログラムに基づいてロボット3の動作を制御するロボット制御モジュール60と、これら工作機械制御モジュール50及びロボット制御モジュール60の双方から読み書き可能な複数の変数の値を記憶する変数記憶部58と、を備える。工作機械制御モジュール50は、ロボット制御モジュール60から書き換え可能な変数の値を読み出し、この読み出した変数の値に基づいて工作機械2の動作を制御し、ロボット制御モジュール60は、工作機械制御モジュール50から書き換え可能な変数の値を読み出し、この読み出した変数の値に基づいてロボット3の動作を制御する。数値制御システム1によれば、工作機械制御モジュール50からロボット制御モジュール60への通知及び要求やロボット制御モジュール60から工作機械制御モジュール50への通知及び要求等を、双方から読み書き可能な変数を介して行うことができるので、新たにI/O信号や外部機器を追加したり、既設のラダー回路を編集したりすることなく容易に工作機械2とロボット3とを連動させることができる。また数値制御システム1によれば、変数記憶部58に様々な変数の値を記憶させるだけで多様な自動化形態への対応も可能になる。
2…工作機械
3…ロボット
31…アーム先端部
32…ツール
5…数値制御装置
51…記憶部
50…工作機械制御モジュール(第1制御部)
58…変数記憶部(記憶装置)
58m…変数メモリ
581…第1記憶領域
582…第2記憶領域
59…データ送受信部
6…ロボット制御装置
61…記憶部
60…ロボット制御モジュール
69…データ送受信部
Claims (9)
- 工作機械及びロボットの動作を連動して制御する数値制御システムにおいて、
数値制御プログラムに基づいて前記工作機械の動作を制御する第1制御部を有する数値制御装置と、
ロボット制御プログラムに基づいて前記ロボットの動作を制御する第2制御部を有するロボット制御装置と、
前記第1制御部及び前記第2制御部によって読み書き可能な変数の値を記憶する記憶装置と、を備え、
前記第1制御部は、前記記憶装置に記憶されている変数の値を読み出し、当該読み出した変数の値に基づいて前記工作機械の動作を制御し、
前記第2制御部は、前記記憶装置に記憶されている変数の値を読み出し、当該読み出した変数の値に基づいて前記ロボットの動作を制御する、数値制御システム。 - 前記第1制御部は、前記数値制御プログラムに基づいて前記記憶装置に記憶されている変数の値を読み書きし、
前記第2制御部は、前記ロボット制御プログラムに基づいて前記記憶装置に記憶されている変数の値を読み書きする、請求項1に記載の数値制御プログラム。 - 前記変数は、前記数値制御プログラム及び前記ロボット制御プログラムにおいて番号又は文字列によって指定される、請求項1又は2に記載の数値制御システム。
- 前記記憶装置は、前記第1制御部により前記数値制御プログラムに従って書き換えられる第1変数の値と、前記第2制御部により前記ロボット制御プログラムに従って書き換えられる第2変数の値と、を記憶し、
前記第1制御部は、前記第2変数の値に基づいて前記工作機械の動作を制御するとともに前記数値制御プログラムに従って前記第1変数の値を書き換え、
前記第2制御部は、前記第1変数の値に基づいて前記ロボットの動作を制御するとともに前記ロボット制御プログラムに従って前記第2変数の値を書き換える、請求項1から3の何れかに記載の数値制御システム。 - 前記数値制御装置と前記ロボット制御装置は通信可能であり、
前記記憶装置は、前記数値制御装置に設けられ、
前記第2制御部は、前記通信を介して前記記憶装置に記憶されている変数の値を読み書きする、請求項1から4の何れかに記載の数値制御システム。 - 前記数値制御装置と前記ロボット制御装置は通信可能であり、
前記記憶装置は、前記ロボット制御装置に設けられ、
前記第1制御部は、前記通信を介して前記記憶装置に記憶されている変数の値を読み書きすることを特徴とする請求項1から4の何れかに記載の数値制御システム。 - 前記記憶装置は、前記数値制御装置及び前記ロボット制御装置と通信可能に接続されたサーバに設けられ、
前記第1制御部及び前記第2制御部は、それぞれ前記通信を介して前記記憶装置に記憶されている変数の値を読み書きする、請求項1から4の何れかに記載の数値制御システム。 - 工作機械の動作を数値制御プログラムに基づいて制御する第1制御部と、ロボットの動作をロボット制御プログラムに基づいて制御する第2制御部と、前記第1制御部及び前記第2制御部によって読み書き可能な変数の値を記憶する記憶装置と、を備える数値制御システムを用いて前記工作機械及び前記ロボットの動作を連動して制御する産業機械の制御方法において、
前記第1制御部が、前記記憶装置に記憶されている変数の値を読み出し、当該読み出した変数の値に基づいて前記工作機械の動作を制御する工程と、
前記第2制御部は、前記記憶装置に記憶されている変数の値を読み出し、当該読み出した変数の値に基づいて前記ロボットの動作を制御する工程と、を備える、産業機械の制御方法。 - 前記第1制御部が、前記数値制御プログラムに従って前記記憶装置に記憶されている第1変数の値を書き換える工程と、
前記第2制御部が、前記ロボット制御プログラムに従って前記記憶装置に記憶されている第2変数の値を書き換える工程と、
前記第1制御部が、前記数値制御プログラムに従って前記第2変数の値を読み出し、当該第2変数の値に基づいて前記工作機械の動作を制御する工程と、
前記第2制御部が、前記ロボット制御プログラムに従って前記第1変数の値を読み出し、当該第1変数の値に基づいて前記ロボットの動作を制御する工程と、を備える、請求項8に記載の産業機械の制御方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202180074061.0A CN116368440A (zh) | 2020-11-09 | 2021-11-05 | 数值控制***以及工业机械的控制方法 |
JP2022560825A JP7522219B2 (ja) | 2020-11-09 | 2021-11-05 | 数値制御システム及び産業機械の制御方法 |
DE112021005055.9T DE112021005055T5 (de) | 2020-11-09 | 2021-11-05 | Numerisches Steuersystem und Verfahren zum Steuern von Industriemaschinen |
US18/251,774 US20240004371A1 (en) | 2020-11-09 | 2021-11-05 | Numerical control system, and method for controlling industrial machine |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020186407 | 2020-11-09 | ||
JP2020-186407 | 2020-11-09 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2022097719A1 true WO2022097719A1 (ja) | 2022-05-12 |
Family
ID=81457957
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2021/040773 WO2022097719A1 (ja) | 2020-11-09 | 2021-11-05 | 数値制御システム及び産業機械の制御方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20240004371A1 (ja) |
JP (1) | JP7522219B2 (ja) |
CN (1) | CN116368440A (ja) |
DE (1) | DE112021005055T5 (ja) |
WO (1) | WO2022097719A1 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7183488B1 (ja) * | 2022-06-09 | 2022-12-05 | 三菱電機株式会社 | 加工プログラム作成装置および加工プログラム作成方法 |
JP7256931B1 (ja) * | 2022-08-26 | 2023-04-12 | ファナック株式会社 | 数値制御システム、数値制御装置、産業用装置及びコンピュータプログラム |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5822412A (ja) * | 1981-08-04 | 1983-02-09 | Fanuc Ltd | 工業用ロボツト制御方式 |
JP2014241018A (ja) * | 2013-06-11 | 2014-12-25 | ファナック株式会社 | 工作機械とロボットを制御する制御装置 |
WO2020144772A1 (ja) * | 2019-01-09 | 2020-07-16 | 三菱電機株式会社 | 数値制御装置および数値制御方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6557282B2 (ja) | 2017-05-17 | 2019-08-07 | ファナック株式会社 | 工作機械制御装置及び生産システム |
-
2021
- 2021-11-05 US US18/251,774 patent/US20240004371A1/en active Pending
- 2021-11-05 WO PCT/JP2021/040773 patent/WO2022097719A1/ja active Application Filing
- 2021-11-05 CN CN202180074061.0A patent/CN116368440A/zh active Pending
- 2021-11-05 DE DE112021005055.9T patent/DE112021005055T5/de active Pending
- 2021-11-05 JP JP2022560825A patent/JP7522219B2/ja active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5822412A (ja) * | 1981-08-04 | 1983-02-09 | Fanuc Ltd | 工業用ロボツト制御方式 |
JP2014241018A (ja) * | 2013-06-11 | 2014-12-25 | ファナック株式会社 | 工作機械とロボットを制御する制御装置 |
WO2020144772A1 (ja) * | 2019-01-09 | 2020-07-16 | 三菱電機株式会社 | 数値制御装置および数値制御方法 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7183488B1 (ja) * | 2022-06-09 | 2022-12-05 | 三菱電機株式会社 | 加工プログラム作成装置および加工プログラム作成方法 |
WO2023238346A1 (ja) * | 2022-06-09 | 2023-12-14 | 三菱電機株式会社 | 加工プログラム作成装置および加工プログラム作成方法 |
JP7256931B1 (ja) * | 2022-08-26 | 2023-04-12 | ファナック株式会社 | 数値制御システム、数値制御装置、産業用装置及びコンピュータプログラム |
WO2024042728A1 (ja) * | 2022-08-26 | 2024-02-29 | ファナック株式会社 | 数値制御システム、数値制御装置、産業用装置及びコンピュータプログラム |
Also Published As
Publication number | Publication date |
---|---|
CN116368440A (zh) | 2023-06-30 |
DE112021005055T5 (de) | 2023-07-20 |
US20240004371A1 (en) | 2024-01-04 |
JP7522219B2 (ja) | 2024-07-24 |
JPWO2022097719A1 (ja) | 2022-05-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2022097719A1 (ja) | 数値制御システム及び産業機械の制御方法 | |
US20100063608A1 (en) | Method and System for Programmable Numerical Control | |
WO2001088647A1 (en) | Method and system for controlling a machine tool with direct transfer of machining data | |
WO2022034848A1 (ja) | 数値制御システム及びロボット制御方法 | |
JP7022260B1 (ja) | 数値制御システム | |
CN108445831A (zh) | 一种机器人钻孔方法 | |
WO2022102578A1 (ja) | 数値制御装置、及び数値制御システム | |
Ashley | A mosaic for machine tools | |
WO2023026373A1 (ja) | 数値制御システム | |
WO2023053435A1 (ja) | 数値制御システム及びロボット制御装置 | |
WO2022131173A1 (ja) | 数値制御システム及び産業機械の制御方法 | |
JP7157281B1 (ja) | ロボット制御装置、数値制御システム及び数値制御方法 | |
US20240160181A1 (en) | Motion-path generation device, numerical control device, numerical control system, and non-transitory computer-readable medium storing computer program | |
JP7492006B2 (ja) | 数値制御システム | |
JP7495499B2 (ja) | 数値制御システム | |
Martinov et al. | The Mechanism for Synchronizing CNC System with External Devices by Using a Part Program | |
WO2022176818A1 (ja) | ロボット制御装置、ロボット制御システム、及びコンピュータプログラム | |
JP7332822B1 (ja) | 数値制御装置及び数値制御システム | |
TWI826893B (zh) | 數值控制裝置及數值控制系統 | |
Martinova et al. | Development of a Universal Software Application for Programming Canned Cycles on CNC Turning and Milling Machine Tools | |
WO2024042728A1 (ja) | 数値制御システム、数値制御装置、産業用装置及びコンピュータプログラム | |
JPH02202604A (ja) | 外部拡張型プログラマブル・コントローラ | |
WO2022102581A1 (ja) | 制御装置 | |
US20240027990A1 (en) | Numerical control device, and numerical control system | |
JP2694638B2 (ja) | 数値制御装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 21889271 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2022560825 Country of ref document: JP Kind code of ref document: A |
|
WWE | Wipo information: entry into national phase |
Ref document number: 18251774 Country of ref document: US |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 21889271 Country of ref document: EP Kind code of ref document: A1 |