Numerical controller
10866577 ยท 2020-12-15
Assignee
Inventors
Cpc classification
G05B19/41
PHYSICS
G05B19/4093
PHYSICS
G05B2219/50359
PHYSICS
Y02P90/02
GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
G05B2219/31274
PHYSICS
G05B2219/50001
PHYSICS
International classification
Abstract
To provide a numerical controller for facilitating mass production of various types of workpieces in comparison with a prior art, by controlling a rotary index machine or the like having a plurality of machining stations. A numerical controller for a machine tool executes multi-path control for collectively controlling a plurality of paths requiring conveyance operations between the processes when each of workpieces receives a plurality of processes. The numerical controller includes an execution unit for executing a plurality of machining programs each of which is generated for each of the workpieces so as to correspond to each of the paths, the plurality of machining programs including execution commands of the processes and conveyance commands between the processes.
Claims
1. A numerical controller for a machine tool, the numerical controller being configured to execute multi-path control for collectively controlling a plurality of paths requiring conveyance operations between the processes when each of workpieces receives a plurality of processes, the numerical controller comprising: a memory configured to store a program; and a processor configured to execute the program and control the numerical controller to: execute a plurality of machining programs generated for each of the workpieces so as to correspond to each of the paths, the plurality of machining programs including execution commands of the processes and conveyance commands between the processes, arbitrate timings of the conveyance commands between the processes described in the machining programs, among the paths, receive each of the conveyance commands together with a conveyance priority serving as a priority of each of the conveyance commands, and calculate each of the conveyance priorities on a basis of an order of the conveyance commands in each of the machining programs corresponding to each of the paths, wherein the timings of the conveyance commands are arbitrated on a basis of the conveyance priorities calculated.
2. A numerical controller for a machine tool, the numerical controller being configured to execute multi-path control for collectively controlling a plurality of paths requiring conveyance operations between the processes when each of workpieces receives a plurality of processes, the numerical controller comprising: a memory configured to store a program; and a processor configured to execute the program and control the numerical controller to: execute a plurality of machining programs generated for each of the workpieces so as to correspond to each of the paths, the plurality of machining programs including execution commands of the processes and conveyance commands between the processes, arbitrate timings of the conveyance commands between the processes described in the machining programs, among the paths, wherein the numerical controller and another numerical controller communicate with each other to collectively arbitrate the timing of one or more conveyance commands included in the multi-path control to be executed by the own numerical controller and the timing of one or more conveyance commands included in the multi-path control to be executed by the another numerical controller.
3. A numerical controller for a machine tool, the numerical controller being configured to execute multi-path control for collectively controlling a plurality of paths requiring conveyance operations between the processes when each of workpieces receives a plurality of processes, the numerical controller comprising: a memory configured to store a program; and a processor configured to execute the program and control the numerical controller to: execute a plurality of machining programs generated for each of the workpieces so as to correspond to each of the paths, the plurality of machining programs including execution commands of the processes and conveyance commands between the processes comprising: specify an arbitrary n-th conveyance command from among the conveyance commands described in each of the machining programs; register a pre-conveyance command to be executed before the n-th conveyance command, in each of the machining programs; and register a post-conveyance command to be executed after the n-th conveyance command, in each of the machining programs.
4. The numerical controller according to claim 1, wherein the processor is further configured to execute the program and control the numerical controller to generate each of the machining programs for each of the workpieces, the machining programs each including the execution commands of the processes and the conveyance commands between the processes, the machining programs each corresponding to each of the paths.
5. The numerical controller according to claim 1, wherein the processor is further configured to execute the program and control the numerical controller to: determine the processes described in each of the machining programs; and register each of the conveyance commands between the processes determined.
6. The numerical controller according to claim 1, wherein the processor is further configured to execute the program and control the numerical controller to: receive a path priority serving as a priority for each of the paths, wherein the timings of the conveyance commands are arbitrated on a basis of the conveyance priorities and the path priorities.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1)
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)
(11)
(12)
(13)
(14)
(15)
(16)
(17)
(18)
(19)
(20)
(21)
(22)
(23)
(24)
(25)
(26)
(27)
(28)
(29)
DETAILED DESCRIPTION OF THE INVENTION
(30) The outline of the present invention is described with reference to
1. Outline of Invention
(31) Each of
(32) As described above, in the prior art, the numerical controller prepares a machining program in which a process for each device (tool) is described, while each device repeatedly performs a process work according to the machining program on different workpieces.
(33) On the other hand, in the embodiments of the present invention, as shown in the time chart shown in
(34) In the example shown in
(35) The same machining program O1000 is executed to a workpiece 1 of a path 1, a workpiece 2 of a path 2, a workpiece 3 of a path 3, and a workpiece 4 of a path 4.
(36) In the prior art, each path fixedly having an axis executes a machining program, while partially exchanging axes with another path.
(37) On the other hand, in the embodiments of the present invention, each path dynamically acquires the axis required for operation while arbitrarily changing the axis to another, thereby performing operation of each process.
(38) In an example in this case, the path 1 repeats acquisition of a control right of a device required for performing each operation, and the release of the control right when the operation is completed, thereby advancing a machining program.
(39) As shown in
(40) Accordingly, while the carrying-in process is executed in the path 1, the carrying-in process is not executed in any other path. While the milling process is executed in the path 1, the milling process is not executed in any other path. While the drilling process is executed in the path 1, the drilling process is not executed in any other path. While the carrying-out process is executed in the path 1, the carrying-out process is not executed in any other path.
(41) The same applies for the path 2 to the path 4.
(42)
(43) The machining program O2000 includes a carrying-in B process, a milling B process, a drilling B process, and a carrying-out B process, instead of the respective processes of the carrying-in process, the milling process, the drilling process, and the carrying-out process included in the machining program O1000.
(44) The devices to be used or the described operation contents are different between the carrying-in process and the carrying-in B process, between the milling process and the milling B process, between the drilling process and the drilling B process, and between the carrying-out process and the carrying-out B process.
(45) Similarly, the machining program O3000 includes a carrying-in C process, a mill C process, a drilling C process, and a carrying-out C process, instead of the respective processes of the carrying-in process, the milling process, the drilling process, and the carrying-out process included in the machining program O1000.
(46) The devices to be used or the described operation contents are different between the carrying-in process and the carrying-in C process, between the milling process and the milling C process, between the drilling process and the drilling C process, and between the carrying-out process and the carrying-out C process.
(47) The timings of the conveyance commands coincide with one other among the machining program O1000, the machining program O2000, and the machining program O3000, and the same process is not executed simultaneously among them.
(48) As described above, in the embodiment of the present invention, one machining program is generated for each type of workpiece, and each workpiece is subjected to machining in each path.
(49) Accordingly, machining programs different for each workpiece are executed, thereby enabling different workpieces to be produced. This facilitates mixed flow production, and the first embodiment is thus suitable for mass production of various types of workpieces.
(50) It is noted that in the embodiment of the present invention, each path corresponds to each workpiece.
(51) That is, the terminology path in the present invention indicates a control path provided for each workpiece.
2. First Embodiment
(52) The first embodiment according to the present invention is described below with reference to
2.1 Structure of Invention
(53)
(54) The numerical control system 1 includes a numerical controller 10 and a machine tool 20.
(55) The numerical controller 10 and the machine tool 20 are capable of communicating with each other.
(56) The numerical controller 10 and the machine tool 20 may be directly and communicably connected to each other, or may be communicably connected via a network not shown.
(57) The numerical controller 10, which is a device for numerically controlling the machine tool 20, transmits a control signal to the machine tool 20, thereby controlling the machine tool 20 to perform predetermined machining.
(58) More specifically, the numerical controller 10 generates a machining program for machining a workpiece on the basis of a command input by a user, and executes the machining program, thereby controlling the respective axes included in the machine tool 20.
(59) It is noted that respective functions of the numerical controller 10 in the first embodiment are described in detail with reference to
(60) The machine tool 20 performs predetermined machining such as cutting under the control of the numerical controller 10. The machine tool 20 includes a motor to be driven so as to machine a workpiece; a spindle and a feed axis attached to the motor; jigs and tools corresponding to the respective axes; and the like.
(61) The machine tool 20 drives the motor on the basis of the operation command output by the numerical controller 10, thereby performing predetermined machining.
(62) The contents of the predetermined machining are not particularly limited, and another type of machining than cutting, such as grinding, polishing, rolling or forging, may be performed.
(63) In the first embodiment, the machine tool 20 has a plurality of paths (stations), and one or more processes such as machining, carrying-in and carrying-out a workplace are executed in each path (each station).
(64) In addition, the machine tool 20 rotates the conveyance axis common to the respective paths, whereby a workpiece is conveyed between the processes.
(65)
(66) The numerical controller 10 includes a machining program generation unit 101, a conveyance command reception unit 102, a conveyance priority calculation unit 103, a path priority reception unit 104, an arbitration unit 105, and an execution unit 106.
(67) The machining program generation unit 101 generates a machining program for executing a process in the machine tool 20, on the basis of the command input into the numerical controller 10 by a user.
(68) The machining program includes process execution commands described according to a processing order, and conveyance commands described between processes.
(69) The conveyance command reception unit 102 receives a conveyance command together with a conveyance priority from the outside of the numerical controller 10 via an interface (not shown).
(70) The conveyance priority herein is a priority of each conveyance command, and the execution unit 106 to be described below executes the conveyance commands in order starting with the conveyance command having the highest priority.
(71) The conveyance priority calculation unit 103 calculates a conveyance priority of each conveyance command, on the basis of the position of the conveyance command in the machining program.
(72) The path priority reception unit 104 receives a path priority serving as a priority for each path, from the outside of the numerical controller 10 via an interface (not shown). The path priority herein is a priority indicating the path for which conveyance commands are prioritized. In the case where conveyance commands having the same conveyance priority exist in different paths, the execution unit 106 to be described below preferentially executes a conveyance command in a path having a higher path priority.
(73) The arbitration unit 105 arbitrates, among the paths, the timings of the conveyance commands described between processes in the machining programs.
(74) The execution unit 106 executes a plurality of machining programs existing in the paths, respectively.
(75) The numerical controller 10 having the above-described configuration executes multi-path control while arbitrating the timings of the conveyance commands among the plurality of paths.
(76) The configuration of the numerical controller 10 is as described above.
(77) A specific arbitration method performed by the numerical controller 10 is described below with reference to
2.2 Arbitration Method
(78)
(79) In the example shown in
(80) At the time point shown in
(81) If the machining programs O1000 of the path 2 and the path 3 are to be executed as they are, the conveyance commands in the machining programs O1000 of the path 2 and the path 3 are executed during the execution of the carrying-in process in the machining program O1000 of the path 1, whereby a station of the machine tool 20 or a carrying-in device or the like in operation may be damaged.
(82) To solve the problem, as shown in
(83) Specifically, the arbitration unit 105 delays the start time of the execution of the machining program of the path 2, so that the start time of the first conveyance command in the machining program O1000 of the path 2 coincides with the start time of the second conveyance command in the machining program O1000 of the path 1.
(84) Similarly, the arbitration unit 105 delays the start time of the execution of the machining program of the path 3, so that the start, time of the first conveyance command in the machining program. O1000 of the path 3 coincides with the start time of the third conveyance command in the machining program O1000 of the path 1.
(85) As a result, the timings of the conveyance commands in the machining programs O1000 coincide with each other among the path 1 to the path 3, and the simultaneous execution of the same process is also prevented.
(86)
(87) Also in the example shown in
(88) The outline of the control method of the numerical controller 10 is as described above.
(89) The next description is about the contents of the conveyance command to be executed under the control of the numerical controller 10.
2.3 Contents of Conveyance Command
(90)
(91) An address P specifies a conveyance priority of a conveyance command.
(92) The conveyance coordinate value herein is a coordinate value in a conveyance coordinate system XM commonly used in all the paths, for specifying to which coordinate value a workpiece in each path is to be shifted in the conveyance coordinate system XM.
(93) In an example, the conveyance command of G90 XM=50.0 P1 is described in the first line of the machining program O1000 of the path 1 shown in
(94)
(95) It is noted that in the state shown in
(96) That is, in the path 1, the coordinate value of the conveyance axis A is set as A=0.0, so as to realize the conveyance command including XM=50.0.
(97) The term P1 in the command corresponds to the above-described conveyance priority, and the details thereof will be described below.
(98) The conveyance command of G90 XM=50.0 P1 is described in the first line of the machining program O1000 of the path 2 shown in
(99)
(100) The workpiece of the path 2, having been positioned at XM=150.0 before shifting in the state shown in
(101) That is, the coordinate value of the conveyance axis A is set as A=100.0, in order that the conveyance command including XM=50.0 is realized in the path 2.
(102) The conveyance command of G90 XM=150.0 P2 is described in the fourth line of the machining program O1000 of the path 1 shown in
(103)
(104) The workpiece of the path 1, having been positioned at XM=50.0 before shifting in the state shown in
(105) That is, the coordinate axis A is set as A=100.0, in order that the conveyance command including XM=150.0 is realized in the path 1.
(106) As described above, even if the same conveyance command is issued in the respective paths, the conveyance axis A serving as a desired actual end point has various coordinate values.
(107) It is noted that in the machine tool 20 such as a rotary index machine, the respective stations are equally spaced, and the numerical controller 10 has the information on the position values set in advance of the respective stations with respect to the reference position of the conveyance axis. The numerical controller 10 is capable of calculating a desired coordinate value of the conveyance axis A at the time when a conveyance command is issued in each path, by use of such a value set in advance.
(108) The contents of the conveyance command are as described above.
(109) It is noted that the above description is based on the example case where the conveyance commands are described in the programs. Alternatively, the numerical controller 10 may include a process determination unit for determining each process in the programs, and a conveyance command registration unit for automatically registering a conveyance command between the processes determined by the process determination unit.
(110) This enables time and effort, to be saved in describing the conveyance commands in the programs, thereby improving convenience.
(111) The next description is about a conveyance priority and a path priority associated with a conveyance command.
2.4 Conveyance Priority and Path Priority
(112)
(113) It is noted that in each of
(114) In
(115) The signs of P1, P2 and P3 assigned to the conveyance commands indicate the conveyance priorities, wherein the larger the numerical value is, the higher the priority is.
(116) The conveyance commands in the first lines of the machining programs O1000 of the path 1 to the path 3 shown in
(117) In such a case where the conveyance priorities are equal, the arbitration unit 105 of the numerical controller 10 determines a conveyance command to be executed, on the basis of the path priorities set for each of the paths.
(118) In the example shown in
(119) The arbitration unit 105 suspends the conveyance commands of the path 1 and the path 2 not executed this time, and delays the start times of the execution of the machining programs O1000 of the path 1 and the path 2, as shown in FIG. 12.
(120) It is noted that in the case of delaying the start times of the machining programs O1000 of the path 1 and path 2, the arbitration unit 105 delays the start times of the execution so that the timings of the conveyance commands included in the machining programs of the respective paths coincide with one another.
(121) Thereafter, as shown in
(122) In this case, the conveyance command of the path 3 has the priority of P2, while the conveyance commands of the path 1 and the path 2 respectively have the priority of P1. Therefore, the conveyance command of the path 3 is executed preferentially.
(123) The coordinate value of the conveyance axis A included in the conveyance command of the path 3 is A=100.0, and the coordinate value of the conveyance axis A included in the conveyance command of the path 2 is also A=100.0, meaning that the coordinate values are equal with each other. Thus, the conveyance command A=100.0 P2 of the path 3 is executed, whereby the conveyance command A=100.0 P1 is also executed simultaneously.
(124) As a result, in the path 2 and the path 3, the execution unit 106 is able to proceed to the execution of the subsequent processes.
(125) On the other hand, the conveyance command A=0.0 P1 of the path 1 is again suspended by the arbitration unit 105. That is, as shown in
(126) Thereafter, as shown in
(127) In this case, the conveyance command of the path 3 has the priority of P3, the conveyance command of the path 2 has the priority of P2, and the conveyance command of the path 1 has the priority of P1. Therefore, the conveyance command of the path 3 is executed preferentially.
(128) The coordinate value of the conveyance axis A included in the conveyance command of the path 3 is A=0.0, the coordinate value of the conveyance axis A included in the conveyance command of the path 2 is also A=0.0, and the coordinate value of the conveyance axis A included in the conveyance command of the path 1 is also A=0.0, meaning that the coordinate values are all equal. Thus, the conveyance command A=0.0 P3 of the path 3 is executed, whereby the conveyance command A=0.0 P2 of the path 2 and the conveyance command. A=0.0 P1 of the path 1 are executed simultaneously.
(129) As a result, in all of the path 1 to the path 3, the execution unit is able to proceed to the execution of the subsequent processes.
(130) Thereafter, the execution of all the commands in the machining program O1000 is completed in the path 3, and the position of the program pointer is shifted to the position or the third conveyance command in the machining program O1000 of the path 2, and the second conveyance command in the machining program O1000 of the path 1, as shown in
(131) In this case, the conveyance command of the path 2 has the priority of P3, while the conveyance command of the path 1 has the priority of P2. Therefore, the conveyance command of the path 2 is executed preferentially.
(132) The coordinate value of the conveyance axis A included in the conveyance command of the path 2 is A=100.0, and the coordinate value of the conveyance axis A included in the conveyance command of the path 1 is also A=100.0, meaning that the coordinate values are equal with each other. Thus, the conveyance command A=100.0 P3 of the path 2 is executed, whereby the conveyance command A=100.0 P2 is also executed simultaneously.
(133) As a result, in both the path 1 and the path 2, the execution unit 106 is able to proceed to the execution of the subsequent processes.
(134) Thereafter, the execution of all the commands in the machining program O1000 is completed in the path 2, and the position of the program pointer is shifted to the position of the third conveyance command in the machining program O1000, as shown in
(135) Since the execution of all the commands in the machining programs is completed in the path 2 and the path 3, the execution unit 106 executes the conveyance command of the path 1 without arbitration of timings between conveyance commands by the arbitration unit 105, and thereafter executes the subsequent processes to complete the execution of all the machining programs.
(136) The method of arbitrating the conveyance commands using the conveyance priorities and the path priorities is as described above.
(137) The next description is about a method of calculating the conveyance priority.
2.5 Method of Calculating Conveyance Priority
(138) With respect to the conveyance priority, a lower priority may be given to an earlier conveyance command in a machining program in a basic manner (in other words, a higher priority may be given to a conveyance command described later in time). Accordingly, the conveyance commands in the machining program are counted from the top to the targeted conveyance command, and the resultant count number may be regarded as a P command indicating a conveyance priority.
(139) It is noted that a smaller-number P command is regarded as a lower conveyance priority.
(140) In the example shown in
(141) In this case, since the respective count values are 1, 2, 3 in order, the conveyance priorities of the conveyance commands are regarded as P1, P2 and P3, respectively.
(142) This does not require the P command, thereby eliminating time and effort to input the P command, and hence improving convenience.
(143) The method of calculating a conveyance priority is as described above.
(144) The next description is about the operation of the numerical controller 10.
2.6 Operation of Numerical Controller 10
(145)
(146) The operation of the numerical controller 10 is described with reference to
(147) In step S1, the machining program generation unit 101 of the numerical controller 10 generates a machining program on the basis of the command input by a user.
(148) In step S2, the conveyance command reception unit 102 of the numerical controller 10 receives conveyance commands.
(149) In step S3, the conveyance priority calculation unit 103 of the numerical controller 10 calculates a conveyance priority associated with each conveyance command.
(150) In step S4, the path priority reception unit 104 of the numerical controller 10 receives a path priority.
(151) In step S5, the arbitration unit 105 of the numerical controller 10 arbitrates the timings of the conveyance commands on the basis of the conveyance priorities and the path priorities.
(152) In step S6, the execution unit 106 of the numerical controller 10 executes the machining program.
(153) It is noted that the flowchart shown in
(154) In an example, the order of the respective steps may be changed.
2.7 Effects Produced By First Embodiment
(155) In the case where a machine tool has a plurality of paths and the numerical controller 10 according to the first embodiment performs multi-path control on the plurality of paths collectively, the numerical controller 10 generates and executes for each path the machining program including the process execution commands and the conveyance commands between the processes described in order of execution on a workpiece.
(156) In this case, different machining programs are executed for respective workpieces, thereby enabling different workpieces to be produced, and hence facilitating mixed flow production.
(157) In addition, the execution order of processes for a workpiece is clarified, thereby improving the readability of the machining program.
3. Second Embodiment
(158) A second embodiment of the present invention is described with reference to
3.1 Structure of Invention
(159)
(160) The numerical control system 1A includes a numerical controller 10A, a machine tool 20A and a machine tool 20B.
(161) The numerical controller 10A is capable of communicating with the machine tool 20A and the machine tool 20B.
(162) The numerical controller 10A may be directly and communicably connected to the machine tool 20A and the machine tool 20B, or may be connected to the machine tool 20A and the machine tool 20B via a network not shown in
(163) Although
(164) That is, the numerical controller 10A is capable of numerically controlling an arbitrary number of machine tools. The numerical controller 10A is the same type of numerical controller as the numerical controller 10 according to the first embodiment, and the description of the basic functions thereof is thus omitted.
(165) Similarly, each of the machine tool 20A and the machine tool 20B is the same type of machine tool as the machine tool 20 according to the first embodiment, and the description of the basic functions thereof is thus omitted.
(166)
(167) The machine tool 20A is a rotary index machine including a station 1 to a station 4.
(168) The station 1 executes the carrying-in process, the station 2 executes the milling process, the station 3 executes the drilling process, and the station 4 executes the carrying-out process.
(169) As the conveyance axis A rotates, an arbitrary workpiece is conveyed to the station 1, the station 2, the station 3 and the station 4 in this order.
(170) Similarly, the machine tool 20B is a rotary index machine including a station 5 to a station 8.
(171) The station 5 executes the carrying-in process, the station 6 executes the milling process, the station 7 executes the drilling process, and the station 8 executes the carrying-out process.
(172) As a conveyance axis B rotates, an arbitrary workpiece is conveyed to the station 5, the station 6, the station 7 and the station 8 in this order.
(173) The workpiece carried out from the station 4 of the machine tool 20A is carried into the station 5 of the machine tool 20B by a loader or a robot, not by the conveyance axis A or the conveyance axis B.
(174) In this case, in order to convey the workpiece from the station 4 to the station 5, a loader or a robot first picks up the workpiece from the station 4.
(175) Then, similarly to the first embodiment, the numerical controller 10A rotates the conveyance axis A and the conveyance axis B.
(176) Lastly, the loader or the robot sets the workpiece picked up from the station 4, on the station 5.
(177) The numerical controller 10A according to the second embodiment has the configuration to be described below, thereby realizing workpiece conveyance across the both of the machine tool 20A and the machine tool 20B.
(178)
(179) The numerical controller 10A includes a conveyance command specification unit 107, a pre-conveyance command registration unit 108, and a post-conveyance command registration unit 109, in addition to the machining program generation unit 101, the conveyance command reception unit 102, the conveyance priority calculation unit 103, the path priority reception unit 104, the arbitration unit 105 and the execution unit 106 included in the numerical controller 10 according to the first embodiment.
(180) The conveyance command specification unit 107 specifies one of the conveyance commands from among the conveyance commands described in the machining program.
(181) The pre-conveyance command registration unit 108 registers a pre-conveyance command before the conveyance command specified by the conveyance command specification unit 107, in the machining program.
(182) The post-conveyance command registration unit 109 registers a post-conveyance command after the conveyance command specified by the conveyance command specification unit 107, in the machining program.
(183) The respective functions of the numerical controller 10A are as described above.
(184) The next descriptions are about specific examples of the functions of the conveyance command specification unit 107, the pre-conveyance command registration unit 108, and the post-conveyance command registration unit 109.
(185)
(186) As shown in
(187) As described above, an arbitrary workpiece is conveyed to the station 5 by a loader or a robot after being subjected to the carrying-out process in the station 4, and is then subjected to the carrying-in process in the station 5.
(188) In relation to this, the conveyance command specification unit 107 specifies the fifth conveyance command from among the conveyance commands described in the machining program.
(189) The pre-conveyance command registration unit 108 then registers a pre-conveyance command carrying-out by loader before the fifth conveyance command specified by the conveyance command specification unit 107, in the machining program.
(190) The post-conveyance command registration unit 109 lastly registers a post-conveyance command carrying-in by loader after the fifth conveyance command specified by the conveyance command specification unit 107, in the machining program.
(191) The numerical controller 10A having the above-described configuration is capable of realizing workpiece conveyance across the both of the machine tool 20A and the machine tool 20B.
(192) The configuration of the numerical control system 1A according to the second embodiment of the present invention is as described above.
(193) The next description is about the operation of the numerical controller 10A.
3.2 Operation of Numerical Controller 10A
(194)
(195) The operation of the numerical controller 10A is described below with reference to
(196) In step S11, the machining program generation unit 101 of the numerical controller 10A generates a machining program on the basis of the command input by a user.
(197) In step S12, the conveyance command reception unit 102 of the numerical controller 10A receives conveyance commands.
(198) In step S13, the conveyance command specification unit 107 of the numerical controller 10A specifies an arbitrary conveyance command from among the conveyance commands described in the machining program.
(199) In step S14, the pre-conveyance command registration unit 108 of the numerical controller 10A registers a pre-conveyance command before the conveyance command specified by the conveyance command specification unit 107, in the machining program.
(200) In step S15, the post-conveyance command registration unit 109 of the numerical controller 10A registers a post-conveyance command after the conveyance command specified by the conveyance command specification unit 107, in the machining program.
(201) In step S16, the conveyance priority calculation unit 103 of the numerical controller 10A calculates a conveyance priority associated with each conveyance command.
(202) In step S17, the path priority reception unit 104 of the numerical controller 10A receives a path priority.
(203) In step S18, the arbitration unit 105 of the numerical controller 10A arbitrates the timings of the conveyance commands on the basis of the conveyance priorities and the path priorities.
(204) In step S19, the execution unit 106 of the numerical controller 10A executes the machining program.
(205) It is noted that the flowchart shown in
(206) In an example, the order of respective steps may be changed.
3.3 Effects Produced By Second Embodiment
(207) In the numerical controller 10A according to the second embodiment, a pre-conveyance command and a post-conveyance command are respectively registered before and after an arbitrary conveyance command included in the machining program. This enables the automatic execution of the operations to be respectively executed before and after a conveyance command in each station, thereby reducing time and effort in describing a program even in the case where the conveyance operation to be performed by a robot or loader between stations is included, and hence improving convenience.
4. Modifications
(208) [4.1 Modification 1]
(209) In the first embodiment and the second embodiment, the arbitration unit 105 of the numerical controller 10 or the numerical controller 10A and another numerical controller may communicate with each other to collectively arbitrate the timings of the conveyance commands in the machine tool subjected to the numerical control executed by the own numerical controller, and the timings of the conveyance commands in the machine tool subjected to the numerical control executed by the another numerical controller.
(210) [4.2 Modification 2]
(211) In the second embodiment, the numerical controller 10A numerically controls a plurality of machine tools, such as the machine tool 20A and the machine tool 20B, more specifically, the machine tool 20A having the conveyance axis A and the machine tool 20B having the conveyance axis B. The present invention is not limited thereto.
(212) In an example, the numerical controller 10A may control one machine tool having a plurality of conveyance axes.
(213) Although the embodiments of the present invention have been described so far, the present invention is not limited to the above-described embodiments.
(214) The effects described in the present embodiments are listed merely as the most preferable effects produced by the present invention. The effects of the present invention are not limited to those described in the present embodiments.
(215) The control method to be performed by the numerical controllers 10, 10A is realized by software.
(216) In the case where the control method is realized by software, programs included in the software are installed in a computer (numerical controllers 10, 10A).
(217) These programs may be recorded in a removable medium and distributed to a user, or may be distributed by being downloaded via a network to a user's computer.
(218) Alternatively, these programs may be provided to a user's computer (numerical controllers 10, 10A) as a web service via a network without being downloaded.
EXPLANATION OF REFERENCE NUMERALS
(219) 1, 1A Numerical Control System 10, 10A Numerical Controller 20, 20A, 20B Machine Tool 101 Machining Program Generation Unit 102 Conveyance Command Reception Unit 103 Conveyance Priority Calculation Unit 104 Path Priority Reception Unit 105 Arbitration Unit 106 Execution Unit 107 Conveyance Command Specification Unit 108 Pre-Conveyance Command Registration Unit 109 Post-Conveyance Command Registration Unit