Abstract:
To provide a machining program processing apparatus capable of preventing an increase in the program correction time or does not let the program correction time go to waste. A machining program processing apparatus includes: a grammar checking unit executing grammar check of a machining program; a transmission processing unit transmitting the machining program to an external device; and a deletion processing unit deleting the machining program, wherein, when a transmission request of the machining program including a grammar error is received, the transmission processing unit confirms whether the transmission is to be permitted or not.

Description:
BACKGROUND OF THE INVENTION 
     1. Field of the Invention 
       [0001]    The present invention relates to a machining program processing apparatus adopted in a numerical control machine tool. 
       2. Description of the Related Art 
       [0002]    A machining program in a numerical control machine tool is intended to instruct a tool trajectory, an auxiliary operation of the machine tool, and so on according to a predetermined rule. Generally, this machining program is created by a professional programmer with high level of knowledge and experience by spending much time. However, the occurrence of a program error is unavoidable, and the detection and elimination of the program error have been great burdens. 
         [0003]    Conventional arts relating to the detection of such a program error includes, for example, an art in which a program error discrimination controlling part is divided into an input data format check part checking a format of input data and a development control check part checking a tool trajectory and a cutting condition, and when an error is detected, the checks of the input data and the development control are independently discriminated, and the position of each error is displayed with a designated color (see, for example, Japanese Patent Application Laid-open No. Sho 58-114106). 
         [0004]    Incidentally, when a program whose program error has not been corrected is transmitted to an external device, there arises a problem that it further takes time and trouble for detecting and correcting the error. Further, the machining program is generally deleted after transmitted to and stored in an external device. However, a machining program whose program error has been corrected is sometimes deleted by mistake without being transmitted to an external device. Such deletion, if made, causes a problem of letting the time taken for the correction go to waste. 
       SUMMARY OF THE INVENTION 
       [0005]    The present invention was made in consideration of the above-described conventional circumstances, and an object thereof is to provide a machining program processing apparatus capable of preventing an increase in the program correction time or not letting the program correction time go to waste. 
         [0006]    The present invention is a machining program processing apparatus including: a grammar checking unit executing grammar check of a machining program; a transmission processing unit transmitting the machining program to an external device; and a deletion processing unit deleting the machining program, wherein, when a transmission request of the machining program including a grammar error is received, the transmission processing unit executes a warning process to confirm whether or not the transmission is to be permitted. 
         [0007]    In the present invention, when the machining program found to include an error by the grammar check is intended to be transmitted to an external device, the warning process to confirm whether or not the transmission is to be permitted is executed. Therefore, it is possible to prevent the problem that the program correction time increases in the external device side. 
         [0008]    In one preferred embodiment of the present invention, the transmission processing unit transmits the machining program when the transmission is permitted in response to the warning process, and ends processing when the transmission is not permitted in response to the warning process. 
         [0009]    In this embodiment, the transmission is executed when the transmission is permitted in response to the warning process, and the processing is ended when the transmission is not permitted in response to the warning process. Therefore, the correction of the program error is not necessary or the correction time can be shortened in the external device side. That is, when the transmission of a machining program including a grammar error is permitted and this machining program is transmitted, line number or the like including the grammar error has been confirmed, which can reduce the time for detecting and correcting the error to minimum. 
         [0010]    In another preferred embodiment of the present invention, the deletion processing unit executes a warning process to confirm whether or not the deletion is to be permitted when a deletion request of a machining program not having any transmission history after edition is received. 
         [0011]    In this embodiment, when the machining program not having any transmission history after edition such as program correction is intended to be deleted, the warning process to confirm whether or not the deletion is to be permitted is executed, and therefore the program correction time is not let go to waste. 
         [0012]    In still another preferred embodiment of the present invention, the deletion processing unit deletes the machining program when the deletion is permitted in response to the warning process and ends processing when the deletion is not permitted in response to the warning process. 
         [0013]    In this embodiment, the deletion is executed when the deletion is permitted in response to the warning process. Therefore, a case where, for example, the deletion of a machining program without the transmission history is permitted and this machining program is deleted is a case having some special reason, such as a case where the machining program is not necessary any more. Therefore, the deletion causes no problem. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0014]      FIG. 1  is a diagram showing the system configuration of a machining program processing apparatus according to one embodiment of the present invention; 
           [0015]      FIG. 2  is a flowchart of a block confirmation processing unit; 
           [0016]      FIG. 3  is a flowchart of a grammar analysis processing unit 
           [0017]      FIG. 4  is a flowchart of a deletion determination processing unit; 
           [0018]      FIG. 5  is a flowchart of a transmission determination processing unit; 
           [0019]      FIG. 6  is a view showing a program edit window; and 
           [0020]      FIG. 7  is a view showing a program list window. 
       
    
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS 
       [0021]    Hereinafter, an embodiment of the present invention will be described with reference to the attached drawings.  FIG. 1  to  FIG. 7  are drawings used to explain a machining program processing apparatus of a numerical control machine tool according to one embodiment of the present invention. 
         [0022]      FIG. 1  shows the system configuration of the machining program processing apparatus. This system has a memory device  1 , a block grammar confirming unit  2 , an auto grammar confirming unit  3 , a receiving unit  4 , a deleting unit  5 , and a transmitting unit  6 . 
         [0023]    The memory device  1  has a first memory  1   a  storing block grammar data and the like, a second memory  1   b  storing analysis result data, and a third memory  1   c  storing transmission history data and the like. 
         [0024]    In the block grammar confirming unit  2 , when a mode confirmation processing unit  2   a  confirms that a current mode is an edit mode and a window confirmation processing unit  2   b  confirms that a program edit window shown in  FIG. 6  is kept displayed and the edit mode has not been changed to another mode, a block confirmation processing unit  2   c  executes grammar check of a block by using the block grammar data, grammar structure data, model data, and the like stored in the first memory  1   a,  and analysis data obtained by the check is stored in the second memory  1   b.    
         [0025]    As shown in  FIG. 2 , in the block confirmation processing unit  2   c,  when a parameter for requesting grammar check is set and the addition, deletion, change, or the like of the program is made in the edit mode, a block in which the change or the like is made is obtained (Step S 1 ), and the grammar check of each word data in the changed block is executed (Step S 2 ). Then, the presence/absence of a grammar error is determined (Step S 3 ), and when an error is detected, error processing is executed (Step S 4 ). 
         [0026]    When no error is detected at Step S 3 , an instructed movement amount is confirmed (Step S 5 ) and the presence/absence of a problem is determined (Step S 6 ), and when no problem is detected, analysis result data is stored in the second memory  1   b,  and the flow of the block confirmation process is ended. On the other hand, when some problem is detected, a warning process is executed (Step S 7 ), in which, for example, “error detected” is displayed with a specific color on a program list window, and then the flow is ended. 
         [0027]    Concretely, “error detected” is displayed with a character color different from that of “check not completed” on the program list window shown in  FIG. 7 . “Error detected” means that there is a grammatically wrong part in the program, and when the program is corrected, the check is executed block by block, and until it is confirmed that no error exists in the whole program, the “check not completed” is displayed. When it is confirmed that no error exists in the whole program, “no error” is displayed. 
         [0028]    In the auto grammar confirming unit  3 , an operation state confirmation processing unit  3   a  determines, for example, whether or not a current state is an idle state, or whether or not a load of computation processing is equal to or less than a predetermined value, an analysis program confirmation processing unit  3   b  obtains a machining program whose grammar check has not been finished, a grammar analysis processing unit  3   c  executes the grammar check, and the resultant analysis data is stored in the second memory  1   b  and check data is stored in the third memory  1   c.    
         [0029]    As shown in  FIG. 3 , in the grammar analysis processing unit  3   c,  for example, when the current state becomes the idle state while the parameter requesting the grammar check is set, a program whose grammar check has not been finished is obtained (Step S 11 ), the grammar check of the whole machining program is executed (Step S 12 ), the presence/absence of a program error is determined (Step S 13 ), and when no error is detected, the flow of the grammar analysis process is ended. When an error is detected, a warning process is executed (Step S 14 ), in which, for example, “error detected” is displayed with a specific color on the program list window, a comment addition process is executed (Step S 15 ), in which, for example, line number including the grammar error is displayed in a comment column, and the flow is ended. 
         [0030]    In the receiving unit  4 , when an external data signal processing unit  4   a  receives a machining program from an external device, a grammar analysis processing unit  4   b  executes the grammar check, and an analysis data storing unit  4   c  and a reception history data storing unit  4   d  store the result in the second memory  1   b  and the third memory  1   c.  Incidentally, the operation in the grammar analysis processing unit  4   b  is the same as the operation in the grammar analysis processing unit  3   c  of the auto grammar confirming unit  3 . 
         [0031]    In the deleting unit  5 , when a program deletion request processing unit  5   a  obtains a deletion request from an operator, a deletion determination processing unit  5   b  determines whether or not the deletion is to be permitted, a deletion processing unit  5   c  executes a deletion process, and a data storage/deletion processing unit  5   d  deletes data in the second and third memories  1   b,    1   c.    
         [0032]    As shown in  FIG. 4 , in the deletion determination processing unit  5   b,  when the deletion request is received from the operator after the program is edited, change history, transmission history, reception history data are obtained (Step S 21 ), and change, reception, transmission histories are checked (Step S 22 ). The change history includes a history of grammar error changes which indicates that the grammar errors in the machining program have been corrected, and a history of condition changes which indicates that cutting conditions and/or tool trajectories have been changed. 
         [0033]    Then, the presence/absence of the reception history, the change history, and the transmission history is determined (Step S 23 , S 24 , S 25 ), and the deletion process is executed when the program has all the histories, that is, when the program has already been transmitted to an external device (Step S 26 ). When the reception history is present but the change history is absent (Steps S 23 , S 24 ), the deletion process is executed without any determination on the transmission history. Further, when the reception history is absent and the transmission history is absent, and when the reception history and the change history are present but the transmission history is absent, that is, when the program has not been transmitted to the external device, a warning process is executed (Step S 27 ), in which the operator is given a warning that the program which has not been transmitted to the external device will be deleted. When, in response to the warning process, the operator determines that the deletion may be permitted (Step S 28 ), the deletion process is executed (Step S 26 ), and when the operator determines that the deletion should not be permitted, the flow is ended. Incidentally, when the operator transmits the data and this deletion process is executed again, the deletion can be immediately made. 
         [0034]    In the transmitting unit  6 , when a transmission request processing unit  6   a  obtains a transmission request from the operator, a transmission determination processing unit  6   b  determines whether or not the transmission is to be permitted, and a transmission history data storing unit  6   c  and an external data signal processing unit  6   d  store the result in the third memory  1   c.    
         [0035]    As shown in  FIG. 5 , in the transmission determination processing unit  6   b,  the change history data is obtained in response to the transmission request from the operator (Step S 31 ), the completion of the program after the change history is determined (Step S 32 ), and, for example, the presence/absence of a grammar error, or the like is determined (Step S 33 ), and when there is no error, a transmission process is executed (Step S 34 ). When there is an error, a warning process is executed (Step S 35 ), in which the operator is given a warning that the program including the error will be transmitted to the external device or the like (Step S 35 ). When, in response to the warning process, the operator gives transmission permission (Step S 36 ), the transmission process is executed (Step S 34 ), and when the transmission is not permitted, the flow is ended. Incidentally, when the operator transmits the data and the deletion process is executed again, the deletion can be immediately be made. 
         [0036]    Incidentally, when the edit mode is changed to another mode during a parameter set state, the grammar check of the whole program which has been selected is executed. 
         [0037]    Further, even when the setting of the parameter for requesting the grammar check has been cancelled, the grammar check is executed in response to ON of a “grammar check” key (see  FIG. 6 ). 
         [0038]    Furthermore, when the setting of the parameter is cancelled, a record of the grammar check is deleted, and therefore, when the parameter is set again, it is confirmed with the operator whether or not the grammar check of the whole program is to be executed. When it is confirmed that the grammar check is to be executed, the whole program is checked. 
         [0039]    Further, when there is a risk of interference from a coordinate value at the time of the grammar check, the coordinate value is displayed with a changed character color to thereby instruct the operator that the coordinate value should be reconfirmed. 
         [0040]    As described above, according to this embodiment, when some addition, deletion, change, or the like is made in the program in the edit mode, the grammar check of the relevant block is executed, which can prevent the occurrence of a grammar error without excessively increasing a computation load. Further, when a grammar error is detected, the line number including the grammar error is displayed in the comment column, which can shorten the correction time of the program. 
         [0041]    Further, when the confirmation of the operation state shows that the load of the computation processing is equal to or more than the predetermined value, the grammar check of a program whose grammar check has not been executed is executed, which makes it possible to surely detect a grammar error without excessively increasing the computation load. 
         [0042]    Further, since the grammar check is executed when the program edit mode is changed to another mode, the grammar check of a program edited in the edit mode can be surely executed. Incidentally, it may be made selectable whether or not the grammar check of the whole program is to be executed when the edit mode is changed to another mode. 
         [0043]    Further, when a machining program is received from an external device, the grammar check of the machining program is executed, and therefore, it is possible to detect a grammar error of the program received from an external part, and to reduce an increase in the correction time which might be required when a machining program including a grammar error should be used. 
         [0044]    Furthermore, the grammar check is executed at the time of the transmission of the machining program to an external part and when the transmission of a machining program including an error is instructed, the warning process to confirm whether or not the transmission is to be permitted is executed. Therefore, it is possible to prevent an increase in the program correction time in an external device and the like. 
         [0045]    That is, since the transmission is executed after a grammar error is corrected in response to the warning process, the external device side need not correct the program error. Further, even when the transmission of a machining program including a grammar error is permitted and this machining program is transmitted, it is possible to reduce the detection and correction time of the error to minimum since the line number including the grammar error or the like has been confirmed. 
         [0046]    Further, when a machining program having no transmission history is intended to be deleted, the warning process to confirm whether the deletion is to be permitted or not is executed. Therefore, the program correction time is not let go to waste. 
         [0047]    That is, since a machining program is deleted when the transmission process is executed in response to the warning process, the program has been transmitted and stored in the external device and hence the deletion would cause no problem. Further, the case where the deletion of a machining program having no transmission history is permitted and this machining program is deleted is a case having some special reason such as a case where the machining program is not necessary any more, and the deletion would cause not problem. 
         [0048]    The invention may be embodied in other specific forms without departing from the spirit or essential characteristics thereof. 
         [0049]    The present embodiments are therefore to be considered in all respects as illustrative and no restrictive, the scope of the invention being indicated by the appended claims rather than by the foregoing description, and all changes which come within the meaning and range of equivalency of the claims are therefore intended to be embraced therein.