Numerical controller operating from table-format data
10394219 ยท 2019-08-27
Assignee
Inventors
Cpc classification
G05B19/408
PHYSICS
G05B2219/32173
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
International classification
G05B19/18
PHYSICS
Abstract
A numerical controller adapted to perform an operation based on table-format data includes a table management unit that selects a plurality of tables of table-format data used for a machining operation, a distribution processing unit that generates, for each table of the table-format data, distributed interpolation data for an axis to be controlled on the basis of the table-format data according to the plurality of tables of table-format data read out by the table readout unit, and a selection and superimposition unit that selects and superimposes, for each control axis, the plurality of tables of distributed interpolation data generated by the distribution processing unit.
Claims
1. A numerical controller that performs a machining operation on a workpiece by controlling a drive motor of a machine tool based on table-format data, the numerical controller comprising: a table management unit that selects a plurality of tables of table-format data to be used for the machining operation; a table readout unit that sequentially reads out the selected plurality of tables of table-format data; a distribution processing unit that updates one or more reference values specified by each of the tables of table-format data, the one or more reference values including one or more of (i) a period of time, (ii) a position of an axis of the machine tool, and (iii) a position of a spindle of the machine tool, generates, for each of the tables of table-format data, distributed interpolation data for controlling a corresponding control axis of the machine tool on the basis of the updated one or more reference values specified by the respective tables of table-format data, and sets selection and superimposition conditions for the distributed interpolation data generated for the tables of table-format data, the selection and superimposition conditions specifying, for each table of table-format data, whether the corresponding distributed interpolation data is to be superimposed with distributed interpolation data corresponding one or more other tables of table-format data; a selection and superimposition unit that selects and superimposes, for each control axis of the machine tool, the distributed interpolation data generated by the distribution processing unit based on the selection and superimposition conditions; and a motor control unit that controls a position of each control axis of the machine tool on the basis of the superimposed distributed interpolation data.
2. The numerical controller according to claim 1, wherein each of the plurality of tables of table-format data specifies a different type of reference value, and the distribution processing unit receives the plurality of tables of table-format data and generates the distributed interpolation data according to the type of reference value specified by each table of table-format data.
3. The numerical controller according to claim 1, further comprising: an auxiliary function control unit that determines whether the updated one or more reference values specified by each table of table-format data satisfies a predetermined reference value threshold; and an auxiliary function output unit that outputs an auxiliary function to an external device when the auxiliary function control unit determines that at least one of the updated reference values satisfies the predetermined reference value threshold.
4. The numerical controller according to claim 2, further comprising: an auxiliary function control unit that determines whether the updated one or more reference values specified each table of table-format data satisfies a predetermined reference value threshold; and an auxiliary function output unit that outputs an auxiliary function to an external device when the auxiliary function control unit determines that at least one of the updated reference values satisfies the predetermined reference value threshold.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1) The above and other objects and features of the present invention will be obvious from the ensuing description of embodiments with reference to the accompanying drawings, in which:
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)
(11)
(12)
(13)
(14)
(15)
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
(16) First, the basic general description will be given of the operation of superimposing a plurality of table-format data in accordance with the present invention.
(17) The present invention provides a technology for simultaneously handling a plurality of tables of table-format data for a single axis, a spindle, or an auxiliary function independently of machining conditions. There is no subordinate relationship represented by a main table and a cycle table, and each table of table-format data can be independently handled.
(18) For example, as illustrated in
(19) The present invention has no dependency relationship among tables as observed in prior arts, and independently uses each table of table-format data. The present invention does not have an established arrangement between a main table and a cycle table, which applies to the cycle machining according to prior arts, thus obviating the need for a call or an end instruction from a main table. Further, two or more tables of table-format data can be simultaneously used for a single axis, a spindle or an auxiliary function.
(20) As with prior arts, the present invention uses the same reference value counter that is initialized at the start of handling table-format data to accomplish synchronization among a plurality of tables of table-format data to be used for a single axis, a spindle, or an auxiliary function. With the selectable references including a time reference, an axis position reference and a spindle position reference, an operation synchronized with the time, the axis position or the spindle position is achieved.
(21)
(22) The table management unit 110 manages a plurality of tables of table-format data stored in a memory (not illustrated) or a storage device (not illustrated) or the like, selects table-format data to be used for a machining operation and notifies the table readout unit 120 of the selected table-format data.
(23) The table readout unit 120 reads the plurality of tables of table-format data notified from the table management unit 110 out from the memory or the storage device and supplies the table-format data to the distribution processing unit 130.
(24) The distribution processing unit 130 receives the plurality of tables of table-format data supplied from the table readout unit 120, distributes the movement amount specified by each table of the table-format data to a movement amount to be directed to each shaft movable part for each distribution cycle, and stores the distribution results. Further, the distribution processing unit 130 sets the selection conditions and superimposition conditions of the distribution results for each axis and notifies the selection and superimposition unit 140.
(25) The selection and superimposition unit 140 selects and superimposes the distribution results notified from the distribution processing unit 130 for each drive shaft of a motor or the like to be driven, and notifies the motor control unit 150.
(26) The motor control unit 150 drives the motor according to the movement amounts notified from the selection and superimposition unit 140.
(27)
(28) [Step SA01] Upon a start of a machining operation, the table management unit 110 selects a plurality of tables of table-format data to be used for a machining operation from among the plurality of tables of table-format data under management, and notifies the table readout unit 120 of the identification information of the table-format data.
(29) [Step SA02] The table readout unit 120 sequentially reads out the plurality of tables of table-format data from the memory or the storage device on the basis of the identification information on the table-format data notified from the table management unit 110.
(30) [Step SA03] The distribution processing unit 130 receives the plurality of tables of table-format data output by the table readout unit 120 and updates the reference values of the distribution processing according to the references, such as the time reference, the axis position reference, and the spindle position reference, used in each table of table-format data.
(31) [Step SA04] The distribution processing unit 130 distributes the movement amount specified in each table of the table-format data to the movement amount to be directed to each shaft movable part for each distribution cycle on the basis of the reference values updated in step SA03. The distribution processing is carried out for each table of table-format data.
(32) [Step SA05] The results obtained by the distribution processing in step SA04 are stored by each table of table-format data.
(33) [Step SA06] On the plurality of distribution results stored in step SA05, the selection conditions and the superimposition conditions are set so as to specify which distribution results are to be supplied to which motors and which distribution results are to be superimposed.
(34) [Step SA07] The selection and superimposition unit 140 selects the output destinations of the plurality of the stored distribution results and carries out superimposition according to the selection conditions and the superimposition conditions, respectively, which are set in step SA06, and calculates the distribution movement amount of each motor.
(35) [Step SA08] The motor control unit 150 drives each motor on the basis of the distribution movement amounts calculated in step SA07.
(36) [Step SA09] It is determined whether the end of the table-format data has been reached. If it is determined that the end has been reached, then the procedure proceeds to step SA10. If it is determined that there is still remaining data, then the procedure returns to step SA03.
(37) [Step SA10] It is determined whether the machining operation is ended. If it is determined that the machining operation has ended, then the procedure terminates the processing. If it is determined that the machining operation is not yet ended, then the procedure returns to step SA01.
(38) The numerical controller 100 described with reference to
(39)
(40) The auxiliary function control unit 160 receives a plurality of tables of table-format data output by the table readout unit 120, and updates the reference values for determining the outputs of the auxiliary function according to the references, namely, the time reference, the axis position reference, and the spindle position reference, used in each table of table-format data. When an updated reference value reaches the reference value specified in the table-format data, the auxiliary function to be output is extracted and notified to the auxiliary function output unit 170. The auxiliary function output unit 170 outputs the auxiliary function notified from the auxiliary function control unit 160 to a programmable machine controller (hereinafter referred to as the PMC).
(41) The block diagram illustrates an example in which an auxiliary function for signal control is supplied to the PMC. The technology also makes it possible to output a comment sentence specified in the table-format data to a display unit as an auxiliary function.
(42)
(43) [Step SB01] Upon a start of a machining operation, a table management unit 110 selects a plurality of tables of table-format data to be used for the machining operation from among a plurality of tables of table-format data under the management thereby, and notifies a table readout unit 120 of the identification information of the table-format data.
(44) [Step SB02] The table readout unit 120 sequentially reads out each table of table-format data from a memory or a storage device according to the identification information of the plurality of tables of table-format data notified from the table management unit 110.
(45) [Step SB03] The table readout unit 120 determines the types of the tables that have been read out. If the table-format data that has been read out is the table-format data for controlling an axis, then the procedure proceeds to step SB04, or if the table-format data is for controlling an auxiliary function, then the procedure proceeds to step SB10.
(46) [Step SB04] A distribution processing unit 130 receives the plurality of tables of table-format data output by the table readout unit 120 and updates the reference values for the distribution processing according to the references, such as a time reference, an axis position reference, and a spindle position reference used in each table of the table-format data.
(47) [Step SB05] The distribution processing unit 130 distributes the movement amount specified by each table of table-format data to the movement amount to be directed to each shaft movable part for each distribution cycle on the basis of the reference values updated in step SB04. The distribution processing is carried out for each table of table-format data.
(48) [Step SB06] The results obtained by the distribution processing in step SB05 are stored by each table of table-format data.
(49) [Step SB07] On the plurality of distribution results stored in step SB06, the selection conditions and the superimposition conditions are set so as to specify which distribution results are to be supplied to which motors and which distribution results are to be superimposed.
(50) [Step SB08] A selection and superimposition unit 140 selects the output destinations of the plurality of the stored distribution results and performs superimposition according to the selection conditions and the superimposition conditions set in step SB07, and calculates the distribution movement amount of each motor.
(51) [Step SB09] A motor control unit 150 drives each motor on the basis of the distribution movement amount calculated in step SB08.
(52) [Step SB10] An auxiliary function control unit 160 updates the reference values for determining the outputs of auxiliary functions according to the references, namely, the time reference, the axis position reference, and the spindle position reference, used in each table of table-format data.
(53) [Step SB11] If an updated reference value reaches a reference value specified in the table-format data, then an auxiliary function to be output is extracted and notified to an auxiliary function output unit 170.
(54) [Step SB12] The auxiliary function output unit 170 outputs the auxiliary function notified from the auxiliary function control unit 160 to an external device.
(55) [Step SB13] It is determined whether the end of the table-format data has been reached. If it is determined that the end has been reached, then the procedure proceeds to step SB14. If it is determined that there is still remaining data, then the procedure returns to step SB03.
(56) [Step SB14] It is determined whether the machining operation is ended. If it is determined that the machining operation has ended, then the procedure terminates the processing. If it is determined that the machining operation is not yet ended, then the procedure returns to step SB01.
(57) The following will describe an example of a machining operation using a plurality of tables of table-format data in the numerical controller 100 according to the present embodiment.
(58) <Example Using Table-format Data for Correction>
(59) In general, two machine tools adapted to machine identical components may have different machining accuracies due to a difference in each machine. As a solution, the numerical controller 100 according to the present embodiment can be used to share the table-format data for controlling the basic movement paths of tools of the machining operation and to create, for each machine tool, the table-format data for controlling the correction amounts. The table-format data for controlling the tool movement paths does not have to be changed, so that the table-format data can be easily revised, thus permitting a quicker setup.
(60)
(61) Further, in the same machine tool, the table-format data for controlling correction amounts can be selected and superimposed according to the material of a workpiece to be machined, the conditions of tools and machining conditions. This makes it possible to directly use the tool movement paths and the correction amounts based on machine design errors.
(62)
(63) To revise table-format data by a personal computer (hereinafter referred to as the PC) connected to a numerical controller in an operation using conventional table-format data, table-format data including a movement path and a correction amount have been transferred even for partly revising a correction amount. Hence, there have been shortcomings of a large transfer capacity and a prolonged transfer time. The numerical controller 100 according to the present embodiment requires merely the transfer of necessary correction table-format data for a correction amount that needs to be revised, thus effectively reducing the transfer time.
(64)
(65) By contrast, according to the technology described in the present invention, the revision of a correction amount requires the transfer of only the table of table-format data of interest, so that the volume of the data to be transferred is equivalent to the size of table 2 (1 MB), as illustrated in
(66) <Example of Table-format Data Using Different Reference Values>
(67) The numerical controller 100 according to the present embodiment is capable of handling a plurality of tables of table-format data for a single axis, a spindle or an auxiliary function, thus making it possible to create table-format data using different reference values.
(68) The following will describe an example in which M codes are output by an auxiliary function according to time, an axis position and a spindle position. In the operation using the conventional table-format data, only one table of table-format data can be handled, so that if a table of table-format data based on time is selected, then the axis position and the spindle position must be converted to reference times.
(69) As illustrated in
(70) By contrast, according to the embodiments of the present invention, an operator is not limited to one reference value when preparing individual tables of table-format data, and will be enabled to select the time reference, the axis position reference and the spindle position reference of the three tables of table-format data illustrated in