[go: up one dir, main page]

WO2022269896A1 - 数値制御システム - Google Patents

数値制御システム Download PDF

Info

Publication number
WO2022269896A1
WO2022269896A1 PCT/JP2021/024109 JP2021024109W WO2022269896A1 WO 2022269896 A1 WO2022269896 A1 WO 2022269896A1 JP 2021024109 W JP2021024109 W JP 2021024109W WO 2022269896 A1 WO2022269896 A1 WO 2022269896A1
Authority
WO
WIPO (PCT)
Prior art keywords
robot
connection request
connection
numerical control
numerical
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
PCT/JP2021/024109
Other languages
English (en)
French (fr)
Inventor
瞭 仲村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fanuc Corp
Original Assignee
Fanuc Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fanuc Corp filed Critical Fanuc Corp
Priority to CN202180099398.7A priority Critical patent/CN117461001A/zh
Priority to PCT/JP2021/024109 priority patent/WO2022269896A1/ja
Priority to JP2023529400A priority patent/JP7674481B2/ja
Priority to US18/560,705 priority patent/US20250004445A1/en
Priority to DE112021007551.9T priority patent/DE112021007551T5/de
Priority to TW111120045A priority patent/TW202303312A/zh
Publication of WO2022269896A1 publication Critical patent/WO2022269896A1/ja
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total 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/41815Total 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/41825Total 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
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical 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/4155Numerical 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
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B23MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
    • B23QDETAILS, COMPONENTS, OR ACCESSORIES FOR MACHINE TOOLS, e.g. ARRANGEMENTS FOR COPYING OR CONTROLLING; MACHINE TOOLS IN GENERAL CHARACTERISED BY THE CONSTRUCTION OF PARTICULAR DETAILS OR COMPONENTS; COMBINATIONS OR ASSOCIATIONS OF METAL-WORKING MACHINES, NOT DIRECTED TO A PARTICULAR RESULT
    • B23Q15/00Automatic control or regulation of feed movement, cutting velocity or position of tool or work
    • B23Q15/007Automatic control or regulation of feed movement, cutting velocity or position of tool or work while the tool acts upon the workpiece
    • B23Q15/12Adaptive control, i.e. adjusting itself to have a performance which is optimum according to a preassigned criterion
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1658Programme controls characterised by programming, planning systems for manipulators characterised by programming language
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical 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
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/36Nc in input of data, input key till input tape
    • G05B2219/36242Convert program for different machines with different M-code, G-code, header
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/50Machine tool, machine tool null till machine tool work handling
    • G05B2219/50319As function of tool geometry and machining data
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/50Machine tool, machine tool null till machine tool work handling
    • G05B2219/50391Robot

