Rewrite old pal programs for PAL2020

Last change: Jul 28, 2023

With the PAL2020 reform, some commands in the PAL coding were changed, so that programs written according to PAL2008 or PAL 2012 partly do not run anymore and lead to error messages in the newer PAL2020 simulators (or PAL2020 C/Y or PAL2020 3+2 respectively).

For the changes of the grooving or recessing cycles in turning, which are still called G86 or G88 but have many new or changed cycle addresses, the NC blocks must be practically rewritten. Here it is recommended to first comment out the "old" cycle blocks in the "free editor" and then to reprogram them in the guided mode ("F7 editor"). Note, however, that commenting out changes the line numbering (which affects jumps with G23), since pure comment lines have no line numbers. To avoid this, you can use a trick and write the previous cycle as a comment after a regular (innocuous) NC block. Example:

N28 M1 ; G86 X60 Z-55 ET54 EB6 RO-0.5

It is easy to "translate" PAL2008 or PAL2012 commands (for layer selection) with all other functions, because here there is a simple assignment between old and new:

In the "Free Editor" you can use the "Find/Replace" function or also the shortcut Ctrl+H for this. If you have previously programmed the LAGER3 exercise from the "Plane Swivel" workbook according to PAL2012, take this as an example. After loading in "PAL2022" mode, a message "The NC program is faulty!" will appear, which you acknowledge with "F10". Marked is the last block in the program that does not correspond to the coding according to PAL2020. "N65 G17 CR180 AR90". Here (and in many other lines in the program) G17 must be replaced by G15.

So select "F1 Search/Replace" and enter "G17" in the "Search for" field and "G15" in the "Replace with" field. Ersetzen_G17_mit_G15 Select "F3 Replace all" and accept the dialog with "F10" and in the whole document G17 will be replaced by G15.

Subsequently, when you try to change to the "guided mode" again, the line "N45 G48 G40 R10 Z0" is marked as incorrect, because after PAL2020 the commands for tangential approach and departure have changed, too. Replace therefore (following same principle as above) "G48 G40 R by "G40 G46 RR" in the entire document and afterwards also "G41 G45 D" by "G41 G45 DL". LAGER3_4 For the program LAGER3 all necessary replacements are made and you can change with "F7 editor" again into the "guided mode" and simulate there the program with "F9 Simulation".

A complete table comparing "PAL2008/PAL2012" and "PAL2020" (as of summer 2023) can be found below:

PAL2008/PAL2012 PAL2020 Meaning Where is it found?
G41 G45 D G41 G45 DL Linear tangential approach Milling and Turning with driven tools
G42 G45 D G42 G45 DL Linear tangential approach Milling and Turning with driven tools
G40 G46 D G40 G45 DL Linear tangential departure Milling and Turning with driven tools
G41 G47 R G41 G46 RR Tangential approach on a quarter circle Milling and Turning with driven tools
G42 G47 R G42 G46 RR Tangential approach on a quarter circle Milling and Turning with driven tools
G48 G40 R G40 G46 RR Tangential departure on a quarter circle Milling and Turning with driven tools
G17 G15 Svivelling and Resetting the machining level Milling Level selection
G17 G15 G17 IP3 Level selection face end with virtual Y axis Turning with driven tools
G17 C G15 G17 IP0 Level selection face end with polar coordinates Turning with driven tools
G17 Y C G15 G17 IP5 CM Level selection face end with real Y axis Turning with driven tools
G18 G15 G18 TURN Level selection for Turning Turning with driven tools
G19 X G15 G19 IP1 DM Level selection surface area with virtual Y axis Turning with driven tools
G19 C G15 G19 IP0 Level selection surface area with polar coordinates Turning with driven tools
G19 Y X G15 G19 IP5 DM Level selection chord area with real Y Axis Turning with driven tools
G86 M1 ; G86 Radial recessing cycle Turning, not automatically "translatable", therefore commented out here with M1 ;. The cycle must then be reprogrammed.
G88 M1 ; G88 Axial recessing cycle Turning, not automatically "translatable", therefore commented out here with M1 ;. The cycle must then be reprogrammed.
G59 AR G59 WI rotation of the coordinate system Milling and Turning with driven toolsn
G59 ZA G59 ZI Cartesian zero point offset Mainly Turning
G59 XA.. YA... AR G59 XI.. YI ... WI Cartesian zero point offset Mainly Milling, not automatically "translatable"

Other changes do not necessarily require the revision of existing programs, but may have an impact in the simulation:

PAL2008/PAL2012 PAL2020 Meaning Where is it found?
G0 X Y Z G0 X Y
G0 Z
Positioning logic for G0 and G10 omitted Milling
T S F M13 T M6
S F M13
Tool change with M6
In SYMplus™, however, T still triggers
the change directly, M6 remains optional
Milling