Print version

"NC pogram is faulty" - What could be the cause?

Last change: Apr 12, 2024

If a syntax error is detected when loading a program in the DIN/PAL simulator or in a control simulator (FANUC, HAAS, HEIDENHAIN, SIEMENS, ...), the following general error message is displayed:

NC program is faulty

This can have various causes, the most common of which are listed below. If these examples do not help you, please create a Service file and send it to us by e-mail to support@cnc-keller.de. Please do not forget to include the name and location of the company, school or institution for which you work or whose license you use as a student or trainee.


1. The file name or program number is invalid

Older controllers in particular only allow numbers and these are sometimes limited to 4 or 5 digits. More modern controls, e.g. from SIEMENS and HEIDENHAIN, also allow alphanumeric file names and thus a combination of letters and numbers, but certain special characters, umlauts or spaces may not be allowed. Or they use a different character set (ASCII, ANSI, ...) than SYMplus, which leads to errors when you switch between the controller and PC.

SYMplus also checks the program name or the program number when reading in and then displays the above error message. The cursor (the line marker) can be positioned either on the first line (which usually contains the file name or number, supplemented by a % or other characters depending on the controller) or on the last line (which often contains an inconspicuous M30).

It is also possible that SYMplus is more restrictive than the control itself because there are/were different software versions, because the control manufacturer has not documented it or KELLER has implemented it incorrectly.

To check whether this is the cause of the error message, it is best to use an example that KELLER has supplied for the respective simulator. Or try it out with a "harmless" name. If "Exercise 1" leads to an error message, try "Test1"! If 20240401 does not work, try 123! If the original file name was not accepted, you may have to change it in two places and correct the spelling in the header AND save the file under the new name.


GO instead of G0

A "classic" and listed here as an example for any typing error. Generally, the line in question is then marked when the program is "scanned". However, the software cannot give a more precise indication. If the error is not immediately obvious, the best solution is to comment out the NC block if the simulator in question supports comments. Comments are usually marked by ; at the beginning of the sentence or by brackets. If the program is then read in correctly, you can try to enter the block again via the input dialog (F1 Create ...) immediately before or after this commented-out line. You can of course then delete the comment line afterwards.


Software version has changed and therefore also certain addresses

SYMplus™ is constantly being further developed, bugs are fixed and new, up-to-date specifications are implemented, especially in the PAL simulator. With PAL2020, among other things, addresses for grooving (G86, G88) in turning and the programming of soft approach and departure paths on contours in milling have changed. Programs that were created with the coding of PAL2009 or PAL2012 may no longer work in the current PAL2020 simulator. Further changes/new features will also be implemented within PAL2020. From release 66, for example, the parameter for the retraction level for the approach and departure functions is no longer called W, but WV. See Rewrite old pal programs for PAL2020 for more details regarding PAL.


Cycle or command is not supported

The control simulators in SYMplus™ are not "control identical", but only reproduce the programming of the original control unit, whereby certain cycles or functions of the original were not taken into account. Therefore, if you have created a program externally, either on the control or with other software systems or editors, it is quite possible that it cannot be read in the SYMplus™ simulator. An "unusual" address combination can also be the reason why a program that works on the control unit itself is recognized as faulty. Use the selection list in the input dialog to find out which cycles and commands are supported in SYMplus™.


Did this article help you?
 
Yes
 
No
Thank you for your feedback!