Definitions

  • the present disclosure relates to numerical control systems.
  • Patent Document 1 shows a numerical control device that controls both a machine tool and a robot by means of a numerical control program. According to the numerical control device of Patent Document 1, an operator who is familiar with numerical control programs can also control a robot without mastering a robot program.
  • Patent Document 1 describes a technique for operating one robot and one machine tool in parallel, but in an actual factory, for example, one robot and multiple machine tools are used. They may also run in parallel.
  • the robot controller when communication is attempted between the robot controller that directly controls the motion of the robot and a plurality of numerical controllers that control each machine tool, the robot controller includes a numerical controller. It is necessary to secure a communication interface for the number of That is, the number of numerical controllers that can be connected to one robot controller is limited by the size of the communication interface of the robot controller.
  • Some numerical controllers can control the operations of multiple machine tools in parallel using multiple control modules.
  • the robot control device When attempting to communicate between such a numerical control device and a robot control device, the robot control device must have as many communication interfaces as there are control modules. Therefore, the above problem may occur even when one robot controller and one numerical controller are connected.
  • the present disclosure has been made in view of the above problems. Provided is a numerical control system capable of changing the number of numerical controllers connected to a robot controller and the number of their control modules regardless of the size of the communication interface of the robot controller.
  • One aspect of the present disclosure includes a numerical control device that controls the operation of a machine tool based on a numerical control program, and a robot control device that controls the operation of the robot based on a robot command, wherein the numerical control device and one or more control modules for generating the robot command based on the numerical control program, the control module comprising a robot command generator for generating the robot command based on the numerical control program; a robot connection request unit that generates a connection request for a device; and a command transmission side communication interface that transmits the connection request and the robot command to the robot control device, wherein the robot control device receives the connection request and the robot command.
  • a command receiving side communication interface for receiving a command
  • a robot motion control unit for controlling the motion of the robot based on the robot command
  • a robot connection responder for generating an acknowledgment, wherein the command receiving side communication interface transmits the connection acknowledgment to the command sending side communication interface, and the command sending side communication interface receives the connection acknowledgment.
  • a numerical control system that initiates transmission of the robot command to the command receiver communication interface.
  • an operator familiar with a numerical control program used to control a machine tool can control a robot without mastering a robot program written in a language different from the numerical control program. can also be controlled.
  • the command transmission side communication interface of the numerical control device includes the connection generated by the robot connection response unit of the robot control device as a response to the connection request generated by the robot connection request unit of the numerical control device. After receiving the acknowledgment, start sending the robot commands generated by the robot command generator to the command receiving side communication interface. In other words, the timing of starting transmission of the robot command from the numerical controller side to the robot controller side can be managed by the robot controller side according to the connection request sent from the numerical controller side.
  • robot commands can be received from a plurality of command-sending communication interfaces by using one command-receiving communication interface. Therefore, according to one aspect of the present disclosure, the number of numerical controllers connected to the robot controller and the number of control modules thereof can be changed regardless of the size of the command receiving side communication interface of the robot controller. Further, according to one aspect of the present disclosure, for example, while the robot controller is controlling the motion of the robot based on the robot command transmitted from one numerical controller, the other numerical controller may Therefore, even if the number of connected numerical control devices increases, the communication load on the robot control device does not increase, so that the operating performance of the robot can be prevented from deteriorating. .
  • FIG. 1 is a schematic diagram of a numerical control system according to a first embodiment of the present disclosure
  • FIG. 3 is a functional block diagram of a first numerical controller and an Nth numerical controller
  • FIG. It is a functional block diagram of a robot control device.
  • It is the 1st example of a 1st numerical control program.
  • This is the first example of the Nth numerical control program.
  • It is a diagram.
  • It is a second example of the first numerical control program. This is a second example of the Nth numerical control program.
  • FIG. 5 is a diagram comparing the cycle time of the entire system when two numerical control devices are connected to one robot control device between the conventional numerical control system and the numerical control system according to the embodiment;
  • FIG. 5 is a functional block diagram of a numerical control system according to a second embodiment of the present disclosure;
  • FIG. 1 is a schematic diagram of a numerical control system 1 according to this embodiment.
  • the numerical control system 1 includes a plurality of machine tools 2_1, .
  • N numerical controllers 5_1 a case will be described in which N numerical controllers 5_1, .
  • the number of numerical controllers connected to the robot controller may be one as shown in the third embodiment described later.
  • a first numerical controller 5_1 which is the first of the N numerical controllers, operates according to a predetermined first numerical control program to control a first machine tool 2_1, which is the first of the N machine tools. It generates control signals and first robot commands for the robot 3 and sends these first machine tool control signals and first robot commands to the first machine tool 2_1 and the robot controller 6, respectively.
  • the N-th numerical control device 5_N which is the N-th among the N numerical control devices, operates according to a predetermined N-th numerical control program to control the N-th machine tool 2_N, which is the N-th among the N machine tools. It generates control signals and Nth robot commands for the robot 3, and sends these Nth machine tool control signals and Nth robot commands to the Nth machine tool 2_N and the robot controller 6, respectively.
  • the robot control device 6 controls the motion of the robot 3 according to the robot commands transmitted from each numerical control device 5_1, . . . , 5_N.
  • the robot 3 operates under the control of the robot control device 6, and performs predetermined work on the workpieces processed by the machine tools 2_1, . . . , 2_N, for example.
  • the robot 3 is, for example, an articulated robot, and a gripping tool 32 for gripping a workpiece is attached to its arm distal end portion 31 .
  • a case will be described below in which the robot 3 grips the workpieces processed by the machine tools 2_1, . No. In the following description, the robot 3 will be described as a 6-axis articulated robot, but the number of axes is not limited to this.
  • Each numerical control device 5_1, Memory means, main memory means such as RAM (Random Access Memory) for storing data temporarily required by the arithmetic processing means to execute the program, operation means such as a keyboard for the operator to perform various operations, and the operator It is a computer configured by hardware such as display means such as a display for displaying various information.
  • Various signals can be mutually transmitted and received between the robot control device 6 and each of the numerical control devices 5_1, .
  • FIG. 2A is a functional block diagram of the first numerical controller 5_1 and the N-th numerical controller 5_N
  • FIG. 2B is a functional block diagram of the robot controller 6.
  • the detailed configuration of the numerical controllers 5_1 and 5_N will be described first, and then the detailed configuration of the robot controller 6 will be described.
  • the first numerical controller 5_1 implements various functions such as a control module 50_1 as a control system for the first machine tool 2_1 and the robot 3, a program storage unit 59_1, and the like, through the hardware configuration described above. be done.
  • the first numerical control device 5_1 is provided with a control module 50_1 that controls the operations of both the first machine tool 2_1 and the robot 3, but the present disclosure is not limited to this.
  • a machine tool control module for controlling the operation of the first machine tool 2_1 and a robot control module for controlling the operation of the robot 3 may be separately provided in the first numerical controller 5_1.
  • the program storage unit 59_1 stores, for example, a plurality of first numerical control programs created based on operations by an operator. More specifically, the program storage unit 59_1 stores a plurality of command blocks for the first machine tool 2_1 for controlling the operation of the first machine tool 2_1 and a plurality of command blocks for the robot 3 for controlling the operation of the robot 3. A first numerical control program composed of command blocks and the like is stored.
  • the first numerical control program stored in the program storage unit 59_1 is written in a known programming language such as G code or M code. Although a case where the first numerical control program includes a command block for the first machine tool 2_1 and a command block for the robot 3 will be described below, the present disclosure is not limited to this.
  • the command block for the first machine tool 2_1 and the command block for the robot 3 may be written in different numerical control programs.
  • the command block for the first machine tool 2_1 is the reference point set on the first machine tool 2_1 or near the first machine tool 2_1 as the origin. 1 machine tool coordinate system. That is, in the first numerical control program, the position, posture, etc. of the control points of the first machine tool 2_1 are described by coordinate values in the first machine tool coordinate system.
  • command blocks for the robot 3 are described based on a robot coordinate system different from the above-described first machine tool coordinate system. That is, in the first numerical control program, the position and orientation of the control point of the robot 3 (for example, the arm tip 31 of the robot 3) are described by coordinate values in a robot coordinate system different from the first machine tool coordinate system.
  • This robot coordinate system is a coordinate system whose origin is a reference point defined on the robot 3 or in the vicinity of the robot 3 . Note that although a case where the robot coordinate system is different from the first machine tool coordinate system will be described below, the present disclosure is not limited to this.
  • the robot coordinate system may coincide with the first machine tool coordinate system. In other words, the origin and coordinate axis direction of the robot coordinate system may be aligned with the origin and coordinate axis direction of the first machine tool coordinate system.
  • the robot coordinate system can be switched between two or more coordinate formats with different control axes. More specifically, in the first numerical control program, the position and orientation of the control points of the robot 3 can be specified in the orthogonal coordinate format or each axis coordinate format.
  • the position and orientation of the control point of the robot 3 are represented by a total of six real coordinates whose components are the rotation angle values (J1, J2, J3, J4, J5, J6) of the six joints of the robot 3. Specified by value.
  • the position and orientation of the control point of the robot 3 are represented by three coordinate values (X, Y, Z) along three Cartesian coordinate axes and three rotation angle values (A, B , C) and a total of six real number coordinate values.
  • the form of the robot 3 since the rotation angle of each joint of the robot 3 is directly specified, the axis arrangement of each arm and wrist of the robot 3 and the number of rotations of the joints capable of rotating 360 degrees or more (hereinafter referred to as , collectively referred to as “the form of the robot 3”) is also uniquely determined.
  • the position and posture of the control point of the robot 3 are specified by six coordinate values (X, Y, Z, A, B, C), so the form of the robot 3 is uniquely cannot be determined. Therefore, in the first numerical control program, the form of the robot 3 can be designated by a form value P, which is an integer value with a predetermined number of digits.
  • the position and orientation of the control points of the robot 3 and the form of the robot 3 are represented by six coordinate values (J1, J2, J3, J4, J5, J6) under each axis coordinate format, and is represented by six coordinate values and one morphological value (X, Y, Z, A, B, C, P).
  • the morphological value P is also referred to as a coordinate value for convenience.
  • the first numerical control program it is possible to set the coordinate format with the G-codes "G68.8” and "G68.9". More specifically, inputting the G code “G68.8” sets the coordinate format to each axis coordinate format, and inputting the G code “G68.9” sets the coordinate format to the rectangular coordinate format. set.
  • the G-codes "G68.8” and “G68.9” for setting these coordinate formats are modal. Therefore, after the coordinate format is set to each axis coordinate format or rectangular coordinate format by these G codes, the coordinate format is maintained until the coordinate format is changed again by these G codes.
  • the coordinate format is automatically set to the orthogonal coordinate format, but this is not the only option. No.
  • the control module 50_1 includes a program input unit 51_1, an input analysis unit 52_1, a machine tool control unit 53_1, a robot command generation unit 54_1, a robot connection request unit 55_1, and a communication interface 56_1, and uses them. , a first robot command for controlling the operation of the first machine tool 2_1 and the operation of the robot 3 is generated based on the first numerical control program.
  • the program input unit 51_1 reads out a predetermined first numerical control program from the program storage unit 59_1 and sequentially inputs it to the input analysis unit 52_1.
  • the input analysis unit 52_1 analyzes the command type based on the first numerical control program input from the program input unit 51_1 for each command block, and applies the analysis results to the machine tool control unit 53_1, the robot command generation unit 54_1, and the robot connection unit. It is transmitted to the request unit 55_1. More specifically, when the command type of the command block is a command for the first machine tool 2_1, the input analysis unit 52_1 transmits this to the machine tool control unit 53_1, and the command type of the command block is the robot 3 If it is a command to the robot command generator 54_1, it is sent to the robot command generator 54_1, and if the command type of the command block is a request to the robot controller 6, it is sent to the robot connection requester 55_1.
  • the machine tool control unit 53_1 generates a first machine tool control signal for controlling the operation of the first machine tool 2_1 according to the analysis result of the first numerical control program transmitted from the input analysis unit 52_1. Input to actuators that drive various axes of the machine tool 2_1.
  • the first machine tool 2_1 operates according to a first machine tool control signal input from the machine tool control section 53_1, and processes a workpiece (not shown).
  • the robot connection request unit 55_1 generates a connection request to the robot control device 6 or a disconnection request to the robot control device 6 based on the analysis result of the first numerical control program transmitted from the input analysis unit 52_1. More specifically, the connection request to the robot control device 6 means that the operation of the robot 3 can be controlled based on the first robot command generated by the robot command generation unit 54_1, which will be described later, based on the first numerical control program. This means requesting the robot control device 6 for permission to transmit the first robot command from the communication interface 56_1 of the first numerical control device 5_1 to the communication interface 60 of the robot control device 6, which will be described later.
  • the disconnection request to the robot control device 6 is, more specifically, the transmission of the first robot command from the communication interface 56_1 to the communication interface 60 in order to end the control of the motion of the robot 3 based on the first robot command. to notify the robot controller 6 of the end of
  • the G code "G200” is used to generate a connection request to the robot connection requesting section 55_1, and the G code “G201” is used to generate a disconnection request to the robot connection requesting section 55_1. It is possible.
  • An arbitrary integer value of 1 or more is input to the underscore portion in the priority designation command as a value representing the level of priority. In the following description, the larger the priority value, the higher the priority, but the present disclosure is not limited to this. You may make it so that a priority value is small, and a priority is made high.
  • the robot connection request unit 55_1 When the robot connection request unit 55_1 generates a connection request based on the first numerical control program according to the procedure described above, it writes the generated connection request and the connection request information associated with this connection request to the communication interface 56_1. , the connection request and connection request information are sent to the robot control device 6 .
  • the connection request information includes identification information (for example, an IP address unique to the first numerical control device 5_1) for identifying the first numerical control device 5_1, which is the transmission source of the connection request, on the robot control device 6 side. , and a priority value specified based on the above-described priority specifying command.
  • the robot connection request unit 55_1 if the priority value for the connection request is not specified by the first numerical control program, that is, if the priority specifying command is not described in the first numerical control program, the robot connection request unit 55_1 , a predetermined initial value as a priority value is written in the communication interface 56_1 and transmitted to the robot control device 6, but the present disclosure is not limited to this.
  • the robot connection request unit 55_1 when the priority value for the connection request is not specified by the first numerical control program, the robot connection request unit 55_1 sends the robot control device 6 a priority value. Only the identification information may be sent without sending the value.
  • the robot connection request unit 55_1 when the robot connection request unit 55_1 generates a disconnection request based on the first numerical control program according to the procedure described above, it writes the generated connection disconnection request to the communication interface 56_1, and sends the connection disconnection request to the robot controller. 6.
  • the robot command generation unit 54_1 generates a first robot command for moving the control axis of the robot 3 based on the analysis result of the first numerical control program transmitted from the input analysis unit 52_1, and outputs the generated robot command. It writes to the communication interface 56_1 and transmits this robot command to the robot control device 6 .
  • the G code "G200" for causing the robot connection requesting unit 55_1 to generate a connection request and the G code "G200" for causing the robot connection requesting unit 55_1 to generate a disconnection request are described in the first numerical control program.
  • G201′′ will be described as a command to the robot 3, but the present disclosure is not limited to this.
  • the robot command generation unit 54_1 receives, through the communication interface 56_1, a connection approval, which will be described later, transmitted from the robot control device 6 as a response from the robot control device 6 to the connection request generated by the robot connection requesting unit 55_1 as described above. After confirming the above, generation of the first robot command based on the first numerical control program and transmission of the first robot command to the robot controller 6 side are started as described above.
  • connection request and connection request information are written by the robot connection request section 55_1, the communication interface 56_1 transmits these connection requests and connection request information to the communication interface 60 of the robot control device 6.
  • the communication interface 56_1 transmits this connection release request to the communication interface 60 when the connection release request is written by the robot connection request unit 55_1.
  • the communication interface 56_1 When the communication interface 56_1 receives a connection approval transmitted from the robot control device 6 in response to the connection request described above according to the procedure described later, the communication interface 56_1 notifies the robot command generation unit 54_1 of the reception of the connection approval. After receiving the connection approval, the communication interface 56_1 transmits the first robot command to the communication interface 60 when the first robot command is written by the robot command generation unit 54_1 as described above.
  • the Nth numerical controller 5_N differs from the first numerical controller 5_1 in that the object to be controlled is the Nth machine tool 2_N, and the rest of the configuration is substantially the same as the first numerical controller 5_1. A detailed description of the configuration of the Nth numerical controller 5_N is omitted.
  • the Nth numerical control device 5_N includes a program storage unit 59_N storing a plurality of Nth numerical control programs, a control module 50_N having substantially the same configuration as the control module 50_1 of the first numerical control device 5_1, and a first numerical control
  • a program input unit 51_N having substantially the same configuration as the program input unit 51_1 of the device 5_1, an input analysis unit 52_N having substantially the same configuration as the input analysis unit 52_1 of the first numerical controller 5_1, and machine tool control of the first numerical controller 5_1
  • a machine tool control unit 53_N having substantially the same configuration as the unit 53_1, a robot command generation unit 54_N having substantially the same configuration as the robot command generation unit 54_1 of the first numerical controller 5_1, and a robot connection request unit 55_1 of the first numerical controller 5_1.
  • a communication interface 56_N having substantially the same structure as the communication interface 56_1 of the first numerical controller 5_1.
  • the robot control device 6 includes a communication interface 60, a robot connection response unit 63, a robot connection determination unit 64, an input analysis unit 65, a robot program generation unit 66, and a robot operation unit 66 according to the above hardware configuration.
  • Various functions of the control unit 67 and the like are realized.
  • the communication interface 60 is communicably connected to the communication interfaces 56_1, . . . , 56_N of the numerical controllers 5_1, . It is possible to transmit and receive various types of information such as connection request information, connection release request, and connection approval, which will be described later.
  • the communication interface 60 includes a control area 61 and a connection request buffer 62 as storage areas for temporarily storing various information transmitted from the communication interfaces 56_1, . . . , 56_N.
  • the communication interface 60 stores the robot commands in the control area 61 when receiving the robot commands transmitted from the respective communication interfaces 56_1, . . . 56_N. As described above, each of the numerical controllers 5_1, . Therefore, the robot control device 6 staggers the transmission timing of the connection approval to each of the numerical controllers 5_1, . be able to. Therefore, according to this embodiment, the control area 61 for temporarily storing robot commands can be reused. does not need to be increased.
  • the communication interface 60 When the communication interface 60 receives a connection request transmitted from each of the communication interfaces 56_1, .
  • the connection request information includes identification information necessary for the robot controller 6 to identify the transmission source of the connection request, and a priority value (a value specified based on the priority specification command or a predetermined value). default value), and , 56_N, the communication interface 60 selects one of the plurality of pieces of connection request information stored in the connection request buffer 62 from the same transmission source as the received connection cancellation request. delete things.
  • the robot connection response unit 63 checks whether connection request information is stored in the connection request buffer 62 at a predetermined cycle. Send to When multiple sets of connection request information are stored in the connection request buffer 62 , the robot connection response unit 63 sends all of the multiple sets of connection request information stored in the connection request buffer 62 to the robot connection determination unit 64 . Send.
  • the robot connection determination unit 64 determines the connection approval transmission destination based on the connection request information transmitted from the robot connection response unit 63 and transmits this connection approval transmission destination to the robot connection response unit 63 .
  • the robot connection determining unit 64 identifies the sender of this connection request information based on the identification information, and approves this sender for connection. Decide as a destination.
  • the robot connection determination unit 64 identifies the transmission source of each connection request information based on the identification information, and identifies one of the transmission sources. One is determined as the connection approval transmission destination.
  • the robot connection determining unit 64 selects one of the transmission sources based on these priority values. one as the connection approval destination. More specifically, the robot connection determination unit 64 compares the priority values included in each connection request information, and selects the transmission source with the highest priority value (that is, the highest priority). Decide as a connection approval destination.
  • the robot connection determination unit 64 determines the transmission source of the connection request received earlier in the communication interface 60 as the connection approval transmission destination. As described above, when the lower the priority value, the higher the priority, the robot connection determination unit 64 determines the transmission source with the lowest priority value as the connection approval transmission destination.
  • the robot connection response unit 63 When the robot connection determination unit 64 determines the connection approval transmission destination by the above procedure, the robot connection response unit 63 generates a connection approval and sends the connection approval to the communication interface of the connection approval transmission destination via the communication interface 60. to send. As a result, the robot command generated based on the numerical control program is transmitted from the communication interface to which the connection approval is transmitted to the communication interface 60 .
  • the input analysis unit 65 reads the robot command stored in the control area 61, analyzes it, and transmits the analysis result to the robot program generation unit 66.
  • the robot program generation unit 66 generates a robot program according to the analysis result of the robot command sent from the input analysis unit 65. More specifically, when a robot command is input from the input analysis unit 65, the robot program generation unit 66 adds a robot command corresponding to this robot command to the robot program stored in the storage unit (not shown).
  • the robot motion control unit 67 activates the robot program generated by the robot program generation unit 66, and controls the motion of the robot 3 by sequentially executing the robot instructions written in the activated robot program. More specifically, the robot motion control unit 67 calculates the target position of each control axis of the robot 3 by executing the robot command, and controls each servo motor of the robot 3 so that the calculated target position is realized. is feedback-controlled to generate a robot control signal for the robot 3 and input it to the servo motor of the robot 3 .
  • FIG. 3A a first example of the flow of various signals and information in the numerical control system 1 configured as above will be described with reference to FIGS. 3A, 3B, and 4.
  • FIG. 3A a first example of the flow of various signals and information in the numerical control system 1 configured as above will be described with reference to FIGS. 3A, 3B, and 4.
  • FIG. 3A a first example of the flow of various signals and information in the numerical control system 1 configured as above will be described with reference to FIGS. 3A, 3B, and 4.
  • FIG. 3A is a first example of the first numerical control program
  • FIG. 3B is a first example of the Nth numerical control program.
  • illustration of command blocks for the first and Nth machine tools among the plurality of command blocks constituting each numerical control program is omitted.
  • FIG. 4 shows signals and information between the first and Nth numerical controllers and the robot controller when the first and Nth numerical controllers are operated based on the numerical control programs shown in FIGS. 3A and 3B. is a sequence diagram showing the flow of.
  • a command "G200P1" for generating a connection request to the robot controller and specifying "1" as the priority value is sent to the robot connection request section of the first numerical controller. ” is entered.
  • the robot connection request section and communication interface of the first numerical control device transmit a connection request and connection request information to the communication interface of the robot control device.
  • the connection request information transmitted from the first numerical controller to the robot controller includes the IP address "192.168.0.10" unique to the first numerical controller and the priority value "1".
  • a command "G200 P2" for generating a connection request to the robot controller and specifying "2" as the priority value is sent to the robot connection request part of the Nth numerical controller. ” is entered.
  • the robot connection request section and communication interface of the Nth numerical control device transmit a connection request and connection request information to the communication interface of the robot control device.
  • the connection request information transmitted from the Nth numerical controller to the robot controller includes the IP address "192.168.0.255" unique to the Nth numerical controller and the priority value "2".
  • the communication interface of the robot control device sends the received connection request information in the order of reception. Store in buffer.
  • the robot connection determination unit of the robot control device determines the connection approval transmission destination based on the two sets of connection request information stored in the connection request buffer.
  • the priority value of the connection request from the first numerical controller is "1”
  • the priority value of the connection request from the Nth numerical controller is "2"
  • the robot connection determination unit determines the Nth numerical controller as the connection approval transmission destination.
  • the robot connection response unit and communication interface of the robot control device transmit a connection approval to the communication interface of the Nth numerical control device.
  • the robot command generator of the N-th numerical control device sequentially reads the blocks indicated by "N21" to "N23" in response to confirming the reception of the connection approval from the robot control device. '', and the communication interface of the Nth numerical control device sequentially transmits the generated Nth robot commands to the robot control device. Further, the robot control device controls the operation of the robot based on the received Nth robot command, and transmits a reading completion notice to the Nth numerical control device in response to completion of reading of the Nth robot command. While the robot operation is being controlled based on the Nth robot command transmitted from the Nth numerical controller, the first numerical controller with lower priority waits for connection approval from the robot controller. state. Therefore, during this time, the first numerical control device does not need to actively confirm the operating state of the robot through communication with the robot control device.
  • a command "G201" for generating a disconnection request to the robot controller is input to the robot connection request section of the Nth numerical controller.
  • the robot connection request unit and communication interface of the Nth numerical control device transmit a disconnection request to the communication interface of the robot control device.
  • the communication interface of the robot controller selects the N-th numerical controller among the plurality of sets of connection request information stored in the connection request buffer. Delete what you assume is the source. As a result, the connection request information stored in the connection request buffer is limited to the one whose transmission source is the first numerical controller.
  • the robot connection determination unit of the robot control device determines the first numerical control device, which is the transmission source of the set of connection request information stored in the connection request buffer, as the connection approval transmission destination. Also, the robot connection response unit and communication interface of the robot control device transmit connection approval to the communication interface of the first numerical control device.
  • the robot command generation unit of the first numerical control device sequentially reads the blocks indicated by "N11" to "N14" in response to confirming the reception of the connection approval from the robot control device. '', and the communication interface of the first numerical controller sequentially transmits the generated first robot commands to the robot controller. Further, the robot control device controls the operation of the robot based on the received first robot command, and transmits a reading completion notification to the first numerical control device in response to completion of reading of the first robot command.
  • a command "G201" for generating a disconnection request to the robot controller is input to the robot connection request section of the first numerical controller.
  • the robot connection request unit and communication interface of the first numerical control device transmit a disconnection request to the communication interface of the robot control device.
  • the communication interface of the robot control device selects the first numerical controller as the transmission source among the connection request information stored in the connection request buffer in response to receiving the disconnection request from the first numerical controller. delete things.
  • FIG. 5A a second example of the flow of various signals and information in the numerical control system 1 configured as above will be described with reference to FIGS. 5A, 5B, and 6.
  • FIG. 5A a second example of the flow of various signals and information in the numerical control system 1 configured as above will be described with reference to FIGS. 5A, 5B, and 6.
  • FIG. 5A a second example of the flow of various signals and information in the numerical control system 1 configured as above will be described with reference to FIGS. 5A, 5B, and 6.
  • FIG. 5A is a second example of the first numerical control program
  • FIG. 5B is a second example of the Nth numerical control program. Note that the first numerical control program shown in FIG. 5A and the N-th numerical control program shown in FIG. 5B do not describe the priority designation command "P_". It differs from the Nth numerical control program shown.
  • FIG. 6 shows signals and information between the first and Nth numerical controllers and the robot controller when the first and Nth numerical controllers are operated based on the numerical control programs shown in FIGS. 5A and 5B. is a sequence diagram showing the flow of.
  • a command "G200" for generating a connection request to the robot controller is input to the robot connection request section of the first numerical controller.
  • the robot connection request section and communication interface of the first numerical control device transmit a connection request and connection request information to the communication interface of the robot control device.
  • the robot connection request unit uses a predetermined initial value (“1” in the example of FIG. 6) as the priority value. Send to the robot controller.
  • a command "G200" for generating a connection request to the robot controller is input to the robot connection request section of the Nth numerical controller.
  • the robot connection request section and communication interface of the Nth numerical control device transmit a connection request and connection request information to the communication interface of the robot control device.
  • the robot connection request unit uses a predetermined initial value (“1” in the example of FIG. 6) as the priority value. Send to the robot controller.
  • the communication interface of the robot control device sends the received connection request information in the order of reception. Store in buffer.
  • the robot connection determination unit of the robot control device determines the connection approval transmission destination based on the two sets of connection request information stored in the connection request buffer.
  • the priority value of the connection request from the first numerical controller is "1"
  • the priority value of the connection request from the Nth numerical controller is also "1" That is, the first numerical controller and the Nth numerical controller have the same priority.
  • the robot connection determination unit determines the first numerical control device, which previously received the connection request, as the connection approval transmission destination.
  • the robot connection response unit and communication interface of the robot controller transmit a connection approval to the communication interface of the first numerical controller.
  • the flow after this is almost the same as the example shown in FIG. 4 except that the order of transmission of the connection approval from the robot control device is reversed, so detailed description will be omitted.
  • FIG. 7A, 7B, and 8 a third example of the flow of various signals and information in the numerical control system 1 configured as above will be described with reference to FIGS. 7A, 7B, and 8.
  • FIG. 7A, 7B, and 8 a third example of the flow of various signals and information in the numerical control system 1 configured as above will be described with reference to FIGS. 7A, 7B, and 8.
  • FIG. 7A is a third example of the first numerical control program
  • FIG. 7B is a third example of the Nth numerical control program.
  • the first numerical control program shown in FIG. 7A differs from the first numerical control program shown in FIG. 3A in the priority value designated based on the priority designation command "P_".
  • the Nth numerical control program shown in FIG. 7B differs from the Nth numerical control program shown in FIG. 3B in that the priority designation command "P_" is not described.
  • FIG. 8 shows signals and information between the first and Nth numerical controllers and the robot controller when the first and Nth numerical controllers are operated based on the numerical control programs shown in FIGS. 7A and 7B. is a sequence diagram showing the flow of.
  • a command "G200 P3" for generating a connection request to the robot controller and specifying "3" as the priority value is sent to the robot connection request section of the first numerical controller. ” is entered.
  • the robot connection request section and communication interface of the first numerical control device transmit a connection request and connection request information to the communication interface of the robot control device.
  • the connection request information transmitted from the first numerical controller to the robot controller includes the IP address "192.168.0.10" unique to the first numerical controller and the priority value "3".
  • a command "G200" for generating a connection request to the robot controller is input to the robot connection request section of the Nth numerical controller.
  • the robot connection request section and communication interface of the Nth numerical control device transmit a connection request and connection request information to the communication interface of the robot control device.
  • the priority value is not specified based on the Nth numerical control program and the predetermined initial value is transmitted to the robot control device as the priority value has been described.
  • the present disclosure is not limited to this.
  • the robot connection requesting unit and the communication interface do not transmit the priority value to the robot controller, and the identification information may be sent only.
  • the communication interface of the robot controller stores the received connection information in the connection request buffer in the order of reception. store in At this time, the connection request information transmitted from the N-th numerical controller does not contain the priority value as described above. Therefore, the priority value of the one whose transmission source is the N-th numerical controller among the two sets of connection request information stored in the connection request buffer is blank as shown in FIG.
  • the robot connection determination unit of the robot control device determines the connection approval transmission destination based on the two sets of connection request information stored in the connection request buffer.
  • the robot connection determination unit transmits connection approval based on a predetermined initial value (for example, "1"). decide where to go. Therefore, in the example shown in FIG. 8, the robot connection determining section sets the priority value of the connection request from the first numerical controller to "3" specified based on the numerical control program, The priority value of the connection request is set to the initial value of "1", and the connection approval transmission destination is determined. Therefore, the robot connection determination unit determines the first numerical control device having a higher priority as the connection approval transmission destination. Accordingly, the robot connection response unit and communication interface of the robot controller transmit a connection approval to the communication interface of the first numerical controller. Since the subsequent flow is almost the same as the example shown in FIG. 6, detailed description thereof will be omitted.
  • the following effects are achieved.
  • the robot 3 can also be controlled without
  • the timing for starting transmission of the robot command from each of the numerical controllers 5_1, . can be managed on the robot control device 6 side.
  • the present embodiment it is possible to receive robot commands from a plurality of communication interfaces 56_1, . can. Therefore, according to this embodiment, regardless of the size of the control area 61 of the communication interface 60 of the robot controller 6, the number of numerical controllers connected to the robot controller 6 and the number of control modules thereof can be changed. can be done. Further, according to this embodiment, for example, while the robot controller 6 is controlling the operation of the robot 3 based on a robot command transmitted from one numerical controller, another numerical controller completes the operation of the robot 3. Since it is no longer necessary to constantly confirm by communication whether or not it has been completed, even if the number of connected numerical controllers increases, the communication load in the robot controller 6 does not increase, so the operating performance of the robot 3 is prevented from deteriorating. be able to.
  • the robot control device 6 includes a robot connection determination unit 64 that determines any one of the N numerical control devices 5_1, .
  • the communication interface 60 transmits the connection approval to the connection approval transmission destination determined by the robot connection determination unit 64 .
  • the connection approval is transmitted to only one of the N numerical controllers 5_1, .
  • the control area 61 of the communication interface 60 can be used for a plurality of numerical controllers 5_1, . . . , 5_N.
  • a connection request to the robot control device 6 can be generated at an appropriate timing determined by the operator in consideration of the cycle time of the entire system.
  • the robot control device 6 further includes a connection request buffer 62 that stores connection request information associated with the connection request received by the communication interface 60 , and the robot connection determination unit 64 stores the information in the connection request buffer 62 . Determine the connection approval transmission destination based on the received connection request information. According to this embodiment, a plurality of pieces of connection request information transmitted from each of the numerical controllers 5_1, . can be determined.
  • connection request information stored in the connection request buffer 62 includes identification information specifying the source of the connection request and a priority value of the connection request. It can be designated by a priority designation command "P_" based on the control program.
  • the robot connection determination unit 64 determines the connection approval transmission destination based on these priority values. As a result, the connection approval can be transmitted from the robot control device 6 in an appropriate order determined by the operator so as to shorten the cycle time of the entire system as much as possible.
  • the effect of setting the priority to the connection request from each numerical controller 5_1, . . . , 5_N will be described with reference to FIG.
  • FIG. 9 is a diagram comparing the cycle time of the entire system when two numerical controllers are connected to one robot controller with different priority settings.
  • the cycle time of the first numerical controller (indicated as "NC1" in FIG. 9) is longer than the cycle time of the second numerical controller (indicated as "NC2" in FIG. 9).
  • the frequency with which the second numerical controller controls the motion of the robot via the robot controller is higher than the frequency with which the first numerical controller controls the motion of the robot via the robot controller.
  • the left side of FIG. 9 shows the cycle time of the entire system when connection approvals are sent on a first-come, first-served basis without specifying a priority value for connection requests sent from two numerical controllers to the robot controller.
  • the right side of FIG. 9 shows the overall system when the priority of the connection request from the second numerical control device with a short cycle time is set higher than the priority of the connection request from the first numerical control device with a long cycle time. Indicates cycle time.
  • connection approval may be sent first to the first numerical controller whose cycle time is longer than that of the second numerical controller.
  • the first numerical controller occupies the control area of the communication interface of the robot controller.
  • the second numerical controller waits for connection approval from the robot controller.
  • the cycle time of the second numerical controller is shorter than that of the first numerical controller.
  • the robot may be in a standby state while the second numerical controller is controlling the second machine tool.
  • a standby state of the robot may occur, for example, when the robot attaches or removes a work to or from a machine tool and waits for completion of machining of the work by the machine tool.
  • the priority of the connection request from the second numerical controller with a relatively short cycle time is set higher than that of the first numerical controller, as shown on the right side of FIG.
  • the control of the second machine tool can be performed in parallel with the control of the robot by the first numerical controller. Therefore, the waiting time for connection approval from the robot control device of the second numerical control device can be made shorter than the example on the left side of FIG.
  • the robot can be controlled for the second time by the second numerical controller immediately after the robot control by the first numerical controller is completed, so the waiting time of the robot is shorter than the example on the left side of FIG. can do.
  • the operator can reduce the cycle time of the entire system according to the cycle time of each numerical control device 5_1, .
  • a priority value can be specified for connection requests from 5_N.
  • the robot connection request units 55_1, . . . , 55_N of the numerical control devices 5_1, . is sent to the robot control device 6 as a priority value.
  • the numerical control system 1 can be operated under a predetermined initial value. It is convenient because you can
  • the robot connection determination unit 64 determines the connection approval transmission destination based on a predetermined initial value. decide. According to this embodiment, even if the operator forgets to specify the priority value when creating a numerical control program, the numerical control system 1 can be operated under a predetermined initial value. It is convenient because you can
  • FIG. 10 is a functional block diagram of the numerical control system 1A according to this embodiment.
  • the same components as those of the numerical control system 1 according to the first embodiment are denoted by the same reference numerals, and detailed description thereof will be omitted.
  • the numerical control system 1A includes a plurality of machine tools 2_1, . It comprises a control device 4, a robot 3 provided near each of the machine tools 2_1, .
  • the numerical controller 4 and the robot controller 6A each include arithmetic processing means such as a CPU (Central Processing Unit), auxiliary storage means such as HDD (Hard Disk Drive) and SSD (Solid State Drive) storing various programs, and arithmetic processing.
  • Main storage means such as RAM (Random Access Memory) for storing data temporarily required for program execution, operation means such as a keyboard for operators to perform various operations, and various information displayed to the operator
  • It is a computer configured by hardware such as display means such as a display that displays images.
  • Various signals can be mutually transmitted and received between the robot control device 6A and the numerical control device 4 by, for example, Ethernet (registered trademark).
  • the numerical controller 4 has various functions such as N control modules 40_1, . is realized.
  • Each control module 40_1, has a robot connection request part and a communication interface. A communication interface of each control module 40_1, .
  • the module number assigned to each control module 40_1, . . . , 40_N is included.
  • the robot control device 6A includes a communication interface 60, a control area 61, a connection request buffer 62, a robot connection response section 63, a robot connection determination section 64A, an input analysis section 65, a robot program generation section 66, and a robot motion control unit 67 .
  • the robot connection determination unit 64A determines one of the control modules 40_1, . is sent to the robot connection response unit 63 .
  • the specific procedure for determining the connection approval transmission destination based on the connection request information in the robot connection determination unit 64A is substantially the same as the procedure in the robot connection determination unit 64 according to the first embodiment. Description is omitted.

