1. Field of the Invention
The present invention relates to a numerical control device that detects an erroneous axis command. While numerical control devices control machine tools, particularly, an erroneous operation of an axis in a machine tool frequently causes a significant result such as erroneous cutting or machine damage. Thus, the present invention prevents such an erroneous operation, particularly, by detecting an erroneous axis command.
2. Description of the Related Art
In Japanese Patent Application Laid-Open No. 5-143130, a numerical control device has been disclosed, which stores reading/writing permission information for each variable and generates an alarm when a reading/writing operation is determined not to be permitted for a desired machining system.
In addition, in Japanese Patent Application Laid-Open No. 2003-295916, a numerical control device has been disclosed, which determines whether or not a numerical value that is newly input for an item satisfies a condition acquired by combining an average and a standard deviation of numerical values set for the same item in the past and displays an indication in a case where the condition is not satisfied.
A macro is a program in which a certain fixed operation or a repeatedly-performed operation is registered, and, by using a macro call, a program can be described in a simple manner. In addition, by designating arguments or performing multiple calls at the time of performing a macro call, a call having higher versatility can be realized.
However, when a complex call relation is directed, the program becomes complicated, and there are cases where an erroneous command is caused. An example of such a program is illustrated in
Here, the macro program O9010 is a common macro program used for a moving command. However, since #103 is a common variable, the value of #103 according to the previous call remains, and a moving command of the Z axis that is not directed in O0002 is generated in N11. As above, when there is a call relation that is not simple, there are cases where a moving command for an axis for which moving is not intended is generated. In this example, while one-fold call has been described as an example, when the call is multiplexed to be complicated as being two-folded or three-folded, an unintended moving command may be generated easier.
A cutter radius compensation is a function for designating a shape that is actually processed as a programmed path and offsetting a tool center point path by a radius of a tool used for machining. Accordingly, there is an advantage that the program does not need to be changed even when the diameter of the tool used for the machining is changed.
A tool center point control is a control process for moving the center point of a tool along a directed path by performing a correction of a tool length every moment for every interpolation period also within a command block of a program. However, since the correction command of the tool length changes according to the moving of the rotation axis, there are cases where undirected moving of the axis occurs.
In
The numerical control devices disclosed in Japanese Patent Application Laid-Open Nos. 5-143130 and 2003-295916 cannot detect an alarm by focusing on an axis command and cannot detect an erroneous axis command according to a macro call, a cutter radius compensation, a tool center point control, and the like.
An object of the present invention is to provide a numerical control device that smoothly performs operation checking together with preventing an erroneous operation by performing alarm stop when an erroneous axis command according to a macro call, a cutter radius compensation, a tool center point control, and the like described above is detected.
A numerical control device according to the present invention including a directed program analyzing unit for analyzing a directed program, and an interpolation command generating unit for generating an interpolation command based on a result of the analysis by the directed program analyzing unit. The numerical control device includes: an alarm axis designating unit configured to designate an axis that becomes a criterion for an alarm; and an axis command checking unit configured to perform alarm stop in a case where the axis designated by the alarm axis designating unit is directed or the interpolation command generating unit interpolates the axis designated by the alarm axis designating unit as a result of the analysis of the directed program that is performed by the directed program analyzing unit.
The above-described axis command checking unit may belong to the directed program analyzing unit, and the axis command checking unit is configured to, determine whether or not the axis designated by the alarm axis designating unit is directed in the directed program and determine whether or not an amount directed for the axis exceeds an allowable range set in advance, and perform alarm stop in a case where the directed amount exceeds the allowable range.
The above-described axis command checking unit may belong to the interpolation command generating unit, and the axis command checking unit is configured to, determine whether or not the axis designated by the alarm axis designating unit is directed in the interpolation command and, in a case where an erroneous axis command is directed, determine whether or not a directed amount exceeds an allowable range set in advance, and, in a case where the directed amount exceeds the allowable range, perform alarm stop.
The above-described axis command checking unit may be configured to, determine whether or not the axis designated by the alarm axis designating unit is directed in the directed program analyzing unit and, in a case where the axis is directed, determine whether or not a directed amount exceeds an allowable range set in advance, and, in a case where the directed amount exceeds the allowable range, perform alarm stop, and further determine whether or not the axis designated by the alarm axis designating unit is directed in the interpolation command generating unit, and, in a case where the designated axis is directed, determine whether or not a directed amount exceeds an allowable range set in advance, and, in a case where the directed amount exceeds the allowable range, perform alarm stop.
The above-described the axis command checking unit may include a program axis command checking unit that determines whether or not the axis designated by the alarm axis designating unit is directed and determines whether or not a directed amount for the axis exceeds an allowable range set in advance and performs alarm stop in a case where the axis designated by the alarm axis designating unit is directed or in a case where the directed amount exceeds the allowable range.
The above-described interpolation command generating unit may include an interpolation axis command checking unit that determines whether or not the axis designated by the alarm axis designating unit is directed and whether or not an amount directed for the axis exceeds an allowable range set in advance and performs alarm stop in a case where the interpolation command generating unit gives a command of interpolation for the axis designated by the alarm axis designating unit or in a case where the directed amount exceeds the allowable range.
Alternatively, the above-described numerical control device may include the above-described program axis command checking unit and the above-described interpolation axis command checking unit.
By including the above-described configurations, the present invention performs alarm stop when an erroneous axis command according to a cutter radius compensation, a tool center point control, or the like is detected, thereby providing a numerical control device that smoothly performs operation checking together with preventing a malfunction.
The above and other features and advantages of the present invention will become more apparent by describing in detail exemplary embodiments as below with reference to the attached drawings in which:
According to Embodiment 1, an erroneous axis command is detected in a program.
As described above, in a case where a macro call is performed in a multiplexed manner, a program becomes complicated. Thus, a program axis command checking unit belonging to a directed program analyzing unit of the numerical control device performs a checking operation based on an alarm detection condition and performs alarm stop when an erroneous or unintended axis command is performed.
An example of a setting screen of an alarm detection condition that is set in advance is illustrated in
Under the alarm detection condition set in
According to Embodiment 2, an erroneous axis command exceeding an allowable range is detected in a program.
As described above, in a case where a program using a cutter radius compensation is generated, when a plane to be offset is erroneously designated, there are cases where moving of an axis that is not present in an intended plane occurs. A program axis command checking unit belonging to a directed program analyzing unit performs checking based on the alarm detection condition, and, when an erroneous (unintended) axis command is performed, alarm stop is performed.
Under the alarm detection condition set in
In a block N10 positioned between a command M200 and a command M201 of O0003, since the Z axis is moved more than 5.0, alarm stop is performed in the block N10 of O0003. In addition, in this embodiment, an allowable amount represented in
According to Embodiment 3, an erroneous axis command exceeding an allowable range is detected in interpolation.
As described above, when a program including a moving command of a rotation axis is directed during the tool center point control, moving of the Z axis that is not directed occurs. An interpolation axis command checking unit belonging to an interpolation command generating unit performs checking based on the alarm detection condition and performs alarm stop when an erroneous (unintended) axis command is performed.
Under the alarm detection condition set in
In this embodiment, the program axis command checking unit 15 belonging to the directed program analyzing unit 11 determines whether or not there is a command of a target axis of an erroneous axis command that is an alarm detection condition in the directed program, and whether or not a directed value exceeds an allowable range. In addition, an interpolation axis command checking unit 16 belonging to an interpolation command generating unit 12 determines whether or not there is a command of a target axis of an erroneous axis command and whether or not the directed value exceeds the allowable range and performs alarm stop by making an alarm stop request in a case where the alarm stop is to be performed. The alarm stop request is made for the directed program analyzing unit 11 or the interpolation command generating unit 12. An axis command checking unit 14 is configured by at least one of a program axis command checking unit 15 and an interpolation axis command checking unit 16. In other words, in the case represented in
The processes of the program axis command checking unit 15 and the interpolation axis command checking unit 16 are respectively illustrated in
[Step sa01] Whether it is between the detection start command and the detection end command is determined, and, in the case of “Yes”, the process proceeds to Step sa02, and in the case of “No”, the process ends.
[Step sa02] It is determined whether or not the command is a command of the target axis, and, in the case of “Yes”, the process proceeds to Step sa03, and in the case of “No”, the process ends.
[Step sa03] It is determined whether or not the allowable range is a blank, and, in the case of “Yes”, the process proceeds to Step sa05, and, in the case of “No”, the process proceeds to Step sa04.
[Step sa04] It is determined whether or not the command value is within the allowable range, and, in the case of “Yes”, the process ends, and, in the case of “No”, the process proceeds to Step sa05.
[Step sa05] An alarm stop request is made for the directed program analyzing unit, and the process ends.
[Step sb01] Whether it is between the detection start command and the detection end command is determined, and, in the case of “Yes”, the process proceeds to Step sb02, and in the case of “No”, the process ends.
[Step sb02] It is determined whether or not the command is an interpolation command of the target axis, and, in the case of “Yes”, the process proceeds to Step sb03, and in the case of “No”, the process ends.
[Step sb03] It is determined whether or not the allowable range is a blank, and, in the case of “Yes”, the process proceeds to Step sb06, and, in the case of “No”, the process proceeds to Step sb04.
[Step sb04] An interpolation command ΔS of the target axis is added to S.
[Step sb05] It is determined whether or not S is within the allowable range, and, in the case of “Yes”, the process ends, and, in the case of “No”, the process proceeds to Step sa06.
[Step sb06] An alarm stop request is made for the interpolation command generating unit, and the process ends.
Number | Date | Country | Kind |
---|---|---|---|
2014-045369 | Mar 2014 | JP | national |