Numerical controller
10012973 ยท 2018-07-03
Assignee
Inventors
Cpc classification
G05B19/19
PHYSICS
International classification
Abstract
A numerical controller of the invention includes an overlap control unit that detects a reference value minimizing a synthesized velocity for a plurality of control axes calculated based on table format data in an overlap period in which the synthesized velocity is equal to or lower than a threshold set in advance, that finds an overlap quantity as an amount in the reference value of overlapping of travels of the control axes after the detected reference value with travels of the control axes before the detected reference value, that advances the travels of the control axes after the reference value minimizing the synthesized velocity by the overlap quantity, and that calculates post-correction travels resulting from superposition of the travels of the control axes after the reference value on the travels of the control axes before the reference value minimizing the synthesized velocity.
Claims
1. A numerical controller to set time, an axis position, or a spindle position as a reference value, to use a plurality of table format data specifying positions of control axes, and to control the positions of the plurality of control axes in synchronization with the reference value, the numerical controller comprising: readout units that sequentially read out the table format data in synchronization with the reference value; distribution processing units that generate travels of the control axes based on command blocks read out by the readout units; a travel holding unit that temporarily stores the travels of the control axes generated by the distribution processing units; and an overlap control unit that reads out the travels of the control axes from the travel holding unit, finds an overlap quantity as an amount in the reference value of overlapping of the travels of the control axes, and writes post-correction travels resulting from the overlapping of the travels of the control axes by the overlap quantity into the travel holding unit, wherein the control axes are controlled based on the post-correction travels.
2. The numerical controller according to claim 1, wherein the overlap control unit reads out the travels of the plurality of control axes in synchronization with the reference value and thereby calculates a synthesized velocity.
3. The numerical controller according to claim 2, wherein the overlap control unit detects the reference value minimizing the synthesized velocity in an overlap period in which the synthesized velocity is equal to or lower than a threshold specified in advance, finds the overlap quantity as the amount in the reference value of overlapping of the travels of the control axes after the detected reference value with the travels of the control axes before the detected reference value, advances the travels of the control axes after the reference value minimizing the synthesized velocity by the overlap quantity, and calculates the post-correction travels resulting from superposition of the travels of the control axes after the reference value on the travels of the control axes before the reference value minimizing the synthesized velocity.
4. The numerical controller according to claim 3, wherein the overlap control unit finds the overlap quantity within a range in which the post-correction travels are equal to or lower than the threshold in the overlap period.
5. The numerical controller according to claim 3, wherein the overlap control unit is capable of changing the threshold by commands based on the table format data, parameters, or signals.
6. A numerical controller to set time, an axis position, or a spindle position as a reference value, to use a plurality of table format data specifying positions of control axes, and to control the positions of the plurality of control axes in synchronization with the reference value, the numerical controller comprising: readout units that sequentially read out the table format data in synchronization with the reference value; distribution processing units that generate travels of the control axes based on command blocks read out by the readout units; a travel holding unit that temporarily stores the travels of the control axes generated by the distribution processing units; an overlap control unit that reads out the travels of the control axes from the travel holding unit, finds an overlap quantity as an amount in the reference value of overlapping of the travels of the control axes, and outputs post-correction table format data in which overlap commands to carry out the overlapping by the overlap quantity are added to the table format data; post-correction readout units that sequentially read out the post-correction table format data in synchronization with the reference value; and post-correction distribution processing units that generate post-correction travels of the control axes based on command blocks read out by the post-correction readout units, wherein the control axes are controlled based on the post-correction travels generated by the post-correction distribution processing units.
7. The numerical controller according to claim 6, wherein the overlap control unit reads out the travels of the plurality of control axes in synchronization with the reference value and thereby calculates a synthesized velocity.
8. The numerical controller according to claim 7, wherein the overlap control unit detects the reference value minimizing the synthesized velocity in an overlap period in which the synthesized velocity is equal to or lower than a threshold specified in advance, finds the overlap quantity as the amount in the reference value of overlapping of the travels of the control axes after the detected reference value with the travels of the control axes before the detected reference value, and outputs the post-correction table format data in which the overlap commands are added to the reference value minimizing the synthesized velocity.
9. The numerical controller according to claim 8, wherein the overlap control unit finds the overlap quantity within a range in which the post-correction travels are equal to or lower than the threshold.
10. The numerical controller according to claim 8, wherein the overlap control unit is capable of changing the threshold by commands based on the table format data, parameters, or signals.
11. The numerical controller according to claim 6, wherein, upon input of the overlap commands, the post-correction readout units simultaneously read out table format data commands before the overlap commands and table format data commands after the overlap commands and output the table format data commands to the post-correction distribution processing units.
12. The numerical controller according to claim 6, wherein the post-correction distribution processing units calculate the post-correction travels resulting from superposition of pre-overlapping travels that are travels of the control axes calculated from the table format data commands before the overlap commands and post-overlapping travels that are travels of the control axes calculated from the table format data commands after the overlap commands.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1) The above-mentioned and other objects and features of the invention will become apparent from the following description of the embodiments with reference to the accompanying drawings, in which:
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)
(11)
(12)
(13)
(14)
(15)
(16)
(17)
(18)
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
(19) Hereinbelow, embodiments of the invention will be described in conjunction with the drawings.
(20) In
(21)
(22) In operation based on table format data with use of the numerical controller 1 of the prior art technique illustrated in
(23) In the numerical controller 1 illustrated in
(24) Hereinbelow, processing in the overlap control unit 13 will be described.
(25) In the numerical controller 1 according to the embodiment, the readout units 10x through 10z respectively and sequentially read out command blocks from the table format data 20x through 20z for the axes and notify the distribution processing units 11x through 11z of the command blocks read out, as two control points, that is, a start point and an end point. The distribution processing units 11x through 11z calculate travels per unit reference value from differences in the reference value and the coordinate value between the two control points notified from the readout units 10x through 10z and store the travels as pre-correction travels 21x through 21z in the travel holding unit 12. In the numerical controller of the invention, calculation of the pre-correction travels by the distribution processing units is carried out in parallel for all the table format data in execution. In the example of
(26) The pre-correction travels 21x through 21z for the axes stored in the travel holding unit 12 are read out by the overlap control unit 13 and a synthesized velocity per unit reference value is calculated therefrom. When the synthesized velocity is lower than a threshold V.sub.t of the synthesized velocity specified in advance for start of the overlapping, the overlap control unit 13 presumes entrance into an overlap period and reads the travel holding unit 12 on until the synthesized velocity subsequently exceeds the threshold V.sub.t. Then a lower limit velocity V.sub.0 the synthesized velocity brought about by the pre-correction travels 21x through 21z reaches and a reference value L.sub.0 at that point are stored.
(27) Once the travel holding unit 12 has been read on until the synthesized velocity subsequently exceeds the threshold V.sub.t, the overlap control unit 13 presumes that the overlap period has ended and prepares post-correction travels 22x through 22z based on the pre-correction travels 21x through 21z for the overlap period read out from the travel holding unit 12. Specifically, a reference value at which travels of the axes after the reference value L.sub.0 are outputted is advanced and the travels superposed on the travels of the axes before the reference value L.sub.0 are stored as the post-correction travels 22x through 22z in the travel holding unit 12. Then the reference value at which the travels after the reference value L.sub.0 are outputted is advanced within a range in which the synthesized velocity brought about by the post-correction travels 22x through 22z does not exceed the threshold V.sub.t. The motors achieve the overlapping by operating based on the post-correction travels 22x through 22z.
(28)
(29)
(30)
(31)
(32) [Step SA01] The overlap control unit 13 sequentially reads out the pre-correction travels 21 for every unit reference value in all the table format data 20, the pre-correction travels 21 being calculated by the distribution processing units 11, from the travel holding unit 12.
(33) [Step SA02] The overlap control unit 13 synthesizes the pre-correction travels 21 for every unit reference value in all the table format data 20 read out in step SA01 and thus calculates the synthesized velocity.
(34) [Step SA03] The overlap control unit 13 determines whether the synthesized velocity calculated in step SA02 is lower than the threshold V.sub.t of the synthesized velocity set in advance for the start of the overlapping. The flow proceeds to step SA04, if the synthesized velocity is lower than the threshold V.sub.t, or the flow returns to step SA01, if the synthesized velocity is not lower than the threshold V.sub.t.
(35) [Step SA04] The overlap control unit 13 carries out the overlapping processing for the table format data 20. Details of step SA04 will be described later.
(36) [Step SA05] The overlap control unit 13 determines whether readout of all the travels in the travel holding unit 12 has been completed. The operation is ended if the readout has been completed, or the flow returns to step SA01, if the readout has not been completed.
(37)
(38) [Step SB01] The overlap control unit 13 substitutes the velocity V.sub.t and a reference value L.sub.t at the start of the overlapping processing as initial values of the lower limit velocity V.sub.0 and the reference value L.sub.0 that brings about the lower limit velocity.
(39) [Step SB02] The overlap control unit 13 reads out the pre-correction travels 21 for the next unit reference value in all the table format data from the travel holding unit 12.
(40) [Step SB03] The overlap control unit 13 calculates the synthesized velocity for the axes based on the pre-correction travels 21 read out in step SB02.
(41) [Step SB04] The overlap control unit 13 determines whether the synthesized velocity calculated in step SB03 is equal to or lower than the lower limit velocity V.sub.0. The flow proceeds to step SB05, if the synthesized velocity is equal to or lower than the lower limit velocity V.sub.0, or the flow proceeds to step SB06, if the synthesized velocity is higher than the lower limit velocity V.sub.0.
(42) [Step SB05] The overlap control unit 13 substitutes the synthesized velocity calculated in step SB03 and the reference value at that point for the lower limit velocity V.sub.0 and the reference value L.sub.0 that brings about the lower limit velocity.
(43) [Step SB06] The overlap control unit 13 determines whether the synthesized velocity calculated in step SB03 is equal to or higher than the threshold V.sub.t for the end of the overlapping. If the synthesized velocity is equal to or higher than the threshold V.sub.t, it is presumed that the overlap period has ended and the flow proceeds to step SB07. If the synthesized velocity is lower than the threshold V.sub.t, it is determined that the overlap period is continuing and the flow returns to step SB02.
(44) [Step SB07] The overlap control unit 13 initializes an overlap quantity T (unit reference value) to 1.
(45) [Step SB08] The overlap control unit 13 prepares the travels resulting from advance of the output by the unit reference value T relative to the pre-correction travels 21 for all the table format data 20 after the reference value L.sub.0 that brings about the lower limit velocity.
(46) [Step SB09] The overlap control unit 13 temporarily stores, in the travel holding unit 12, the travels prepared in step SB08 and superposed on the pre-correction travels 21 before the reference value L.sub.0 that brings about the lower limit velocity, as the (tentative) post-correction travels 22.
(47) [Step SB10] The overlap control unit 13 determines whether the synthesized velocity in the overlap period based on the post-correction travels 22 calculated in step SB09 exceeds the threshold V.sub.t. The flow proceeds to step SB11, if the synthesized velocity exceeds the threshold V.sub.t, or the flow proceeds to step SB12, if the synthesized velocity does not exceed the threshold V.sub.t.
(48) [Step SB11] The overlap control unit 13 designates the post-correction travels 22 at the time when the overlap quantity is T1, among the (tentative) post-correction travels 22 stored in the travel holding unit 12, as the formal post-correction travels 22. Providing that T=1 holds then, the pre-correction travels 21 are used without modification as the post-correction travels 22.
(49) [Step SB12] The value of the overlap quantity T is incremented by one and the flow returns to step SB08.
(50) When the operation based on the table format data 20 and read-ahead cannot be performed in parallel for reasons such as restrictions as to hardware or when it is desirable that sites for the overlapping should be checked before the operation, direct rewriting of the table format data 20 may be performed by the overlap control unit 13, instead of output of the post-correction travels 22.
(51)
(52)
(53) The numerical controller 1 according to the embodiment can be implemented by provision of a post-correction distribution processing unit that outputs the travel before an overlap command and a post-correction distribution processing unit that outputs the travel after the overlap command, for each of the post-correction table format data 23, in each post-correction distribution processing unit 15 that operates the post-correction table format data 23 having undergone the correction by the overlap control unit 13, as an example. In the overlap period (reference value L1996 to 2000) in case where the X axis control is carried out based on the post-correction table format data 23x for use in the X axis control as illustrated in
(54) After L2000 in the above example, the distribution processing unit 15x1 for the X axis is disabled and commands are processed by the distribution processing unit 15x2 for the X axis. Therefore, the command OVL4 and later are executed at timing advanced by 4 units of the reference value. The above processing is for the X axis and, for the other axes, the travels before and after OVL4 are similarly superposed and outputted to the motors.
(55) In the numerical controller 1 according to the embodiment, the travel holding unit 12 and the overlap control unit 13 do not have to be used in the operation based on the post-correction table format data.
(56) Though the embodiments of the invention have been described above, the invention is not limited to the examples of the embodiments described above and can be embodied in various manners with appropriate modification.