Landscapes

  • Engineering & Computer Science (AREA)
  • Manufacturing & Machinery (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Mechanical Engineering (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • Robotics (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Numerical Control (AREA)

Abstract

数値制御システム1は、数値制御プログラムに基づいて工作機械の動作を制御するとともにロボット指令を生成するN台の数値制御装置5_1,…と、ロボット指令に基づいてロボット3の動作を制御するロボット制御装置6と、を備える。各数値制御装置は、ロボット制御装置6に対する接続要求をロボット制御装置6へ送信する通信インターフェース56_1,…を備え、ロボット制御装置6は、通信インターフェース60によって接続要求を受信した後、この接続要求に対する接続承認を生成するロボット接続応答部63と、複数の数値制御装置のうち何れか1つを接続承認送信先として決定するロボット接続決定部64と、を備える。通信インターフェース60は、接続承認送信先の通信インターフェースへ接続承認を送信し、各数値制御装置の通信インターフェースは、接続承認を受信した後にロボット指令の通信インターフェース60への送信を開始する。

Description

数値制御システム
 本開示は、数値制御システムに関する。
 一般的に、工作機械を制御するための数値制御プログラムとロボットを制御するためのロボットプログラムとは、プログラム言語が異なる。このため工作機械とロボットとを並行して稼働させるためには、オペレータは数値制御プログラムとロボットプログラムとの両方に習熟する必要がある。
 特許文献1には、数値制御プログラムによって工作機械とロボットとの両方を制御する数値制御装置が示されている。特許文献1の数値制御装置によれば、数値制御プログラムに慣れ親しんだオペレータは、ロボットプログラムを習熟することなくロボットも制御できる。
特許第6647472号
 ところで特許文献1には、1台のロボットと1台の工作機械とを並行して稼働させる技術について示されているが、実際の工場では、例えば1台のロボットと複数台の工作機械とを並行して稼働させる場合もある。このような構成において、ロボットの動作を直接的に制御するロボット制御装置と各工作機械を制御する複数台の数値制御装置との間で通信を行おうとすると、ロボット制御装置には、数値制御装置の台数分、通信インターフェースを確保する必要がある。すなわち、1台のロボット制御装置に対し接続可能な数値制御装置の台数は、ロボット制御装置の通信インターフェースのサイズによって制限されてしまう。
 またこのように1台のロボット制御装置に対し数値制御装置の台数分の通信インターフェースを設けた場合、ロボット制御装置がある数値制御装置から送信される指令に基づいてロボットの動作を制御している間、他の数値制御装置はロボットの動作が完了したかどうかを常時通信によって確認する必要が生じる。このためロボット制御装置には、数値制御装置の台数に比例した通信負荷がかかってしまうため、その分、ロボットの動作性能が低下するおそれがある。
 なお数値制御装置には、複数の制御モジュールによって複数台の工作機械の動作を並列して制御可能なものも存在する。このような数値制御装置とロボット制御装置との間で通信を行おうとすると、ロボット制御装置には、制御モジュールの数の分だけ通信インターフェースを確保する必要がある。このため上記課題は、1台のロボット制御装置と1台の数値制御装置とを接続した場合も生じ得る。
 本開示は、上記課題に鑑みてなされたものであり、数値制御装置の制御モジュールにおいて数値制御プログラムに基づいて生成されたロボット指令によりロボットの動作を制御するロボット制御装置を備える数値制御システムにおいて、ロボット制御装置の通信インターフェースのサイズによらず、ロボット制御装置に接続される数値制御装置の台数やその制御モジュールの数を変更可能な数値制御システムを提供する。
 本開示の一態様は、数値制御プログラムに基づいて工作機械の動作を制御する数値制御装置と、ロボット指令に基づいて前記ロボットの動作を制御するロボット制御装置と、を備え、前記数値制御装置は、前記数値制御プログラムに基づいて前記ロボット指令を生成する1以上の制御モジュールを有し、前記制御モジュールは、前記数値制御プログラムに基づいて前記ロボット指令を生成するロボット指令生成部と、前記ロボット制御装置に対する接続要求を生成するロボット接続要求部と、前記接続要求及び前記ロボット指令を前記ロボット制御装置へ送信する指令送信側通信インターフェースと、を備え、前記ロボット制御装置は、前記接続要求及び前記ロボット指令を受信する指令受信側通信インターフェースと、前記ロボット指令に基づいて前記ロボットの動作を制御するロボット動作制御部と、前記指令受信側通信インターフェースによって前記接続要求を受信した後、当該接続要求に対する接続承認を生成するロボット接続応答部と、を備え、前記指令受信側通信インターフェースは、前記接続承認を前記指令送信側通信インターフェースへ送信し、前記指令送信側通信インターフェースは、前記接続承認を受信した後に前記ロボット指令の前記指令受信側通信インターフェースへの送信を開始する、数値制御システムである。
 本開示の一態様によれば、工作機械を制御するために利用される数値制御プログラムに慣れ親しんだオペレータであれば、この数値制御プログラムとは異なる言語で記述されるロボットプログラムを習熟することなくロボットも制御できる。また本開示の一態様によれば、数値制御装置の指令送信側通信インターフェースは、数値制御装置のロボット接続要求部において生成した接続要求に対する応答としてロボット制御装置のロボット接続応答部によって生成された接続承認を受信した後に、ロボット指令生成部によって生成したロボット指令の指令受信側通信インターフェースへの送信を開始する。換言すれば、数値制御装置側からロボット制御装置側へのロボット指令の送信を開始するタイミングを、数値制御装置側から送信される接続要求に応じてロボット制御装置側で管理することができる。よって本開示の一態様によれば、1つの指令受信側通信インターフェースを使い回すことにより、複数の指令送信側通信インターフェースからのロボット指令を受信することができる。よって本開示の一態様によれば、ロボット制御装置の指令受信側通信インターフェースのサイズによらず、ロボット制御装置に接続される数値制御装置の台数やその制御モジュールの数を変更することができる。また本開示の一態様によれば、例えばロボット制御装置がある数値制御装置から送信されるロボット指令に基づいてロボットの動作を制御している間、他の数値制御装置はロボットの動作が完了したかどうかを常時通信によって確認する必要が無くなるため、数値制御装置の接続台数が増加してもロボット制御装置における通信負荷が増加することは無いので、ロボットの動作性能の低下を防止することができる。
本開示の第1実施形態に係る数値制御システムの概略図である。 第1数値制御装置及び第N数値制御装置の機能ブロック図である。 ロボット制御装置の機能ブロック図である。 第1数値制御プログラムの第1の例である。 第N数値制御プログラムの第1の例である。 上記第1の例の数値制御プログラムに基づいて第1及び第N数値制御装置を作動させた場合における第1及び第N数値制御装置とロボット制御装置との間の信号や情報の流れを示すシーケンス図である。 第1数値制御プログラムの第2の例である。 第N数値制御プログラムの第2の例である。 上記第2の例の数値制御プログラムに基づいて第1及び第N数値制御装置を作動させた場合における第1及び第N数値制御装置とロボット制御装置との間の信号や情報の流れを示すシーケンス図である。 第1数値制御プログラムの第3の例である。 第N数値制御プログラムの第3の例である。 上記第3の例の数値制御プログラムに基づいて第1及び第N数値制御装置を作動させた場合における第1及び第N数値制御装置とロボット制御装置との間の信号や情報の流れを示すシーケンス図である。 1台のロボット制御装置に2台の数値制御装置を接続した場合におけるシステム全体のサイクルタイムを、従来の数値制御システムと上記実施形態に係る数値制御システムとで比較した図である。 本開示の第2実施形態に係る数値制御システムの機能ブロック図である。
<第1実施形態>
 以下、図面を参照して、本開示の第1実施形態に係る数値制御システム1について説明する。
 図1は、本実施形態に係る数値制御システム1の概略図である。
 数値制御システム1は、複数台(本実施形態では、2以上の整数であるN台)の工作機械2_1,…,2_Nと、各工作機械2_1,…,2_Nの動作を制御する複数台(本実施形態では、工作機械の台数と同数のN台)の数値制御装置5_1,…,5_Nと、各工作機械2_1,…,2_Nの近傍に設けられたロボット3と、各数値制御装置5_1,…,5_Nとそれぞれ通信可能に接続されたロボット制御装置6と、を備える。なお以下では、N台の工作機械2_1,…,2_N及びN台の数値制御装置5_1,…,5_Nのうち、2番目からN-1番目までの工作機械及び数値制御装置の図示及び詳細な説明を省略する。
 なお本実施形態では、1台のロボット制御装置6に対し、N台の数値制御装置5_1,…5_Nを通信可能に接続した場合について説明するが、本開示はこれに限らない。ロボット制御装置に対し接続する数値制御装置の台数は、後述の第3実施形態に示すように1台としてもよい。
 N台の数値制御装置のうち1番目である第1数値制御装置5_1は、所定の第1数値制御プログラムに従い、N台の工作機械のうち1番目である第1工作機械2_1に対する第1工作機械制御信号及びロボット3に対する第1ロボット指令を生成し、これら第1工作機械制御信号及び第1ロボット指令をそれぞれ第1工作機械2_1及びロボット制御装置6へ送信する。
 N台の数値制御装置のうちN番目である第N数値制御装置5_Nは、所定の第N数値制御プログラムに従い、N台の工作機械のうちN番目である第N工作機械2_Nに対する第N工作機械制御信号及びロボット3に対する第Nロボット指令を生成し、これら第N工作機械制御信号及び第Nロボット指令をそれぞれ第N工作機械2_N及びロボット制御装置6へ送信する。
 ロボット制御装置6は、各数値制御装置5_1,…,5_Nから送信されるロボット指令に応じて、ロボット3の動作を制御する。
 各工作機械2_1,…,2_Nは、各数値制御装置5_1,…,5_Nから送信される工作機械制御信号に応じて図示しないワークを加工する。ここで各工作機械2_1,…,2_Nは、例えば、旋盤、ボール盤、フライス盤、研削盤、レーザ加工機、及び射出成形機等であるが、これらに限らない。
 ロボット3は、ロボット制御装置6による制御下において動作し、例えば各工作機器2_1,…,2_Nによる加工を経たワークに対し所定の作業を行う。ロボット3は、例えば多関節ロボットであり、そのアーム先端部31にはワークを把持するための把持ツール32が取り付けられている。以下では、ロボット3は、各工作機械2_1,…,2_Nによる加工を経たワークを所定の位置で把持ツール32によって把持し、これらワークを所定の位置へ搬送する場合について説明するが、これに限らない。また以下では、ロボット3は、6軸の多関節ロボットとした場合について説明するが、軸数はこれに限らない。
 各数値制御装置5_1,…,5_N及びロボット制御装置6は、それぞれCPU(Central Processing Unit)等の演算処理手段、各種プログラムを格納したHDD(Hard Disk Drive)やSSD(Solid State Drive)等の補助記憶手段、演算処理手段がプログラムを実行する上で一時的に必要とされるデータを格納するためのRAM(Random Access Memory)といった主記憶手段、オペレータが各種操作を行うキーボードといった操作手段、及びオペレータに各種情報を表示するディスプレイといった表示手段等のハードウェアによって構成されるコンピュータである。ロボット制御装置6と各数値制御装置5_1,…,5_Nとの間では、例えばイーサネット(登録商標)によって相互に各種信号を送受信することが可能となっている。
 図2Aは、第1数値制御装置5_1及び第N数値制御装置5_Nの機能ブロック図であり、図2Bは、ロボット制御装置6の機能ブロック図である。以下では、先に数値制御装置5_1,5_Nの詳細な構成について説明した後、ロボット制御装置6の詳細な構成について説明する。
 図2Aに示すように、第1数値制御装置5_1には、上記ハードウェア構成によって、第1工作機械2_1及びロボット3の制御系統としての制御モジュール50_1、及びプログラム記憶部59_1等の各種機能が実現される。なお以下では、第1数値制御装置5_1には、第1工作機械2_1及びロボット3の両方の動作を制御する制御モジュール50_1を設けた場合について説明するが、本開示はこれに限らない。第1数値制御装置5_1には、第1工作機械2_1の動作を制御する工作機械用の制御モジュールと、ロボット3の動作を制御するロボット用の制御モジュールとを別々に設けてもよい。
 プログラム記憶部59_1には、例えばオペレータによる操作に基づいて作成された複数の第1数値制御プログラムが格納されている。より具体的には、プログラム記憶部59_1には、第1工作機械2_1の動作を制御するための第1工作機械2_1に対する複数の指令ブロックやロボット3の動作を制御するためのロボット3に対する複数の指令ブロック等によって構成される第1数値制御プログラムが格納されている。プログラム記憶部59_1に格納されている第1数値制御プログラムは、GコードやMコード等の既知のプログラム言語で記述されている。なお以下では、第1数値制御プログラムに、第1工作機械2_1に対する指令ブロック及びロボット3に対する指令ブロックが含まれる場合について説明するが、本開示はこれに限らない。第1工作機械2_1に対する指令ブロックとロボット3に対する指令ブロックを異なる数値制御プログラムに記述してもよい。
 プログラム記憶部59_1に格納された第1数値制御プログラムにおいて、第1工作機械2_1に対する指令ブロックは、第1工作機械2_1上又は第1工作機械2_1の近傍に定められた基準点を原点とする第1工作機械座標系に基づいて記述されている。すなわち第1数値制御プログラムにおいて、第1工作機械2_1の制御点の位置及び姿勢等は、第1工作機械座標系における座標値によって記述される。
 またプログラム記憶部59_1に格納された第1数値制御プログラムにおいて、ロボット3に対する指令ブロックは、上述の第1工作機械座標系とは異なるロボット座標系に基づいて記述されている。すなわち第1数値制御プログラムにおいて、ロボット3の制御点(例えば、ロボット3のアーム先端部31)の位置及び姿勢は、第1工作機械座標系とは異なるロボット座標系における座標値によって記述される。このロボット座標系は、ロボット3上又はロボット3の近傍に定められた基準点を原点とする座標系である。なお以下では、ロボット座標系は第1工作機械座標系と異なる場合について説明するが、本開示はこれに限らない。ロボット座標系は第1工作機械座標系と一致させてもよい。換言すれば、ロボット座標系の原点や座標軸方向を第1工作機械座標系の原点や座標軸方向と一致させてもよい。
 またこの第1数値制御プログラムにおいてロボット座標系は、制御軸が異なる2以上の座標形式の間で切替可能となっている。より具体的には、第1数値制御プログラムにおいてロボット3の制御点の位置及び姿勢は、直交座標形式又は各軸座標形式によって指定可能である。
 各軸座標形式では、ロボット3の制御点の位置及び姿勢は、ロボット3の6つの関節の回転角度値(J1,J2,J3,J4,J5,J6)を成分とした計6つの実数の座標値によって指定される。
 直交座標形式では、ロボット3の制御点の位置及び姿勢は、3つの直交座標軸に沿った3つの座標値(X,Y,Z)と、各直交座標軸周りの3つの回転角度値(A,B,C)と、を成分とした計6つの実数の座標値によって指定される。
 ここで各軸座標形式の下では、ロボット3の各関節の回転角度を直接的に指定するため、ロボット3の各アームや手首の軸配置や、360度以上回転可能な関節の回転数(以下、これらを総称して「ロボット3の形態」という)も一意的に定まる。これに対し直交座標形式の下では、6つの座標値(X,Y,Z,A,B,C)によってロボット3の制御点の位置及び姿勢を指定するため、ロボット3の形態は一意的に定めることができない。そこで第1数値制御プログラムでは、ロボット3の形態を、所定の桁数の整数値である形態値Pによって指定することが可能となっている。従ってロボット3の制御点の位置及び姿勢並びにロボット3の形態は、各軸座標形式の下では6つの座標値(J1,J2,J3,J4,J5,J6)によって表され、直交座標形式の下では6つの座標値及び1つの形態値(X,Y,Z,A,B,C,P)によって表される。なお以下では、便宜上形態値Pも座標値という。
 第1数値制御プログラムでは、Gコード“G68.8”及び“G68.9”によって座標形式を設定することが可能となっている。より具体的には、Gコード“G68.8”を入力することにより、座標形式は各軸座標形式に設定され、Gコード“G68.9”を入力することにより、座標形式は直交座標形式に設定される。これら座標形式を設定するためのGコード“G68.8”及び“G68.9”は、モーダルである。従って座標形式は、これらGコードによって座標形式を各軸座標形式又は直交座標形式に設定した後は、再びこれらGコードによって座標形式が変更されるまで維持される。なお本実施形態では、第1数値制御プログラムにこれら座標形式を設定するためのGコードが記載されていない場合、座標形式は自動的に直交座標形式に設定されるものとするが、これに限らない。
 制御モジュール50_1は、プログラム入力部51_1と、入力解析部52_1と、工作機械制御部53_1と、ロボット指令生成部54_1と、ロボット接続要求部55_1と、通信インターフェース56_1と、を備え、これらを用いることにより、第1数値制御プログラムに基づいて、第1工作機械2_1の動作を制御するとともにロボット3の動作を制御するための第1ロボット指令を生成する。
 プログラム入力部51_1は、プログラム記憶部59_1から所定の第1数値制御プログラムを読み出し、これを逐次入力解析部52_1へ入力する。
 入力解析部52_1は、プログラム入力部51_1から入力される第1数値制御プログラムに基づく指令種別を指令ブロック毎に解析し、その解析結果を工作機械制御部53_1、ロボット指令生成部54_1、及びロボット接続要求部55_1へ送信する。より具体的には、入力解析部52_1は、指令ブロックの指令種別が第1工作機械2_1に対する指令である場合には、これを工作機械制御部53_1へ送信し、指令ブロックの指令種別がロボット3に対する指令である場合には、これをロボット指令生成部54_1へ送信し、指令ブロックの指令種別がロボット制御装置6に対する要求である場合には、これをロボット接続要求部55_1へ送信する。
 工作機械制御部53_1は、入力解析部52_1から送信される第1数値制御プログラムの解析結果に応じて第1工作機械2_1の動作を制御するための第1工作機械制御信号を生成し、第1工作機械2_1の各種軸を駆動するアクチュエータへ入力する。第1工作機械2_1は、工作機械制御部53_1から入力される第1工作機械制御信号に応じて動作し、図示しないワークを加工する。
 ロボット接続要求部55_1は、入力解析部52_1から送信される第1数値制御プログラムの解析結果に基づいて、ロボット制御装置6に対する接続要求又はロボット制御装置6に対する接続解除要求を生成する。ここでロボット制御装置6に対する接続要求とは、より具体的には、後述のロボット指令生成部54_1において第1数値制御プログラムに基づいて生成した第1ロボット指令に基づいてロボット3の動作を制御できるよう、第1数値制御装置5_1の通信インターフェース56_1からロボット制御装置6の後述の通信インターフェース60へ第1ロボット指令の送信に対する許可をロボット制御装置6に対し求めることをいう。またロボット制御装置6に対する接続解除要求とは、より具体的には、第1ロボット指令に基づくロボット3の動作の制御を終了するべく、通信インターフェース56_1から通信インターフェース60への第1ロボット指令の送信の終了をロボット制御装置6に対し通知することをいう。
 ここで第1数値制御プログラムでは、Gコード“G200”によってロボット接続要求部55_1に対し接続要求を生成させ、またGコード“G201”によってロボット接続要求部55_1に対し接続解除要求を生成させることが可能となっている。また第1数値制御プログラムでは、上記Gコード“G200”に続けて優先度指定コマンド“P_”を記述することにより、接続要求に対する優先度の値を指定することが可能となっている。なお上記優先度指定コマンド中のアンダーバーの部分には、優先度の高さを表す値として、1以上の任意の整数値が入力される。なお以下では、優先度の値が大きいほど優先度は高いものとするが、本開示はこれに限らない。優先度の値が小さいほど優先度を高くするようにしてもよい。
 ロボット接続要求部55_1は、以上のような手順により第1数値制御プログラムに基づいて接続要求を生成した場合、生成した接続要求とともに、この接続要求と関連付けられた接続要求情報を通信インターフェース56_1に書き込み、これら接続要求及び接続要求情報をロボット制御装置6へ送信する。ここで接続要求情報には、接続要求の送信元である第1数値制御装置5_1をロボット制御装置6側で特定するための識別情報(例えば、第1数値制御装置5_1に固有のIPアドレス)と、上述の優先度指定コマンドに基づいて指定される優先度の値と、が含まれる。
 なお本実施形態では、第1数値制御プログラムによって接続要求に対する優先度の値が指定されていない場合、すなわち第1数値制御プログラムに優先度指定コマンドが記述されていない場合、ロボット接続要求部55_1は、予め定められた初期値を優先度の値として通信インターフェース56_1に書き込み、ロボット制御装置6へ送信する場合について説明するが、本開示はこれに限らない。後に図7B及び図8を参照して説明するように、第1数値制御プログラムによって接続要求に対する優先度の値が指定されていない場合、ロボット接続要求部55_1は、ロボット制御装置6へ優先度の値を送信せずに識別情報のみを送信してもよい。
 またロボット接続要求部55_1は、以上のような手順により第1数値制御プログラムに基づいて接続解除要求を生成した場合、生成した接続解除要求を通信インターフェース56_1に書き込み、この接続解除要求をロボット制御装置6へ送信する。
 ロボット指令生成部54_1は、入力解析部52_1から送信される第1数値制御プログラムの解析結果に基づいて、ロボット3の制御軸を移動させるための第1ロボット指令を生成し、生成したロボット指令を通信インターフェース56_1に書き込み、このロボット指令をロボット制御装置6へ送信する。なお以下では、第1数値制御プログラムのうち、ロボット接続要求部55_1に対し接続要求を生成させるためのGコード“G200”とロボット接続要求部55_1に対し接続解除要求を生成させるためのGコード“G201”との間の指令ブロックをロボット3に対する指令とした場合について説明するが、本開示はこれに限らない。
 またロボット指令生成部54_1は、上述のようにロボット接続要求部55_1において生成した接続要求に対するロボット制御装置6による応答として、ロボット制御装置6から送信される後述の接続承認を通信インターフェース56_1によって受信したことを確認した後、上述のように第1数値制御プログラムに基づく第1ロボット指令の生成、及びこの第1ロボット指令のロボット制御装置6側への送信を開始する。
 通信インターフェース56_1は、ロボット接続要求部55_1によって接続要求及び接続要求情報が書き込まれると、これら接続要求及び接続要求情報をロボット制御装置6の通信インターフェース60へ送信する。通信インターフェース56_1は、ロボット接続要求部55_1によって接続解除要求が書き込まれると、この接続解除要求を通信インターフェース60へ送信する。
 通信インターフェース56_1は、上述の接続要求に対する応答としてロボット制御装置6から後述の手順によって送信される接続承認を受信した場合、接続承認を受信したことをロボット指令生成部54_1に通知する。また通信インターフェース56_1は、接続承認を受信した後、上述のようにロボット指令生成部54_1によって第1ロボット指令が書き込まれると、この第1ロボット指令を通信インターフェース60へ送信する。
 なお第N数値制御装置5_Nは、制御対象が第N工作機械2_Nである点において第1数値制御装置5_1と異なり、その他の構成については第1数値制御装置5_1とほぼ同じであるので、以下では第N数値制御装置5_Nの詳細な構成の説明は省略する。すなわち第N数値制御装置5_Nは、複数の第N数値制御プログラムが格納されたプログラム記憶部59_Nと、第1数値制御装置5_1の制御モジュール50_1とほぼ同じ構成の制御モジュール50_Nと、第1数値制御装置5_1のプログラム入力部51_1とほぼ同じ構成のプログラム入力部51_Nと、第1数値制御装置5_1の入力解析部52_1とほぼ同じ構成の入力解析部52_Nと、第1数値制御装置5_1の工作機械制御部53_1とほぼ同じ構成の工作機械制御部53_Nと、第1数値制御装置5_1のロボット指令生成部54_1とほぼ同じ構成のロボット指令生成部54_Nと、第1数値制御装置5_1のロボット接続要求部55_1とほぼ同じ構成のロボット接続要求部55_Nと、第1数値制御装置5_1の通信インターフェース56_1とほぼ同じ構成の通信インターフェース56_Nと、を備える。
 次に、図2Bを参照しながらロボット制御装置6の構成について説明する。図2Bに示すように、ロボット制御装置6には、上記ハードウェア構成によって、通信インターフェース60、ロボット接続応答部63、ロボット接続決定部64、入力解析部65、ロボットプログラム生成部66、及びロボット動作制御部67等の各種機能が実現される。
 通信インターフェース60は、各数値制御装置5_1,…,5_Nの通信インターフェース56_1,…,56_Nと通信可能に接続され、通信インターフェース60と通信インターフェース56_1,…,56_Nとの間でロボット指令、接続要求、接続要求情報、接続解除要求、及び後述の接続承認等の各種情報を送受信することが可能となっている。
 通信インターフェース60は、通信インターフェース56_1,…,56_Nから送信される各種情報を一時的に記憶する記憶領域として、制御用領域61及び接続要求バッファ62を備える。
 通信インターフェース60は、各通信インターフェース56_1,…56_Nから送信されるロボット指令を受信すると、これらロボット指令を制御用領域61に格納する。上述のように各数値制御装置5_1,…,5_Nは、各々から送信される接続要求に対する応答としてロボット制御装置6から送信される接続承認を受信した後にロボット指令の送信を開始する。従ってロボット制御装置6は、各数値制御装置5_1,…,5_Nへの接続承認の送信タイミングをずらすことにより、各数値制御装置5_1,…,5_Nからのロボット指令の送信時期が重複しないようにすることができる。よって本実施形態によれば、ロボット指令を一時的に記憶する制御用領域61を使い回すことができるので、ロボット制御装置6と接続する数値制御装置の台数を増やしても制御用領域61のサイズを大きくする必要がない。
 通信インターフェース60は、各通信インターフェース56_1,…,56_Nから送信される接続要求を受信すると、この接続要求と関連付けられた接続要求情報を、受信順で接続要求バッファ62に格納する。上述のように接続要求情報は、接続要求の送信元をロボット制御装置6側で特定するために必要な識別情報と、優先度の値(優先度指定コマンドに基づいて指定される値又は予め定められた初期値)と、を含む。通信インターフェース60は、各通信インターフェース56_1,…,56_Nから送信される接続解除要求を受信すると、接続要求バッファ62に格納された複数の接続要求情報のうち、受信した接続解除要求と同じ送信元のものを削除する。
 ロボット接続応答部63は、所定の周期で接続要求バッファ62に接続要求情報が格納されていないかどうかを確認し、接続要求情報が格納されている場合にはこれを読み取り、ロボット接続決定部64へ送信する。ロボット接続応答部63は、接続要求バッファ62に複数組の接続要求情報が格納されている場合には、接続要求バッファ62に格納されている複数組の接続要求情報を全てロボット接続決定部64へ送信する。
 ロボット接続決定部64は、ロボット接続応答部63から送信される接続要求情報に基づいて接続承認送信先を決定し、この接続承認送信先をロボット接続応答部63へ送信する。
 ここでロボット接続決定部64は、接続要求バッファ62には接続要求情報が1組しか格納されていない場合、この接続要求情報の送信元を識別情報に基づいて特定し、この送信元を接続承認送信先として決定する。
 またロボット接続決定部64は、接続要求バッファ62に複数組の接続要求情報が格納されている場合、各接続要求情報の送信元を識別情報に基づいて特定するとともに、各送信元のうち何れか1つを接続承認送信先として決定する。ここで各接続要求情報には、上述のように接続要求に対する優先度の値が含まれているので、ロボット接続決定部64は、これら優先度の値に基づいて各送信元のうち何れか1つを接続承認送信先として決定する。より具体的には、ロボット接続決定部64は、各接続要求情報に含まれる優先度の値を比較し、最も優先度の値が大きなもの(すなわち、優先度が最も高いもの)の送信元を接続承認送信先として決定する。なお優先度の値が同じである場合、ロボット接続決定部64は、通信インターフェース60において先に受信した接続要求の送信元を接続承認送信先として決定する。なお上述のように優先度の値が小さいほど優先度を高くした場合、ロボット接続決定部64は、最も優先度の値が小さなものの送信元を接続承認送信先として決定する。
 ロボット接続応答部63は、以上の手順によりロボット接続決定部64において接続承認送信先が決定されると、接続承認を生成するとともに、通信インターフェース60を介して接続承認送信先の通信インターフェースへ接続承認を送信する。これにより、接続承認送信先の通信インターフェースから通信インターフェース60へ数値制御プログラムに基づいて生成されたロボット指令が送信される。
 入力解析部65は、制御用領域61に格納されたロボット指令を読み取り、解析し、解析結果をロボットプログラム生成部66へ送信する。
 ロボットプログラム生成部66は、入力解析部65から送信されるロボット指令の解析結果に応じたロボットプログラムを生成する。より具体的には、ロボットプログラム生成部66は、入力解析部65からロボット指令が入力されると、このロボット指令に対するロボット命令を図示しない記憶部に格納されているロボットプログラムに追加する。
 ロボット動作制御部67は、ロボットプログラム生成部66によって生成されたロボットプログラムを起動するとともに、起動したロボットプログラム内に記述されたロボット命令を逐次実行することによりロボット3の動作を制御する。より具体的には、ロボット動作制御部67は、ロボット命令を実行することによってロボット3の各制御軸の目標位置を算出するとともに、算出した目標位置が実現するように、ロボット3の各サーボモータをフィードバック制御することによってロボット3に対するロボット制御信号を生成し、ロボット3のサーボモータへ入力する。
 次に、以上のように構成された数値制御システム1における各種信号や情報の流れの第1の例について、図3A、図3B、及び図4を参照しながら説明する。
 図3Aは、第1数値制御プログラムの第1の例であり、図3Bは、第N数値制御プログラムの第1の例である。なおこれら図3A及び図3Bでは、各数値制御プログラムを構成する複数の指令ブロックのうち第1及び第N工作機械に対する指令ブロックの図示を省略する。
 図4は、図3A及び図3Bに示す数値制御プログラムに基づいて第1及び第N数値制御装置を作動させた場合における第1及び第N数値制御装置とロボット制御装置との間の信号や情報の流れを示すシーケンス図である。
 始めにシーケンス番号“N10”に示すブロックにおいて、第1数値制御装置のロボット接続要求部には、ロボット制御装置に対する接続要求を生成するとともに優先度の値として“1”を指定するコマンド“G200 P1”が入力される。これに応じて第1数値制御装置のロボット接続要求部及び通信インターフェースは、ロボット制御装置の通信インターフェースへ接続要求及び接続要求情報を送信する。ここで第1数値制御装置からロボット制御装置へ送信される接続要求情報には、第1数値制御装置に固有のIPアドレス“192.168.0.10”及び優先度の値“1”が含まれる。
 次にシーケンス番号“N20”に示すブロックにおいて、第N数値制御装置のロボット接続要求部には、ロボット制御装置に対する接続要求を生成するとともに優先度の値として“2”を指定するコマンド“G200 P2”が入力される。これに応じて第N数値制御装置のロボット接続要求部及び通信インターフェースは、ロボット制御装置の通信インターフェースへ接続要求及び接続要求情報を送信する。ここで第N数値制御装置からロボット制御装置へ送信される接続要求情報には、第N数値制御装置に固有のIPアドレス“192.168.0.255”及び優先度の値“2”が含まれる。
 一方、ロボット制御装置の通信インターフェースは、以上のような手順によって第1及び第N数値制御装置から接続要求及び接続要求情報を受信したことに応じて、受信した接続要求情報を受信順で接続要求バッファに格納する。その後ロボット制御装置のロボット接続決定部は、接続要求バッファに格納された2組の接続要求情報に基づいて接続承認送信先を決定する。図4に示す例では、第1数値制御装置からの接続要求の優先度の値は“1”であり、第N数値制御装置からの接続要求の優先度の値は“2”である。すなわち第N数値制御装置からの接続要求の優先度は、第1数値制御装置からの接続要求の優先度よりも高い。よってロボット接続決定部は、第N数値制御装置を接続承認送信先として決定する。またロボット制御装置のロボット接続応答部及び通信インターフェースは、第N数値制御装置の通信インターフェースへ接続承認を送信する。
 第N数値制御装置のロボット指令生成部は、ロボット制御装置からの接続承認の受信を確認したことに応じて、“N21”~“N23”に示すブロックを順次読み込み、これら“N21”~“N23”の指令に応じた第Nロボット指令を生成し、第N数値制御装置の通信インターフェースは、生成された第Nロボット指令を順次ロボット制御装置へ送信する。またロボット制御装置は、受信した第Nロボット指令に基づいてロボットの動作を制御するとともに、第Nロボット指令の読み取りが完了したことに応じて第N数値制御装置へ読み取り完了通知を送信する。なおこのように第N数値制御装置から送信される第Nロボット指令に基づいてロボットの動作を制御している間、優先度が低い第1数値制御装置は、ロボット制御装置からの接続承認を待つ状態となる。従ってこの間、第1数値制御装置は、ロボット制御装置に対し通信によりロボットの動作状態を積極的に確認する必要はない。
 次にシーケンス番号“N24”に示すブロックにおいて、第N数値制御装置のロボット接続要求部には、ロボット制御装置に対する接続解除要求を生成するコマンド“G201”が入力される。これに応じて第N数値制御装置のロボット接続要求部及び通信インターフェースは、ロボット制御装置の通信インターフェースへ接続解除要求を送信する。またロボット制御装置の通信インターフェースは、第N数値制御装置からの接続解除要求を受信したことに応じて、接続要求バッファに格納されている複数組の接続要求情報のうち、第N数値制御装置を送信元とするものを削除する。これにより、接続要求バッファに格納されている接続要求情報は、送信元を第1数値制御装置とするもののみとなる。
 その後ロボット制御装置のロボット接続決定部は、接続要求バッファに格納された1組の接続要求情報の送信元である第1数値制御装置を接続承認送信先として決定する。またロボット制御装置のロボット接続応答部及び通信インターフェースは、第1数値制御装置の通信インターフェースへ接続承認を送信する。
 第1数値制御装置のロボット指令生成部は、ロボット制御装置からの接続承認の受信を確認したことに応じて、“N11”~“N14”に示すブロックを順次読み込み、これら“N11”~“N14”の指令に応じた第1ロボット指令を生成し、第1数値制御装置の通信インターフェースは、生成された第1ロボット指令を順次ロボット制御装置へ送信する。またロボット制御装置は、受信した第1ロボット指令に基づいてロボットの動作を制御するとともに、第1ロボット指令の読み取りが完了したことに応じて第1数値制御装置へ読み取り完了通知を送信する。
 次にシーケンス番号“N15”に示すブロックにおいて、第1数値制御装置のロボット接続要求部には、ロボット制御装置に対する接続解除要求を生成するコマンド“G201”が入力される。これに応じて第1数値制御装置のロボット接続要求部及び通信インターフェースは、ロボット制御装置の通信インターフェースへ接続解除要求を送信する。またロボット制御装置の通信インターフェースは、第1数値制御装置からの接続解除要求を受信したことに応じて、接続要求バッファに格納されている接続要求情報のうち第1数値制御装置を送信元とするものを削除する。
 次に、以上のように構成された数値制御システム1における各種信号や情報の流れの第2の例について、図5A、図5B、及び図6を参照しながら説明する。
 図5Aは、第1数値制御プログラムの第2の例であり、図5Bは、第N数値制御プログラムの第2の例である。なお図5Aに示す第1数値制御プログラム及び図5Bに示す第N数値制御プログラムは、優先度指定コマンド“P_”が記述されていない点において、図3Aに示す第1数値制御プログラム及び図3Bに示す第N数値制御プログラムと異なる。
 図6は、図5A及び図5Bに示す数値制御プログラムに基づいて第1及び第N数値制御装置を作動させた場合における第1及び第N数値制御装置とロボット制御装置との間の信号や情報の流れを示すシーケンス図である。
 始めにシーケンス番号“N30”に示すブロックにおいて、第1数値制御装置のロボット接続要求部には、ロボット制御装置に対する接続要求を生成するコマンド“G200”が入力される。これに応じて第1数値制御装置のロボット接続要求部及び通信インターフェースは、ロボット制御装置の通信インターフェースへ接続要求及び接続要求情報を送信する。ここでロボット接続要求部は、第1数値制御プログラムに基づいて優先度の値が指定されていない場合、予め定められた初期値(図6の例では、“1”)を優先度の値としてロボット制御装置へ送信する。
 次にシーケンス番号“N40”に示すブロックにおいて、第N数値制御装置のロボット接続要求部には、ロボット制御装置に対する接続要求を生成するコマンド“G200”が入力される。これに応じて第N数値制御装置のロボット接続要求部及び通信インターフェースは、ロボット制御装置の通信インターフェースへ接続要求及び接続要求情報を送信する。ここでロボット接続要求部は、第N数値制御プログラムに基づいて優先度の値が指定されていない場合、予め定められた初期値(図6の例では、“1”)を優先度の値としてロボット制御装置へ送信する。
 一方、ロボット制御装置の通信インターフェースは、以上のような手順によって第1及び第N数値制御装置から接続要求及び接続要求情報を受信したことに応じて、受信した接続要求情報を受信順で接続要求バッファに格納する。その後ロボット制御装置のロボット接続決定部は、接続要求バッファに格納された2組の接続要求情報に基づいて接続承認送信先を決定する。図6に示す例では、第1数値制御装置からの接続要求の優先度の値は“1”であり、第N数値制御装置からの接続要求の優先度の値も“1”である。すなわち第1数値制御装置と第N数値制御装置とでは、優先度は同じである。この場合、ロボット接続決定部は、先に接続要求を受信した第1数値制御装置を接続承認送信先として決定する。従ってロボット制御装置のロボット接続応答部及び通信インターフェースは、第1数値制御装置の通信インターフェースへ接続承認を送信する。なおこれ以降の流れについては、ロボット制御装置から接続承認を送信する順序が逆である点を除き図4に示す例とほぼ同じであるので、詳細な説明を省略する。
 次に、以上のように構成された数値制御システム1における各種信号や情報の流れの第3の例について、図7A、図7B、及び図8を参照しながら説明する。
 図7Aは、第1数値制御プログラムの第3の例であり、図7Bは、第N数値制御プログラムの第3の例である。なお図7Aに示す第1数値制御プログラムは、優先度指定コマンド“P_”に基づいて指定される優先度の値が図3Aに示す第1数値制御プログラムと異なる。また図7Bに示す第N数値制御プログラムは、優先度指定コマンド“P_”が記述されていない点において図3Bに示す第N数値制御プログラムと異なる。
 図8は、図7A及び図7Bに示す数値制御プログラムに基づいて第1及び第N数値制御装置を作動させた場合における第1及び第N数値制御装置とロボット制御装置との間の信号や情報の流れを示すシーケンス図である。
 始めにシーケンス番号“N50”に示すブロックにおいて、第1数値制御装置のロボット接続要求部には、ロボット制御装置に対する接続要求を生成するとともに優先度の値として“3”を指定するコマンド“G200 P3”が入力される。これに応じて第1数値制御装置のロボット接続要求部及び通信インターフェースは、ロボット制御装置の通信インターフェースへ接続要求及び接続要求情報を送信する。ここで第1数値制御装置からロボット制御装置へ送信される接続要求情報には、第1数値制御装置に固有のIPアドレス“192.168.0.10”及び優先度の値“3”が含まれる。
 次にシーケンス番号“N60”に示すブロックにおいて、第N数値制御装置のロボット接続要求部には、ロボット制御装置に対する接続要求を生成するコマンド“G200”が入力される。これに応じて第N数値制御装置のロボット接続要求部及び通信インターフェースは、ロボット制御装置の通信インターフェースへ接続要求及び接続要求情報を送信する。図6に示す例では、第N数値制御プログラムに基づいて優先度の値が指定されていない場合、予め定められた初期値を優先度の値としてロボット制御装置へ送信した場合について説明したが、本開示はこれに限らない。図8に示すように、第N数値制御プログラムに基づいて優先度の値が指定されていない場合、ロボット接続要求部及び通信インターフェースは、ロボット制御装置へ優先度の値を送信せずに識別情報のみを送信してもよい。
 一方、ロボット制御装置の通信インターフェースは、以上のような手順によって第1及び第N数値制御装置から接続要求及び接続要求情報を受信したことに応じて、受信した接続情報を受信順で接続要求バッファに格納する。なおこの際、第N数値制御装置から送信される接続要求情報には上述のように優先度の値が含まれていない。このため、接続要求バッファに格納される2組の接続要求情報のうち送信元を第N数値制御装置とする方の優先度の値は、図8に示すように空白となる。
 その後ロボット制御装置のロボット接続決定部は、接続要求バッファに格納された2組の接続要求情報に基づいて接続承認送信先を決定する。ここでロボット接続決定部は、接続要求バッファに格納されている接続要求情報に優先度の値が含まれていない場合、予め定められた初期値(例えば、“1”)に基づいて接続承認送信先を決定する。従って図8に示す例では、ロボット接続決定部は、第1数値制御装置からの接続要求の優先度の値は数値制御プログラムに基づいて指定される“3”とし、第N数値制御装置からの接続要求の優先度の値は初期値である“1”とし、接続承認送信先を決定する。このためロボット接続決定部は、より優先度が高い第1数値制御装置を接続承認送信先として決定する。従ってロボット制御装置のロボット接続応答部及び通信インターフェースは、第1数値制御装置の通信インターフェースへ接続承認を送信する。なおこれ以降の流れについては、図6に示す例とほぼ同じであるので、詳細な説明を省略する。
 本実施形態によれば、以下の効果が奏される。
 本実施形態によれば、工作機械2_1,…,2_Nを制御するために利用される数値制御プログラムに慣れ親しんだオペレータであれば、この数値制御プログラムとは異なる言語で記述されるロボットプログラムを習熟することなくロボット3も制御できる。また本実施形態によれば、各数値制御装置5_1,…,5_Nの通信インターフェース56_1,…,56_Nは、各数値制御装置5_1,…,5_Nのロボット接続要求部55_1,…,55_Nにおいて生成した接続要求に対する応答としてロボット制御装置6のロボット接続応答部63によって生成された接続承認を受信した後に、第1~第Nロボット指令のロボット制御装置6通信インターフェース60への送信を開始する。換言すれば、各数値制御装置5_1,…,5_N側からロボット制御装置6側へのロボット指令の送信を開始するタイミングを、各数値制御装置5_1,…,5_N側から送信される接続要求に応じてロボット制御装置6側で管理することができる。よって本実施形態によれば、ロボット制御装置6に設けられた1つの通信インターフェース60の制御用領域61を使い回すことにより、複数の通信インターフェース56_1,…,56_Nからのロボット指令を受信することができる。よって本実施形態によれば、ロボット制御装置6の通信インターフェース60の制御用領域61のサイズによらず、ロボット制御装置6に接続される数値制御装置の台数やその制御モジュールの数を変更することができる。また本実施形態によれば、例えばロボット制御装置6がある数値制御装置から送信されるロボット指令に基づいてロボット3の動作を制御している間、他の数値制御装置はロボット3の動作が完了したかどうかを常時通信によって確認する必要が無くなるため、数値制御装置の接続台数が増加してもロボット制御装置6における通信負荷が増加することは無いので、ロボット3の動作性能の低下を防止することができる。
 本実施形態において、ロボット制御装置6は、N台の数値制御装置5_1,…,5_Nのうち何れか1つを接続承認送信先として決定するロボット接続決定部64を備え、ロボット接続応答部63及び通信インターフェース60は、ロボット接続決定部64によって決定された接続承認送信先へ接続承認を送信する。このように本実施形態によれば、N台の数値制御装置5_1,…,5_Nの中から接続承認送信先として決定された1つのみへ接続承認を送信し、この接続承認送信先からのロボット指令のみを通信インターフェース60の制御用領域61で受信することにより、通信インターフェース60の制御用領域61を複数の数値制御装置5_1,…,5_Nに対し使い回すことができる。
 本実施形態において、各数値制御装置5_1,…,5_Nのロボット接続要求部55_1,…,55_Nは、数値制御プログラムに基づいてロボット制御装置6に対する接続要求を生成する。これにより、システム全体のサイクルタイムを考慮してオペレータが定めた適切なタイミングでロボット制御装置6に対する接続要求を生成することができる。
 本実施形態において、ロボット制御装置6は、通信インターフェース60によって受信した接続要求と関連付けられた接続要求情報を格納する接続要求バッファ62をさらに備え、ロボット接続決定部64は、接続要求バッファ62に格納された接続要求情報に基づいて接続承認送信先を決定する。本実施形態によれば、各数値制御装置5_1,…,5_Nから送信される複数の接続要求情報を接続要求バッファ62に蓄積しておき、ロボット接続決定部64は自由なタイミングで接続承認送信先を決定することができる。
 本実施形態において、接続要求バッファ62に格納される接続要求情報は、接続要求の送信元を特定する識別情報と、接続要求の優先度の値と、を含み、この優先度の値は、数値制御プログラムに基づいて優先度指定コマンド“P_”により指定可能である。また本実施形態において、ロボット接続決定部64は、接続要求バッファ62に複数組の接続要求情報が格納されている場合、これら優先度の値に基づいて接続承認送信先を決定する。これにより、システム全体のサイクルタイムができるだけ短くなるようにオペレータが定めた適切な順序でロボット制御装置6から接続承認を送信することができる。ここで、各数値制御装置5_1,…,5_Nからの接続要求に対し優先度を設定することによる効果について、図9を参照しながら説明する。
 図9は、1台のロボット制御装置に2台の数値制御装置を接続した場合におけるシステム全体のサイクルタイムを、優先度の設定を変えて比較した図である。図9の例では、第1数値制御装置(図9では、「NC1」と表記する)のサイクルタイムは、第2数値制御装置(図9では、「NC2」と表記する)のサイクルタイムより長いものとした。従って第2数値制御装置がロボット制御装置を介してロボットの動作を制御する頻度は、第1数値制御装置がロボット制御装置を介してロボットの動作を制御する頻度よりも高い。
 図9の左側は、2台の数値制御装置からロボット制御装置に送信される接続要求に対し優先度の値を指定せず、先着順で接続承認を送信した場合におけるシステム全体のサイクルタイムを示す。また図9の右側は、サイクルタイムが短い第2数値制御装置からの接続要求の優先度を、サイクルタイムが長い第1数値制御装置からの接続要求の優先度よりも高くした場合におけるシステム全体のサイクルタイムを示す。
 図9の左側に示すように、先着順で接続承認を送信した場合、第2数値制御装置よりもサイクルタイムが長い第1数値制御装置に対し先に接続承認が送信される場合がある。この場合、図9の左側に示すように、第1数値制御装置によってロボットを制御している間、換言すれば第1数値制御装置がロボット制御装置の通信インターフェースの制御用領域を占有している間、第2数値制御装置はロボット制御装置からの接続承認待ちの状態となってしまう。またこの場合、図9の左側に示すように、第1数値制御装置によるロボットの制御が完了すると、第2数値制御装置による1回目のロボットの制御が開始する。しかしながら第2数値制御装置は第1数値制御装置よりもサイクルタイムが短いため、第2数値制御装置による1回目のロボットの制御が完了してから2回目のロボットの制御が開始するまでの間、すなわち第2数値制御装置が第2工作機械を制御している間、ロボットは待機状態となる場合がある。このようなロボットの待機状態は、例えばロボットが工作機械に対しワークの取り付けや取り出しを行う場合において、工作機械によるワークの加工完了を待つ状況で発生し得る。
 これに対し、サイクルタイムが比較的短い第2数値制御装置からの接続要求の優先度を第1数値制御装置よりも高くした場合、図9の右側に示すように、第2数値制御装置による1回目のロボットの制御が完了した後、第1数値制御装置によるロボットの制御と並行して第2工作機械の制御を行うことができる。このため第2数値制御装置のロボット制御装置からの接続承認待ちの時間は、図9の左側の例よりも短くすることができる。またこの場合、第1数値制御装置によるロボットの制御が完了した後、直ちに第2数値制御装置による2回目のロボットの制御を開始できるので、ロボットの待機時間も図9の左側の例よりも短くすることができる。
 以上のように、本実施形態によれば、オペレータは、各数値制御装置5_1,…,5_Nのサイクルタイムに応じてシステム全体のサイクルタイムができるだけ短くなるように、各数値制御装置5_1,…,5_Nからの接続要求に対する優先度の値を指定することができる。
 本実施形態において、各数値制御装置5_1,…,5_Nのロボット接続要求部55_1,…,55_Nは、数値制御プログラムによって接続要求に対する優先度の値が指定されていない場合、予め定められた初期値を優先度の値としてロボット制御装置6へ送信する。本実施形態によれば、例えばオペレータが数値制御プログラムを作成する際に、優先度の値を指定し忘れた場合であっても予め定められた初期値の下で数値制御システム1を作動させることができるので、便利である。
 本実施形態において、ロボット接続決定部64は、接続要求バッファ62に格納されている接続要求情報に優先度の値が含まれていない場合、予め定められた初期値に基づいて接続承認送信先を決定する。本実施形態によれば、例えばオペレータが数値制御プログラムを作成する際に、優先度の値を指定し忘れた場合であっても予め定められた初期値の下で数値制御システム1を作動させることができるので、便利である。
<第2実施形態>
 以下、図面を参照して、本開示の第2実施形態に係る数値制御システムについて説明する。
 図10は、本実施形態に係る数値制御システム1Aの機能ブロック図である。なお以下の数値制御システム1Aの説明において、第1実施形態に係る数値制御システム1と同じ構成については同じ符号を付し、詳細な説明を省略する。
 数値制御システム1Aは、複数台(本実施形態では、2以上の整数であるN台)の工作機械2_1,…,2_Nと、各工作機械2_1,…,2_Nの動作を制御する1台の数値制御装置4と、各工作機械2_1,…,2_Nの近傍に設けられたロボット3と、数値制御装置4と通信可能に接続されたロボット制御装置6Aと、を備える。
 数値制御装置4及びロボット制御装置6Aは、それぞれCPU(Central Processing Unit)等の演算処理手段、各種プログラムを格納したHDD(Hard Disk Drive)やSSD(Solid State Drive)等の補助記憶手段、演算処理手段がプログラムを実行する上で一時的に必要とされるデータを格納するためのRAM(Random Access Memory)といった主記憶手段、オペレータが各種操作を行うキーボードといった操作手段、及びオペレータに各種情報を表示するディスプレイといった表示手段等のハードウェアによって構成されるコンピュータである。ロボット制御装置6Aと数値制御装置4との間では、例えばイーサネット(登録商標)によって相互に各種信号を送受信することが可能となっている。
 図10に示すように、数値制御装置4には、上記ハードウェア構成によって、各工作機械2_1,…,2_N及びロボット3の制御系統としてのN台の制御モジュール40_1,…,40_N等の各種機能が実現される。
 各制御モジュール40_1,…,40_Nは、それぞれ第1実施形態に係る第1数値制御装置5_1とほぼ同じ構成のプログラム記憶部、プログラム入力部、入力解析部、工作機械制御部、ロボット指令生成部、ロボット接続要求部、及び通信インターフェースを備える。各制御モジュール40_1,…,40_Nの通信インターフェースは、それぞれロボット制御装置6Aの通信インターフェース60と通信可能に接続されている。各制御モジュール40_1,…,40_Nのロボット接続要求部及び通信インターフェースから送信される接続要求情報には、接続要求の送信元を特定するための識別情報として、数値制御装置4に固有のIPアドレスの他、各制御モジュール40_1,…,40_Nに割り振られたモジュール番号が含まれている。
 ロボット制御装置6Aは、通信インターフェース60と、制御用領域61と、接続要求バッファ62と、ロボット接続応答部63と、ロボット接続決定部64Aと、入力解析部65と、ロボットプログラム生成部66と、ロボット動作制御部67と、を備える。
 ロボット接続決定部64Aは、ロボット接続応答部63から送信される接続要求情報に基づいて各制御モジュール40_1,…,40_Nのうち何れか1つを接続承認送信先として決定し、この接続承認送信先をロボット接続応答部63へ送信する。なおロボット接続決定部64Aにおいて、接続要求情報に基づいて接続承認送信先を決定する具体的な手順については、第1実施形態に係るロボット接続決定部64における手順とほぼ同じであるので、詳細な説明を省略する。
 本実施形態によれば、第1実施形態に係る数値制御システム1とほぼ同じ効果を奏する。
 以上、本開示の一実施形態について説明したが、本開示はこれに限らない。本開示の趣旨の範囲内で、細部の構成を適宜変更してもよい。
 1,1A…数値制御システム
 2_1,2_N…工作機械
 3…ロボット
 4,5_1,5_N…数値制御装置
 40_1,40_N,50_1,50_N…制御モジュール
 51_1,51_N…プログラム入力部
 52_1,52_N…入力解析部
 53_1,53_N…工作機械制御部
 54_1,54_N…ロボット指令生成部
 55_1,55_N…ロボット接続要求部
 56_1,56_N…通信インターフェース
 59_1,59_N…プログラム記憶部
 6,6A…ロボット制御装置
 60…通信インターフェース
 61…制御用領域
 62…接続要求バッファ
 63…ロボット接続応答部
 64,64A…ロボット接続決定部
 65…入力解析部
 66…ロボットプログラム生成部
 67…ロボット動作制御部
 

Claims (9)

  1.  数値制御プログラムに基づいて工作機械の動作を制御する数値制御装置と、
     ロボット指令に基づいて前記ロボットの動作を制御するロボット制御装置と、を備える数値制御システムにおいて、
     前記数値制御装置は、前記数値制御プログラムに基づいて前記ロボット指令を生成する1以上の制御モジュールを有し、
     前記制御モジュールは、
     前記数値制御プログラムに基づいて前記ロボット指令を生成するロボット指令生成部と、
     前記ロボット制御装置に対する接続要求を生成するロボット接続要求部と、
     前記接続要求及び前記ロボット指令を前記ロボット制御装置へ送信する指令送信側通信インターフェースと、を備え、
     前記ロボット制御装置は、
     前記接続要求及び前記ロボット指令を受信する指令受信側通信インターフェースと、
     前記ロボット指令に基づいて前記ロボットの動作を制御するロボット動作制御部と、
     前記指令受信側通信インターフェースによって前記接続要求を受信した後、当該接続要求に対する接続承認を生成するロボット接続応答部と、を備え、
     前記指令受信側通信インターフェースは、前記接続承認を前記指令送信側通信インターフェースへ送信し、
     前記指令送信側通信インターフェースは、前記接続承認を受信した後に前記ロボット指令の前記指令受信側通信インターフェースへの送信を開始する、数値制御システム。
  2.  前記数値制御システムは、それぞれ前記ロボット制御装置と通信可能に接続された2以上の前記数値制御装置を備え、
     前記ロボット制御装置は、複数の前記数値制御装置のうち何れか1つを前記接続承認の送信先として決定するロボット接続決定部をさらに備え、
     前記指令受信側通信インターフェースは、前記接続承認を前記送信先へ送信する、請求項1に記載の数値制御システム。
  3.  前記数値制御装置は、それぞれ前記ロボット制御装置と通信可能に接続された2以上の前記制御モジュールを備え、
     前記ロボット制御装置は、複数の前記制御モジュールのうち何れか1つを前記接続承認の送信先として決定するロボット接続決定部をさらに備え、
     前記指令受信側通信インターフェースは、前記接続承認を前記送信先へ送信する請求項1に記載の数値制御システム。
  4.  前記ロボット接続要求部は、前記数値制御プログラムに基づいて前記接続要求を生成する、請求項2又は3に記載の数値制御システム。
  5.  前記ロボット制御装置は、前記指令受信側通信インターフェースによって受信した前記接続要求と関連付けられた接続要求情報を格納する接続要求バッファをさらに備え、
     前記ロボット接続決定部は、前記接続要求情報に基づいて前記送信先を決定する、請求項4に記載の数値制御システム。
  6.  前記接続要求情報は、前記接続要求の送信元を特定する識別情報と、優先度の値と、を含み、
     前記優先度の値は、前記数値制御プログラムに基づいて指定可能である、請求項5に記載の数値制御システム。
  7.  前記ロボット接続決定部は、前記接続要求バッファに複数の前記接続要求情報が格納されている場合、前記優先度の値に基づいて前記送信先を決定する、請求項6に記載の数値制御システム。
  8.  前記数値制御プログラムによって前記優先度の値が指定されていない場合、前記接続要求バッファには予め定められた初期値が前記優先度の値として格納される、請求項7に記載の数値制御システム。
  9.  前記ロボット接続決定部は、前記接続要求情報に前記優先度の値が含まれていない場合、予め定められた初期値に基づいて前記送信先を決定する、請求項7に記載の数値制御システム。
PCT/JP2021/024109 2021-06-25 2021-06-25 数値制御システム Ceased WO2022269896A1 (ja)

Priority Applications (6)

Application Number Priority Date Filing Date Title
CN202180099398.7A CN117461001A (zh) 2021-06-25 2021-06-25 数值控制系统
PCT/JP2021/024109 WO2022269896A1 (ja) 2021-06-25 2021-06-25 数値制御システム
JP2023529400A JP7674481B2 (ja) 2021-06-25 2021-06-25 数値制御システム
US18/560,705 US20250004445A1 (en) 2021-06-25 2021-06-25 Numerical control system
DE112021007551.9T DE112021007551T5 (de) 2021-06-25 2021-06-25 Numerisches Steuersystem
TW111120045A TW202303312A (zh) 2021-06-25 2022-05-30 數值控制系統

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2021/024109 WO2022269896A1 (ja) 2021-06-25 2021-06-25 数値制御システム

Publications (1)

Publication Number Publication Date
WO2022269896A1 true WO2022269896A1 (ja) 2022-12-29

Family

ID=84544451

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2021/024109 Ceased WO2022269896A1 (ja) 2021-06-25 2021-06-25 数値制御システム

Country Status (6)

Country Link
US (1) US20250004445A1 (ja)
JP (1) JP7674481B2 (ja)
CN (1) CN117461001A (ja)
DE (1) DE112021007551T5 (ja)
TW (1) TW202303312A (ja)
WO (1) WO2022269896A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024232056A1 (ja) * 2023-05-10 2024-11-14 ファナック株式会社 数値制御装置及び数値制御システム

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5822412A (ja) * 1981-08-04 1983-02-09 Fanuc Ltd 工業用ロボツト制御方式
JPH04155406A (ja) * 1990-10-19 1992-05-28 Fanuc Ltd 制御方法
WO2002025388A1 (en) * 2000-09-22 2002-03-28 Citizen Watch Co., Ltd. Numeric control lathe and method for controlling the same
JP2005173849A (ja) * 2003-12-10 2005-06-30 Yaskawa Electric Corp 自動機械制御システム
JP2010191602A (ja) * 2009-02-17 2010-09-02 Fanuc Ltd 工作機械と組み合わせて使用するロボットの制御装置
WO2018047309A1 (ja) * 2016-09-09 2018-03-15 マキノジェイ株式会社 加工システム
JP2018136765A (ja) * 2017-02-22 2018-08-30 ファナック株式会社 データ収集装置及びデータ収集プログラム
WO2020144772A1 (ja) * 2019-01-09 2020-07-16 三菱電機株式会社 数値制御装置および数値制御方法
JP2020170356A (ja) * 2019-04-03 2020-10-15 ファナック株式会社 加工制御システム及び加工システム

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5822412A (ja) * 1981-08-04 1983-02-09 Fanuc Ltd 工業用ロボツト制御方式
JPH04155406A (ja) * 1990-10-19 1992-05-28 Fanuc Ltd 制御方法
WO2002025388A1 (en) * 2000-09-22 2002-03-28 Citizen Watch Co., Ltd. Numeric control lathe and method for controlling the same
JP2005173849A (ja) * 2003-12-10 2005-06-30 Yaskawa Electric Corp 自動機械制御システム
JP2010191602A (ja) * 2009-02-17 2010-09-02 Fanuc Ltd 工作機械と組み合わせて使用するロボットの制御装置
WO2018047309A1 (ja) * 2016-09-09 2018-03-15 マキノジェイ株式会社 加工システム
JP2018136765A (ja) * 2017-02-22 2018-08-30 ファナック株式会社 データ収集装置及びデータ収集プログラム
WO2020144772A1 (ja) * 2019-01-09 2020-07-16 三菱電機株式会社 数値制御装置および数値制御方法
JP2020170356A (ja) * 2019-04-03 2020-10-15 ファナック株式会社 加工制御システム及び加工システム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024232056A1 (ja) * 2023-05-10 2024-11-14 ファナック株式会社 数値制御装置及び数値制御システム

Also Published As

Publication number Publication date
US20250004445A1 (en) 2025-01-02
CN117461001A (zh) 2024-01-26
JP7674481B2 (ja) 2025-05-09
TW202303312A (zh) 2023-01-16
DE112021007551T5 (de) 2024-03-28
JPWO2022269896A1 (ja) 2022-12-29

Similar Documents

Publication Publication Date Title
CN115734847B (zh) 数值控制系统
JP7184595B2 (ja) 工作機械システム
JP7259860B2 (ja) ロボットの経路決定装置、ロボットの経路決定方法、プログラム
WO2022224425A1 (ja) 数値制御装置及び数値制御システム
JP7564217B2 (ja) 数値制御システム及びロボット制御方法
JP6268364B2 (ja) レーザ加工システム
WO2022269896A1 (ja) 数値制御システム
JP7121221B1 (ja) 数値制御装置及び数値制御システム
JP7633371B2 (ja) 指令生成装置及びコンピュータプログラム
JP7495499B2 (ja) 数値制御システム
US12036677B2 (en) Method and system for transferring an end effector of a robot between one end effector pose and a further end effector pose
JP7614220B2 (ja) 数値制御装置、及び数値制御システム
US12360513B2 (en) Numerical control system
CN119136953A (zh) 机器人控制装置、数值控制系统及数值控制方法
JPH0385608A (ja) ロボットの制御方法
US20240160181A1 (en) Motion-path generation device, numerical control device, numerical control system, and non-transitory computer-readable medium storing computer program
JP7762613B2 (ja) 加工装置
JPS61177509A (ja) ロボツト手先の位置姿勢制御方式
CN116745078A (zh) 数值控制装置以及数值控制系统
JPH0573118A (ja) ロボツト制御装置
WO2025046677A1 (ja) 数値制御装置及び数値制御システム
CN120051359A (zh) 程序编写装置、程序编写方法以及程序
JPH04365574A (ja) マニピュレータ
JP2023111378A (ja) ロボット制御システムおよびロボット制御システムを構成する方法
WO2024166216A1 (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: 21947180

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2023529400

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 202180099398.7

Country of ref document: CN

WWE Wipo information: entry into national phase

Ref document number: 112021007551

Country of ref document: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21947180

Country of ref document: EP

Kind code of ref document: A1